x264 is a free library for encoding H264/AVC video streams 32bit.
* 8x8 and 4x4 adaptive spatial transform
* Adaptive B-frame placement
* B-frames as references / arbitrary frame order
* CAVLC/CABAC entropy coding
* Custom quantization matrices
* Intra: all macroblock types (16x16, 8x8, 4x4, and PCM with all predictions)
* Inter P: all partitions (from 16x16 down to 4x4)
* Inter B: partitions from 16x16 down to 8x8 (including skip/direct)
* Interlacing (MBAFF)
* Multiple reference frames
* Ratecontrol: constant quantizer, constant quality, single or multipass ABR, optional VBV
* Scenecut detection
* Spatial and temporal direct mode in B-frames, adaptive mode selection
* Parallel encoding on multiple CPUs
* Predictive lossless mode
* Psy optimizations for detail retention (adaptive quantization, psy-RD, psy-trellis)
* Zones for arbitrarily adjusting bitrate distribution
The code is written from scratch by Laurent Aimar, Loren Merritt, Eric Petit (OS X), Min Chen (vfw/asm), Justin Clay (vfw), Mans Rullgard, Radek Czyz, Christian Heine (asm), Alex Izvorski, Alex Wright and Jason Garrett-Glaser.
It is released under the terms of the GNU GPL.