
Ask HN: Understanding Video Streaming and CDNs - x-curiouscase-x
I have been looking for sources for understanding how video streaming works and what parts CDNs play in making content available. I have not been able to find any sources which provide an in depth insight of the above  things. Can someone point me to such sources ?
======
codegeek
I will throw the Kitchen sink at you since I have researched this for a while.

Check out mux.com [0]. They have a nice glossary on video.

A while ago, I found a nice presentation on how Vimeo saves money by using EC2
in a smart way [1]

Here is another one from Apple [2] about how they do HLS [2]

One here from peer5 on how they do VOD [3]

Interesting one from keycdn how to convert mp4 to HLS [4]

From google on encoding videos and Shaka Player [5]

A webinar from Bitmovin on developing for streaming video [6]

[0] [https://mux.com/video-glossary](https://mux.com/video-glossary)

[1] [https://www.slideshare.net/ptrmcrthr/vimeo-
ec2](https://www.slideshare.net/ptrmcrthr/vimeo-ec2)

[2]
[https://developer.apple.com/streaming/](https://developer.apple.com/streaming/)

[3] [https://docs.peer5.com/guides/production-ready-hls-
vod/](https://docs.peer5.com/guides/production-ready-hls-vod/)

[4] [https://www.keycdn.com/support/how-to-convert-mp4-to-
hls](https://www.keycdn.com/support/how-to-convert-mp4-to-hls)

[5] [https://google.github.io/shaka-
packager/html/tutorials/encod...](https://google.github.io/shaka-
packager/html/tutorials/encoding.html)

[6] [https://go.bitmovin.com/webinar-video-dev-
developers](https://go.bitmovin.com/webinar-video-dev-developers)

~~~
dougbarrett
+1 for HLS. HLS is an important aspect in saving money while using the CDN's.
They allow for different streaming rates, and the player can download the
video in chunks vs the entire video which saves money on bandwidth costs.

Encoding videos is important too, especially if you have users uploading
videos, or you are getting videos from different sources, you can never depend
on 3rd party sources because they'll always throw a wild card file type at you
unexpectedly. If you don't want to do it yourself with ffmpeg, there are
services out there like:

[https://zencoder.com/en/file-transcoding](https://zencoder.com/en/file-
transcoding)
[https://aws.amazon.com/mediaconvert/](https://aws.amazon.com/mediaconvert/)

~~~
x-curiouscase-x
Thanks .. This is quite good.

------
manasvi_gupta
This video on scaling Facebook Live (realtime video streaming) may help ->
[https://www.youtube.com/watch?v=IO4teCbHvZw](https://www.youtube.com/watch?v=IO4teCbHvZw)

~~~
x-curiouscase-x
Thanks .. saw this video. The video gives a good understanding but again has
alot of high level information. Are there sources which provide low level info
as well?

