H.264/MPEG-4 AVC Video Compression Tutorial



Similar documents
Video Coding Basics. Yao Wang Polytechnic University, Brooklyn, NY11201

Module 8 VIDEO CODING STANDARDS. Version 2 ECE IIT, Kharagpur

White paper. H.264 video compression standard. New possibilities within video surveillance.

THE EMERGING JVT/H.26L VIDEO CODING STANDARD

A Look at Emerging Standards in Video Security Systems. Chris Adesanya Panasonic Network Systems Company

Video Coding Standards. Yao Wang Polytechnic University, Brooklyn, NY11201

Study and Implementation of Video Compression Standards (H.264/AVC and Dirac)

Video Coding Technologies and Standards: Now and Beyond

Quality Estimation for Scalable Video Codec. Presented by Ann Ukhanova (DTU Fotonik, Denmark) Kashaf Mazhar (KTH, Sweden)

The H.264/AVC Advanced Video Coding Standard: Overview and Introduction to the Fidelity Range Extensions

Overview: Video Coding Standards

Performance Analysis and Comparison of JM 15.1 and Intel IPP H.264 Encoder and Decoder

Video Coding Standards and Scalable Coding

H 261. Video Compression 1: H 261 Multimedia Systems (Module 4 Lesson 2) H 261 Coding Basics. Sources: Summary:

Figure 1: Relation between codec, data containers and compression algorithms.

Study and Implementation of Video Compression standards (H.264/AVC, Dirac)

An Introduction to Ultra HDTV and HEVC

WHITE PAPER. H.264/AVC Encode Technology V0.8.0

MPEG Unified Speech and Audio Coding Enabling Efficient Coding of both Speech and Music

Video coding with H.264/AVC:

Data Storage 3.1. Foundations of Computer Science Cengage Learning

To determine vertical angular frequency, we need to express vertical viewing angle in terms of and. 2tan. (degree). (1 pt)

*EP B1* EP B1 (19) (11) EP B1 (12) EUROPEAN PATENT SPECIFICATION

White paper. An explanation of video compression techniques.

Understanding Compression Technologies for HD and Megapixel Surveillance

Comparison of the Coding Efficiency of Video Coding Standards Including High Efficiency Video Coding (HEVC)

GPU Compute accelerated HEVC decoder on ARM Mali TM -T600 GPUs

THE PRIMARY goal of most digital video coding standards

Overview of the Scalable Video Coding Extension of the H.264/AVC Standard

MISB EG Engineering Guideline. 14 May H.264 / AVC Coding and Multiplexing. 1 Scope. 2 References

Video Authentication for H.264/AVC using Digital Signature Standard and Secure Hash Algorithm

ATSC Standard: 3D-TV Terrestrial Broadcasting, Part 2 Service Compatible Hybrid Coding Using Real-Time Delivery

For Articulation Purpose Only

Digital Audio Compression: Why, What, and How

Development and Evaluation of Point Cloud Compression for the Point Cloud Library

CM0340 SOLNS. Do not turn this page over until instructed to do so by the Senior Invigilator.

How To Improve Performance Of The H264 Video Codec On A Video Card With A Motion Estimation Algorithm

MPEG-1 and MPEG-2 Digital Video Coding Standards

Parametric Comparison of H.264 with Existing Video Standards

Emerging Markets for H.264 Video Encoding

A Guide to MPEG Fundamentals and Protocol Analysis (Including DVB and ATSC)

Using AVC/H.264 and H.265 expertise to boost MPEG-2 efficiency and make the 6-in-6 concept a reality

X264: A HIGH PERFORMANCE H.264/AVC ENCODER. Loren Merritt and Rahul Vanam*


Application Note. Introduction. Video Basics. Contents. IP Video Encoding Explained Series Understanding IP Video Performance.

Bandwidth Adaptation for MPEG-4 Video Streaming over the Internet

How To Improve Performance Of H.264/Avc With High Efficiency Video Coding (Hevc)

Multihypothesis Prediction using Decoder Side Motion Vector Derivation in Inter Frame Video Coding

AUDIO CODING: BASICS AND STATE OF THE ART

IMPACT OF COMPRESSION ON THE VIDEO QUALITY

Introduction to image coding

Compression techniques

Introduzione alle Biblioteche Digitali Audio/Video

Data Storage. Chapter 3. Objectives. 3-1 Data Types. Data Inside the Computer. After studying this chapter, students should be able to:

AN3998 Application note

DCT-JPEG Image Coding Based on GPU

Video-Conferencing System

Survey of Dirac: A Wavelet Based Video Codec for Multiparty Video Conferencing and Broadcasting

Digital Video Coding Standards and Their Role in Video Communications

Media - Video Coding: Motivation & Scenarios

Michael W. Marcellin and Ala Bilgin

