X264 Technology

Choose from the menu items below on the left to learn more.

x264 History

The x264 encoder is the most widely deployed Advanced Video Codec (AVC) encoder in the market. 

The x264 video encoder is one of the most successful open source development projects in history. 

H.264 Advanced Video Coding (AVC) is a video compression standard created by the ITU-T Video Coding Experts Group (VCEG) and the ISO/IEC JTC1 Moving Picture Experts Group (MPEG).  The first version of the H.264 AVC specification was released in May 2003.

The x264 project was started in 2004 with the goal of developing an open source video encoder that would meet the H.264 AVC specification.  The main developers on the project over the course of its life have included Laurent Aimar, Loren Merritt, Fiona Glaser, Anton Mitrofanov and Henrik Grammer, among others.  The x264 development community has, and continues to, invested thousands of man-hours into the development and testing of the x264 AVC video encoder software to create the best H.264 video encoding codec in the world. 

The x264 project is sponsored and supported by a number of incredible people and organizations, including both FFmpeg and VideoLAN.  Many of the same developers worked on both the FFmpeg and x264 projects, allowing for the seamless integration of the x264 encoder into FFmpeg. 

VideoLAN is a non-profit entity that hosts a number of open source projects, including the VLC media player and the x265 High Efficiency Video Coding (HEVC) project.  VideoLAN continues to support and host the x264 community and its source code repository.  While VideoLAN and ffMPEG are both sponsors of the x264 open source project, they do not have any proprietary ownership interest in the x264 software and cannot grant commercial licenses of the x264 video encoder software.  x264, LLC, is the only entity that grants commercial licenses.

The members of the x264 community are passionate advocates of the development and use of open source technologies.  The x264 video encoder was developed under Version 2.0 of the GNU General Public License (GPL).  The GPL does not require the payment of a royalty, but it does require that all the source code for any distributed program that uses or links to GPL code to be released and licensed to the public under the GPL (see the Licensing page for a detailed discussion of the GPL requirements).  This allows for the continuous improvement and use of the software by all users.

Upon its release, the x264 video encoder quickly became the top rated H.264 AVC video encoder, rated the highest in video quality and performance.  For the past 15 years, the x264 encoder has continued to be the top rated and highest performing AVC video encoder as rated by MSU in its annual MPEG-4 AVC/H.264 Video Codec Comparison.  The x264 encoder’s performance is so good that it is on par with many of the next generation H.265/HEVC video encoders, without the high processing requirements of the H.265/HEVC encoders.

Many companies want to use the x264 video encoder, but the requirements of the GPL, Version 2 license would require them to publicly release and license all their proprietary source code in the product.  To address this problem, the community decided to create a holding company that can commercially license the x264 video encoder software separately from the GPL.  In 2010, a Delaware Limited Liability Company, named x264, LLC, was formed (“x264”) and all the x264 software developers licensed their source code to x264, LLC.  Any improvements to the x264 video encoder software developed by the community or the companies are contributed back to the community.

As a result, the x264 video encoding software is available under two licenses: 1) the General Public License (GPL); or 2) a commercial license from x264, LLC.  

The use of the x264 video encoder software skyrocketed and it is now the most widely deployed H.264/AVC encoder in the world, with over 2,000 commercially licensed products used by billions of people in billions of devices.  It is estimated that over 80% of all videos available on the Internet are encoded using the x264 video encoder software.

Highest efficiency to minimize mobile battery usage

Consistent output video format avoids decoding problems

Adaptable to different resolutions and settings to dynamically adapt to bandwidth changes.

Simple development and integration

Proven solution

Fully integrated with ffMPEG

x264 exceeds the ITU-T H.264 Advanced Video Codec (MPEG-4 Part 10 AVC) specifications.

8x8 and 4x4 adaptive spatial transform

Multiple reference frames

Adaptive B-frame placement

Ratecontrol: constant quantizer, constant quality, single or multipass ABR, optional VBV

B-frames as references / arbitrary frame order

Scene cut detection

Macroblock-tree rate control

Spatial and temporal direct mode in B-frames, adaptive mode selection

