Traditionally, transcoding has been complex for customers in three significant ways. First, customers need to buy and manage transcoding software, which can be expensive and challenging to maintain and configure. Second, producing transcoded output for different kinds of devices often involves trial and error to find the right transcoding setting that play properly and look good to the end user. This trial and error process wastes compute resources. Third, traditional encoding solutions don’t scale up and down with customers’ business needs. Instead, with traditional solutions, customers need to guess how much capacity to provision ahead of time, which inevitably means either wasted money (if they provision too much and leave capacity underutilized) or delay to their business (if they provision too little and need to wait to run their encoding jobs).

Get Started with AWS for Free

Create a Free Account
Or Sign In to the Console

Amazon Elastic Transcoder's Free Tier includes up to 20 minutes of transcoding each month.

View AWS Free Tier Details »

With Amazon Elastic Transcoder, developers simply use the web-based console, service API or SDKs to create a transcoding job that specifies an input file, the transcoding settings, and output files. This eliminates these three complexities: First, there is no need to buy, configure or manage underlying transcoding software. Second, Amazon Elastic Transcoder has pre-defined presets for various devices that remove the need to find the right settings for different devices through trial and error. The system also supports custom presets, which let customers tune output to specific transcode requirements such as a unique size or bit rate needs. Finally, Amazon Elastic Transcoder automatically scales up and down to handle customers’ workloads, eliminating wasted capacity and minimizing time spent waiting for jobs to complete. It also enables customers to process multiple files in parallel and organize their transcoding workflow using a feature called transcoding pipelines. With Amazon Elastic Transcoder’s pipelines feature, customers set up pipelines for these various scenarios and ensure that their files are transcoded when and how they want, thus allowing them to seamlessly scale for spiky workloads efficiently. For example, a news organization may want to have a “high priority” transcoding pipeline for breaking news stories, or a User-Generated Content website may want to have separate pipelines for low, medium, and high resolution outputs to target different devices.

Amazon Elastic Transcoder is built using the scalability and flexibility of other Amazon Web Services. It runs your transcoding jobs using the Amazon Elastic Compute Cloud (Amazon EC2). Amazon EC2’s scale allows you to complete large transcoding jobs quickly and reliably. Amazon Elastic Transcoder is built to work with content you store in Amazon Simple Storage Service (Amazon S3), so you have durable and cost effective storage for huge libraries, or small ones. You can even get notified about the status of your transcoding jobs via Amazon Simple Notification Service (Amazon SNS).

Amazon Elastic Transcoder features an AWS Management Console, service API and SDKs so you can integrate transcoding into your own applications and services.

To use Amazon Elastic Transcoder, you:

  • Create a transcoding pipeline that specifies the input Amazon S3 bucket, the output Amazon S3 bucket and storage class, and an AWS Identity and Access Management (IAM) role that is used by the service to access your files.
  • Create a transcoding job by specifying the input file, output files, and transcoding presets to use (you can choose from a set of pre-defined transcoding presets – for example 720p - or create your own custom transcoding preset.) Optionally, you can specify thumbnails and job specific transcoding parameters like frame rate and resolution.

While you have transcoding jobs running on Amazon Elastic Transcoder, you can:

  • Automatically receive status of your transcoding jobs via notifications.
  • Query the status of transcoding jobs.
  • Manage your transcoding jobs by stopping, starting or canceling them.

