itu-t recommendation h.261. h.261 the recommendation h.261 describes the video coding and decoding...

36
ITU-T Recommendation H.261

Post on 22-Dec-2015

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

ITU-T Recommendation H.261

Page 2: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

H.261

The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual services (videophone, videoconference, etc.) at the rates of p×64 kbit/s, where p is in the range 1 to 30.

Page 3: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

H.261 Coder

DCT Q

InverseDCT

MotionCompensation

LoopFilter

Video in

Page 4: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Motion EstimationFor each 1616 macroblock (MB),

ME searches the best match in the referenced frame, and returns a motion vector MV = (X,Y).

Both X and Y have integer value not exceeding ±15.

Only the difference (residuals) between the MB and the best match is DCT encoded

Page 5: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Coding of Motion Vectors

DPCMExample:

MVD Code… …-7&25 0000 0111-6&26 0000 1001-5&27 0000 1011-4&28 0000 111-3&29 0001 1-2&30 0011-1 0110 11 0102&-30 00103&-29 0001 04&-28 0000 1105&-27 0000 10106&-26 0000 10007&-25 0000 0110… …

15 14 -13 12 … -1 -27 25 …

011 00001010 00000111 …

Page 6: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

112/04/19 H.261 VClab 2008 6

Frame n-1 Frame n• Scan Line Order

• Search Range

Scan Line Order, MB by MB

MV(0,0)MV(1,0)

Page 7: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Motion Compensation & Motion Estimation

MC is optional for each MB Only one MV for each MB The ME compares a 16x16 macroblock in the luminanc

e block (Y) throughout a small search area of the previpreviously transmitted frameously transmitted frame

Both horizontal and vertical components of these motion vectors have integer values not exceeding ±15integer values not exceeding ±15.

The MV is used for all 4 YY blocks. The MV for both CCbb and CCrr is derived by halving the component values of the MB MV.

The displacement with the smallest absolute macroblock difference, determined by the sum of the absolute values of the pel-to-pel difference throughout the block, is considered the MV for the particular MB

Page 8: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

112/04/19 H.261 VClab 2008 8

• Compare the difference between two blocks (one is in the current frame, and the other is in the reference frame)

-

Current blockCandidate block

| |p

p = 1, sum of absolute differencep = 2, mean square error

Page 9: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

QuantizationWithin a MB, the same quantizer is used for all

coefficient excepts the INTRA dc one# of quantizers is 1 for INTRA dc coefficient

and 31 for all other coefficients MB quantization factor, Q, sometimes termed

MQUANT:– C(u,v) = F(u,v) / 2Q if Q is odd– C(u,v) = (F(u,v) ±1)/2Q if Q is even (F>0 +, F<0-)

Quantization for INTRA dc term: – C = (F+4) / 8 with inverse F = 8C

=2,4, …, 62

Page 10: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Loop Filter (FIL)The filter is separable into one-

dimensional horizontal and vertical functions.

The function is non-recursive with coefficients of ¼, ½, ¼ except at block edges.

The function has coefficients of 0, 1, 0 at block edges.

The filter is switched on/off for all 6 blocks in a MB according to MTYPE.

×¼ ×½ ×¼

Page 11: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

H.261 Decoder

InverseDCT

MotionCompensation

LoopFilter

Intra

Inter

Page 12: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

H.261 Video FormatsVideo

FormatLuminance (Y) Chrominance(Cb, Cr)pixels/line lines/frame pixels/line lines/frame

CIF 352 288 176 144

QCIF 176 144 88 72

Y pixel

Cb, Cr pixel

Block boundary

Page 13: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Arrangement of H.261

1 2

3 4

5 6

7 8

9 10

11 12

176 176352

48

288

1

2

3

176

48

QCIF

CIF

Page 14: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Arrangements of H.261

1

2

3

176

144

QCIF picture

1 2 3 4 5 6 7 8 9 10 11

12 13 14 15 16 17 18 19 20 21 22

