Why architecture matters here

Per-title encoding matters because video complexity varies enormously, and a fixed ladder is wrong for almost every title. The insight (Netflix's) is that the relationship between bitrate and quality depends entirely on the content: for simple content (low motion, low detail — animation, talking heads), quality saturates at low bitrate (more bitrate adds nothing perceptible), so a fixed ladder's high bitrates are pure waste; for complex content (high motion, high detail — sports, action), quality keeps improving with bitrate well beyond the fixed ladder's points, so it's under-served. A fixed ladder, chosen as a compromise across all content, is simultaneously wasteful for simple content and inadequate for complex — wrong in both directions. Per-title encoding tailors the ladder to each title's actual quality-bitrate relationship, so each title is encoded optimally: simple content saves bandwidth (no quality loss), complex content maintains quality (appropriate bitrate). At the scale of a streaming catalog served to millions, this optimization is enormous value — bandwidth savings (a major cost) plus quality improvements (user experience), which is why per-title encoding became standard in the industry.

The convex-hull insight is the technical core, and it's what makes per-title encoding principled rather than ad-hoc. For a given title, you can encode it at many resolution/bitrate combinations, each yielding some quality (VMAF score). Plotting quality against bitrate for all these encodes, the convex hull is the set of points that give the best quality at each bitrate — the optimal tradeoff frontier. Below a certain bitrate, a lower resolution is better (a 480p encode looks better than a 1080p encode at very low bitrate, because the 1080p is too starved); above it, higher resolution wins. The convex hull captures these crossover points, giving the optimal resolution for each bitrate. The per-title ladder is chosen from this hull — selecting bitrate points along the optimal frontier, with the resolution that's best at each. This is why per-title encoding needs to test many encodes (to trace the hull) and why it's principled (the hull is the mathematical optimal frontier) rather than guesswork — the convex hull is the theoretical foundation that makes per-title encoding find genuinely optimal ladders.

And VMAF is the enabling measurement — the reason per-title encoding can optimize for perceptual quality rather than a proxy. Traditional quality metrics like PSNR measure signal fidelity but correlate poorly with human perception (a video can have good PSNR but look bad, or vice versa). VMAF (developed by Netflix) combines multiple metrics with a model trained on human quality ratings, correlating much better with perceived quality. This matters for per-title encoding because the goal is perceptual optimization (minimize bitrate for a target perceived quality, or maximize perceived quality for a bitrate) — and optimizing for a metric that doesn't match perception (PSNR) would give the wrong ladder. VMAF lets per-title encoding target perceptual quality directly (choose bitrates that achieve a target VMAF score — a target perceived quality), making the optimization align with what users actually experience. The combination — convex hull for the optimal frontier, VMAF for perceptual quality measurement — is what makes per-title encoding both principled and aligned with real user experience.

Advertisement

The architecture: every piece explained

Top row: analysis and optimization. Content analysis: each title is analyzed for complexity — spatial (detail, texture) and temporal (motion) complexity that determine how it compresses. Convex hull: the title is test-encoded at many resolution/bitrate points, quality (VMAF) measured for each, and the convex hull computed — the optimal quality-bitrate frontier (best quality at each bitrate, with the crossover points where the optimal resolution changes). Optimal ladder: the per-title bitrate ladder is chosen from the convex hull — bitrate points along the optimal frontier, each at its best resolution — the tailored ladder for this title. VMAF: the perceptual quality metric measuring quality, so the optimization targets perceived quality (achieve a target VMAF at minimum bitrate, or the best VMAF at each bitrate) — aligning with human perception.

Middle row: the adaptation and cost. Simple content: low-complexity titles get fewer and lower bitrates (quality saturates early, so high bitrates are unnecessary) — bandwidth savings with no quality loss. Complex content: high-complexity titles get more and higher bitrates (quality keeps improving) — quality maintained at appropriate bitrate. Per-scene / shot: the evolution beyond per-title — adapting within a title (different scenes/shots have different complexity, so the encoding adapts per segment) for even finer optimization (a title with mixed simple and complex scenes gets appropriate bitrate for each). Compute cost: the analysis requires many test encodes (to trace the convex hull per title, or per scene) — significant compute, the cost of the optimization; techniques (faster analysis, ML-based complexity prediction) reduce it.

Bottom rows: value and comparison. Savings: the payoff — bandwidth savings (simple content encoded lower, the dominant catalog fraction) plus quality gains (complex content served appropriately) — significant at scale (bandwidth is a major streaming cost; quality is user experience). vs fixed ladder: per-title beats the fixed ladder (which is a compromise, wasteful for simple and inadequate for complex) — Netflix's insight that content-aware encoding dramatically outperforms one-size-fits-all. The ops strip: analysis cost (managing the compute of test encodes — balancing optimization quality against analysis expense; ML-based complexity prediction to reduce test encodes), quality targets (defining the target quality — a VMAF target per device/tier — that the ladder must achieve), and ladder validation (verifying the chosen ladder achieves the quality targets across content and doesn't have gaps — validating the per-title optimization).

Per-title encoding — the right bitrate ladder for each videocontent-aware encoding, not one-size-fits-allContent analysiscomplexity per titleConvex hullquality-bitrate curveOptimal ladderresolution + bitrate pointsVMAFperceptual quality metricSimple contentfewer/lower bitratesComplex contentmore/higher bitratesPer-scene / shotfiner adaptationCompute costmany test encodesSavingsbandwidth + quality gainsvs fixed ladderNetflix's insightOps — analysis cost + quality targets + ladder validationmeasureadaptrefinebudgetsavecompareoperateoperateoperate
Per-title encoding: analyze each title's complexity, compute the quality-bitrate convex hull, and choose an optimal per-title bitrate ladder measured by VMAF.
Advertisement

End-to-end flow

Trace per-title encoding across different content. An animated children's show (simple content — flat colors, low motion): content analysis finds low complexity; the convex hull shows quality saturating at low bitrate (a 1080p encode at 2Mbps already achieves excellent VMAF; more bitrate adds nothing perceptible); the per-title ladder is chosen accordingly — fewer, lower bitrate points (topping out where quality saturates), saving substantial bandwidth versus a fixed ladder that would have encoded it at 5Mbps for 1080p (wasting 3Mbps for no quality gain). Millions of streams of this content at the lower bitrate = major bandwidth savings, no quality loss. Contrast an action movie (complex content — fast motion, high detail): the convex hull shows quality still improving at high bitrate (needs more bitrate for good quality); the per-title ladder includes higher bitrate points (serving the complexity appropriately), maintaining quality where a fixed ladder would have under-served it. Each title got its optimal ladder — the simple one saving bandwidth, the complex one maintaining quality.

The per-scene and convex-hull vignettes show the refinement. A per-scene case: a documentary with mixed content — talking-head interviews (simple) interspersed with wildlife action (complex). Per-title encoding would choose one ladder for the whole title (a compromise); per-scene encoding adapts within the title — the interview scenes encoded at lower bitrate (simple), the action scenes at higher (complex) — optimizing each segment, finer than per-title. The convex-hull crossover: at very low bitrate, the analysis shows a 480p encode achieves better VMAF than a 1080p encode (the 1080p is too starved at that bitrate to look good, while the 480p, though lower resolution, is cleaner) — so the low-bitrate ladder points use 480p, switching to higher resolutions at higher bitrates where they win. The convex hull captured this crossover, giving the optimal resolution per bitrate — the principled resolution selection per-title encoding provides.

The cost and operational vignettes complete it. The compute cost: tracing the convex hull requires many test encodes per title (encoding at many resolution/bitrate points to measure quality) — significant compute for a large catalog. The team reduces it with ML-based complexity prediction (predicting the optimal ladder from content features without exhaustive test encodes) and by encoding-once-optimize (reusing analysis) — balancing optimization quality against analysis cost. Quality targets: they define VMAF targets (a target perceived quality per tier — e.g., VMAF 93 for the top tier), and the per-title ladder is chosen to achieve these targets at minimum bitrate — the optimization goal made concrete. Ladder validation: they verify each title's ladder achieves the quality targets and has no gaps (bitrate points appropriately spaced for adaptive streaming), validating the optimization. The consolidated discipline the team documents: analyze content complexity per title (or per scene), compute the quality-bitrate convex hull (the optimal frontier), choose the per-title ladder from the hull targeting VMAF quality goals, adapt finer (per-scene) where valuable, manage analysis cost (ML prediction, reuse), and validate ladders against quality targets — because per-title encoding tailors the bitrate ladder to each title's actual quality-bitrate relationship, saving bandwidth on simple content and maintaining quality on complex, a significant optimization at streaming scale that a fixed ladder can't match.