Skip to content
emcodem edited this page May 13, 2022 · 1 revision
<html> &lt;style type=&quot;text/css&quot;&gt; /* Tabelle mit Standardwerten */
  1. sheme
&#123; border : 1px solid #4088b8; padding : 0px; margin : 10px 0px 18px 0px; font&#45;size : 12px; background&#45;color : #f4f4f4; &#125;
  1. sheme th
&#123; vertical&#45;align : top; padding : 5px; border : 1px dotted #4088b8; font&#45;size : 90%; &#125;
  1. sheme td
&#123; vertical&#45;align : top; padding : 5px; border : 1px dotted #4088b8; font&#45;size : 90%; &#125; /* Tabelle für Bytedarstellungen */
  1. byte
&#123; width : 800px; border : 1px solid #4088b8; padding : 0px; margin : 10px 0px 18px 0px; color : #4088b8; background&#45;color : #ecf3f8; font&#45;size : 12px; font&#45;weight : normal; &#125;
  1. byte th
&#123; width : 93px; border : 1px dotted #4088b8; padding : 4px; text&#45;align : center; vertical&#45;align : middle; font&#45;weight : bold; line&#45;height: 1.5em; &#125;
  1. byte td
&#123; width : 93px; border : 1px dotted #4088b8; padding : 4px; text&#45;align : center; vertical&#45;align : middle; line&#45;height: 1.5em; &#125;
  1. byte td:nth&#45;child(1)
&#123; width : 56px; font&#45;weight : bold; &#125; &lt;/style&gt; </html>

Table of Contents

MPEG-2 Elementary Video
  - stream structure
  - Sequence headers
  - Sequence Extension
  - Sequence Display Extension
  - Quant Matrix Extension
  - Copyright extension
  - Sequence Scalable Extension
  - Group of Pictures
  - Picture headers
  - Picture Display Extension
  - Picture Coding Extension
  - Slice

The structure differs from that of MPEG-1 elementary video in terms of the possible extensions and, in the case of the TMPG encoder, the number of slices.

Structure of an MPEG-2 program stream.

<html> <table id="byte"> <tbody> <tr> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Sequence</font></font></td> <td id="Col70"><b><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Sequence</font></font></b></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">...</font></font></td> <td id="col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Sequence</font></font></td> </tr> </tbody> </table> <p>&nbsp;<br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">The video stream consists of several consecutive sequences.</font></font></p> <p>&nbsp;</p> <h3><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Sequence:</font></font></h3> <table id="byte"> <tbody> <tr> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Sequence </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">start code</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">video </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">parameters</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">bitstream </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">parameters</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">QT's, </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Misc</font></font></td> <td id="Col70"><b><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Group of </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Picture</font></font></b></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">...</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Group of </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Picture</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Sequence </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">end code</font></font></td> </tr> </tbody> </table> <p>&nbsp;<br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">The sequence can or should contain further sequence headers. </font><font style="vertical-align: inherit;">Usually before each Group of Picture (GOP). </font><font style="vertical-align: inherit;">The sequence headers are needed for creating entry points (chapter markers) and for fast scrolling. </font><font style="vertical-align: inherit;">At the end there should be a sequence decode. </font><font style="vertical-align: inherit;">However, this does not seem to be common with MPEG-2.</font></font></p> <p>&nbsp;</p> <h3><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Group of Picture (GOP):</font></font></h3> <table id="byte"> <tbody> <tr> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">GOP </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">start code</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">timecode </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">_</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">GOP </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">params</font></font></td> <td id="Col70"><b><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Picture</font></font></b></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">...</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Picture</font></font></td> </tr> </tbody> </table> <p>&nbsp;<br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">The GOP contains the different picture types. </font><font style="vertical-align: inherit;">There are I, P, B and D frames.</font></font></p> <p><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Intra picture (I-frames) are full images. </font><font style="vertical-align: inherit;">Predicted picture (P frames) are partial pictures and refer to the previous I/P frames. </font><font style="vertical-align: inherit;">Bidirectional pictures (B frames) are also partial pictures and refer to the preceding and following I/B frame. </font><font style="vertical-align: inherit;">Direct Coded Picture (D-Frames) are not used in MPEG-2.</font></font></p> <p>&nbsp;</p> <h3><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Picture:</font></font></h3> <table id="byte"> <tbody> <tr> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Picture </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">start code</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Type</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">buffer </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">params</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Encode </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Params</font></font></td> <td id="Col70"><b><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Slice</font></font></b></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">...</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Slice</font></font></td> </tr> </tbody> </table> <p>&nbsp;<br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">The order of the images does not correspond to the order in which they are displayed. </font><font style="vertical-align: inherit;">The images are composed of slices.</font></font></p> <p>&nbsp;</p> <h3><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Slice:</font></font></h3> <table id="byte"> <tbody> <tr> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Slice </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">start code</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Vertical </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">position</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">QScale</font></font></td> <td id="Col70"><b><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">macro block</font></font></b></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">...</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">macro block</font></font></td> </tr> </tbody> </table> <p>&nbsp;<br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Slices are a vertical and horizontal aggregation of macroblocks.</font></font></p> <p>&nbsp;</p> <h3><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">macro block:</font></font></h3> <table id="byte"> <tbody> <tr> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Address </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Increment</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Type</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Motion </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Vector</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">QScale</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">CBP</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">b0</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">...</font></font></td> <td id="Col70"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">b5</font></font></td> </tr> </tbody> </table> <p>&nbsp;<br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">A macroblock comprises an image section with a total of 16x16 picture elements (pixels). </font><font style="vertical-align: inherit;">It stores the YUV 4:2:0 (YCbCr) color information. </font><font style="vertical-align: inherit;">The Y components of all pixels are contained in the first four blocks b0 to b3. </font><font style="vertical-align: inherit;">In the fifth block b4, the blue chrominance values &ZeroWidthSpace;&ZeroWidthSpace;(Cb) are stored in one point for each 4 pixels. </font><font style="vertical-align: inherit;">The corresponding red chrominance values &ZeroWidthSpace;&ZeroWidthSpace;(Cr) are in the sixth block b5.</font></font></p> </html>
Sequence headers

Each header starts with the PACK_START_CODE_PREFIX, which consists of the three bytes 0, 0 and 1. As a hexadecimal number, it is represented as $000001. This is followed by the ID. For the sequence header, this is the value $B3. The length of the header has different lengths according to the matrices used.

Each sequence header represents a possible entry point. This means that a chapter can only be created where there is a sequence header.

It should also happen that sequence headers are not marked with $000001B3 but with $000000B3.

Construction

  - 4 bytes: SEQUENCE_HEADER_CODE = $000001B3
  - 12 Bit: Width - Image width in pixels
  - 12 Bit: Height - image height in pixels
  - 4 bit: Aspect Ratio - aspect ratio
  - 4 bit: frame rate - refresh rate
  - 18 bit: bit rate
  - 1 bit: markers
  - 10 bits: VBV
  - 1 bit: Constrained parameter flag
  - 1 bit: load intra matrix (0) or standard (1)?
  - 64 bytes: Intra matrix if non-standard matrix is ​​used.
  - 1 Bit: Load Non Intra Matrix (0) or Standard (1)?
  - 64 bytes: Non Intra Matrix, unless Standard Matrix is ​​used.

As a scheme:

