The Dolby.io Media Transcode API converts media files to alternate encoding formats to help optimize content for a variety of network conditions and devices. If you are building an application that uploads media to different services, this API can be used to transcode, transrate, and transsize outputs to meet specific platform requirements.
✓ Convert media to the file type and settings needed for distribution
✓ Support for a variety of container formats
✓ Support for a variety of audio and video codecs
✓ Generate thumbnail images from video
✓ Create Adaptive Bitrate (ABR) streaming formats such as HTTP Live Streaming (HLS) and MPEG-DASH
✓ Concatenate and assemble multiple video files together
To optimize playback performance, you may want to use the Transcode API to create variations of your media to ensure compatibility and performance across devices and network conditions.
Some common usage includes:
- Codec conversion, to change media from one codec to another to achieve playback compatibility or modify captured audio for other platform or workflow requirements.
- Changing resolution, or transizing, converts the media to be played back at a different resolution such as for mobile devices that have a smaller screen or reduced bandwidth for data transfer of large media files.
- Sample rate conversion, or transrating, converts the media by modifying the sample rate or bitrate for lower quality playback conditions.
- HLS/DASH Adaptive Bitrate packaging, encoding multiple renditions of a media file so that viewers have an optimal experience given their network conditions and device constraints.
You can use cloud storage options such as AWS S3, Azure Blob Storage, and GCP Cloud Storage or upload local files to Dolby Media Temporary Cloud Storage. See Media Input and Output for more details about using pre-signed URLs.
Additionally, the Transcode API supports accessing your own cloud storage. Our How to Transcode with Your Own Cloud Storage guide can help you get set up.
Use our series of How-To guides to explore some frequently used conversions and functionality.
A simple "getting started" example that will take you through your first /media/transcode API call.
How to Transcode with Your Own Cloud Storage
Learn how to define your storage and correlate outputs with storage.
How to Stitch/Concatenate Multiple Files
Stitch together multiple files in a sequence to a single output file.
How to Trim a Media File
Trim the beginning or end off of a media file.
How to Create an Overlay
Add a company logo, a visual watermark, or text to your video file. The Transcode API makes it easy to apply graphics and text dynamically at the same time as converting a file. It is even possible to have different overlays applied to each individual output file. Optionally, you can specify the timing for an overlay to appear for only a portion of the video and specify a fade-in or fade-out transition. You can also adjust the position and opacity.
How to Transcode to HLS Streaming Format
We will explain the basics of Adaptive Bitrate Streaming and show you how to setup a simple example of HLS and Dash.
How to Transcode an Audio-Only or Video-Only Output
Don't have a need to process video? We handle audio-only processing too. In this example, we will show you how to extract your audio from a video file.
How to Generate Multiple Outputs from an Input
In this guide, we will walk you through creating an mp4 video output and extracting a thumbnail image/poster frame in the same operation. A thumbnail image is commonly displayed before someone presses play on a video.
How to Transcode to a Specification
Need to configure your video settings for delivering to someone's platform? Use this guide to understand how and when you might want to configure a video output in a certain way.
The Supported Media Formats identifies support across the Media APIs more broadly but the Transcoding API has a few variations extending support to streaming formats as indicated in this table.
- /media/transcode requires access to a cloud storage bucket to write HLS and DASH outputs. Pre-signed URLs and dlb:// URLs cannot be used as outputs when HLS or DASH is requested.
- Only MP4 outputs are supported when one of the requested outputs is HLS or DASH.
Updated 12 days ago