Rate control method for video transcoding
First Claim
Patent Images
1. A method of controlling the rate of an MPEG video stream to achieve a target bit rate, said method comprising the steps of:
- computing a rate reduction factor, wherein computing the rate reduction factor includesi) setting said rate reduction factor to and a rate increase variable to 0,ii) adding the size of a current frame in a frame buffer to a total size variable,iii) adding the duration of the current frame to a total delays variable,iv) calculating a current value of the number of bits in a vbv buffer,v) if the current value of the number of bits in the vbv buffer is less than the lower threshold, increasing said rate reduction factor,vi) if the current value of the number of bits in the vbv buffer is greater than the upper threshold, increasing said rate increase variable, andvii) repeating steps ii) to vi) for a plurality of frames in a said frame buffer;
b) computing a quantizer scale;
c) applying the results of steps a) and b) to the encoder to achieve said target bit rate; and
d) repeating steps a) to c) for a plurality of frames in said video stream.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention discloses a system and method for rate control of MPEG video streams to achieve a target bit rate in a transcoder at the best visual quality possible. The invention monitors video buffer fullness for selecting the amount of rate reduction necessary to achieve a target bit rate. The invention also utilizes a method for selective requantization of DCT coefficients to assure visual quality.
110 Citations
9 Claims
-
1. A method of controlling the rate of an MPEG video stream to achieve a target bit rate, said method comprising the steps of:
-
computing a rate reduction factor, wherein computing the rate reduction factor includes i) setting said rate reduction factor to and a rate increase variable to 0, ii) adding the size of a current frame in a frame buffer to a total size variable, iii) adding the duration of the current frame to a total delays variable, iv) calculating a current value of the number of bits in a vbv buffer, v) if the current value of the number of bits in the vbv buffer is less than the lower threshold, increasing said rate reduction factor, vi) if the current value of the number of bits in the vbv buffer is greater than the upper threshold, increasing said rate increase variable, and vii) repeating steps ii) to vi) for a plurality of frames in a said frame buffer; b) computing a quantizer scale; c) applying the results of steps a) and b) to the encoder to achieve said target bit rate; and d) repeating steps a) to c) for a plurality of frames in said video stream. - View Dependent Claims (2, 3)
-
-
4. A computer readable medium encoded with a computer program including instructions for controlling the rate of an MPEG video stream to achieve a target bit rate, said instructions comprising, when executed by a processing device, the steps of:
-
a) computing a rate reduction factor, wherein computing the rate reduction factor includes i) setting said rate reduction factor and a rate increase variable to 0, ii) adding the size of a current frame in a frame buffer to a total size variable, iii) adding the duration of said current frame to a total delays variable, iv) calculating a current value of the number of bits in a vbv buffer, v) if the current value of the number of bits in the vbv buffer is less than the lower threshold, increasing said rate reduction factor, vi) if the current value of the number of bits in the vbv buffer is greater than the upper threshold, increasing said rate increase variable, and vii) repeating steps ii) to vi) for a plurality of frames in said frame buffer, b) computing a quantizer scale; c) applying the results of steps a) and b) to the encoder to achieve said target bit rate; and repeating steps a) to c) for a plurality of frames in said video stream. - View Dependent Claims (5)
-
-
6. A computer readable medium encoded with a computer program including instructions for controlling the rate of an MPEG video stream to achieve a target bit rate, said instructions comprising, when executed by a processing device, the steps of:
-
a) computing a rate reduction factor; b) computing a quantizer scale, wherein computing said quantizer scale comprises; i) calculating a cumulative distribution function for each macroblock in a current frame, ii) initializing a quantizer multiplier array, iii) setting the quantizer scale for each macroblock in a current frame, iv) calculating a quantizer multiply for each macroblock in the current frame, and v) setting a quantizer scale code for each macroblock in the current frame, and, c) applying the results of steps a) and b) to an encoder to achieve said target bit rate; and repeating steps a) to c) for a plurality of frames in said video stream.
-
-
7. A system for controlling the rate of an MPEG video stream to achieve a target bit rate, said system comprising:
-
a) means for computing a rate reduction factor, wherein the means for computing the rate reduction factor includes i) means for setting said rate reduction factor and a rate increase variable to 0, ii) means for adding the size of a current frame in a frame buffer to a total size variable, iii) means for adding the duration of the current frame to a total delays variable, iv) means for calculating a current value of the number of bits in a vbv buffer, v) means for increasing said rate reduction factor if the current value of the number of bits in the vbv buffer is less than the lower threshold, and vi) means for increasing said rate increase variable if the current value of the number of bits in the vbv buffer is greater than the upper threshold; b) means for computing a quantizer scale; c) means for applying the results of steps a) and b) to the encoder to achieve said target bit rate; and repeating steps a) to c) for a plurality of frames in said video steam. - View Dependent Claims (8)
-
-
9. A system for controlling the rate of an MPEG video steam to achieve a target bit rate, said system comprising:
-
a) means for computing a rate reduction factor; b) means for computing a quantizer scale, wherein said means for computing a quantizer scale comprises; i) means for calculating a cumulative distribution function for each macroblock in a current frame, ii) means for initializing a quantizer multiplier array, iii) means for setting the quantizer scale for each macroblock in the current frame, iv) means for calculating a quantizer multiply for each macroblock in the current frame, and v) means for setting a quantizer scale code for each macroblock in the current frame; c) means for applying the results of steps a) and b) to an encoder to achieve said target bit rate.
-
Specification