OTT Engineering13 min read

Abstract bitrate waveform rising for complex video scenes and falling for simple scenes

Variable Bit Rate: How VBR Works for Video Streaming

A quiet interview looks clean, but the first fast-action sequence turns blocky. Raising the bitrate fixes the action—and wastes data on every simple shot. Variable bit rate encoding addresses that mismatch by changing how many bits the encoder spends as scene complexity changes.

Variable bit rate (VBR) is a rate-control method that gives complex video more data and simple video less data. It usually improves the quality-to-file-size ratio for on-demand video, while constant bit rate (CBR) remains the safer choice when a live ingest or fixed-capacity network needs predictable traffic.

That definition is the starting point. Choosing VBR well also requires separating four decisions that are often mixed together: rate control, codec, container, and adaptive delivery.

What is variable bit rate?

Bitrate measures how much encoded data represents each second of audio or video. A 5 Mbps video uses about five million bits per second on average, before accounting for audio, packaging, and other overhead.

The VBR full form is variable bit rate. Instead of forcing every second toward the same data budget, the encoder analyzes the content and changes its output rate. A static presentation slide may need relatively few bits. Camera noise, confetti, water, foliage, crowds, or a rapid pan may need many more.

The key word is allocation. VBR does not create quality from nothing. It moves a limited bit budget toward the frames where compression is most difficult and away from the frames where extra data would add little visible value. AWS MediaConvert describes VBR in the same operational terms: the encoder directs more bits to complex parts while targeting a specified average bitrate.

For a target-average VBR encode, you can estimate the video payload size with:

estimated size in GB = average Mbps × duration in seconds ÷ 8,000

A one-hour video averaging 5 Mbps is therefore about 2.25 GB for the video payload. The final delivered object will differ because audio, the MP4 or Matroska container, manifests, encryption, and packaging add data.

VBR is not variable frame rate

Bitrate and frame rate describe different properties. VBR changes the amount of encoded data used over time. Variable frame rate changes how many frames are presented over time. A file can have constant frame rate with variable bit rate, and that is common in streaming workflows.

VBR is also not a codec or a container. H.264, HEVC, and AV1 are codecs; MP4 and Matroska are containers. A Matroska vs MP4 decision affects packaging and compatibility, while a VBR decision affects how the encoder allocates bits. Treating those as separate controls makes a transcoding specification easier to reason about and test.

How variable bit rate encoding works

A video encoder reduces redundancy within and between frames. Its rate-control system decides how aggressively to quantize the video while staying near a bitrate, quality, or buffer constraint.

In an easy scene, the encoder can preserve the image with fewer bits. In a difficult scene, it can increase the instantaneous rate to protect texture and motion. Over the complete asset, those rises and falls form an average bitrate and a peak bitrate.

Three VBR families appear frequently in production tools:

One-pass VBR

The encoder analyzes and writes the output in one traversal. It can react to the frames it has seen and may use a look-ahead window, but it does not have a complete complexity map for the entire title before making early decisions.

One-pass VBR is faster and may be the only practical variable mode for near-real-time work. Its output size or quality can be less precise than a well-tuned multipass encode, depending on the encoder and control mode.

Two-pass VBR

The first pass records complexity statistics; the second uses those statistics to distribute the target bit budget. The FFmpeg documentation for two-pass encoding explains that the first pass writes statistics and the second uses them to reach the requested bitrate.

Two-pass VBR is useful when a VOD file must land near a known average rate or size. It is not available for a true live source because the complete program does not exist when transmission begins. It also increases processing time, so the quality benefit should be measured rather than assumed.

Quality-based or quality-defined VBR

Some encoders let you target perceptual quality instead of a fixed average bitrate. The encoder then spends what each asset needs, usually with a maximum peak limit. Simple animation may produce a smaller file than high-motion sports even when both use the same quality setting.

AWS calls its implementation QVBR. Its current QVBR guidance lets operators set a quality level and maximum peak bitrate, and warns that adding a maximum-average constraint reduces some of QVBR's quality-to-size benefit.

Names are not perfectly portable across encoders. CRF, constant quality, CQ, capped CRF, CVBR, and QVBR can all produce variable output, but their controls and guarantees differ. Read the encoder's rate-control documentation before translating a setting from another platform.

Variable bit rate vs constant bitrate

The question is not whether VBR or CBR is universally better. It is which constraint matters most for the delivery path.

