A while ago I came across this post from Amazon that describes how to stream video securely using CloudFront signed URLs. However, I couldn t find any infrastructure-as-code to implement the solution outlined in the blog post so I decided to implement it myself. The repository is here. While writing the Terraform code, I discovered there [ ]
In this post, we re going to look at stale playlists in the context of live streaming, what they are and what can cause them, as well as other errors that may be reported by tools like HLS Report and mediastreamvalidator. Some of the causes of errors when live streaming are caused by things like intermittent network [ ]
In part 1, we saw how to create a variant playlist with ffmpeg. In this post, we are going to look at why you may not want to create your variant playlists this way. Here s a typical example using ffmpeg to create a variant playlist: ffmpeg -i input.mp4 \ -map 0:0 -map 0:1 -map 0:0 [ ]
In this post I m going to show you how to use Nginx s RTMP module to stream a live video (over RTMP) from your desktop and then play it back with HLS. I ll also cover how to encrypt the video. RTMP was initially a proprietary protocol by Adobe for streaming video and audio between a Flash [ ]
In this post we re going to look at how to use Bento4 to generate HLS playlists from MP4 files. In previous posts I ve used ffmpeg to encode the videos and generate the playlist. However, sometimes it s better to separate the encoding from the packaging. For example, you may want to support both DASH and HLS [ ]
In this post you ll see how to create an HLS master playlist with ffmpeg for video on-demand. A master playlist contains references to different variant streams (typically encoded at different bit rates) and can also include links to alternative audio tracks and audio-only renditions. It allows a client device to choose the most appropriate stream [ ]
At WWDC 2016, Apple announced support for fragmented MP4 (fMP4) as an alternative to MPEG-TS, which prior to their announcement was the only supported format. So why use fragmented MP4 files? Well, according to Apple s video encoding requirements in their HLS Authoring Specification, if you want to use HEVC/H.265, you have to use it (1.5). [ ]
I often get email from people asking if there any examples in the book about how to play HLS video in the browser and my answer is always the same: no. In this short post, I ll try to explain why not with an example of how to play encrypted HLS video in the browser, which [ ]
This post will describe how to configure an S3 bucket to serve video using HLS. I ve also written some example code that creates a bucket and configures it as outlined in this post. Amazon S3 is a storage solution that allows you to store large amounts of data for relatively little cost, perfect for something [ ]
In this post, we ll look at what encryption HLS supports and how to encrypt your videos with ffmpeg. Encryption is the process of encoding information in such a way that only authorised parties can read it. The encryption process requires some kind of secret (key) together with an encryption algorithm. There are many different types of [ ]