<html> <div id="Inhalt"> <table id="byte"> <tbody> <tr valign="middle" align="center"> <td id="Col60">&nbsp;</td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">7</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">6</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">5</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">3</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">2</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">1</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">0</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">0</font></font></td> <td id="Col60" rowspan="4" colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">SEQUENCE_HEADER_CODE</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">1</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">2</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">3</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4</font></font></td> <td id="Col60" colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">image width</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">5</font></font></td> <td id="Col60" colspan="4"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">nor image width</font></font></td> <td id="Col60" colspan="4"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">image height</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">6</font></font></td> <td id="Col60" colspan="12"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">nor image height</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">7</font></font></td> <td id="Col60" colspan="4"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">aspect ratio</font></font></td> <td id="Col60" colspan="4"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">frame rate</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">8th</font></font></td> <td id="Col60" colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">bitrate</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">9</font></font></td> <td id="Col60" colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">nor bitrate</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">10</font></font></td> <td id="Col60" colspan="2"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">nor bitrate</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">marker</font></font></td> <td id="Col60" colspan="5"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">VBV</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">11</font></font></td> <td id="Col60" colspan="5"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">VBV</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">CPF</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Load?</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">IN THE</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">12</font></font></td> <td id="Col60" rowspan="2" colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">still intra matrix</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">...</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">75</font></font></td> <td id="Col60" colspan="7"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">still intra matrix</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Load?</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">76</font></font></td> <td id="Col60" rowspan="3" colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Non intra matrix</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">...</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">139</font></font></td> </tr> </tbody> </table> <p>&nbsp;<br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">The MPEG type can only be taken directly from the sequence header if the aspect ratio has a value above 4. </font><font style="vertical-align: inherit;">But then it is an MPEG-1 video.</font></font></p> <p>&nbsp;</p> <h2><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Explanations</font></font></h2> <p><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">The values &ZeroWidthSpace;&ZeroWidthSpace;for the aspect ratio:</font></font></p> <table id="sheme"> <tbody> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">value</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Aspect ratio text</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">0</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">'forbidden'</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">1</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">1:1 square pixels</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">2</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4:3 screen</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">3</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">16:9 screen</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">2.21:1 display</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">5-15</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">'reserved'</font></font></td> </tr> </tbody> </table> <p>&nbsp;</p> <p><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">The values &ZeroWidthSpace;&ZeroWidthSpace;for the frame rate (refresh rate):</font></font></p> <table id="sheme"> <tbody> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">value</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Frame rate number</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Frame rate text</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">0</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">0</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">'forbidden'</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">1</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">24000/1001.0</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">'23.976 fps -- NTSC encapsulated film rate'</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">2</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">24.0</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">'Standard international cinema film rate'</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">3</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">25.0</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">'PAL (625/50) video frame rate'</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">30000/1001.0</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">'29.97 -- NTSC video frame rate'</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">5</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">30.0</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">'NTSC drop-frame (525/60) video frame rate'</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">6</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">50.0</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">'double frame rate/progressive PAL'</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">7</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">60000/1001.0</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">'double frame rate NTSC'</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">8th</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">60.0</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">'double frame rate drop frame NTSC'</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">9-15</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">0</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">'reserved'</font></font></td> </tr> </tbody> </table> </div> </html>

The bit rate is given in 400 bits per second. The value $3FFFF is supposed to mean a variable bitrate. In the test, TMPGEnc and CCEB each indicated the maximum bit rate there.

The marker bit is intended to detect errors. It must always have the value 1.

The VBV is the memory required to decode the images. It is specified in 16 kB blocks.

The constrained parameter flag is always set to 0 here. The TMPG Encoder 2.5* uses the 10 bits for the VBV and the bit of the constrained parameter flag for the VBV specification, so that only half of the VBV is displayed here.

The intra or non intra matrix load bit indicates whether the standard matrix is ​​used or whether the corresponding matrix is ​​saved at this point and must be loaded. The matrix is ​​stored in Zig Zag Scan.





extensions

At least one extension follows the sequence header. An MPEG-2 is identified via this. The ID of the extension is $B5. This is followed by the ID of the extension. These extensions should be considered for the sequence header:

  - Sequence Extension
  - Sequence Display Extension
  - Quant Matrix Extension
  - Copyright Extension
  - Sequence Scalable Extension
Sequence Extension

Extensions have the ID $B5. This is followed by the ID of the extension, here $1.

Construction

  - 4 bytes: EXTENSION_START_CODE = $000001B5
  - 4 bits: Start Code Identifier - Sequence Extension = $1
  - 4 bit: profile
  - 4 bits: levels
  - 1 bit: progressive sequence
  - 2-bit: chroma format
  - 2 bit: wide extension
  - 2 bits: height extension
  - 12-bit: bit rate extension
  - 1 bit: markers
  - 8-bit: VBV Buffer Extension
  - 1 bit: low delay
  - 2 bits: Frame rate extension numerator
  - 5 bits: Frame rate extension denominator

As a scheme:

<html> <div id="Inhalt"> <table id="byte"> <tbody> <tr valign="middle" align="center"> <td id="Col60">&nbsp;</td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">7</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">6</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">5</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">3</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">2</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">1</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">0</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">0</font></font></td> <td id="Col60" rowspan="4" colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">EXTENSION_START_CODE </font></font><br />&nbsp;<br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">$000001B5</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">1</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">2</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">3</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4</font></font></td> <td id="Col60" colspan="4"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Boot Code Identifier = $1</font></font></td> <td id="Col60" colspan="4"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">profile</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">5</font></font></td> <td id="Col60" colspan="4"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">levels</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">program</font></font></td> <td id="Col60" colspan="2"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">chroma</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">width ext.</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">6</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">still BE.</font></font></td> <td id="Col60" colspan="2"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">height ext.</font></font></td> <td id="Col60" colspan="5"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Bit Rate Extension</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">7</font></font></td> <td id="Col60" colspan="7"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">nor bit rate extension</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">marker</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">8th</font></font></td> <td id="Col60" colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">VBV Buffer Extension</font></font></td> </tr> <tr valign="middle" align="center"> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">9</font></font></td> <td id="Col60"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Low Delay</font></font></td> <td id="Col60" colspan="2"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Framerate Ext N</font></font></td> <td id="Col60" colspan="5"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Framerate Ext D</font></font></td> </tr> </tbody> </table> <p>&nbsp;<br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Note: In a source, four bits are used for the profile. </font><font style="vertical-align: inherit;">In Andrew Duncan, the first bit of this is called 'Profile/Level Escape', with the value 0 being reserved.</font></font></p> <h2><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Explanations</font></font></h2> <p><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">The profiles are:</font></font></p> <table id="sheme"> <tbody> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">value</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">profile</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Typical for</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">1</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">High profile</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">production equipment requiring 4:2:2</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">2</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Spatially Scalable Profile</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">simulcasting</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">3</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">SNR Scalable Profile</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">simulcasting</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Main profiles</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">95% of TVs, VCRs, cable applications</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">5</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Simple profiles</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Low-cost memory, eg no B pictures</font></font></td> </tr> </tbody> </table> <p>&nbsp;</p> <p><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">The profiles Multiview and 4:2:2 are sometimes also specified, but without coding.</font></font></p> <p><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">The levels are:</font></font></p> <table id="sheme"> <tbody> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">value</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">profile</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Typical for</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">high level</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">HDTV production rates: e.g. 1920 x 1080 x 30 Hz</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">6</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">High 1440 levels</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">HDTV consumer rates: e.g. 1440 x 960 x 30 Hz</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">8th</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">main level</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">CCIR 601 rates: eg 720 x 480 x 30 Hz</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">10</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">low level</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">SIF video rate: e.g. 352 x 240 x 30 Hz</font></font></td> </tr> </tbody> </table> <p>&nbsp;</p> <p><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Allowed combinations of level and profile:</font></font></p> <table id="sheme"> <tbody> <tr align="center"> <td>&nbsp;</td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Simple</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Main</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">SNR </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">scalable</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Spatially </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">scalable</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">High</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">multiview</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4:2:2</font></font></td> </tr> <tr align="center"> <td align="left"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">high level</font></font></td> <td>&nbsp;</td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">X</font></font></td> <td>&nbsp;</td> <td>&nbsp;</td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">X</font></font></td> <td>&nbsp;</td> <td>&nbsp;</td> </tr> <tr align="center"> <td align="left"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">High-1440 level</font></font></td> <td>&nbsp;</td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">X</font></font></td> <td>&nbsp;</td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">X</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">X</font></font></td> <td>&nbsp;</td> <td>&nbsp;</td> </tr> <tr align="center"> <td align="left"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">main level</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">X</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">X</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">X</font></font></td> <td>&nbsp;</td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">X</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">X</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">X</font></font></td> </tr> <tr align="center"> <td align="left"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">low level</font></font></td> <td>&nbsp;</td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">X</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">X</font></font></td> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> </tr> </tbody> </table> <p>&nbsp;</p> <p><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">The chrominance values:</font></font></p> <table id="sheme"> <tbody> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">value</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">profile</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">description</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">1</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4:2:0</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">half resolution in both dimensions (most common format)</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">2</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4:2:2</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Half resolution in horizontal direction (High Profile only)</font></font></td> </tr> <tr> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">3</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4:4:4</font></font></td> <td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">full resolution (not allowed in any currently defined profile)</font></font></td> </tr> </tbody> </table> <p>&nbsp;</p> <p><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Low Delay means that no B-frames are used. </font><font style="vertical-align: inherit;">"Frame reordering delay is not present i the VBV description, skipped pictures (VBV underflow) may occur." </font><font style="vertical-align: inherit;">The Framerate Extension Numerator and Denominator are multiplied by the base framerate.</font></font></p> <p>&nbsp;</p> </div> </html>
Sequence Display Extension