Decision factorVBRCBR
Bit allocationChanges with scene complexityTargets a steady rate over time
Quality at the same average rateUsually more consistent across mixed-complexity scenesMay waste bits on simple scenes or starve complex ones
Network demandPeaks and valleys must be accommodatedMore predictable for ingest and fixed-capacity links
File-size planningPredictable with average-target, two-pass modes; less so with quality-target modesStraightforward from target rate and duration
Encoding latencyMay require look-ahead or multiple passesSuits real-time pipelines
Typical fitVOD, downloads, archives, mezzanine derivativesLive contribution, platform ingest, fixed-bandwidth delivery

CBR is valuable because predictability is a feature. YouTube's current live encoder guidance specifies CBR for bitrate encoding and recommends testing with movement similar to the real event. A live contribution feed that exceeds available uplink capacity at the worst possible moment can drop frames before an adaptive player ever sees the content.

VBR is valuable because content complexity is not constant. AWS recommends quality-defined VBR for internet and VOD delivery in its MediaConvert workflow, except where a constant rate or a specific size constraint takes priority. That does not mean any unconstrained VBR setting is safe for every viewer. The peak, buffer model, segment behavior, and rendition ladder still matter.

What constrained VBR changes

Constrained VBR adds a ceiling to the variable output. You typically specify an average or quality target, a maximum bitrate, and a buffer size. The encoder can spend more during difficult scenes without producing unlimited spikes.

That ceiling should reflect the actual delivery contract, not a copied preset. A tight cap makes the stream easier to provision but can reduce quality during complex shots. A loose cap gives the encoder more freedom but increases the throughput a player, CDN, and access network may need over a short interval.

Apple's HLS guidance makes this operational. Its HLS authoring appendixes distinguish measured average bitrate from measured peak bitrate and provide validation tolerances for AVERAGE-BANDWIDTH and BANDWIDTH. For VBR HLS, both values should be measured and signaled accurately; a player cannot make sound adaptation choices from a misleading manifest.

Variable bit rate and adaptive bitrate are different

VBR and ABR are easy to confuse because both involve a changing bitrate.

VBR is an encoding decision inside one rendition. The bitrate of that 1080p rendition rises and falls with its content.

Adaptive bitrate streaming is a playback and delivery decision across multiple renditions. A player chooses among, for example, 360p, 720p, and 1080p versions as network and device conditions change. The IETF's operational guidance for streaming media describes ABR as client selection from a bitrate ladder, commonly delivered with HLS or DASH; our adaptive bitrate streaming guide covers the player-side process in more depth.

A production workflow can use both:

  1. Transcode the source into several resolution and quality levels.
  2. Encode each rendition with constrained or quality-based VBR.
  3. Package aligned segments into HLS or DASH.
  4. Advertise accurate average and peak bandwidth values.
  5. Let the player select the rendition it can download without draining its buffer.

This separation matters when diagnosing playback. A bad quality switch may come from the ladder or player algorithm, while blockiness within a rendition may come from its encoder settings. Calling both problems “the bitrate” hides the layer that needs correction.

OTT encoding workflow showing a source transformed into capped VBR renditions for adaptive delivery

How to choose variable bit rate settings for OTT video

Start with the delivery constraint, then choose the rate-control mode. Encoder defaults are a baseline, not proof that a title will survive a production network.

1. Classify the workflow

Use CBR when a live platform explicitly requires it, the uplink has a fixed ceiling, or low-latency contribution cannot tolerate bitrate bursts. Use capped single-pass VBR only when the ingest and delivery system support it and you have measured enough headroom. If the contribution path itself is the open question, compare the transport choices in our real-time streaming protocol guide.

For VOD, start with quality-based VBR or two-pass average-target VBR. Quality-based modes work well when consistent perceived quality and efficient storage matter. Average-target modes work when a commercial, download, or storage requirement demands a more predictable final size.

2. Build around content, not resolution alone

Resolution and frame rate affect bitrate needs, but they do not describe scene complexity. A clean 1080p animation and noisy 1080p concert can need very different rates at the same perceptual quality.

Test a representative set that includes low light, grain, rapid motion, detailed textures, fades, graphics, and scene cuts. If every title receives an identical ladder, inspect whether some renditions add bytes without a visible quality gain or whether difficult titles are under-provisioned.

3. Set and verify the peak

Measure bitrate over segment-sized and shorter windows, not only across the full file. The average may look correct while one segment greatly exceeds the rate a player expects.

