STUDY AND PERFORMANCE COMPARISON OF HEVC AND H.264 VIDEO CODECS

Similar documents
STUDY AND PERFORMANCE COMPARISON OF HEVC AND H.264 VIDEO ENCODERS

STUDY AND IMPLEMENTATION OF VIDEO COMPRESSION STANDARDS (H.264/AVC, DIRAC)

Comparative and performance analysis of HEVC and H.264 Intra frame coding and JPEG2000

EE 5359 Low Complexity H.264 encoder for mobile applications. Thejaswini Purushotham Student I.D.: Date: February 18,2010

"Block Artifacts Reduction Using Two HEVC Encoder Methods" Dr.K.R.RAO

Comparative and performance analysis of HEVC and H.264 Intra frame coding and JPEG2000

Intra Prediction Efficiency and Performance Comparison of HEVC and VP9

COMPARISON OF HIGH EFFICIENCY VIDEO CODING (HEVC) PERFORMANCE WITH H.264 ADVANCED VIDEO CODING (AVC)

Comparative study of coding efficiency in HEVC and VP9. Dr.K.R.Rao

EE Low Complexity H.264 encoder for mobile applications

EE5359:MULTIMEDIA PROCESSING

EE 5359 MULTIMEDIA PROCESSING SPRING Final Report IMPLEMENTATION AND ANALYSIS OF DIRECTIONAL DISCRETE COSINE TRANSFORM IN H.

Intra Prediction Efficiency and Performance Comparison of HEVC and VP9

Analysis of Motion Estimation Algorithm in HEVC

Advanced Video Coding: The new H.264 video compression standard

EE5359:MULTIMEDIA PROCESSING

Reducing/eliminating visual artifacts in HEVC by the deblocking filter.

Implementation and analysis of Directional DCT in H.264

High Efficiency Video Coding (HEVC) test model HM vs. HM- 16.6: objective and subjective performance analysis

Homogeneous Transcoding of HEVC for bit rate reduction

HEVC The Next Generation Video Coding. 1 ELEG5502 Video Coding Technology

Fast Intra Mode Decision in High Efficiency Video Coding

Department of Electrical Engineering

Objective: Introduction: To: Dr. K. R. Rao. From: Kaustubh V. Dhonsale (UTA id: ) Date: 04/24/2012

Performance Analysis of DIRAC PRO with H.264 Intra frame coding

Transcoding from H.264/AVC to High Efficiency Video Coding (HEVC)

Fast Decision of Block size, Prediction Mode and Intra Block for H.264 Intra Prediction EE Gaurav Hansda

Overview, implementation and comparison of Audio Video Standard (AVS) China and H.264/MPEG -4 part 10 or Advanced Video Coding Standard

ENCODER COMPLEXITY REDUCTION WITH SELECTIVE MOTION MERGE IN HEVC ABHISHEK HASSAN THUNGARAJ. Presented to the Faculty of the Graduate School of

Homogeneous Transcoding of HEVC

International Journal of Emerging Technology and Advanced Engineering Website: (ISSN , Volume 2, Issue 4, April 2012)

Analysis of Information Hiding Techniques in HEVC.

Overview of H.264 and Audio Video coding Standards (AVS) of China

A COMPARISON OF CABAC THROUGHPUT FOR HEVC/H.265 VS. AVC/H.264. Massachusetts Institute of Technology Texas Instruments

VHDL Implementation of H.264 Video Coding Standard

EE 5359 H.264 to VC 1 Transcoding

High Efficiency Video Coding. Li Li 2016/10/18

High Efficiency Video Coding: The Next Gen Codec. Matthew Goldman Senior Vice President TV Compression Technology Ericsson

Testing HEVC model HM on objective and subjective way

EE5359: MULTIMEDIA PROCESSING

Image/video compression: howto? Aline ROUMY INRIA Rennes

NEW CAVLC ENCODING ALGORITHM FOR LOSSLESS INTRA CODING IN H.264/AVC. Jin Heo, Seung-Hwan Kim, and Yo-Sung Ho

Video coding. Concepts and notations.

Transcoding from H.264/AVC to High Efficiency Video Coding (HEVC)

OVERVIEW OF IEEE 1857 VIDEO CODING STANDARD

High Efficiency Video Decoding on Multicore Processor

White paper: Video Coding A Timeline

2014 Summer School on MPEG/VCEG Video. Video Coding Concept

Deblocking Filter Algorithm with Low Complexity for H.264 Video Coding

LIST OF TABLES. Table 5.1 Specification of mapping of idx to cij for zig-zag scan 46. Table 5.2 Macroblock types 46

A comparison of CABAC throughput for HEVC/H.265 VS. AVC/H.264

COMPARATIVE ANALYSIS OF DIRAC PRO-VC-2, H.264 AVC AND AVS CHINA-P7

Professor, CSE Department, Nirma University, Ahmedabad, India

PERFORMANCE ANALYSIS OF AVS-M AND ITS APPLICATION IN MOBILE ENVIRONMENT

Upcoming Video Standards. Madhukar Budagavi, Ph.D. DSPS R&D Center, Dallas Texas Instruments Inc.

Objective Video quality assessment of Dirac and H.265

Performance analysis of AAC audio codec and comparison of Dirac Video Codec with AVS-china. Under guidance of Dr.K.R.Rao Submitted By, ASHWINI S URS

CONTENT ADAPTIVE COMPLEXITY REDUCTION SCHEME FOR QUALITY/FIDELITY SCALABLE HEVC

An Efficient Mode Selection Algorithm for H.264

Editorial Manager(tm) for Journal of Real-Time Image Processing Manuscript Draft

Performance Comparison between DWT-based and DCT-based Encoders

Reduced Frame Quantization in Video Coding

Video Codecs. National Chiao Tung University Chun-Jen Tsai 1/5/2015

H.264/AVC BASED NEAR LOSSLESS INTRA CODEC USING LINE-BASED PREDICTION AND MODIFIED CABAC. Jung-Ah Choi, Jin Heo, and Yo-Sung Ho

Fast Intra Coding Based on Reference Samples Similarity in HEVC

A Dedicated Hardware Solution for the HEVC Interpolation Unit

Selected coding methods in H.265/HEVC

Video compression with 1-D directional transforms in H.264/AVC

PERFORMANCE ANALYSIS OF INTEGER DCT OF DIFFERENT BLOCK SIZES USED IN H.264, AVS CHINA AND WMV9.

High Efficiency Video Coding (HEVC)

VIDEO COMPRESSION STANDARDS

Image and Video Coding I: Fundamentals

BLOCK STRUCTURE REUSE FOR MULTI-RATE HIGH EFFICIENCY VIDEO CODING. Damien Schroeder, Patrick Rehm and Eckehard Steinbach

Mark Kogan CTO Video Delivery Technologies Bluebird TV

An Efficient Table Prediction Scheme for CAVLC

Lec 10 Video Coding Standard and System - HEVC

Jun Zhang, Feng Dai, Yongdong Zhang, and Chenggang Yan

Lecture 13 Video Coding H.264 / MPEG4 AVC

Fast Transcoding From H.264/AVC To High Efficiency Video Coding

RECOMMENDATION ITU-R BT

PREPRINT OF A PAPER TO BE PUBLISHED at 32nd PICTURE CODING SYMPOSIUM (PCS 2016), Nuremberg, Germany, Dec 4-7, 2016.

COMPLEXITY REDUCTION IN HEVC INTRA CODING AND COMPARISON WITH H.264/AVC VINOOTHNA GAJULA. Presented to the Faculty of the Graduate School of

A Novel Deblocking Filter Algorithm In H.264 for Real Time Implementation

Chapter 11.3 MPEG-2. MPEG-2: For higher quality video at a bit-rate of more than 4 Mbps Defined seven profiles aimed at different applications:

EFFICIENT PU MODE DECISION AND MOTION ESTIMATION FOR H.264/AVC TO HEVC TRANSCODER

Week 14. Video Compression. Ref: Fundamentals of Multimedia

Performance analysis of Integer DCT of different block sizes.

Scalable Extension of HEVC 한종기

H.264 Based Video Compression

VIDEO AND IMAGE PROCESSING USING DSP AND PFGA. Chapter 3: Video Processing

Digital Video Processing

Performance Evaluation of Kvazaar HEVC Intra Encoder on Xeon Phi Many-core Processor

Video Coding Standards. Yao Wang Polytechnic University, Brooklyn, NY11201 http: //eeweb.poly.edu/~yao

Sample Adaptive Offset Optimization in HEVC

Video Compression An Introduction

Video Quality Analysis for H.264 Based on Human Visual System

Introduction to Video Coding

EFFICIENT DEISGN OF LOW AREA BASED H.264 COMPRESSOR AND DECOMPRESSOR WITH H.264 INTEGER TRANSFORM

Smoooth Streaming over wireless Networks Sreya Chakraborty Final Report EE-5359 under the guidance of Dr. K.R.Rao

Introduction to Video Encoding

Transcription:

INTERIM REPORT ON STUDY AND PERFORMANCE COMPARISON OF HEVC AND H.264 VIDEO CODECS A PROJECT UNDER THE GUIDANCE OF DR. K. R. RAO COURSE: EE5359 - MULTIMEDIA PROCESSING, SPRING 2014 SUBMISSION DATE: 24 TH APRIL 2014 SUBMITTED BY UMA SAGAR MADHUGIRI DAYANANDA UT ARLINGTON ID: 1001002964 EMAIL ID: uma.sagar@mavs.uta.edu DEPARTMENT OF ELECTRICAL ENGINEERING UNIVERSITY OF TEXAS, ARLINGTON Page 1