Motion Estimation. Macroblock Partitions. Sub-pixel Motion Estimation. Sub-pixel Motion Estimation

FAQs. Getting started with the industry s most advanced compression technology. when it counts

Reading.. IMAGE COMPRESSION- I IMAGE COMPRESSION. Image compression. Data Redundancy. Lossy vs Lossless Compression. Chapter 8.

MPEG-4 Natural Video Coding - An overview

HIGH-DEFINITION: THE EVOLUTION OF VIDEO CONFERENCING

QuickTime and MPEG-4: Now Featuring H.264

VIDEOTELEPHONY AND VIDEOCONFERENCE OVER ISDN

A Brief on Visual Acuity and the Impact on Bandwidth Requirements

Audio Coding Algorithm for One-Segment Broadcasting

Comparison of Video Compression Standards

How To Code With Cbcc (Cbcc) In Video Coding

Image Compression through DCT and Huffman Coding Technique

Overview of the H.264/AVC Video Coding Standard

High Definition (HD) Technology and its Impact. on Videoconferencing F770-64

A Tutorial on Image/Video Coding Standards

Microsoft Lync. Unified Communication Specification for H.264 AVC and SVC UCConfig Modes V 1.1

How To Compare Video Resolution To Video On A Computer Or Tablet Or Ipad Or Ipa Or Ipo Or Ipom Or Iporom Or A Tv Or Ipro Or Ipot Or A Computer (Or A Tv) Or A Webcam Or

Expanding Your Business Through Franchising What Steps You Need to Take to Successfully Franchise Your Business. By Robert J.

J.D. Power and Associates Reports: Overall Wireless Network Problem Rates Differ Considerably Based on Type of Usage Activity

The H.264/MPEG-4 Advanced Video Coding (AVC) Standard

Compressing Moving Images. Compression and File Formats updated to include HTML5 video tag. The DV standard. Why and where to compress

Alberto Corrales-García, Rafael Rodríguez-Sánchez, José Luis Martínez, Gerardo Fernández-Escribano, José M. Claver and José Luis Sánchez

Cisco TelePresence VCR Converter 1.0(1.8)

Proactive Video Assurance through QoE and QoS Correlation

TECHNICAL OVERVIEW OF VP8, AN OPEN SOURCE VIDEO CODEC FOR THE WEB

Video Encryption Exploiting Non-Standard 3D Data Arrangements. Stefan A. Kramatsch, Herbert Stögner, and Andreas Uhl

A Guide to MPEG Fundamentals and Protocol Analysis (Including DVB and ATSC)

Transcription:

Introduction The upcoming H.264/MPEG-4 AVC video compression standard promises a significant improvement over all previous video compression standards. In terms of coding efficiency, the new standard is expected to provide at least 2x compression improvement over the best previous standards and substantial perceptual quality improvements over both MPEG-2 and MPEG-4. The standard, being jointly developed by ITU-T and ISO/IEC, will address the full range of video applications including low bit-rate wireless applications, standard-definition and highdefinition broadcast television, video streaming over the Internet, delivery of high-definition DVD content, and the highest quality video for digital cinema applications. The ITU-T name for the standard is H.264 (previously called H.26L), while the ISO/IEC name is MPEG-4 Advanced Video Coding (AVC) which will become Part 10 of the MPEG- 4 standard. Since AVC is an extension to the current MPEG-4 standard, it will benefit from MPEG-4 s well-developed infrastructure tools (e.g. system layer and audio). It is expected that MPEG-4 AVC will be selected over the current MPEG-4 video compression standard, known as MPEG-4 Advanced Simple Profile (ASP), for the majority of applications that demand the highest compression and quality levels. As can be seen in the diagram History of Video Standards, the ITU-T and ISO/IEC are responsible for all previous international video compression standards. To date, the most successful of these standards has been MPEG-2, which has gone on to achieve mass-market acceptance in areas such as DVD, digital television broadcast (over cable and satellite), and digital set-top box. The new H.264/MPEG-4 AVC standard represents the single largest improvement in coding efficiency and quality since the introduction of MPEG-2. Consequently, over time, it is expected that H.264/MPEG-4 AVC will displace MPEG-2 and MPEG-4 ASP in many existing applications, in addition to opening up several new markets (e.g. video over ADSL). History of Video Standards ITU-T Standard H.261 (Version 1) H.261 (Version 1) H.263 H.263+ H.263++ Joint ITU-T/MPEG Standards H.262/MPEG-2 H.264/MPEG-4 AVC MPEG Standards MPEG-1 MPEG-4 (Version 1) MPEG-4 (Version 2) 1988 1990 1992 1994 1996 1998 2000 2002 2004 Copyright 2003 by LSI Logic Corporation All rights reserved. Order Number XXXXXXXX January 2003

