IP Library Granted Patent US 8,515,767
Granted Patent B2
US 8,515,767 · App. 12/263,726 · Granted Aug 20, 2013

Technique for encoding/decoding of codebook indices for quantized MDCT spectrum in scalable speech and audio codecs

Inventor: Yuriy Reznik (San Diego, CA)
Assignee: QUALCOMM Incorporated
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,515,767
App. No.
12/263,726
Granted
Aug 20, 2013
Kind
B2
Abstract

Codebook indices for a scalable speech and audio codec may be efficiently encoded based on anticipated probability distributions for such codebook indices. A residual signal from a Code Excited Linear Prediction (CELP)-based encoding layer may be obtained, where the residual signal is a difference between an original audio signal and a reconstructed version of the original audio signal. The residual signal may be transformed at a Discrete Cosine Transform (DCT)-type transform layer to obtain a corresponding transform spectrum. The transform spectrum is divided into a plurality of spectral bands, where each spectral band having a plurality of spectral lines. A plurality of different codebooks are then selected for encoding the spectral bands, where each codebook is associated with a codebook index. A plurality of codebook indices associated with the selected codebooks are then encoded together to obtain a descriptor code that more compactly represents the codebook indices.

Claims (96)

1. A method for encoding in a scalable speech and audio codec, comprising:

obtaining a residual signal from a Code Excited Linear Prediction (CELP)-based encoding layer, where the residual signal is a difference between an original audio signal and a reconstructed version of the original audio signal;

transforming the residual signal at a Discrete Cosine Transform (DCT)-type transform layer to obtain a corresponding transform spectrum;

dividing the transform spectrum into a plurality of spectral bands, each spectral band having a plurality of spectral lines;

selecting a plurality of different codebooks for encoding the spectral bands, where the codebooks have associated codebook indices;

performing vector quantization on spectral lines in each spectral band using the selected codebooks to obtain vector quantized indices;

encoding the codebook indices, wherein encoding the codebooks indices includes encoding at least two adjacent spectral bands into a pair-wise descriptor code that is based on a probability distribution of quantized characteristics of the adjacent spectral bands;

encoding the vector quantized indices; and

forming a bitstream of the encoded codebook indices and encoded vector quantized indices to represent the quantized transform spectrum.

2. The method of claim 1 , wherein the DCT-type transform layer is a Modified Discrete Cosine Transform (MDCT) layer and the transform spectrum is an MDCT spectrum.

3. The method of claim 1 , further comprising:

dropping a set of spectral bands to reduce the number of spectral bands prior to encoding.

4. The method of claim 1 , wherein encoding the at least two adjacent spectral bands includes

scanning adjacent pairs of spectral bands to ascertain their characteristics;

identifying a codebook index for each of the spectral bands;

obtaining a descriptor component and an extension code component for each codebook index.

5. The method of claim 4 , further comprising:

encoding a first descriptor component and a second descriptor component in pairs to obtain the pair-wise descriptor code.

6. The method of claim 4 , wherein the pair-wise descriptor code maps to one of a plurality of possible variable length codes (VLC) for different codebooks.

7. The method of claim 6 , wherein VLC codebooks are assigned to each pair of descriptor components based on a relative position of each corresponding spectral band within an audio frame and an encoder layer number.

8. The method of claim 7 , wherein the pair-wise descriptor codes are based on a quantized set of typical probability distributions of descriptor values in each pair of descriptors.

9. The method of claim 4 , wherein a single descriptor component is utilized for codebook indices greater than a value k, and extension code components are utilized for codebook indices greater than the value k.

10. The method of claim 4 , wherein each codebook index is associated a descriptor component that is based on a statistical analysis of distributions of possible codebook indices, with codebook indices having a greater probability of being selected being assigned individual descriptor components and codebook indices having a smaller probability of being selected being grouped and assigned to a single descriptor.

11. A scalable speech and audio encoder device, comprising:

a Discrete Cosine Transform (DCT)-type transform layer module adapted to

obtain a residual signal from a Code Excited Linear Prediction (CELP)-based encoding layer, where the residual signal is a difference between an original audio signal and a reconstructed version of the original audio signal, wherein the Discrete Cosine Transform (DCT)-type transform layer module is further adapted to transform the residual signal at a Discrete Cosine Transform (DCT)-type transform layer to obtain a corresponding transform spectrum;

a band selector for dividing the transform spectrum into a plurality of spectral bands, each spectral band having a plurality of spectral lines;

a codebook selector for selecting a plurality of different codebooks for encoding the spectral bands, where the codebooks have associated codebook indices;

a vector quantizer for performing vector quantization on spectral lines in each spectral band using the selected codebooks to obtain vector quantized indices;

a codebook indices encoder for encoding a plurality of codebooks indices together, wherein the codebooks indices encoder includes is adapted to encode codebook indices for at least two adjacent spectral bands into a pair-wise descriptor code that is based on a probability distribution of quantized characteristics of the adjacent spectral bands;

