CBR vs VBR Mediaconvert file size difference ?

0

I transcoded VBR and CBR file from MediaConvert and used exactly same bitrate for transcoding.

What I observed for some of the renditions was CBR file size was low than VBR.Why is that so ?

I understand QVBR was lowest as it encodes and allocates the bit very intelligently.But why was there difference in file size for CBR and VBR ?

Dhaval
asked 8 months ago301 views
1 Answer
0

Rate control modes determine how a budget of data (measured in bits per second) is spent over time when compressing video sequences. There are additional dimensions that should also be taken into account, such as the resulting quality of the video compression and the content complexity in each scene and frame that is compressed.

The goal of Constant Bit Rate (CBR) is to maintain a constant stream of data at a steady rate regardless of the underlying content complexity. In very simple scenes that contain mostly static pixels that are not changing, the bit rate required to reproduce the images is very low, likely below the target bit rate set in the job configuration of a typical encode. Conversely, complex scenes with lots of motion, noise, detail, and sudden changes frame to frame will require bit rates above the target to effectively compress each frame and reproduce the original image. In a CBR rate control mode, the same number of bits will be assigned to each scene regardless of the complexity. Video clips that have a mix of simple and complex scenes to compress will lead to wasted bit rate budget in the simple scenes and inadequate bit rate budget in the complex scenes. When played back, CBR content will often display fluctuations in the image quality depending on the scene complexity and this may become noticeable in complex scenes if the bit rate target is not high enough to account for the additional complexity.

The goal of Variable Bit Rate (VBR) is to more effectively make use of the bit rate budget during compression. Instead of a fixed bit rate defined for the entire clip duration, a target average bit rate is defined along with some guardrails such as allowable peak bit rate. This provides the VBR rate control mode the ability to adjust how the bit rate budget is spent from scene to scene in the content. If the target average bitrate is treated like a baseline data rate, the encoder has permission to react to the content complexity and adjust the spending of the bit rate budget above or below the baseline based on how much data it needs to reproduce the original image. This will produce bit rate fluctuations in mixed complexity content, and these fluctuations typically average out to very close to the target bit rate over time. VBR encoded content typically exhibits a more constant quality level, scene by scene, when viewed during playback.

What can happen with hard to compress content, most often in single-pass VBR encoding scenarios where the encoder is not fully aware of the content complexity across the entire source clip duration, is that the encoder is not given a chance to fluctuate below the target average bit rate baseline because it only encounters complex scenes. Because it is unaware of what scene types are coming, it is making educated guesses at what bit rate budget to spend with the expectation that some simple scenes will be encountered in the future that allow it to save bits and bring the average back down to the baseline. This is generally a symptom of a VBR target average bitrate that is too low for the frame size and scene complexity of the content being compressed.

Two-pass VBR should help with this phenomenon by inspecting the entire content duration prior to encoding the output and determining how best to spend the bit rate budget in each scene. Additionally, Quality-Defined Variable Bit Rate (QVBR) should also help by using target quality levels to determine the rate control decisions on instead of a target bit rate. The MediaConvert User Guide includes some illustrative graphs to highlight how QVBR and CBR rate control modes will differ over time, and this example is very similar to what you would see comparing VBR to CBR.

It is likely that the content you are encoding is complex enough, and that the target bit rate is low enough, that VBR rate control is not able to take advantage of the bit rate fluctuations to dip below the average bit rate target and this is resulting in an average bit rate very similar to, or slightly higher than, the CBR target when added up over the entire clip duration. It is also likely that you will observe the expected VBR file size savings using the same settings when encoding different, easy to compress content, or by making the equivalent increase to both the CBR target and VBR average bit rate configurations and comparing again. There is a balancing act that needs to be worked out between compressed visual quality, file size, and bitstream compatibility (player environments) that can be delicate to reach and take some trial and error using traditional rate control modes. The intention of QVBR is to aid this effort by doing a lot of the work for you, producing the optimum bitrate for a given target quality level without the need to adjust to different content complexities.

AWS
answered 8 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions