Patent ID: 6330532
Filing Date: 2001-12-11
Classification: G10L

Abstract:
In a speech coder configured to encode a plurality of frames at varying encoding rates, a method of maintaining a target average bit rate for the speech coder, comprising the steps of:encoding a frame at a preselected encoding rate;computing a running average bit rate for a predefined number of encoded frames;subtracting the running average bit rate from a predefined target average bit rate to obtain a difference value;dividing the difference value by the preselected encoding rate to obtain a quotient value;if the quotient value is less than zero, accumulating a first predefined number of possible occurrence counts of speech coder performance threshold values that are less than a current performance threshold value to produce a first accumulated value, the predefined number of occurrence counts of speech coder performance threshold values being chosen such that the first accumulated value is greater than the absolute value of the quotient value;if the quotient value is less than zero, subtracting the product of a decrement-per-speech-coder-performance-threshold-occurrence-count-value and the first predefined number of occurrence counts of speech coder performance threshold values from the current performance threshold value to obtain a new performance threshold value;if the quotient value is greater than or equal to zero, accumulating a second predefined number of possible occurrence counts of speech coder performance threshold values that are greater than the current performance threshold value to produce a second accumulated value, the predefined number of occurrence counts of speech coder performance threshold values being chosen such that the second accumulated value is greater than the quotient value; andif the quotient value is greater than or equal to zero, adding the product of an increment-per-speech-coder-performance-threshold-occurrence-count-value and the second predefined number of occurrences of speech coder performance threshold values to the current performance threshold value to obtain a new performance threshold value.