Table of Contents 1. Scope of Project... 4 2. Fundamental Concepts in Video Coding... 4 2.1 Color Spaces... 4 3. High Efficiency Video Coding... 5 3.1 Introduction... 5 3.2 Encoder and Decoder in HEVC... 5 3.3 Features of HEVC... 7 3.3.1 Partitioning... 7 3.3.2 Prediction... 8 3.3.3 Transform and Quantization... 8 3.3.4 Entropy coding... 8 4. H.264/Advanced Video Coding... 9 4.1 Introduction... 9 4.2 Encoder and Decoder in H.264... 9 4.3 Features of H.264... 11 4.3.1 Prediction... 11 4.3.2 Transform and Quantization... 11 5. Comparison Metrics... 12 5.1 Peak Signal to Noise Ratio... 12 5.2 Bjontegaard Delta Bitrate (BD-BR) and Bjontegaard Delta PSNR (BD-PSNR)... 12 5.3 Implementation Complexity... 12 6. Profiles used for Comparison... 13 6.1 Main profile in HEVC... 13 6.2 High Profile in H.264... 13 7. Test Sequences... 13 8. Comparison Methodology... 14 8.1 Configuration of HM 13.0... 14 8.2 Configuration of JM 18.6... 14 8.3 Testing Platform... 15 9. Results... 16 9.1 All-Intra Configuration:... 16 10. References... 22 Page 2

List of Acronyms and Abbreviations AVC: Advanced Video Coding. BD-BR: Bjontegaard Delta Bitrate. BD-PSNR: Bjontegaard Delta Peak Signal to Noise Ratio. CABAC: Context Adaptive Binary Arithmetic Coding. CTB: Coding Tree Block. CTU: Coding Tree Unit. CU: Coding Unit. DBF: De-blocking Filter. DCT: Discrete Cosine Transform. HEVC: High Efficiency Video Coding. HM: HEVC Test Model. IEC: International Electro-technical Commission. ISO: International Organization for Standardization. ITU-T: International Telecommunication Union- Telecommunication Standardization Sector. JCT: Joint Collaborative Team. JCT-VC: Joint Collaborative Team on Video Coding. JM: H.264 Test Model. JPEG: Joint Photographic Experts Group. MC: Motion Compensation. ME: Motion Estimation. MPEG: Moving Picture Experts Group. MSE: Mean Square Error. PB: Prediction Block. PSNR: Peak Signal to Noise Ratio. QP: Quantization Parameter SAO: Sample Adaptive Offset. SSIM: Structural Similarity Index. TB: Transform Block. TU: Transform Unit. VCEG: Video Coding Experts Group. Page 3

1. Scope of Project This project aims at studying the state-of-the-art High Efficiency Video Coding (HEVC) [12] and H.264/Advanced Video Coding (AVC) [13] video codecs and gaining an understanding of various techniques in video coding such as prediction, transform, quantization and coding. A performance comparison of these video codecs based on various metrics such as computational time, PSNR, BD- Bitrate and BD-PSNR [11] [15] are carried out. The HM 13.0 [24] and JM 18.6 [25] test models for HEVC and H.264 respectively are used for this purpose. 2. Fundamental Concepts in Video Coding 2.1 Color Spaces The common color spaces for digital image and video representation are: RGB Color space Each pixel is represented by three numbers indicating the relative proportions of red, green and blue colors Color space Y is the luminance component, a monochrome version of color Y C r C b image. Y is a weighted average of R, G and B: Y k R k G k B, where k are the weighting factors. r g b The color information is represented as color differences or chrominance components, where each chrominance component is difference between R, G or B and the luminance Y. As the human visual system is less sensitive to color than the luminance component, Y C r C b has advantages over RGB space. The amount of data required to represent the chrominance component reduces without impairing the visual quality [1]. The popular patterns of sub-sampling [1] are: 4:4:4 The three components, Y : luminance samples there are 4 C r C r : and 4 C b C b have the same resolution, which is for every 4 samples. 4:2:2 For every 4 luminance samples in the horizontal direction, there are 2 samples. This representation is used for high quality video color reproduction. 4:2:0 C r and C b each have half the horizontal and vertical resolution ofy used in applications such as video conferencing, digital television and DVD storage. C r and 2 C b. This is popularly Page 4

Figure 1: 4:2:0 sub-sampling pattern [1] Figure 2: 4:2:2 and 4:4:4 sub-sampling patterns [1] 3. High Efficiency Video Coding 3.1 Introduction High Efficiency Video Coding (HEVC) [12] is an international standard for video compression developed by a working group of ISO/IEC MPEG (Moving Picture Experts Group) and ITU-T VCEG (Video Coding Experts Group). The main goal of HEVC standard is to significantly improve compression performance compared to existing standards (such as H.264/Advanced Video Coding [13]) in the range of 50% bit rate reduction at similar visual quality [5]. HEVC is designed to address existing applications of H.264/MPEG-4 AVC and to focus on two key issues: increased video resolution and increased use of parallel processing architectures [5]. It primarily targets consumer applications as pixel formats are limited to 4:2:0 8-bit and 4:2:0 10-bit. The next revision of the standard, planned for 2014, will enable new use-cases with the support of additional pixel formats such as 4:2:2 and 4:4:4 and bit depth higher than 10-bit [20], embedded bitstream scalability and 3D video [33]. 3.2 Encoder and Decoder in HEVC Source video, consisting of a sequence of video frames, is encoded or compressed by a video encoder to create a compressed video bit stream. The compressed bit stream is stored or transmitted. A video decoder decompresses the bit stream to create a sequence of decoded frames [17]. The video encoder performs the following steps: Partitioning each picture into multiple units Predicting each unit using inter or intra prediction, and subtracting the prediction from the unit Transforming and quantizing the residual (the difference between the original picture unit and the prediction) Entropy encoding transform output, prediction information, mode information and headers The video decoder performs the following steps: Entropy decoding and extracting the elements of the coded sequence Rescaling and inverting the transform stage Predicting each unit and adding the prediction to the output of the inverse transform Reconstructing a decoded video image Page 5

