Back to api.video Glossary
Transcoding
What is transcoding?
Transcoding is the process of taking already encoded (or transcoded) content, decompressing it and then using different codecs to alter or recompress it. It's labor intensive because you are taking every part of your video and audio and recompressing it. During this process, depending on what codecs you use, you may lose data.
What types of transcoding are there?
There are three types of transcoding you will encounter:
- Lossy-to-lossy - This is where you take a codec that is lossy and transcode to another format that uses a lossy codec. You will lose lots of data during this process, and transcoding will lower the quality of your video.
- Lossless-to-lossy - This is where you take a codec that preserves every detail of a video and transfer it to one that loses data. The trade off results in something useful like faster decompression for playback, or a smaller file.
- Lossy-to-lossless - You cannot regain lost quality, so when transcoding in this situation, you retain all the data that was in the lossy compression without further degradation of the file.
What are the goals of transcoding?
The goals of transcoding are dependent upon your use case. The main reason to transcode video is because you want to use it in a new scenario with a codec that's optimized for that new scenario. For example, say you want to edit a video. You would probably want a codec that's good quality, but which lets you easily move backwards and forwards through the video so you can quickly find the parts of the video you want to clip and edit. A great example of a codec for this purpose would be ProRes. This codec doesn't work for playback with a lot of devices though. So after you're done editing, you would want to transcode to another codec that works for playback.
Other scenarios might be something like wanting to store a video for later use. When you store a video, if it's for a project, you might want to store the highest quality possible. Then when you get the video out later to edit again or use in a project, it's got as much information available as possible. Or, maybe you're storing a video just for reference purposes and you don't have a lot of space. Then you might want a codec that compresses efficiently but the video quality is lower. That would be enough for reference later.
Transcoding and api.video
api.video transcodes your video to HLS for fast, high quality playback across the internet. If you're interested in learning more about transcoding, check out our article Encoding and Transcoding - What's the Difference?. And if you want to give api.video a try, you can sign up here