23 24 25 26 27 28 29 30 31 32 33

176

48

GOB (Group Of Block)

Y1 Y2

Y3 Y4U V8

88

8

16

16 MB (Macro Block)

Page 15: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Positioning of luminance and chrominance samples

Y pixel

Cb, Cr pixel

Block boundary

Page 16: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Data Structure of Compressed Bitstream in H.261

Picture Header

GOB data

… GOB data

PictureLayer

GOB Header

MB data

… MB data GOBLayer

MB Header

Block data

… Block data

MBLayer

TCOEFF … TCOEFF EOB Block LayerFixed Length Code

Variable Length Code

Page 17: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Structure of picture layer

• Picture start code (PSC) (20 bits)0000 0000 0000 0001 0000

• Temporal reference (TR) (5 bits)It is formed by incrementing its value in the p

reviously transmitted picture header by one plus the number of non-transmitted pictures since that last transmitted one. (Only the five LSBs used)

PSC TR PTYPE PEI PSPARE… PEI … GOB data

Page 18: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Structure of picture layer

• Type information (PTYPE) (6 bits)Bit 1 Split screen indicatorBit 2 Document camera indicator, “0” off, “1” on;Bit 3 Freeze picture release, “0” off, “1” on;Bit 4 Source format, “0” QCIF, “1” CIF;Bit 5 Optional still image model HI_RES, “0” on, “1” offBit 6 Sparewhere Bit 1 is MSB

• Extra insertion information (PEI) (1 bit)“1” signals the presence of the following optional data

field.

PSC TR PTYPE PEI PSPARE… PEI … GOB data

Page 19: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

GOB Layer

Group of blocks start code (GBSC) (16 bits)– 0000 0000 0000 0001 (if “0000”

followed, then it is treated as a PSC)Group number (GN) (4 bits)

– GN indicates the position of the group of blocks. 13, 14 and 15 are reserved for future use. 0 (0000) is used in the PSC.

GBSC GN GQUANT GEI GSPARE… GEI … MB data

Page 20: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

GOB Layer

Quantizer information (GQUANT) (5 bits)– The quantizer to be used in the GOB until

overridden by any subsequent MQUENT.

Extra insertion information (GEI) (1 bit)– “1” signals the presence of the following

optional data field.

Spare information (GSPARE) (0/8/16… bits)– If GEI = “1”, then the following 8-bits data is

GSPARE.

GBSC GN GQUANT GEI GSPARE… GEI … MB data

Page 21: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

MB Layer

Macroblock address(MBA) (Variable length: TABLE 1)– MBA indicates the position of a MB

within a GOB. It is the difference between the absolute addresses of the MB and the last transmitted MB.

Type information (MTYPE) (Variable length: TABLE 2)

MBA MTYPE MQUANT MVD CBP Block data

Page 22: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

MB Layer

Quantizer (MQUANT) (5 bits)– MQUANT is present only if so

indicated by MTYPE (1, 3, 6, 9).

MBA MTYPE MQUANT MVD CBP Block data

Page 23: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

MB Layer

Motion vector data (MVD) (Variable length: TABLE 3)– MVD is obtained from the MV (for the MB) by sub

tracting the vector of the preceding MB. The vector of the preceding MB is regarded as zero in the following three situations:

• 1) evaluating MVD for MB 1, 12, 23.• 2)evaluating MVD for MBs in which MBA does not repre

sent a difference of 1• 3) MTYPE of the previous MB was not MC.

– Only one of the pair will yield a MV falling within the permitted range.

MBA MTYPE MQUANT MVD CBP Block data

Page 24: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

MB Layer

Coded block pattern (CBP) (Variable length: TABLE 4)– CBP is present if indicated by MTYPE (2, 3, 5, 6, 8, 9).

The codeword gives a pattern number signifying those blocks in the MB for which at least one transform coefficient is transmitted.

– CBP = 32P1 + 16P2 + 8P3 + 4P4 + 2P5 + P6

where Pn = 1 if any coefficient is present for block n, else 0.