The Figure 1 represents the block diagram of HEVC CODEC [17]: Figure 3: Block Diagram of HEVC CODEC [17] The Figure 4 [9] and Figure 5 [31] represent the detailed block diagrams of HEVC encoder and decoder respectively: Page 6

Figure 4: Block Diagram of HEVC Encoder [9] 3.3 Features of HEVC Figure 5: Block Diagram of HEVC Decoder [31] 3.3.1 Partitioning HEVC supports highly flexible partitioning of a video sequence. Each frame of the sequence is split up into rectangular or square regions (units or blocks), each of which is predicted from previously coded data [17]. After prediction, any residual information is transformed and entropy encoded. Each coded video frame, or picture, is partitioned into tiles and/or slices, which are further partitioned into coding tree units (CTUs). The CTU is the basic unit of coding, analogous to the macro-block in earlier standards [17], and can be up to 64x64 pixels in size. A coding tree unit can be subdivided into square regions known as coding units (CUs) using a quadtree structure. Each CU is predicted using inter or intra prediction and transformed using one or more transform units. Figure 6: Picture, Slice, Coding Tree Unit (CTU), Coding Unit (CU) [17] Page 7

3.3.2 Prediction Frames of video are coded using intra or inter prediction: Intra prediction: Each PU is predicted from neighbouring image data in the same picture, using DC prediction (an average value for the PU), planar prediction (fitting a plane surface to the PU) or directional prediction (extrapolating from neighbouring data). Inter prediction: Each PU is predicted from image data in one or two reference pictures (before or after the current picture in display order), using motion compensated prediction. Figure 7: Modes and angular intra prediction directions in HEVC [5] 3.3.3 Transform and Quantization Any residual data remaining after prediction, is transformed using a block transform based on the Discrete Cosine Transform (DCT) or Discrete Sine Transform (DST). One or more block transforms of size 32x32, 16x16, 8x8 and 4x4 are applied to residual data in each CU. Then the transformed data is quantized. Figure 8: CTU showing range of transform (TU) sizes [17] 3.3.4 Entropy coding A coded HEVC bit stream consists of quantized transform coefficients, prediction information such as prediction modes and motion vectors, partitioning information and other header data. All of these elements are encoded using Context Adaptive Binary Arithmetic Coding (CABAC). Page 8

4. H.264/Advanced Video Coding 4.1 Introduction H.264/Advanced Video Coding (AVC) [13] is video coding standard of the ITU-T Video Coding Experts Group and the ISO/IEC Moving Picture Experts Group. The main goals of the H.264/AVC standard were to enhance compression performance and provision of a network-friendly video representation addressing conversational (video telephony) and non-conversational (storage, broadcast, or streaming) applications [8]. 4.2 Encoder and Decoder in H.264 An H.264 video encoder carries out prediction, transform and encoding processes (Figure 7) to produce a compressed H.264 bit stream. An H.264 video decoder carries out complementary processes of decoding, inverse transform and reconstruction to produce a decoded video sequence [18]. Figure 9: Block Diagram of H.264 CODEC [18] The Figure 10 and Figure 11 [10] represent the detailed block diagrams of H.264 encoder and decoder respectively: Page 9

Figure 10: Block Diagram of H.264 Encoder [10] Figure 11: Block Diagram of H.264 Decoder [10] Page 10

4.3 Features of H.264 4.3.1 Prediction The encoder processes a frame of video in units of a macro-block (16x16 displayed pixels) [18]. It forms a prediction of the macro-block based on previously-coded data, either from the current frame (intra prediction) or from other frames that have already been coded and transmitted (inter prediction). The encoder subtracts the prediction from the current macro-block to form a residual. Intra prediction uses 16x16 and 4x4 block sizes to predict the macro-block from surrounding, previously coded pixels within the same frame (Figure 10). Figure 12: Intra prediction in H.264 [18] Inter prediction uses a range of block sizes (from 16x16 down to 4x4) to predict pixels in the current frame from similar regions in previously coded frames (Figure 11). Figure 13: Inter prediction in H.264 [18] Finding a suitable inter prediction is often described as motion estimation. Subtracting an inter prediction from the current macro-block is motion compensation. 4.3.2 Transform and Quantization A block of residual samples is transformed using a 4x4 or 8x8 integer transform, an approximate form of the Discrete Cosine Transform (DCT) [34]. The transform outputs a set of coefficients, each of which is a weighting value for a standard basis pattern. When combined, the weighted basis patterns recreate the block of residual samples. The output of the transform, a block of transform coefficients, is quantized, i.e. each coefficient is divided by an integer value. Quantization reduces the precision of the transform coefficients according to a quantization parameter (QP). Page 11

