IP Library › Granted Patent US 7,457,743
Granted Patent B2
US 7,457,743 · App. 11/296,957 · Granted Nov 25, 2008

Method for improving the coding efficiency of an audio signal

Assignee: Nokia Corporation
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 7,457,743
App. No.
11/296,957
Granted
Nov 25, 2008
Kind
B2
Abstract

Coding an audio signal includes selecting a reference sequence that has the smallest error relative to a sequence of the audio signal, calculating pitch predictor coefficients for the selected reference sequence using one of a set of pitch predictor orders, producing a predicted sequence from the selected reference sequence using the calculated pitch predictor coefficients, and calculating a coding error by comparing the predicted sequence to the sequence to be coded. Coding also includes calculating pitch predictor coefficients for the selected reference sequence, producing a predicted sequence from the selected reference sequence, and calculating a coding error by comparing the predicted sequence to the sequence to be coded, for each of the remaining orders of the set of pitch predictor orders, and using an order from the set of pitch predictor orders that results in the smallest coding error to select a coding method for the sequence to be coded.

Claims (165)

1. A method of coding an audio signal comprising:

selecting a reference sequence from a number of stored sequences that has the smallest error relative to a sequence of the audio signal to be coded;

calculating pitch predictor coefficients for the selected reference sequence using one of a set of pitch predictor orders;

producing a predicted sequence from the selected reference sequence using the calculated pitch predictor coefficients;

calculating a coding error by comparing the predicted sequence to the sequence to be coded;

calculating pitch predictor coefficients for the selected reference sequence, producing a predicted sequence from the selected reference sequence, and calculating a coding error by comparing the predicted sequence to the sequence to be coded, for each of the remaining orders of the set of pitch predictor orders; and

using an order from the set of pitch predictor orders that results in the smallest coding error to select a coding method for the sequence to be coded.

2. The method of claim 1 , wherein the selected coding method includes coding the sequence to be coded on the basis of the predicted sequence.

3. The method of claim 1 , wherein the selected coding method includes coding the sequence to be coded on the basis of the audio signal itself.

4. The method of claim 1 , further comprising:

defining a coding efficiency for the predicted sequence having the smallest coding error; and

performing the selected coding method on the basis of the predicted signal having the smallest coding error if the determined coding efficiency indicates that the amount of coded information is less than if the coding is performed on the audio signal itself.

5. The method of claim 4 , further comprising:

transforming the sequence to be coded into the frequency domain to determine a frequency spectrum of the sequence of the audio signal;

transforming each predicted signal into the frequency domain to determine a frequency spectrum of each predicted signal; and

determining the coding efficiency for the predicted signal having the smallest coding error on the basis of the frequency spectrum of the audio signal and the frequency spectrum of the predicted signal.

6. The method of claim 5 , further comprising determining the prediction error information for each of the predicted signals as a difference spectrum representing using the frequency spectrum of the audio signal and the frequency spectrum of the predicted signal.

7. The method of claim 5 , wherein the transformation to the frequency domain is conducted using a modified DCT transform.

8. The method of claim 1 , further comprising:

determining a coding efficiency for each of the predicted signals; and

determining a coding error for those predicted signals for which the determined coding efficiency information indicates that the amount of coded information is less than if the coding is performed on the basis of the audio signal to be coded and the coding is performed on the basis of the predicted signal that provides the smallest coding error.

9. The method of claim 1 , further comprising:

determining a coding efficiency for each of the predicted signals; and

performing the coding on the basis of the predicted signal that provides the highest coding efficiency, if the determined coding efficiency information indicates that the amount of coded information is less than if the coding is performed on the basis of the audio signal to be coded.

10. The method of claim 1 , further comprising:

determining a coding efficiency for each of the predicted signals; and

performing the coding on the basis of the predicted signal that provides the highest coding efficiency.

11. The method of claim 1 , further comprising:

transforming the audio signal to be coded into the frequency domain to determine the frequency spectrum of the audio signal;

transforming each predicted signal into the frequency domain to determine the frequency spectrum of each predicted signal; and

determining a coding efficiency for each predicted signal on the basis of the frequency spectrum of the audio signal and the frequency spectrum of the predicted signal.

12. The method of claim 1 , wherein the audio signal is a speech signal.

13. The method of claim 1 , further comprising determining the coding error using one of the following:

at least squares method;

a method based on psychoacoustic modeling of the audio signal to be coded.

14. The method of claim 13 , wherein if the coding error is determined using the least squares method, the coding error is calculated from the prediction error.

15. A method of decoding an audio signal comprising:

receiving a coded sequence;

determining if the coded sequence was formed from an original audio signal;

if the coded sequence was not formed from an original audio signal, extracting a pitch predictor order, pitch predictor coefficients, and lag information used to code the coded sequence from the coded sequence;

selecting a reference sequence from a number of stored sequences that has the smallest error relative to the coded sequence based on the lag information;

producing a predicted signal from the selected reference sequence, the extracted pitch predictor order and pitch predictor coefficients; and

transforming the predicted signal, wherein the transformed predicted signal substantially corresponds to the original audio signal;

the method further comprising:

transforming the coded sequence to the original signal if the coded sequence was formed from the original audio signal.

16. The method of claim 15 , wherein the coded sequence is received in a bit string.

17. The method of claim 16 , wherein the bit string includes an indication that the coded sequence was not formed from the original audio signal, the pitch predictor order, pitch predictor coefficients, and lag information.

18. The method of claim 16 , wherein when the bit string includes an indication that the coded sequence was formed from the original audio signal and frequency spectrum values of the original audio signal.

19. An encoder of a data transmission system for encoding an audio signal, the encoder operable to:

select a reference sequence from a number of stored sequences that has the smallest error relative to a sequence of the audio signal to be coded;

calculate pitch predictor coefficients for the selected reference sequence using one of a set of pitch predictor orders;

produce a predicted sequence from the selected reference sequence using the calculated pitch predictor coefficients;

calculate a coding error by comparing the predicted sequence to the sequence to be coded;

calculate pitch predictor coefficients for the selected reference sequence, produce a predicted sequence from the selected reference sequence, and calculate a coding error by comparing the predicted sequence to the sequence to be coded, for each of the remaining orders of the set of pitch predictor orders; and

use an order from the set of pitch predictor orders that results in the smallest coding error to select a coding method for the sequence to be coded.

20. The encoder of claim 19 , wherein the selected coding method includes coding the sequence to be coded on the basis of the predicted sequence.

21. The encoder of claim 19 , wherein the selected coding method includes coding the sequence to be coded on the basis of the audio signal itself.

22. The encoder of claim 19 , further operable to:

define a coding efficiency for the predicted sequence having the smallest coding error; and

perform the selected coding method on the basis of the predicted signal having the smallest coding error if the determined coding efficiency indicates that the amount of coded information is less than if the coding is performed on the audio signal itself.

23. The encoder of claim 22 , further operable to:

transform the sequence to be coded into the frequency domain to determine a frequency spectrum of the sequence of the audio signal;

transform each predicted signal into the frequency domain to determine a frequency spectrum of each predicted signal; and

determine the coding efficiency for the predicted signal having the smallest coding error on the basis of the frequency spectrum of the audio signal and the frequency spectrum of the predicted signal.

24. The encoder of claim 23 , further operable to determine the prediction error information for each of the predicted signals as a difference spectrum representing using the frequency spectrum of the audio signal and the frequency spectrum of the predicted signal.

25. The encoder of claim 23 , wherein the transformation to the frequency domain is conducted using a modified DCT transform.

26. The encoder of claim 19 , further operable to:

determine a coding efficiency for each of the predicted signals; and