Extensionen are ID $B5. The ID is $2.

Construction

4 Byte: EXTENSION_START_CODE = $000001B5

4 Bit: Start Code Identifier - Sequence Display Extension = $2

3 Bit: Video Format

1 Bit: Color, if set:

  - 1 Byte: Color Primaries
  - 1 Byte: Transfer Characteristics
  - 1 Byte: Matrix Coefficients

14 Bit: Display Width

1 Bit: Marker

14 Bit: Display Height

As a scheme:

 <html>
    <table id="byte"> 
     <tbody>
      <tr height="26" valign="middle" align="center"> 
       <td id="Col60">&nbsp;</td> 
       <td id="Col00060">7</td> 
       <td id="Col60">6</td> 
       <td id="Col60">5</td> 
       <td id="Col60">4</td> 
       <td id="Col60">3</td> 
       <td id="Col60">2</td> 
       <td id="Col60">1</td> 
       <td id="Col60">0</td> 
      </tr> 
      <tr height="26" valign="middle" align="center"> 
       <td id="Col60">0</td> 
       <td id="Col60" rowspan="4" colspan="8">EXTENSION_START_CODE<br>&nbsp;<br>$000001B5</td> 
      </tr> 
      <tr height="26" valign="middle" align="center"> 
       <td id="Col60">1</td> 
      </tr> 
      <tr height="26" valign="middle" align="center"> 
       <td id="Col60">2</td> 
      </tr> 
      <tr height="26" valign="middle" align="center"> 
       <td id="Col60">3</td> 
      </tr> 
      <tr height="26" valign="middle" align="center"> 
       <td id="Col60">4</td> 
       <td id="Col60" colspan="4">Start Code Identifier = $2</td> 
       <td id="Col60" colspan="3">Video Format</td> 
       <td id="Col60">Color</td> 
      </tr> 
      <tr height="26" valign="middle" align="center"> 
       <td id="Col60"><font class="fb">5</font></td> 
       <td id="Col60" colspan="8"><font class="fb">Color Primaries</font></td> 
      </tr> 
      <tr height="26" valign="middle" align="center"> 
       <td id="Col60"><font class="fb">6</font></td> 
       <td id="Col60" colspan="8"><font class="fb">Transfer Characteristics</font></td> 
      </tr> 
      <tr height="26" valign="middle" align="center"> 
       <td id="Col60"><font class="fb">7</font></td> 
       <td id="Col60" colspan="8"><font class="fb">Matrix Coefficients</font></td> 
      </tr> 
      <tr height="26" valign="middle" align="center"> 
       <td id="Col60">5 / <font class="fb">8</font></td> 
       <td id="Col60" colspan="8">Display Width</td> 
      </tr> 
      <tr height="26" valign="middle" align="center"> 
       <td id="Col60">6 / <font class="fb">9</font></td> 
       <td id="Col60" colspan="6">Display Width</td> 
       <td id="Col60">Marker</td> 
       <td id="Col60">D H</td> 
      </tr> 
      <tr height="26" valign="middle" align="center"> 
       <td id="Col60">7 / <font class="fb">10</font></td> 
       <td id="Col60" colspan="8">Display Height</td> 
      </tr> 
      <tr height="26" valign="middle" align="center"> 
       <td id="Col60">8 / <font class="fb">11</font></td> 
       <td id="Col60" colspan="5">Display Height</td> 
       <td id="Col60" colspan="3">...</td> 
      </tr> 
     </tbody>
    </table> 
    <p>&nbsp;</p> 
    <h2>Explainations</h2> 
    <p>Video Formats are:</p> 
    <table id="sheme"> 
     <tbody>
      <tr height="20"> 
       <td width="60">Value</td> 
       <td width="240">Format</td> 
      </tr> 
      <tr height="20"> 
       <td>0</td> 
       <td>Component</td> 
      </tr> 
      <tr height="20"> 
       <td>1</td> 
       <td>PAL</td> 
      </tr> 
      <tr height="20"> 
       <td>2</td> 
       <td>NTSC</td> 
      </tr> 
      <tr height="20"> 
       <td>3</td> 
       <td>SECAM</td> 
      </tr> 
      <tr height="20"> 
       <td>4</td> 
       <td>MAC</td> 
      </tr> 
      <tr height="20"> 
       <td>5-8</td> 
       <td>Reserved</td> 
      </tr> 
     </tbody>
    </table> 
    <p>&nbsp;</p> 
    <p>Color Primaries and Transfer Characteristics are:</p> 
    <table id="sheme"> 
     <tbody>
      <tr height="20"> 
       <td width="60">Wert</td> 
       <td width="240">Profil</td> 
      </tr> 
      <tr height="20"> 
       <td>0</td> 
       <td>Forbidden</td> 
      </tr> 
      <tr> 
       <td>1</td> 
       <td>ITU-R Rec. 709 (1990)</td> 
      </tr> 
      <tr> 
       <td>2</td> 
       <td>Unspecified</td> 
      </tr> 
      <tr> 
       <td>3</td> 
       <td>Reserviert</td> 
      </tr> 
      <tr> 
       <td>4</td> 
       <td>ITU-R Rec. 624-4 System M</td> 
      </tr> 
      <tr> 
       <td>5</td> 
       <td>ITU-R Rec. 624-4 System B, G</td> 
      </tr> 
      <tr> 
       <td>6</td> 
       <td>SMPTE 170M</td> 
      </tr> 
      <tr> 
       <td>7</td> 
       <td>SMPTE 240M (1987)</td> 
      </tr> 
      <tr> 
       <td>...</td> 
       <td>Reserviert</td> 
      </tr> 
     </tbody>
    </table> 
    <p>&nbsp;</p> 
    <p>Matrix Coefficients:</p> 
    <table id="sheme"> 
     <tbody>
      <tr height="20"> 
       <td width="60">Value</td> 
       <td width="240">Profile</td> 
      </tr> 
      <tr height="20"> 
       <td>0</td> 
       <td>Forbidden</td> 
      </tr> 
      <tr height="20"> 
       <td>1</td> 
       <td>ITU-R Rec. 709 (1990)</td> 
      </tr> 
      <tr height="20"> 
       <td>2</td> 
       <td>Unspecified</td> 
      </tr> 
      <tr height="20"> 
       <td>3</td> 
       <td>Reserved</td> 
      </tr> 
      <tr height="20"> 
       <td>4</td> 
       <td>FCC</td> 
      </tr> 
      <tr height="20"> 
       <td>5</td> 
       <td>ITU-R Rec. 624-4 System B, G</td> 
      </tr> 
      <tr height="20"> 
       <td>6</td> 
       <td>SMPTE 170M</td> 
      </tr> 
      <tr height="20"> 
       <td>7</td> 
       <td>SMPTE 240M (1987)</td> 
      </tr> 
      <tr height="20"> 
       <td>...</td> 
       <td>Reserved</td> 
      </tr> 
     </tbody>
    </table> 
 </html>
