EP1480201A2

Reduction of quantization-induced block-discontinuities in an audio coder

Abstract

A method and system for reduction of quantization-induced block-discontinuities arising from lossy compression and decompression of continuous signals, especially audio signals. One embodiment encompasses a general purpose, ultra-low latency, efficient audio codec algorithm. More particularly, the invention includes a method and apparatus for compression and decompression of audio signals using a novel boundary analysis and synthesis framework to substantially reduce quantization-induced frame or block-discontinuity; a novel adaptive cosine packet transform (ACPT) as the transform of choice to effectively capture the input audio characteristics; a signal-residue classifier to separate the strong signal clusters form the noise and weak signal components (collectively called residue); and adaptive sparse vector quantization (ASVQ) algorithm for signal components; a stochastic noise model for the residue; and an associated rate control algorithm. The invention further includes corresponding computer program implementations of these and other algorithms.

EP1480201A2, drawing sheet 1
Sheet 1 of 35

Term

Term ended

Projected expiry passed 25 May 2020, 6.3 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

84 claims: 37 independent, 47 dependent

  1. 1
    A method for compressing a digitized time-domain continuous input signal, including:formatting the input signal into a plurality of time-domain blocks having boundaries;forming an overlapping time-domain block by prepending a small fraction of a previous time-domain block to a current time-domain block;transforming each overlapping time-domain block to a transform domain block comprising a plurality of coefficients;partitioning the coefficients of each transform domain block into signal coefficients and residue coefficients;quantizing the signal coefficients for each transform domain block and generating signal quantization indices indicative of such quantization;modeling the residue coefficients for each transform domain block as stochastic noise and generating residue quantization indices indicative of such quantization;and,formatting the signal quantization indices and the residue quantization indices for each transform domain block as an output bit-stream.
  2. 4
    The method of any one of the preceding claims, further including normalizing each time-domain block before transforming each such time-domain block to a transform domain block.
  3. 5
    The method of any one of the preceding claims, wherein transforming each time-domain block to a transform domain block comprising a plurality of coefficients includes applying an adaptive cosine packet transform algorithm.
  4. 8
    The method of any one of the preceding claims, further including applying a rate control feedback loop to dynamically modify parameters of either or both of the partitioning step or the quantizing step to approach a target bit rate.
  5. 11
    The method of any one of the preceding claims, wherein partitioning the coefficients of each time-domain block into signal coefficients and residue coefficients includes:sorting the absolute value of the coefficients of each transfer domain block;calculating a global noise floor, from the sorted coefficients;calculating zone indices indicative of signal coefficient clusters;calculating a local noise floor, based on the zone indices;determining signal coefficients based on the global noise floor, each local noise floor, and the zone indices;removing weak signal coefficients from the signal coefficients;removing residue coefficients from the signal coefficients in a first pass;merging close neighbor signal coefficient clusters;and,removing residue coefficients from the signal coefficients in a second pass.
  6. 13
    The method of any one of the preceding claims, wherein quantizing the signal coefficients and generating signal quantization indices indicative of such quantization includes applying an adaptive sparse quantization algorithm.
  7. 14
    The method of any one of the preceding claims, wherein modeling the residue coefficients for each transform domain block as stochastic noise includes:constructing a residue vector for each transform domain block;synthesizing a time-domain residue frame from each residue vector;splitting each residue frame into a plurality of residue sub-frames;transforming each residue sub-frame into sub-bands of spectral coefficients;andquantizing the spectral coefficients.
  8. 16
    A computer program, residing on a computer-readable medium, for compressing a digitized time-domain continuous input signal, the computer program comprising instructions for causing a computer to perform the method according to any one of the preceding claims.
  9. 17
    A system for compressing a digitized time-domain continuous input signal in accordance with the method of any one of Claims 1 to 15, including:means for formatting the input signal into a plurality of time-domain blocks having boundaries;means for forming an overlapping time-domain block by prepending a small fraction of a previous time-domain block to a current time-domain block;means for transforming each overlapping time-domain block to a transform domain block comprising a plurality of coefficients;means for partitioning the coefficients of each transform domain block into signal coefficients and residue coefficients;means for quantizing the signal coefficients for each transform domain block and generating signal quantization;means for modeling the residue coefficients for each transform domain block as stochastic noise and generating residue quantization indices indicative of such quantization;and,means for formatting the signal quantization indices and the residue quantization indices for each transform domain block as an output bit-stream.
  10. 20
    The system of any one of Claims 17 to 19, wherein the means for transforming each time-domain block to a transform domain block comprising a plurality of coefficients includes means for applying an adaptive cosine packet transform algorithm.
  11. 23
    The system of any one of Claims 17 to 22, further including means for applying a rate control feedback loop to dynamically modify parameters of either or both of the means for partitioning step or the means for quantizing step to approach a target bit rate.
  12. 26
    The system of any one of Claims 17 to 25, wherein the means for partitioning the coefficients of each time-domain block into signal coefficients and residue coefficients includes:means for sorting the absolute value of the coefficients of each transfer domain block;means for calculating a global noise floor, from the sorted coefficients;means for calculating zone indices indicative of signal coefficient clusters;means for calculating a local noise floor, based on the zone indices;means for determining signal coefficients based on the global noise floor, each local noise floor, and the zone indices;means for removing weak signal coefficients from the signal coefficients;means for removing residue coefficients from the signal coefficients in a first pass;means for merging close neighbor signal coefficient clusters;and,means for removing residue coefficients from the signal coefficients in a second pass.
  13. 28
    The system of any one of Claims 17 to 27, wherein the means for quantizing the signal coefficients and generating signal quantization indices indicative of such quantization includes means for applying an adaptive sparse quantization algorithm.
  14. 29
    The system of any one of Claims 27 to 28, wherein the means for modeling the residue coefficients for each transform domain block as stochastic noise includes:means for constructing a residue vector for each transform domain block;means for synthesizing a time-domain residue frame from each residue vector;means for splitting each residue frame into a plurality of residue sub-frames;means for transforming each residue sub-frame into sub-bands of spectral coefficients;andmeans for quantizing the spectral coefficients.
  15. 31
    A method for performing an adaptive cosine packet transform, including:determining whether a pre-split is needed for a current cosine packet transform frame to form pre-split subframes;applying a cosine packet transform to the pre-split subframes based on the determination;performing a best basis analysis;anddetermining optimal transform coefficients.
  16. 32
    The method Claim 31, further including:determining how to perform the pre-split for the current cosine packet transform frame to form the pre-split subframes;andperforming the pre-split for the current cosine packet transform frame to form the pre-split subframes.
  17. 34
    The method of any one of Claims 31 to 33, wherein performing the best basis analysis includes:building a statistics tree for the pre-split subframes;generating an extended statistics tree from the statistics tree;andperforming the best basis analysis to determine an extended best basis tree from the extended statistics tree.
  18. 36
    A system for performing an adaptive cosine packet transform, including:means for determining whether a pre-split is needed for a current cosine packet transform frame to form pre-split subframes;means for applying a cosine packet transform to the pre-split subframes based on the determination;means for performing a best basis analysis;andmeans for determining optimal transform coefficients.
  19. 39
    The system of any one of Claims 36 to 38, wherein the means for performing the best basis analysis includes:means for building a statistics tree for the pre-split subframes;means for generating an extended statistics tree from the statistics tree;andmeans for performing the best basis analysis to determine an extended best basis tree from the extended statistics tree.
  20. 41
    A method for decompressing a bit stream including signal vector quantization indices and residue vector quantization indices, including:generating a time-domain reconstructed signal waveform and residue vector quantization indices from an output bit stream;applying a noise synthesis algorithm to the residue vector quantization indices to generate a time-domain reconstructed residue waveform;combining the reconstructed signal waveform and the reconstructed residue waveform as a reconstructed input signal waveform block;andapplying a boundary synthesis algorithm to the reconstructed input signal waveform block to generate an output signal having substantially reduced boundary discontinuities.
  21. 46
    The method of any one of Claims 41 to 45, further including renormalizing the reconstructed input signal waveform block.
  22. 47
    The method of any one of Claims 41 to 46, wherein the noise synthesis algorithm includes a stochastic noise synthesis algorithm.
  23. 51
    The method of any one of Claims 41 to 50, further including applying a soft clipping algorithm to the output signal to reduce spectral distortion.
  24. 52
    A computer program, residing on a computer-readable medium, for decompressing a bit-stream including signal vector quantization indices and residue vector quantization indices, the computer program comprising instructions for causing a computer to perform the method of any one of Claims 45 to 52.
  25. 53
    A method for performing an inverse adaptive cosine packet transform, including:calculating bell window functions;joining an extended best basis tree into a combined best basis tree;andsynthesizing a time-domain signal from optimal cosine packet coefficients using the bell window functions.
  26. 55
    A system for decompressing a bit stream including signal vector quantization indices and residue vector quantization indices, including:means for generating a time-domain reconstructed signal waveform and residue vector quantization indices from an output bit stream;means for applying a noise synthesis algorithm to the residue vector quantization indices to generate a time-domain reconstructed residue waveform;means for combining the reconstructed signal waveform and the reconstructed residue waveform as a reconstructed input signal waveform block;andmeans for applying a boundary synthesis algorithm to the reconstructed input signal waveform block to generate an output signal having substantially reduced boundary discontinuities.
  27. 59
    The system of any one of Claims 53 to 58, further including means for renormalizing the reconstructed input signal waveform block.
  28. 60
    The system of any one of Claims 53 to 59, wherein the means for applying the noise synthesis algorithm includes means for applying a stochastic noise synthesis algorithm.
  29. 64
    The system of any one of Claims 55 to 63, further including means for applying a soft clipping algorithm to the output signal to reduce spectral distortion.
  30. 65
    A system for performing an inverse adaptive cosine packet transform, including:means for calculating bell window functions;means for joining an extended best basis tree into a combined best basis tree;andmeans for synthesizing a time-domain signal from optimal cosine packet coefficients using the bell window functions.
  31. 67
    A method for ultra-low latency compression and decompression for a general-purpose audio input signal, including:formatting the audio input signal into a plurality of time-domain blocks having boundaries;forming an overlapping time-domain block by prepending a small fraction of a previous time-domain block to the current time-domain block;transforming each time-domain block to a transform domain block comprising a plurality of coefficients;partitioning the coefficients of each transform domain block into signal coefficients and residue coefficients;quantizing the signal coefficients for each transform domain block and generating signal quantization indices indicative of such quantization;modeling the residue coefficients for each transform domain block as stochastic noise and generating residue quantization indices indicative of such quantization;formatting the signal quantization indices and the residue quantization indices for each transform domain block as an output bit-stream;decoding the output bit-stream into quantization indices and residue quantization indices;applying an inverse quantization algorithm to the quantization indices to generate signal coefficients;applying an inverse transform to the signal coefficients to generate a time-domain reconstructed signal waveform;applying a stochastic noise synthesis algorithm to the residue quantization indices to generate a time-domain reconstructed residue waveform;combining the reconstructed signal waveform and the reconstructed residue waveform as a reconstructed input signal waveform block;and,applying a boundary synthesis algorithm to the reconstructed input signal waveform block to generate an output signal having substantially reduced boundary discontinuities.
  32. 69
    A system for ultra-low latency compression and decompression for a general-purpose audio input signal, including:means for formatting the audio input signal into a plurality of time-domain blocks having boundaries;means for forming an overlapping time-domain block by prepending a small fraction of a previous time-domain block to the current time-domain block;means for transforming each time-domain block to a transform domain block comprising a plurality of coefficients;means for partitioning the coefficients of each transform domain block into signal coefficients and residue coefficients;means for quantizing the signal coefficients for each transform domain block and generating signal quantization indices indicative of such quantization;means for modeling the residue coefficients for each transform domain block as stochastic noise and generating residue quantization indices indicative of such quantization;means for formatting the signal quantization indices and the residue quantization indices for each transform domain block as an output bit stream;means for decoding the output bit-stream into quantization indices and residue quantization indices;means for applying an inverse quantization algorithm to the quantization indices to generate signal coefficients;means for applying an inverse transform to the signal coefficients to generate a time-domain reconstructed signal waveform;means for applying a stochastic noise synthesis algorithm to the residue quantization indices to generate a time-domain reconstructed residue waveform;means for combining the reconstructed signal waveform and the reconstructed residue waveform as a reconstructed input signal waveform block;andmeans for applying a boundary synthesis algorithm to the reconstructed input signal waveform block to generate an output signal having substantially reduced boundary discontinuities.
  33. 70
    A zero-latency method for reducing quantization-induced block-discontinuities of continuous data formatted into a plurality of time-domain blocks having boundaries, including:performing a first quantization of each block and generating first quantization indices indicative of such first quantization;determining a quantization error for each block;selecting any quantization error arising near the boundaries of each block from the first quantization;performing a second quantization of any selected quantization error and generating second quantization indices indicative of such second quantization;andgenerating an output bit-stream based on the first and second quantization indices.
  34. 71
    A zero-latency method for reducing quantization-induced block-discontinuities of continuous data formatted into a plurality of contiguous original time-domain blocks, including:performing a reversible transform on each original time-domain block into a corresponding transformed block that yields energy concentration in the transformed domain;performing a first quantization of each transformed block and generating first quantization indices indicative of such first quantization;performing the inverse transform on quantized transform components of the first quantization indices for each transformed block, yielding a corresponding quantized time-domain block;computing a quantization error by taking the difference between the original time-domain block and its corresponding quantized time-domain block;selecting the quantization error arising near the boundaries of each original time-domain block from such first quantization;performing a second quantization on the selected quantization error and generating second quantization indices indicative of such second quantization;andgenerating an output bit-stream based on the first and second quantization indices.
  35. 76
    The method of any one of Claims 71 to 75, further including applying a windowing function to each original time-domain block to enhance residue energy concentration near the boundaries of each such original time-domain block.
  36. 83
    The system of Claims 79 or 81, wherein the means for generating the output bit-stream includes means for encoding the first and second quantization indices and formatting such encoded indices as the output bit-stream.
  37. 84
    The system of Claims 79 or 81, wherein the continuous data includes continuous time-domain data, wherein the system further comprises means for formatting the continuous time-domain data into a plurality of time-domain blocks having boundaries.
Independent claims37