Delivering high-quality video content across a variety of devices and network conditions is more important than ever. AWS Elemental MediaConvert is a cloud-based encoding service that helps you generate adaptive streams to meet the demands of your application.
HTTP Live Streaming (HLS) is one of the most popular video streaming protocols that uses encoding and segmentation for delivery of adaptive bitrate streams to your users. AWS Elemental MediaConvert provides an automated video conversion solution that can convert videos to HLS and make the streams available to your users with ease.
Using AWS Elemental MediaConvert, you can generate multiple renditions of the stream with different compression settings, such as 360p, 720p, and 1080p, among others. This set up enables client apps to select the optimal stream based on factors such as network connectivity and device resolution.
The AWS Elemental MediaConvert workflow consists of uploading a video to the S3 bucket, triggering a Lambda function to create the conversion job, and then using that function to transcode the video. The converted video is then stored in the output S3 bucket, which is connected to a CDN.
Another Lambda function is then triggered by the ObjectCreate event in the output bucket to add the playlist URL to the video record in the database. When clients access that record, the video player fetches the master playlist from the CDN and decides which stream to play based on factors like the client's network conditions and viewport size.
MediaConvert jobs are added to a single queue by default, but you can create additional queues (up to 10 per region) and assign priorities to jobs when they are added to queues. You can also request quota increases from AWS to ensure your platform can handle growing demand.
By leveraging AWS Elemental MediaConvert with S3, Lambda functions, and CloudFront, you can efficiently generate and deliver adaptive HLS streams that provide your users with an optimized viewing experience.