For HLS, validate the encoded outputs and manifest together. Check AVERAGE-BANDWIDTH, peak BANDWIDTH, segment duration, codec strings, resolution, frame rate, and alignment across renditions. A correct encode paired with incorrect signaling is still a broken delivery package.

4. Compare quality at equal cost

An honest VBR-versus-CBR test holds average delivered bytes roughly constant and then compares visual quality. If one output simply uses more data, the test does not isolate rate-control efficiency.

Combine objective scores with visual review. The Netflix VMAF project provides a perceptual quality metric plus PSNR and SSIM implementations; its repository notes a new VMAF v1 model set released in June 2026. Select a model appropriate to the viewing condition, inspect outlier scenes, and still watch the encodes on target phones, browsers, and televisions.

5. Model the whole cost path

VBR can reduce stored and transferred bytes, but it may increase encoding time and compute. Evaluate source storage, transcoding, packaged outputs, origin egress, CDN delivery, and re-encoding frequency together.

For teams designing a new ladder or replacing fragile transcoding rules, Apexnova can engineer and validate the encoder, packaging, player, and CDN path as one OTT system. Its production scope includes per-title encoding, adaptive bitrate streaming, multi-CDN routing, and device playback across web, mobile, and connected TV.

6. Create release gates

Automate checks before publishing a rendition set:

  • average and peak bitrate remain within the declared limits;
  • segment durations and keyframes align across the ladder;
  • the player switches without decode errors or visible discontinuities;
  • buffer occupancy remains safe on constrained network profiles;
  • VMAF or another chosen metric meets the title-class threshold;
  • audio, captions, DRM, and ad-boundary transitions remain synchronized;
  • the measured file size and delivery cost match the business model.

These gates make rate control repeatable. They also prevent a codec upgrade, encoder version change, or new content class from silently invalidating old assumptions.

Common variable bit rate mistakes

Treating the average as a ceiling

An average bitrate does not describe the largest short-term demand. Provision against measured peaks and the window over which they occur.

Using VBR for a live ingest that requires CBR

The platform's ingest specification wins. A VBR file may play perfectly on demand and still be the wrong source behavior for a real-time RTMP or RTMPS contribution feed.

Copying one bitrate ladder to every title

Uniform ladders are simple to operate, but they can overspend on easy content and underserve hard content. At minimum, group titles by complexity; at higher scale, evaluate per-title or content-aware ladders.

Assuming two passes always look better

Two-pass encoding improves knowledge of the full title when targeting an average bitrate. A mature quality-based single-pass mode may be a better fit for another objective. Compare outputs from the actual encoder version rather than relying on the label.

Ignoring the player and manifest

VBR encoding ends at a file; streaming performance depends on packaging and playback. Validate the rendition's real segment sizes, advertised bandwidth, switching behavior, and buffer response together.

Frequently asked questions

What does VBR stand for?

VBR stands for variable bit rate. It is an encoding method that changes the data rate according to the complexity of the audio or video instead of holding one target rate throughout.

Is VBR better than CBR for video?

VBR is usually more efficient for on-demand video because it can spend more bits on complex scenes and fewer on simple ones. CBR is often better for live ingest or fixed-bandwidth delivery because its traffic is easier to predict.

Is VBR good for live streaming?

VBR can work in controlled live systems, but many public live platforms require or recommend CBR. If live VBR is allowed, cap the peak, provide uplink headroom, and test the complete ingest-to-player path.

What is the difference between VBR and ABR?

VBR changes the bitrate within one encoded rendition as content complexity changes. ABR lets a player switch among multiple renditions according to network and device conditions.

Does two-pass VBR improve quality?

Two-pass VBR can allocate a target average bitrate more intelligently because its second pass uses complexity data from the complete source. The gain depends on the encoder, preset, content, and comparison target, so measure it against a quality-based alternative.

Choose rate control from the constraint

Use variable bit rate when the goal is to preserve quality efficiently across changing scene complexity and the delivery path can absorb controlled peaks. Use constant bit rate when predictable real-time traffic is the harder requirement.

For an OTT library, the strongest default is not “VBR everywhere.” It is a measured workflow: select the rate-control objective, cap and signal peaks correctly, build an appropriate ABR ladder, and release only the renditions that pass quality, playback, and cost gates. If your current encoding ladder is producing blocky action, oversized simple titles, or unexplained buffering, start with a representative title set and audit those four layers separately.