Method of controlling encoding rate, method of transmitting video data, encoding rate controller for video encoder, and video data transmission system using the encoding rate controller
First Claim
1. A method of controlling an encoding rate of a video encoder, the method comprising the steps of:
- (a) calculating a target number of bits-per-picture of a current picture type by using the average number of encoding bits-per-picture and the average target number of bits-per-picture of each picture type I, P, and B of a previous group of pictures (GOP) and a buffer balance value;
(b) calculating a quantizer scale value corresponding to a first macroblock-row of the current picture type by using the average quantizer scale value of a previous picture of the same type as the current picture and using the target number of bits;
(c) calculating a target number of bits per unit row and a number of encoding bits per unit row in a previous row for each macroblock-row of the current picture type, calculating a quantizer scale value corresponding to the current row by using functions of the target number of bits-per-picture and the number of encoding bits per unit row, and calculating a total number of encoding bits-per-picture of the current picture type;
(d) storing the quantizer scale value calculated in step (c), and outputting the quantizer scale values of the previous macroblock-rows and of the previous picture types; and
(e) calculating the buffer balance value by using the total number of encoding bits-per-picture and the average target number of bits-per-picture of the current picture type.
1 Assignment
0 Petitions
Accused Products
Abstract
A method of controlling an encoding (bit) rate and a method of transmitting video data, and an encoding (bit) rate controller for a video encoder and a video data transmission system employing the methods, wherein the number of bits is allocated to a current picture on the basis of previous encoding results without defining a relation between an encoding rate and the distortion, the limited number of bits is not forced when features of the current picture are different from those of the previous pictures, and a quantizer scale is set adaptively to various features of the current picture without using an additional number of bits corresponding to variation of the quantizer scale, so that it is possible to improve the picture quality of video data to be displayed on a monitor by using such real time variable bit-rate control.
-
Citations
20 Claims
-
1. A method of controlling an encoding rate of a video encoder, the method comprising the steps of:
-
(a) calculating a target number of bits-per-picture of a current picture type by using the average number of encoding bits-per-picture and the average target number of bits-per-picture of each picture type I, P, and B of a previous group of pictures (GOP) and a buffer balance value;
(b) calculating a quantizer scale value corresponding to a first macroblock-row of the current picture type by using the average quantizer scale value of a previous picture of the same type as the current picture and using the target number of bits;
(c) calculating a target number of bits per unit row and a number of encoding bits per unit row in a previous row for each macroblock-row of the current picture type, calculating a quantizer scale value corresponding to the current row by using functions of the target number of bits-per-picture and the number of encoding bits per unit row, and calculating a total number of encoding bits-per-picture of the current picture type;
(d) storing the quantizer scale value calculated in step (c), and outputting the quantizer scale values of the previous macroblock-rows and of the previous picture types; and
(e) calculating the buffer balance value by using the total number of encoding bits-per-picture and the average target number of bits-per-picture of the current picture type. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of transmitting video data, the method comprising steps of:
-
(a) receiving a quantizer scale value corresponding to a current macroblock-row of a current picture type, and encoding video data in accordance with the quantizer scale value;
(b) calculating the quantizer scale value corresponding to the current macroblock-row by using a target number of bits per unit row and the number of encoding bits per unit row in the previous macroblock-row for the encoded video data; and
(c) outputting the encoded video data in accordance with a transmission rate. - View Dependent Claims (10)
-
-
11. An encoding rate controller for a video encoder comprising:
-
a bit allocation unit which calculates a target number of bits-per-picture of a current picture type by using an average number of encoding bits-per-picture and an average target number of bits-per-picture of each picture type I, P and B of a previous group of pictures (GOP) and a buffer balance value;
a rate control unit which calculates a quantizer scale value corresponding to a first macroblock-row of the current picture type by using an average quantizer scale value of the last picture out of the previous pictures of the current picture'"'"'s type, and the target number of bits per unit row;
an adaptive quantization unit which calculates a target number of bits per unit row and a number of encoding bits per unit row in a previous row for each macroblock-row of the current picture type, calculates a quantizer scale value corresponding to the current row by using functions including the target number of bits per unit row and the number of encoding bits per unit row, and calculates a total number of encoding bits of the current picture type;
a memory which stores the quantizer scale value calculated by the adaptive quantization unit, and outputs the quantizer scale values of the previous macroblock-rows and the previous picture types; and
a buffer rate calculating unit which calculates the buffer balance value by using the total number of encoding bits-per-picture and the average target number of bits-per-picture of the current picture type. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
-
19. A video data transmission system comprising:
-
a video encoder that receives a quantizer scale value corresponding to a current macroblock-row of a current picture type, encodes video input data in accordance with the quantizer scale value, and outputs the encoded video data;
an encoding rate controller that calculates the quantizer scale value corresponding to the current macroblock-row by using a target number of bits per unit row and the number of encoding bits per unit row in the previous macroblock-row for the encoded video data; and
an encoder buffer that outputs the encoded video data in accordance with a transmission rate. - View Dependent Claims (20)
-
Specification