Media Compression - Video Coding Standards   Fall 2005 CMPT 365 Multimedia Systems
Video Coding Standards H.264/AVC
Coding Rate and Standards Mobile videophone Videophone over PSTN ISDN videophone Digital TV HDTV Video CD MPEG-4 MPEG-1 MP...
Standardization Organizations <ul><li>ITU-T VCEG  (Video Coding Experts Group)  </li></ul><ul><ul><li>standards for advanc...
Introduction <ul><li>H.261 </li></ul><ul><li>MPEG-1 </li></ul><ul><li>MPEG-2 </li></ul><ul><li>H.263 </li></ul><ul><li>MPE...
H.261 <ul><li>Earliest DCT-based video standard: 1990 </li></ul><ul><li>ITU Recommendation for videoconferencing and video...
Layered Structure for Video Data <ul><li>Video multiplex arrangement: </li></ul><ul><ul><li>Picture layer    GOB layer  ...
Entropy coding <ul><li>Similar to JPEG </li></ul><ul><ul><li>Zigzag scan </li></ul></ul><ul><ul><li>(Run, Level) coding </...
Introduction <ul><li>H.261 </li></ul><ul><li>MPEG-1 </li></ul><ul><li>MPEG-2 </li></ul><ul><li>H.263 </li></ul><ul><li>MPE...
MPEG-1 <ul><li>Committee formed in 1988 </li></ul><ul><li>Finalized in 1991 </li></ul><ul><li>Used for VCD </li></ul><ul><...
MPEG-1 Video <ul><li>Progressive video only </li></ul><ul><li>Layered structure: </li></ul><ul><ul><li>Sequence, Group of ...
Quantization and Entropy Coding <ul><li>Stepsize varies by frequency for I blocks </li></ul><ul><ul><li>Similar to JPEG </...
B frames <ul><li>Temporal prediction for B pictures: </li></ul>b C1 C2 Frame k-1 Frame k Frame k+1
Introduction <ul><li>Rate Control and in-loop deblocking filter </li></ul><ul><li>H.261 </li></ul><ul><li>MPEG-1 </li></ul...
MPEG-2 <ul><li>Completed in 1994 </li></ul><ul><li>Extension of MPEG-1 </li></ul><ul><li>Standard for DVD, SDTV, HDTV </li...
Profiles and Levels <ul><li>Defined to manage the large number of coding tools and the broad range of formats and bit rate...
MPEG-2 Levels 60 1152 1920 High 60 1152 1440 High 1440 30 576 720 Main 30 288 352 Low Max Frame/s Max Lines Max Pixels Level
Introduction <ul><li>Rate Control and in-loop deblocking filter </li></ul><ul><li>H.261 </li></ul><ul><li>MPEG-1 </li></ul...
H.263 <ul><li>Derived from H.261 </li></ul><ul><li>Intended for very low bit-rate application </li></ul><ul><ul><li>Better...
Advanced Prediction (4MV) <ul><li>Each 8x8 block in a MB can have its own MV </li></ul><ul><li>Suitable when there is comp...
Run-Level-Last Entropy Coding <ul><li>3-D VLC: ( LAST , RUN, LEVEL): </li></ul><ul><ul><li>LAST: 1 for last non-zero coeff...
H.263+ and H.263++ <ul><li>H.263+: Second version of H.263 </li></ul><ul><li>Some further optional features: Annex I to T....
Introduction <ul><li>Rate Control and in-loop deblocking filter </li></ul><ul><li>H.261 </li></ul><ul><li>MPEG-1 </li></ul...
MPEG-4 <ul><li>Based on H.263 </li></ul><ul><li>A new concept rather than an improved algorithm </li></ul><ul><li>Deal wit...
Video Objects (VO) <ul><li>MPEG-4 treats a video sequence as a collection of video objects </li></ul><ul><li>Each scene is...
Scene Composition <ul><li>The decoder can compose different scenes by using different number of decoded objects </li></ul>
MPEG-4 Structure A/V object Decoder MUX Compositor Bitstream Audio/Video scene A/V object Decoder A/V object Decoder
More MPEG-4 Example <ul><li>Instead of ”frames”:  Video Object Planes </li></ul><ul><li>Shape Adaptive DCT </li></ul>A vid...
Example Problems, comments? Object 2 Object  1 Object 3 Object   4
Example
Status <ul><li>Microsoft, RealVideo, QuickTime, ... </li></ul><ul><ul><li>But only recentagular frame based </li></ul></ul...
Summary of Standards SIF: Standard Interchange Format, 352x240 pixels at 30 Hz. Versatile multimedia coding standard 5kbps...
What’s Next ?  - H.264 <ul><li>1998: Call for proposal for H.26L issued by ITU-T VCEG (Video Coding Expert Group) </li></u...
Applications <ul><li>Bit rate: 64kbps to 240Mbps </li></ul><ul><li>Broadcast over cable, satellite, DSL … </li></ul><ul><l...
Two-Layer Structure <ul><li>Video Coding Layer (VCL) </li></ul><ul><ul><li>Effectively represent the video content </li></...
Block Diagram Entropy Coding Scaling & Inv. Transform Motion- Compensation Control Data Quant. Transf. coeffs Motion Data ...
Video Coding Layer: Slice coding <ul><li>Slices can have different shapes and sizes </li></ul><ul><li>Each slice is self-c...
Intra-Picture Prediction <ul><li>Performed in spatial domain instead of in transform domain </li></ul><ul><li>Two basic pr...
Intra-Picture Prediction <ul><li>Intra_4x4 Prediction (9 modes) </li></ul><ul><ul><li>Predict each 4 x 4 block </li></ul><...
Intra-Picture Prediction  cont’d <ul><li>Intra_16x16 prediction (4 modes) </li></ul><ul><ul><li>Predict the entire 16 x 16...
Inter-Picture Prediction <ul><li>P macro-blocks can be partitioned into smaller regions  </li></ul><ul><ul><li>Up to 16 MV...
Multiple Reference Pictures <ul><li>More than one previously decoded pictures can be used as reference </li></ul>
4x4 Integer Transform <ul><li>Fast implementation </li></ul><ul><li>Smaller size leads to less noise around edges. </li></...
Entropy Coding <ul><li>CAVLC: Context-adaptive VLC </li></ul><ul><li>CABAC: Context adaptive binary arithmetic coding </li...
Context Modeling <ul><li>Encode the next symbol based on context info </li></ul><ul><li>Collect probability distribution f...
New Directions for H.264 <ul><li>SNR scalability </li></ul><ul><li>Multi-view coding (3D Audio-visual coding) </li></ul>
Reference <ul><li>D. Marpe, H. Schwarz, T. Wiegand,  Context-based adaptive binary arithmetic coding in the H.264/AVC vide...
Upcoming SlideShare
Loading in …5
×