Quant Matrix Extension

Extensions have the ID $B5. The ID of this extension is $3.

Construction

4 bytes: EXTENSION_START_CODE = $000001B5

4 bits: Start Code Identifier - Quant Matrix Extension = $3

1 bit: Load Intra Quantiser Matrix, if 1 then

  * 64 bytes: intra quantizer matrix

1 Bit: Load Non Intra Quantiser Matrix, if 1 then

  * 64 bytes: non-intra quantiser matrix

1 bit: Load Chroma Intra Quantiser Matrix if 1 then

  * 64 bytes: Chroma Intra Quantizer Matrix

1 bit: Chroma Non Intra Quantiser Matrix, if 1 then

  * 64 bytes: Chroma Non Intra Quantizer Matrix

As a scheme:

<html> <table id="byte"> <tbody><tr><td>&nbsp;</td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">7</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">6</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">5</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">3</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">2</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">1</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">0</font></font></td></tr> <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">0</font></font></td><td rowspan="4" colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">EXTENSION_START_CODE </font></font><br />&nbsp;<br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">$000001B5</font></font></td></tr> <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">1</font></font></td></tr> <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">2</font></font></td></tr> <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">3</font></font></td></tr> <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4</font></font></td><td colspan="4"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Boot Code Identifier = $3</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Load?</font></font></td><td colspan="3"><font class="fb"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Intra Quantizer Matrix</font></font></font></td></tr> <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">5-67</font></font></td><td colspan="8"><font class="fb"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Intra Quantizer Matrix</font></font></font></td></tr> <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">68</font></font></td><td colspan="5"><font class="fb"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Intra Quantizer Matrix</font></font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Load?</font></font></td><td colspan="2"><font class="fb"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">NIQM</font></font></font></td></tr> <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">69-131</font></font></td><td colspan="8"><font class="fb"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Non Intra Quantizer Matrix</font></font></font></td></tr> <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">132</font></font></td> <td colspan="6"><font class="fb"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Non Intra Quantizer Matrix</font></font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Load?</font></font></td><td><font class="fb"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">CIQM</font></font></font></td></tr> <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">133-195</font></font></td><td colspan="8"><font class="fb"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Chroma Intra Quantizer Matrix</font></font></font></td></tr> <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">196</font></font></td><td colspan="7"><font class="fb"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Chroma Intra Quantizer Matrix</font></font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Load?</font></font></td></tr> <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">197-260</font></font></td><td colspan="8"><font class="fb"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Chroma Non Intra Quantizer Matrix</font></font></font></td></tr> </tbody></table> </html>
Copyright extension

Extensions have the ID $B5. This extension has the ID $4.

Construction



<html>


<h3><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">As a scheme:</font></font></h3>
<table id="byte">
  <tbody><tr><td>&nbsp;</td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">7</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">6</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">5</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">3</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">2</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">1</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">0</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">0</font></font></td><td rowspan="4" colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">EXTENSION_START_CODE </font></font><br />&nbsp;<br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">$000001B5</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">1</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">2</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">3</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">4</font></font></td><td colspan="4"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Boot Code Identifier = $4</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">copyright </font></font><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">flag</font></font></td><td colspan="3"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">copyright identifiers</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">5</font></font></td><td colspan="5"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">nor copyright identifiers</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">copy?</font></font></td><td colspan="2"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">reserved</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">6</font></font></td><td colspan="5"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">reserved</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">marker</font></font></td><td colspan="2"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">CN 1</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">7</font></font></td><td colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">nor copyright number 1</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">8th</font></font></td><td colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">nor copyright number 1</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">9</font></font></td><td colspan="2"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">still CN 1</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">marker</font></font></td><td colspan="5"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Copyright number 2</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">10</font></font></td><td colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">nor copyright number 2</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">11</font></font></td><td colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">nor copyright number 2</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">12</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">still CN 2</font></font></td><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">marker</font></font></td><td colspan="6"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Copyright number 3</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">13</font></font></td><td colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">nor copyright number 3</font></font></td></tr>
  <tr><td><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">14</font></font></td><td colspan="8"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">nor copyright number 3</font></font></td></tr>
</tbody></table>


</html>


Sequence Scalable Extension

Extensions generally have ID $B5. This extensions has got ID $5.

Construction

  * 4 Byte: EXTENSION_START_CODE = $000001B5
  * 4 Bit: Start Code Identifier - Sequence Scalable Extension = $5
  * 2 Bit: Scalable Mode (Data partioning, Spartial, SNR, Temporal)
  * 4 Bit: Layer ID

Ist der Scalable Mode "spatial scalability"

  * 14 Bit: Lower Layer Prediction Horizontal Size
  * 1 Bit: Marker
  * 14 Bit: Lower Layer Prediction Vertical Size
  * 5 Bit: Horizontal Subsampling Factor M
  * 5 Bit: Horizontal Subsampling Factor N
  * 5 Bit: Vertical Subsampling Factor M
  * 5 Bit: Vertical Subsampling Factor N

Ist der Scalable Mode "temporal scalability"

1 Bit: Picture Mux Enable, if 1 then

  * 1 Bit: Mux To Progressive Sequence

3 Bit: Picture Mux Order

3 Bit: Picture Mux Factor

