IP Library › Granted Patent US 11,282,530
Granted Patent B2
US 11,282,530 · App. 16/594,245 · Granted Mar 22, 2022

Methods, encoder and decoder for linear predictive encoding and decoding of sound signals upon transition between frames having different sampling rates

Inventors: Redwan Salami (Saint-Laurent, CA); Vaclav Eksler (Sherbrooke, CA)
Assignee: VOICEAGE EVS LLC
G10L19/12G10L19/06G10L19/167G10L19/173G10L19/24G10L19/26G10L25/06G10L19/07G10L21/038G10L2019/0002G10L2019/0004G10L2019/0016
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 11,282,530
App. No.
16/594,245
Granted
Mar 22, 2022
Kind
B2
Abstract

Methods, an encoder and a decoder are configured for transition between frames with different internal sampling rates. Linear predictive (LP) filter parameters are converted from a sampling rate S 1 to a sampling rate S 2 . A power spectrum of a LP synthesis filter is computed, at the sampling rate S 1 , using the LP filter parameters. The power spectrum of the LP synthesis filter is modified to convert it from the sampling rate S 1 to the sampling rate S 2 . The modified power spectrum of the LP synthesis filter is inverse transformed to determine autocorrelations of the LP synthesis filter at the sampling rate S 2 . The autocorrelations are used to compute the LP filter parameters at the sampling rate S 2.

Claims (123)

1. A method for encoding a sound signal, comprising:

sampling the sound signal during successive sound signal processing frames;

producing, in response to the sampled sound signal, parameters for encoding the sound signal during the successive frames, wherein the sound signal encoding parameters include linear predictive (LP) filter parameters, wherein producing the LP filter parameters comprises, upon switching from a first one of the frames using an internal sampling rate S 1 to a second one of the frames using an internal sampling rate S 2 , converting LP filter parameters from the first frame from the internal sampling rate S 1 to the internal sampling rate S 2 , and wherein converting the LP filter parameters from the first frame comprises:

computing, at the internal sampling rate S 1 , a power spectrum of a LP synthesis filter using the LP filter parameters;

extending the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 ;

truncating the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is larger than the internal sampling rate S 2 ;

applying an inverse Fourier transform to the extended or truncated power spectrum of the LP synthesis filter to determine autocorrelations of the LP synthesis filter at the internal sampling rate S 2 ; and

computing the LP filter parameters at the internal sampling rate S 2 by applying the Levinson-Durbin algorithm to the autocorrelations; and

encoding the sound signal encoding parameters into a bitstream.

2. The method as recited in claim 1 , wherein:

extending the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 is based on a ratio between the internal sampling rate S 1 and the internal sampling rate S 2 ; and

truncating the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is larger than the internal sampling rate S 2 is based on the ratio between the internal sampling rate S 1 and the internal sampling rate S 2 .

3. The method as recited in claim 1 , wherein the frames are divided into sub-frames, and wherein the method comprises computing LP filter parameters in each sub-frame of a current frame by interpolating LP filter parameters of the current frame at the internal sampling rate S 2 with LP filter parameters of a past frame converted from the internal sampling rate S 1 to the internal sampling rate S 2 .

4. The method as recited in claim 1 , comprising forcing a current frame to an encoding mode that does not use a history of an adaptive codebook.

5. The method as recited in claim 1 , comprising forcing a LP-parameter quantizer to use a non-predictive quantization method in a current frame upon switching between the internal sampling rates S 1 and S 2 .

6. The method as recited in claim 1 , wherein the power spectrum of the LP synthesis filter is a discrete power spectrum.

7. The method as recited in claim 1 , comprising:

computing the power spectrum of the LP synthesis filter at K samples;

extending the power spectrum of the LP synthesis filter to K(S 2 /S 1 ) samples if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 ; and

truncating the power spectrum of the LP synthesis filter to K(S 2 /S 1 ) samples if the internal sampling rate S 1 is larger than the internal sampling rate S 2 .

8. The method as recited in claim 1 , comprising:

computing the power spectrum of the LP synthesis filter at K samples;

adding K(S 2 −S 1 )/S 1 samples to the power spectrum of the LP synthesis filter if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 ; and

removing K(S 1 −S 2 )/S 1 samples from the power spectrum of the LP synthesis filter if the internal sampling rate S 1 is larger than the internal sampling rate S 2 .

9. The method as recited in claim 1 , comprising computing the power spectrum of the LP synthesis filter as an energy of a frequency response of the LP synthesis filter.

10. The method as recited in claim 1 , comprising:

computing the power spectrum of the LP synthesis filter comprises computing a K-sample power spectrum at K/2 samples from 0 to π since the power spectrum of the LP synthesis filter from π to 2π is a mirror image of the power spectrum from 0 to π.

11. The method as recited in claim 10 , wherein, if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 , extending the power spectrum comprises extending the power spectrum from a sample K/2 to a sample K 2 /2 by inserting a number of samples from sample K/2 to sample K 2 /2 since there is no original spectral contents from sample K/2 to sample K 2 /2, wherein K 2 is larger than K.

12. The method as recited in claim 1 , comprising resampling a memory of a synthesis filter upon switching between frames with different internal sampling rates.

13. The method as recited in claim 1 , comprising, to prevent increase of complexity of a decoder, skipping post-processing after switching to a different internal sampling rate.

14. A method for decoding a sound signal, comprising:

receiving a bitstream including sound signal encoding parameters in successive sound signal processing frames, wherein the sound signal encoding parameters include linear predictive (LP) filter parameters;

decoding from the bitstream the sound signal encoding parameters including the LP filter parameters during the successive sound signal processing frames, and producing from the decoded sound signal encoding parameters an LP synthesis filter excitation signal, wherein decoding the LP filter parameters comprises, upon switching from a first one of the frames using an internal sampling rate S 1 to a second one of the frames using an internal sampling rate S 2 , converting the LP filter parameters from the first frame from the internal sampling rate S 1 to the internal sampling rate S 2 , and wherein converting the LP filter parameters from the first frame comprises:

computing, at the internal sampling rate S 1 , a power spectrum of a LP synthesis filter using the LP filter parameters;

extending the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 ;

truncating the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is larger than the internal sampling rate S 2 ;

applying an inverse Fourier transform to the extended or truncated power spectrum of the LP synthesis filter to determine autocorrelations of the LP synthesis filter at the internal sampling rate S 2 ; and

computing the LP filter parameters at the internal sampling rate S 2 by applying the Levinson-Durbin algorithm to the autocorrelations; and

synthesizing the sound signal using LP synthesis filtering in response to the decoded LP filter parameters and the LP synthesis filter excitation signal.

15. The method as recited in claim 14 , wherein:

extending the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 is based on a ratio between the internal sampling rate S 1 and the internal sampling rate S 2 ; and

truncating the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is larger than the internal sampling rate S 2 is based on the ratio between the internal sampling rate S 1 and the internal sampling rate S 2 .

16. The method as recited in claim 14 , wherein the frames are divided into sub-frames, and wherein the method comprises computing LP filter parameters in each sub-frame of a current frame by interpolating LP filter parameters of the current frame at the internal sampling rate S 2 with LP filter parameters of a past frame converted from the internal sampling rate S 1 to the internal sampling rate S 2 .

17. The method as recited in claim 14 , comprising forcing a current frame to an encoding mode that does not use a history of an adaptive codebook.

18. The method as recited in claim 14 , comprising forcing a LP-parameter quantizer to use a non-predictive quantization method in a current frame upon switching between the internal sampling rates S 1 and S 2 .

19. The method as recited in claim 14 , wherein the power spectrum of the LP synthesis filter is a discrete power spectrum.

20. The method as recited in claim 14 , comprising:

computing the power spectrum of the LP synthesis filter at K samples;

extending the power spectrum of the LP synthesis filter to K(S 2 /S 1 ) samples if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 ; and

truncating the power spectrum of the LP synthesis filter to K(S 2 /S 1 ) samples if the internal sampling rate S 1 is larger than the internal sampling rate S 2 .

21. The method as recited in claim 14 , comprising:

computing the power spectrum of the LP synthesis filter at K samples;

adding K(S 2 −S 1 )/S 1 samples to the power spectrum of the LP synthesis filter if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 ; and

removing K(S 1 −S 2 )/S 1 samples from the power spectrum of the LP synthesis filter if the internal sampling rate S 1 is larger than the internal sampling rate S 2 .

22. The method as recited in claim 14 , comprising computing the power spectrum of the LP synthesis filter as an energy of a frequency response of the LP synthesis filter.

23. The method as recited in claim 14 , comprising:

computing the power spectrum of the LP synthesis filter comprises computing a K-sample power spectrum at K/2 samples from 0 to π since the power spectrum of the LP synthesis filter from π to 2π is a mirror image of the power spectrum from 0 to π.

24. The method as recited in claim 23 , wherein, if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 , extending the power spectrum comprises extending the power spectrum from a sample K/2 to a sample K 2 /2 by inserting a number of samples from sample K/2 to sample K 2 /2 since there is no original spectral contents from sample K/2 to sample K 2 /2, wherein K 2 is larger than K.

25. The method as recited in claim 14 , comprising resampling a memory of a synthesis filter upon switching between frames with different internal sampling rates.