Technical Overview As can be seen in the H.264/MPEG-4 AVC Overview Block Diagram, the new standard is composed of several processing stages: Motion Estimation and Intra Estimation Transform (and Inverse Transform) Quantization (and Inverse Quantization) Loop Filter Entropy Coding Video is composed of a stream of individual pictures that can be broken down into individual blocks of 16 pixels by 16 lines called macroblocks. This practice simplifies the processing which needs to be done at each stage in the compression algorithm. For example, a picture from a video stream at standard definition resolution (720x480) is divided into 1,350 (45x30) macroblocks. It is at the macroblock level that further processing takes place. We will explore the purpose and function of each of these processing elements in the next few sections. H.264/MPEG-4 AVC Overview Block Diagram Computes the difference between actual incoming video and estimated/transformed/quantized video So, only the estimated and the difference appear in the compressed video stream Either "motion estimation" or "intra estimation" Uncompressed Video Estimation Transform Quantization Entropy Coding Compressed Video Loop Filter Inverse Transform Inverse Quantization Technical Overview Motion estimation is used to identify and eliminate the temporal redundancies that exist between individual pictures. When searching for motion relative to a previous picture, the picture to be encoded is called a P-picture. When searching both within a previous picture and a future picture, the picture to be encoded is called a B-picture. To improve coding efficiency, the macroblock is broken down into smaller blocks that attempt to contain and isolate the motion as shown in the diagram H.264 Motion Estimation Superior Motion Estimation. Then, motion vectors to previous and/or future pictures are used to predict a given block. H.264/MPEG-4 AVC introduces smaller block sizes, greater flexibility in block shapes, and greater precision in motion vectors.

H.264 Motion Estimation Superior Motion Estimation Macroblock Partitioning Characteristics Arbitrary block shapes Small block sizes (4x4) 1/4, 1/8 pel motion vector Strong motion isolation Video Standard H.264 Square block shapes Medium block sizes (8x8) 1/8 pel motion vector Moderate motion isolation MPEG-4 Square block shapes Large block sizes (16x16) 1/2 pel motion vector Weak motion isolation MPEG-2 In addition, H.264 introduces the concept of multiple reference frames. This feature is useful for dealing with: 1) Motion that is periodic in nature 2) Translating motion and occlusions 3) Alternating camera angles that switch back and forth between two different scenes An example of periodic motion is shown in H.264 Motion Estimation Multiple Reference Frames. H.264 Motion Estimation Multiple Reference Frames H.264 Maximum Compression Reference Frame 1 Reference Frame 2 MPEG-2 or MPEG-4 Cannot Recognize Periodic Motion The difference between the predicted block and the actual block is then coded, which results in far fewer bits than if only the original block was coded.

Intra Estimation In instances where motion estimation cannot be exploited, intra estimation is used to eliminate spatial redundancies. Intra estimation attempts to predict the current block by extrapolating the neighboring pixels from adjacent blocks in a defined set of different directions. The difference between the predicted block and the actual block is then coded. This approach, unique to H.264/MPEG-4 AVC, is particularly useful in flat backgrounds where spatial redundancies often exist. An example of this is shown in H.264 Intra Estimation. H.264 Intra Estimation Before Compression After Compression Adjacent Vertical Pixels Original "intra-predicted" by Adjacent Strip Transform Results from the motion estimation or intra estimation stages are transformed from the spatial domain into the frequency domain. H.264/MPEG-4 AVC uses a DCT-like 4x4 integer transform. In contrast, MPEG-2 and MPEG-4 ASP employ a true DCT 8x8 transform that operates on floating-point coefficients. The smaller block size of H.264/MPEG-4 AVC reduces blocking and ringing artifacts. Integer coefficients eliminate rounding errors inherent with floating point coefficients and that cause drifting artifacts with MPEG-2 and MPEG-4.

H.264 Transform H.264 Spatial Domain Frequency Domain Integer Transform Transformed MPEG-2 / MPEG-4 Spatial Domain Frequency Domain 8x8 Block DCT Transform Transformed 8x8 Block Quantization The coefficients from the transform stage are quantized, which reduces the overall precision of the integer coefficients and tends to eliminate high frequency coefficients, while maintaining perceptual quality. The quantizer is also used for constant bit rate applications where it is varied to control the output bit rate. H.264 Quantization / Rate Control Full precision, Full perceptual quality Reduced Precision, Full perceptual Quality Quantizer Quantized Eliminates perceptually unnecessary precision Also, can be used for rate control by adjusting the quantizer to deliver a constant bit rate in the output stream

