Understanding Per-Title Encoding and Adaptive Bitrate Encoding

Blog Post

Understanding Per-Title Encoding and Adaptive Bitrate Encoding

We know that different types of videos need different bitrates and encoding settings to achieve the best quality. Per Title Encoding, also called Adaptive Bitrate Encoding, helps in achieving this objective.

In contrast to classic encoding techniques, where the same encoding ladder is used for all types of content, Per Title Encoding can decrease the storage and delivery costs of video streams significantly.

Using Adaptive Bitrate Encoding, easy-to-encode videos can be delivered with much lower bitrates and improved perceptual quality.

In addition, videos involving movies or sports, which involve a lot of movement, are streamed at lower resolutions to avoid a bad video streaming quality at the user’s end.

There is no practical implementation process or help articles available on the internet explaining how to implement the “Per-Title process”. So there are so many blogs that only explain it theoretically. So I implemented some theoretical approaches (out of many approaches) into LinqTV Encoding.

There are 3 ways to calculate the Video Quality or Noise Ratio of a video:

Note: We will go with the PSNR way of calculating video quality.

For a video, we usually try to calculate how much noise or pixel corruption was introduced after video compression, in case the compression is essentially lossy (mainly due to Quantization).

A simpler way to compute that will be to calculate the noise quantity of a specific video with a tool. And then using the noise quantity, we will estimate the Quality.

We have an original video: sample_movie.mp4

After Per-Title Encoding, (In this case, we will reduce bit rates for PerTitleEncoding)

Now to find each one’s quality we need to produce the same resolution videos from the original video without reducing the bitrate and then compare with (1, 2, and 3).

FFMPEG Command: (Compare 2 Videos to get a Noise/PSNR quality Index comparison)

According to most of the theoretical blogs, there are essentially two types of per-title or adaptive bitrate encoding.

Let’s take a look at these two types one by one.

This process depends on certain encoding and transmission parameters, that can be varied on a Per Title basis. Some of these parameters are:

We are trying to integrate this Process currently. Till now, we are able to save a considerable amount of space through this process. So this process is working well for us!

If you ask me what is the most important aspect of Per Title Encoding, I would say it is really important to “understand” a movie’s complexity. And by complexity, we mean the complexity of all its scenes, the variations involved in it, etc.

One way to understand this complexity is to gather sufficient information, data, and stats about the scenes of the movie. And then use that data to compress it.

And this necessity to relate the complexity of a movie to its compression process leads us to Multi-Pass Encoding. In Multi-Pass Encoding, the first passes (or N passes) are used to gather information about th

We use cookies for best experience on website. By using our site you agree to Cookies Policy