Jump to content
  • 0

HLS streaming calculator?


Doni
 Share

Question

I know of the WebRTC streaming cost calculator, but what about HLS? For example, if serving HLS behind CloudFront & publishing one broadcast via RTMP/S, what size instance would you need for ~500 concurrent users? What about adaptive streaming vs not adaptive (HLS)?

And I see there are WebRTC load testing scripts, but what about HLS?

Thanks, Doni


Link to comment
Share on other sites

  • Answers 8
  • Created
  • Last Reply

Top Posters For This Question

8 answers to this question

Recommended Posts

  • 0

Hi Doni,

Hope you are doing well.

Actually both WebRTC and HLS are similar if it comes to cost calculation side as per number of viewers. So for 500 concurrent viewers at a time 16 core CPU instance will be sufficient. But this is to inform you that the values that are shown under the table on https://antmedia.io/cost-calculator/ are without adaptive bitrate and only one value supports at a time per instance, either number or broadcasters or number of viewers.

Could you please tell me your use that how many broadcasters and viewers you are expecting and adaptive bitrates that your going to use so that I can guide you accordingly.

 

Regards,

Yash

 

 

Link to comment
Share on other sites

  • 0

Hi Yash, thanks for the reply. Up to ~500 concurrent viewers, one broadcast. Not 100% sure what makes most sense re ABR, but possibly 3 (1080p,720p,480p). CloudFront serving the HLS.

Also, do you know about running a cache between CloudFront and AMS, like NGINX? I haven't seen any docs on that, but would that be workable and/or improve yield?

Thanks, Doni

 

Link to comment
Share on other sites

  • 0

Hi Doni,

I am expecting that 16 core instance will be sufficient to handle 1 broadcast with 1080p,720p and 480p enabled with 500 viewers but I also recommend you to do the load test.

 

Also, do you know about running a cache between CloudFront and AMS, like NGINX? I haven't seen any docs on that, but would that be workable and/or improve yield?

Please check this blogpost for using AMS with cloud front --> https://antmedia.io/publish-hls-stream-cloudfront-with-ant-media-server/

 

Regards,

Yash

Link to comment
Share on other sites

  • 0

Thanks, Yash. My question was about a cache like NGINX (or Varnish) between CloudFront and AMS. Is there any info about that? Any known issues or config? With CloudFront, if you have a wide geographical audience, you may still have many simultaneous connections to origin, which is why an additional cache may help, in theory.

Regards, Doni

Link to comment
Share on other sites

  • 0

Also, I can't seem to get the load testing tool to work. All I get is "Seems all streams are stopped and breaking the stats loop hash". Am I supposed to put the name of the app in addition to the stream ID somewhere? I've tried it both through CloudFront and directly to the server with no ports blocked, same result. I'm just trying:

./run.sh -m player -n 1 -i <stream_id> -s <host> -u false -p 5443

The actual player path I'd normally use is: https://<host>:5443/<app_name>/play.html?id=<stream_id>&playOrder=hls

Thanks, Doni

 

Link to comment
Share on other sites

  • 0

Hi Doni,

Have a good day.

My question was about a cache like NGINX (or Varnish) between CloudFront and AMS

Actually, I don't have much detail about the Nginx cache. You may try it. If you are stuck on some part, we can check it together. How does it sound?

Also, I can't seem to get the load testing tool to work

A lot of things can cause this issue. Please check below points step by step:
1- Make sure you don't have any security restrictions(One-time token, hash-based token, etc.)
2- Please add secure parameter -q true like:
./run.sh -m player -n 10 -i streamId -s domainaddress.com -u false -p 5443 -q true

I hope, I could help you.

Best Regards,
Selim
Link to comment
Share on other sites

  • 0

Thanks, Selim. I have no security restrictions on the player and I’ve added ‘-q true’, but same result.

1. Should it work through CloudFront + HLS, or only WebRTC?
2. Even if not, I'm also testing it directly to the EC2 + WebRTC, all ports open, same issue.

It does seem to show CPU% (not sure if that's my local or AMS, since they are similar), but it still just looks like this:

INFO: stats : Number of Clients:0 Active Connections:0 Dropped Connections:0 Received Min frame period:2147483647ms, Max frame period: -2147483648ms, Mean frame period:0ms, cpu load: %28 time: 1628623877 hash: 1204065557
Aug 10, 2021 12:31:17 PM io.antmedia.webrtctest.StatManager lambda$start$0
INFO: Seems all streams are stopped and breaking the stats loop hash: 1204065557

Doni


Link to comment
Share on other sites

  • 0

Hi Doni,

Have a good day.

1. Should it work through CloudFront + HLS, or only WebRTC?

You can use CDN only HLS for a now. 

2. Even if not, I'm also testing it directly to the EC2 + WebRTC, all ports open, same issue.

I think we need to check your structure in detail. I will contact you directly with your email address.

Best Regards,
Selim

Link to comment
Share on other sites

 Share

×
×
  • Create New...