Video Coding Standard

2,227
-1

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,227
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
179
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Video Coding Standard

  1. 1. Media Compression - Video Coding Standards Fall 2005 CMPT 365 Multimedia Systems
  2. 2. Video Coding Standards H.264/AVC
  3. 3. Coding Rate and Standards Mobile videophone Videophone over PSTN ISDN videophone Digital TV HDTV Video CD MPEG-4 MPEG-1 MPEG-2 H.261 H.263 8 16 64 384 1.5 5 20 kbit/s Mbit/s Very low bitrate Low bitrate Medium bitrate High bitrate
  4. 4. Standardization Organizations <ul><li>ITU-T VCEG (Video Coding Experts Group) </li></ul><ul><ul><li>standards for advanced moving image coding methods appropriate for conversational and non-conversational audio/visual applications. </li></ul></ul><ul><li>ISO/IEC MPEG (Moving Picture Experts Group) </li></ul><ul><ul><li>standards for compression and coding, decompression, processing, and coded representation of moving pictures, audio, and their combination </li></ul></ul><ul><li>Relation </li></ul><ul><ul><li>ITU-T H.262~ISO/IEC 13818-2(mpeg2) </li></ul></ul><ul><ul><li>Generic Coding of Moving Pictures and Associated Audio. </li></ul></ul><ul><ul><li>ITU-T H.263~ISO/IEC 14496-2(mpeg4) </li></ul></ul>WG - work group SG – sub group ISO/IEC JTC 1/SC 29/WG 1 Coding of Still Pictures ISO/IEC JTC 1/SC 29/WG 11
  5. 5. Introduction <ul><li>H.261 </li></ul><ul><li>MPEG-1 </li></ul><ul><li>MPEG-2 </li></ul><ul><li>H.263 </li></ul><ul><li>MPEG-4 </li></ul><ul><li>H.264 </li></ul>
  6. 6. H.261 <ul><li>Earliest DCT-based video standard: 1990 </li></ul><ul><li>ITU Recommendation for videoconferencing and videophones over ISDN </li></ul><ul><li>Targeted bit rate: p x 64 kbps (p=1, …, 30) </li></ul><ul><ul><li>Videophone: low rate, e.g., 64kbps </li></ul></ul><ul><ul><li>Videoconferencing: high rate, e.g., 384kbps (p=6) </li></ul></ul><ul><ul><li>Max: 1.92Mbps (p=30) </li></ul></ul><ul><li>Picture format: </li></ul><ul><ul><li>CIF (Common Intermediate Format, 352 x 288) </li></ul></ul><ul><ul><li>QCIF (Quarter CIF): 176 x 144. </li></ul></ul><ul><li>Max delay: 150 ms (for bidirectional interactivity) </li></ul><ul><li>Sequential search </li></ul><ul><li>Amenable to low-cost VLSI implementation </li></ul><ul><li>No B mode </li></ul>
  7. 7. Layered Structure for Video Data <ul><li>Video multiplex arrangement: </li></ul><ul><ul><li>Picture layer  GOB layer  MB layer  block layer </li></ul></ul><ul><li>Group of Blocks (GOB): </li></ul><ul><li>3 rows of 11 macroblocks (MBs) </li></ul><ul><li>(Y: 176 x 48, UV: 88 x 24) </li></ul><ul><li>QCIF: 3 GOBs </li></ul><ul><li>CIF: 12 GOBs </li></ul><ul><li>MB: 16 x 16 luma </li></ul>One GOB QCIF: 176 x 144 CIF: 352 x 288 Cr Cb MB Y1 Y2 Y3 Y4 8x8
  8. 8. Entropy coding <ul><li>Similar to JPEG </li></ul><ul><ul><li>Zigzag scan </li></ul></ul><ul><ul><li>(Run, Level) coding </li></ul></ul><ul><ul><li>EOB </li></ul></ul>
  9. 9. Introduction <ul><li>H.261 </li></ul><ul><li>MPEG-1 </li></ul><ul><li>MPEG-2 </li></ul><ul><li>H.263 </li></ul><ul><li>MPEG-4 </li></ul><ul><li>H.264 </li></ul>
  10. 10. MPEG-1 <ul><li>Committee formed in 1988 </li></ul><ul><li>Finalized in 1991 </li></ul><ul><li>Used for VCD </li></ul><ul><li>Random access, fast forward/reverse search </li></ul><ul><li>Delay: 1 sec (for unidirectional video access) </li></ul><ul><li>1/2-pixel ME/MC </li></ul><ul><li>No deblocking filter </li></ul><ul><li>B frames </li></ul><ul><li>Software-only decoding is possible </li></ul><ul><li>MPEG-1 Audio coding: </li></ul><ul><ul><li>3 layers of encoding: </li></ul></ul><ul><ul><ul><li>Layer 1: 4 : 1 compression ratio with CD quality </li></ul></ul></ul><ul><ul><ul><li>Layer 2: 6 : 1 to 8 : 1 </li></ul></ul></ul><ul><ul><ul><li>Layer 3 (MP3): 10 : 1 to 12 : 1 </li></ul></ul></ul>
  11. 11. MPEG-1 Video <ul><li>Progressive video only </li></ul><ul><li>Layered structure: </li></ul><ul><ul><li>Sequence, Group of picture (GOP), Picture, Slice, Macroblock, Block </li></ul></ul>I B B P … B B P …… GOP I B B P … B B P …… GOP
  12. 12. Quantization and Entropy Coding <ul><li>Stepsize varies by frequency for I blocks </li></ul><ul><ul><li>Similar to JPEG </li></ul></ul><ul><ul><li>Scaling is adjusted on a MB basis </li></ul></ul><ul><ul><li>8 16 19 22 26 27 29 34 </li></ul></ul><ul><ul><li>16 16 22 24 27 29 34 37 </li></ul></ul><ul><ul><li>19 22 26 27 29 34 34 38 </li></ul></ul><ul><ul><li>22 22 26 27 29 34 37 40 </li></ul></ul><ul><ul><li>22 26 27 29 32 35 40 48 </li></ul></ul><ul><ul><li>26 27 29 32 35 40 48 58 </li></ul></ul><ul><ul><li>26 27 29 34 38 46 56 69 </li></ul></ul><ul><ul><li>27 29 35 38 46 56 69 83 </li></ul></ul><ul><li>Entropy coding: </li></ul><ul><ul><li>Similar to JPEG and H.261 </li></ul></ul>
  13. 13. B frames <ul><li>Temporal prediction for B pictures: </li></ul>b C1 C2 Frame k-1 Frame k Frame k+1
  14. 14. Introduction <ul><li>Rate Control and in-loop deblocking filter </li></ul><ul><li>H.261 </li></ul><ul><li>MPEG-1 </li></ul><ul><li>MPEG-2 </li></ul><ul><li>H.263 </li></ul><ul><li>MPEG-4 </li></ul><ul><li>H.264 </li></ul>
  15. 15. MPEG-2 <ul><li>Completed in 1994 </li></ul><ul><li>Extension of MPEG-1 </li></ul><ul><li>Standard for DVD, SDTV, HDTV </li></ul><ul><li>Support interlaced inputs </li></ul><ul><li>Support scalable coding </li></ul><ul><li>Flexible frame size </li></ul><ul><li>Low delay </li></ul><ul><li>Support a wide range of applications </li></ul><ul><li>Source format: 4:4:4:, 4:2:2, 4:2:0 </li></ul><ul><li>1/2-pixel ME/MC (bilinear interpolation) </li></ul><ul><li>B frames </li></ul><ul><li>MPEG-2 Audio: </li></ul><ul><ul><li>Support 5.1 channels </li></ul></ul><ul><ul><li>AAC: 30% fewer bits than MP3 </li></ul></ul>
  16. 16. Profiles and Levels <ul><li>Defined to manage the large number of coding tools and the broad range of formats and bit rates supported </li></ul><ul><li>Profiles and levels define a set of conformance points, each targeting a class applications </li></ul><ul><li>Maximize interoperability and limiting the complexity </li></ul><ul><li>Profile : a subset of the entire bit stream syntax </li></ul><ul><li>Levels : a specified set of constraints imposed on values of the syntax elements in the bit stream (maximum bit rate, buffer size, pic. resolution) </li></ul>
  17. 17. MPEG-2 Levels 60 1152 1920 High 60 1152 1440 High 1440 30 576 720 Main 30 288 352 Low Max Frame/s Max Lines Max Pixels Level
  18. 18. Introduction <ul><li>Rate Control and in-loop deblocking filter </li></ul><ul><li>H.261 </li></ul><ul><li>MPEG-1 </li></ul><ul><li>MPEG-2 </li></ul><ul><li>H.263 </li></ul><ul><li>MPEG-4 </li></ul><ul><li>H.264 </li></ul>
  19. 19. H.263 <ul><li>Derived from H.261 </li></ul><ul><li>Intended for very low bit-rate application </li></ul><ul><ul><li>Better quality at 18-24kbps than H.261 at 64 kbps </li></ul></ul><ul><ul><li>Used in MS NetMeeting, Messenger … </li></ul></ul><ul><li>Can handle high resolution (up to 16CIF: 1408 x 1152) </li></ul><ul><li>No loop filter </li></ul><ul><li>1/2-pixel ME/MC </li></ul><ul><li>Optional coding modes (defined in 8 Annexes): </li></ul><ul><ul><li>Unrestricted motion vector (Annex D): </li></ul></ul><ul><ul><ul><li>MV can point outside of picture boundary by extrapolating the boundary pixels (repeat padding is usually used) </li></ul></ul></ul><ul><ul><ul><li>MV range: [-31.5, 31.5] </li></ul></ul></ul><ul><ul><li>Arithmetic coding </li></ul></ul><ul><ul><li>Advanced prediction (Annex F): </li></ul></ul><ul><ul><ul><li>Overlapped block motion compensation </li></ul></ul></ul><ul><ul><ul><li>4MV: 1 for each 8x8 block </li></ul></ul></ul>
  20. 20. Advanced Prediction (4MV) <ul><li>Each 8x8 block in a MB can have its own MV </li></ul><ul><li>Suitable when there is complicated motion in the MB </li></ul><ul><li>Need more bits to encode the MVs </li></ul><ul><li>Need to compare the performance fo 1 MV and 4MV </li></ul>MV2 MV1 MV MV3 MV2 MV1 MV MV3 MV2 MV1 MV MV3 MV1 MV MV2 MV3
  21. 21. Run-Level-Last Entropy Coding <ul><li>3-D VLC: ( LAST , RUN, LEVEL): </li></ul><ul><ul><li>LAST: 1 for last non-zero coefficient of a block </li></ul></ul><ul><ul><li>0 otherwise </li></ul></ul><ul><ul><li>RUN: number of zeros before the current coefficient </li></ul></ul><ul><ul><li>LEVEL: value of the current non-zero coefficient </li></ul></ul><ul><li>No EOB as in JPEG </li></ul>
  22. 22. H.263+ and H.263++ <ul><li>H.263+: Second version of H.263 </li></ul><ul><li>Some further optional features: Annex I to T. </li></ul><ul><li>Annex J: in-loop deblocking filter </li></ul><ul><li>H.263++: three more optional modes (2000) </li></ul><ul><ul><li>Annex V: Data partitioned slice mode </li></ul></ul><ul><ul><ul><li>For enhanced resilience to transmission error </li></ul></ul></ul>
  23. 23. Introduction <ul><li>Rate Control and in-loop deblocking filter </li></ul><ul><li>H.261 </li></ul><ul><li>MPEG-1 </li></ul><ul><li>MPEG-2 </li></ul><ul><li>H.263 </li></ul><ul><li>MPEG-4 </li></ul><ul><li>H.264 </li></ul>
  24. 24. MPEG-4 <ul><li>Based on H.263 </li></ul><ul><li>A new concept rather than an improved algorithm </li></ul><ul><li>Deal with a variety of multimedia contents: audio, visual , image, graphic. </li></ul><ul><li>Part 2: Visual </li></ul><ul><ul><li>Based on H.263 </li></ul></ul><ul><ul><li>Object-based coding </li></ul></ul><ul><ul><li>Coding of animated objects </li></ul></ul><ul><ul><li>Scalability: Fine Granular Scalability (FGS) </li></ul></ul><ul><ul><li>Texture coding: wavelet-based </li></ul></ul><ul><li>Part 10: Advanced Video Coding </li></ul><ul><ul><li>H.264 </li></ul></ul>
  25. 25. Video Objects (VO) <ul><li>MPEG-4 treats a video sequence as a collection of video objects </li></ul><ul><li>Each scene is decomposed into multiple objects </li></ul><ul><ul><li>The segmentation method is not part of the standard </li></ul></ul><ul><li>Each object is specified by shape, motion, and texture. </li></ul><ul><li>Natural visual Objects: </li></ul><ul><ul><li>Image, video, sprite (background) </li></ul></ul><ul><li>Synthetic visual object: </li></ul><ul><ul><li>Face and body </li></ul></ul><ul><ul><li>2-D mesh </li></ul></ul><ul><ul><li>3-D mesh </li></ul></ul><ul><li>The decoder can compose different scenes by using different number of decoded objects </li></ul>
  26. 26. Scene Composition <ul><li>The decoder can compose different scenes by using different number of decoded objects </li></ul>
  27. 27. MPEG-4 Structure A/V object Decoder MUX Compositor Bitstream Audio/Video scene A/V object Decoder A/V object Decoder
  28. 28. More MPEG-4 Example <ul><li>Instead of ”frames”: Video Object Planes </li></ul><ul><li>Shape Adaptive DCT </li></ul>A video frame Background VOP VOP VOP Alpha map SA DCT
  29. 29. Example Problems, comments? Object 2 Object 1 Object 3 Object 4
  30. 30. Example
  31. 31. Status <ul><li>Microsoft, RealVideo, QuickTime, ... </li></ul><ul><ul><li>But only recentagular frame based </li></ul></ul><ul><li>H.264 = MPEG-4 part 10 (2003) </li></ul>
  32. 32. Summary of Standards SIF: Standard Interchange Format, 352x240 pixels at 30 Hz. Versatile multimedia coding standard 5kbps – tens Mbps Various MPEG 4 Various Various Various H.264 VHS quality video recording Digital video broadcasting High definition TV (4/3) High definition TV (16/9) <4Mbps <15Mbps <20Mbps <60Mbps <80Mbps <80Mbps <100Mbps SIF 4:2:0 4:2:2 4:2:0 4:2:2 4:2:0 4:2:0 MPEG 2 Low Main High 1440 High VHS quality video storage <1.5Mbps SIF MPEG 1 Video conferencing over low bits rate channels <64kbps S-QCIF/ QCIF H. 263 Video conferencing over LANs X 64 kbps CIF/ QCIF H. 261 Example applications Compressed rate Digitisation format Standard
  33. 33. What’s Next ? - H.264 <ul><li>1998: Call for proposal for H.26L issued by ITU-T VCEG (Video Coding Expert Group) </li></ul><ul><li>Objective: </li></ul><ul><ul><li>50% bit rate savings compared to MPEG-2 </li></ul></ul><ul><ul><li>High quality video at both low and high bit rates </li></ul></ul><ul><ul><li>More error resilience tools </li></ul></ul><ul><li>Oct. 1999: First draft design </li></ul><ul><li>Dec. 2001: VCEG and MPEG formed the Joint Video Team (JVT) </li></ul><ul><li>Approved in 2003: </li></ul><ul><ul><li>ITU-T H.264 and ISO/IEC MPEG-4 Part 10 Advanced Video Coding (AVC) </li></ul></ul>
  34. 34. Applications <ul><li>Bit rate: 64kbps to 240Mbps </li></ul><ul><li>Broadcast over cable, satellite, DSL … </li></ul><ul><li>Interactive/serial storage on optical/magnetic devices, DVD … </li></ul><ul><li>Conversational services over network </li></ul><ul><li>Video on demand, streaming media over network </li></ul><ul><li>Multimedia messaging service over network </li></ul><ul><li>Three Profiles: Baseline, Main, and Extended </li></ul><ul><li>15 levels </li></ul><ul><li>Four new profiles in Fidelity Range Extenstions (FRExt): </li></ul><ul><ul><li>High, High 10, High 4:2:2, High 4:4:4 </li></ul></ul>
  35. 35. Two-Layer Structure <ul><li>Video Coding Layer (VCL) </li></ul><ul><ul><li>Effectively represent the video content </li></ul></ul><ul><li>Network Adaptation Layer (NAL) </li></ul><ul><ul><ul><li>Enable simple and effective customization of the VCL </li></ul></ul></ul><ul><ul><ul><li>allows H.264 to be transported over different networks </li></ul></ul></ul>Video Coding Layer Data Partitioning Network Adaptation Layer H.320 MP4FF H.323/IP MPEG-2 etc. Coded Macroblock Coded Slice/Partition
  36. 36. Block Diagram 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
  37. 37. Video Coding Layer: Slice coding <ul><li>Slices can have different shapes and sizes </li></ul><ul><li>Each slice is self-contained </li></ul><ul><ul><li>Can be decoded without knowing data other slices </li></ul></ul><ul><li>Useful for: </li></ul><ul><ul><li>Error resilience and concealment </li></ul></ul><ul><ul><li>Parallel processing </li></ul></ul>Slice 1 Slice 2 Slice 3
  38. 38. Intra-Picture Prediction <ul><li>Performed in spatial domain instead of in transform domain </li></ul><ul><li>Two basic prediction modes: </li></ul><ul><ul><li>Intra 4x4: for areas with details </li></ul></ul><ul><ul><li>Intra 16x16: for smooth areas </li></ul></ul><ul><ul><li>I_PCM: No prediction, raw samples are sent directly. </li></ul></ul><ul><ul><ul><li>To limit the maximum number of bits for each block </li></ul></ul></ul>
  39. 39. Intra-Picture Prediction <ul><li>Intra_4x4 Prediction (9 modes) </li></ul><ul><ul><li>Predict each 4 x 4 block </li></ul></ul><ul><ul><li>Suitable for details </li></ul></ul>Prediction Directions (Mode 2: DC prediction) Mode 0 Mode 3 Mode 4 8 1 6 4 5 0 7 3 Current 4x4 block Neighbors used for prediction
  40. 40. Intra-Picture Prediction cont’d <ul><li>Intra_16x16 prediction (4 modes) </li></ul><ul><ul><li>Predict the entire 16 x 16 luma block </li></ul></ul><ul><ul><li>Suitable for smooth areas </li></ul></ul>
  41. 41. Inter-Picture Prediction <ul><li>P macro-blocks can be partitioned into smaller regions </li></ul><ul><ul><li>Up to 16 MVs </li></ul></ul><ul><ul><li>MVs are differentially encoded. </li></ul></ul><ul><ul><li>Need lot of optimization efforts to decide the best mode. </li></ul></ul>16 x 16 16 x 8 8 x 16 8 x 8 8 x 4 4 x 8 4 x 4
  42. 42. Multiple Reference Pictures <ul><li>More than one previously decoded pictures can be used as reference </li></ul>
  43. 43. 4x4 Integer Transform <ul><li>Fast implementation </li></ul><ul><li>Smaller size leads to less noise around edges. </li></ul>16 x 16 8x8 <ul><li>Hierarchical Transform: </li></ul><ul><li>For further decorrelation </li></ul><ul><li>Apply 4x4 WHT to Luma DC </li></ul><ul><li>Apply 2x2 WHT to chroma DC </li></ul>
  44. 44. Entropy Coding <ul><li>CAVLC: Context-adaptive VLC </li></ul><ul><li>CABAC: Context adaptive binary arithmetic coding </li></ul><ul><ul><li>9-14% more efficient than CAVLC </li></ul></ul>
  45. 45. Context Modeling <ul><li>Encode the next symbol based on context info </li></ul><ul><li>Collect probability distribution for each possible context: p (x | Ci) </li></ul><ul><li>Four types of context models: </li></ul><ul><ul><li>Use neighboring block info </li></ul></ul><ul><ul><li>Use previous bins (b0, b1, …b i-1 ) as context for bi. </li></ul></ul><ul><ul><li>Use scanning position (for transform coeff coding) </li></ul></ul><ul><ul><li>Use accumulated number of encoded levels with specific value (for transform coeff coding) </li></ul></ul>
  46. 46. New Directions for H.264 <ul><li>SNR scalability </li></ul><ul><li>Multi-view coding (3D Audio-visual coding) </li></ul>
  47. 47. Reference <ul><li>D. Marpe, H. Schwarz, T. Wiegand, Context-based adaptive binary arithmetic coding in the H.264/AVC video compression standard, IEEE Transactions on Circuits and Systems for Video Technology, Volume: 13 , Issue: 7 , July 2003, Pages: 620 – 636. </li></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×