5. Comparison Metrics 5.1 Peak Signal to Noise Ratio Peak signal-to-noise ratio (PSNR) [22] [26] is an expression for the ratio between the maximum possible value (power) of a signal and the power of distorting noise that affects the quality of its representation. Because many signals have a very wide dynamic range (ratio between the largest and smallest possible values of a changeable quantity), the PSNR is usually expressed in terms of the logarithmic decibel scale. PSNR is most commonly used to measure the quality of reconstruction of lossy compression codecs. The signal in this case is the original data, and the noise is the error introduced by compression. When comparing compression codecs, PSNR is an approximation to human perception of reconstruction quality. Although a higher PSNR generally indicates that the reconstruction is of higher quality, in some cases it may not. One has to be extremely careful with the range of validity of this metric; it is only conclusively valid when it is used to compare results from the same codec (or codec type) and same content. PSNR is defined via the mean squared error (MSE). Given a noise-free m x n monochrome image I and its noisy approximation K, MSE is defined as: The PSNR is defined as: Here, MAX I is the maximum possible pixel value of the image. For test sequences in 4:2:0 color format, PSNR is computed as a weighted average of luminance ( PSNR ) and chrominance ( PSNR, PSNR ) components [14] as given below: Y U V 6 PSNR PSNR PSNR PSNR 8 Y U V 5.2 Bjontegaard Delta Bitrate (BD-BR) and Bjontegaard Delta PSNR (BD-PSNR) To objectively evaluate the coding efficiency of video codecs, Bjontegaard Delta PSNR (BD-PSNR) was proposed. Based on the rate-distortion (R-D) curve fitting, BD-PSNR provides a good evaluation of the R-D performance [11] [15]. BD metrics allow to compute the average gain in PSNR or the average per cent saving in bitrate between two rate-distortion curves. However, BD-PSNR has a critical drawback: It does not take the coding complexity into account [11]. 5.3 Implementation Complexity The computational time of HEVC and AVC encoders will be compared and this serves as an indication of implementation complexity. Page 12

6. Profiles used for Comparison The HM 13.0 main profile [5] and JM 18.6 high profile [8] will be used for comparison in this project. 6.1 Main profile in HEVC This profile allows for a bit depth of 8-bits per sample with 4:2:0 chroma sampling, which is the most common type of video used with consumer devices. 6.2 High Profile in H.264 This profile allows for a bit depth of 8-bits per sample with 4:2:0 chroma sampling. It is used for broadcast and disc storage applications, particularly for high-definition television applications (for example, this is the profile adopted by the Blu-ray Disc storage format and the DVB HDTV broadcast service). 7. Test Sequences The following test sequences [23] of various resolutions are used for study of HEVC and H.264 CODECs: Test Sequence Resolution Frame rate (fps) RaceHorses_416x240_30.yuv 416 x 240 30 BasketballDrill_832x480_50.yuv 832 x 480 50 ParkScene_1920x1080_24.yuv 1920 x 1080 24 PeopleOnStreet_2560x1600_30.yuv 2560 x 1600 30 RaceHorses_416x240_30.yuv BasketballDrill_832x480_50.yuv ParkScene_1920x1080_24.yuv PeopleOnStreet_2560x1600_30.yuv Figure 14: Test Sequences [23] Page 13

8. Comparison Methodology Test sequences in.yuv format are encoded using HM 13.0 [24] and JM 18.6 [25]. Different resolutions of test sequences are used. The main profile in HM 13.0 and high profile in JM 18.6 are used for comparison. The following sections give brief description of configuration settings used in the encoding tools. 8.1 Configuration of HM 13.0 Main all-intra profile settings IntraPeriod : 1 # Period of I-Frame ( -1 = only first) GOPSize : 1 # GOP Size (number of B slice = GOPSize-1) QP : 22 # Quantization parameter(0-51) (22, 27, 32 or 37 is used at a time) Command line parameters for using HM 13.0 encoder: TAppEncoder [-h] [-c config.cfg] [--parameter=value] Options: -h Prints parameter usage -c Defines configuration file to use. Multiple configuration files may be used with repeated c options. --parameter=value Assigns value to a given parameter. Sample command line parameters for HM 13.0 encoder: C:\ Documents\HM_13_HEVC\bin\vc10\Win32\Release>TAppEncoder.exe -c encoder_intra_main.cfg -wdt 832 -hgt 480 -fr 50 -f 10 -i BasketballDrill_832x480_50.yuv 8.2 Configuration of JM 18.6 High all-intra profile settings FramesToBeEncoded : 20 # Number of frames to be coded FrameRate : 50.0 # Frame Rate per second (0.1-100.0) ProfileIDC : 100 # Profile IDC (66=baseline, 77=main, 88=extended; FREXT Profiles: 100=High, 110=High 10, 122=High 4:2:2, 244=High 4:4:4, 44=CAVLC 4:4:4 Intra, 118=Multiview High Profile, 128=Stereo High Profile) IntraProfile : 1 # Activate Intra Profile for FRExt (0: false, 1: true) LevelIDC : 40 # Level IDC (e.g. 20 = level 2.0) IntraPeriod : 1 # Period of I-pictures (0=only first) IDRPeriod : 1 # Period of IDR pictures (0=only first) QPISlice : 22 # Quant. param for I Slices (0-51) (22, 27, 32 or 37 is used at a time) Command line parameters for using JM 18.6 encoder: lencod [-h] [-d defenc.cfg] {[-f curenc1.cfg]...[-f curencn.cfg]} {[-p EncParam1=EncValue1]...[-p EncParamM=EncValueM]} Page 14