a vector quantized indices encoder for encoding the vector; and

a transmitter for transmitting a bitstream of the encoded codebook indices and encoded vector quantized indices to represent the quantized transform spectrum.

12. The device of claim 11 , wherein the DCT-type transform layer module is a Modified Discrete Cosine Transform (MDCT) layer module and the transform spectrum is an MDCT spectrum.

13. The device of claim 11 , wherein the codebook selector is adapted to scan adjacent pairs of spectral bands to ascertain their characteristics, and further comprising:

a codebook index identifier for identifying a codebook index for each of the spectral bands; and

a descriptor selector module for obtaining a descriptor component and an extension code component for each codebook index.

14. The device of claim 11 , wherein the pair-wise descriptor code maps to one of a plurality of possible variable length codes (VLC) for different codebooks.

15. The device of claim 14 , wherein VLC codebooks are assigned to each pair of descriptor components based on a relative position of each corresponding spectral band within an audio frame and an encoder layer number.

16. A scalable speech and audio encoder device, comprising:

means for obtaining a residual signal from a Code Excited Linear Prediction (CELP)-based encoding layer, where the residual signal is a difference between an original audio signal and a reconstructed version of the original audio signal;

means for transforming the residual signal at a Discrete Cosine Transform (DCT)-type transform layer to obtain a corresponding transform spectrum;

means for dividing the transform spectrum into a plurality of spectral bands, each spectral band having a plurality of spectral lines;

means for selecting a plurality of different codebooks for encoding the spectral bands, where the codebooks have associated codebook indices;

means for performing vector quantization on spectral lines in each spectral band using the selected codebooks to obtain vector quantized indices;

means for encoding the codebook indices, wherein encoding the codebooks indices includes encoding at least two adjacent spectral bands into a pair-wise descriptor code that is based on a probability distribution of quantized characteristics of the adjacent spectral bands;

means for encoding the vector quantized indices; and

means for forming a bitstream of the encoded codebook indices and encoded vector quantized indices to represent the quantized transform spectrum.

17. A non-transitory machine-readable medium comprising instructions operational for scalable speech and audio encoding, which when executed by one or more processors causes the processors to:

obtain a residual signal from a Code Excited Linear Prediction (CELP)-based encoding layer, where the residual signal is a difference between an original audio signal and a reconstructed version of the original audio signal;

transform the residual signal at a Discrete Cosine Transform (DCT)-type transform layer to obtain a corresponding transform spectrum;

divide the transform spectrum into a plurality of spectral bands, each spectral band having a plurality of spectral lines;

select a plurality of different codebooks for encoding the spectral bands, where the codebooks have associated codebook indices;

perform vector quantization on spectral lines in each spectral band using the selected codebooks to obtain vector quantized indices;

encode the codebook indices, wherein encoding the codebooks indices includes encoding at least two adjacent spectral bands into a pair-wise descriptor code that is based on a probability distribution of quantized characteristics of the adjacent spectral bands;

encode the vector quantized indices; and

form a bitstream of the encoded codebook indices and encoded vector quantized indices to represent the quantized transform spectrum.

18. A method for decoding in a scalable speech and audio codec, comprising:

obtaining a bitstream having a plurality of encoded codebook indices and a plurality of encoded vector quantized indices that represent a quantized transform spectrum of a residual signal, where the residual signal is a difference between an original audio signal and a reconstructed version of the original audio signal from a Code Excited Linear Prediction (CELP)-based encoding layer, wherein the plurality of encoded codebook indices are represented by a pair-wise descriptor code representing a plurality of adjacent transform spectrum spectral bands of an audio frame;

decoding the plurality of encoded codebook indices to obtain decoded codebook indices for a plurality of spectral bands;

decoding the plurality of encoded vector quantized indices to obtain decoded vector quantized indices for the plurality of spectral bands; and

synthesizing the plurality of spectral bands using the decoded codebook indices and decoded vector quantized indices to obtain a reconstructed version of the residual signal at an Inverse Discrete Cosine Transform (IDCT)-type inverse transform layer.

19. The method of claim 18 , wherein the IDCT-type transform layer is an Inverse Modified Discrete Cosine Transform (IMDCT) layer and the transform spectrum is an IMDCT spectrum.

20. The method of claim 18 , wherein decoding the plurality of encoded codebook indices includes

obtaining a descriptor component corresponding to each of the plurality of spectral bands;

obtaining an extension code component corresponding to each of the plurality of spectral bands;

obtaining a codebook index component corresponding to each of the plurality of spectral bands based on the descriptor component and extension code component; and

utilizing the codebook index to synthesize a spectral band for each corresponding to each of the plurality of spectral bands.

21. The method of claim 20 wherein the descriptor component is associated with a codebook index that is based on a statistical analysis of distributions of possible codebook indices, with codebook indices having a greater probability of being selected being assigned individual descriptor components and codebook indices having a smaller probability of being selected being grouped and assigned to a single descriptor.

22. The method of claim 21 , wherein a single descriptor component is utilized for codebook indices greater than a value k, and extension code components are utilized for codebook indices greater than the value k.

23. The method of claim 18 , wherein the pair-wise descriptor code is based on a probability distribution of quantized characteristics of the adjacent spectral bands.

24. The method of claim 18 , wherein the pair-wise descriptor code maps to one of a plurality of possible variable length codes (VLC) for different codebooks.

25. The method of claim 24 , wherein VLC codebooks are assigned to each pair of descriptor components is based on a relative position of each corresponding spectral band within the audio frame and an encoder layer number.

26. The method of claim 18 , wherein pair-wise descriptor codes are based on a quantized set of typical probability distributions of descriptor values in each pair of descriptors.

27. A scalable speech and audio decoder device, comprising:

a receiver to obtain a bitstream having a plurality of encoded codebook indices and a plurality of encoded vector quantized indices that represent a quantized transform spectrum of a residual signal, where the residual signal is a difference between an original audio signal and a reconstructed version of the original audio signal from a Code Excited Linear Prediction (CELP)-based encoding layer, wherein the plurality of encoded codebook indices are represented by a pair-wise descriptor code representing a plurality of adjacent transform spectrum spectral bands of an audio frame;

a codebook index decoder for decoding the plurality of encoded codebook indices to obtain decoded codebook indices for a plurality of spectral bands;

a vector quantized index decoder for decoding the plurality of encoded vector quantized indices to obtain decoded vector quantized indices for the plurality of spectral bands; and

a band synthesizer for synthesizing the plurality of spectral bands using the decoded codebook indices and decoded vector quantized indices to obtain a reconstructed version of the residual signal at an Inverse Discrete Cosine Transform (IDCT)-type inverse transform layer.

28. The device of claim 27 , wherein the IDCT-type transform layer module is an Inverse Modified Discrete Cosine Transform (IMDCT) layer module and the transform spectrum is an IMDCT spectrum.

29. The device of claim 27 , further comprising:

a descriptor identifier module for obtaining a descriptor component corresponding to each of the plurality of spectral bands;

an extension code identifier for obtaining an extension code component corresponding to each of the plurality of spectral bands;

a codebook index identifier for obtaining a codebook index component corresponding to each of the plurality of spectral bands based on the descriptor component and extension code component; and

a codebook selector that utilizes the codebook index and a corresponding vector quantized index to synthesize a spectral band for each corresponding to each of the plurality of spectral bands.

30. The device of claim 27 , wherein the pair-wise descriptor code is based on a probability distribution of quantized characteristics of the adjacent spectral bands.

31. The device of claim 27 , wherein pair-wise descriptor codes are based on a quantized set of typical probability distributions of descriptor values in each pair of descriptors.

32. A scalable speech and audio decoder device, comprising:

means for obtaining a bitstream having a plurality of encoded codebook indices and a plurality of encoded vector quantized indices that represent a quantized transform spectrum of a residual signal, where the residual signal is a difference between an original audio signal and a reconstructed version of the original audio signal from a Code Excited Linear Prediction (CELP)-based encoding layer, wherein the plurality of encoded codebook indices are represented by a pair-wise descriptor code representing a plurality of adjacent transform spectrum spectral bands of an audio frame;

means for decoding the plurality of encoded codebook indices to obtain decoded codebook indices for a plurality of spectral bands;

means for decoding the plurality of encoded vector quantized indices to obtain decoded vector quantized indices for the plurality of spectral bands; and

means for synthesizing the plurality of spectral bands using the decoded codebook indices and decoded vector quantized indices to obtain a reconstructed version of the residual signal at an Inverse Discrete Cosine Transform (IDCT)-type inverse transform layer.

33. A non-transitory machine-readable medium comprising instructions operational for scalable speech and audio decoding, which when executed by one or more processors causes the processors to:

obtain a bitstream having a plurality of encoded codebook indices and a plurality of encoded vector quantized indices that represent a quantized transform spectrum of a residual signal, where the residual signal is a difference between an original audio signal and a reconstructed version of the original audio signal from a Code Excited Linear Prediction (CELP)-based encoding layer, wherein the plurality of encoded codebook indices are represented by a pair-wise descriptor code representing a plurality of adjacent transform spectrum spectral bands of an audio frame;

decode the plurality of encoded codebook indices to obtain decoded codebook indices for a plurality of spectral bands;

decode the plurality of encoded vector quantized indices to obtain decoded vector quantized indices for the plurality of spectral bands; and

synthesize the plurality of spectral bands using the decoded codebook indices and decoded vector quantized indices to obtain a reconstructed version of the residual signal at an Inverse Discrete Cosine Transform (IDCT)-type inverse transform layer.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2009
From: REZNIK, YURIY
To: QUALCOMM INCORPORATED
Reel/Frame 022781/0751 →
Continuity (2)
Provisional Application 60985263 · Nov 4, 2007
Related Publication 20090240491A1 · Sep 24, 2009