[0:00]Hello, my name is Christian Knopp. I'm a senior solution architect for media and entertainment and this is a short demo about building an end-to-end OTT workflow on AWS. In this demo, we are going to assume that we have video assets in an S3 bucket that have already been packaged and encrypted. And we are going to start by creating a media package channel that points to those assets that are already in S3. Then we are going to configure a CloudFront distribution that points to that channel and make sure that we enforce our encryption that has already been applied to the assets. And finally, we are going to demonstrate playback in a simple HTML5 video player. Let's go into the AWS console and get started. So the first thing we're going to do is create a media package channel. And this channel is going to allow us to define custom output for our assets. So the input origin of this channel is actually going to be the S3 bucket where our assets already live. So I'm going to grab that input origin from my clipboard and I'm going to specify the name of my channel as video on demand demo channel. And then I'm going to create the channel. Once this channel is created, you can see that we have an ingest endpoint which will be used if you're doing live. But in this case, we're doing video on demand. So the ingest endpoint actually isn't really necessary for our purposes. But what is necessary are these output endpoints which we can use to generate custom output for our various devices that we might want to support. So I'm going to create a new endpoint and this endpoint is going to be for HLS. And I'm going to use the default settings. You can obviously customize these as much as you want. I'm going to leave the segment duration and everything to the defaults. And then the next thing I'm going to do is I'm actually going to apply content encryption to this output. So I'm going to use encryption and I'm going to select Apple Fairplay. We already created a key server in a previous step, so I'm just going to select that key server from the drop down and that's all I need to do. So now I'm going to add that endpoint. And now we have our HLS output endpoint created. And you'll notice that the output URL here has the name of our channel. It has a manifest file name and a path, and it has this special token, Fairplay, right here which indicates that this output is encrypted using Fairplay. So what we're going to do is we're going to use this output URL, and we're going to copy this to our clipboard. And then we're going to go to CloudFront and create a CloudFront distribution that points to this origin. So let's go over to CloudFront and we are going to create a distribution. We are going to use a web distribution, and then we are going to put our origin domain name here. And this is going to be the endpoint that we just generated from media package. So I'm going to select that. And the origin ID is going to be generated automatically. And I'm going to set up my CloudFront distribution to forward all query strings, headers, and cookies to my origin. And then I'm also going to enforce HTTPS because we are doing content encryption, so we need to make sure that our content is always going over a secure connection. I'm not going to add any custom SSL certificates here, but you can obviously do that as well. And then I'm going to create the distribution. Now, CloudFront distributions take a few minutes to create, so I'm going to go ahead and pause the video and I'll be back when this distribution is available. Alright, so now our CloudFront distribution has been deployed. So what we're going to do is copy this domain name, and this is going to be our URL that we're actually going to use for playback. And then what we're going to do is we're going to go to a simple HTML5 video player that I've already set up. And this is just a simple page with a video JS player that's already configured to use the Fairplay streaming plugin. So what I'm going to do is I'm going to paste my CloudFront distribution URL into this area, and then I'm going to click play. And as you can see, our content is now playing through the CloudFront distribution and through media package. So this is an end-to-end OTT workflow that's built entirely on AWS. And our content is encrypted with Fairplay, and it's being served out of CloudFront, which is protecting our origin and also speeding up our delivery. And that's all there is to it. Thanks for watching.
YouTube auto captions
This transcript was extracted from YouTube's auto-generated caption track. The transcript below is server-rendered so it can be read, searched, cited, and shared without opening the original YouTube player.
This demo illustrates how to construct an end-to-end Over-The-Top (OTT) video workflow using Amazon Web Services (AWS). The process begins with video assets that are pre-packaged and encrypted in an S3 bucket. The first step involves creating an AWS Elemental MediaPackage channel, configuring it to point to these existing S3 assets, and defining an HLS output endpoint. Crucially, content encryption is applied to this output using Apple FairPlay, leveraging a pre-configured key server.
The next phase involves setting up an Amazon CloudFront distribution. This distribution is configured to use the MediaPackage channel's HLS output URL as its origin. Essential security measures are implemented, such as forwarding all query strings, headers, and cookies, and enforcing HTTPS to ensure secure content delivery, especially given the encryption. After the CloudFront distribution is deployed, its domain name becomes the URL for content playback.
Finally, the demo concludes by showcasing the playback in a simple HTML5 video player, specifically a Video.js player equipped with the FairPlay streaming plugin. By pasting the CloudFront distribution URL into the player, the encrypted content successfully streams, demonstrating a complete and secure OTT delivery pipeline on AWS, benefiting from CloudFront's origin protection and accelerated delivery capabilities.
Key Takeaways
- The demo outlines building an end-to-end OTT workflow on AWS, starting with pre-packaged and encrypted video assets in S3.
- An AWS Elemental MediaPackage channel is created, pointing to S3 assets and configured with an HLS output endpoint.
- Apple FairPlay encryption is applied to the MediaPackage output, utilizing a previously set up key server.
- An Amazon CloudFront distribution is configured to serve content from the MediaPackage HLS output endpoint.
- CloudFront enforces HTTPS and forwards necessary information (query strings, headers, cookies) to the origin for secure and functional delivery.
- Playback is demonstrated using a simple HTML5 Video.js player integrated with a FairPlay streaming plugin, validating the encrypted content delivery.
- The final workflow provides secure, encrypted content delivery accelerated by CloudFront, protecting the MediaPackage origin.
Topics Covered
[0:00]I'm a senior solution architect for media and entertainment and this is a short demo about building an end-to-end OTT workflow on AWS.
[0:00]In this demo, we are going to assume that we have video assets in an S3 bucket that have already been packaged and encrypted.
[0:00]And we are going to start by creating a media package channel that points to those assets that are already in S3.
[0:00]Then we are going to configure a CloudFront distribution that points to that channel and make sure that we enforce our encryption that has already been applied to the assets.



