Among the many different terms thrown around in media streaming technology, transcoding is probably one of the most important concepts. Even if you are not a technical person, the understanding of transcoding is key to the adaptive streaming workflow for video. Transcoding is a vital element of the video streaming process. At the same, you know it works best when users are unaware it takes place at all. With properly implemented transcoding, users get a smooth viewing experience, no matter the device they use or their bandwidth.

Transcoding involves converting encoded digital files (audio or video) into files that better meet the needs of the hardware used to play these files. It is particularly important for ensuring your content can be viewed on many different devices.

This article discusses what transcoding means for broadcasters and viewers. Let’s get to the meat of it.

What is transcoding?

Before discussing transcoding, it’s good to differentiate this process from compression (also known as encoding) and transmuxing (also known as rewrapping) – because these terms often get tossed around in similar contexts, it’s quite easy to confuse them.

Encoding/compression is an essential process connected to preparing video for streaming and then displaying on end devices. All video content Many professional digital video cameras capture uncompressed files. These files usually carry high quality video with no quality loss. However, due to the size, they have to be compressed to make them easier to store and distribute.

Source: Restream.io

Transcoding is a resource-intensive process. It changes the “coding” of a file. In other words, it takes encoded (or “compressed”) video, decompresses it, and then alters and re-compresses it.

For example, a high-resolution 4K video can be transcoded into a lower-resolution. This is done because smaller files are faster and easier to manipulate in editing software. In the same way, live streaming video can be transcoded “on the fly” from its original format into differently formatted streams. This ensures that the file can then be delivered to the largest number of viewers using different devices – resolutions, processing power etc.

what-is-transcoding

Source: Restream.io

Many of today’s all-digital cameras can internally compress video footage into more manageable codecs like H.264. However, even if a digital camera saves compressed files using an internal encoder, the format may not be suitable for delivery to a wide online audience without prior transcoding.

Transmuxing/rewrapping allows you to change the so-called “container” of the video (e.g. mp4) to something else, like HLS. It’s a fast process that does not typically require much processing power and is a fairly common procedure in content delivery. The key difference between transcoding and transmuxing is that the former requires much less computing power, and does not modify the encoded file at all – it just changes the “wrapping” of the file, adjusting the way video and audio data packets are organized.

This approach doesn’t give you the widest compatibility support that transcoding does e.g. multiple video resolutions.

For example, an H.264 video clip taken from a video camera can be transmuxed and made suitable for streaming over the web via HLS. This process involves breaking the video into small MPEG-2-TS files, referred to as chunks, of varied bitrate—but notably won’t make changes to the base clip).

Neither of these digital media tasks can properly be called transcoding. However, because they are related, they’re sometimes confused.

The reasons to use transcoding

By implementing transcoding, popular video streaming platforms can make sure the content can be played on a wider amount of end devices. 

Different video input requirements

You may have seen it many times: the quality of a video you’re watching suddenly drops when your internet connection is unstable. This is an example of transcoding working under the hood of the streaming platform, also known as Adaptive Bitrate Streaming (ABR). The process allows the service to dynamically adapt the source format to the end-user’s internet connection, screen size and computing power.

By using transcoding, the various video sources required for ABR can be generated from a single video input – there is no need to re-upload the same file in multiple different bitrates and screen sizes. Similarly, with transcoding you can encode your source stream into multiple formats like HLS or MPEG-DASH when streaming to a range of devices that only support certain formats.

When doing live streaming to multiple target platforms, there are some which have different video input requirements.

Fixing the encoding of source files

Transcoding can be necessary to help you fix the source video encoding and improve the playback experience on end devices. This usually happens on specific hardware devices that encode RTMP directly on the device, e.g. a camera. Because live streaming is usually not the expertise of hardware manufacturers they generally don’t configure their Real-Time Messaging Protocol encoder correctly, which results in a messy RTMP output.

Buffering due to low-bandwidth connections

Lack of transcoding leads to inadequate device support for the resolution streamed. As a result, the viewer may experience the dreaded buffering animation. Conversely, specific viewers may be served low-quality video when their bandwidth makes it possible to watch better resolution content than that of the stream delivered.

When is transcoding needed?

One of the reasons to use transcoding is when you want to make sure your content reaches more end users. For example, a live broadcast recorded using a camera and a built-in encoder is usually limited to a single codec like H.264 at 1080p. But because it needs to be delivered to all online viewers, and some of them may not have sufficient bandwidth to view the stream. Transcoding the video before streaming will save them the unpleasant experience of their players buffering as they wait for the hefty 1080p packets of that video to arrive.

Another issue is that the RTMP protocol is not supported by all end-user devices, and Apple’s HLS has been gaining popularity recently. This effectively means that not using transcoding and transmuxing excludes almost anyone with slower data speeds, tablets, mobile phones, and connected TV devices.

What are the benefits of using a transcoder in streaming?

Video transcoding benefits publishers and viewers alike by optimizing content for each stage of the streaming lifecycle. By using a transcoder software or service, you can simultaneously create a set of time-aligned video streams. Each such video stream has a different bitrate and frame size, as well as codecs and protocols allowing you to reach more viewers. This set of internet-friendly streams can then be packaged into several adaptive streaming formats (e.g., HLS), allowing smooth, high-quality playback on more devices.

To reach as many viewers as possible and offer them the best quality allowed by their bandwidth and devices, you need to implement adaptive streaming. This basically means your platform delivers a single H.264/AAC stream to your transcoder located on a server image in the cloud. Then, the transcoder creates multiple H.264/AAC renditions at different bitrates and resolutions. Next, a media server (in some cases working on the same server as your transcoder) or streaming service packages those renditions into one or more adaptive streaming formats before delivering them to end-users.

The benefits of using a transcoder are plenty. From the viewers’ point of view, it’s a way to offer:

  • Better streaming quality
  • Improved playback on worse bandwidth
  • Support for many different end-user devices like computers, tablets, and mobile devices
  • Better video startup times
  • Eliminating or minimizing buffering (circle animation) as the video transcoder  automatically chooses the best video resolution

On the publisher side, transcoder also offers important benefits:

  • Reducing the costs and complexity of having to encode videos into multiple different resolutions and bitrate options
  • Limited playback capabilities based on the codecs, protocols, and configurations available in the encoder
  • Inability to leverage next-generation technologies and hybrid workflows

Conclusion

It’s in the interest of every video streaming platform to be available on as many OTT platforms and Smart TVs as possible. This is an important tactic allowing them to reach their full potential and offer their users the best viewing experience possible. Transcoding is thus a vital part of the video streaming pipeline, allowing viewers to get the best viewing experience no matter the bandwidth or screen resolution. In other words, the transcoding process makes your content more accessible to everyone.

Usually, the bulk of the responsibility for transcoding falls on the streamer. If you are looking into implementing video transcoding streaming, our experts will be happy to help. Drop us a line using the contact form – we will be happy to discuss your project on a quick call.