Constant bit-rate control in a video coder by way of pre-analysis of a slice of the pictures
First Claim
1. A method for providing a constant bit-rate (CBR) at a certain value responsive to optimization criteria for transferring a data stream of encoded picture sequences, the method comprising the steps of:
- a) estimating a number of bits for encoding a current picture and a successive picture belonging to a same group of pictures (GOP) of a sequence based on a target number of coding bits for each picture of the sequence as a function of encoding data of pictures preceding the current picture;
b) determining a reference value of a quantization parameter at a local level for an n-th macroblock of data that complies with a limit established by the estimated number of bits for the n-th macroblock;
c) calculating an effective quantization parameter for each macroblock as a function of a filling state of an output buffer of the data stream of coded data and of an activity parameter of the macroblock;
d) calculating a distribution profile of target bits over a picture using a pre-analysis of at least one line of a macroblock (GOS) of less than the whole current picture, distributing the allocated bits as a function of the local complexity of the single n-th macroblock and of the number of bits effectively used in the pre-analysis, effective encoding of the GOS of the preceding picture being used for distributing the allocated bits as a function of the local complexity of the n-th single macroblock and of the number of bits effectively used during the effective coding;
e) calculating a distribution profile of target bits over the GOS given by a ratio between the estimated number of bits required for the encoding obtained using a pre-analysis of the current GOS of less than the whole current picture;
f) intermediately computing a distribution profile of the target bit among the different lines of macroblocks based upon the ratio between entropv values derived from a pre-analysis of the current GOS less than the whole current picture multiplied by the target number of a bit usage profile; and
g) the pre-analysis of the current GOS being carried out using a calculation of the entropy on histograms of the discrete cosine transform (DCT) coefficients of the whole GOS.
1 Assignment
0 Petitions
Accused Products
Abstract
An algorithm based on a pre-analysis implements an efficient constant bit-rate control with a reduced requirement on a buffer memory capacity. The pre-analysis is on at least one slice (GOS) of the current whole picture, and/or on a mix of information on the pre-analysis of a slice of the preceding picture and on the actual encoding data of the preceding whole picture. The pre-analysis may be carried out by precoding the GOS with a constant reference quantizer or by entropy computation. The local control of the bit-rate is implemented by an integrative-proportional controller.
84 Citations
23 Claims
-
1. A method for providing a constant bit-rate (CBR) at a certain value responsive to optimization criteria for transferring a data stream of encoded picture sequences, the method comprising the steps of:
-
a) estimating a number of bits for encoding a current picture and a successive picture belonging to a same group of pictures (GOP) of a sequence based on a target number of coding bits for each picture of the sequence as a function of encoding data of pictures preceding the current picture;
b) determining a reference value of a quantization parameter at a local level for an n-th macroblock of data that complies with a limit established by the estimated number of bits for the n-th macroblock;
c) calculating an effective quantization parameter for each macroblock as a function of a filling state of an output buffer of the data stream of coded data and of an activity parameter of the macroblock;
d) calculating a distribution profile of target bits over a picture using a pre-analysis of at least one line of a macroblock (GOS) of less than the whole current picture, distributing the allocated bits as a function of the local complexity of the single n-th macroblock and of the number of bits effectively used in the pre-analysis, effective encoding of the GOS of the preceding picture being used for distributing the allocated bits as a function of the local complexity of the n-th single macroblock and of the number of bits effectively used during the effective coding;
e) calculating a distribution profile of target bits over the GOS given by a ratio between the estimated number of bits required for the encoding obtained using a pre-analysis of the current GOS of less than the whole current picture;
f) intermediately computing a distribution profile of the target bit among the different lines of macroblocks based upon the ratio between entropv values derived from a pre-analysis of the current GOS less than the whole current picture multiplied by the target number of a bit usage profile; and
g) the pre-analysis of the current GOS being carried out using a calculation of the entropy on histograms of the discrete cosine transform (DCT) coefficients of the whole GOS. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for providing a constant bit-rate (CBR) at a certain value responsive to optimization criteria for transferring a data stream of encoded picture sequences, the method comprising the steps of:
-
a) estimating a number of bits necessary for encoding a current picture and a successive picture belonging to a same group of pictures (GOP) of a sequence based on a target number of coding bits for each picture of the sequence as a function of encoding data of pictures preceding the current picture;
b) determining a reference value of a quantization parameter at a local level for an n-th macroblock of data that complies with a limit established by the estimated number of bits for the n-th macroblock;
c) calculating an effective quantization parameter for each macroblock as a function of a filling state of an output buffer of the data stream of coded data and of an activity parameter of the macroblock;
d) calculating a distribution profile of target bits over a picture using a pre-analysis of at least one line of a macroblock (GOS) of less than the whole current picture, distributing the allocated bits as a function of the local complexity of the single n-th macroblock and of the number of bits effectively used in the pre-analysis;
e) calculating a distribution profile of target bits over the GOS given by a ratio between the estimated number of bits required for the encoding obtained using a pre-analysis of the current GOS of less than the whole current picture, and calculating the distribution profile of target bits from the effective coding of the corresponding GOS of the preceding picture multiplied by the target number of bits for the whole current picture;
f) intermediately computing a distribution profile of the target bit among the different lines of macroblocks based upon the ratio between entropy values derived from a pre-analysis of the current GOS of less than the whole current picture is multiplied by the target number of a bit usage profile; and
g) the pre-analysis of the current GOS being carried out using a calculation of the entropy on histograms of the DCT coefficients of the whole GOS. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A video encoder comprising:
-
a controller for controlling a bit-rate of a bitstream of encoded video sequences to be transmitted over a transmission channel at a constant transmission rate, said controller comprising an output buffer, and an integrative-proportional controller connected to said output buffer and having an input receiving contents of said output buffer, and having an output providing a compressed video sequence of moving pictures to generate the bit-stream to be transmitted through the transmission channel, each picture comprising a plurality of macroblocks of pixels compressed with transform coding and/or temporal prediction and/or bi-dimensional motion compensated interpolation techniques to produce respectively I and/or P and/or B frames;
said controller intermediately computing a distribution profile of target bits among different lines of macroblocks, named GOS, equal to a ratio between entropy values derived from a pre-analysis of the GOS of the current picture, and multiplying the ratio by a target number of a bit usage profile, the pre-analysis being carried out using a calculation of the entropy on histograms of transform coding coefficients of the whole GOS, and calculating a target number of a bit usage profile by the effective encoding of the corresponding GOS of the previous picture multiplied by a target number of bits for the whole current picture. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
-
19. A method for controlling a bit-rate of a bitstream of encoded video sequences to be transmitted over a channel at a constant transmission rate comprising:
-
compressing a video sequence of moving pictures to generate the bitstream, each picture comprising a plurality of macroblocks of pixels compressed with transform coding and/or temporal prediction and/or bi-dimensional motion compensated interpolation techniques to produce respectively I and/or P and/or B frames;
intermediately computing a distribution profile of target bits among different lines of macroblocks, named GOS, equal to a ratio between entropy values derived from a pre-analysis of the GOS of the current picture, and multiplying the ratio by a target number of a bit usage profile;
the pre-analysis being carried out using a calculation of the entropy on histograms of transform coding coefficients of the whole GOS; and
calculating a target number of a bit usage profile by the effective encoding of the corresponding GOS of the previous picture multiplied by a target number of bits for the whole current picture. - View Dependent Claims (20, 21, 22, 23)
-
Specification