Options: -h Prints parameter usage. -d Use <defenc.cfg> as default file for parameter initializations. If not used then file defaults to encoder.cfg in local directory. -f Read <curencm.cfg> for resetting selected encoder parameters. Multiple files could be used that set different parameters. -p Set parameter <EncParamM> to <EncValueM>. The entry for <EncParamM> is case insensitive. Sample command line parameters for JM 18.6 encoder: C:\ H.264\01_JM 18.6\JM Software\JM 18.6\JM\bin>lencod.exe f encoder_high.cfg -p InputFile="C:\Users\uma\Desktop\BasketballDrill_832x480_50.yuv" p SourceWidth=832 -p SourceHeight=480 8.3 Testing Platform Processor Intel Core(TM) i3 CPU M370, 2.40 GHz Number of cores 2 Memory 4 GB Operating System 64 bit Windows 7 Home Basic Service Pack 1 Page 15

9. Results 9.1 All-Intra Configuration: Simulation results of all-intra configuration for the test sequences are tabulated in Tables 1-4: RaceHorses_416x240_30.yuv, Number of frames encoded = 20 HEVC, Main All-intra profile H.264, High All-intra profile QP PSNR in db Bit rate in kbps Encoding time in second PSNR in db Bit rate in kbps Encoding time in second 22 42.5720 5057.16 38.942 42.5096 6100.91 40.350 27 38.6146 3152.10 31.973 38.425 3846.35 34.613 32 34.9992 1814.89 26.551 34.7295 2238.22 30.114 37 31.9718 979.584 23.452 31.913 1291.26 26.404 Table 1: Results for RaceHorses_416x240_30.yuv sequence in All-Intra Configuration BasketballDrill_832x480_50.yuv, Number of frames encoded = 20 HEVC, Main All-intra profile H.264, High All-intra profile QP PSNR in db Bit rate kbps Encoding time in second PSNR in db Bit rate in kbps Encoding time in second 22 42.3716 20407.88 137.080 42.2071 27612.22 141.971 27 39.0915 11014.04 121.178 38.6897 15152.94 120.309 32 36.2986 5847.02 98.149 35.9167 8225.54 103.683 37 33.9144 3200.72 84.450 33.6168 4732.34 93.305 Table 2: Results for BasketballDrill_832x480_50.yuv sequence in All-Intra Configuration ParkScene_1920x1080_24.yuv, Number of frames encoded = 20 HEVC, Main All-intra profile H.264, High All-intra profile QP PSNR in db Bit rate in kbps Encoding time in second PSNR in db Bit rate in kbps Encoding time in second 22 42.1277 49000.6272 672.179 42.0305 60931.83 128.042 27 39.3244 26468.7648 541.421 39.0987 33353.53 106.798 32 36.7479 13760.0640 468.735 36.4413 17731.82 94.365 37 34.4159 6776.3232 419.828 34.2227 9554.87 88.086 Table 3: Results for ParkScene_1920x1080_24.yuv sequence in All-Intra Configuration PeopleOnStreet_2560x1600_30.yuv, Number of frames encoded = 20 HEVC, Main All-intra profile H.264, High All-intra profile QP PSNR in db Bit rate in kbps Encoding time in second PSNR in db Bit rate in kbps Encoding time in second 22 43.8084 104202.5640 1261.67 43.502 109003.28 251.552 27 40.6998 60435.6720 1090.911 40.4082 66398.62 232.422 32 37.8947 34338.7800 960.943 37.6525 39054.60 201.049 37 35.4149 19983.8040 915.221 35.3348 24318.84 187.332 Table 4: Results for PeopleOnStreet_2560x1600_30.yuv sequence in All-Intra Configuration Page 16

The following Figures 15, 16, 17 and 18 represent the R-D plots for various test sequences in all-intra mode: 44 R-D plot for Race Horses Test Sequence 42 40 PSNR(dB) 38 36 H.264 HEVC 34 32 30 0 1000 2000 3000 4000 5000 6000 7000 Bitrate(Kbit/sec) Figure 15: R-D plot for RaceHorses_416x240_30.yuv sequence 43 R-D plot for Basketball drill Test Sequence 42 41 40 PSNR(dB) 39 38 H.264 HEVC 37 36 35 34 33 0 0.5 1 1.5 Bitrate(Kbit/sec) 2 2.5 3 x 10 4 Figure 16: R-D plot for BasketballDrill_832x480_50.yuv sequence Page 17

