IP Library Granted Patent US 9,786,292
Granted Patent B2
US 9,786,292 · App. 14/350,382 · Granted Oct 10, 2017

Audio encoding apparatus, audio decoding apparatus, audio encoding method, and audio decoding method

Inventors: Zongxian Liu (Singapore, SG); Masahiro Oshikiri (Kanagawa, JP)
Assignee: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA
G10L19/038H03M7/3082G10L19/002G10L2019/0001
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 9,786,292
App. No.
14/350,382
Granted
Oct 10, 2017
Kind
B2
Abstract

An audio encoding apparatus capable of reducing the bit rate even if a codebook having a larger codebook number is selected in a split multi-rate lattice vector quantization is provided. Sub-vector determining unit ( 121 ) determines, in the spectrum of an input signal having been divided into a predetermined number of sub-vectors, a sub-vector using the largest number of bits. Positional information encoding unit ( 122 ) encodes the positional information of the determined sub-vector. Codebook indication value estimating unit ( 124 ) estimates a number of used bits for a codebook indication value of the largest number of used bits by use of the (N−1) other codebook indication values, and generates a number-of-used-bits estimation value. Difference calculating unit ( 125 ) calculates a difference by subtracting the number-of-used-bits estimation value from the actual value of the codebook indication value of the largest number of used bits. Difference encoding unit ( 126 ) encodes the difference information.

Claims (54)

1. A speech encoding apparatus, comprising:

a memory that stores instructions;

a processor that executes the instructions;

a time-frequency domain transformer that transforms a time domain input speech signal to a frequency domain signal;

a calculator; and

a parameter encoder,

wherein, when executed by the processor, the instructions cause the processor to perform operations comprising:

dividing the frequency domain signal into a plurality of sub-vectors and quantizing spectral coefficients of each of the resultant sub-vectors;

encoding codebook indication values of all of the sub-vectors, the codebook indication values being obtained by the quantization, the codebook indication values representing codebook numbers in which larger numbers are given according to an energy amount of the plurality of sub-vectors, wherein the larger the codebook numbers, the larger a number of bits are used by each of the codebook indication values;

identifying, of the entire band, a band of a sub-vector with a codebook indication value having a largest used bit count among all of the codebook indication values; and

estimating a number of bits used by the codebook indication value having the largest used bit count, based on a total number of bits available in transmission units of the input speech signal and a number of used bits of a codebook indication value other than the codebook indication value having the largest used bit count;

wherein the calculator calculates, with respect to a number of bits necessary for encoding a codebook indication value of the band, a difference between an actual value and an estimated value, the actual value being an actual number of used bits of the codebook indication value having the largest used bit count, which is obtained by encoding the codebook indication value having the largest used bit count, and the estimated value being the estimated number of used bits of the codebook indication value having the largest used bit count, and the estimated value is obtained as the number of bits obtained by subtracting the total number of bits required for encoding a codebook indication value, other than that of the band, from the total number of bits usable for a codebook indication value of the entire band; and

wherein the parameter encoder encodes the identified position information of the sub-vector and the calculated difference information.

2. The speech encoding apparatus according to claim 1 ,

wherein the instructions further cause the processor to determine whether the identified position information of the sub-vector is to be encoded or not, depending on a result of comparison between the actual number of used bits of the codebook indication value having the largest used bit count and a prescribed threshold.

3. The speech encoding apparatus according to claim 2 ,

wherein, when the actual number of used bits of the codebook indication value having the largest used bit count is larger than the threshold, the calculator calculates the difference between the actual value and the estimated value.

4. The speech encoding apparatus according to claim 2 , wherein:

when the actual number of used bits of the codebook indication value having the largest used bit count is less than or equal to the threshold, the speech encoding apparatus estimates the number of bits used by a codebook indication value of a predetermined sub-vector based on the total number of bits available in transmission units of the input speech signal and the number of used bits of codebook indication value other than the codebook indication value of the predetermined sub-vector; and

the calculator calculates a difference between an actual value and an estimated value, the actual value being an actual number of used bits of the codebook indication value of the predetermined sub-vector, which is obtained by encoding the codebook indication value of the predetermined sub-vector, and the estimated value being the estimated number of used bits of the codebook indication value of the predetermined sub-vector.

5. The speech encoding apparatus according to claim 1 , wherein the input speech signal includes a signal on one or more channels of stereo or multi-channel signals.

6. The speech encoding apparatus according to claim 1 , wherein the input speech signal includes a spectrum coefficient sequence on multiple frames basis or multiple sub-frames basis.

7. A speech decoding apparatus, comprising:

a memory that stores instructions;

a processor that executes the instructions;

a receiver that acquires the encoded position information and difference information from the speech encoding apparatus according to claim 1 , and decodes the encoded position information and difference information; and

a frequency-time transformer;

wherein, when executed by the processor, the instructions cause the processor to perform operations comprising:

