x264 is a free software library and application for encoding video streams into the H.264/MPEG-4 AVC compression format, and is released under the terms of the GNU GPL.
Features
- Provides best-in-class performance, compression, and features.
- Achieves dramatic performance, encoding 4 or more 1080p streams in real-time on a single consumer-level computer.
- Gives the best quality, having the most advanced psychovisual optimizations.
- Support features necessary for many different applications, such as television broadcast, Blu-ray low-latency video applications, and web video.
- x264 forms the core of many web video services, such as YouTube, Facebook, Vimeo, and Hulu. It is widely used by television broadcasters and ISPs.
Encoder features
- 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
What's New
- Prevent VBV from lowering quantizer too much
- This code seemed to act up unexpectedly sometimes, creating a situation where in 1-pass VBV mode, a frame's quantizer would drop all the way to qpmin and then shoot back upwards to qpmax, causing serious visual issues.
- This change may decrease bitrate in VBV mode, but that is preferable to the artifacting produced by this code.
- Improve subme7 at low QPs and add subme7 support in lossless mode.