VP9 Video
VP9 is a video coding format whose profiles distinguish supported bit depths and color sampling.
VP9 organizes video reconstruction around flexible picture regions and retained reference pictures. It is often found in web-origin media and is commonly carried by WebM.
Build the picture in regions
The coded picture is organized into 64 × 64 superblocks, with smaller blocks selected for local content. A broad predictable area can use a larger region while a changing edge can be split more finely.
The decoder constructs the selected intra or inter predictor, decodes the transformed correction, and applies the specified reconstruction and loop filtering. Prediction divisions and transform choices let different parts of a picture use different descriptions.
Tiles organize groups of coded blocks and provide processing boundaries useful for parallel decoding. The picture header and the required references supply state beyond an individual block's local bytes.
Choose from retained views
A VP9 decoder maintains eight reference slots. The frame header selects at most three of those reference pictures for its prediction choices.
Blocks then choose the applicable reference or permitted compound pair. This separates two decisions:
| Decision | Scope |
|---|---|
| Which decoded pictures are retained? | Reference-slot state across frames |
| Which references are available for this frame? | Frame-header selection |
| Which available reference prediction is used? | Block-level coding choice |
A frame can refresh selected slots with its reconstructed picture. A useful older view can remain in another slot while newer views are decoded.
For compound prediction, the decoder forms predictions from two references and combines them. If they describe the scene from useful neighboring views, their combination can leave a smaller residual than either alone. The coded residual still defines the necessary correction.
VP9 also permits reference pictures of different dimensions under its scaling and format constraints. Prediction can include the specified reference rescaling rather than assuming every stored view has the current picture's grid.
Reconstruction and display are separate instructions
A coded frame can be hidden: decoded and retained without being shown as the next visible picture. The format can also instruct the decoder to show an existing retained picture rather than send a complete new reconstruction.
These choices explain why coded-frame count and visible-picture count can differ. They are part of the representation, not evidence that a camera necessarily recorded an additional moment.
The container timeline schedules visible output, while the VP9 header and block syntax rebuild the reference state and picture content needed for it.
Identify the sample format precisely
| VP9 profile | Sample depth | Color sampling |
|---|---|---|
| 0 | 8-bit | 4:2:0 |
| 1 | 8-bit | 4:2:2 or 4:4:4 |
| 2 | 10-bit or 12-bit | 4:2:0 |
| 3 | 10-bit or 12-bit | 4:2:2 or 4:4:4 |
The depth and sampling determine the sample arrays those operations reconstruct. Color and transfer information then establish their display interpretation, including an appropriate HDR path for HDR content.
A decoder target is consequently described by the actual profile, sample format and resource limits, rather than just “VP9.” In an Emby conversion, those source arrays are reconstructed before processing creates the output representation.
The WebM Project labels its linked bitstream/decoding description a draft. Its published profile definition and implementation provide the accompanying reference context; the draft's status should remain explicit when using its detailed coding rules.