3 ms·
Related, where do I begin to learn about live streaming/broadcasting from end-to-end? I'm experimenting with an Apple TV project and I'd like to know (a) what
by callmeed 11y ago
Related, where do I begin to learn about live streaming/broadcasting from end-to-end?
I'm experimenting with an Apple TV project and I'd like to know (a) what has to take place to get from video camera or iOS device to an HLS stream? (b) What open source tools (if any) are available to help do this? (c) what storage/server requirements are there?
TIA
- toomuchtodo 11y agoI can provide you with my contact info if you'd like, and answer any questions you may have. At my last job, I built out the VoD/live streaming infrastructure for the internet presence of a major US broadcaster. Its pretty straightforward, just a bit of a schlep time wise depending on the scale and capabilities you're targeting.
- callmeed 11y agoYeah, I'd love to get you contact info and exchange some emails. My email is in my profile. Thanks for the information. Much appreciated.
- newman314 11y ago* What do you say are the biggest challenges? * What's the oddest problem you have had to solve while building/operating this?
- toomuchtodo 11y agoSurprisingly enough: * Politics within the organization * Interfacing with legacy broadcast/video library systems (f* you Grass Valley, and your abomination of a video asset management system) Serving video online is fairly straightforward, although it wasn't always. We've come a long way from RTMP and progressive HTTP downloads. With HLS, MPEG-DASH, etc, you're still moving the same bits, but you have a much better end user experience. Netflix has original renditions for all of its content in S3, which they convert into multiple renditions based on bitrate and other video metadata, and their player then intelligently switches based on available bandwidth. Its (mostly) that easy, unless you're the White House or SpaceX streaming to millions of people at once. That's still a bit tricky, and you usually call Akamai, Limelight, or Encoding.com to solve that. If I had to do it all over again, I'd create a small startup team (no more than 10-15 people) to create a platform that lets you white label so anyone could build their own Netflix with their own content (or licensed content) and iterate ruthlessly. Don't partner on storage or CDN, just create modules that let you plug n play based on the rates you can get (API libraries all the way down). Setup a partnership department to hook customers up with hardware vendors (Apple TV, Chromecast, Roku, those folks). Keep in the front of your mind that tech is commodity but relationships are what's going to put you in tens of millions of homes. I left because no one realized how quickly other parties in the space (Hulu, Netflix, Amazon, Google, etc) were innovating. We'd spend months in the weeds, with little momentum on key features. In 5-10 years, broadcast is completely dead, its airspace auctioned off to cellular providers. This does not get through to traditional broadcast folks.
- newman314 11y agoThanks for the insight.
- slederer 11y agoNice insights! Interesting fact on your approach: at bitmovin we do exactly that, we've our bitcodin.com encoding service and our bitdash players (www.dash-player.com), which can plug into any cloud storage, CDN, wtc., we've quite a lot interfaces and tutorials for that. We see us as kind of Stripe for video.
- silverbax88 11y agoI'm working on something in this space. Can you pass along your contact info? I'd love to pick your brain a bit. If you'd prefer, you can contact me at mshockley@neptunemediagroup.com
- slederer 11y agoYou can drop us a line at support@bitmovin.com, maybe we can help
- deleted 11y ago[deleted]
- yaur 11y agolook into gstreamer. The HLS segmenter is kind of crap, but will handle basic stuff with no problems. It has bindings for python among others. I'm working on a better one and hopefully I can convince my client to push it to up stream.
- toomuchtodo 11y agoI can't edit my original reply, apologies for a bit of an offtopic tangent. This fits your project's requirements: https://github.com/arut/nginx-rtmp-module https://github.com/arut/nginx-rtmp-module You'll either want to push your HLS segments to S3 or a CDN if you want to persist them, or serve them directly off Nginx, depending on your audience size.