<html> &lt;content&gt; &lt;h3&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;As a scheme:&lt;/font&gt;&lt;/font&gt;&lt;/h3&gt; &lt;table id=&quot;byte&quot;&gt; &lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;7&lt;/td&gt;&lt;td&gt;6&lt;/td&gt;&lt;td&gt;5&lt;/td&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;0&lt;/td&gt;&lt;td rowspan=&quot;4&quot; colspan=&quot;8&quot;&gt;EXTENSION_START_CODE&lt;br /&gt;&amp;nbsp;&lt;br /&gt;$000001B5&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;3&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;4&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;Start Code Identifier = $5&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&lt;font color=&quot;red&quot;&gt;Scalable Mode&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;Layer ID&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;5&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;still Layer ID&lt;/td&gt;&lt;td colspan=&quot;6&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;Scalable Mode = &quot;spatial scalability&quot;:&lt;/p&gt; &lt;table id=&quot;byte&quot;&gt; &lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;7&lt;/td&gt;&lt;td&gt;6&lt;/td&gt;&lt;td&gt;5&lt;/td&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;5&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td colspan=&quot;6&quot;&gt;Lower Layer Prediction Horizontal Size&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;6&lt;/td&gt;&lt;td colspan=&quot;8&quot;&gt;noch Lower Layer Prediction Horizontal Size&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;7&lt;/td&gt;&lt;td&gt;Marker&lt;/td&gt;&lt;td colspan=&quot;7&quot;&gt;Lower Layer Prediction Vertical Size&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;8&lt;/td&gt;&lt;td colspan=&quot;7&quot;&gt;noch Lower Layer Prediction Vertical Size&lt;/td&gt;&lt;td&gt;HSF M&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;9&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;noch Horizontal Subsampling Factor M&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;Horizontal Subsampling Factor N&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;10&lt;/td&gt;&lt;td&gt;n. HSF N&lt;/td&gt;&lt;td colspan=&quot;5&quot;&gt;Vertical Subsampling Factor M&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;VSF N&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;11&lt;/td&gt;&lt;td colspan=&quot;3&quot;&gt;noch Vertical&lt;br /&gt;Subsampling Factor N&lt;/td&gt;&lt;td colspan=&quot;5&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;Scalable Mode = &quot;temporal scalability&quot;:&lt;/p&gt; &lt;table id=&quot;byte&quot;&gt; &lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;7&lt;/td&gt;&lt;td&gt;6&lt;/td&gt;&lt;td&gt;5&lt;/td&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;5&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;font class=&quot;fb&quot;&gt;Picture&lt;br /&gt;Mux&lt;br /&gt;Enable&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font class=&quot;fr&quot;&gt;Mux to&lt;br /&gt;Progr.&lt;br /&gt;Sequence&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;3&quot;&gt;Picture Mux Order&lt;/td&gt;&lt;td&gt;PMF&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;6&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;noch Picture&lt;br /&gt;Mux Faktor&lt;/td&gt;&lt;td colspan=&quot;6&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;/content&gt; </html>
Group of Pictures

The ID $B8 follows the PACK_START_CODE_PREFIX for the GROUP_START_CODE. The length of the header is 4 bytes.

Construction

  * 4 bytes: GROUP_START_CODE = $000001B8
  * 1 bit: drop frame
  * 5 bit: Time code hours from 0 to 23.
  * 6 bit: Time code minutes from 0 to 59.
  * 1 bit: markers
  * 6 bit: Time Code seconds from 0 to 59.
  * 6 bit: Time Code Picture from 0 to 59.
  * 1 bit: Closed GOP
  * 1 bit: broken link

As a scheme:

<html> &lt;content&gt; &lt;table id=&quot;byte&quot;&gt; &lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;7&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;6&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;5&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;4&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;3&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;2&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;1&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;0&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;0&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td rowspan=&quot;4&quot; colspan=&quot;8&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;GROUP_START_CODE&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;1&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;2&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;3&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;4&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Drop &lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;frame&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;5&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Time code hours&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Time code minutes&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;5&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;still time code minutes&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;marker&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;3&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Time code seconds&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;6&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;3&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;still time code seconds&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;5&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Time Code Picture&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;7&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;nor &lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;TCP&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Closed &lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;GOP&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;broken &lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;link&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;5&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;h2&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Explanations&lt;/font&gt;&lt;/font&gt;&lt;/h2&gt; &lt;p&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;The drop frame is used for NTSC to lower the frame rate from 30 to 29.97 fps.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;The marker must again be set.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;A GOP is closed if the pictures in a GOP relate only to pictures in its own GOP. &lt;/font&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Even if the stream is not encdet closed, the first and penultimate (CCE Basic) or last (TMPG Encoder) GOP are closed.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;The broken link flag is set when frames refer to frames that no longer exist after a cut.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;/content&gt; </html> <html> &lt;content&gt; &lt;h1&gt;Picture Header&lt;/h1&gt; &lt;p&gt;PACK_START_CODE_PREFIX follows PICTURE_START_CODE with ID $00.&lt;/p&gt; &lt;h2&gt;Construction&lt;/h2&gt; &lt;ul&gt; &lt;li&gt;4 Byte: PICTURE_START_CODE = $00000100&lt;/li&gt; &lt;li&gt;10 Bit: Temporal Reference&lt;/li&gt; &lt;li&gt;3 Bit: Coding Type&lt;/li&gt; &lt;li&gt;16 Bit: VBV Delay.&lt;/li&gt; &lt;/ul&gt; &lt;p&gt;P&#45; and B&#45;Frames:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;1 Bit: full fel forward vector&lt;/li&gt; &lt;li&gt;3 Bit: forward f code&lt;/li&gt; &lt;/ul&gt; &lt;p&gt;B&#45;Frames only:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;1 Bit: full backward vector&lt;/li&gt; &lt;li&gt;3 Bit: backward f code&lt;/li&gt; &lt;/ul&gt; &lt;p&gt;Extra Information:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;1 Bit: Extra Info Bit Set&lt;/li&gt; &lt;li&gt;1 Byte: Extra Information, if Extra Bit is set.&lt;/li&gt; &lt;li&gt;1 Bit: Extra Info Bit cleared&lt;/li&gt; &lt;/ul&gt; &lt;h3&gt;Als Schema&lt;/h3&gt; &lt;table id=&quot;byte&quot;&gt; &lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;7&lt;/td&gt;&lt;td&gt;6&lt;/td&gt;&lt;td&gt;5&lt;/td&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;0&lt;/td&gt;&lt;td rowspan=&quot;4&quot; colspan=&quot;8&quot;&gt;PICTURE_START_CODE&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;3&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;4&lt;/td&gt;&lt;td colspan=&quot;8&quot;&gt;Temporal Reference&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;5&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;Temporal Reference&lt;/td&gt;&lt;td colspan=&quot;3&quot;&gt;Coding Type&lt;/td&gt;&lt;td colspan=&quot;3&quot;&gt;VBV Delay&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;6&lt;/td&gt;&lt;td colspan=&quot;8&quot;&gt;noch VBV Delay&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;7&lt;/td&gt;&lt;td colspan=&quot;5&quot;&gt;noch VBV Delay&lt;/td&gt;&lt;td&gt;&lt;font color=&quot;red&quot;&gt;full fel forward vector&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&lt;font color=&quot;red&quot;&gt;forward f code&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;8&lt;/td&gt;&lt;td&gt;&lt;font color=&quot;green&quot;&gt;noch forward f code&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font color=&quot;green&quot;&gt;full backward vector&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;3&quot;&gt;&lt;font color=&quot;green&quot;&gt;backward f code&lt;/font&gt;&lt;/td&gt;&lt;td&gt;Extra Bit set&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;Extra Information&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;9&lt;/td&gt;&lt;td colspan=&quot;6&quot;&gt;Noch Extra Information&lt;/td&gt;&lt;td&gt;...&lt;/td&gt;&lt;td&gt;Extra Bit cleared&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;h2&gt;Erläuterungen&lt;/h2&gt; &lt;p&gt;The temporal reference is the order in which the images should be displayed. The first picture of the group has the value 0.&lt;/p&gt; &lt;p&gt;Coding types:&lt;/p&gt; &lt;ul start=&quot;0&quot;&gt; &lt;li&gt;Resticted&lt;/li&gt; &lt;li&gt;I &#45; Intra Coded&lt;/li&gt; &lt;li&gt;P &#45; Predictive Coded&lt;/li&gt; &lt;li&gt;B &#45; Bidirectionally Predictive Coded&lt;/li&gt; &lt;li&gt;D &#45; DC Intra Coded&lt;/li&gt; &lt;li&gt;Reserved&lt;/li&gt; &lt;li&gt;Reserved&lt;/li&gt; &lt;li&gt;Reserved&lt;/li&gt; &lt;/ul&gt; &lt;p&gt;The VBV delay is specified in 90 kHz cycles at constant bit rates. With variable bit rate, the delay is set to FFFF. I am missing further information about the forward and backward vectors and the extra information. The extra information consists of nine bits. The first is the indicator for extra information to follow. The following 8 bits represent the extra information.&lt;/p&gt; &lt;h1&gt;Extensions&lt;/h1&gt; &lt;p&gt;With MPEG&#45;2, the picture header is followed by various extensions. The ID of the extension is $B5. That concludes the ID of the extension. These extensions should be considered for the picture header:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;7 &#45; &lt;a href=&quot;projects/mpeg/k010210.htm&quot;&gt;Picture Display Extension&lt;/a&gt;&lt;/li&gt; &lt;li&gt;8 &#45; &lt;a href=&quot;projects/mpeg/k010211.htm&quot;&gt;Picture Coding Extension&lt;/a&gt;&lt;/li&gt; &lt;li&gt;9 &#45; Picture Spatial Scalable Extension&lt;/li&gt; &lt;li&gt;10 &#45; Picture Temporal Scalable Extension&lt;/li&gt; &lt;/ul&gt; &lt;/content&gt; </html>
Picture Display Extension

