DOC PREVIEW
UT Arlington EE 5359 - EE 5359 Final Report

This preview shows page 1-2-3-18-19-36-37-38 out of 38 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 38 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Final Report-EE5359 Submitted by: Keyur Shah (1000658106) [email protected] Under guidance of Dr. K.R.Rao University of Texas, Arlington Electrical DepartmentAbstract: VP8 [17] is established by On2 Technologies [24] now acquired by Google. It is successor of VP7 codec. It is being used by most of the web browsers these days. They (On2 Technologies) claim that VP8 is very good for low bit rate applications thus mainly useful in video conferencing. This project aims to provide an in-depth view of VP8, beginning from the architecture of the codec to the features it offers and various data formats it supports. The project mainly focuses on providing an understanding of the VP8 encoder and decoder, while detailing on integer transform, intra and inter-picture prediction, in-loop de-blocking filter and quantization. A performance comparison is made with the most popular standard of all ‗H.264‘ [13] under specific testing conditions. The experimental results are tabulated and plotted and appropriate conclusions are drawn.Motivation: • H.264 is the most widely-accepted video standard and has spawned a huge amount of software that implements it viz., JM, X264, Intel IPP and Ffmpeg. [3] • H.264 is used in various applications like video broadcasting, video streaming, video conferencing, HDTV, Blu-ray Discs. • VP8 is an open video compression format released by Google, originally developed by On2 Technologies. [25] • VP8 offers significant gains in compression performance • VP8 is less compute intensive to decode. [8] • VP8 is used as the codec for HTML5, video playback in Internet Explorer 9, Mozilla, Opera and Google Chrome. Adobe Flash Player also supports VP8 playback. [17]Goal of the Project (Comparison of VP8 and H.264): • Feature (parametric) comparison: 1) Prediction schemes 2) Transform 3) In-loop filter 4) Entropy coding • Performance comparison: 1) Bit rate 2) PSNR 3) MSE 4) SSIM [26] 5) Compression ratio 6) Complexity (encoding time and decoding time)Introduction: H.264: • One of the most widely accepted video coding standards. • Block-oriented motion-estimation based codec. • Higher coding efficiency than previous standards, MPEG-1,2,4 part 2, H.261 and H.263. [28] • Simple syntax specifications. • Seamless integration of video coding into all current protocols. • More error robustness. VP8: • Inheriting many great innovations from its predecessors (VP7 and VP6) such as golden frames, processor-adaptive real-time encoding and a low-complexity loop filter, VP8 adds more than fifty new techniques to achieve its goal of outstanding quality at low bitrates, with very low complexity. [6] • VP8 specifies exact values for reconstructed pixels. This greatly facilitates the verification of the correctness of a decoder implementation as well as avoiding difficult-to-predict visual incongruities between such implementations. [6] • VP8 offers both VBR (variable bitrate) and CBR (constant bitrate) encoding options. CBR attempts to keep the bitrate more constant, i.e. the codec tries to remain within given buffering constraints. If the user sets CBR mode but gives very loose buffer restrictions, then the result will start to resemble VBR. • VP8 has been designed with a wide range of machines in mind, from 60 MHz ARM9 processors to today's highly parallel multi-core processors. It encodes in real-time on low-end machines, and takes fewer cycles to decode than other leading algorithms. [8]Fig 2: Parallel processing in VP8. [8] Fig. 1: H.264 encoder block diagram. [3] Fig. 2: H.264 decoder block diagram. [3]Parametric Comparison (VP8 and H.264): 1) Intra Prediction: Intra prediction is used to guess the content of a block without referring to other frames. • H.264 has three Intra-Prediction modes [3] 1) 4x4 luma prediction modes: 9 prediction modes- 8 Directional predictions and 1 DC prediction (vertical : 0, horizontal : 1, DC : 2, diagonal down left : 3, diagonal down right : 4, vertical right : 5, horizontal down : 6, vertical left : 7, horizontal up : 8) Fig 6: 4X4 luma prediction modes. [3] 2) 16x16 luma prediction modes: four prediction modes (vertical : 0, horizontal : 1, DC : 2, plane : 3) 3) 8x8 chroma prediction modes: Similar to 4x4 luma with low pass filtering of the predictor to improve prediction performance. Fig. 7: 8X8 chroma prediction mode. [3]• VP8 has four Intra-Prediction modes. [22] Fig 8: VP8 intra prediction modes. [22] 1) H_PRED (horizontal prediction): Fills each column of the block with a copy of the left column, L. 2) V_PRED (vertical prediction): Fills each row of the block with a copy of the above row, A. 3) DC_PRED (DC prediction): Fills the block with a single value using the average of the pixels in the row above A and the column to the left of L. 4) TM_PRED (TrueMotion prediction): A mode that gets its name from a compression technique developed by On2 Technologies. In addition to the row A and column L, TM_PRED uses the pixel C above and to the left of the block. Horizontal differences between pixels in A (starting from C) are propagated using the pixels from L to start each row. (The equation is as follows: Xij = Li + Aj - C [i, j=0, 1, 2, 3])2) Inter Prediction: Inter prediction is used to guess the content of a block by referring to past and/or future frames. There are two primary components to inter prediction: reference frames and motion vectors. The reference frame is a past frame from which to grab pixels from and the motion vectors index an offset into that frame. • H.264 has 3 frames: I-frames, P-frames and B-frames [3] 1) The first image in a video sequence is always an I-frame. 2) A P-frame, which stands for predictive inter frame. 3) A B-frame, or bi-predictive inter frame. [6] • VP8 has two frames common with H.264, I-frames and P-frame but B-frames are missing here, instead there are altref frames (alternative reference). • VP8 also has alternate prediction frames, called golden frames. Fig 9: Use of golden frames for loss of data in VP8. [22]3) Transform and Quantization: A) Transform [7] • The general method for transformation in both H.264 and


View Full Document

UT Arlington EE 5359 - EE 5359 Final Report

Documents in this Course
JPEG 2000

JPEG 2000

27 pages

MPEG-II

MPEG-II

45 pages

MATLAB

MATLAB

22 pages

AVS China

AVS China

22 pages

Load more
Download EE 5359 Final Report
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view EE 5359 Final Report and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view EE 5359 Final Report 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?