| rfc9924v3.txt | rfc9924.txt | |||
|---|---|---|---|---|
| skipping to change at line 374 ¶ | skipping to change at line 374 ¶ | |||
| sum (i=x, y, f(i)) | sum (i=x, y, f(i)) | |||
| a summation of f(i) with i taking all integer values from x up to | a summation of f(i) with i taking all integer values from x up to | |||
| and including y | and including y | |||
| log2(x) | log2(x) | |||
| the base-2 logarithm of x | the base-2 logarithm of x | |||
| 3.2.2. Bitwise Operators | 3.2.2. Bitwise Operators | |||
| & (bit-wise "and") | & (bitwise "and") | |||
| When operating on integer arguments, operates on a two's | When operating on integer arguments, operates on a two's | |||
| complement representation of the integer value. When operating on | complement representation of the integer value. When operating on | |||
| arguments with unequal bit depths, the bit depths are equalized by | arguments with unequal bit depths, the bit depths are equalized by | |||
| adding zeros in significant positions to the argument with lower | adding zeros in significant positions to the argument with lower | |||
| bit depth. | bit depth. | |||
| | (bit-wise "or") | | (bitwise "or") | |||
| When operating on integer arguments, operates on a two's | When operating on integer arguments, operates on a two's | |||
| complement representation of the integer value. When operating on | complement representation of the integer value. When operating on | |||
| arguments with unequal bit depths, the bit depths are equalized by | arguments with unequal bit depths, the bit depths are equalized by | |||
| adding zeros in significant positions to the argument with lower | adding zeros in significant positions to the argument with lower | |||
| bit depth. | bit depth. | |||
| x >> y | x >> y | |||
| arithmetic right shift of a two's complement integer | arithmetic right shift of a two's complement integer | |||
| representation of x by y binary digits. This function is defined | representation of x by y binary digits. This function is defined | |||
| only for non-negative integer values of y. Bits shifted into the | only for non-negative integer values of y. Bits shifted into the | |||
| skipping to change at line 791 ¶ | skipping to change at line 791 ¶ | |||
| x = max(0, line - (blkHeight - 1)) | x = max(0, line - (blkHeight - 1)) | |||
| while(y >= 0 && x < blkWidth){ | while(y >= 0 && x < blkWidth){ | |||
| zigZagScan[pos] = y * blkWidth + x | zigZagScan[pos] = y * blkWidth + x | |||
| pos++ | pos++ | |||
| x++ | x++ | |||
| y-- | y-- | |||
| } | } | |||
| } | } | |||
| } | } | |||
| Figure 5: Pseudo-code for zig-zag scan | Figure 5: Pseudocode for zig-zag scan | |||
| 4.4.2. Inverse Scan | 4.4.2. Inverse Scan | |||
| Inputs to this process are: | Inputs to this process are: | |||
| * a variable blkWidth specifying the width of a block, and | * a variable blkWidth specifying the width of a block, and | |||
| * a variable blkHeight specifying the height of a block. | * a variable blkHeight specifying the height of a block. | |||
| Output of this process is the array inverseScan[rPos]. | Output of this process is the array inverseScan[rPos]. | |||
| skipping to change at line 817 ¶ | skipping to change at line 817 ¶ | |||
| * The variable forwardScan is derived by invoking the zig-zag scan | * The variable forwardScan is derived by invoking the zig-zag scan | |||
| order initialization process as specified in Section 4.4.1 with | order initialization process as specified in Section 4.4.1 with | |||
| input parameters blkWidth and blkHeight. | input parameters blkWidth and blkHeight. | |||
| * The output variable inverseScan is derived as follows: | * The output variable inverseScan is derived as follows: | |||
| for(pos = 0; pos < blkWidth * blkHeight; pos++){ | for(pos = 0; pos < blkWidth * blkHeight; pos++){ | |||
| inverseScan[forwardScan[pos]] = pos | inverseScan[forwardScan[pos]] = pos | |||
| } | } | |||
| Figure 6: Pseudo-code for inverse zig-zag scan | Figure 6: Pseudocode for inverse zig-zag scan | |||
| 5. Syntax and Semantics | 5. Syntax and Semantics | |||
| 5.1. Method of Specifying Syntax | 5.1. Method of Specifying Syntax | |||
| The syntax tables specify a superset of the syntax of all allowed | The syntax tables specify a superset of the syntax of all allowed | |||
| bitstreams. Note that a decoder MUST implement some means for | bitstreams. Note that a decoder MUST implement some means for | |||
| identifying entry points into the bitstream and some means to | identifying entry points into the bitstream and some means to | |||
| identify and handle non-conforming bitstreams. The methods for | identify and handle non-conforming bitstreams. The methods for | |||
| identifying and handling errors and other such situations are not | identifying and handling errors and other such situations are not | |||
| skipping to change at line 2663 ¶ | skipping to change at line 2663 ¶ | |||
| 9.4.2. Limits of Levels and Bands | 9.4.2. Limits of Levels and Bands | |||
| Table 4 specifies the limits for each level of each band. A level to | Table 4 specifies the limits for each level of each band. A level to | |||
| which a coded frame conforms is indicated by the syntax elements | which a coded frame conforms is indicated by the syntax elements | |||
| level_idc and band_idc as follows: | level_idc and band_idc as follows: | |||
| * level_idc MUST be set equal to a value of 30 times the level | * level_idc MUST be set equal to a value of 30 times the level | |||
| number specified in Table 4. | number specified in Table 4. | |||
| +=======+===================+=====================================+ | +=======+==================+=====================================+ | |||
| | level | Max luma sample | Max coded data rate (Mbits/sec) | | | level | Max luma sample | Max coded data rate (Mbit/s) | | |||
| | | rate (sample/sec) | | | | | rate (samples/s) | | | |||
| | | +=====================================+ | | | +=====================================+ | |||
| | | | band_idc== | | | | | band_idc== | | |||
| | | +========+========+=========+=========+ | | | +========+========+=========+=========+ | |||
| | | | 0 | 1 | 2 | 3 | | | | | 0 | 1 | 2 | 3 | | |||
| +=======+===================+========+========+=========+=========+ | +=======+==================+========+========+=========+=========+ | |||
| | 1 | 3,041,280 | 8 | 11 | 15 | 23 | | | 1 | 3,041,280 | 8 | 11 | 15 | 23 | | |||
| +-------+-------------------+--------+--------+---------+---------+ | +-------+------------------+--------+--------+---------+---------+ | |||
| | 1.1 | 6,082,560 | 16 | 21 | 30 | 45 | | | 1.1 | 6,082,560 | 16 | 21 | 30 | 45 | | |||
| +-------+-------------------+--------+--------+---------+---------+ | +-------+------------------+--------+--------+---------+---------+ | |||
| | 2 | 15,667,200 | 39 | 54 | 76 | 114 | | | 2 | 15,667,200 | 39 | 54 | 76 | 114 | | |||
| +-------+-------------------+--------+--------+---------+---------+ | +-------+------------------+--------+--------+---------+---------+ | |||
| | 2.1 | 31,334,400 | 78 | 108 | 152 | 227 | | | 2.1 | 31,334,400 | 78 | 108 | 152 | 227 | | |||
| +-------+-------------------+--------+--------+---------+---------+ | +-------+------------------+--------+--------+---------+---------+ | |||
| | 3 | 66,846,720 | 114 | 159 | 222 | 333 | | | 3 | 66,846,720 | 114 | 159 | 222 | 333 | | |||
| +-------+-------------------+--------+--------+---------+---------+ | +-------+------------------+--------+--------+---------+---------+ | |||
| | 3.1 | 133,693,440 | 227 | 317 | 444 | 666 | | | 3.1 | 133,693,440 | 227 | 317 | 444 | 666 | | |||
| +-------+-------------------+--------+--------+---------+---------+ | +-------+------------------+--------+--------+---------+---------+ | |||
| | 4 | 265,420,800 | 455 | 637 | 892 | 1,338 | | | 4 | 265,420,800 | 455 | 637 | 892 | 1,338 | | |||
| +-------+-------------------+--------+--------+---------+---------+ | +-------+------------------+--------+--------+---------+---------+ | |||
| | 4.1 | 530,841,600 | 910 | 1,274 | 1,784 | 2,675 | | | 4.1 | 530,841,600 | 910 | 1,274 | 1,784 | 2,675 | | |||
| +-------+-------------------+--------+--------+---------+---------+ | +-------+------------------+--------+--------+---------+---------+ | |||
| | 5 | 1,061,683,200 | 1,820 | 2,548 | 3,567 | 5,350 | | | 5 | 1,061,683,200 | 1,820 | 2,548 | 3,567 | 5,350 | | |||
| +-------+-------------------+--------+--------+---------+---------+ | +-------+------------------+--------+--------+---------+---------+ | |||
| | 5.1 | 2,123,366,400 | 3,639 | 5,095 | 7,133 | 10,699 | | | 5.1 | 2,123,366,400 | 3,639 | 5,095 | 7,133 | 10,699 | | |||
| +-------+-------------------+--------+--------+---------+---------+ | +-------+------------------+--------+--------+---------+---------+ | |||
| | 6 | 4,777,574,400 | 7,278 | 10,189 | 14,265 | 21,397 | | | 6 | 4,777,574,400 | 7,278 | 10,189 | 14,265 | 21,397 | | |||
| +-------+-------------------+--------+--------+---------+---------+ | +-------+------------------+--------+--------+---------+---------+ | |||
| | 6.1 | 8,493,465,600 | 14,556 | 20,378 | 28,529 | 42,793 | | | 6.1 | 8,493,465,600 | 14,556 | 20,378 | 28,529 | 42,793 | | |||
| +-------+-------------------+--------+--------+---------+---------+ | +-------+------------------+--------+--------+---------+---------+ | |||
| | 7 | 16,986,931,200 | 29,111 | 40,756 | 57,058 | 85,586 | | | 7 | 16,986,931,200 | 29,111 | 40,756 | 57,058 | 85,586 | | |||
| +-------+-------------------+--------+--------+---------+---------+ | +-------+------------------+--------+--------+---------+---------+ | |||
| | 7.1 | 33,973,862,400 | 58,222 | 81,511 | 114,115 | 171,172 | | | 7.1 | 33,973,862,400 | 58,222 | 81,511 | 114,115 | 171,172 | | |||
| +-------+-------------------+--------+--------+---------+---------+ | +-------+------------------+--------+--------+---------+---------+ | |||
| Table 4: General level limits | Table 4: General level limits | |||
| Table 5 shows widely used typical configurations of resolution and | Table 5 shows widely used typical configurations of resolution and | |||
| frame rates of video and corresponding levels for them. | frame rates of video and corresponding levels for them. | |||
| +==========+============+==================+===============+=======+ | +==========+============+==================+===============+=======+ | |||
| | use case | resolution | frame per second | luma sample | level | | | use case | resolution | frame per second | luma sample | level | | |||
| | | | | per second | | | | | | | per second | | | |||
| +==========+============+==================+===============+=======+ | +==========+============+==================+===============+=======+ | |||
| | 720p | 1280 x 720 | 30 | 27,648,000 | 2.1 | | | 720p | 1280 x 720 | 30 | 27,648,000 | 2.1 | | |||
| +----------+------------+------------------+---------------+-------+ | +----------+------------+------------------+---------------+-------+ | |||
| End of changes. 6 change blocks. | ||||
| 41 lines changed or deleted | 41 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. | ||||