Video codecs overview
current
A video codec is a compression format: it defines the bitstream and how a decoder turns it back into pictures. The encoder you run (x264, SVT-AV1, …), the container you mux into, and the player that decodes it are separate choices, and each one can limit what actually works.
Delivery codecs
Section titled “Delivery codecs”| Codec | Standardised by | Use it today for | Main encoders |
|---|---|---|---|
| AVC / H.264 | ITU-T/ISO, 2003 | Anything that has to play everywhere; low-cost live and hardware workflows | x264, hardware encoders |
| HEVC / H.265 | ITU-T/ISO, 2013 | UHD/HDR to TVs, phones and Apple devices; Blu-ray/broadcast ecosystems | x265, hardware encoders |
| VP8 | On2/Google, 2010 | Legacy WebM and WebRTC compatibility only | libvpx |
| VP9 | Google, 2013 | Royalty-free web video where AV1 decode is missing or too slow | libvpx |
| AV1 | AOMedia, 2018 | Royalty-free web and streaming delivery, high-efficiency personal and archive encodes | SVT-AV1, aomenc, rav1e, hardware encoders |
| VVC / H.266 | ITU-T/ISO, 2020 | Broadcast systems that mandate it, and evaluation; little consumer playback support | VVenC, uvg266 |
| AV2 | AOMedia, 2026 | Research and evaluation; no players or hardware yet | AVM reference software |
| AVS3 | China AVS working group | Chinese broadcast/UHD ecosystems | uavs3e |
For new web delivery the usual ladder is AV1 with an H.264 fallback, with VP9 or HEVC in between where the audience’s devices need it. Compression efficiency rises roughly in the order AVC → VP9/HEVC → AV1 → VVC → AV2, but the encoder and its speed setting matter as much as the format.
Production, archive and legacy codecs
Section titled “Production, archive and legacy codecs”| Codec | Use it for |
|---|---|
| FFV1 | Lossless preservation masters (IETF RFC 9043), usually in Matroska |
| ProRes | Editing and interchange intermediates; FFmpeg has its own ProRes encoders |
| Ut Video | Fast lossless capture and editing intermediates |
| VC-1 | Decoding old Windows Media, HD DVD and Blu-ray material |
| Theora | Existing Ogg workflows only |
| DSV and DSV2 | Hobby wavelet codecs; experimentation only |
| ECM | JVET’s beyond-VVC exploration model; research only |
Picking a codec
Section titled “Picking a codec”Start from the decoders you must reach, not from compression efficiency:
- Playback targets. Browsers, TVs, phones, editing software. Check video codec support and fall back to H.264 for anything you can’t verify.
- Profile, bit depth and chroma. “Supports HEVC” or “supports AV1” usually means 8/10-bit 4:2:0. 4:2:2, 4:4:4 and 12-bit streams are often software-only.
- Decode cost. Software AV1 or HEVC decode can drain a phone battery or drop frames on old PCs; hardware decode support matters for mobile audiences.
- Container and HDR. The codec has to be mapped into the container you need, and HDR metadata has to survive encoding and muxing. See containers and HDR.
- Licensing. AVC, HEVC and VVC are covered by patent pools; AV1, VP8 and VP9 were released royalty-free, although third-party pools also claim patents against AV1 and VP9.
To see what an existing file actually contains:
ffprobe -v error -select_streams v:0 -show_entries stream=codec_name,profile,level,pix_fmt,color_transfer -of default=nw=1 input.mkvFor a guided decision, see choosing a codec.