The extension start code with the ID $B5 is followed by four bits with the extension ID $B7.

Construction

  * 4 bytes: EXTENSION_START_CODE = $000001B5
  * 4 bits: Start Code Identifier - Picture Display Extension = $7
  * For 0 = i < number_of_frame_centre_offsets (maximum 3 offsets)
    * 2 bytes (Int16): frame_centre_horizontal_offset
    * 1 bit: markers
    * 2 bytes (Int16): frame_centre_vertical_offset
    * 1 bit: markers

As a scheme:

<html> &lt;content&gt; &lt;table id=&quot;byte&quot;&gt; &lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;7&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;6&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;5&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;4&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;3&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;2&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;1&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;0&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;0&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td rowspan=&quot;4&quot; colspan=&quot;8&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;EXTENSION_START_CODE &lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;$000001B5&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;1&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;2&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;3&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;4&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Boot Code Identifier = $7&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;frame_centre_horizontal_offset&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;5&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;8&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;nor frame_centre_horizontal_offset&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;6&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;nor frame_centre_horizontal_offset&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;marker&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;3&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;frame_centre_vertical_offset&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;7&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;8&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;nor frame_centre_vertical_offset&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;8th&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;5&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;nor frame_centre_vertical_offset&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;marker&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;...&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;h2&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Explanations&lt;/font&gt;&lt;/font&gt;&lt;/h2&gt; &lt;p&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;This extension is not necessary for the normal decoding process. &lt;/font&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;However, it allows the picture to be positioned on the display. &lt;/font&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;An application for this is &lt;/font&gt;&lt;/font&gt;&lt;a href=&quot;https://web.archive.org/web/20200805111659/http://de.wikipedia.org/wiki/Pan_&amp;amp;amp;_Scan&quot; target=&quot;_blank&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Pan &amp;amp; Scan&lt;/font&gt;&lt;/font&gt;&lt;/a&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt; . &lt;/font&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;This extension must be preceded by a sequence display extension.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;b&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;frame_centre_horizontal_offset&lt;/font&gt;&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt; Is the horizontal offset in units of 1/16 sample. &lt;/font&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;A positive value means the center of the picture is to the right of the center of the display.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;b&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;frame_centre_vertical_offset&lt;/font&gt;&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt; Is the vertical offset in units of 1/16 sample. &lt;/font&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;A positive value means the center of the picture is below the center of the display.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;The size of the display is defined in the Sequence Display Extension. &lt;/font&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;The coordinates for the decoded picture in the picture display extension. &lt;/font&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;The center of the decoded picture is the center of the display. &lt;/font&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;A picture can refer to one, two or three decoded fields, ie it can contain up to three offsets.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;The number of offsets results from the flags progressive_sequence, repeat_first_field and top_field_first.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;pre id=&quot;text&quot;&gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;if ( progressive_sequence &amp;#61;&amp;#61; 1)&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; &amp;#123; if ( repeat_first_field &amp;#61;&amp;#61; 1 )&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; &amp;#123; if ( top_field_first &amp;#61;&amp;#61; 1 )&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; number_of_frame_centre_offsets &amp;#61; 3&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; else&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; number_of_frame_centre_offsets &amp;#61; 2&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; &amp;#125;&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; else&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; &amp;#123;&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; number_of_frame_centre_offsets &amp;#61; 1&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; &amp;#125;&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; &amp;#125;&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; else&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; &amp;#123; if (picture_structure &amp;#61;&amp;#61; &amp;quot;field&amp;quot;)&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; &amp;#123; number_of_frame_centre_offsets &amp;#61; 1&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; &amp;#125;&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt;&amp;lt;font style&amp;#61;&amp;quot;vertical&amp;#45;align&amp;#58; inherit&amp;#59;&amp;quot;&amp;gt; else&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt; &amp;#123; if (repeat_first_field &amp;#61;&amp;#61; 1 )&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt; number_of_frame_centre_offsets &amp;#61; 3&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt; else&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt; number_of_frame_centre_offsets &amp;#61; 2&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt; &amp;#125;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt; &amp;#125;&amp;lt;font&amp;gt;&amp;lt;/font&amp;gt; &lt;/pre&gt; &lt;p&gt;The progressive_sequence flag is included in the sequence extension. repeat_first_field, top_field_first, and picture_structure in the Picture Coding Extension.&lt;/p&gt; &lt;p&gt;The absence of the offsets means that the previously used values ​​should be used. That also applies, if not all offsets are given. After a sequence header, null values ​​are used again until values ​​are specified again.&lt;/p&gt; &lt;/content&gt; </html>
Picture Coding Extension

The extension start code with the ID $B5 is followed by four bits with the extension ID $B8.

Construction

4 bytes: EXTENSION_START_CODE = $000001B5

4 bits: Start Code Identifier - Picture Coding Extension = $8

4 bits: f_code[0][0] - forward horizontal

4 bits: f_code[0][1] - forward vertical

4 bits: f_code[1][0] - backward horizontal

4 bits: f_code[1][1] - backward vertical

2-bit: Intra DC precision

2-bit: Picture Structure

1 bit: top field first

1 bit: Frame Pred Frame DCT

1 bit: Concealment Motion Vectors

1 bit: Q scale type

1 bit: Intra VLC format

1 bit: alternate scan

1 bit: Repeat First Field

1 bit: Chroma 420 type

1 bit: progressive frame

1 bit: Composite Display Flag, if set:

  * 1 bit: V axis
  * 3 bits: field sequence
  * 1 bit: Subcarrier
  * 7 bits: burst amplitude
  * 8 bits: sub-carrier phase

As a scheme:

<html> &lt;content&gt; &lt;table id=&quot;byte&quot;&gt; &lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;7&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;6&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;5&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;4&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;3&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;2&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;1&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;0&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;0&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td rowspan=&quot;4&quot; colspan=&quot;8&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;EXTENSION_START_CODE &lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;$000001B5&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;1&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;2&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;3&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;4&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Boot Code Identifier = $8&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;f_code&#91;0&#93;&#91;0&#93;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;5&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;f_code&#91;0&#93;&#91;1&#93;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;f_code&#91;1&#93;&#91;0&#93;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;6&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;f_code&#91;1&#93;&#91;1&#93;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Intra DC Prec.&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Picture Structure&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;7&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;TFF&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;FPF &lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;DCT&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;CMV&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Q scale type&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Intra VLC format&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Alternate Scan&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Repeat First Field&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Chroma 420 type&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;8th&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Progressive frames&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;composite display?&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;V axis&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;3&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Field Sequence&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;subcarriers&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;burst amplitude&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;9&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;6&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;still BA&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;sub&#45;carrier phase&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;10&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;6&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;nor SCP&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;h2&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Explanations&lt;/font&gt;&lt;/font&gt;&lt;/h2&gt; &lt;p&gt;&lt;b&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;f_code&#91;s&#93;&#91;t&#93;&lt;/font&gt;&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt; The values &amp;ZeroWidthSpace;&amp;ZeroWidthSpace;are used to decode the motion vectors. &lt;/font&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;The value 0 is forbidden, 1 to 9 and 15 are allowed.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;b&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Intra DC Precision&lt;/font&gt;&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt; Accuracy with which the discrete cosine transformation is used. &lt;/font&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;The Intra DC Mult(iplikator) is derived from this.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt; &lt;table id=&quot;sheme&quot;&gt; &lt;tbody&gt;&lt;tr&gt;&lt;th&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;value&lt;/font&gt;&lt;/font&gt;&lt;/th&gt;&lt;th&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;accuracy&lt;/font&gt;&lt;/font&gt;&lt;/th&gt;&lt;th&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;multiplier&lt;/font&gt;&lt;/font&gt;&lt;/th&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;00&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;8 bits&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;8th&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;01&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;9 bits&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;4&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;10&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;10 bits&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;2&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;11&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;11 bits&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;1&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;&lt;b&gt;Picture Structure&lt;/b&gt;&lt;/p&gt; &lt;table id=&quot;sheme&quot;&gt; &lt;tbody&gt;&lt;tr&gt;&lt;th&gt;Wert&lt;/th&gt;&lt;th&gt;Picture Structure&lt;/th&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;00&lt;/td&gt;&lt;td&gt;Reserviert&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;01&lt;/td&gt;&lt;td&gt;Top Field &#45; oberes Halbbild&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;10&lt;/td&gt;&lt;td&gt;Bottom Field &#45; unteres Halbbild&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;11&lt;/td&gt;&lt;td&gt;Frame Picture &#45; Vollbild&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;If a frame is encoded in fields, there must always be a pair with the same picture coding type.&lt;/p&gt; &lt;p&gt;&lt;b&gt;Top Field First&lt;/b&gt;&lt;br /&gt;This flag depends on Picture Structure, Progressive Sequence and Repeat First Field.&lt;br /&gt;At If the Progressive Sequence flag is not set, it is used during decoding to reconstruct the frame and indicates whether the First Field (upper field) is output first.&lt;br /&gt;If the Progressive Sequence flag is set, there is in connection with the Repeat flag First Field indicates how often a frame is output during decoding. This means at Repeat First Field = 0 and Top Field First = 0 becomes a progressive frame, with Repeat First Field = 1 and Top Field First = 0 two identical progressive frames become and with Repeat First Field = 1 and Top Field First = 1, three identical progressive frames are output.&lt;/p&gt; &lt;p&gt;&lt;b&gt;Frame Pred Frame DCT&lt;/b&gt;&lt;br /&gt;If this flag is set, only Frame DCT and Frame Prediction will be used. At Field Picture (fields) it is 0, with progressive frames it is 1.&lt;/p&gt; &lt;p&gt;&lt;b&gt;Concealment Motion Vectors&lt;/b&gt;&lt;br /&gt;This flag indicates whether the intra macroblocks were encoded with motion vectors.&lt;/p&gt; &lt;p&gt;&lt;b&gt;Q Scale Type&lt;/b&gt;&lt;br /&gt;This flag is used for the Quantiser Scale Factor.&lt;/p&gt; &lt;p&gt;&lt;b&gt;Intra VLC format&lt;/b&gt;&lt;br /&gt;This flag is used to determine the DCT coefficients.&lt;/p&gt; &lt;p&gt;&lt;b&gt;Alternate Scan&lt;/b&gt;&lt;br /&gt;This flag is used to determine the DCT coefficients.&lt;/p&gt; &lt;p&gt;&lt;b&gt;Repeat First Field&lt;/b&gt;&lt;br /&gt;If the flags progressisve_sequence (see &lt;a href=&quot;projects/mpeg/k010203.htm&quot;&gt;Sequence Extension Header&lt;/a&gt;) and progressive_frame are not set, the repeat_first_field flag is also not set. When decoding then the frame composed of two fields. If the progressive_sequence flag is not set but the progressive_frame flag is set, the frame is composed of two fields. The first field (top field or bottom field) is specified by the flag top_field_first identified and followed by the other. If the repeat_first_field flag is then set, the frame consists of three fields composed. The first field is determined by the top_field_first flag and is followed by the other. Then will repeats the first field. If the progressive_sequence flag is set and the repeat_first_field flag is not, the frame decoded from a frame.&lt;/p&gt; &lt;p&gt;&lt;b&gt;Chroma 420 Type&lt;/b&gt;&lt;br /&gt;Set the same as Progressive Frame. Exists for historical reasons.&lt;/p&gt; &lt;p&gt;&lt;b&gt;Progressive Frame&lt;/b&gt;&lt;br /&gt;If the flag is not set, it means that the two fields of a frame are two interlaced fields are. Repeat First Field must be 0 (two field duration). If the flag is set, this means that the two fields are combined into one are merged. Picture Structure must be set to &quot;Frame&quot; and Frame Pred Frame DCT to 1.&lt;/p&gt; &lt;p&gt;&lt;b&gt;Composite Display Flag&lt;/b&gt;&lt;br /&gt;This flag is set if the picture from which the MPEG was encoded is (analogue) Composite Video were encoded. The information refers to the extension following picture. Is it a Frame Picture, the information relates to the First Field. The information is adjusted for the second field, as these cannot be saved. The following elements are not used for decoding. The Repeat First Field Flag and the Composite Display Flag must not be set at the same time.&lt;/p&gt; &lt;p&gt;&lt;b&gt;V Axis&lt;/b&gt;&lt;br /&gt;1&#45;bit integer used only when the bitstream represents a signal that had previously been encoded according to PAL systems. v_axis is set to 1 on a positive sign, v_axis is set to 0 otherwise.&lt;/p&gt; &lt;p&gt;&lt;b&gt;Field Sequence&lt;/b&gt;&lt;br /&gt;Returns the field number of an eight field sequence on a PAL system or a five field sequence for an NTSC system according to the following table:&lt;/p&gt; &lt;table id=&quot;sheme&quot;&gt; &lt;tbody&gt;&lt;tr&gt;&lt;th&gt;Field Sequence&lt;/th&gt;&lt;th&gt;Frame&lt;/th&gt;&lt;th&gt;Field&lt;/th&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;000&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;001&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;010&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;011&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;4&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;100&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;5&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;101&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;6&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;110&lt;/td&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;7&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;111&lt;/td&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;8&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;&lt;b&gt;Sub Carrier&lt;/b&gt;&lt;br /&gt;If the flag is not set, the sub&#45;carrier/line frequency relationship is correct.&lt;/p&gt; &lt;p&gt;&lt;b&gt;Burst Amplitude&lt;/b&gt;&lt;br /&gt;specifies the burst amplitude for PAL and NTSC.&lt;/p&gt; &lt;p&gt;&lt;b&gt;Sub Carrier Phase&lt;/b&gt;&lt;br /&gt;Indicates the phase of the reference sub carrier of the field synchronization.&lt;/p&gt; &lt;table id=&quot;sheme&quot;&gt; &lt;tbody&gt;&lt;tr&gt;&lt;th&gt;Sub Carrier Phase&lt;/th&gt;&lt;th&gt;Phase&lt;/th&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;(&#91;360°&#93; * 0)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;(&#91;360°&#93; * 1)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;...&lt;/td&gt;&lt;td&gt;...&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;255&lt;/td&gt;&lt;td&gt;(&#91;360°&#93; * 255)&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;/content&gt; </html>
Picture Coding Extension

The extension start code with the ID $B5 is followed by four bits with the extension ID $B8.

Construction

4 bytes: EXTENSION_START_CODE = $000001B5

