While FFmpeg is free and easy to use, it isn’t an ideal method if you have a lot of videos. To save time, you should consider using Amazon Elastic Transcoder which converts the media files and stores them on the S3 bucket automatically. You need to set it up for the first time only.
In order to use Elastic Transcoder, you need an AWS account and have an Amazon S3 bucket to store your input and output videos. You can also use the different buckets for this purpose. For example,
- an input bucket (e.g. named
input.protected-videos) to which you upload the video files you want to transcode
- an output bucket (e.g. named
output.protected-videos) to receive the transcoded vides
In this article, we will walk you through the process of converting mp4 videos to HSL format with AWS Elastic Transcoder.
Create Elastic Transcoder Pipeline
Step 1: Log in to your AWS account and navigate to Elastic Transcoder console
Step 2: Click on “Create a new Pipeline” button to create a pipeline with the following pieces of information:
- Pipeline Name
- Input Bucket
- Output Bucket
- IAM Role: If you choose to Create console default role, Elastic_Transcoder_Default_Role will be created automatically.
Leave other options with their default values and save your pipeline.
Create custom AWS KMS key ARN
Step 1: Log in to your AWS account and navigate to Key Management Service
Step 2: Choose Customer managed keys from the navigation pane and click on “Create key” button
Step 3: Choose Symmetric for Key type
Step 4: Grant permission to Elastic_Transcoder_Default_Role
Step 5: Once creating key successfully, click on Key ID to copy ARN string
Step 6: Edit the pipeline that you have created in the first step.
Under Encryption option, select Custom for AWS KMS Key ARN and input the ARN string you have copied.
Create a Transcoding Job