08.01.2013 Views

DigitalVideoAndHDTVAlgorithmsAndInterfaces.pdf

DigitalVideoAndHDTVAlgorithmsAndInterfaces.pdf

DigitalVideoAndHDTVAlgorithmsAndInterfaces.pdf

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

structure,” where slices cover the picture with no gaps<br />

or overlaps. The slice header contains the quantizer scale<br />

code. The slice serves several purposes. First, the slice is<br />

the smallest unit of resynchronization in case of uncorrected<br />

data transmission error. Second, the slice is the<br />

unit of differential coding of intra-macroblock DC<br />

terms. Third, the slice is the unit for differential coding<br />

of nonintra motion vectors: The first macroblock of<br />

a slice has motion vectors coded absolutely, and motion<br />

vectors for subsequent macroblocks are coded in terms<br />

of successive differences from that.<br />

Macroblock layer The macroblock is MPEG’s unit of motion prediction.<br />

A macroblock contains an indication of the macroblock<br />

type (intra, forward predicted, backward-predicted, or<br />

bidirectionally predicted); a quantizer scale code; 0, 1, or<br />

2 forward motion vectors; and 0, 1, or 2 backward<br />

motion vectors. The coded block pattern flags provide<br />

a compact way to represent blocks that are not coded<br />

(owing to being adequately predicted without the need<br />

for prediction error).<br />

Block layer Each block is represented in the bitstream by VLEcoded<br />

DCT coefficients – a differentially encoded DC<br />

coefficient, and some number of AC coefficients. Each<br />

coded block’s data is terminated by a 4-bit end of block<br />

(EOB).<br />

Transport<br />

The syntax elements of an MPEG video or audio<br />

bitstream are serialized to form an elementary stream<br />

(ES). MPEG-2 defines a mechanism to divide an ES into<br />

packets, forming a packetized elementary stream (PES).<br />

Each PES pack header contains system-level clock information,<br />

packet priority, packet sequence numbering,<br />

and (optionally) encryption information.<br />

An MPEG-2 program stream (PS) is intended for storage<br />

of a single program on relatively error-free media, such<br />

as DVD. PS packets are variable-length; each packet can<br />

be as long as 64 KB, though packets of 1 KB or 2 KB are<br />

typical. Synchronization is achieved through a system<br />

clock reference (SCR).<br />

CHAPTER 40 MPEG-2 VIDEO COMPRESSION 495

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!