Libx264
   HOME

TheInfoList



OR:

x264 is a free and open-source
software library In computer science, a library is a collection of non-volatile resources used by computer programs, often for software development. These may include configuration data, documentation, help data, message templates, pre-written code and sub ...
and a
command-line A command-line interpreter or command-line processor uses a command-line interface (CLI) to receive commands from a user in the form of lines of text. This provides a means of setting parameters for the environment, invoking executables and pro ...
utility developed by
VideoLAN VideoLAN is a non-profit organization which develops software for playing video and other media formats. It originally developed two programs for media streaming, VideoLAN Client (VLC) and VideoLAN Server (VLS), but most of the features of VLS ...
for encoding video streams into the H.264/MPEG-4 AVC
video coding format A video coding format (or sometimes video compression format) is a content representation format for storage or transmission of digital video content (such as in a data file or bitstream). It typically uses a standardized video compression algori ...
. It is released under the terms of the
GNU General Public License The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the four freedoms to run, study, share, and modify the software. The license was the first copyleft for general ...
.


History

x264 was originally developed by Laurent Aimar, who stopped development in 2004 after being hired by
ATEME Ateme S.A. is a multinational company that specializes in video delivery, namely software for video compression based on High_Efficiency_Video_Coding, H.265 / High_Efficiency_Video_Coding, HEVC standards; MPEG4; MPEG2 Data_compression#Video, encod ...
. Loren Merritt then took over development. Later, in 2008, Fiona Glaser joined the project. They both stopped contributing in 2014. Today, x264 is primarily developed by Anton Mitrofanov and Henrik Gramner.


Capabilities

x264 provides a command line interface as well as an
API An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how ...
. The former is used by many
graphical user interface The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inst ...
s, such as Staxrip and MeGUI. The latter is used by many other interfaces, such as HandBrake and
FFmpeg FFmpeg is a free and open-source software project consisting of a suite of libraries and programs for handling video, audio, and other multimedia files and streams. At its core is the command-line ffmpeg tool itself, designed for processing of vid ...
. x264 implements a large number of features compared to other H.264 encoders. x264 contains some psychovisual enhancements which aim to increase the
subjective video quality Subjective video quality is video quality as experienced by humans. It is concerned with how video is perceived by a viewer (also called "observer" or "subject") and designates their opinion on a particular video sequence. It is related to the fiel ...
of the encoded video. * Adaptive quantisation in two modes using VAQ. The second mode, a later addition, adapts the strength per frame in an attempt to improve the quality. * Psychovisual
rate–distortion optimization Rate-distortion optimization (RDO) is a method of improving video quality in video compression. The name refers to the optimization of the amount of ''distortion'' (loss of video quality) against the amount of data required to encode the video, th ...
which attempts to maintain a similar complexity. The complexity is measured using a combination of sum-of-squares optimization (SSD) and sum of absolute transformed differences (SATD). * Macroblock-tree rate control, which controls the quality by tracking how often parts of the frame are used for predicting future frames. x264 has won awards in the following codec comparisons: * Third Annual MSU MPEG-4 AVC/H.264 Video Codec Comparison, 2006 * Fourth Annual MSU MPEG-4 AVC/H.264 Video Codec Comparison, 2007 * Fifth Annual MSU MPEG-4 AVC/H.264 Video Codec Comparison, 2009 * Sixth Annual MSU MPEG-4 AVC/H.264 Video Codec Comparison, 2010 * Seventh Annual MSU MPEG-4 AVC/H.264 Video Codec Comparison, 2011 * Eighth Annual MSU MPEG-4 AVC/H.264 Video Codec Comparison, 2012 x264 has
SIMD Single instruction, multiple data (SIMD) is a type of parallel processing in Flynn's taxonomy. SIMD can be internal (part of the hardware design) and it can be directly accessible through an instruction set architecture (ISA), but it shoul ...
assembly code acceleration on
x86 x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel based on the Intel 8086 microprocessor and its 8088 variant. The 8086 was intr ...
, PowerPC (using AltiVec), and
ARMv7 ARM (stylised in lowercase as arm, formerly an acronym for Advanced RISC Machines and originally Acorn RISC Machine) is a family of reduced instruction set computer (RISC) instruction set architectures for computer processors, configured ...
(using NEON) platforms. x264 is able to use Periodic Intra Refresh instead of keyframes, which enables each frame to be capped to the same size enabling each slice to be immediately transmitted in a single UDP or TCP packet and on arrival immediately decoded. Periodic Intra Refresh can replace keyframes by using a column of intra blocks that move across the video from one side to the other, thereby "refreshing" the image. In effect, instead of a big keyframe, the keyframe is "spread" over many frames. The video is still seekable: a special header, called the SEI Recovery Point, tells the decoder to "start here, decode X frames, and then start displaying the video." This hides the refresh effect from the user while the frame loads. Motion vectors are restricted so that blocks on one side of the refresh column don't reference blocks on the other side, effectively creating a demarcation line in each frame. In April 2010, the x264 project announced full Blu-ray compliant video encoding capability making x264 the first free Blu-ray compliant software H.264 encoder. x264 has always had the ability to create video streams that are playable on most Blu-ray devices. However, it was up to the user to choose appropriate conversion settings. The default x264 preset chooses adequate compatibility for Blu-ray players but it is now possible to choose more complex conversion settings while simply maintaining compatibility by explicitly enabling Blu-ray compatibility mode. Blu-ray compatibility can be useful when striving for cross device compatibility, especially in the realm of high definition hardware media players. x264 has been used to author commercial Blu-ray Disc titles released by
Warner Bros. Warner Bros. Entertainment Inc. (commonly known as Warner Bros. or abbreviated as WB) is an American film and entertainment studio headquartered at the Warner Bros. Studios complex in Burbank, California, and a subsidiary of Warner Bros. D ...


