study and comparison of h.264, avs- china and dirac - by jennie g. abraham ee5359 multimedia...
DESCRIPTION
Introduction What? - Video compression standards aiming at high quality - In general standards leave the implementation open and only standardize the syntax and the decoder. Optimization beyond the obvious Complexity reduction for implementation Who? - H.264 : ITU-T VCEG together with the ISO/IEC MPEG - AVS China : Audio Video Coding Workgroup of China - Dirac : BBC Why? - Different companies, different countries, different applications, royalty fees, better algorithmsTRANSCRIPT
Study and Comparison of H.264, AVS-China and Dirac
- by Jennie G. Abraham
EE5359 – Multimedia Processing, Fall 2009EE Dept., University of Texas at Arlington
Outline
Introduction Multimedia Network Home Media Ecosystem Motivation Project Detail Example project elements
Architecture Comparison Design Level Analysis Feature Comparison Algorithmic Comparison Performance Comparison
ConclusionsReferences
Introduction
What?- Video compression standards aiming at high quality - In general standards leave the implementation open and only
standardize the syntax and the decoder. Optimization beyond the obvious Complexity reduction for implementation
Who?- H.264 : ITU-T VCEG together with the ISO/IEC MPEG- AVS China : Audio Video Coding Workgroup of China- Dirac : BBC
Why?- Different companies, different countries, different applications, royalty
fees, better algorithms
Motivation
Familiarize with the codecs : H.264, AVS China and Dirac
Availability of the codecs in MPL @ UTA
Scope of Video Standard
Figure 1: Video encoding / decoding process
Predict Transform Quantize Encode
DecodeInverse-Quantization
Inverse transform
Reconstruct
VIDEO ENCODER
VIDEO DECODERBitstream as defined by the standard
Scope of the standard
Video Output
Video Source
Video Compression
Figure 2: General block diagram of a block-based video codec [33]
Intra Coding
…. within the same frame
Figure 3: Intra coding a macroblock using previously coded pixels from the same block
Inter Coding
... “Past” frames ...(one or more previously coded frames) Current frame “Future” frame
PredictPredict
MB 1
MB 2
Predict
…. using number past and future frames
Figure 4: Inter coding a macroblock using past and/or future frames
Modes
Figure 5: Example of different modes used in AVS-China part 2 [33]
Residual Block
Figure 6: Calculation of residual information in a general block-based video codec [33]
Transform and Quantization
residual block
Transform Quantize
8x8 Image Block Coefficients
Figure 7: Residual block is transformed and quantized
Entropy Coding
Figure 8:The Transformed and quantized block zigzag scanned and entropy coded
Inverse Transform
Reconstructed residual block
At the decoder side …..
Re-scaled Coefficients
Figure 9:The coefficients are re-scaled and inverse transformed to get back the residual information
Reconstruction at the Decoder
Form Prediction
Predicted MB
Decoded residual MB
Reconstructed MB
Previously decoded frames
Current decoded frames
Inter Intra
Figure 10: Frame reconstruction at the decoder
Study of H.264 Architecture
Figure 11: H.264 encoder and decoder [21]
Study of AVS-China Architecture
Figure 12 :AVS China Codec [37]
Study of Dirac Architecture
Figure 13 : Dirac codec architecture [1]
Profiles in H.264
Profiles in AVS-China
Profiles Key applicationsJizhun profile
(base)Television
broadcasting, HDTV, etc.
Jiben profile(basic)
Mobility applications, etc.
Shenzhan profile
(extended)
Video surveillance, etc.
Jiaqiang profile
(enhanced)
Multimedia entertainment, etc.
Algorithmic ComparisonAlgorithmic Element MPEG-4 AVC
(H.264)Dirac AVS China
Part 2
Intra Prediction 4x4 spatial, 16x16 spatialI-PCM
4x4 spatial 8×8 block based Intra Prediction
Picture coding type Frame, FieldPicture AFF, MB AFF
Frame Frame
Motion compensation block size
16×16, 16×8, 8×16, 8×8, 8×4, 4×8, 4×4
4×4 16×16, 16×8, 8×16, 8×8
Motion vector Precision Full pel, Half pel. Quarter pel 1/8 pel 1/4 pel
P frame type Single referenceMultiple reference
Single reference,Multiple reference
Single and multiple reference (maximum of 2 reference
frames)
B frame type One reference each way,Multiple reference,
Direct & spatial direct weighted prediction.
One reference each way,Multiple reference
One reference each way, Multiple reference.
Direct and symmetrical mode.
In loop filters De-blocking None De-blocking filter.
Entropy coding CAVLC,CABAC Arithmetic coding 2D variable length coding.
Transform 4×4 integer DCT, 8×8 integer DCT
4×4 wavelet transform 8×8 DCT
Other Quantization scaling matrices. Quantization scaling matrices.
Quantization scaling matrices.
Performance Comparison Results
Harbour -HDTV Sequence :1280 x 720pBitrate vs PSNR
30313233343536373839404142434445
0 10000 20000 30000 40000
K bits per sec
PSN
R (d
B)
AVS-JizhunH.264-HighDirac
Results
Harbour - HDTV Sequence : 1280 x 720p Bitrate vs MSE
05
101520253035
0 10000 20000 30000 40000
K bits per sec
MSE
AVS-JizhunH.264 - HighDirac
Results
Bus - SDTV Sequence : 720 x 480i Bitrate vs PSNR
30
32
34
36
38
40
42
0 2000 4000 6000 8000 10000
K bits per sec
PSN
R (d
B)
AVS-JizhunH.264 - High
Results
Bus - SDTV Sequence : 720 x 480i Bitrate vs MSE
0
5
10
15
20
25
30
35
40
45
50
0 2000 4000 6000 8000 10000
K bits per sec
MSE
AVS-JizhunH.264-High
Outcome
The project helped in increasing familiarity in working with these codecs.
The experimental results gave an insight into the efficiency of these codecs compared to each other
The different aspects of simulation of each codec such as the following was learned and understood Modes of Configuration Modification of Parameters Input sequence specifications Analyze the codec output
Efficient use of time and re-use of knowledge
References
DIRAC:[1] T. Borer, and T. Davies, “Dirac video compression using open technology”, BBC EBU Technical Review, July 2005[2] BBC Research on Dirac: http://www.bbc.co.uk/rd/projects/dirac/index.shtml[3] The Dirac web page: http://dirac.sourceforge.net[4] T. Davies, “The Dirac Algorithm”: http://dirac.sourceforge.net/documentation/algorithm/, 2005.[5] Dirac developer support: Overlapped block-based motion compensation: http://dirac.sourceforge.net/documentation/algorithm/algorithm/toc.htm[6] “Dirac Pro to bolster BBC HD links”:
http://www.broadcastnow.co.uk/news/multi-platform/news/dirac-pro-to-bolster-bbc-hd-links/1732462.article[7] Dirac software and source code: http://diracvideo.org/download/dirac-research/[8] Dirac video codec - A programmer's guide:http://dirac.sourceforge.net/documentation/code/programmers_guide/toc.htm[9] Daubechies wavelet: http://en.wikipedia.org/wiki/Daubechies_wavelet[10] Daubechies wavelet filter design: http://cnx.org/content/m11159/latest/[11] Dirac developer support: Wavelet transform:
http://dirac.sourceforge.net/documentation/algorithm/algorithm/wlt_transform.xht[12] Dirac developer support: RDO motion estimation metric:http://dirac.sourceforge.net/documentation/algorithm/algorithm/rdo_mot_est.xht[13] A. Ravi and K.R. Rao, “Performance analysis and comparison of the Dirac video codec with H.264/ MPEG-4 Part
10 AVC", IJWMIP, Jan. 2010.
References
H.264:[14] T.Wiegand, et al “Overview of the H.264/AVC video coding standard”, IEEE Trans. on Circuits and Systems
for Video Technology, Vol.13, pp 560-576, July 2003.[15] T. Wiegand and G. J. Sullivan, “The H.264 video coding standard”, IEEE Signal Processing Magazine, vol.
24, pp. 148-153, March 2007.[16] D. Marpe, T. Wiegand and G. J. Sullivan, “The H.264/MPEG-4 AVC standard and its applications”, IEEE
Communications Magazine, vol. 44, pp. 134-143, Aug. 2006.[17] S.K.Kwon, A.Tamhankar and K.R.Rao, “Overview of H.264 / MPEG-4 Part 10” J. Visual Communication and
Image Representation, Vol 17, pp.186-216, April 2006. [18] A. Puri, X. Chen and A. Luthra, “Video coding using the H.264/MPEG-4 AVC compression standard”, Signal
Processing: Image Communication, vol. 19, pp. 793-849, Oct. 2004[19] H.264/MPEG-4 AVC: http://en.wikipedia.org/wiki/H.264[20] M.Fieldler, “Implementation of basic H.264/AVC decoder”, seminar paper at Chemnitz University of
Technology, June 2004[21] H.264 encoder and decoder: http://www.adalta.it/Pages/407/266881_266881.jpg[22] R. Schäfer, T. Wiegand and H. Schwarz, “The emerging H.264/AVC standard”, EBU Technical Review, Jan.
2003.[23] H.264 reference software download : http://iphome.hhi.de/suehring/tml/[24] D. Marpe, T. Wiegand, and S. Gordon, "H.264/mpeg4-avc fidelity range extensions: tools, profiles,
performance, and application areas," IEEE International Conference on Image Processing, vol. 1, pp. I-593-6, 2005.
[25] S. Saponara, et al, "The JVT advanced video coding standard: complexity and performance analysis on a tool-by-tool basis," in Packet Video Workshop, Nantes, France, April 2003.
References
VC-1:[26] VC-1 technical overview -
http://www.microsoft.com/windows/windowsmedia/howto/articles/vc1techoverview.aspx[27] Microsoft Windows Media: http://www.microsoft.com/windows/windowsmedia[28] http://en.wikipedia.org/wiki/VC-1[29] S Srinivasan, et al, “Windows media video 9: overview and applications”, Signal Processing: Image
Communication, Vol. 19, Issue 9, pp. 851-875, Oct. 2004.
AVS: [31] AVS Video Expert Group, “Information technology – Advanced coding of audio and video – Part 2: Video
(AVS1-P2 JQP FCD 1.0),” Audio Video Coding Standard Group of China (AVS), Doc. AVS-N1538, Sep. 2008.
[32] AVS Video Expert Group, “Information technology – Advanced coding of audio and video – Part 3: Audio,” Audio Video Coding Standard Group of China (AVS), Doc. AVS-N1551, Sep. 2008.
[33] L. Yu et al., “Overview of AVS-Video: Tools, performance and complexity,” SPIE VCIP, vol. 5960, pp. 596021-1~ 596021-12, Beijing, China, July 2005.
[34] L. Fan, S Ma and F Wu, “Overview of AVS video standard,” IEEE Int’l Conf. on Multimedia and Expo, ICME '04, vol. 1, pp. 423–426, Taipei, Taiwan, June 2004.
[35] W Gao et al., “AVS – The Chinese next-generation video coding standard,” National Association of Broadcasters, Las Vegas, 2004.
[36] Special issue on 'AVS and its Applications' Signal Processing: Image Communication, vol. 24, pp. 245-344, April 2009.
[37] AVS China software : ftp://159.226.42.57/public/avs_doc/avs_software
References
PERFORMANCE COMPARISON:[38] K. Onthriar, K. K. Loo and Z. Xue, “Performance comparison of emerging Dirac video codec with H.264/AVC”,
IEEE International Conference on Digital Telecommunications, Vol. 06, Page: 22, Issue: 29-31, Aug. 2006. [39] X. Wang and D. Zhao "Performance comparison of AVS and H.264/AVC video coding standards" J. of computer science and technology, Vol. 21, No. 3, pp. 310-314, May 2006.[40] Comparison of H.264 and VC-1:http://en.wikipedia.org/wiki/Comparison_of_H.264_and_VC-1[41] A. A. Ramirez, et al. "MPEG-4 AVC/H.264 and VC-1 codecs comparison used in IPTV video streaming
technology," Electronics, Robotics and Automotive Mechanics Conference, pp.122-126, 2008.[42] Comparison between AVC/H.264, VC-1 and MPEG-2 - http://www.ebu.ch/en/technical/trev/trev_302-
sunna.pdf[43] H. Kalva and J.B Lee, “The VC-1 and H.264 video compression standards for broadband video Services”,
Springer, 2008SSIM:[44] Z. Wang, et al “Image quality assessment: From error visibility to structural similarity”, IEEE Trans. on Image
Processing, vol. 13, pp. 600-612, Apr. 2004. [45] SSIM index for image quality assessment: http://www.ece.uwaterloo.ca/~z70wang/research/ssim/[46] Z. Wang, et al “Multi-scale structural similarity for image quality assessment,” IEEE Asilomar Conference on
Signals, Systems and Computers, Vol.2 , pp. 1398 - 1402 Nov. 2003.
[47] SSIM: http://en.wikipedia.org/wiki/SSIMVIDEO TEST SEQUENCES:[48] Video test sequences (YUV 4:2:0): http://trace.eas.asu.edu/yuv/index.html[49] Video test sequences ITU601: http://www.cipr.rpi.edu/resource/sequences/itu601.html BOOKS:[50] I. Richardson, “ The H.264 advanced video compression standard”, Hoboken, NJ: Wiley, 2010