Alphabet Soup: Making Sense of CBR, ABR, VBR & QBR
There are several technologies out there for streaming and video compression. Here’s a quick look at their evolution and a guide to how these approaches are best used in the streaming/OTT world.
- ABR = adaptive bitrate
- CBR = constant bitrate
- VBR = variable bitrate
- QBR = quality bitrate
From progressive to ABR
First came the progressive download method of making videos available online for HTTP streaming. This just wouldn’t work with the varied network conditions that existed. Clients with slower network speeds would get stuck in buffering circles and then watch the video for a few seconds just for the video to stop when they get stuck with another buffering loop.
Then came ABR. ABR solved the problem of varying network conditions by encoding the content at different fixed bitrates and then allowing the client to request the appropriate segment (of a certain bitrate) based on the network condition at the player end. This made it possible to build large systems with premium VoD services and stream video content without buffering issues.
But it brought in an inherent disadvantage. The encoded content needs to have a fixed bitrate or needs to be encoded in CBR fashion. What this means is every segment of video (usually a few seconds duration) needs to be of a similar size for a particular bitrate profile in order for the client to be able to adapt based on the available bandwidth.
CBR: not a perfect solution
Video compression is built on the premise that the human visual system is less sensitive to some of the details in high motion areas and similarly less sensitive to color variations in contiguous color/intensity regions and so this information could be removed from the raw video to achieve better compression. Video encoding removes the spatial and temporal redundancy in a video sequence. As one can imagine, the amount of compression required (or desired) is dependent on the scene, and to achieve consistent quality in compressed video, we need to allow the amount of compression to vary. If we were to fix the bitrate to be used during compression as in CBR, the quality would keep varying in the encoded content based on the scene complexity.
CBR RESULT: Poor and varying quality.
VBR: better quality, challenges with streaming
If one were to encode content in VBR fashion by allowing the bits to vary during the encoding process, allocating more bits in high motion or high complexity scenes, we can improve quality. However, there wouldn’t be a way the player client could guess the variation in this bitrate and adapt. So, when streaming over limited bandwidth mobile networks this can lead to buffering in complex portions of the video scene.
VBR Result: Buffering issues.
QBR: The best of both worlds
Introducing MediaMelon QBR, a new enhancement from MediaMelon that improves existing ABR without requiring a change in your existing infrastructure. QBR takes the best of the quality benefits available using VBR and helps the client adapt the bitrate in such a way that doesn’t lead to buffering stalls. It builds on top of ABR principles and allows streaming companies to encode and deliver the video content in a VBR fashion, so that the every bit transferred delivers the highest, most consistent quality video.
QBR: The next step in ABR.