3. Evolution of Video coding StandardsEvolution of Video coding Standards
ITU-T
Standard
Joint
ITU-T/MPEG
Standards
MPEG
Standard
1988 1990 1992 1994 1996 1998 2000 2002 2004
H.261
(Version 1)
H.261
(Version 2)
H.263 H.263+ H.263++
H.262/MPEG-2 H.264/MPEG-4 AVC
MPEG-1
MPEG-4
(Version 1)
MPEG-4
(Version 2)
4. Structure of H.264/AVC video encoderStructure of H.264/AVC video encoder
Control
Data
Video Coding Layer
Data Partitioning
Network Abstraction Layer
H.323/IP MPEG-2 etc.H.320 MP4FF
Coded Macroblock
Coded Slice/Partition
6. Data Structure of MPEGData Structure of MPEG
GOP GOP GOPSH SH SH
I B B P B B P …… BBB P
slice
slice
MB MB MB MB MB MB ….
Y1
Y3
Y2
Y4
Cb Cr
Sequence
GOP
Picture
Slice
Macroblock
8. Basic coding structure of H.264/AVC for a macroblockBasic coding structure of H.264/AVC for a macroblock
Entropy
Coding
Scaling & Inv.
Transform
Motion-
Compensation
Control
Data
Quant.
Transf. coeffs
Motion
Data
Intra/Inter
Coder
Control
Decoder
Motion
Estimation
Transform/
Scal./Quant.
-
Input
Video
Signal
Split into
Macroblocks
16x16 pixels
Intra-frame
Prediction
De-blocking
Filter
Output
Video
Signal
New features of H.264
12. Adaptive Deblocking FilterAdaptive Deblocking Filter
Deblocking Filter
– There are severe blocking artifacts
• 4*4 transforms and block-based motion compensation
– Result in bit rate savings of around 6~9%
– Improve subjective quality and PSNR of the decoded picture
Without Filter With AVC Deblocking Filter
13. FMO (1/2)FMO (1/2)
FMO (Flexible Macroblock Ordering)
– Slice (composed in FMO) Enhance Robustness to data loss
Picture
Slice Group
Slice
…
.
.….
Independently-
decodable
14. FMO (2/2)FMO (2/2)
Slice #0
Slice #1
Slice #2
Subdivision of a picture into
slices when not using FMO
Slice Group #0
Slice Group #1
Slice Group #2
Subdivision of a QCIF frame into slices when
utilizing FMO
Slice Group #0
Slice Group #1
15. ASOASO
ASO (Arbitrary Slice Ordering)
– Independently-decoded Slice
• Enables sending and receiving the slice in any order
• Improve end-to-end delay in real-time application
Picture Picture
Internet protocol network
Slice Slice
Start to
decode
16. Entropy CodingEntropy Coding
CAVLC (Context Adaptive Variable Length Coding)
– Context : already coded information of the neighboring
blocks and the coding status of the current block
– Optimized VLC tables are provided for each context to code
the coefficients in different statistical conditions
CABAC (Context Adaptive Binary Arithmetic Codes)
– Use a binary arithmetic coding engine
– Compression improvement is consequence of
• Adaptive probability estimation
• Improved context modeling scheme
– Exploiting symbol correlations by using contexts
– Average bit-rate saving over CAVLC 5~15%
19. ConclusionConclusion
H.264 is the standard of both ITU-T VCEG and ISO/IEC MPEG
gains in compression efficiency of up to 50% compared to
previous standards
New key features are:
– Enhanced motion compensation
– Small blocks for transform coding
– Integer transform
– Improved deblocking filter
– Enhanced entropy coding
Increased complexity relative to prior standards
20. ReferencesReferences
Ralf Schafer, Thomas Wiegand and Heiko Schwarz, “The emerging H.264/AVC
standard,” in EBU technical review, Jan. 2003.
Jorn Ostermann et al., “Video coding with H.264/AVC: Tools, Performance, and
Complexity,” in IEEE Circuit and systems magazine, first quarter. 2004.
Thomas Wiegand et al., “Overview of the H.264/AVC Video Coding Standard,” in
IEEE transactions on circuits and systems for video technology, Vol. 12, No.7,
July. 2003.
M. Mahdi Ghandi and Mohammad Ghanbari, “The H.264/AVC Video Coding
Standard for the Next Generation Multimedia Communication,” in IAEEE Jounal.