determine a coding error for those predicted signals for which the determined coding efficiency information indicates that the amount of coded information is less than if the coding is performed on the basis of the audio signal to be coded and the coding is performed on the basis of the predicted signal that provides the smallest coding error.

27. The encoder of claim 19 , further operable to:

determine a coding efficiency for each of the predicted signals; and

perform the coding on the basis of the predicted signal that provides the highest coding efficiency, if the determined coding efficiency information indicates that the amount of coded information is less than if the coding is performed on the basis of the audio signal to be coded.

28. The encoder of claim 19 , further operable to:

determine a coding efficiency for each of the predicted signals; and

perform the coding on the basis of the predicted signal that provides the highest coding efficiency.

29. The encoder of claim 19 , further operable to:

transform the audio signal to be coded into the frequency domain to determine the frequency spectrum of the audio signal;

transform each predicted signal into the frequency domain to determine the frequency spectrum of each predicted signal; and

determine a coding efficiency for each predicted signal on the basis of the frequency spectrum of the audio signal and the frequency spectrum of the predicted signal.

30. The encoder of claim 19 , wherein the audio signal is a speech signal.

31. The encoder of claim 19 , further operable to determine the coding error using one of the following:

at least squares method;

a method based on psychoacoustic modeling of the audio signal to be coded.

32. The encoder of claim 31 , wherein if the coding error is determined using the least squares method, the encoder calculates the coding error from the prediction error.

33. A decoder of a data transmission system for decoding an audio signal, the decoder operable to:

receive a coded sequence;

determine if the coded sequence was formed from an original audio signal;

if the coded sequence was not formed from an original audio signal, extract a pitch predictor order, pitch predictor coefficients, and lag information used to code the coded sequence from the coded sequence;

select a reference sequence from a number of stored sequences that has the smallest error relative to the coded sequence based on the lag information;

produce a predicted signal from the selected reference sequence, the extracted pitch predictor order and pitch predictor coefficients; and

transform the predicted signal, wherein the transformed predicted signal substantially corresponds to the original audio signal;

the decoder further operable to:

transform the coded sequence to the original signal if the coded sequence was formed from the original audio signal.

34. The decoder of claim 33 , further operable to receive the coded sequence in a bit string.

35. The decoder of claim 34 , wherein the bit string includes an indication that the coded sequence was not formed from the original audio signal, the pitch predictor order, pitch predictor coefficients, and lag information.

36. The decoder of claim 34 , wherein when the bit string includes an indication that the coded sequence was formed from the original audio signal and frequency spectrum values of the original audio signal.

37. A computer readable medium encoded with instructions for encoding an audio signal, the instructions capable of being executed by a computer causing the computer to:

select a reference sequence from a number of stored sequences that has the smallest error relative to a sequence of the audio signal to be coded;

calculate pitch predictor coefficients for the selected reference sequence using one of a set of pitch predictor orders;

produce a predicted sequence from the selected reference sequence using the calculated pitch predictor coefficients;

calculate a coding error by comparing the predicted sequence to the sequence to be coded;

calculate pitch predictor coefficients for the selected reference sequence, produce a predicted sequence from the selected reference sequence, and calculate a coding error by comparing the predicted sequence to the sequence to be coded, for each of the remaining orders of the set of pitch predictor orders; and

use an order from the set of pitch predictor orders that results in the smallest coding error to select a coding method for the sequence to be coded.

38. A computer readable medium encoded with instructions for decoding an audio signal, the instructions capable of being executed by a computer causing the computer to:

receive a coded sequence;

determine if the coded sequence was formed from an original audio signal;

if the coded sequence was not formed from an original audio signal, extract a pitch predictor order, pitch predictor coefficients, and lag information used to code the coded sequence from the coded sequence;

select a reference sequence from a number of stored sequences that has the smallest error relative to the coded sequence based on the lag information;

produce a predicted signal from the selected reference sequence, the extracted pitch predictor order and pitch predictor coefficients; and