acquiring an encoded codebook indication value other than the codebook indication value having the largest used bit count from the speech encoding apparatus, and decoding the encoded codebook indication value;

estimating a number of bits used by the codebook indication value having the largest used bit count based on the total number of bits available in transmission units of the input speech signal and the number of used bits of the codebook indication value other than the codebook indication value having the largest used bit count;

adding the estimated number of bits used by the codebook indication value having the largest used bit count and the decoded difference information to calculate a codebook indication value having the largest used bit count;

generating all codebook indication values using the decoded position information, the decoded codebook indication value other than the codebook indication value having the largest used bit count, and the calculated codebook indication value having the largest used bit count; and

de-quantizing spectral coefficients of each of the sub-vectors using all the generated codebook indication values; and

wherein the frequency-time transformer transforms the de-quantized spectral coefficients into time domain.

8. The speech decoding apparatus according to claim 7 , wherein the speech decoding apparatus further determines whether all the codebook indication values are to be generated or not using the position information of the sub-vector of the calculated codebook indication value having the largest used bit count, depending on a result of comparison between the number of used bits of the calculated codebook indication value having the largest used bit count or a codebook indication value of a sub-vector at a previously fixed position and a prescribed threshold.

9. The speech decoding apparatus according to claim 8 , wherein, when the number of used bits of the calculated codebook indication value having the largest used bit count or the codebook indication value of the sub-vector at the previously fixed position is larger than the threshold, the speech decoding apparatus generates all the codebook indication values using the position information of the sub-vector of the calculated codebook indication value having the largest used bit count.

10. The speech decoding apparatus according to claim 8 , wherein the speech decoding apparatus further determines whether all the codebook indication values are to be generated or not using the position information of the sub-vector at the previously fixed position when the number of used bits of the calculated codebook indication value having the largest used bit count or the codebook indication value of the sub-vector at the previously fixed position is less than or equal to the threshold.

11. The speech decoding apparatus according to claim 8 , wherein a decoded spectrum is divided into a prescribed number of sub-bands, and the resultant sub-bands are scaled by gain correction coefficients.

12. A speech encoding method, comprising:

transforming a time domain input speech signal to a frequency domain signal;

dividing the frequency domain signal into a plurality of sub-vectors and quantizing spectral coefficients of each of the divided sub-vectors;

encoding codebook indication values of all of the sub-vectors, the codebook indication values being obtained by the quantizing, the codebook indication values representing codebook numbers in which larger numbers are given according to an energy amount of the plurality of sub-vectors, wherein the larger the codebook numbers, the larger a number of bits are used by each of the codebook indication values;

identifying, of the entire band, a band of a sub-vector with a codebook indication value having a largest used bit count among all of the codebook indication values;

estimating a number of bits used by the codebook indication value having the largest used bit count based on a total number of bits available in transmission units of the input speech signal and a number of used bits of a codebook indication value other than the codebook indication value having the largest used bit count;

calculating, with respect to a number of bits necessary for encoding a codebook indication value of the band, a difference between an actual value and an estimated value, the actual value being an actual number of used bits of the codebook indication value having the largest used bit count, which is obtained by encoding the codebook indication value having the largest used bit count, and the estimated value being the estimated number of used bits of the codebook indication value having the largest used bit count, and the estimated value is obtained as the number of bits obtained by subtracting the total number of bits required for encoding a codebook indication value, other than that of the band, from the total number of bits usable for a codebook indication value of the entire band; and

encoding the identified position information of the sub-vector and the calculated difference information as parameters.

13. A speech decoding method comprising:

decoding the position information and the difference information encoded by the speech encoding method according to claim 12 , as parameters;

decoding a codebook indication value which is encoded by the speech encoding method and which is other than the codebook indication value having the largest used bit count;

estimating a number of bits used by the codebook indication value having the largest used bit count based on a total number of bits available in transmission units of the input speech signal and the number of used bits of the codebook indication value other than the codebook indication value having the largest used bit count;

adding the estimated number of bits used by the codebook indication value having the largest used bit count and the decoded difference information to calculate a codebook indication value having the largest used bit count;

generating all codebook indication values using the decoded position information, the decoded codebook indication value other than the codebook indication value having the largest used bit count, and the calculated codebook indication value having the largest used bit count;

de-quantizing spectral coefficients of each of the sub-vectors using all the generated codebook indication values; and

transforming the de-quantized spectral coefficients into time domain.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 27, 2014
From: PANASONIC CORPORATION
To: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA
Reel/Frame 033033/0163 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2014
From: LIU, ZONGXIAN; OSHIKIRI, MASAHIRO
To: PANASONIC CORPORATION
Reel/Frame 032891/0230 →
Priority Claims (1)
JP 2011-237820 · Oct 28, 2011 · national
Continuity (1)
Related Publication 20140249806A1 · Sep 4, 2014