Patent ID: 7483488

Claim:
A method of reassigning virtual buffer levels to stabilize a video encoding process, the method comprising: assigning at an encoder initial values for virtual buffer occupancies for a set of I-pictures, P-pictures and B-pictures, respectively, each of the virtual buffer occupancies indicative of an occupancy level of a buffer at a decoder for each of a corresponding one of the I-pictures, the P-pictures and the B-pictures, respectively, prior to encoding a first block of a picture; computing a value for sum, where sum corresponds to a summation of the virtual buffer occupancy initial values for the I-pictures, for the P-pictures, and for the B-pictures; comparing the value for sum to a predetermined threshold T norm ; reassigning to alter each of the virtual buffer occupancy initial values for said set of I-pictures, P-pictures and B-pictures to an adaptively modified value corresponding to an unoccupied amount of the decoder buffer scaled respectively by a corresponding first factor in response to a first state of the comparison; said scale factors for the set summing to 1; reassigning each of the virtual buffer occupancy initial values for said set of I-pictures, P-pictures and B-pictures to respective previously assigned values thereof scaled by a second factor, different from the first factor and normalized to sum, in response to a second state of the comparison; and providing the reassigned virtual buffer occupancy initial values to the video encoding process prior to encoding a next picture for encoded transmission of said set of I-pictures, P-pictures, and B-pictures to the decoder buffer at an effectively constant average bit rate; said set exchanged between the encoder and encoder buffer, and decoder buffer and decoder respectively, at an optionally variable bit rate; wherein said set of I-pictures, P-pictures and B-pictures are not skipped.