Patent ID: 7643553

Claim:
A method for real-time encoding a plurality of data channels using a fixed number of total bits, comprising the steps of: a. preprocessing each channel to generate complexity data by analyzing each channel before it is encoded, wherein the preprocessing step comprises the step of preprocessing each channel to generate complexity data by analyzing each channel for a first time period and a second time period ahead of the encoding process; b. aggregating the generated complexity data at a closed loop controller; c. calculating, by the closed loop controller, a bit rate to assign to each channel based on the generated complexity data, wherein the bit rate assigned to each channel is determined by optimizing a channel distortion model, wherein the channel distortion model is defined by the relation: S i B i = K 1 ⁢ D i + K 2 , wherein S i is a complexity measurement computed by summing frame complexities of an i th channel, a function of the time period boundaries of the first time period, and a function of the time period boundaries of the second time period, B i is a number of bits, K 1 and K 2 are nonzero constants, and D 1 is distortion from an i th encoder; d. communicating the calculated bit rate for each channel from the closed loop controller to an encoder; and e. encoding each channel using the communicated bit rate.