# Patent application title: Audio Encoding/Decoding based on an Efficient Representation of Auto-Regressive Coefficients

##
Inventors:

IPC8 Class: AG10L19038FI

USPC Class:
704500

Class name: Data processing: speech signal processing, linguistics, language translation, and audio compression/decompression audio signal bandwidth compression or expansion

Publication date: 2016-06-02

Patent application number: 20160155450

## Abstract:

An encoder for encoding a parametric spectral representation (f) of
auto-regressive coefficients that partially represent an audio signal.
The encoder includes a low-frequency encoder configured to quantize
elements of a part of the parametric spectral representation that
correspond to a low-frequency part of the audio signal. It also includes
a high-frequency encoder configured to encode a high-frequency part
(f.sup.H) of the parametric spectral representation (f) by weighted
averaging based on the quantized elements ({circumflex over (f)}.sup.L)
flipped around a quantized mirroring frequency ({circumflex over
(f)}.sub.m), which separates the low-frequency part from the
high-frequency part, and a frequency grid determined from a frequency
grid codebook in a closed-loop search procedure. Described are also a
corresponding decoder, corresponding encoding/decoding methods and UEs
including such an encoder/decoder.## Claims:

**1.**A method of encoding a parametric spectral representation (f) of auto-regressive coefficients (a) that partially represent an audio signal, the method comprising: encoding a low-frequency part (f.sup.L) of the parametric spectral representation (f) by quantizing coefficients of the parametric spectral representation that correspond to a low-frequency part of the audio signal; and encoding a high-frequency part (f.sup.H) of the parametric spectral representation (f) by weighted averaging based on the quantized coefficients ({circumflex over (f)}.sup.L) flipped around a quantized mirroring frequency ({circumflex over (f)}.sub.m), which separates the low-frequency part from the high-frequency part, and a frequency grid (g.sup.opt) determined from a frequency grid codebook in a closed-loop search procedure.

**2.**The method of claim 1, further comprising the step of quantizing the mirroring frequency {circumflex over (f)}.sub.m in accordance with: {circumflex over (f)}.sub.m=Q(f(M/2)-{circumflex over (f)}(M/2-1))+{circumflex over (f)}(M/2-1), where Q denotes quantization of the expression in the adjacent parenthesis, M denotes the total number of coefficients in the parametric spectral representation, f(M/2) denotes the first coefficient in the high-frequency part, and {circumflex over (f)}(M/2-1) denotes the last quantized coefficient in the low-frequency part.

**3.**The method of claim 2, further comprising the step of flipping the quantized coefficients of the low frequency part (f.sup.L) of the parametric spectral representation (f) around the quantized mirroring frequency {circumflex over (f)}.sub.m in accordance with: f.sub.flip(k)=2{circumflex over (f)}.sub.m-{circumflex over (f)}(M/2-1-k),

**0.**ltoreq.k.ltoreq.M/

**2-1.**where {circumflex over (f)}(M/2-1-k) denotes quantized coefficient M/2-1-k.

