MPEG-4 Part 10, Advanced Video Coding (
MPEG-4 AVC) is a
block-oriented motion-compensation-based video compression standard.
As of 2014[update] it is one of the most commonly used formats for the
recording, compression, and distribution of video content. It
supports resolutions up to 8192×4320, including 8K UHD.
The intent of the H.264/AVC project was to create a standard capable
of providing good video quality at substantially lower bit rates than
previous standards (i.e., half or less the bit rate of MPEG-2, H.263,
MPEG-4 Part 2), without increasing the complexity of design so much
that it would be impractical or excessively expensive to implement. An
additional goal was to provide enough flexibility to allow the
standard to be applied to a wide variety of applications on a wide
variety of networks and systems, including low and high bit rates, low
and high resolution video, broadcast,
1 Naming 2 History
3.1 Derived formats
4.1 Features 4.2 Profiles
4.2.1 Feature support in particular profiles
4.3 Levels 4.4 Decoded picture buffering
5.1 Software encoders 5.2 Hardware
6 Licensing 7 See also 8 References 9 Further reading 10 External links
The H.264 name follows the
ITU-T naming convention, where the standard
is a member of the H.26x line of
VCEG video coding standards; the
MPEG-4 AVC name relates to the naming convention in ISO/IEC MPEG,
where the standard is part 10 of ISO/IEC 14496, which is the suite of
standards known as MPEG-4. The standard was developed jointly in a
VCEG and MPEG, after earlier development work in the
ITU-T as a
VCEG project called H.26L. It is thus common to refer to
the standard with names such as H.264/AVC, AVC/H.264, H.264/MPEG-4
AVC, or MPEG-4/H.264 AVC, to emphasize the common heritage.
Occasionally, it is also referred to as "the JVT codec", in reference
to the Joint Video Team (JVT) organization that developed it. (Such
partnership and multiple naming is not uncommon. For example, the
video compression standard known as
Version 1 (Edition 1): (May 30, 2003) First approved version of
H.264/AVC containing Baseline, Main, and Extended profiles.
Version 2 (Edition 1.1): (May 7, 2004) Corrigendum containing various
Version 3 (Edition 2): (March 1, 2005) Major addition to H.264/AVC
containing the first amendment providing Fidelity Range Extensions
(FRExt) containing High, High 10, High 4:2:2, and High 4:4:4
Version 4 (Edition 2.1): (September 13, 2005) Corrigendum containing
various minor corrections and adding three aspect ratio indicators.
Version 5 (Edition 2.2): (June 13, 2006) Amendment consisting of
removal of prior High 4:4:4 profile (processed as a corrigendum in
Version 6 (Edition 2.2): (June 13, 2006) Amendment consisting of minor
extensions like extended-gamut color space support (bundled with
above-mentioned aspect ratio indicators in ISO/IEC).
Version 7 (Edition 2.3): (April 6, 2007) Amendment containing the
addition of High 4:4:4 Predictive and four Intra-only profiles (High
10 Intra, High 4:2:2 Intra, High 4:4:4 Intra, and
Further information: List of video services using H.264/
The H.264 video format has a very broad application range that covers
all forms of digital compressed video from low bit-rate Internet
streaming applications to
HDTV broadcast and Digital Cinema
applications with nearly lossless coding. With the use of H.264, bit
rate savings of 50% or more compared to
This article is in a list format that may be better presented using prose. You can help by converting this article to prose, if appropriate. Editing help is available. (April 2016)
Block diagram of H.264
H.264/AVC/ MPEG-4 Part 10 contains a number of new features that allow it to compress video much more efficiently than older standards and to provide more flexibility for application to a wide variety of network environments. In particular, some such key features include:
Multi-picture inter-picture prediction including the following features:
Using previously encoded pictures as references in a much more flexible way than in past standards, allowing up to 16 reference frames (or 32 reference fields, in the case of interlaced encoding) to be used in some cases. In profiles that support non-IDR frames, most levels specify that sufficient buffering should be available to allow for at least 4 or 5 reference frames at maximum resolution. This is in contrast to prior standards, where the limit was typically one; or, in the case of conventional "B pictures" (B-frames), two. This particular feature usually allows modest improvements in bit rate and quality in most scenes. But in certain types of scenes, such as those with repetitive motion or back-and-forth scene cuts or uncovered background areas, it allows a significant reduction in bit rate while maintaining clarity. Variable block-size motion compensation (VBSMC) with block sizes as large as 16×16 and as small as 4×4, enabling precise segmentation of moving regions. The supported luma prediction block sizes include 16×16, 16×8, 8×16, 8×8, 8×4, 4×8, and 4×4, many of which can be used together in a single macroblock. Chroma prediction block sizes are correspondingly smaller according to the chroma subsampling in use. The ability to use multiple motion vectors per macroblock (one or two per partition) with a maximum of 32 in the case of a B macroblock constructed of 16 4×4 partitions. The motion vectors for each 8×8 or larger partition region can point to different reference pictures. The ability to use any macroblock type in B-frames, including I-macroblocks, resulting in much more efficient encoding when using B-frames. This feature was notably left out from MPEG-4 ASP. Six-tap filtering for derivation of half-pel luma sample predictions, for sharper subpixel motion-compensation. Quarter-pixel motion is derived by linear interpolation of the halfpel values, to save processing power. Quarter-pixel precision for motion compensation, enabling precise description of the displacements of moving areas. For chroma the resolution is typically halved both vertically and horizontally (see 4:2:0) therefore the motion compensation of chroma uses one-eighth chroma pixel grid units. Weighted prediction, allowing an encoder to specify the use of a scaling and offset when performing motion compensation, and providing a significant benefit in performance in special cases—such as fade-to-black, fade-in, and cross-fade transitions. This includes implicit weighted prediction for B-frames, and explicit weighted prediction for P-frames.
Spatial prediction from the edges of neighboring blocks for "intra"
coding, rather than the "DC"-only prediction found in
A lossless "PCM macroblock" representation mode in which video data samples are represented directly, allowing perfect representation of specific regions and allowing a strict limit to be placed on the quantity of coded data for each macroblock. An enhanced lossless macroblock representation mode allowing perfect representation of specific regions while ordinarily using substantially fewer bits than the PCM mode.
Flexible interlaced-scan video coding features, including:
Macroblock-adaptive frame-field (MBAFF) coding, using a macroblock pair structure for pictures coded as frames, allowing 16×16 macroblocks in field mode (compared with MPEG-2, where field mode processing in a picture that is coded as a frame results in the processing of 16×8 half-macroblocks). Picture-adaptive frame-field coding (PAFF or PicAFF) allowing a freely selected mixture of pictures coded either as complete frames where both fields are combined together for encoding or as individual single fields.
New transform design features, including:
An exact-match integer 4×4 spatial block transform, allowing precise
placement of residual signals with little of the "ringing" often found
with prior codec designs. This design is conceptually similar to that
of the well-known discrete cosine transform (DCT), introduced in 1974
by N. Ahmed, T.Natarajan and K.R.Rao, which is Citation 1 in Discrete
cosine transform. However, it is simplified and made to provide
exactly specified decoding.
An exact-match integer 8×8 spatial block transform, allowing highly
correlated regions to be compressed more efficiently than with the
4×4 transform. This design is conceptually similar to that of the
well-known DCT, but simplified and made to provide exactly specified
Adaptive encoder selection between the 4×4 and 8×8 transform block
sizes for the integer transform operation.
A quantization design including:
Logarithmic step size control for easier bit rate management by encoders and simplified inverse-quantization scaling Frequency-customized quantization scaling matrices selected by the encoder for perceptual-based quantization optimization
An in-loop deblocking filter that helps prevent the blocking artifacts common to other DCT-based image compression techniques, resulting in better visual appearance and compression efficiency An entropy coding design including:
Context-adaptive binary arithmetic coding (CABAC), an algorithm to
losslessly compress syntax elements in the video stream knowing the
probabilities of syntax elements in a given context.
data more efficiently than
Loss resilience features including:
A Network Abstraction Layer (NAL) definition allowing the same video syntax to be used in many network environments. One very fundamental design concept of H.264 is to generate self-contained packets, to remove the header duplication as in MPEG-4's Header Extension Code (HEC). This was achieved by decoupling information relevant to more than one slice from the media stream. The combination of the higher-level parameters is called a parameter set. The H.264 specification includes two types of parameter sets: Sequence Parameter Set (SPS) and Picture Parameter Set (PPS). An active sequence parameter set remains unchanged throughout a coded video sequence, and an active picture parameter set remains unchanged within a coded picture. The sequence and picture parameter set structures contain information such as picture size, optional coding modes employed, and macroblock to slice group map. Flexible macroblock ordering (FMO), also known as slice groups, and arbitrary slice ordering (ASO), which are techniques for restructuring the ordering of the representation of the fundamental regions (macroblocks) in pictures. Typically considered an error/loss robustness feature, FMO and ASO can also be used for other purposes. Data partitioning (DP), a feature providing the ability to separate more important and less important syntax elements into different packets of data, enabling the application of unequal error protection (UEP) and other types of improvement of error/loss robustness. Redundant slices (RS), an error/loss robustness feature that lets an encoder send an extra representation of a picture region (typically at lower fidelity) that can be used if the primary representation is corrupted or lost. Frame numbering, a feature that allows the creation of "sub-sequences", enabling temporal scalability by optional inclusion of extra pictures between other pictures, and the detection and concealment of losses of entire pictures, which can occur due to network packet losses or channel errors.
Switching slices, called SP and SI slices, allowing an encoder to direct a decoder to jump into an ongoing video stream for such purposes as video streaming bit rate switching and "trick mode" operation. When a decoder jumps into the middle of a video stream using the SP/SI feature, it can get an exact match to the decoded pictures at that location in the video stream despite using different pictures, or no pictures at all, as references prior to the switch. A simple automatic process for preventing the accidental emulation of start codes, which are special sequences of bits in the coded data that allow random access into the bitstream and recovery of byte alignment in systems that can lose byte synchronization. Supplemental enhancement information (SEI) and video usability information (VUI), which are extra information that can be inserted into the bitstream to enhance the use of the video for a wide variety of purposes.[clarification needed] SEI FPA (Frame Packing Arrangement) message that contains the 3D arrangement:
0: checkerboard: pixels are alternatively from L and R. 1: column alternation: L and R are interlaced by column. 2: row alternation: L and R are interlaced by row. 3: side by side: L is on the left, R on the right. 4: top bottom: L is on top, R on bottom. 5: frame alternation: one view per frame.
Auxiliary pictures, which can be used for such purposes as alpha compositing. Support of monochrome (4:0:0), 4:2:0, 4:2:2, and 4:4:4 chroma subsampling (depending on the selected profile). Support of sample bit depth precision ranging from 8 to 14 bits per sample (depending on the selected profile). The ability to encode individual color planes as distinct pictures with their own slice structures, macroblock modes, motion vectors, etc., allowing encoders to be designed with a simple parallelization structure (supported only in the three 4:4:4-capable profiles). Picture order count, a feature that serves to keep the ordering of the pictures and the values of samples in the decoded pictures isolated from timing information, allowing timing information to be carried and controlled/changed separately by a system without affecting decoded picture content.
These techniques, along with several others, help H.264 to perform
significantly better than any prior standard under a wide variety of
circumstances in a wide variety of application environments. H.264 can
often perform radically better than
Constrained Baseline Profile (CBP, 66 with constraint set 1)
Primarily for low-cost applications, this profile is most typically
used in videoconferencing and mobile applications. It corresponds to
the subset of features that are in common between the Baseline, Main,
and High Profiles.
Baseline Profile (BP, 66)
Primarily for low-cost applications that require additional data loss
robustness, this profile is used in some videoconferencing and mobile
applications. This profile includes all features that are supported in
the Constrained Baseline Profile, plus three additional features that
can be used for loss robustness (or for other purposes such as
low-delay multi-point video stream compositing). The importance of
this profile has faded somewhat since the definition of the
Constrained Baseline Profile in 2009. All Constrained Baseline Profile
bitstreams are also considered to be Baseline Profile bitstreams, as
these two profiles share the same profile identifier code value.
Extended Profile (XP, 88)
Intended as the streaming video profile, this profile has relatively
high compression capability and some extra tricks for robustness to
data losses and server stream switching.
Main Profile (MP, 77)
This profile is used for standard-definition digital TV broadcasts
that use the
MPEG-4 format as defined in the DVB standard. It is
not, however, used for high-definition television broadcasts, as the
importance of this profile faded when the High Profile was developed
in 2004 for that application.
High Profile (HiP, 100)
The primary profile for broadcast and disc storage applications,
particularly for high-definition television applications (for example,
this is the profile adopted by the
For camcorders, editing, and professional applications, the standard contains four additional Intra-frame-only profiles, which are defined as simple subsets of other corresponding profiles. These are mostly for professional (e.g., camera and editing system) applications:
High 10 Intra Profile (110 with constraint set 3)
The High 10 Profile constrained to all-Intra use.
High 4:2:2 Intra Profile (122 with constraint set 3)
The High 4:2:2 Profile constrained to all-Intra use.
High 4:4:4 Intra Profile (244 with constraint set 3)
The High 4:4:4 Profile constrained to all-Intra use.
As a result of the Scalable Video Coding (SVC) extension, the standard contains five additional scalable profiles, which are defined as a combination of a H.264/AVC profile for the base layer (identified by the second word in the scalable profile name) and tools that achieve the scalable extension:
Scalable Baseline Profile (83) Primarily targeting video conferencing, mobile, and surveillance applications, this profile builds on top of the Constrained Baseline profile to which the base layer (a subset of the bitstream) must conform. For the scalability tools, a subset of the available tools is enabled. Scalable Constrained Baseline Profile (83 with constraint set 5) A subset of the Scalable Baseline Profile intended primarily for real-time communication applications. Scalable High Profile (86) Primarily targeting broadcast and streaming applications, this profile builds on top of the H.264/AVC High Profile to which the base layer must conform. Scalable Constrained High Profile (86 with constraint set 5) A subset of the Scalable High Profile intended primarily for real-time communication applications. Scalable High Intra Profile (86 with constraint set 3) Primarily targeting production applications, this profile is the Scalable High Profile constrained to all-Intra use.
As a result of the Multiview Video Coding (MVC) extension, the standard contains two multiview profiles:
Stereo High Profile (128) This profile targets two-view stereoscopic 3D video and combines the tools of the High profile with the inter-view prediction capabilities of the MVC extension. Multiview High Profile (118) This profile supports two or more views using both inter-picture (temporal) and MVC inter-view prediction, but does not support field pictures and macroblock-adaptive frame-field coding. Multiview Depth High Profile (138)
Feature support in particular profiles
Feature CBP BP XP MP ProHiP HiP Hi10P Hi422P Hi444PP
I and P slices Yes Yes Yes Yes Yes Yes Yes Yes Yes
Bit depth (per sample) 8 8 8 8 8 8 8 to 10 8 to 10 8 to 14
Chroma formats 4:2:0
4:2:0/ 4:2:2 4:2:0/ 4:2:2/ 4:4:4
Flexible macroblock ordering (FMO) No Yes Yes No No No No No No
Arbitrary slice ordering (ASO) No Yes Yes No No No No No No
Redundant slices (RS) No Yes Yes No No No No No No
Data Partitioning No No Yes No No No No No No
SI and SP slices No No Yes No No No No No No
Interlaced coding (PicAFF, MBAFF) No No Yes Yes No Yes Yes Yes Yes
B slices No No Yes Yes Yes Yes Yes Yes Yes
Multiple reference frames Yes Yes Yes Yes Yes Yes Yes Yes Yes
In-loop deblocking filter Yes Yes Yes Yes Yes Yes Yes Yes Yes
CABAC entropy coding No No No Yes Yes Yes Yes Yes Yes
4:0:0 (Monochrome) No No No No Yes Yes Yes Yes Yes
8×8 vs. 4×4 transform adaptivity No No No No Yes Yes Yes Yes Yes
Quantization scaling matrices No No No No Yes Yes Yes Yes Yes
Separate Cb and Cr QP control No No No No Yes Yes Yes Yes Yes
Separate color plane coding No No No No No No No No Yes
Predictive lossless coding No No No No No No No No Yes
Levels As the term is used in the standard, a "level" is a specified set of constraints that indicate a degree of required decoder performance for a profile. For example, a level of support within a profile specifies the maximum picture resolution, frame rate, and bit rate that a decoder may use. A decoder that conforms to a given level must be able to decode all bitstreams encoded for that level and all lower levels.
Levels with maximum property values
Level Max. decoding speed Max. frame size Max. video bit rate for video coding layer (VCL) kbit/s (Baseline, Extended and Main Profiles) Examples for high resolution @ highest frame rate Toggle additional details
Luma samples/s Macroblocks/s Luma samples Macroblocks
1 380,160 1,485 25,344 99 64
1b 380,160 1,485 25,344 99 128
1.1 768,000 3,000 101,376 396 192
128x96@60 176×144@30 352×firstname.lastname@example.org
1.2 1,536,000 6,000 101,376 396 384
128x96@120 176×144@60 352×288@15
1.3 3,041,280 11,880 101,376 396 768
128x96@172 176×144@120 352×288@30
2 3,041,280 11,880 101,376 396 2,000
128x96@172 176x144@120 352×288@30
2.1 5,068,800 19,800 202,752 792 4,000
176x144@172 352×240@60 352×288@50 352×480@30 352×576@25
2.2 5,184,000 20,250 414,720 1,620 4,000
176×144@172 352×480@30 352×576@25 720×480@15 720×email@example.com
3 10,368,000 40,500 414,720 1,620 10,000
176×144@172 352×240@120 352×480@60 720×480@30 720×576@25
3.1 27,648,000 108,000 921,600 3,600 14,000
352x288@172 352x576@130 640x480@90 720×576@60 1,280×720@30
3.2 55,296,000 216,000 1,310,720 5,120 20,000
640x480@172 720x480@160 720x576@130 1,280×720@60
4 62,914,560 245,760 2,097,152 8,192 20,000
720x480@172 720x576@150 1,280×720@60 2,048×1,024@30
4.1 62,914,560 245,760 2,097,152 8,192 50,000
720x480@172 720x576@150 1,280×720@60 2,048×1,024@30
4.2 133,693,440 522,240 2,228,224 8,704 50,000
720x576@172 1,280×720@140 2,048×1,080@60
5 150,994,944 589,824 5,652,480 22,080 135,000
1,024×768@172 1,280×720@160 2,048×1,080@60 2,560×1,920@30 3,680×1,536@25
5.1 251,658,240 983,040 9,437,184 36,864 240,000
1,280×720@172 1,920×1,080@120 2,048×1,536@80 4,096×2,048@30
5.2 530,841,600 2,073,600 9,437,184 36,864 240,000
1,920×1,080@172 2,048×1,536@160 4,096×2,160@60
6 1,069,547,520 4,177,920 35,651,584 139,264 240,000
2,048×1,536@300 4,096×2,160@120 8,192×4,320@30
6.1 2,139,095,040 8,355,840 35,651,584 139,264 480,000
2,048×1,536@300 4,096×2,160@240 8,192×4,320@60
6.2 4,278,190,080 16,711,680 36,651,584 139,264 800,000
The maximum bit rate for High Profile is 1.25 times that of the Base/Extended/Main Profiles, 3 times for Hi10P, and 4 times for Hi422P/Hi444PP. The number of luma samples is 16x16=256 times the number of macroblocks (and the number of luma samples per second is 256 times the number of macroblocks per second). Decoded picture buffering Previously encoded pictures are used by H.264/AVC encoders to provide predictions of the values of samples in other pictures. This allows the encoder to make efficient decisions on the best way to encode a given picture. At the decoder, such pictures are stored in a virtual decoded picture buffer (DPB). The maximum capacity of the DPB, in units of frames (or pairs of fields), as shown in parentheses in the right column of the table above, can be computed as follows:
capacity = min(floor(MaxDpbMbs / (PicWidthInMbs * FrameHeightInMbs)), 16)
Where MaxDpbMbs is a constant value provided in the table below as a function of level number, and PicWidthInMbs and FrameHeightInMbs are the picture width and frame height for the coded video data, expressed in units of macroblocks (rounded up to integer values and accounting for cropping and macroblock pairing when applicable). This formula is specified in sections A.3.1.h and A.3.2.f of the 2009 edition of the standard.
For example, for an
HDTV picture that is 1920 samples wide
(PicWidthInMbs = 120) and 1080 samples high (FrameHeightInMbs = 68), a
Level 4 decoder has a maximum DPB storage capacity of
Floor(32768/(120*68)) = 4 frames (or 8 fields) when encoded with
minimal cropping parameter values. Thus, the value 4 is shown in
parentheses in the table above in the right column of the row for
Level 4 with the frame size 1920×1080.
It is important to note that the current picture being decoded is not
included in the computation of DPB fullness (unless the encoder has
indicated for it to be stored for use as a reference for decoding
other pictures or for delayed output timing). Thus, a decoder needs to
actually have sufficient memory to handle (at least) one frame more
than the maximum capacity of the DPB as calculated above.
In 2009, the HTML5 working group was split between supporters of Ogg
Theora, a free video format which is thought[by whom?] to be
unencumbered by patents, and H.264, which contains patented
technology. As late as July 2009, Google and Apple were said to
support H.264, while
AVC software implementations
Feature QuickTime Nero LEAD x264 Main- Concept Elecard TSE Pro- Coder Avivo Elemental IPP
B slices Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes
Multiple reference frames Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes
Interlaced coding (PicAFF, MBAFF) No MBAFF MBAFF MBAFF Yes Yes No Yes MBAFF Yes No
CABAC entropy coding Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes
8×8 vs. 4×4 transform adaptivity No Yes Yes Yes Yes Yes Yes Yes No Yes Yes
Quantization scaling matrices No No No Yes Yes No No No No No No
Separate Cb and Cr QP control No No No Yes Yes Yes No No No No No
Extended chroma formats No No No 4:2:2 4:4:4 4:2:0 4:2:2 4:2:2 4:2:2 No No 4:2:0 4:2:2 No
Largest sample depth (bit) 8 8 8 10 10 8 8 8 8 10 12
Predictive lossless coding No No No Yes No No No No No No No
List of cameras with onboard video stream encoding and
MPEG-4 AVC products and implementations
Because H.264 encoding and decoding requires significant computing
power in specific types of arithmetic operations, software
implementations that run on general-purpose CPUs are typically less
power efficient. However, the latest quad-core general-purpose x86
CPUs have sufficient computation power to perform real-time SD and HD
encoding. Compression efficiency depends on video algorithmic
implementations, not on whether hardware or software implementation is
used. Therefore, the difference between hardware and software based
implementation is more on power-efficiency, flexibility and cost. To
improve the power efficiency and reduce hardware form-factor,
special-purpose hardware may be employed, either for the complete
encoding or decoding process, or for acceleration assistance within a
CPU based solutions are known to be much more flexible, particularly
when encoding must be done concurrently in multiple formats, multiple
bit rates and resolutions (multi-screen video), and possibly with
additional features on container format support, advanced integrated
advertising features, etc. CPU based software solution generally makes
it much easier to load balance multiple concurrent encoding sessions
within the same CPU.
The 2nd generation
VP8 VP9 AOMedia Video 1 Comparison of H.264 and VC-1 Dirac (video compression format) Ultra-high-definition television IPTV
^ Ozer, Jan. "Encoding for Multiple Screen Delivery, Section 3,
Lecture 7: Introduction to H.264". Udemy. Retrieved 10 October
^ "Delivering 8K using AVC/H.264". Mystery Box. Retrieved
^ "AVC/H.264 FAQ". www.mpegla.com. Retrieved 2016-09-15.
^ "H.262 : Information technology — Generic coding of
moving pictures and associated audio information: Video". Retrieved
^ Joint Video Team,
ITU-T Web site.
ITU-T Recommendation H.264 (05/2003)". ITU. 2003-05-30. Retrieved
ITU-T Recommendation H.264 (05/2003) Cor. 1 (05/2004)". ITU.
2004-05-07. Retrieved 2013-04-18.
ITU-T Recommendation H.264 (03/2005)". ITU. 2005-03-01. Retrieved
ITU-T Recommendation H.264 (2005) Cor. 1 (09/2005)". ITU.
2005-09-13. Retrieved 2013-04-18.
^ a b "
ITU-T Recommendation H.264 (2005) Amd. 1 (06/2006)". ITU.
2006-06-13. Retrieved 2013-04-18.
ITU-T Recommendation H.264 (2005) Amd. 2 (04/2007)". ITU.
2007-04-06. Retrieved 2013-04-18.
ITU-T Recommendation H.264 (11/2007)". ITU. 2007-11-22. Retrieved
ITU-T Recommendation H.264 (2007) Cor. 1 (01/2009)". ITU.
2009-01-13. Retrieved 2013-04-18.
^ a b "
ITU-T Recommendation H.264 (03/2009)". ITU. 2009-03-16.
^ a b "
ITU-T Recommendation H.264 (03/2010)". ITU. 2010-03-09.
^ a b "
ITU-T Recommendation H.264 (06/2011)". ITU. 2011-06-29.
ITU-T Recommendation H.264 (01/2012)". ITU. 2012-01-13. Retrieved
^ a b c d "
ITU-T Recommendation H.264 (04/2013)". ITU. 2013-06-12.
^ a b "
ITU-T Recommendation H.264 (02/2014)". ITU. 2014-11-28.
ITU-T Recommendation H.264 (02/2016)". ITU. 2016-02-13. Retrieved
ITU-T Recommendation H.264 (10/2016)". ITU. 2016-10-14. Retrieved
ITU-T Recommendation H.264 (04/2017)". ITU. 2017-04-13. Retrieved
^ Wenger; et al. "RFC 3984 : RTP Payload Format for H.264 Video":
^ "Which recording mode is equivalent to the image quality of the High
Definition Video (HDV) format?".
Wiegand, Thomas; Sullivan, Gary J.; Bjøntegaard, Gisle; Luthra, Ajay (July 2003). "Overview of the H.264/AVC Video Coding Standard" (PDF). IEEE Transactions on Circuits and Systems for Video Technology. 13 (7). Retrieved January 31, 2011. Topiwala, Pankaj; Sullivan, Gary J.; Luthra, Ajay (August 2004). "Overview and Introduction to the Fidelity Range Extensions" (PDF). SPIE Applications of Digital Image Processing XXVII. Retrieved January 31, 2011. Ostermann, J.; Bormans, J.; List, P.; Marpe, D.; Narroschke, M.; Pereira, F.; Stockhammer, T.; Wedi, T. (2004). "Video coding with H.264/AVC: Tools, Performance, and Complexity" (PDF). IEEE Circuits and Systems Magazine. 4 (1). Retrieved January 31, 2011. Sullivan, Gary J.; Wiegand, Thomas (January 2005). "Video Compression—From Concepts to the H.264/AVC Standard" (PDF). Proceedings of the IEEE. 93 (1). doi:10.1109/jproc.2004.839617. Retrieved January 31, 2011. Richardson, Iain E. G. (January 2011). "Learn about video compression and H.264". VCODEX. Vcodex Limited. Retrieved January 31, 2011.
ITU-T publication page: H.264: Advanced video coding for generic audiovisual services MPEG-4 AVC/H.264 Information Doom9's Forum H.264/ MPEG-4 Part 10 Tutorials (Richardson) "Part 10: Advanced Video Coding". ISO publication page: ISO/IEC 14496-10:2010 – Information technology — Coding of audio-visual objects. "H.264/AVC JM Reference Software". IP Homepage. Retrieved 2007-04-15. "JVT document archive site". Retrieved 2007-05-06. "Publications". Thomas Wiegand. Retrieved 2007-06-23. "Publications". Detlev Marpe. Retrieved 2007-04-15. "Fourth Annual H.264 video codecs comparison". Moscow State University. (dated December 2007) "Discussion on H.264 with respect to IP cameras in use within the security and surveillance industries". (dated April 2009) "Sixth Annual H.264 video codecs comparison". Moscow State University. (dated May 2010)
v t e
MJPEG Motion JPEG 2000 MPEG-1 MPEG-2
Part 2/ASP Part 10/AVC
H.120 H.261 H.262 H.263 H.264 H.265
VC-1 VC-2 VC-3 VC-5
Alliance for Open Media
RealVideo RTVideo SheerVideo Smacker Sorenson Video, Spark Theora Thor VP3 VP6 VP7 VP8 VP9 WMV XEB YULS
G.711 (A-law, µ-law) G.718 G.719 G.722 G.722.1 G.722.2 G.723 G.723.1 G.726 G.728 G.729 G.729.1
AMR AMR-WB AMR-WB+ EVRC EVRC-B EVS GSM-HR GSM-FR GSM-EFR
ACELP AC-3 AC-4 ALAC Asao ATRAC CELT Codec2 DRA DTS FLAC iSAC Monkey's Audio TTA
MT9 Musepack OptimFROG OSQ QCELP RCELP RealAudio RTAudio SD2 SHN SILK Siren SMV Speex SVOPC TwinVQ VMR-WB Vorbis VSELP WavPack WMA MQA aptX LDAC
IEC, ISO, ITU-T, W3C, IETF
APNG BPG DjVu EXR FLIF ICER MNG PGF QTVR WBMP WebP
3GP and 3G2 AMV ASF AIFF AVI AU BPG Bink
BMP DivX Media Format EVO Flash Video GXF IFF M2TS Matroska
MOD and TOD VOB, IFO and BUP
See Compression methods for methods and Compression software for codecs
v t e
MPEG-1 2 3 4 7 21 A B C D E V M U H
Part 1: Systems
Part 2: Video
based on H.261
Part 3: Audio
Layer I Layer II Layer III
Part 1: Systems (H.222.0)
Transport stream Program stream
Part 2: Video (H.262) Part 3: Audio
Part 6: DSM CC Part 7: Advanced Audio Coding
Part 2: Video
based on H.263
Part 3: Audio Part 6: DMIF Part 10: Advanced Video Coding (H.264) Part 11: Scene description Part 12: ISO base media file format Part 14: MP4 file format Part 17: Streaming text format Part 20: LASeR Part 22: Open Font Format
Part 2: Description definition language
Parts 2, 3 and 9: Digital Item Part 5: Rights Expression Language
v t e
High-definition television High-definition video Ultra-high-definition television
Analog broadcast (All defunct)
819 line system HD MAC MUSE (Hi-Vision)
ATSC DMB-T/H DVB ISDB SBTVD
Dolby Digital Surround sound DSD DXD DTS
Filming and storage
HD media and compression
Blu-ray CBHD D-VHS DVD-Audio H.264 H.265 HD DVD HD VMD MPEG-2 MVC Super Audio CD Ultra HD Blu-ray Uncompressed VC-1
Component DisplayPort DVI HDMI VGA
List of digital television deployments by country
v t e
ISO standards by standard number
List of ISO standards / ISO romanizations / IEC standards
1 2 3 4 5 6 7 9 16 31
-0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13
128 216 217 226 228 233 259 269 302 306 428 518 519 639
-1 -2 -3 -5 -6
646 690 732 764 843 898 965 1000 1004 1007 1073-1 1413 1538 1745 1989 2014 2015 2022 2047 2108 2145 2146 2240 2281 2709 2711 2788 2848 2852 3029 3103 3166
-1 -2 -3
3297 3307 3602 3864 3901 3977 4031 4157 4217 4909 5218 5428 5775 5776 5800 5964 6166 6344 6346 6385 6425 6429 6438 6523 6709 7001 7002 7098 7185 7200 7498 7736 7810 7811 7812 7813 7816 8000 8178 8217 8571 8583 8601 8632 8652 8691 8807 8820-5 8859
-1 -2 -3 -4 -5 -6 -7 -8 -8-I -9 -10 -11 -12 -13 -14 -15 -16
8879 9000/9001 9075 9126 9293 9241 9362 9407 9506 9529 9564 9594 9660 9897 9899 9945 9984 9985 9995
10005 10006 10007 10116 10118-3 10160 10161 10165 10179 10206 10218 10303
-11 -21 -22 -28 -238
10383 10487 10585 10589 10646 10664 10746 10861 10957 10962 10967 11073 11170 11179 11404 11544 11783 11784 11785 11801 11898 11940 (-2) 11941 11941 (TR) 11992 12006 12182 12207 12234-2 13211
13216 13250 13399 13406-2 13450 13485 13490 13567 13568 13584 13616 14000 14031 14224 14289 14396 14443 14496
-2 -3 -6 -10 -11 -12 -14 -17 -20
14644 14649 14651 14698 14750 14764 14882 14971 15022 15189 15288 15291 15292 15398 15408 15444
15445 15438 15504 15511 15686 15693 15706
15707 15897 15919 15924 15926 15926 WIP 15930 16023 16262 16612-2 16750 16949 (TS) 17024 17025 17100 17203 17369 17442 17799 18000 18004 18014 18245 18629 18916 19005 19011 19092 (-1 -2) 19114 19115 19125 19136 19439 19500 19501 19502 19503 19505 19506 19507 19508 19509 19510 19600 19752 19757 19770 19775-1 19794-5 19831
20000 20022 20121 20400 21000 21047 21500 21827:2002 22000 23270 23271 23360 24517 24613 24617 24707 25178 25964 26000 26300 26324 27000 series 27000 27001 27002 27006 27729 28000 29110 29148 29199-2 29500 30170 31000 32000 38500 40500 42010 55000 80000
-1 -2 -3
v t e
ITU recommendations (standards)
G series (ITU-T)
G.114 G.165 G.703 G.704 G.706 G.707 G.709 G.711 G.718 G.719 G.722 G.722.1 G.722.2 G.729.1 G.723 G.723.1 G.726 G.728 G.729 G.783 G.798 G.806 G.811 G.983 G.984 G.987 G.988 G.991.1 G.991.2 G.992.1 G.992.2 G.992.3
Annex J Annex L
G.993.1 G.993.2 G.7041 G.7042 G.7043 G.8262 G.9700 / G.9701 G.9960 G.9970 G.9972
H series (ITU-T)
V series (ITU-T)
V.10 V.11 V.21 V.22 V.23 V.24 V.61 V.70 V.90 V.92
ITU-R 468 noise weighting ITU-R BS.1534-1 ITU-R BT.1304 ITU-R BT.470-6 ITU-R BT.470-7 ITU-R BT.601 ITU-R BT.709 ITU-R BT.2020
See also: All articles be