43 R-D plot for Park Scene Test Sequence 42 41 40 H.264 HEVC PSNR(dB) 39 38 37 36 35 34 0 1 2 3 4 5 6 7 Bitrate(Kbit/sec) x 10 4 Figure 17: R-D plot for ParkScene_1920x1080_24.yuv sequence 44 R-D plot for People on Street Test Sequence 43 42 PSNR(dB) 41 40 39 H.264 HEVC 38 37 36 35 1 2 3 4 5 6 Bitrate(Kbit/sec) 7 8 9 10 11 x 10 4 Figure 18: R-D plot for PeopleOnStreet_2560x1600_30.yuv sequence From the above RD plots (Figures 15, 16, 17 and 18), it can be inferred that for a given QP, HEVC has higher PSNR and lower bitrate when compared to H.264 in all-intra mode and hence HEVC is better than H.264 in all-intra mode. Page 18

BD-PSNR (db) BD-Birate % The following figures 19 and 20 are the BD-Bitrate and BD-PSNR metric plots for the comparison of HEVC and H.264: 0-5 -10 % BD-Bitrate of HEVC and H.264-15 -20-25 -30-35 -40 RaceHorses_416x240_ 30.yuv BasketballDrill_832x48 0_50.yuv ParkScene_1920x1080 _24.yuv Figure 19: Comparison of HEVC and H.264 based on BD-Bitrate PeopleOnStreet_2560 x1600_30.yuv BD-Bitrate -21.7502-34.3692-28.1203-12.6178 Test Sequences From the above plot (Figure 19), it can be seen that main profile in HEVC has an average BD-bitrate savings of 24% over high profile in H.264 in all-intra mode. 2.5 BD-PSNR of HEVC and H.264 2 1.5 1 0.5 0 RaceHorses_416x240_30.yuv BasketballDrill_832x480 _50.yuv ParkScene_1920x1080_2 4.yuv PeopleOnStreet_2560x1 600_30.yuv BD-PSNR 1.509 1.9314 1.2485 0.9377 Test Sequences Figure 20: BD-PSNR Comparison From the above plot (Figure 20), it can be seen that main profile in HEVC has an average increase in BD-PSNR of 1.4 db over high profile in H.264 in all-intra mode. Page 19

Encoding time in Seconds Encoding time in seconds The following Figures 21, 22, 23 and 24 are the plots of Encoding time Vs Quantization parameter for various test sequences: Comparison of Encoding time between HEVC and H.264 for Race Horses Test Sequence 45 40 35 30 25 20 15 10 5 0 22 27 32 37 Quantization Parameter Encoding time in second for HEVC Encoding time in second for H.264 Figure 21: Comparison of encoding time in all-intra configuration for RaceHorses_416x240_30.yuv sequence 160 140 120 100 80 60 40 20 Comparison of Encoding time between HEVC and H.264 for Basket Ball Drill Test Sequence 0 22 27 32 37 Quantization Parameter Encoding time in second for HEVC Encoding time in second for H.264 Figure 22: Comparison of encoding time in all-intra configuration for BasketballDrill_832x480_50.yuv sequence From Figures 21 and 22, it can be seen that the encoding time for HEVC encoder is slightly lesser or equal to H.264 encoder in all-intra mode. Page 20

Encoding Time in Seconds Encoding Time in seconds Comparison of Encoding time between HEVC and H.264 for Park Scene Test Sequence 800 700 600 500 400 300 200 100 0 22 27 32 37 Quantization Parameter Encoding time in second for HEVC Encoding time in second for H.264 Figure 23: Comparison of encoding time in all-intra configuration for ParkScene_1920x1080_24.yuv sequence 1400 Comparison of Encoding time between HEVC and H.264 for People on Street Test Sequence 1200 1000 800 600 400 200 0 22 27 32 37 Quantization Parameter Encoding time in second for HEVC Encoding time in second for H.264 Figure 24: Comparison of encoding time in all-intra configuration for PeopleOnStreet_2560x1600_30.yuv sequence From Figures 23, 24, it can be seen that the encoding time for HEVC is significantly greater than H.264 for higher resolution sequences and indicates that HEVC encoder is more complex than H.264 encoder in all-intra mode. Page 21

