- Streaming production
- Streaming fundamentals
- Encoding your video
- Choosing production tools
- Distributing your video
- Video tutorials
- Peer review
Survey: CBR, VBR, or Other for ABR Streaming
The recommended bit rate control technique for VOD files produced for adaptive streaming is one of the most fundamental decisions encoding professionals make, but in my view also one of the most confusing. If you scan the white papers on the topic, most recommend using constant bit rate (CBR) encoding to simplify the stream selection process. On the other hand, if you survey the techniques actually used by streaming professionals, most seem to prefer constrained VBR.
Here's what I wrote back in 2010 for an article entitled Adaptive Streaming in the Field for Streaming Media Magazine, which included input from MTV, Turner, NBC, Microsoft, Harvard, Indiana University, and other producers.
VBR or CBR?
My knee-jerk reaction here was to use constant bitrate encoding because the consistent stream should be easier to distribute, particularly in an adaptive setting where the viewer is often retrieving 2- or 3-second chunks of video at a time. This was certainly the view of Microsoft’s Zambelli (now with iStreamPlanet), who said, “The reason I prefer CBR for adaptive streaming is because it exhibits less oscillation in data rates, making fragment sizes more consistent and consequently making it easier for client heuristics to accurately estimate bandwidth. VBR could work, but one has to be careful with setting average/peak/buffer values in order not to cause issues on playback.”
In practice, all live Olympic streams were CBR with a 5-second VBV buffer, while on-demand streams were VBR constrained to 10% over the target bitrate. Sunday Night Football, which is all live, uses the same CBR configuration as the Olympics. Deutsche Welle is exclusively CBR, while Harvard is CBR except for the highest quality stream. Indiana University used constrained VBR, limiting the 1500Kbps stream to 2Mbps, the 750Kbps stream to 1Mbps, and the 250Kbps stream to 500Kbps (see Table 2).
MTV Networks constrains the peak data rate to be no more than two times the average and monitors the buffer in the player to make sure that it can tolerate a brief data spike. Though this obviously works well for MTV Networks, Harvard’s Bouthillier cautions that many of the encoding tools that he’s tested don’t honor VBR constraints, which is why he opts for CBR in all but the highest data rate connections.
To this discussion I would add Apple's dictate from Apple Tech Note TN2224 that states, "Bit Rate Variability - Should not exceed 10% of target bit rate."
My thoughts on the matter haven't really evolved since 2010. I advise consulting clients that CBR is the more conservative approach, but that it seems to be infrequently used, probably because VBR produces better quality and avoids transient quality issues that appear in CBR encoded files. I'm also intrigued by techniques like Constant Rate Factor (CRF) or capped CRF, and want to learn if anyone is using them in the field.
To advance our collective knowledge on the topic, I created a six question survey to determine the bitrate control technique used by actual producers. Six questions sounds like a lot, but I promise, it should take less than 60 seconds.
I will share the results in a webinar entitled, Content-Aware Encoding-Applying Lessons Learned from Netflix's Per-Title Optimization Blog Post, scheduled for January 26th at 2:00 PM EST. If you complete the survey, I will send you a coupon code worth a $10 reduction in the cost of the webinar (from $29 to $19). For those who don't plan to attend the webinar, I'll publish the results on this website as well.