Tandberg controversy

In November 2010, Fiona Glaser, an x264 developer, published information in which she claims that one of Tandberg Telecom's (a
Cisco Systems Cisco Systems, Inc., commonly known as Cisco, is an American-based multinational digital communications technology conglomerate corporation headquartered in San Jose, California. Cisco develops, manufactures, and sells networking hardware, ...
subsidiary)
patent application A patent application is a request pending at a patent office for the grant of a patent for an invention described in the patent specification and a set of one or more claims stated in a formal document, including necessary official forms and re ...
s from December 2008 contains a step-by-step description of an algorithm she committed to the x264 codebase around two months earlier. This was relayed by media, which remarked that the company who filed the patent was following the x264 project IRC development channel and was known to the project developers, leading to Tandberg claiming that they discovered the algorithm independently.


x264 frontends

*
Avidemux Avidemux is a free and open-source software application for non-linear video editing and transcoding multimedia files. The developers intend it as "a simple tool for simple video processing tasks" and to allow users "to do elementary things in ...
*
FFmpeg FFmpeg is a free and open-source software project consisting of a suite of libraries and programs for handling video, audio, and other multimedia files and streams. At its core is the command-line ffmpeg tool itself, designed for processing of vid ...
* HandBrake *
OpenShot OpenShot Video Editor is a free and open-source video editor for Windows, macOS, Linux, and ChromeOS. The project started in August 2008 by Jonathan Thomas, with the objective of providing a stable, free, and friendly to use video editor. The pr ...
*
Gstreamer GStreamer is a pipeline-based multimedia framework that links together a wide variety of media processing systems to complete complex workflows. For instance, GStreamer can be used to build a system that reads files in one format, processes the ...
* MediaCoder * MeGUI *
MEncoder MEncoder is a free command line transcoding tool released under the GNU General Public License. It is a sibling of MPlayer, and can convert all the formats that MPlayer understands into a variety of compressed and uncompressed formats using differ ...
* RipBot264 * SUPER * StaxRip *
Telestream Episode Telestream, Inc. is an American privately held computer software company. History The company, founded in 1998, is headquartered in Nevada City, California with personnel in France, Germany, Sweden, Poland, Canada and the UK. Telestream pr ...
* TMPGEnc Video Mastering Works 5 *
XMedia Recode XMedia Recode is a freeware video and audio transcoding program for Microsoft Windows developed by Sebastian Dörfler. It can import and export many types of files such as WMV, MP4, MP3, 3GP, Matroska and more. XMedia Recode can convert unprotect ...
* Harmonic Rhozet Workflow System


See also

* MPEG-4 — A standard of various MPEG formats including video, audio, subtitle, and interaction. *
Doom9 Doom9 is a website featuring information on digital audio and video manipulation (mostly video) and digital copyrights. It is also the forum username of the author of the page, an Austrian who was a college student at the time of the creation o ...
 — A forum for video creation help and technical discussions. *
x265 x265 is a software codec for creating digital video streams in the High Efficiency Video Coding (HEVC/H.265) video compression format developed by the Joint Collaborative Team on Video Coding (JCT-VC). It is available as a command-line app or a ...
 — Open source HEVC/H.265 encoder that has licensed the rights to use the x264 source code.


References


External links

* {{Compression software C (programming language) libraries Free software primarily written in assembly language Free video codecs Free video software pt:H.264#x264