MBA MTYPE MQUANT MVD CBP Block data

1 2

3 45 6Y Cb Cr

Page 25: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Block Layer

Transform coefficients (TCOEFF) (Variable length: TABLE 5)– TCOEFF is always present for all six blocks in a

MB when MTYPE indicates INTRA. In other cases MTYPE and CBP signal which blocks have coefficient data transmitted for them.

– The most commonly occurring combination of successive zeros (RUN) and the following value (LEVEL) are encoded with variable length codes in TABLE 5. Other combinations of (RUN, LEVEL) are encoded with a 20-bit word consisting of 6 bits ESCAPE, 6 bits RUN and 8 bits LEVEL.

(Run, Level)

Page 26: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Block Layer

There are two code tables in TABLE 5:– 1) Being used for the first transmitted LEVEL in INT

ER, INTER+MC, and INTER+MC+FIL blocks. (EOB is not included).

– 2) Being used for all other LEVELs (EOB is included) except the first one in INTRA blocks which is fixed length coded with 8 bits.

Coefficients after the last non-zero one are not transmitted. EOB is always the last item in blocks for which coefficients are transmitted.

Page 27: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Structure of H.261 Bitstream

PSC TR PTYPE PEI PSPARE… PEI … GOB data

GBSC GN GQUANT GEI GSPARE… GEI … MB data

MBA MTYPE MQUANT MVD CBP Block data …

Page 28: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Coding of H.261 Bitstream

PSC TR PTYPE PEI PSPARE GOB Layer

GBSC GN GQUANT GEI GSPARE MB Layer

Picture Layer

GOB Layer

Page 29: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Coding of H.261 Bitstream

MBA MTYPE MQUANT

MB Layer

MVD CBP Block Layer

CBP

MVD

MBA stuffing

TCOEFF EOB

Fixed length

Variable length

Page 30: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

H.263

H.263 = (H.261) + (MPEG-like features)Compared to H.261

– More allowable picture formats– Half-pixel motion estimation, no loop filter– Different VLC tables at macroblock and block

levels– Four negotiable options

3~4 dB better PSNR than H.261 at <64 kbps

Page 31: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

H.263 Video Formats

Sub-CIF

QCIF CIF 4CIF 16CIF

Pels/line 128 176 352 704 1408

Lines 96 144 288 576 1152

Page 32: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Four Negotiable Options

Unrestricted Motion Vector: motion vectors can point outside the picture, -31.5 to 31.5 instead of –16 to 15.5

Advanced Prediction Mode: 8 8 motion vectors, overlapped block motion compensation, and motion vectors can point outside the picture

Syntax-based Arithmetic Coding (about 5% decreasing in bit-rate)

PB-frame

Page 33: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

H.263+ 12 Optional Modes

Annex D: New Unrestricted Motion Vector (mv range up to +/- 256)

Annex I: Advanced Intra CodingAnnex J: Deblocking FilterAnnex M: Improved PB-FrameAnnex O: Temporal, Spatial, and SNR Scalab

ilityAnnex P: Reference Picture ResamplingAnnex Q: Reduced Resolution Update

Page 34: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

H.263+ Optional Modes

Annex S: Alternative Inter VLC Annex I: Modified Quantization

Error ResilienceError ResilienceAnnex K: Slice Structured Annex R: Independent Segment

Decoding Annex N: Reference Picture Selection

Page 35: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Codec Implementation Issues

Fast algorithm for motion estimationFast algorithm for DCT/IDCTHuffman table implementationProgram design

– Program diagram– Memory assess (frame stores)– Register assignment– Program redundancy

Page 36: ITU-T Recommendation H.261. H.261  The Recommendation H.261 describes the video coding and decoding methods for the moving picture component of audiovisual

Supplemental Enhancement Information

Enhanced featuresPicture freeze and releaseTagging information

Snapshot Video segment start/end Progressive refinement start/end

Chroma keyCan be discarded by decoders that do not u

nderstand