`
`ITU-T
`
`TELECOMMUNICATION
`STANDARDIZATION SECTOR
`OF ITU
`
`H.263
`
`(02/98)
`
`SERIES H: AUDIOVISUAL AND MULTIMEDIA SYSTEMS
`Infrastructure of audiovisual services – Coding of moving
`video
`
`Video coding for low bit rate communication
`
`ITU-T Recommendation H.263
`
`(Previously CCITT Recommendation)
`
`AMAZON-1009
`7,532,808
`
`
`
`ITU-T H-SERIES RECOMMENDATIONS
`AUDIOVISUAL AND MULTIMEDIA SYSTEMS
`
`Characteristics of transmission channels used for other than telephone purposes
`Use of telephone-type circuits for voice-frequency telegraphy
`Telephone circuits or cables used for various types of telegraph transmission or
`simultaneous transmission
`Telephone-type circuits used for facsimile telegraphy
`Characteristics of data signals
`CHARACTERISTICS OF VISUAL TELEPHONE SYSTEMS
`INFRASTRUCTURE OF AUDIOVISUAL SERVICES
`General
`Transmission multiplexing and synchronization
`Systems aspects
`Communication procedures
`Coding of moving video
`Related systems aspects
`Systems and terminal equipment for audiovisual services
`
`H.10–H.19
`H.20–H.29
`H.30–H.39
`
`H.40–H.49
`H.50–H.99
`H.100–H.199
`
`H.200–H.219
`H.220–H.229
`H.230–H.239
`H.240–H.259
`H.260–H.279
`H.280–H.299
`H.300–H.399
`
`For further details, please refer to ITU-T List of Recommendations.
`
`
`
`ITU-T RECOMMENDATION H.263
`
`VIDEO CODING FOR LOW BIT RATE COMMUNICATION
`
`Summary
`
`This Recommendation specifies a coded representation that can be used for compressing the moving
`picture component of audio-visual services at low bit rates. The basic configuration of the video
`source coding algorithm is based on Recommendation H.261 and is a hybrid of inter-picture
`prediction to utilize temporal redundancy and transform coding of the remaining signal to reduce
`spatial redundancy. The source coder can operate on five standardized video source formats:
`sub-QCIF, QCIF, CIF, 4CIF and 16CIF, and can also operate using a broad range of custom video
`formats.
`
`The decoder has motion compensation capability, allowing optional incorporation of this technique
`in the coder. Half pixel precision is used for the motion compensation, as opposed to
`Recommendation H.261 where full pixel precision and a loopfilter are used. Variable length coding
`is used for the symbols to be transmitted.
`
`In addition to the basic video source coding algorithm, sixteen negotiable coding options are
`included for improved compression performance and the support of additional capabilities.
`Additional supplemental information may also be included in the bitstream for enhanced display
`capability and for external usage.
`
`Source
`ITU-T Recommendation H.263 was revised by ITU-T Study Group 16 (1997-2000) and was
`approved under the WTSC Resolution No. 1 procedure on the 6th of February 1998.
`
`
`
`FOREWORD
`
`ITU (International Telecommunication Union) is the United Nations Specialized Agency in the field of
`telecommunications. The ITU Telecommunication Standardization Sector (ITU-T) is a permanent organ of
`the ITU. The ITU-T is responsible for studying technical, operating and tariff questions and issuing
`Recommendations on them with a view to standardizing telecommunications on a worldwide basis.
`
`The World Telecommunication Standardization Conference (WTSC), which meets every four years,
`establishes the topics for study by the ITU-T Study Groups which, in their turn, produce Recommendations
`on these topics.
`
`The approval of Recommendations by the Members of the ITU-T is covered by the procedure laid down in
`WTSC Resolution No. 1.
`
`In some areas of information technology which fall within ITU-T’s purview, the necessary standards are
`prepared on a collaborative basis with ISO and IEC.
`
`In this Recommendation, the expression "Administration" is used for conciseness to indicate both a
`telecommunication administration and a recognized operating agency.
`
`NOTE
`
`INTELLECTUAL PROPERTY RIGHTS
`
`The ITU draws attention to the possibility that the practice or implementation of this Recommendation may
`involve the use of a claimed Intellectual Property Right. The ITU takes no position concerning the evidence,
`validity or applicability of claimed Intellectual Property Rights, whether asserted by ITU members or others
`outside of the Recommendation development process.
`
`As of the date of approval of this Recommendation, the ITU had received notice of intellectual property,
`protected by patents, which may be required to implement this Recommendation. However, implementors are
`cautioned that this may not represent the latest information and are therefore strongly urged to consult the
`TSB patent database.
`
`All rights reserved. No part of this publication may be reproduced or utilized in any form or by any means,
`electronic or mechanical, including photocopying and microfilm, without permission in writing from the ITU.
`
` ITU 1998
`
`ii
`
`Recommendation H.263 (02/98)
`
`ª
`
`
`1
`
`2
`
`3
`
`3.1
`
`3.2
`
`3.3
`
`3.4
`
`3.5
`
`3.6
`
`3.7
`
`3.8
`
`3.9
`
`4
`
`4.1
`
`4.2
`
`CONTENTS
`
`Page
`
`Scope ..........................................................................................................................
`
`References ..................................................................................................................
`
`Brief specification ......................................................................................................
`
`Video input and output...............................................................................................
`
`Digital output and input..............................................................................................
`
`Sampling frequency....................................................................................................
`
`Source coding algorithm ............................................................................................
`3.4.1 Continuous Presence Multipoint and Video Multiplex mode.......................
`3.4.2 Unrestricted Motion Vector mode ................................................................
`3.4.3
`Syntax-based Arithmetic Coding mode ........................................................
`3.4.4 Advanced Prediction mode ...........................................................................
`3.4.5
`PB-frames mode............................................................................................
`3.4.6
`Forward Error Correction..............................................................................
`3.4.7 Advanced INTRA Coding mode...................................................................
`3.4.8 Deblocking Filter mode.................................................................................
`3.4.9
`Slice Structured mode ...................................................................................
`3.4.10 Supplemental enhancement information.......................................................
`3.4.11 Improved PB-frames mode ...........................................................................
`3.4.12 Reference Picture Selection mode ................................................................
`3.4.13 Temporal, SNR and Spatial Scalability mode...............................................
`3.4.14 Reference Picture Resampling mode ............................................................
`3.4.15 Reduced-Resolution Update mode................................................................
`3.4.16 Independent Segment Decoding mode..........................................................
`3.4.17 Alternative INTER VLC mode .....................................................................
`3.4.18 Modified Quantization mode ........................................................................
`
`Bit rate ........................................................................................................................
`
`Buffering ....................................................................................................................
`
`Symmetry of transmission..........................................................................................
`
`Error handling.............................................................................................................
`
`Multipoint operation...................................................................................................
`
`Source coder...............................................................................................................
`
`Source format .............................................................................................................
`
`1
`
`1
`
`2
`
`2
`
`2
`
`2
`
`2
`3
`3
`3
`3
`3
`3
`4
`4
`4
`4
`4
`4
`5
`5
`5
`5
`5
`5
`
`6
`
`6
`
`6
`
`6
`
`7
`
`7
`
`7
`
`Video source coding algorithm ..................................................................................
`4.2.1 GOBs, slices, macroblocks and blocks .........................................................
`4.2.2
`Prediction ......................................................................................................
`
`9
`9
`11
`
`Recommendation H.263 (02/98)
`
`iii
`
`
`
`4.3
`
`4.4
`
`4.5
`
`5
`
`5.1
`
`4.2.3 Motion compensation....................................................................................
`4.2.4 Quantization ..................................................................................................
`
`Coding control............................................................................................................
`
`Forced updating..........................................................................................................
`
`Byte alignment of start codes .....................................................................................
`
`Syntax and semantics .................................................................................................
`
`Page
`12
`12
`
`13
`
`13
`
`13
`
`13
`
`22
`Picture layer................................................................................................................
`22
`5.1.1 Picture Start Code (PSC) (22 bits) ................................................................
`23
`5.1.2 Temporal Reference (TR) (8 bits).................................................................
`23
`5.1.3 Type Information (PTYPE) (Variable Length).............................................
`24
`5.1.4 Plus PTYPE (PLUSPTYPE) (Variable Length) ...........................................
`27
`5.1.5 Custom Picture Format (CPFMT) (23 bits) ..................................................
`28
`5.1.6 Extended Pixel Aspect Ratio (EPAR) (16 bits) ............................................
`28
`5.1.7 Custom Picture Clock Frequency Code (CPCFC) (8 bits)............................
`28
`5.1.8 Extended Temporal Reference (ETR) (2 bits) ..............................................
`29
`5.1.9 Unlimited Unrestricted Motion Vectors Indicator (UUI) (Variable length).
`29
`5.1.10 Slice Structured Submode bits (SSS) (2 bits) ...............................................
`29
`5.1.11 Enhancement Layer Number (ELNUM) (4 bits)...........................................
`29
`5.1.12 Reference Layer Number (RLNUM) (4 bits)................................................
`29
`5.1.13 Reference Picture Selection Mode Flags (RPSMF) (3 bits) .........................
`30
`5.1.14 Temporal Reference for Prediction Indication (TRPI) (1 bit).......................
`30
`5.1.15 Temporal Reference for Prediction (TRP) (10 bits)......................................
`30
`5.1.16 Back-Channel message Indication (BCI) (Variable length)..........................
`30
`5.1.17 Back-Channel Message (BCM) (Variable length)........................................
`30
`5.1.18 Reference Picture Resampling Parameters (RPRP) (Variable length)..........
`30
`5.1.19 Quantizer Information (PQUANT) (5 bits)...................................................
`31
`5.1.20 Continuous Presence Multipoint and Video Multiplex (CPM) (1 bit)..........
`31
`5.1.21 Picture Sub-Bitstream Indicator (PSBI) (2 bits)............................................
`5.1.22 Temporal Reference for B-pictures in PB-frames (TRB) (3/5 bits)...............
`31
`5.1.23 Quantization information for B-pictures in PB-frames (DBQUANT) (2 bits) 31
`5.1.24 Extra Insertion Information (PEI) (1 bit) ......................................................
`31
`5.1.25 Supplemental Enhancement Information (PSUPP) (0/8/16 ... bits)..............
`31
`5.1.26 Stuffing (ESTUF) (Variable length) .............................................................
`32
`5.1.27 End Of Sequence (EOS) (22 bits) .................................................................
`32
`5.1.28 Stuffing (PSTUF) (Variable length)..............................................................
`32
`
`5.2
`
`Group of Blocks Layer...............................................................................................
`5.2.1 Stuffing (GSTUF) (Variable length).............................................................
`
`32
`32
`
`iv
`
`Recommendation H.263 (02/98)
`
`
`
`5.2.2 Group of Block Start Code (GBSC) (17 bits) ...............................................
`5.2.3 Group Number (GN) (5 bits).........................................................................
`5.2.4 GOB Sub-Bitstream Indicator (GSBI) (2 bits)..............................................
`5.2.5 GOB Frame ID (GFID) (2 bits).....................................................................
`5.2.6 Quantizer Information (GQUANT) (5 bits)..................................................
`
`Macroblock layer........................................................................................................
`5.3.1 Coded macroblock indication (COD) (1 bit) ................................................
`5.3.2 Macroblock type & Coded Block Pattern for Chrominance (MCBPC)
`(Variable length) ...........................................................................................
`5.3.3 Macroblock mode for B-blocks (MODB) (Variable length).........................
`5.3.4 Coded Block Pattern for B-blocks (CBPB) (6 bits)......................................
`5.3.5 Coded Block Pattern for luminance (CBPY) (Variable length)....................
`5.3.6 Quantizer Information (DQUANT) (2 bits/Variable Length).......................
`5.3.7 Motion Vector Data (MVD) (Variable length) .............................................
`5.3.8 Motion Vector Data (MVD2-4) (Variable length)..........................................
`5.3.9 Motion Vector Data for B-macroblock (MVDB) (Variable length).............
`
`Block layer..................................................................................................................
`5.4.1 DC coefficient for INTRA blocks (INTRADC) (8 bits)...............................
`5.4.2
`Transform Coefficient (TCOEF) (Variable length) ......................................
`
`Decoding process .......................................................................................................
`
`Motion compensation.................................................................................................
`6.1.1 Differential motion vectors ...........................................................................
`6.1.2
`Interpolation for subpixel prediction.............................................................
`
`Coefficients decoding.................................................................................................
`6.2.1
`Inverse quantization ......................................................................................
`6.2.2 Clipping of reconstruction levels ..................................................................
`6.2.3
`Zigzag positioning.........................................................................................
`6.2.4
`Inverse transform...........................................................................................
`
`Reconstruction of blocks............................................................................................
`6.3.1
`Summation ....................................................................................................
`6.3.2 Clipping.........................................................................................................
`
`5.3
`
`5.4
`
`6
`
`6.1
`
`6.2
`
`6.3
`
`Annex A – Inverse transform accuracy specification..............................................................
`
`Annex B – Hypothetical Reference Decoder...........................................................................
`
`Page
`33
`33
`33
`33
`33
`
`33
`34
`
`34
`37
`37
`37
`37
`38
`40
`40
`
`40
`41
`41
`
`44
`
`44
`44
`46
`
`46
`46
`46
`47
`47
`
`47
`47
`48
`
`48
`
`49
`
`Recommendation H.263 (02/98)
`
`v
`
`
`
`Annex C – Considerations for multipoint ...............................................................................
`
`C.1
`
`C.2
`
`C.3
`
`C.4
`
`Freeze picture request.................................................................................................
`
`Fast update request .....................................................................................................
`
`Freeze picture release .................................................................................................
`
`Continuous Presence Multipoint and Video Multiplexing (CPM).............................
`C.4.1 End Of Sub-Bitstream code (EOSBS) (23 bits)............................................
`C.4.2 Ending Sub-Bitstream Indicator (ESBI) (2 bits)...........................................
`
`Annex D – Unrestricted Motion Vector mode ........................................................................
`
`D.1
`
`Motion vectors over picture boundaries.....................................................................
`D.1.1 Restrictions for motion vector values ...........................................................
`
`D.2
`
`Extension of the motion vector range.........................................................................
`
`Annex E – Syntax-based Arithmetic Coding mode.................................................................
`
`E.1
`
`E.2
`
`E.3
`
`E.4
`
`E.5
`
`E.6
`
`E.7
`
`E.8
`
`Introduction ................................................................................................................
`
`Specification of SAC encoder ....................................................................................
`
`Specification of SAC decoder ....................................................................................
`
`Syntax.........................................................................................................................
`
`PSC_FIFO ..................................................................................................................
`
`Header layer symbols .................................................................................................
`
`Macroblock and Block layer symbols........................................................................
`
`SAC models................................................................................................................
`
`Annex F – Advanced Prediction mode....................................................................................
`
`F.1
`
`F.2
`
`F.3
`
`Introduction ................................................................................................................
`
`Four motion vectors per macroblock..........................................................................
`
`Overlapped motion compensation for luminance ......................................................
`
`Annex G – PB-frames mode....................................................................................................
`
`G.1
`
`G.2
`
`G.3
`
`G.4
`
`G.5
`
`Introduction ................................................................................................................
`
`PB-frames and INTRA blocks....................................................................................
`
`Block layer..................................................................................................................
`
`Calculation of vectors for the B-picture in a PB-frame..............................................
`
`Prediction of a B-block in a PB-frame .......................................................................
`
`Annex H – Forward error correction for coded video signal...................................................
`
`H.1
`
`H.2
`
`H.3
`
`Introduction ................................................................................................................
`
`Error correction framing.............................................................................................
`
`Error correcting code..................................................................................................
`
`vi
`
`Recommendation H.263 (02/98)
`
`Page
`
`51
`
`51
`
`51
`
`51
`
`51
`52
`53
`
`53
`
`53
`54
`
`54
`
`56
`
`56
`
`57
`
`58
`
`58
`
`59
`
`59
`
`60
`
`61
`
`64
`
`64
`
`64
`
`65
`
`68
`
`68
`
`69
`
`69
`
`69
`
`70
`
`72
`
`72
`
`72
`
`72
`
`
`
`H.4
`
`Relock time for error corrector framing.....................................................................
`
`Annex I – Advanced INTRA Coding mode ............................................................................
`
`I.1
`
`I.2
`
`I.3
`
`Introduction ................................................................................................................
`
`Syntax.........................................................................................................................
`
`Decoding process .......................................................................................................
`
`Annex J – Deblocking Filter mode..........................................................................................
`
`J.1
`
`J.2
`
`J.3
`
`Introduction ................................................................................................................
`
`Relation to UMV and AP modes (Annexes D and F) ................................................
`
`Definition of the deblocking edge filter .....................................................................
`
`Annex K – Slice Structured mode ...........................................................................................
`
`K.1
`
`K.2
`
`Introduction ................................................................................................................
`
`Structure of slice layer................................................................................................
`K.2.1 Stuffing (SSTUF) (Variable length)..............................................................
`K.2.2 Slice Start Code (SSC) (17 bits) ...................................................................
`K.2.3 Slice Emulation Prevention Bit 1 (SEPB1) (1 bit)........................................
`K.2.4 Slice Sub-Bitstream Indicator (SSBI) (4 bits)...............................................
`K.2.5 Macroblock Address (MBA) (5/6/7/9/11/12/13/14 bits) ..............................
`K.2.6 Slice Emulation Prevention Bit 2 (SEPB2) (1 bit)........................................
`K.2.7 Quantizer Information (SQUANT) (5 bits)...................................................
`K.2.8 Slice Width Indication in Macroblocks (SWI) (3/4/5/6/7 bits).....................
`K.2.9 Slice Emulation Prevention Bit 3 (SEPB3) (1 bit)........................................
`
`Annex L – Supplemental Enhancement Information Specification ........................................
`
`L.1
`
`L.2
`
`L.3
`
`L.4
`
`L.5
`
`L.6
`
`L.7
`
`L.8
`
`L.9
`
`L.10
`
`L.11
`
`L.12
`
`L.13
`
`Introduction ................................................................................................................
`
`PSUPP format ............................................................................................................
`
`Do Nothing.................................................................................................................
`
`Full-Picture Freeze Request .......................................................................................
`
`Partial-Picture Freeze Request ...................................................................................
`
`Resizing Partial-Picture Freeze Request ....................................................................
`
`Partial-Picture Freeze-Release Request......................................................................
`
`Full-Picture Snapshot Tag..........................................................................................
`
`Partial-Picture Snapshot Tag......................................................................................
`
`Video Time Segment Start Tag..................................................................................
`
`Video Time Segment End Tag ...................................................................................
`
`Progressive Refinement Segment Start Tag...............................................................
`
`Progressive Refinement Segment End Tag................................................................
`
`Page
`72
`
`73
`
`73
`
`74
`
`74
`
`80
`
`80
`
`81
`
`81
`
`85
`
`85
`
`86
`86
`86
`86
`86
`87
`87
`87
`87
`88
`
`88
`
`88
`
`88
`
`89
`
`89
`
`89
`
`90
`
`90
`
`90
`
`91
`
`91
`
`91
`
`91
`
`91
`
`Recommendation H.263 (02/98)
`
`vii
`
`
`
`L.14
`
`L.15
`
`Chroma Keying Information ......................................................................................
`
`Extended Function Type.............................................................................................
`
`Annex M – Improved PB-frames mode...................................................................................
`
`M.1
`
`M.2
`
`Introduction ................................................................................................................
`BPB-macroblock prediction modes .............................................................................
`M.2.1 Bidirectional prediction.................................................................................
`M.2.2 Forward prediction........................................................................................
`M.2.3 Backward prediction .....................................................................................
`
`M.3
`
`Calculation of vectors for bidirectional prediction of a the B-macroblock................
`
`M.4 MODB table ...............................................................................................................
`
`Annex N – Reference Picture Selection mode ........................................................................
`
`N.1
`
`N.2
`
`N.3
`
`N.4
`
`Introduction ................................................................................................................
`
`Video source coding algorithm ..................................................................................
`
`Channel for back-channel messages...........................................................................
`N.3.1 Separate logical channel mode......................................................................
`N.3.2 Videomux mode............................................................................................
`
`Syntax.........................................................................................................................
`N.4.1 Forward channel............................................................................................
`N.4.2 Back-Channel Message (BCM) syntax.........................................................
`
`N.5
`
`Decoder process .........................................................................................................
`
`Annex O – Temporal, SNR, and Spatial Scalability mode......................................................
`
`O.1
`
`O.2
`
`O.3
`
`O.4
`
`Overview ....................................................................................................................
`O.1.1 Temporal scalability......................................................................................
`O.1.2 SNR scalability..............................................................................................
`O.1.3 Spatial scalability ..........................................................................................
`O.1.4 Multilayer scalability.....................................................................................
`
`Transmission order of pictures...................................................................................
`
`Picture layer syntax ....................................................................................................
`
`Macroblock layer syntax ............................................................................................
`O.4.1 Coded macroblock indication (COD) (1 bit) ................................................
`O.4.2 MBTYPE/MCBPC (VLC)............................................................................
`O.4.3 Coded Block Pattern for Chrominance (CBPC) (Variable length)...............
`O.4.4 Coded Block Pattern for Luminance (CBPY) (Variable length) ..................
`O.4.5 Quantizer Information (DQUANT) (2 bits/Variable length)........................
`O.4.6 Motion vector data (MVDFW, MVDBW) (Variable length) .......................
`
`viii
`
`Recommendation H.263 (02/98)
`
`Page
`92
`
`94
`
`94
`
`94
`
`95
`95
`95
`95
`
`95
`
`95
`
`96
`
`96
`
`97
`
`97
`98
`98
`
`98
`98
`100
`
`101
`
`102
`
`102
`102
`103
`104
`105
`
`106
`
`108
`
`108
`110
`110
`112
`112
`113
`113
`
`
`
`O.5
`
`Motion vector decoding..............................................................................................
`O.5.1 Differential motion vectors ...........................................................................
`O.5.2 Motion vectors in direct mode ......................................................................
`
`O.6
`
`Interpolation filters.....................................................................................................
`
`Annex P – Reference picture resampling ................................................................................
`
`P.1
`
`P.2
`
`P.3
`
`P.4
`
`P.5
`
`Introduction ................................................................................................................
`
`Syntax.........................................................................................................................
`P.2.1 Warping Displacement Accuracy (WDA) (2 bits)........................................
`P.2.2 Warping parameters (Variable length)..........................................................
`P.2.3
`Fill Mode (FILL_MODE) (2 bits).................................................................
`P.2.4
`Fill Color Specification (Y_FILL, CB_EPB, CB_FILL, CR_EPB, CR_FILL)
`(26 bits) .........................................................................................................
`
`Resampling algorithm ................................................................................................
`
`Example of implementation .......................................................................................
`P.4.1 Displacements of virtual points.....................................................................
`P.4.2 Resampling algorithm ...................................................................................
`
`Factor-of-4 resampling ...............................................................................................
`P.5.1
`Factor-of-4 upsampling.................................................................................
`P.5.2
`Factor-of-4 downsampling............................................................................
`
`Annex Q – Reduced-Resolution Update mode........................................................................
`
`Q.1
`
`Q.2
`
`Q.3
`
`Q.4
`
`Q.5
`
`Q.6
`
`Introduction ................................................................................................................
`
`Decoding procedure....................................................................................................
`Q.2.1 Reference preparation ...................................................................................
`Q.2.2 Macroblock layer decoding...........................................................................
`Q.2.3 Picture store...................................................................................................
`Q.2.4 Display ..........................................................................................................
`
`Extension of referenced picture..................................................................................
`
`Reconstruction of motion vectors...............................................................................
`
`Enlarged overlapped motion compensation for luminance........................................
`
`Upsampling of the reduced-resolution reconstructed prediction error.......................
`Q.6.1 Upsampling procedure for the pixels inside a 16 × 16 reconstructed
`prediction error block....................................................................................
`Q.6.2 Upsampling procdedure for the pixels at the boundary of 16 × 16
`reconstructed prediction error block ..