Hey, I've worked in streaming video for 10 years now, and I co-organise the biggest video streaming conference in the world. Here's my insights.<p>If you want to build a video platform from scratch, your cost models are going to be dominated by the combination of data egress and CDN costs. Transcode and storage costs are non-trivial, but do quickly become noise against delivery costs.<p>As CyberFonic mentioned, AWS has a variety of media products, which for transcode and storage work well, but then to deliver you'll need a CDN to deliver the content. The simplest way of doing this is to just hook up CloudFront, but the list prices for CloudFront are very high ($0.085/GB in the US), you'll be able to negotiate this down, but Cloudfront isn't actually a great CDN performance wise (particularly outside the US), and eventually you'll want to use a multi-CDN strategy for performance and reliability reasons.<p>Then comes the second hit, if you store your content in AWS and need to egress to a third party CDN, you can be paying very high data rates on that data transfer, particularly in regions such as Asia and Australia / NZ.<p>Now, honestly, if you're small and have a lot of time to invest, go for it, it's an amazing learning experience, you can learn a lot about how streaming video works on these sites and playlists:<p><a href="https://howvideo.works/" rel="nofollow">https://howvideo.works/</a>
<a href="https://awesome.video/" rel="nofollow">https://awesome.video/</a>
<a href="https://www.youtube.com/channel/UCIc_DkRxo9UgUSTvWVNCmpA" rel="nofollow">https://www.youtube.com/channel/UCIc_DkRxo9UgUSTvWVNCmpA</a><p>Honestly, my recommendation is to focus on content, and user experience, and utilise modern off-the-shelf video services, like:<p>Mux - <a href="https://mux.com" rel="nofollow">https://mux.com</a> - An API first video infrastructure provider (Disclaimer: I work here)
Cloufdlare Stream - <a href="https://www.cloudflare.com/en-gb/products/cloudflare-stream/" rel="nofollow">https://www.cloudflare.com/en-gb/products/cloudflare-stream/</a>