CAVLC/CABAC entropy coding

Periodic Intra Refresh instead of keyframes

Custom quantization matrices

Parallel encoding on multiple CPUs

Intra: all macroblock types (16x16, 8x8, 4x4, and PCM with all predictions)

x264 has <a href="https://en.wikipedia.org/wiki/SIMD" target="_blank">SIMD</a> assembly code acceleration on <a href="https://en.wikipedia.org/wiki/X86" target="_blank">x86</a>, <a href="https://en.wikipedia.org/wiki/PowerPC" target="_blank">PowerPC</a> (using <a href="https://en.wikipedia.org/wiki/AltiVec" target="_blank">AltiVec</a>), and <a href="https://en.wikipedia.org/wiki/ARM_architecture" target="_blank">ARMv7</a> (using <a href="https://en.wikipedia.org/wiki/ARM_architecture#Advanced_SIMD_(NEON)" target="_blank">NEON</a>) platforms

Inter P: all partitions (from 16x16 down to 4x4)

Predictive lossless mode

Inter B: partitions from 16x16 down to 8x8 (including skip/direct)

Psy optimizations for detail retention (adaptive quantization, psy-RD, psy-trellis)

Interlacing (MBAFF)

Zones for arbitrarily adjusting bitrate distribution

x264 Performance

X264 has remained the top performing H.264 AVC video encoder codec for over 15 years. 

 

“Overall, the leader in this comparison is x264…”

The following data is from the MSU 2012 Video Codec Report, the last report evaluating H.264 codecs. The MSU Codec Reports are the gold standard for comprehensive codec testing and evaluation.

Video Conferencing

“The leader by quality is x264”

Bitrate/Quality
Y-SSIM
(Figure 2)

view full report | view larger chart

Video Conferencing

“On average, the leader is the X264 encoder”

Average bitrate ratio for a fixed quality
Y-SSIM metric
(Figure 21)

view full report | view larger chart

Movies

"The leader is X264."

Bitrate/Quality (Normal Preset)
Y-SSIM metric
(Figure 26)

view full report | view larger chart

Movies

"The leader is the x264 codec."

Average Bitrate Ration for same Quality (High Speed Preset)
Y-SSIM metric
(Figure 64)

view full report | view larger chart

HDTV

"The leader is the x264 codec."

Bitrate/Quality (High Speed Preset)
Y-SSIM metric
(Figure 70)

view full report | view larger chart

HDTV

"X264 codec continues to be the best."

Average Bitrate Ratio for same Quality (High Speed Preset)
Y-SSIM metric
(Figure 119)

view full report | view larger chart

Conclusions

Video Conferencing

“The x264 video encoder demonstrates better quality on average.”

Movies

“The leading encoder in this usage area is x264.”

HDTV

“The leaders in the HDTV area are x264…”

x264 Awards

The X264 software has been the leading H.264 AVC video encodiing software for over 15 years.

2006: Third Annual MSU MPEG-4 AVC/H.264 Video Codec Comparison

“Basing on our testing we conclude that, among all tested codecs, the best codecs for encoding HDTV content are codec from MainConcept and x264 codec by criterion of quality/speed ratio.”

2007: Fourth Annual MSU MPEG-4 AVC/H.264 Video Codec Comparison

“The difference between the MainConcept and x264 encoders is not overly significant, so these two encoders are both the clear leaders in this comparison. “

2009: Fifth MSU MPEG-4 AVC/H.264 Video Codec Comparison

“At average, there are two leaders: x264 and MainConcept encoders.”

2010: Sixth MSU MPEG-4 AVC/H.264 Video Codecs Comparison

“The x264 encoder is better on average than DivX H.264 and MainConcept.”

2011: Seventh MSU MPEG-4 AVC/H.264 Video Codecs Comparison

“Overall, the leader in this comparison for software encoders is x264, followed by DivX H.264, Elecard and MainConcept.”

2012: Eighth MSU MPEG-4 AVC/H.264 Video Codecs Comparison

“Overall, the leader in this comparison for software encoders is x264, followed by MainConcept, DivX H.264 and Elecard.”