26. The method as recited in claim 14 , comprising, to prevent increase of complexity of a decoder, skipping post-processing after switching to a different internal sampling rate.

27. A device for encoding a sound signal, comprising:

at least one processor; and

a memory coupled to the processor and comprising non-transitory instructions that when executed cause the processor to:

produce, in response to the sound signal, parameters for encoding the sound signal during successive sound signal processing frames, wherein (a) the sound signal encoding parameters include linear predictive (LP) filter parameters, (b) for producing the LP filter parameters upon switching from a first one of the frames using an internal sampling rate S 1 to a second one of the frames using an internal sampling rate S 2 , the processor is configured to convert the LP filter parameters from the first frame from the internal sampling rate S 1 to the internal sampling rate S 2 , and (c) for converting the LP filter parameters from the first frame, the processor is configured to:

compute, at the internal sampling rate S 1 , a power spectrum of a LP synthesis filter using the LP filter parameters;

extend the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 ;

truncate the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is larger than the internal sampling rate S 2 ;

apply an inverse Fourier transform to the extended or truncated power spectrum of the LP synthesis filter to determine autocorrelations of the LP synthesis filter at the internal sampling rate S 2 ; and

compute the LP filter parameters at the internal sampling rate S 2 by applying the Levinson-Durbin algorithm to the autocorrelations; and

encode the sound signal encoding parameters into a bitstream.

28. The device as recited in claim 27 , wherein the processor is configured to:

extend the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 based on a ratio between the internal sampling rate S 1 and the internal sampling rate S 2 ; and

truncate the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is larger than the internal sampling rate S 2 based on the ratio between the internal sampling rate S 1 and the internal sampling rate S 2 .

29. The device as recited in claim 27 , wherein the frames are divided into sub-frames, and wherein the processor is configured to compute LP filter parameters in each sub-frame of a current frame by interpolating LP filter parameters of the current frame at the internal sampling rate S 2 with LP filter parameters of a past frame converted from the internal sampling rate S 1 to the internal sampling rate S 2 .

30. The device as recited in claim 27 , wherein the processor is configured to force a current frame to an encoding mode that does not use a history of an adaptive codebook.

31. The device as recited in claim 27 , wherein the processor is configured to force a LP-parameter quantizer to use a non-predictive quantization method in a current frame upon switching between the internal sampling rates S 1 and S 2 .

32. The device as recited in claim 27 , wherein the power spectrum of the LP synthesis filter is a discrete power spectrum.

33. The device as recited in claim 27 , wherein the processor is configured to:

compute the power spectrum of the LP synthesis filter at K samples;

extend the power spectrum of the LP synthesis filter to K(S 2 /S 1 ) samples if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 ; and

truncate the power spectrum of the LP synthesis filter to K(S 2 /S 1 ) samples if the internal sampling rate S 1 is larger than the internal sampling rate S 2 .

34. The device as recited in claim 27 , wherein the processor is configured to:

compute the power spectrum of the LP synthesis filter at K samples;

add K(S 2 −S 1 )/S 1 samples to the power spectrum of the LP synthesis filter if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 ; and

remove K(S 1 −S 2 )/S 1 samples from the power spectrum of the LP synthesis filter if the internal sampling rate S 1 is larger than the internal sampling rate S 2 .

35. The device as recited in claim 27 , wherein the processor is configured to compute the power spectrum of the LP synthesis filter as an energy of a frequency response of the LP synthesis filter.

36. The device as recited in claim 27 , wherein the processor is configured to:

compute a K-sample power spectrum at K/2 samples from 0 to π since the power spectrum of the LP synthesis filter from π to 2π is a mirror image of the power spectrum from 0 to π.

37. The device as recited in claim 36 , wherein, if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 , the processor is configured to extend the power spectrum from a sample K/2 to a sample K 2 /2 by inserting a number of samples from sample K/2 to sample K 2 /2 since there is no original spectral contents from sample K/2 to sample K 2 /2, wherein K 2 is larger than K.

38. The device as recited in claim 27 , wherein the processor is configured to resample a memory of a synthesis filter upon switching between frames with different internal sampling rates.

39. The device as recited in claim 27 , wherein, to prevent increase of complexity of a decoder, the processor is configured to skip post-processing after switching to a different internal sampling rate.

40. A device for decoding a sound signal, comprising:

at least one processor; and

a memory coupled to the processor and comprising non-transitory instructions that when executed cause the processor to:

receive a bitstream including sound signal encoding parameters in successive sound signal processing frames, wherein the sound signal encoding parameters include linear predictive (LP) filter parameters;