10. References [1] I.E.G. Richardson, Video Codec Design: Developing Image and Video Compression Systems, Wiley, 2002. [2] K.R. Rao, D.N. Kim and J.J. Hwang, Video Coding Standards: AVS China, H.264/MPEG-4 Part 10, HEVC, VP6, DIRAC and VC-1, Springer, 2014. [3] I.E.G. Richardson, H.264 and MPEG-4 Video Compression, Hoboken, NJ, Wiley, 2003. [4] I.E.G. Richardson, The H.264 advanced video compression standard, 2 nd Edition, Hoboken, NJ, Wiley, 2010. [5] G. J. Sullivan et al, Overview of the High Efficiency Video Coding (HEVC) Standard, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 22, No. 12, pp. 1649-1668, Dec. 2012. [6] F. Bossen et al, HEVC Complexity and Implementation Analysis, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 22, No. 12, pp. 1685-1696, Dec. 2012. [7] J. R. Ohm et al, Comparison of the Coding Efficiency of Video Coding Standards Including High Efficiency Video Coding (HEVC), IEEE Transactions on Circuits and Systems for Video Technology, Vol. 22, No. 12, pp. 1669-1684, Dec. 2012. [8] T. Wiegand et al, Overview of the H.264/AVC Video Coding Standard, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 13, No. 7, pp. 560-576, July 2003. [9] D. Marpe et al, The H.264/MPEG4 advanced video coding standard and its applications, IEEE Communications Magazine, Vol. 44, pp. 134-143, Aug. 2006. [10] A. Puri et al, Video coding using the H.264/MPEG-4 AVC compression standard, Signal Processing: Image Communication, vol. 19, pp. 793-849, Oct. 2004. [11] X. Li et al, Rate-complexity-distortion evaluation for hybrid video coding, IEEE International Conference on Multimedia and Expo (ICME), pp. 685-690, July 2010. [12] B. Bross et al, High Efficiency Video Coding (HEVC) Text Specification Draft 10, Document JCTVC- L1003, ITU-T/ISO/IEC Joint Collaborative Team on Video Coding (JCT-VC), Mar. 2013 available on http://phenix.it-sudparis.eu/jct/doc_end_user/current_document.php?id=7243 [13] JVT Draft ITU-T recommendation and final draft international standard of joint video specification (ITU-T Rec. H.264-ISO/IEC 14496-10 AVC), March 2003, JVT-G050 available on http://ip.hhi.de/imagecom_g1/assets/pdfs/jvt-g050.pdf [14] J. Vanne et al, Comparative Rate-Distortion-Complexity Analysis of HEVC and AVC Video Codecs, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 22, No. 12, pp. 1885-1898, Dec. 2012. [15] G. Bjontegaard, Calculation of Average PSNR Differences between RD Curves, document VCEG- M33, ITU-T SG 16/Q 6, Austin, TX, Apr. 2001. Page 22

[16] D. Grois et al, Performance Comparison of H.265/ MPEG-HEVC, VP9, and H.264/ MPEG-AVC Encoders, available on: http://iphome.hhi.de/marpe/download/performance_hevc_vp9_x264_pcs_2013_preprint.pdf [17] HEVC tutorial by I.E.G. Richardson: http://www.vcodex.com/h265.html [18] H.264 tutorial by I.E.G. Richardson: https://www.vcodex.com/h264.html [19] HEVC white paper-ittiam Systems: http://www.ittiam.com/downloads/en/documentation.aspx [20] HEVC white paper-ateme: http://www.ateme.com/an-introduction-to-uhdtv-and-hevc [21] HEVC white paper-elemental Technologies: http://www.elementaltechnologies.com/lp/hevch265-demystified-white-paper [22] White paper on PSNR-NI: http://www.ni.com/white-paper/13306/en/ [23] Test Sequences: ftp://ftp.kw.bbc.co.uk/hevc/hm-11.0-anchors/bitstreams/ [24] Access to HM 13.0 Reference Software: http://hevc.hhi.fraunhofer.de/ [25] Access to JM 18.6 Reference Software: http://iphome.hhi.de/suehring/tml/ [26] Website on PSNR: http://en.wikipedia.org/wiki/peak_signal-to-noise_ratio [27] Website on SSIM: http://en.wikipedia.org/wiki/structural_similarity [28] Access the website http://www-ee.uta.edu/dip/courses/ee5359/ and refer to the project by S. Kulkarni on Transcoding from H.264/AVC to High Efficiency Video Coding (HEVC), University of Texas, Arlington, Spring 2013. [29] Access the website http://www-ee.uta.edu/dip/courses/ee5359/ and refer to the project by H. B. Jain on Comparative and performance analysis of HEVC and H.264 intra frame coding and JPEG 2000, University of Texas, Arlington, Spring 2013. [30] Access the website http://www-ee.uta.edu/dip/courses/ee5359/ and refer to the thesis by S. Vasudevan on Fast intra prediction and fast residual quad-tree encoding implementation in HEVC, University of Texas, Arlington, 2013. [31] C. Fogg, Suggested figures for the HEVC specification, ITU-T / ISO-IEC Document: JCTVC J0292r1, July 2012. [32] Z. Wang et al, Image Quality Assessment: From Error Visibility to Structural Similarity, IEEE Transactions on Image Processing, Vol. 13, No. 4, pp. 600-612, Apr. 2004. [33] G. Sullivan et al, Standardized Extensions of High Efficiency Video Coding (HEVC), IEEE Journal of selected topics in Signal Processing, Vol. 7, No. 6, pp. 1001-1016, Dec. 2013. [34] N. Ahmed, T. Natarajan and K.R. Rao, Discrete Cosine Transform, IEEE Transactions on Computers, Vol. C-23, pp. 90-93, Jan. 1974. [35] S.K. Kwon, A. Tamhankar and K.R. Rao, Overview of H.264/MPEG-4 Part 10, J. VCIR, Special issue on Emerging H.264/AVC Video Coding Standard, Vol. 17, pp 186-216, April 2006. Page 23