**4.**The method of claim 3, further comprising the step of rescaling the flipped coefficients f.sub.flip (k) in accordance with: f ~ flip ( k ) = { ( f flip ( k ) - f flip ( 0 ) ) ( f max - f ^ m ) / f ^ m + f flip ( 0 ) , f ^ m >

**0.**25 f flip ( k ) , otherwise . ##EQU00008##

**5.**The method of claim 4, further comprising the step of rescaling the frequency grids g.sup.i from the frequency grid codebook to fit into the interval between the last quantized coefficient {circumflex over (f)}(M/2-1) in the low-frequency part and a maximum grid point value g.sub.max in accordance with: {tilde over (g)}.sup.i(k)=g.sup.i(k)(g.sub.max-{circumflex over (f)}(M/2-1))+{circumflex over (f)}(M/2-1).

**6.**The method of claim 5, including the step of weighted averaging of the flipped and rescaled coefficients {tilde over (f)}.sub.flip (k) and the rescaled frequency grids {tilde over (g)}.sup.i(k) in accordance with: f.sub.smooth.sup.i(k)=[

**1-.**lamda.(k)]{tilde over (f)}.sub.flip(k)+.lamda.(k){tilde over (g)}.sup.i(k) where .lamda.(k) and [

**1-.**lamda.(k)] are predefined weights.

**7.**The method of claim 6, further comprising the step of selecting a frequency grid g.sup.opt, where the index opt satisfies the criterion: opt = arg min i ( k = 0 M / 2 - 1 ( f smooth i ( k ) - f H ( k ) ) 2 ) ##EQU00009## where f.sup.H (k) is a target vector formed by the coefficients of the high-frequency part of the parametric spectral representation.

**8.**The method of claim 7, wherein M=10, g.sub.max=

**0.**5, and the weights .lamda.(k) are defined as .lamda.={

**0.**2,

**0.**35,

**0.**5,

**0.**75,

**0.**8}.

**9.**The method of claim 1, wherein the encoding of the parametric spectral representation (f) of auto-regressive coefficients is performed on a line spectral frequencies representation of the auto-regressive coefficients.

**10.**A method of decoding an encoded parametric spectral representation ({circumflex over (f)}) of auto-regressive coefficients (a) that partially represent an audio signal, said method including the steps of: decoding coefficients ({circumflex over (f)}.sup.L) of a low-frequency part (f.sup.L) of the parametric spectral representation (f) corresponding to a low-frequency part of the audio signal from at least one quantization index (I.sub.f.sub.L) encoding that part of the parametric spectral representation; decoding coefficients ({circumflex over (f)}.sup.H) of a high-frequency part (f.sup.H) of the parametric spectral representation by weighted averaging based on the decoded coefficients ({circumflex over (f)}.sup.L) flipped around a decoded mirroring frequency ({circumflex over (f)}.sub.m), which separates the low-frequency part from the high-frequency part, and a decoded frequency grid (g.sup.opt).

**11.**The method of claim 10, further comprising the step of flipping the decoded coefficients ({circumflex over (f)}.sup.L) of the low-frequency part around the mirroring frequency {circumflex over (f)}.sub.m in accordance with: f.sub.flip(k)=2{circumflex over (f)}.sub.m-{circumflex over (f)}(M/2-1-k),

**0.**ltoreq.k.ltoreq.M/2-1 where M denotes the total number of coefficients in the parametric spectral representation, and {circumflex over (f)}(M/2-1-k) denotes decoded coefficient M/2-1-k.

**12.**The method of claim 11, further comprising the step of rescaling the flipped coefficients f.sub.flip (k) in accordance with: f ~ flip ( k ) = { ( f flip ( k ) - f flip ( 0 ) ) ( f max - f ^ m ) / f ^ m + f flip ( 0 ) , f ^ m >

**0.**25 f flip ( k ) , otherwise . ##EQU00010##

**13.**The method of claim 12, further comprising the step of rescaling the decoded frequency grid g.sup.opt to fit into the interval between the last quantized coefficient {circumflex over (f)}(M/2-1) in the low-frequency part and a maximum grid point value g.sub.max in accordance with: {tilde over (g)}.sup.opt(k)=g.sup.opt(k)(g.sub.max-{circumflex over (f)}(M/2-1))+{circumflex over (f)}(M/2-1).

**14.**The method of claim 13, further comprising the step of weighted averaging of the flipped and rescaled coefficients {tilde over (f)}.sub.flip (k) and the rescaled frequency grid {tilde over (g)}.sup.opt (k) in accordance with: f.sub.smooth(k)=[

**1-.**lamda.(k)]{tilde over (f)}.sub.flip(k)+.lamda.(k){tilde over (g)}.sup.opt(k). where .lamda.(k) and [

**1-.**lamda.(k)] are predefined weights.

**15.**The method of claim 14, wherein M=10, g.sub.max=

**0.**5, and the weights .lamda.(k) are defined as .lamda.={

**0.**2,

**0.**35,

**0.**5,

**0.**75,

**0.**8}.

**16.**The method of claim 10, wherein the decoding is performed on a line spectral frequencies representation of the auto-regressive coefficients.

**17.**An encoder for encoding a parametric spectral representation (f) of auto-regressive coefficients (a) that partially represent an audio signal, said encoder including: a low-frequency encoder configured to encode a low-frequency part (f.sup.L) of the parametric spectral representation (f) by quantizing coefficients of the parametric spectral representation that correspond to a low-frequency part of the audio signal; a high-frequency encoder configured to encode a high-frequency part (f.sup.H) of the parametric spectral representation (f) by weighted averaging based on the quantized coefficients ({circumflex over (f)}.sup.L) flipped around a quantized mirroring frequency ({circumflex over (f)}.sub.m), which separates the low-frequency part from the high-frequency part, and a frequency grid (g.sup.opt) determined from a frequency grid codebook in a closed-loop search procedure.

**18.**The encoder of claim 17, wherein the high-frequency encoder includes a mirroring frequency calculator configured to calculate the quantized mirroring frequency {circumflex over (f)}.sub.m in accordance with: {circumflex over (f)}.sub.m=Q(f(M/2)-{circumflex over (f)}(M/2-1))+{circumflex over (f)}(M/2-1), where Q denotes quantization of the expression in the adjacent parenthesis, M denotes the total number of coefficients in the parametric spectral representation, f(M/2) denotes the first coefficient in the high-frequency part, and {circumflex over (f)}(M/2-1) denotes the last quantized coefficient in the low-frequency part.

**19.**The encoder of claim 18, wherein the high-frequency encoder includes a quantized low-frequency subvector flipping unit configured to flip the quantized coefficients of the low frequency part (f.sup.L) of the parametric spectral representation (f) around the quantized mirroring frequency {circumflex over (f)}.sub.m in accordance with: f.sub.flip(k)=2{circumflex over (f)}.sub.m-{circumflex over (f)}(M/2-1-k),

**0.**ltoreq.k.ltoreq.M/

**2-1.**where {circumflex over (f)}(M/2-1-k) denotes quantized coefficient M/2-1-k.

**20.**The encoder of claim 19, wherein the high-frequency encoder includes a flipped coefficient rescaler configured to rescale the flipped coefficients f.sub.flip (k) in accordance with: f ~ flip ( k ) = { ( f flip ( k ) - f flip ( 0 ) ) ( f max - f ^ m ) / f ^ m + f flip ( 0 ) , f ^ m >

**0.**25 f flip ( k ) , otherwise . ##EQU00011##

**21.**The encoder of claim 20, wherein the high-frequency encoder includes a frequency grid rescaler configured to rescale the frequency grids g.sup.i from the frequency grid codebook to fit into the interval between the last quantized coefficient {circumflex over (f)}(M/2-1) in the low-frequency part and a maximum grid point value g.sub.max in accordance with: {tilde over (g)}.sup.i(k)=g.sup.i(k)(g.sub.max-{circumflex over (f)}(M/2-1))+{circumflex over (f)}(M/2-1).

**22.**The encoder of claim 21, wherein the high-frequency encoder includes a weighting unit configured to perform weighted averaging of the flipped and rescaled coefficients {tilde over (f)}.sub.flip (k) and the rescaled frequency grids {tilde over (g)}.sup.i(k) in accordance with: f.sub.smooth.sup.i(k)=[

**1-.**lamda.(k)]{tilde over (f)}.sub.flip(k)+.lamda.(k){tilde over (g)}.sup.i(k) where .lamda.(k) and [

**1-.**lamda.(k)] are predefined weights.

**23.**The encoder of claim 22, wherein the high-frequency encoder includes a frequency grid search unit configured to select a frequency grid g.sup.opt, where the index opt satisfies the criterion: opt = arg min i ( k = 0 M / 2 - 1 ( f smooth i ( k ) - f H ( k ) ) 2 ) ##EQU00012## where f.sup.H (k) is a target vector formed by the coefficients of the high-frequency part of the parametric spectral representation.

**24.**The encoder of claim 23, wherein M=10, g.sub.max=

**0.**5, and the weights .lamda.(k) are defined as .lamda.={

**0.**2,

**0.**35,

**0.**5,

**0.**75,

**0.**8}.

**25.**The encoder of claim 18, wherein the encoder is configured to perform the encoding on a line spectral frequencies representation of the auto-regressive coefficients.

**26.**A user equipment including the encoder of with claim

**17.**

**27.**A decoder for decoding an encoded parametric spectral representation ({circumflex over (f)}) of auto-regressive coefficients (a) that partially represent an audio signal, said decoder including: a low-frequency decoder configured to decode coefficients ({circumflex over (f)}.sup.L) of a low-frequency part (f.sup.L) of the parametric spectral representation (f) corresponding to a low-frequency part of the audio signal from at least one quantization index (I.sub.f.sub.L) encoding that part of the parametric spectral representation; a high-frequency decoder configured to decode coefficients ({circumflex over (f)}.sup.H) of a high-frequency part (f.sup.H) of the parametric spectral representation by weighted averaging based on the decoded coefficients ({circumflex over (f)}.sup.L) flipped around a decoded mirroring frequency ({circumflex over (f)}.sub.m), which separates the low-frequency part from the high-frequency part, and a decoded frequency grid (g.sup.opt).

**28.**The decoder of claim 27, wherein the high-frequency decoder includes a quantized low-frequency subvector flipping unit configured to flip the decoded coefficients ({circumflex over (f)}.sup.L) of the low-frequency part around the mirroring frequency {circumflex over (f)}.sub.m in accordance with: f.sub.flip(k)=2{circumflex over (f)}.sub.m-{circumflex over (f)}(M/2-1-k),

**0.**ltoreq.k.ltoreq.M/2-1 where M denotes the total number of coefficients in the parametric spectral representation, and {circumflex over (f)}(M/2-1-k) denotes decoded coefficient M/2-1-k.

**29.**The decoder of claim 28, wherein the high-frequency decoder includes a flipped coefficient rescaler configured to rescale the flipped coefficients f.sub.flip (k) in accordance with: f ~ flip ( k ) = { ( f flip ( k ) - f flip ( 0 ) ) ( f max - f ^ m ) / f ^ m + f flip ( 0 ) , f ^ m >

**0.**25 f flip ( k ) , otherwise . ##EQU00013##

**30.**The decoder of claim 29, wherein the high-frequency decoder includes a frequency grid rescaler configured to rescale the decoded frequency grid g.sup.opt to fit into the interval between the last quantized coefficient {circumflex over (f)}(M/2-1) in the low-frequency part and a maximum grid point value g.sub.max in accordance with: {tilde over (g)}.sup.opt(k)=g.sup.opt(k)(g.sub.max-{circumflex over (f)}(M/2-1))+{circumflex over (f)}(M/2-1).

**31.**The decoder of claim 30, wherein the high-frequency decoder includes a weighting unit configured to perform weighted averaging of the flipped and rescaled coefficients {tilde over (f)}.sub.flip (k) and the rescaled frequency grid {tilde over (g)}.sup.opt (k) in accordance with: f.sub.smooth(k)=[

**1-.**lamda.(k)]{tilde over (f)}.sub.flip(k)+.lamda.(k){tilde over (g)}.sup.opt(k). where .lamda.(k) and [

**1-.**lamda.(k)] are predefined weights.

**32.**The decoder of claim 31, wherein M=10, g.sub.max=

**0.**5, and the weights .lamda.(k) are defined as .lamda.={

**0.**2,

**0.**35,

**0.**5,

**0.**75,

**0.**8}.

**33.**The decoder of claim 27, wherein the decoder is configured to perform the decoding of the encoded parametric spectral representation ({circumflex over (f)}) of auto-regressive coefficients (a) on a line spectral frequencies representation of the auto-regressive coefficients.

**34.**A user equipment including the decoder of claim

**27.**

**35.**A method of encoding a parametric spectral representation (f) of auto-regressive coefficients (a) that partially represent an audio signal, the method comprising: encoding a low-frequency part (f.sup.L) of the parametric spectral representation (f) by quantizing coefficients of the parametric spectral representation that correspond to a low-frequency part of the audio signal; and encoding a high-frequency part (f.sup.H) of the parametric spectral representation (f) by weighted averaging based on the quantized coefficients ({circumflex over (f)}.sup.L) flipped around a quantized mirroring frequency ({circumflex over (f)}.sub.m), which separates the low-frequency part from the high-frequency part, and a frequency grid codebook obtained in a closed-loop search procedure.

**36.**An encoder for encoding a parametric spectral representation (f) of auto-regressive coefficients (a) that partially represent an audio signal, said encoder including: a low-frequency encoder configured to encode a low-frequency part (f.sup.L) of the parametric spectral representation (f) by quantizing coefficients of the parametric spectral representation that correspond to a low-frequency part of the audio signal; a high-frequency encoder configured to encode a high-frequency part (f.sup.H) of the parametric spectral representation (f) by weighted averaging based on the quantized coefficients ({circumflex over (f)}.sup.L) flipped around a quantized mirroring frequency ({circumflex over (f)}.sub.m), which separates the low-frequency part from the high-frequency part, and a frequency grid codebook obtained in a closed-loop search procedure.

## Description:

**RELATED APPLICATIONS**

**[0001]**The present application is a continuation of co-pending U.S. patent application Ser. No. 14/355,031, filed 29 Apr. 2014, which is a national stage entry under 35 U.S.C. .sctn.371 of international patent application serial no. PCT/SE2012/050520, filed 15 May 2012, which claims priority to and the benefit of U.S. provisional patent application Ser. No. 61/554,647, filed 2 Nov. 2011. The entire contents of each of the aforementioned applications is incorporated herein by reference.

**TECHNICAL FIELD**

**[0002]**The technology disclosed herein relates to audio encoding/decoding based on an efficient representation of auto-regression (AR) coefficients.

**BACKGROUND**

**[0003]**AR analysis is commonly used in both time [1] and transform domain audio coding [2]. Different applications use AR vectors of different length. The model order is mainly dependent on the bandwidth of the coded signal; from 10 coefficients for signals with a bandwidth of 4 kHz, to 24 coefficients for signals with a bandwidth of 16 kHz. These AR coefficients are quantized with split, multistage vector quantization (VQ), which guarantees nearly transparent reconstruction. However, conventional quantization schemes are not designed for the case when AR coefficients model high audio frequencies, for example above 6 kHz, and when the quantization is operated with very limited bit-budgets (which do not allow transparent coding of the coefficients). This introduces large perceptual errors in the reconstructed signal when these conventional quantization schemes are used at non-optimal frequency ranges and with non-optimal bitrates.

**SUMMARY**

**[0004]**An object of the disclosed technology is a more efficient quantization scheme for the auto-regressive coefficients. This objective may be achieved with several of the embodiments disclosed herein.

**[0005]**A first aspect of the technology described herein involves a method of encoding a parametric spectral representation of auto-regressive coefficients that partially represent an audio signal. An example method includes the following steps: encoding a low-frequency part of the parametric spectral representation by quantizing elements of the parametric spectral representation that correspond to a low-frequency part of the audio signal; and encoding a high-frequency part of the parametric spectral representation by weighted averaging based on the quantized elements flipped around a quantized mirroring frequency, which separates the low-frequency part from the high-frequency part, and a frequency grid determined from a frequency grid codebook in a closed-loop search procedure.

**[0006]**A second aspect of the technology described herein involves a method of decoding an encoded parametric spectral representation of auto-regressive coefficients that partially represent an audio signal. An example method includes the following steps: reconstructing elements of a low-frequency part of the parametric spectral representation corresponding to a low-frequency part of the audio signal from at least one quantization index encoding that part of the parametric spectral representation; and reconstructing elements of a high-frequency part of the parametric spectral representation by weighted averaging based on the decoded elements flipped around a decoded mirroring frequency, which separates the low-frequency part from the high-frequency part, and a decoded frequency grid.

**[0007]**A third aspect of the technology described herein involves an encoder for encoding a parametric spectral representation of auto-regressive coefficients that partially represent an audio signal. An example encoder includes: a low-frequency encoder configured to encode a low-frequency part of the parametric spectral representation by quantizing elements of the parametric spectral representation that correspond to a low-frequency part of the audio signal; and a high-frequency encoder configured to encode a high-frequency part of the parametric spectral representation by weighted averaging based on the quantized elements flipped around a quantized mirroring frequency, which separates the low-frequency part from the high-frequency part, and a frequency grid determined from a frequency grid codebook in a closed-loop search procedure. A fourth aspect of the technology described herein involves a UE including the encoder in accordance with the third aspect.

**[0008]**A fifth aspect involves a decoder for decoding an encoded parametric spectral representation of auto-regressive coefficients that partially represent an audio signal. An example decoder includes: a low-frequency decoder configured to reconstruct elements of a low-frequency part of the parametric spectral representation corresponding to a low-frequency part of the audio signal from at least one quantization index encoding that part of the parametric spectral representation; and a high-frequency decoder configured to reconstruct elements of a high-frequency part of the parametric spectral representation by weighted averaging based on the decoded elements flipped around a decoded mirroring frequency, which separates the low-frequency part from the high-frequency part, and a decoded frequency grid. A sixth aspect of the technology described herein involves a UE including the decoder in accordance with the fifth aspect.

**[0009]**The technology detailed below provides a low-bitrate scheme for compression or encoding of auto-regressive coefficients. In addition to perceptual improvements, the technology also has the advantage of reducing the computational complexity in comparison to full-spectrum-quantization methods.

**BRIEF DESCRIPTION OF THE DRAWINGS**

**[0010]**The disclosed technology, together with further objects and advantages thereof, may best be understood by making reference to the following description taken together with the accompanying drawings, in which:

**[0011]**FIG. 1 is a flow chart of the encoding method in accordance with the disclosed technology;

**[0012]**FIG. 2 illustrates an embodiment of the encoder side method of the disclosed technology;

**[0013]**FIG. 3 illustrates flipping of quantized low-frequency LSF elements (represented by black dots) to high frequency by mirroring them to the space previously occupied by the upper half of the LSF vector;

**[0014]**FIG. 4 illustrates the effect of grid smoothing on a signal spectrum;

**[0015]**FIG. 5 is a block diagram of an embodiment of the encoder in accordance with the disclosed technology;

**[0016]**FIG. 6 is a block diagram of an embodiment of the encoder in accordance with the disclosed technology;

**[0017]**FIG. 7 is a flow chart of the decoding method in accordance with the disclosed technology;

**[0018]**FIG. 8 illustrates an embodiment of the decoder side method of the disclosed technology;

**[0019]**FIG. 9 is a block diagram of an embodiment of the decoder in accordance with the disclosed technology;

**[0020]**FIG. 10 is a block diagram of an embodiment of the decoder in accordance with the disclosed technology;

**[0021]**FIG. 11 is a block diagram of an embodiment of the encoder in accordance with the disclosed technology;

**[0022]**FIG. 12 is a block diagram of an embodiment of the decoder in accordance with the disclosed technology;

**[0023]**FIG. 13 illustrates an embodiment of a user equipment including an encoder in accordance with the disclosed technology; and

**[0024]**FIG. 14 illustrates an embodiment of a user equipment including a decoder in accordance with the disclosed technology.

**DETAILED DESCRIPTION**

**[0025]**The disclosed technology requires as input a vector a of AR coefficients (another commonly used name is linear prediction (LP) coefficients). These are typically obtained by first computing the autocorrelations r (j) of the windowed audio segment s (n), n=1, . . . , N, i.e.:

**r**( j ) = n = j N s ( n ) s ( n - j ) , j = 0 , , M ( 1 ) ##EQU00001##

**where M is pre**-defined model order. Then the AR coefficients a are obtained from the autocorrelation sequence r (j) through the Levinson-Durbin algorithm [3].

**[0026]**In an audio communication system AR coefficients have to be efficiently transmitted from the encoder to the decoder part of the system. In the disclosed technology this is achieved by quantizing only certain coefficients, and representing the remaining coefficients with only a small number of bits.

**[0027]**Encoder

**[0028]**FIG. 1 is a flow chart of the encoding method in accordance with the disclosed technology. Step S1 encodes a low-frequency part of the parametric spectral representation by quantizing elements of the parametric spectral representation that correspond to a low-frequency part of the audio signal. Step S2 encodes a high-frequency part of the parametric spectral representation by weighted averaging based on the quantized elements flipped around a quantized mirroring frequency, which separates the low-frequency part from the high-frequency part, and a frequency grid determined from a frequency grid codebook in a closed-loop search procedure.

**[0029]**FIG. 2 illustrates steps performed on the encoder side of an embodiment of the disclosed technology. First the AR coefficients are converted to an Line Spectral frequencies (LSF) representation in step S3, e.g. by the algorithm described in [4]. Then the LSF vector f is split into two parts, denoted as low (L) and high-frequency (H) parts in step S4. For example in a 10 dimensional LSF vector the first 5 coefficients may be assigned to the L subvector f.sup.L and the remaining coefficients to the H subvector f.sup.H.

**[0030]**Although the disclosed technology will be described with reference to an LSF representation, the general concepts may also be applied to an alternative implementation in which the AR vector is converted to another parametric spectral representation, such as Line Spectral Pair (LSP) or Immitance Spectral Pairs (ISP) instead of LSF.

**[0031]**Only the low-frequency LSF subvector f.sup.L is quantized in step S5, and its quantization indices I.sub.f.sub.L are transmitted to the decoder. The high-frequency LSFs of the subvector f.sup.H are not quantized, but only used in the quantization of a mirroring frequency f.sub.m (to {circumflex over (f)}.sub.m), and the closed loop search for an optimal frequency grid g.sup.opt from a set of frequency grids g.sup.i forming a frequency grid codebook, as described with reference to equations (2)-(13) below. The quantization indices I.sub.m and I.sub.g for the mirroring frequency and optimal frequency grid, respectively, represent the coded high-frequency LSF vector f.sup.H and are transmitted to the decoder. The encoding of the high-frequency subvector f.sup.H will occasionally be referred to as "extrapolation" in the following description.

**[0032]**In the disclosed embodiment quantization is based on a set of scalar quantizers (SQs) individually optimized on the statistical properties of the above parameters. In an alternative implementation the LSF elements could be sent to a vector quantizer (VQ) or one can even train a VQ for the combined set of parameters (LSFs, mirroring frequency, and optimal grid).

**[0033]**The low-frequency LSFs of subvector f.sup.L are in step S6 flipped into the space spanned by the high-frequency LSFs of subvector f.sup.H. This operation is illustrated in FIG. 3. First the quantized mirroring frequency {circumflex over (f)}.sub.m is calculated in accordance with:

**{circumflex over (f)}.sub.m=Q(f(M/2)-{circumflex over (f)}(M/2-1))+{circumflex over (f)}(M/2-1) (2)**

**where f denotes the entire LSF vector**, and Q() is the quantization of the difference between the first element in f.sup.H (namely f(M/2)) and the last quantized element in f.sup.L (namely {circumflex over (f)}(M/2-1)), and where M denotes the total number of elements in the parametric spectral representation.

**[0034]**Next the flipped LSFs f.sub.flip (k) are calculated in accordance with:

**f**.sub.flip(k)=2{circumflex over (f)}.sub.m-{circumflex over (f)}(M/2-1-k), 0.ltoreq.k.ltoreq.M/2-1 (3)

**Then the flipped LSFs are rescaled so that they will be bound within the**range [0 . . . 0.5] (as an alternative the range can be represented in radians as [0 . . . .pi.]) in accordance with:

**f**~ flip ( k ) = { ( f flip ( k ) - f flip ( 0 ) ) ( f max - f ^ m ) / f ^ m + f flip ( 0 ) , f ^ m > 0.25 f flip ( k ) , otherwise ( 4 ) ##EQU00002##

**[0035]**The frequency grids g.sup.i are rescaled to fit into the interval between the last quantized LSF element {circumflex over (f)}(M/2-1) and a maximum grid point value g.sub.max, i.e.:

**{tilde over (g)}.sup.i(k)=g.sup.i(k)(g.sub.max-{circumflex over (f)}(M/2-1))+{circumflex over (f)}(M/2-1) (5)**

**These flipped and rescaled coefficients**{tilde over (f)}.sub.flip (k) (collectively denoted {tilde over (f)}.sup.H in FIG. 2) are further processed in step S7 by smoothing with the rescaled frequency grids {tilde over (g)}.sup.i(k). Smoothing has the form of a weighted sum between flipped and rescaled LSFs {tilde over (f)}.sub.flip (k) and the rescaled frequency grids {tilde over (g)}.sup.i(k), in accordance with:

**f**.sub.smooth(k)=[1-.lamda.(k)]{tilde over (f)}.sub.flip(k)+.lamda.(k){tilde over (g)}.sup.i(k) (6)

**where**.lamda.(k) and [1-.lamda.(k)] are predefined weights.

**[0036]**Since equation (6) includes a free index i, this means that a vector f.sub.smooth (k) will be generated for each {tilde over (g)}.sup.i(k). Thus, equation (6) may be expressed as:

**f**.sub.smooth.sup.i(k)=[1-.lamda.(k)]{tilde over (f)}.sub.flip(k)+.lamda.(k){tilde over (g)}.sup.i(k) (7)

**[0037]**The smoothing is performed step S7 in a closed loop search over all frequency grids g.sup.i, to find the one that minimizes a pre-defined criterion (described after equation (12) below).

**For M**/2=5 the weights A (k) in equation (7) can be chosen as:

**.lamda.={0.2, 0.35, 0.5, 0.75, 0.8} (8)**

**[0038]**In an embodiment these constants are perceptually optimized (different sets of values are suggested, and the set that maximized quality, as reported by a panel of listeners, are finally selected). Generally the values of elements in .lamda. increase as the index k increases. Since a higher index corresponds to a higher-frequency, the higher frequencies of the resulting spectrum are more influenced by {tilde over (g)}.sup.i(k) than by {tilde over (f)}.sub.flip (see equation (7)). This result of this smoothing or weighted averaging is a more flat spectrum towards the high frequencies (the spectrum structure potentially introduced by {tilde over (f)}.sub.flip is progressively removed towards high frequencies).

**[0039]**Here g.sub.max is selected close to but less than 0.5. In this example g.sub.max is selected equal to 0.49.

**[0040]**The method in this example uses 4 trained grids g.sup.i (less or more grids are possible). Template grid vectors on a range [0 . . . 1], pre-stored in memory, are of the form:

**( 9 ) { g 1 = { 0.17274857 , 0.35811835 , 0.52369229 , 0.71552804 , 0.85539771 } g 2 = { 0.16313042 , 0.30782962 , 0.43109281 , 0.59395830 , 0.81291897 } g 3 = { 0.17172427 , 0.33157177 , 0.48528862 , 0.66592442 , 0.82952486 } g 4 = { 0.16666667 , 0.33333333 , 0.50000000 , 0.66666667 , 0.83333333 } ##EQU00003##**

**[0041]**If we assume that the position of the last quantized LSF coefficient {circumflex over (f)}(M/2-1) is 0.25, the rescaled grid vectors take the form:

**{ g ~ 1 = { 0.2915 , 0.3359 , 0.3757 , 0.4217 , 0.4553 } g ~ 2 = { 0.2892 , 0.3239 , 0.3535 , 0.3925 , 0.4451 } g ~ 3 = { 0.2912 , 0.3296 , 0.3665 , 0.4096 , 0.4491 } g ~ 4 = { 0.2900 , 0.3300 , 0.3700 , 0.4100 , 0.4500 } ( 10 ) ##EQU00004##**

**[0042]**An example of the effect of smoothing the flipped and rescaled LSF coefficients to the grid points is illustrated in FIG. 4. With increasing number of grid vectors used in the closed loop procedure, the resulting spectrum gets closer and closer to the target spectrum.

**[0043]**If g.sub.max=0.5 instead of 0.49, the frequency grid codebook may instead be formed by:

**( 11 ) { g 1 = { 0.15998503 , 0.31215086 , 0.47349756 , 0.66540429 , 0.84043882 } g 2 = { 0.15614473 , 0.30697672 , 0.45619822 , 0.62493785 , 0.77798001 } g 3 = { 0.14185823 , 0.26648724 , 0.39740108 , 0.55685745 , 0.74688616 } g 4 = { 0.15416561 , 0.27238427 , 0.39376780 , 0.59287916 , 0.86613986 } ##EQU00005##**

**[0044]**If we again assume that the position of the last quantized LSF coefficient {circumflex over (f)}(M/2-1) is 0.25, the rescaled grid vectors take the form:

**( 12 ) { g ~ 1 = { 0.28999626 , 0.32803772 , 0.36837439 , 0.41635107 , 0.46010970 } g ~ 2 = { 0.28903618 , 0.32674418 , 0.36404956 , 0.40623446 , 0.44449500 } g ~ 3 = { 0.28546456 , 0.31662181 , 0.34935027 , 0.38921436 , 0.43672154 } g ~ 4 = { 0.28854140 , 0.31809607 , 0.34844195 , 0.39821979 , 0.46653496 } ##EQU00006##**

**[0045]**It is noted that the rescaled grids {tilde over (g)}.sup.i may be different from frame to frame, since {circumflex over (f)}(M/2-1) in rescaling equation (5) may not be constant but vary with time. However, the codebook formed by the template grids g.sup.i is constant. In this sense the rescaled grids {tilde over (g)}.sup.i may be considered as an adaptive codebook formed from a fixed codebook of template grids g.sup.i.

**[0046]**The LSF vectors f.sub.smooth.sup.i created by the weighted sum in (7) are compared to the target LSF vector f.sup.H, and the optimal grid g.sup.i is selected as the one that minimizes the mean-squared error (MSE) between these two vectors. The index opt of this optimal grid may mathematically be expressed as:

**opt**= arg min i ( k = 0 M / 2 - 1 ( f smooth i ( k ) - f H ( k ) ) 2 ) ( 13 ) ##EQU00007##

**[0047]**where f.sup.H (k) is a target vector formed by the elements of the high-frequency part of the parametric spectral representation.

**[0048]**In an alternative implementation one can use more advanced error measures that mimic spectral distortion (SD), e.g., inverse harmonic mean or other weighting on the LSF domain.

**[0049]**In an embodiment the frequency grid codebook is obtained with a K-means clustering algorithm on a large set of LSF vectors, which has been extracted from a speech database. The grid vectors in equations (9) and (11) are selected as the ones that, after rescaling in accordance with equation (5) and weighted averaging with {tilde over (f)}.sub.flip in accordance with equation (7), minimize the squared distance to f.sup.H. In other words these grid vectors, when used in equation (7), give the best representation of the high-frequency LSF coefficients.

**[0050]**FIG. 5 is a block diagram of an embodiment of the encoder in accordance with the disclosed technology. The encoder 40 includes a low-frequency encoder 10 configured to encode a low-frequency part of the parametric spectral representation f by quantizing elements of the parametric spectral representation that correspond to a low-frequency part of the audio signal. The encoder 40 also includes a high-frequency encoder 12 configured to encode a high-frequency part f.sup.H of the parametric spectral representation by weighted averaging based on the quantized elements {circumflex over (f)}.sup.L flipped around a quantized mirroring frequency separating the low-frequency part from the high-frequency part, and a frequency grid determined from a frequency grid codebook 24 in a closed-loop search procedure. The quantized entities {circumflex over (f)}.sup.L, {circumflex over (f)}.sub.m, g.sup.opt are represented by the corresponding quantization indices I.sub.f.sub.L, I.sub.m, I.sub.g, which are transmitted to the decoder.

**[0051]**FIG. 6 is a block diagram of an embodiment of the encoder in accordance with the disclosed technology. The low-frequency encoder 10 receives the entire LSF vector f, which is split into a low-frequency part or subvector f.sup.L and a high-frequency part or subvector f.sup.H by a vector splitter 14. The low-frequency part is forwarded to a quantizer 16, which is configured to encode the low-frequency part f.sup.L by quantizing its elements, either by scalar or vector quantization, into a quantized low-frequency part or subvector {circumflex over (f)}.sup.L. At least one quantization index I.sub.f.sub.L (depending on the quantization method used) is outputted for transmission to the decoder.

**[0052]**The quantized low-frequency subvector {circumflex over (f)}.sup.L and the not yet encoded high-frequency subvector f.sup.H are forwarded to the high-frequency encoder 12. A mirroring frequency calculator 18 is configured to calculate the quantized mirroring frequency {circumflex over (f)}.sub.m in accordance with equation (2). The dashed lines indicate that only the last quantized element {circumflex over (f)}(M/2-1) in {circumflex over (f)}.sup.L and the first element f(M/2) in f.sup.H are required for this. The quantization index I.sub.m representing the quantized mirroring frequency {circumflex over (f)}.sub.m is outputted for transmission to the decoder.

**[0053]**The quantized mirroring frequency {circumflex over (f)}.sub.m is forwarded to a quantized low-frequency subvector flipping unit 20 configured to flip the elements of the quantized low-frequency subvector {circumflex over (f)}.sup.L around the quantized mirroring frequency {circumflex over (f)}.sub.m in accordance with equation (3). The flipped elements f.sub.flip (k) and the quantized mirroring frequency {circumflex over (f)}.sub.m are forwarded to a flipped element rescaler 22 configured to rescale the flipped elements in accordance with equation (4).

**[0054]**The frequency grids g.sup.i(k) are forwarded from frequency grid codebook 24 to a frequency grid rescaler 26, which also receives the last quantized element {circumflex over (f)}(M/2-1) in {circumflex over (f)}.sup.L. The rescaler 26 is configured to perform rescaling in accordance with equation (5).

**[0055]**The flipped and rescaled LSFs {tilde over (f)}.sub.flip (k) from flipped element rescaler 22 and the rescaled frequency grids {tilde over (g)}.sup.i(k) from frequency grid rescaler 26 are forwarded to a weighting unit 28, which is configured to perform a weighted averaging in accordance with equation (7). The resulting smoothed elements f.sub.smooth.sup.i(k) and the high-frequency target vector f.sup.H are forwarded to a frequency grid search unit 30 configured to select a frequency grid g.sup.opt in accordance with equation (13). The corresponding index I.sub.g is transmitted to the decoder.

**[0056]**Decoder

**[0057]**FIG. 7 is a flow chart of the decoding method in accordance with the disclosed technology. Step S11 reconstructs elements of a low-frequency part of the parametric spectral representation corresponding to a low-frequency part of the audio signal from at least one quantization index encoding that part of the parametric spectral representation. Step S12 reconstructs elements of a high-frequency part of the parametric spectral representation by weighted averaging based on the decoded elements flipped around a decoded mirroring frequency, which separates the low-frequency part from the high-frequency part, and a decoded frequency grid.

**[0058]**The method steps performed at the decoder are illustrated by the embodiment in FIG. 8. First the quantization indices I.sub.f.sub.L, I.sub.m, I.sub.g for the low-frequency LSFs, optimal mirroring frequency and optimal grid, respectively, are received.

**[0059]**In step S13 the quantized low-frequency part {circumflex over (f)}.sup.L is reconstructed from a low-frequency codebook by using the received index I.sub.f.sub.L.

**[0060]**The method steps performed at the decoder for reconstructing the high-frequency part {circumflex over (f)}.sup.H are very similar to already described encoder processing steps in equations (3)-(7).

**[0061]**The flipping and rescaling steps performed at the decoder (at S14) are identical to the encoder operations, and therefore described exactly by equations (3)-(4).

**[0062]**The steps (at S15) of rescaling the grid (equation (5)), and smoothing with it (equation (6)), require only slight modification in the decoder, because the closed loop search is not performed (search over i). This is because the decoder receives the optimal index opt from the bit stream. These equations instead take the following form:

**{tilde over (g)}.sup.opt(k)=g.sup.opt(k)(g.sub.max-{circumflex over (f)}(M/2-1))+{circumflex over (f)}(M/2-1) (14)**

**and**

**f**.sub.smooth(k)=[1-.lamda.(k)]{tilde over (f)}.sub.flip(k)+.lamda.(k){tilde over (g)}.sup.opt(k) (15)

**respectively**. The vector f.sub.smooth represents the high-frequency part {circumflex over (f)}.sup.H of the decoded signal.

**[0063]**Finally the low- and high-frequency parts {circumflex over (f)}.sup.L, {circumflex over (f)}.sup.H of the LSF vector are combined in step S16, and the resulting vector {circumflex over (f)} is transformed to AR coefficients a in step S17.

**[0064]**FIG. 9 is a block diagram of an embodiment of the decoder 50 in accordance with the disclosed technology. A low-frequency decoder 60 is configures to reconstruct elements {circumflex over (f)}.sup.L of a low-frequency part f.sup.L of the parametric spectral representation f corresponding to a low-frequency part of the audio signal from at least one quantization index I.sub.f.sub.L encoding that part of the parametric spectral representation. A high-frequency decoder 62 is configured to reconstruct elements {circumflex over (f)}.sup.H of a high-frequency part f.sup.H of the parametric spectral representation by weighted averaging based on the decoded elements {circumflex over (f)}.sup.L flipped around a decoded mirroring frequency {circumflex over (f)}.sub.m, which separates the low-frequency part from the high-frequency part, and a decoded frequency grid g.sup.opt. The frequency grid g.sup.opt is obtained by retrieving the frequency grid that corresponds to a received index I.sub.g from a frequency grid codebook 24 (this is the same codebook as in the encoder).

**[0065]**FIG. 10 is a block diagram of an embodiment of the decoder in accordance with the disclosed technology. The low-frequency decoder receives at least one quantization index I.sub.f.sub.L, depending on whether scalar or vector quantization is used, and forwards it to a quantization index decoder 66, which reconstructs elements {circumflex over (f)}.sup.L of the low-frequency part of the parametric spectral representation. The high-frequency decoder 62 receives a mirroring frequency quantization index I.sub.m, which is forwarded to a mirroring frequency decoder 66 for decoding the mirroring frequency {circumflex over (f)}.sub.m. The remaining blocks 20, 22, 24, 26 and 28 perform the same functions as the correspondingly numbered blocks in the encoder illustrated in FIG. 6. The essential differences between the encoder and the decoder are that the mirroring frequency is decoded from the index I.sub.m instead of being calculated from equation (2), and that the frequency grid search unit 30 in the encoder is not required, since the optimal frequency grid is obtained directly from frequency grid codebook 24 by looking up the frequency grid g.sup.opt that corresponds to the received index I.sub.g.

**[0066]**The steps, functions, procedures and/or blocks described herein may be implemented in hardware using any conventional technology, such as discrete circuit or integrated circuit technology, including both general-purpose electronic circuitry and application-specific circuitry.

**[0067]**Alternatively, at least some of the steps, functions, procedures and/or blocks described herein may be implemented in software for execution by suitable processing equipment. This equipment may include, for example, one or several micro processors, one or several Digital Signal Processors (DSP), one or several Application Specific Integrated Circuits (ASIC), video accelerated hardware or one or several suitable programmable logic devices, such as Field Programmable Gate Arrays (FPGA). Combinations of such processing elements are also feasible.

**[0068]**It should also be understood that it may be possible to reuse the general processing capabilities already present in a UE. This may, for example, be done by reprogramming of the existing software or by adding new software components.

**[0069]**FIG. 11 is a block diagram of an embodiment of the encoder 40 in accordance with the disclosed technology. This embodiment is based on a processor 110, for example a micro processor, which executes software 120 for quantizing the low-frequency part f.sup.L of the parametric spectral representation, and software 130 for search of an optimal extrapolation represented by the mirroring frequency {circumflex over (f)}.sub.m and the optimal frequency grid vector g.sup.opt. The software is stored in memory 140. The processor 110 communicates with the memory over a system bus. The incoming parametric spectral representation f is received by an input/output (I/O) controller 150 controlling an I/O bus, to which the processor 110 and the memory 140 are connected. The software 120 may implement the functionality of the low-frequency encoder 10. The software 130 may implement the functionality of the high-frequency encoder 12. The quantized parameters {circumflex over (f)}.sup.L, {circumflex over (f)}.sub.m, g.sup.opt (or preferably the corresponding indices I.sub.f.sub.L, I.sub.m, I.sub.g) obtained from the software 120 and 130 are outputted from the memory 140 by the I/O controller 150 over the I/O bus.

**[0070]**FIG. 12 is a block diagram of an embodiment of the decoder 50 in accordance with the disclosed technology. This embodiment is based on a processor 210, for example a micro processor, which executes software 220 for decoding the low-frequency part f.sup.L of the parametric spectral representation, and software 230 for decoding the low-frequency part f.sup.H of the parametric spectral representation by extrapolation. The software is stored in memory 240. The processor 210 communicates with the memory over a system bus. The incoming encoded parameters {circumflex over (f)}.sup.L, {circumflex over (f)}.sub.m, g.sup.opt (represented by I.sub.f.sub.L, I.sub.m, I.sub.g) are received by an input/output (I/O) controller 250 controlling an I/O bus, to which the processor 210 and the memory 240 are connected. The software 220 may implement the functionality of the low-frequency decoder 60. The software 230 may implement the functionality of the high-frequency decoder 62. The decoded parametric representation {circumflex over (f)} ({circumflex over (f)}.sup.L combined with {circumflex over (f)}.sup.H) obtained from the software 220 and 230 are outputted from the memory 240 by the I/O controller 250 over the I/O bus.

**[0071]**FIG. 13 illustrates an embodiment of a user equipment UE including an encoder in accordance with the disclosed technology. A microphone 70 forwards an audio signal to an A/D converter 72. The digitized audio signal is encoded by an audio encoder 74. Only the components relevant for illustrating the disclosed technology are illustrated in the audio encoder 74. The audio encoder 74 includes an AR coefficient estimator 76, an AR to parametric spectral representation converter 78 and an encoder 40 of the parametric spectral representation. The encoded parametric spectral representation (together with other encoded audio parameters that are not needed to illustrate the present technology) is forwarded to a radio unit 80 for channel encoding and up-conversion to radio frequency and transmission to a decoder over an antenna.

**[0072]**FIG. 14 illustrates an embodiment of a user equipment UE including a decoder in accordance with the disclosed technology. An antenna receives a signal including the encoded parametric spectral representation and forwards it to radio unit 82 for down-conversion from radio frequency and channel decoding. The resulting digital signal is forwarded to an audio decoder 84. Only the components relevant for illustrating the disclosed technology are illustrated in the audio decoder 84. The audio decoder 84 includes a decoder 50 of the parametric spectral representation and a parametric spectral representation to AR converter 86. The AR coefficients are used (together with other decoded audio parameters that are not needed to illustrate the present technology) to decode the audio signal, and the resulting audio samples are forwarded to a D/A conversion and amplification unit 88, which outputs the audio signal to a loudspeaker 90.

**[0073]**In one example application the disclosed AR quantization-extrapolation scheme is used in a BWE context. In this case AR analysis is performed on a certain high frequency band, and AR coefficients are used only for the synthesis filter. Instead of being obtained with the corresponding analysis filter, the excitation signal for this high band is extrapolated from an independently coded low band excitation.

**[0074]**In another example application the disclosed AR quantization-extrapolation scheme is used in an ACELP type coding scheme. ACELP coders model a speaker's vocal tract with an AR model. An excitation signal e(n) is generated by passing a waveform s(n) through a whitening filter e(n)=A(z)s(n), where A(z)=1+a.sub.1z.sup.-1+a.sub.2z.sup.-2+ . . . +a.sub.Mz.sup.-M, is the AR model of order M. On a frame-by-frame basis a set of AR coefficients a=[a.sub.1 a.sub.2 . . . a.sub.M].sup.T, and excitation signal are quantized, and quantization indices are transmitted over the network. At the decoder, synthesized speech is generated on a frame-by-frame basis by sending the reconstructed excitation signal through the reconstructed synthesis filter A(z).sup.-1.

**[0075]**In a further example application the disclosed AR quantization-extrapolation scheme is used as an efficient way to parameterize a spectrum envelope of a transform audio codec. On short-time basis the waveform is transformed to frequency domain, and the frequency response of the AR coefficients is used to approximate the spectrum envelope and normalize transformed vector (to create a residual vector). Next the AR coefficients and the residual vector are coded and transmitted to the decoder.

**[0076]**It will be understood by those skilled in the art that various modifications and changes may be made to the disclosed technology without departure from the scope thereof, which is defined by the appended claims.

**ABBREVIATIONS**

**ACELP Algebraic Code Excited Linear Prediction**

**ASIC Application Specific Integrated Circuits**

**AR Auto Regression**

**BWE Bandwidth Extension**

**DSP Digital Signal Processor**

**FPGA Field Programmable Gate Array**

**ISP Immitance Spectral Pairs**

**LP Linear Prediction**

**LSF Line Spectral Frequencies**

**LSP Line Spectral Pair**

**MSE Mean Squared Error**

**SD Spectral Distortion**

**SQ Scalar Quantizer**

**UE User Equipment**

**VQ Vector Quantization**

**REFERENCES**

**[0077]**[1] 3GPP TS 26.090, "Adaptive Multi-Rate (AMR) speech codec; Transcoding functions", p. 13, 2007

**[0078]**[2] N. Iwakami, et al., High-quality audio-coding at less than 64 kbit/s by using transform-domain weighted interleave vector quantization (TWINVQ), IEEE ICASSP, vol. 5, pp. 3095-3098, 1995

**[0079]**[3] J. Makhoul, "Linear prediction: A tutorial review", Proc. IEEE, vol 63, p. 566, 1975

**[0080]**[4] P. Kabal and R. P. Ramachandran, "The computation of line spectral frequencies using Chebyshev polynomials", IEEE Trans. on ASSP, vol. 34, no. 6, pp. 1419-1426, 1986

User Contributions:

Comment about this patent or add new information about this topic: