Fundamentals 20 min read

Overview of H.266/VVC Video Coding Standard and Its Key Technologies

H.266/VVC, the next‑generation video coding standard finalized in 2020, delivers roughly 50 % bitrate savings over H.265/HEVC with modestly higher decoding complexity, introduces advanced intra‑ and inter‑prediction, transform, quantization, entropy and loop‑filtering tools, and faces patent‑pool and adoption challenges before widespread smartphone integration around 2026.

OPPO Kernel Craftsman
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Overview of H.266/VVC Video Coding Standard and Its Key Technologies

Since the 1990s, MPEG and ITU‑T released the first‑generation video coding standards MPEG‑1 and H.261. Over the past 30 years, the two standardization bodies have issued several generations of standards, and the current mainstream codecs are H.264/AVC and H.265/HEVC.

Although H.265/HEVC was released several years ago, it has not completely replaced H.264/AVC because of a complex patent landscape. More than 40 companies hold patents on H.265/HEVC, mainly grouped into three patent pools—MPEG‑LA, HEVC‑ADVANCE, and VELOS MEDIA. Overlapping royalties and duplicate fees make the licensing situation difficult, reducing the willingness of device manufacturers and content providers to adopt H.265/HEVC.

Figure 1: Patent distribution of H.265/HEVC.

Because of these patent issues, some manufacturers are looking forward to the next‑generation coding standard H.266/VVC.

H.266/VVC (Versatile Video Coding) was proposed by the Joint Video Exploration Team (JVET) in October 2015 and finalized on July 6, 2020. It can achieve roughly a 50 % bitrate reduction compared with H.265/HEVC for the same visual quality, while the decoding complexity is limited to at most twice that of H.265/HEVC. This bitrate saving is very attractive to content providers; domestic companies such as Bytedance and Tencent are actively promoting it, and a considerable proportion of Douyin videos already use the H.266/VVC format. The patent distribution of H.266/VVC is shown in Figure 2.

Figure 2: Patent distribution of H.266/VVC.

Foreign companies tend to favor the royalty‑free AV1 codec led by Google (and the upcoming AV2), because the AOM consortium eliminates licensing costs.

OEMs and platform vendors such as Qualcomm and MediaTek focus on cost. Integrating H.266/VVC into flagship smartphones is expected around 2026, after a period of trial integration.

From a technical perspective, H.266/VVC retains a hybrid coding framework similar to H.265/HEVC, consisting of intra‑prediction, inter‑prediction, transform, quantization, and loop‑filtering (see Figure 3).

Figure 3: H.266/VVC coding framework.

1. Coding Structure A VVC bitstream contains one or more Coded Video Sequences (CVS), analogous to GOPs in H.265. Each CVS starts with an IRAP (Intra Random Access Point) or GDR (Gradual Decoding Refresh) picture, which serves as a random‑access entry point. A CVS consists of Access Units (AU), each AU contains one or more Picture Units (PU). PUs are grouped by layer into Coded Layer Video Sequences (CLVS). The simplest case contains a single layer.

Figure 4: CVS structure.

Each PU can be further divided into Slices, each Slice is composed of Coding Tree Units (CTU), which are further split into Coding Units (CU). Slices are classified as I‑Slice, P‑Slice, or B‑Slice.

Tiles are also used to enhance parallel processing; a Tile consists of an integer number of CTUs and can be decoded independently. The following conditions must hold: (1) all CTUs of a Slice belong to the same Tile, or (2) all CTUs of a Tile belong to the same Slice.

2. Video Parameter Sets VVC defines several parameter sets that are essential for encoding and decoding:

VPS (Video Parameter Set) – carries hierarchical information, PU dependencies, and scalability data.

SPS (Sequence Parameter Set) – contains parameters shared by the entire CVS.

PPS (Picture Parameter Set) – holds picture‑level coding tools and flags.

PH (Picture Header) – similar to PPS but includes frequently changing parameters such as IRAP/GDR flags.

APS (Adaptive Parameter Set) – stores adaptive loop filter parameters, LMCS, quantization matrices, etc.

3. Profile, Tier, and Level VVC adopts the same concept of Profile‑Tier‑Level as HEVC, defining the range of supported tools and performance targets (see Figure 5).

4. Intra Prediction VVC uses CU‑level intra prediction with several new tools:

Extended angular modes – 65 directional modes (up from 33 in HEVC) plus DC and Planar, totaling 67.

Wide‑angle modes for rectangular CUs – handle reference‑sample overflow.

Multiple reference lines – up to three reference rows can be used.

Matrix‑based Intra Prediction (MIP) – neural‑network‑inspired weighted averaging.

Position‑dependent prediction combination (PDPC) – combines opposite‑direction references.

Intra Sub‑Partition (ISP) – further splits a CU into sub‑blocks for separate prediction.

5. Inter Prediction VVC introduces several enhancements to block‑based motion compensation:

HMVP (History‑based Motion Vector Prediction) – predicts MV from previously encoded frames.

MMVD (Merge mode with Motion Vector Difference) – adds MV‑difference coding to Merge.

GPM (Geometric Partitioning Motion) – allows non‑rectangular partitioning of CUs.

SMVD (Symmetric MV Difference) – encodes only one direction for bidirectional prediction.

AMVR (Adaptive MV Resolution) – adjusts MV precision per CU.

SbTMVP (Sub‑block TMVP) – derives MV for each sub‑block.

AMCP (Affine Motion Compensation Prediction) – uses affine transforms for scaling/rotation.

BDOF (Bi‑directional Optical Flow) and PROF (Prediction Refinement) – refine motion using optical flow.

6. Transform Coding VVC keeps DCT‑II but adds new transforms and selection mechanisms:

MTS (Multiple Transform Selection) – chooses among DCT‑II, DST‑VII, DCT‑VIII for each block.

High‑frequency zeroing – discards half of the coefficients for 64×64 blocks to reduce complexity.

SBT (Sub‑Block Transform) – applies transform to one of two sub‑blocks after vertical or horizontal split (8 modes).

LFNST (Low‑Frequency Non‑Separable Transform) – further decorrelates low‑frequency coefficients.

JCCR (Joint Coding of Chroma Residuals) – jointly encodes Cb and Cr residuals.

7. Quantization VVC supports scalar quantization and dependent quantization, leaving the choice to the encoder for optimal performance.

8. Entropy Coding The standard uses an enhanced CABAC engine with:

Multi‑hypothesis probability update model for more accurate probability estimation.

Independent context model updates with different adaptation rates.

Separate residual coding structures for transformed coefficients and skipped blocks.

Bypass coding using Golomb‑Rice binarization.

9. Loop Filtering To improve visual quality, VVC employs:

ALF (Adaptive Loop Filter) – block‑level adaptive filtering for luma and chroma.

DBF (De‑Blocking Filter) – enhanced strength and 4×4 luma de‑blocking grid.

SAO (Sample Adaptive Offset) – applies segmented linear offsets to luma and chroma.

In summary, H.266/VVC is a next‑generation, highly efficient video coding standard with a wide range of application scenarios, from 360° immersive video to screen‑sharing and gaming content. Its adoption will depend on ecosystem support and hardware implementation in the coming years.

multimediacompressionVideo CodingVVCEncoding StandardsH.266
OPPO Kernel Craftsman
Written by

OPPO Kernel Craftsman

Sharing Linux kernel-related cutting-edge technology, technical articles, technical news, and curated tutorials

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.