transform the predicted signal, wherein the transformed predicted signal substantially corresponds to the original audio signal;

wherein the computer readable program when executed on a computer further causes the computer to:

transform the coded sequence to the original signal if the coded sequence was formed from the original audio signal.

39. An encoder for coding an audio signal comprising:

a lag block for selecting a reference sequence from a number of stored sequences that has the smallest error relative to a sequence to be coded;

a coefficient calculator for calculating pitch predictor coefficients for the selected reference sequence using one of a set of pitch predictor orders;

a pitch predictor block for producing a predicted sequence from the selected reference sequence using the calculated pitch predictor coefficients;

a calculation block for calculating a coding error by comparing the predicted sequence to the sequence to be coded;

wherein the coefficient calculator, the pitch predictor block, and the calculation block are operable to calculate pitch predictor coefficients for the selected reference sequence, produce a predicted sequence from the selected reference sequence, and calculate a coding error by comparing the predicted sequence to the sequence to be coded, for each of the remaining orders of the set of pitch predictor orders; and

wherein the calculation block is further operable to use an order from the set of pitch predictor orders that results in the smallest coding error to select a coding method for the sequence to be coded.

40. A decoder for decoding an audio signal comprising:

a receiving device for receiving a coded sequence;

a decoder for determining if the coded sequence was formed from an original audio signal;

the receiving device operable to extract a pitch predictor order, pitch predictor coefficients, and lag information used to code the coded sequence from the coded sequence if the coded sequence was not formed from an original audio signal;

a pitch predictor block for selecting a reference sequence from a number of stored sequences that has the smallest error relative to the coded sequence based on the lag information;

the pitch predictor block operable to produce a predicted signal from the selected reference sequence, the extracted pitch predictor order and pitch predictor coefficients, and to transform the predicted signal, wherein the transformed predicted signal substantially corresponds to the original audio signal;

wherein the decoder is operable to transform the coded sequence to the original signal if the coded sequence was formed from the original audio signal

41. A data transmission system for coding an audio signal comprising:

circuitry for coding having:

a lag block for selecting a reference sequence from a number of stored sequences that has the smallest error relative to a sequence to be coded;

a coefficient calculator for calculating pitch predictor coefficients for the selected reference sequence using one of a set of pitch predictor orders;

a pitch predictor block for producing a predicted sequence from the selected reference sequence using the calculated pitch predictor coefficients;

a calculation block for calculating a coding error by comparing the predicted sequence to the sequence to be coded;

wherein the coefficient calculator, the pitch predictor block, and the calculation block are operable to calculate pitch predictor coefficients for the selected reference sequence, produce a predicted sequence from the selected reference sequence, and calculate a coding error by comparing the predicted sequence to the sequence to be coded, for each of the remaining orders of the set of pitch predictor orders; and

wherein the calculation block is further operable to use an order from the set of pitch predictor orders that results in the smallest coding error to select a coding method for the sequence to be coded.

42. A data transmission system for decoding an audio signal comprising:

circuitry for decoding having:

a receiving device for receiving a coded sequence;

a decoder for determining if the coded sequence was formed from an original audio signal;

the receiving device operable to extract a pitch predictor order, pitch predictor coefficients, and lag information used to code the coded sequence from the coded sequence if the coded sequence was not formed from an original audio signal;

a pitch predictor block for selecting a reference sequence from a number of stored sequences that has the smallest error relative to the coded sequence based on the lag information;

the pitch predictor block operable to produce a predicted signal from the selected reference sequence, the extracted pitch predictor order and pitch predictor coefficients, and to transform the predicted signal, wherein the transformed predicted signal substantially corresponds to the original audio signal;

wherein the decoder is operable to transform the coded sequence to the original signal if the coded sequence was formed from the original audio signal

43. A data transmission system comprising:

circuitry for coding having:

a lag block for selecting a reference sequence from a number of stored sequences that has the smallest error relative to a sequence of an original audio signal to be coded;

a coefficient calculator for calculating pitch predictor coefficients for the selected reference sequence using one of a set of pitch predictor orders;

a pitch predictor block for producing a predicted sequence from the selected reference sequence using the calculated pitch predictor coefficients;

a calculation block for calculating a coding error by comparing the predicted sequence to the sequence to be coded;

wherein the coefficient calculator, the pitch predictor block, and the calculation block are operable to calculate pitch predictor coefficients for the selected reference sequence, produce a predicted sequence from the selected reference sequence, and calculate a coding error by comparing the predicted sequence to the sequence to be coded, for each of the remaining orders of the set of pitch predictor orders; and

wherein the calculation block is further operable to use an order from the set of pitch predictor orders that results in the smallest coding error to select a coding method for the sequence to be coded and to generate a coded sequence;

the data transmission system also including circuitry for decoding having:

a receiving device for receiving the coded sequence;

a decoder for determining if the coded sequence was formed from the original audio signal;

the receiving device operable to extract a pitch predictor order, pitch predictor coefficients, and lag information used to code the coded sequence from the coded sequence if the coded sequence was not formed from the original audio signal;

a pitch predictor block for selecting a reference sequence from a number of stored sequences that has the smallest error relative to the coded sequence based on the lag information;

the pitch predictor block operable to produce a predicted signal from the selected reference sequence, the extracted pitch predictor order and pitch predictor coefficients, and to transform the predicted signal, wherein the transformed predicted signal substantially corresponds to the original audio signal;

wherein the decoder is operable to transform the coded sequence to the original signal if the coded sequence was formed from the original audio signal.

44. A computer readable medium encoded with instructions for transmitting a coded sequence, the instructions capable of being executed by a computer causing the computer to transmit the coded sequence utilizing a data structure comprising:

an indication in the data structure that the coded sequence was not formed from an original audio signal, a pitch predictor order, pitch predictor coefficients, and lag information determined by:

selecting a reference sequence from a number of stored sequences that has the smallest lag relative to a sequence of the original audio signal;

calculating pitch predictor coefficients for the selected reference sequence using one of a set of pitch predictor orders;

producing a predicted sequence from the selected reference sequence using the calculated pitch predictor coefficients;

calculating a coding error by comparing the predicted sequence to the sequence to be coded;

calculating pitch predictor coefficients for the selected reference sequence, producing a predicted sequence from the selected reference sequence, and calculating a coding error by comparing the predicted sequence to the sequence to be coded, for each of the remaining orders of the set of pitch predictor orders; and

including the lag information and the pitch predictor order and pitch predictor coefficients in the data structure that result in the smallest coding error.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 28, 2021
From: PROVENANCE ASSET GROUP LLC
To: RPX CORPORATION
Reel/Frame 059352/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: NOKIA US HOLDINGS INC.
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058363/0723 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: CORTLAND CAPITAL MARKETS SERVICES LLC
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058983/0104 →
ASSIGNMENT AND ASSUMPTION AGREEMENT Recorded Feb 14, 2019
From: NOKIA USA INC.
To: NOKIA US HOLDINGS INC.
Reel/Frame 048370/0682 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP, LLC
To: CORTLAND CAPITAL MARKET SERVICES, LLC
Reel/Frame 043967/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP LLC
To: NOKIA USA INC.
Reel/Frame 043879/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2017
From: NOKIA TECHNOLOGIES OY; NOKIA SOLUTIONS AND NETWORKS BV; ALCATEL LUCENT SAS
To: PROVENANCE ASSET GROUP LLC
Reel/Frame 043877/0001 →
Priority Claims (1)
FI 991537 · Jul 5, 1999 · national
Continuity (2)
Division 0961046100 · Jul 5, 2000
Related Publication 20060089832A1 · Apr 27, 2006