Amazon Elastic Transcoder offers the following features to make video transcoding easy, scalable and inexpensive.

  • Transcoding pipelines: Transcoding pipelines allow you to setup and run transcoding workflows in parallel. You can use transcoding pipelines as a means to create flexible workflows. For example, you could set up a pipeline for transcoding short content and another for transcoding long content, or you could assign different pipelines for different resolutions or storage locations.
  • Transcoding jobs: Transcoding jobs do the work of transcoding a media file from one format into others. You can use one job to create multiple output files of different bit rates and formats from a single input file. For example, one job could create renditions consisting of different resolutions and bit rates of the same input file. You can also create an audio-only alternate stream, which is frequently used when creating an HLS or MPEG-DASH file set. When you create a job, you specify the information that Amazon Elastic Transcoder needs to perform the transcoding: which file to transcode, what to name the transcoded output files and which presets to use. Transcoding jobs run inside a transcoding pipeline, and transcoding pipelines run more than one job at a time, so you can have many jobs running at once within your AWS account.
  • System transcoding presets: Amazon Elastic Transcoder provides a set of transcoding presets that removes the guesswork out of figuring out the right transcoding settings for different devices. You can choose from presets that will create output that plays on any device, or from presets that target specific devices. For maximum compatibility, choose a “breadth preset” that will create output that plays on a wide range of devices. For optimum quality and file size, choose an “optimized preset” that will create output for a specific device or class of devices.
  • Custom transcoding presets: The transcoding presets that we supply cater to most devices and platforms, but some customers may need to create specific presets for a particular output target. Using custom presets, you can customize an existing transcoding preset and use it across all your pipelines in your AWS account within a region.
  • Automatic video bit rate optimization: With the auto video bit rate setting, Amazon Elastic Transcoder will automatically adjust the bit rate in order to optimize the visual quality of your transcoded output. You can limit the instantaneous bit rate in your output video using the maximum bit rate parameter. This is useful when you need to generate an output file with a limited or capped maximum bit rate, which may be required to meet the playback specifications for certain devices. The result is that you get video files that look great but have better compression than if you had selected a single bit rate for the entire file.
  • Monitoring and Management: You can view the status of your transcoding pipelines and jobs through the AWS Management Console or the Amazon Elastic Transcoder service API or SDKs. You can also monitor, alarm and receive notifications on the operational performance and usage of Amazon Elastic Transcoder using Amazon CloudWatch. Amazon Elastic Transcoder automatically publishes nine operational metrics into Amazon CloudWatch, giving you more visibility into the overall health of your transcoding workflow and the ability to invoke an action if the metric you are tracking crosses a certain threshold for a defined period of time. You can monitor metrics such as jobs completed, jobs that errored out, output minutes generated, standby time, and errors and throttles on various API calls. These metrics appear in CloudWatch within a few minutes of the transcoding job being executed on Elastic Transcoder.
  • Notifications: Amazon Elastic Transcoder uses Amazon Simple Notification Service (SNS) to notify you about transcoding events. You can be notified when your transcoding job starts, when it completes, if there is a warning, and if there is an error condition. Using notifications is an efficient way to monitor and manage your transcoding workload. You just rely on Amazon Elastic Transcoder to notify you of a change, which removes the need for you to poll the service for status.
  • Thumbnails: Amazon Elastic Transcoder can generate thumbnails of your output video for you. You can set the size of the thumbnails, aspect ratio and other parameters including how many thumbnails you would like to have generated. Generating multiple thumbnails is useful if you want to add chapter markers, provide a visual scan function or simply choose the most representative thumbnail for your content.
  • Visual Watermarks: Amazon Elastic Transcoder can overlay up to four still images on your output video. To watermark your output videos, simply provide a file containing a PNG or JPG image and use a transcoding preset to specify position, scale, sizing, and opacity information for the watermark. You can use this feature to add program or other identification logos to your output.
  • Captions: Amazon Elastic Transcoder supports captions. Captioning is the process of displaying text that accompanies the video to transcribe the audio portion of the program or translate the audio into a different language. You can use Elastic Transcoder to add, remove, or preserve captions as you transcode your video from one format to another.
  • Formats: Amazon Elastic Transcoder supports transcoding to the following output formats:

HLS using an MPEG-2 TS container to house H.264 video and AAC or MP3 audio
Smooth Streaming using an fmp4 container to house H.264 video and AAC audio
MPEG-DASH using an fmp4 container to house H.264 video and AAC audio
XDCAM using MXF container using MPEG-2 video and PCM audio
MP4 container with H.264 video and AAC or MP3 audio
WebM container with VP9 video and Vorbis audio
WebM container with VP8 video and Vorbis audio
FLV container with H.264 video and AAC or MP3 audio
MPG container with MPEG-2 video and MP2 audio
MP3 container with MP3 audio
MP4 container with AAC audio
OGG container with Vorbis or FLAC audio
OGA container with FLAC audio
FLAC container with FLAC audio
WAV container with PCM audio
Animated GIF

  • HLS with AES-128 Encryption: You can generate HLS streams protected with AES-128 encryption. Jobs created with this option will encrypt the media files and reference the decryption key in the playlist. You may choose to have Elastic Transcoder write the encryption data keys directly to S3 using SSE-S3, in addition to the job object where they will be protected using your AWS-KMS master key.
  • DRM Packaging: We support packaging for Microsoft PlayReady DRM. You can protect your Smooth Streaming files using Microsoft PlayReady PIFF 1.1, and HLS outputs using the Discretix 3.0.1 for Microsoft PlayReady. When creating your transcoding job, be sure to include the encryption key and license server URL provided by your PlayReady License Provider.
  • Encrypted media files: You can use encrypted mezzanine files as input to Amazon Elastic Transcoder, or protect your transcoded files by letting the service encrypt the output. Supported options range from fully managed integration with Amazon S3's Server-Side Encryption, to keys that you manage on your own and protect using AWS Key Management Service (KMS). Furthermore, encryption support is not limited to your video files. You can protect thumbnails, captions, and even watermarks.
  • Progressive download of on-demand media: You can store the original versions of your media content in Amazon S3 and configure an Amazon CloudFront download distribution for progressive download of your video and audio files. Frequently accessed media files are cached at the edge to help you scale and give your viewers the best possible performance.
  • Clip Generation: You can create a clip from your source media by specifying a start time, and optionally, the desired duration of your clip. You can generate different length clips (or transcode the entire file) for each output in your transcoding job. You will be charged only for the output duration of your transcode, so if you have a five-minute input file and you create a one-minute output from it, you will only be charged for one minute of transcoding.
  • Clip stitching: You can stitch together two or more input clips to create a single longer output clip in the desired output formats as part of the transcode job. To do this, you need to specify more than one input when creating a transcode job. For any of the inputs, you can choose only a sub section of the file to stitch by specifying the start time and the duration. You will be charged for the output duration of your transcode, so if you are stitching two five-minute input files to create a ten-minute output, you will be charged for ten minutes of transcoding.
  • Advanced Settings: You can override defaults or automatic job and preset parameters using advanced settings. For example, you may wish to force or limit a specific output frame rate, maximum bit rate, and rotation or set a specific H.264 or VP8 profile level.
  • Multiple Regions: Amazon Elastic Transcoder is available in eight AWS regions: US East (N. Virginia), US West (Oregon), US West (N. California), EU (Ireland), Asia Pacific (Singapore), Asia Pacific (Tokyo), Asia Pacific (Sydney), and Asia Pacific (Mumbai).

Adaptive streaming offers better user experience by adjusting to network conditions and CPU utilization, automatically switching to higher or lower quality streams. Amazon Elastic Transcoder can create a set of segmented output renditions at different resolutions and bit rates, and a corresponding playlist or manifest file, all stored in Amazon S3. Amazon Elastic Transcoder supports the following implementations:

  • HTTP Live Streaming (HLS): You can use Amazon Elastic Transcoder to create a complete set of outputs compatible with either version 3 or version 4 of the HLS protocol. HLS is commonly used to reach iOS devices, Android devices, set-top boxes and browser-based players. You can then use Amazon S3 alone or in conjunction with Amazon CloudFront to deliver your media files.
  • Smooth Streaming: You can use Amazon Elastic Transcoder to create a set of fragmented MP4 outputs at different resolutions and bit rates, and corresponding ISM and ISMC manifest files. You can then use Amazon CloudFront or an IIS server to deliver your media files to players that implement Smooth Streaming such as Xbox, Windows Phone and clients utilizing Microsoft Silverlight players.
  • MPEG-DASH: You can use Amazon Elastic Transcoder to create a set of video-only outputs at different resolutions and bit rates, the audio-only output, and the corresponding MPD manifest file. You can then use Amazon S3 directly or in conjunction with Amazon CloudFront to deliver MPEG-DASH streams.


Amazon Elastic Transcoder has several default limits for the number of transcoding pipelines, custom transcoding presets and outputs per job. For details about these limits, please refer to the developer guide. If these limits are insufficient for your needs, please contact us. We will evaluate and respond to your request within two days.

Your use of this service is subject to the Amazon Web Services Customer Agreement.