7.2 OPTIMUM CODING IN THE FREQUENCY DOMAIN
Brandenburg in 1987 proposed a 132 kb/s algorithm known as optimum coding in the frequency domain (OCF) [Bran87b], which is in some respects an extension of the well-known adaptive transform coder (ATC) for speech. The OCF was refined several times over the years, with two enhanced versions appearing after the original algorithm. The OCF is of interest because of its influence on current standards.
The original OCF (Figure 7.1) works as follows. The input signal is first buffered in 512 sample blocks and transformed to the frequency domain using the DCT. Next, transform components are quantized and entropy coded. A single quantizer is used for all transform components. Adaptive quantization and entropy coding work together in an iterative procedure to achieve a fixed bit rate. The initial quantizer step size is derived from the spectral flatness measure (Eq. (5.13)).
In the inner loop of Figure 7.1, the quantizer step size is iteratively increased and a new entropy-coded bit stream is formed at each update until the desired bit rate is achieved. Increasing the step size at each update produces fewer levels, which in turn reduces the bit rate. Using a second iterative procedure, a perceptual analysis is introduced after the inner loop is done. First, critical band analysis is applied. Then, a masking function is applied which combines a flat −6 dB masking threshold with an interband masking threshold, leading to an estimate of JND for each ...
Get Audio Signal Processing and Coding now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.