Loop Filter The H.264/MPEG-4 AVC standard defines a de-blocking filter that operates on both 16x16 macroblocks and 4x4 block boundaries. In the case of macroblocks, the filter is intended to remove artifacts that may result from adjacent macroblocks having different estimation types (e.g. motion vs. intra estimation), and/or different quantizer scale. In the case of blocks, the filter is intended to remove artifacts that may be caused by transform/quantization and from motion vector differences between adjacent blocks. The loop filter typically modifies the two pixels on either side of the macroblock/block boundary using a content adaptive non-linear filter. Entropy Coding Before entropy coding can take place, the 4x4 quantized coefficients must be serialized. Depending on whether these coefficients were originally motion estimated or intra estimated, a different scan pattern is selected to create the serialized stream. The scan pattern orders the coefficients from low frequency to high frequency. Then, since higher frequency quantized coefficients tend to be zero, run-length encoding is used to group trailing zeros, resulting in more efficient entropy coding. H.264 Entropy Coding Serialization of Coefficients Starting Point (lowest spectral frequency) (Motion Estimation) (Intra Estimation) C 1, C 2, C 3, C 4, Ending Point (highest spectral frequency) C 1, C 2, C 3, C 4, Outgoing stream of coefficients Outgoing stream of coefficients Higher frequency coefficients tend to be zero Run-length Encoding truncates trailing zeros

The entropy coding stage maps symbols representing motion vectors, quantized coefficients, and macroblock headers into actual bits. Entropy coding improves coding efficiency by assigning a smaller number of bits to frequently used symbols and a greater number of bits to less frequently used symbols. The following table summarizes the two major types of entropy coding: Variable Length Coding (VLC) and Context Adaptive Binary Arithmetic Coding (CABAC). CABAC offers superior coding efficiency over VLC by adapting to the changing probability distribution of symbols, by exploiting correlation between symbols, and by adaptively exploiting bit correlations using arithmetic coding. H.264 also supports Context Adaptive Variable Length Coding (CAVLC) which offers superior entropy coding over VLC without the full cost of CABAC. H.264 Entropy Coding Comparison of Approaches Characteristics Where it is used Probability distribution Leverages correlation between symbols Non-integer code words Variable Length Coding (VLC) MPEG-2, MPEG-4 ASP Static - Probabilities never change No - Conditional probabilities ignored No - Low coding efficiency forhigh probability symbols Context Adaptive Binary Arithmetic Coding(CABAC) H.264/MPEG-4 AVC (high efficiency option) Adaptive - Adjusts probabilities based on actual data Yes - Exploits symbol correlations by using contexts Yes - Exploits arithmetic coding which generates non-integer code words for higher efficiency Conclusion The new H.264/MPEG-4 AVC offers significant bit rate and quality advantages over all previous standards. The standard is expected to be ratified by ISO in early- to mid-2003. Initial products based on the standard are available now.

Sales Offices and Design Resource Centers LSI Logic Corporation Corporate Headquarters Milpitas, CA 95035 Tel: 408.433.8000 USA CANADA INTERNATIONAL Arizona Tempe Tel: 480.921.3305 Oregon Beaverton Tel: 503.521.9601 Ontario Kanata Tel: 613.592.1263 Europe United Kingdom Phone: 44-1344-426544 Colorado Boulder Tel: 303.448.7700 Pennsylvania Hatboro Tel: 215.957.0600 Alberta Calgary Tel: 403.207.5526 China Beijing Phone: 86-10-6263-8296 Illinois Oakbrook Terrace Tel: 630.954.2234 Louisiana Hammond Tel: 985.542.1115 Maryland Columbia Tel: 410.992.0200 Laurel Tel: 301.362.0232 Massachusetts Waltham Tel: 781.890.0180 Texas Arlington Tel: 817.695.8000 Austin Tel: 512.794.9006 Houston Tel: 281.376.2000 Utah Salt Lake City Tel: 801.264.8050 Washington Kirkland Tel: 425.889.8443 Chengdu Phone: 86-28-667-8831 Japan Tokyo Tel: 81-3-5463-7821 Korea Seoul Phone: 82-2-528-3400 Taiwan Taipei Phone: 886-2-2718-7828 Minnesota Minneapolis Tel: 952.921.8300 To receive product literature, visit us at http://www.lsilogic.com. Printed in USA Doc. No. I22001 LSI Logic and the LSI Logic logo design are trademarks or registered trademarks of LSI Logic Corporation. All other brand and product names may be trademarks of their respective companies. LSI Logic Corporation reserves the right to make changes to any products and ser vices herein at any time without notice. LSI Logic does not assume any responsibility or liability arising out of the application or use of any product or ser vice described herein, except as expressly agreed to in writing by LSI Logic; nor does the purchase, lease, or use of a product or ser vice from LSI Logic convey a license under any patent rights, copyrights, trademark rights, or any other of the intellectual property rights of LSI Logic or of third parties.