CIS 679 MPEG r MPEG MPEG r MPEG











- Slides: 11

CIS 679: MPEG r MPEG

MPEG r MPEG: Motion Pictures Experts Group r Standard for encoding videos/movies/motion pictures r Evolving set of standards m MPEG-1, MPEG-2, MPEG-4 r Exploit motion prediction r Apply the similar techniques as JPEG to individual image

MPEG Compression Steps r Data preparation m Similar to JPEG r Data processing m Motion prediction m DCT r Quantization r Entropy encoding

Data Preparation r Subsample Chrominance signals m 4: 1: 1 in MPEG-1 m NTSC: Y=352*240, Cb=Cr=176*120 m PAL: Y=352*288, Cb=Cr=176*144 r Macroblocks m 16*16 samples (pixels) for the luminance component. m 8*8 samples (pixels) for the chrominance component.

Data Processing r Apply motion prediction at the Macroblock level m In most cases, predictive encoding only makes sense for parts of images and not for the whole image. r Motion prediction used to figure out where this macroblock may be in the next frame r Forward prediction m Prediction based on previous frames r Backward prediction m Prediction based on future frames r Bidirectional prediction m Prediction based on both previous and future frames

IPB Frames r I frames m m Independently coded and no temporal prediction Can start decoding once we have an I-frame r P Frames m m Forward predicted frames Based on previous I or P frames r B frames m Bi-directionally predicted frames, based on previous and following I and P frames r Group of Pictures (GOP): Set of frames between two I frames m IBBPBBPBBI or IPPPI, or II r MPEG decoders may have to buffer extra frames of data besides being displayed


DCT r Apply DCT on the 8*8 data blocks m DC coefficients m AC coefficients

Quantization r Apply Quantization on the frequency domain coefficients r Favor low frequency coefficients

Entropy Encoding r Convert 2 dimensional symbols into 1 dimensional series m Use zig-zag or vertical scans r Apply run-length coding on the 1 -D series r Apply Huffman coding

Conclusion r Successive frames may have significantly same data r MPEG exploits motion prediction m m Apply motion prediction at the Macroblock level I, P, and B frames r The standard allows the use of I-frame only, I and P frames only or I-, P- and B-frames. r More about MPEG……