decode from the bitstream the sound signal encoding parameters including the LP filter parameters during the successive sound signal processing frames, and produce from the decoded sound signal encoding parameters an LP synthesis filter excitation signal, wherein (a) for decoding the LP filter parameters upon switching from a first one of the frames using an internal sampling rate S 1 to a second one of the frames using an internal sampling rate S 2 , the processor is configured to convert the LP filter parameters from the first frame from the internal sampling rate S 1 to the internal sampling rate S 2 , and (b) for converting the LP filter parameters from the first frame, the processor is configured to:

compute, at the internal sampling rate S 1 , a power spectrum of a LP synthesis filter using the LP filter parameters;

extend the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 ;

truncate the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is larger than the internal sampling rate S 2 ;

apply an inverse Fourier transform to the extended or truncated power spectrum of the LP synthesis filter to determine autocorrelations of the LP synthesis filter at the internal sampling rate S 2 ; and

compute the LP filter parameters at the internal sampling rate S 2 by applying the Levinson-Durbin algorithm to the autocorrelations; and

synthesize the sound signal using LP synthesis filtering in response to the decoded LP filter parameters and the LP synthesis filter excitation signal.

41. The device as recited in claim 40 , wherein the processor is configured to:

extend the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 based on a ratio between the internal sampling rate S 1 and the internal sampling rate S 2 ; and

truncate the power spectrum of the LP synthesis filter to convert it from the internal sampling rate S 1 to the internal sampling rate S 2 if the internal sampling rate S 1 is larger than the internal sampling rate S 2 based on the ratio between the internal sampling rate S 1 and the internal sampling rate S 2 .

42. The device as recited in claim 40 , wherein the frames are divided into sub-frames, and wherein the processor is configured to compute LP filter parameters in each sub-frame of a current frame by interpolating LP filter parameters of the current frame at the internal sampling rate S 2 with LP filter parameters of a past frame converted from the internal sampling rate S 1 to the internal sampling rate S 2 .

43. The device as recited in claim 40 , wherein the processor is configured to force a current frame to an encoding mode that does not use a history of an adaptive codebook.

44. The device as recited in claim 40 , wherein the processor is configured to force a LP-parameter quantizer to use a non-predictive quantization method in a current frame upon switching between the internal sampling rates S 1 and S 2 .

45. The device as recited in claim 40 , wherein the power spectrum of the LP synthesis filter is a discrete power spectrum.

46. The device as recited in claim 40 , wherein the processor is configured to:

compute the power spectrum of the LP synthesis filter at K samples;

extend the power spectrum of the LP synthesis filter to K(S 2 /S 1 ) samples if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 ; and

truncate the power spectrum of the LP synthesis filter to K(S 2 /S 1 ) samples if the internal sampling rate S 1 is larger than the internal sampling rate S 2 .

47. The device as recited in claim 40 , wherein the processor is configured to:

compute the power spectrum of the LP synthesis filter at K samples;

add K(S 2 −S 1 )/S 1 samples to the power spectrum of the LP synthesis filter if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 ; and

remove K(S 1 −S 2 )/S 1 samples from the power spectrum of the LP synthesis filter if the internal sampling rate S 1 is larger than the internal sampling rate S 2 .

48. The device as recited in claim 40 , wherein the processor is configured to compute the power spectrum of the LP synthesis filter as an energy of a frequency response of the LP synthesis filter.

49. The device as recited in claim 40 , wherein the processor is configured to:

compute a K-sample power spectrum at K/2 samples from 0 to π since the power spectrum of the LP synthesis filter from π to 2π is a mirror image of the power spectrum from 0 to π.

50. The device as recited in claim 49 , wherein, if the internal sampling rate S 1 is smaller than the internal sampling rate S 2 , the processor is configured to extend the power spectrum from a sample K/2 to a sample K 2 /2 by inserting a number of samples from sample K/2 to sample K 2 /2 since there is no original spectral contents from sample K/2 to sample K 2 /2, wherein K 2 is larger than K.

51. The device as recited in claim 40 , wherein the processor is configured to resample a memory of a synthesis filter upon switching between frames with different internal sampling rates.

52. The device as recited in claim 40 , wherein, to prevent increase of complexity of a decoder, the processor is configured to skip post-processing after switching to a different internal sampling rate.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 7, 2019
From: SALAMI, REDWAN; EKSLER, VACLAV
To: VOICEAGE CORPORATION
Reel/Frame 050641/0254 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 7, 2019
From: VOICEAGE CORPORATION
To: VOICEAGE EVS LLC
Reel/Frame 050641/0588 →
Continuity (5)
Continuation 15815304 · Nov 16, 2017
Continuation 15814083 · Nov 15, 2017
Continuation 14677672 · Apr 2, 2015
Provisional Application 61980865 · Apr 17, 2014
Related Publication 20200035253A1 · Jan 30, 2020
Cited By (1)
US 12,394,425