4 bits: Start Code Identifier - Picture Coding Extension = $8

4 bits: f_code[0][0] - forward horizontal

4 bits: f_code[0][1] - forward vertical

4 bits: f_code[1][0] - backward horizontal

4 bits: f_code[1][1] - backward vertical

2-bit: Intra DC precision

2-bit: Picture Structure

1 bit: top field first

1 bit: Frame Pred Frame DCT

1 bit: Concealment Motion Vectors

1 bit: Q scale type

1 bit: Intra VLC format

1 bit: alternate scan

1 bit: Repeat First Field

1 bit: Chroma 420 type

1 bit: progressive frame

1 bit: Composite Display Flag, if set:

  * 1 bit: V axis
  * 3 bits: field sequence
  * 1 bit: Subcarrier
  * 7 bits: burst amplitude
  * 8 bits: sub-carrier phase

<html></html>

<content>

<table id="byte">

  &lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;7&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;6&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;5&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;4&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;3&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;2&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;1&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;0&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;0&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td rowspan=&quot;4&quot; colspan=&quot;8&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;EXTENSION_START_CODE &lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;$000001B5&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;1&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;2&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;3&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;4&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Boot Code Identifier = $8&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;f_code&#91;0&#93;&#91;0&#93;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;5&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;f_code&#91;0&#93;&#91;1&#93;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;f_code&#91;1&#93;&#91;0&#93;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;6&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;4&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;f_code&#91;1&#93;&#91;1&#93;&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Intra DC Prec.&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Picture Structure&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;7&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;TFF&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;FPF &lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;DCT&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;CMV&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Q scale type&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Intra VLC format&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Alternate Scan&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Repeat First Field&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Chroma 420 type&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;8th&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Progressive frames&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;composite display?&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;V axis&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;3&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;Field Sequence&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;subcarriers&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;burst amplitude&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;9&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;6&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;still BA&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;sub&#45;carrier phase&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;10&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;6&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;nor SCP&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;

</tbody></table>

<h2><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Explanations</font></font></h2>

<p><b><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">f_code[s][t]</font></font></b><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> The values &ZeroWidthSpace;&ZeroWidthSpace;are used to decode the motion vectors. </font><font style="vertical-align: inherit;">The value 0 is forbidden, 1 to 9 and 15 are allowed.</font></font></p> <p><b><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Intra DC Precision</font></font></b><br /><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> Accuracy with which the discrete cosine transformation is used. </font><font style="vertical-align: inherit;">The Intra DC Mult(iplikator) is derived from this.</font></font></p>

<table id="sheme">

  &lt;tbody&gt;&lt;tr&gt;&lt;th&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;value&lt;/font&gt;&lt;/font&gt;&lt;/th&gt;&lt;th&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;accuracy&lt;/font&gt;&lt;/font&gt;&lt;/th&gt;&lt;th&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;multiplier&lt;/font&gt;&lt;/font&gt;&lt;/th&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;00&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;8 bits&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;8th&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;01&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;9 bits&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;4&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;10&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;10 bits&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;2&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;11&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;11 bits&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;td&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;&lt;font style=&quot;vertical&#45;align: inherit;&quot;&gt;1&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;

</tbody></table>

<p><b>Picture Structure</b></p> <table id="sheme">

  &lt;tbody&gt;&lt;tr&gt;&lt;th&gt;Wert&lt;/th&gt;&lt;th&gt;Picture Structure&lt;/th&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;00&lt;/td&gt;&lt;td&gt;Reserviert&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;01&lt;/td&gt;&lt;td&gt;Top Field &#45; upper Field&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;10&lt;/td&gt;&lt;td&gt;Bottom Field &#45; lower Field&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;11&lt;/td&gt;&lt;td&gt;Frame Picture &#45; progressive&lt;/td&gt;&lt;/tr&gt;

</tbody></table>

<p>If a frame is encoded in fields, there must always be a pair with the same picture coding type.</p> <p><b>Top Field First</b><br />This flag depends on Picture Structure, Progressive Sequence and Repeat First Field.<br />At



<p><b>Frame Pred Frame DCT</b><br />If this flag is set, only Frame DCT and Frame Prediction will be used. At Field Picture

   (fields) it is 0, with progressive frames it is 1.&lt;/p&gt;

<p><b>Concealment Motion Vectors</b><br />This flag indicates whether the intra macroblocks were encoded with motion vectors.</p> <p><b>Q Scale Type</b><br />This flag is used for the Quantiser Scale Factor.</p> <p><b>Intra VLC format</b><br />This flag is used to determine the DCT coefficients.</p> <p><b>Alternate Scan</b><br />This flag is used to determine the DCT coefficients.</p> <p><b>Repeat First Field</b>

<br />If the flags progressisve_sequence (see <a href="projects/mpeg/k010203.htm">Sequence Extension



<p><b>Chroma 420 Type</b><br />Set the same as Progressive Frame. Exists for historical reasons.</p> <p><b>Progressive Frame</b><br />If the flag is not set, it means that the two fields of a frame are two interlaced fields

   are. Repeat First Field must be 0 (two field duration). If the flag is set, this means that the two fields are combined into one
   are merged. Picture Structure must be set to &quot;Frame&quot; and Frame Pred Frame DCT to 1.&lt;/p&gt;

<p><b>Composite Display Flag</b><br />This flag is set if the picture from which the MPEG was encoded is (analogue)




<p><b>V Axis</b><br />1-bit integer used only when the bitstream represents a signal that had previously been encoded according to

   PAL systems. v_axis is set to 1 on a positive sign, v_axis is set to 0 otherwise.&lt;/p&gt;

<p><b>Field Sequence</b><br />Returns the field number of an eight field sequence on a PAL system or a five field sequence



<table id="sheme">

  &lt;tbody&gt;&lt;tr&gt;&lt;th&gt;Field Sequence&lt;/th&gt;&lt;th&gt;Frame&lt;/th&gt;&lt;th&gt;Field&lt;/th&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;000&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;001&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;010&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;011&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;4&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;100&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;5&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;101&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;6&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;110&lt;/td&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;7&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;111&lt;/td&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;8&lt;/td&gt;&lt;/tr&gt;

</tbody></table>

<p><b>Sub Carrier</b><br />If the flag is not set, the sub-carrier/line frequency relationship is correct.</p> <p><b>Burst Amplitude</b><br />specifies the burst amplitude for PAL and NTSC.</p> <p><b>Sub Carrier Phase</b><br />Indicates the phase of the reference sub carrier of the field synchronization.</p> <table id="sheme">

  &lt;tbody&gt;&lt;tr&gt;&lt;th&gt;Sub Carrier Phase&lt;/th&gt;&lt;th&gt;Phase&lt;/th&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;(&#91;360°&#93; * 0)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;(&#91;360°&#93; * 1)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;...&lt;/td&gt;&lt;td&gt;...&lt;/td&gt;&lt;/tr&gt;
  &lt;tr&gt;&lt;td&gt;255&lt;/td&gt;&lt;td&gt;(&#91;360°&#93; * 255)&lt;/td&gt;&lt;/tr&gt;

</tbody></table>

&lt;/html&gt;</content>

Macroblock

A macroblock has a size of 16 * 16 pixels. It consists of 4 blocks of 8 * 8 pixels with gray values ​​(Y). These are supplemented by two blocks of 8 * 8 pixels with chrominance values. Chrominance values ​​mean color values. One block for Red (Cr) and one for Blue (Cb).

  * Addr Incr: number of MBs to skip.
  * Type: Does this MB use a motion vector? What type?
  * QScale: How is the quantization table scaled in this MB?
  * Coded Block Pattern (CBP): bitmap indicating which blocks are coded.