# Patent

## Title
Generation of a high band extension of a bandwidth extended audio signal

## Abstract

An audio decoder configured to generate a high band extension of an audio signal from an envelope and an excitation. The audio decoder includes a control arrangement configured to jointly control envelope shape and excitation noisiness with a common control parameter (f).

## Background
CROSS REFERENCE TO RELATED APPLICATION
This application is a 35 U.S.C. §371 national stage application of PCT International Application No, PCT/SE2012/050937, filed on 4 Sep. 2012, which itself claims priority to U.S. Provisional Patent Application No. 61/554,573, filed 2 Nov. 2011, and U.S. Provisional Patent Application No. 61/589,618, filed 23 Jan. 2012, the disclosures of which are incorporated by reference herein in their entireties. The above-referenced PCT International Application was published in the English language as International Publication No. WO 2013/066238 A2 on 10 May 2013.


TECHNICAL FIELD
The proposed technology relates to generation of a high band extension of a bandwidth extended audio signal.
BACKGROUND
Most existing telecommunication systems operate on a limited audio bandwidth. Stemming from the limitations of the land-line telephony systems, most voice services are limited to only transmitting the lower end of the spectrum. Although the audio bandwidth is enough for most conversations, there is a desire to increase bandwidth to improve intelligibility and sense of presence. Although the capacity in telecommunication networks is continuously increasing, it is still of great interest to limit the required bandwidth per communication channel. In mobile networks smaller transmission bandwidths for each call yields lower power consumption in both the mobile device and the base station. This translates to energy and cost savings for the mobile operator, while the end user will experience prolonged battery life and increased talk-time. Further, with less consumed bandwidth per user the mobile network can service a larger number of users in parallel.
A property of the human auditory system is that the perception is frequency dependent. In particular, our hearing is less accurate for higher frequencies. This has inspired so called bandwidth extension (BWE) techniques, where a high frequency band is reconstructed from a low frequency band using limited resources.
The conventional BWE uses a representation of the spectral envelope of the extended high band signal, and reproduces the spectral fine structure of the signal by using a modified version of the low band signal. If the high band envelope is represented by a filter, the fine structure signal is often called the excitation signal. An accurate representation of the high band envelope is perceptually more important than the fine structure. Consequently, it is common that the available resources in terms of bits are spent on the envelope representation while the fine structure is reconstructed from the coded low band signal without additional side information. The basic concept of BWE is illustrated in FIG. 1.
The technology of BWE has been applied in a variety of audio coding systems. For example, the 3GPP AMR-WB+, [1], uses a time domain BWE based on a low band coder which switches between Code Excited Linear Predictor (CELP) speech coding and Transform Coded Residual (TCX) coding. Another example is the 3GPP eAAC transform based audio codec which performs a transform domain variant of BWE called Spectral Band Replication (SBR), [2]. Here, the excitation is created using a mixture of tonal components generated from the low-band excitation and a noise source in order to match the tonal to noise ratio of the input signal. In general, the noisiness of the signal can be described as a measure of how flat the spectrum is, e.g. using a spectral flatness measure. The noisiness can also be described as non-tonality, randomness or non-structure of the excitation. Increasing the noisiness of a signal is to make it more noise-like by e.g. mixing the signal with a noise signal from e.g. a random number generator or any other noise source. It can also be done by modifying the spectrum of the signal to make it more flat.
The spectral fine structure from the low band may be very different from the fine structure found in the high band. In particular, the combination of an excitation generated from the low band signal together with the high band envelope may produce undesired artifacts as residing harmonicity or shape of the excitation may be emphasized by the envelope shaping in an uncontrolled way. As a safety measure, it is common to flatten the high band envelope in order to limit undesired interaction between the excitation and the envelope. Although this solution may give a reasonable trade-off, the flatter envelope may be perceived as more noisy and the high band envelope will be less accurate.
SUMMARY
An object of the proposed technology is an improved control of the generation of the high band extension of a bandwidth extended audio signal.
This object is achieved in accordance with the attached claims.
A first aspect of the proposed technology involves a method of generating a high band extension of an audio signal from an envelope and an excitation. The method includes the step of jointly controlling envelope shape and excitation noisiness with a common control parameter.
A second aspect of the proposed technology involves an audio decoder configured to generate a high band extension of an audio signal from an envelope and an excitation. The audio decoder includes a control arrangement configured to jointly control envelope shape and excitation noisiness with a common control parameter.
A third aspect of the proposed technology involves a user equipment (UE) including an audio decoder in accordance with the second aspect.
A fourth aspect of the proposed technology involves an audio encoder including a spectral flatness estimator configured to determine, for transmission to a decoder, a measure of spectral flatness of a high band signal.
The proposed technology allows a more pronounced envelope structure which masks perceptual artifacts created by artificially generated high band excitations. At the same time joint control of envelope structure and noisiness of the excitation improves naturalness of the reconstructed audio signal.



BRIEF DESCRIPTION OF THE DRAWINGS
The proposed 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.
FIG. 1 illustrates the basic concept of the BWE technique in the form of a frequency spectrum. The coded low band signal is extended with a high band using a high band envelope and an excitation signal which is generated from the low band signal.
FIG. 2 illustrates an example BWE system with a CELP codec for the low band and where the upper band is reconstructed using a Linear Predictor (LP) envelope and an excitation signal which is generated from modified output parameters of the CELP decoder.
FIG. 3 illustrates an example BWE decoder which has a corresponding encoder as shown in FIG. 2. The modulated excitation is mixed with a noise signal from a noise generator.
FIG. 4 illustrates an example embodiment of the proposed technology in a CELP decoder system with a joint control arrangement for the excitation mixing and spectral shape.
FIG. 5 illustrates an example of an input LP spectrum and an LP spectrum which has been emphasized with a post-filter.
FIG. 6 illustrates an example embodiment of an encoder using a spectral flatness analysis based on Linear Predictive Coding (LPC) coefficients.
FIG. 7 illustrates an example embodiment of a decoder corresponding to the encoder in FIG. 6 which uses the transmitted flatness parameter for joint spectral envelope and excitation structure control.
FIG. 8 illustrates an example of a transform based audio codec which has a joint envelope encoding for the entire spectrum and employs BWE techniques to obtain the spectral fine structure of the high band.
FIG. 9 illustrates an example of a BWE decoder belonging to a corresponding encoder as shown in FIG. 8. The modulated excitation is modified using a compressor to get a flatter fine structure in the high band excitation.
FIG. 10 illustrates an example embodiment of the proposed technology in a transform based decoder system with a joint controller for excitation compression and envelope expansion.
FIG. 11 illustrates an example embodiment of an encoder which has a local decoding unit and a low band error estimator.
FIG. 12 illustrates an example embodiment of the proposed technology in a transform based decoder system with a joint control arrangement for excitation compression and envelope expansion, where the joint control is adapted using the low band error estimate from the encoder.
FIG. 13 illustrates an example embodiment of a control arrangement.
FIG. 14 illustrates a User Equipment (UE) including a decoder provided with a control arrangement.
FIG. 15 is a flow chart illustrating the proposed technology.
FIG. 16 is a flow chart illustrating an example embodiment of the proposed technology.
FIG. 17 is a flow chart illustrating an example embodiment of the proposed technology.
FIG. 18 is a flow chart illustrating an example embodiment of the proposed technology.
FIG. 19 is a flow chart illustrating an example embodiment of the proposed technology.



DETAILED DESCRIPTION
In the following detailed description blocks performing the same or similar functions have been provided with the same reference designations.
The proposed technology may be used both in time domain BWE and frequency domain BWE. Example embodiments for both will be given below,
Time Domain BWE
An example embodiment of a prior art BWE mainly intended for speech applications is shown in FIG. 2. This example uses a CELP speech encoding algorithm for the low band of the input signal. The high band envelope is represented with an LP filter. The synthesis of the high band is created by using a modified version of the low band excitation signal extracted from the CELP synthesis.
Each input signal frame y is split into a low frequency band signal yL and a high frequency band signal yH using an analysis filter bank 10. Any suitable filter bank may be used, but it would essentially consist of a low-pass and a high-pass filter, e.g. a Quadrature Mirror Filter (QMF) filter bank. The low band signal is fed to a CELP encoding algorithm performed in a CELP encoder 12. LP analysis is conducted on the high band signal in an LP analysis block 14 to obtain a representation A of the high band envelope. The LP coefficients defining A are encoded with an LP quantizer or LP encoder 16, and the quantization indices ILP are multiplexed in a bitstream mux (multiplexer) 18 together with the CELP encoder indices ICELP to be stored or transmitted to a decoder. The decoder in turn demultiplexes the indices ILP and ICELP in a bitstream demux (de-multiplexer) 20, and forwards them to the LP decoder 22 and the CELP decoder 24, respectively. In the CELP decoding the CELP excitation signal xL is extracted and processed such that the frequency spectrum is modulated to generate the high band excitation signal xH.
There exists a variety of modulation schemes to create a high band excitation xH from a low band excitation signal xL in an excitation processor 26. For example, reversing the spectrum guarantees that the properties of the signal are similar in the crossover region between low band and high band, but the high end of the high band signal may have undesired properties. Other ways of generating a high band excitation is to perform other types of modulation which may or may not preserve the harmonic structure of a series of harmonics. The excitation signal may be taken from only a part of the low band or even adaptively by searching the low band for suitable parts to be used to form the high band excitation signal. The latter approach may also require that parameters are encoded such that the decoder may identify the regions used in the high band excitation.
The modulated excitation xH is filtered using the high band LP filter 1/Â to form the high band synthesis ŷH. This is done in an LP synthesis block 28. The output ŷL of the CELP decoder is joined with the high band synthesis ŷH in synthesis filter bank 30 to form the output signal ŷ.
In FIG. 2 and the following figures the lines to and from the bitstream mux 18 and bitstream demux 20, respectively, have been dashed to indicate that they transfer indices representing quantized quantities rather than the actual values of the quantized quantities.
The excitation from the low band may have properties that are not suitable to be used as high band excitation. For instance, the low band signal often contains strong harmonic structure which gives annoying artifacts when transferred to the high band. One prior art solution to control the excitation structure is to mix the low band excitation signal with noise. An example decoder of such a system is shown in FIG. 3. Here, the high band LP filter coefficients Â are decoded and the CELP decoder 24 is run while extracting the excitation signal just as described in FIG. 2. However, the modulated excitation xH is also mixed, as illustrated by multipliers 32, 34 and an adder 36, with a Gaussian noise signal n from a noise generator 38 using respective mixing factors gx(i) and gn(i) for each subframe i, i.e.:

{tilde over (x)}i=gx(i)xH,i+gn(i)ni  (1)

Here xH,i represents the samples xH of subframe i, such that xH=[xH,1 xH,2 . . . xH,Nsub], where Nsub is the number of subframes. In this example Nsub=4. It may further be beneficial to adapt the temporal shape of the noise signal n such that it matches the temporal shape of xH.

In this example the mixing factors are determined in a mix controller 40 and are based on a voicing parameter ν(i) of each subframe i of the CELP codec:




  
    
      
        {
        
          
            
              
                
                  
                    g
                    x
                  
                  ⁡
                  
                    (
                    i
                    )
                  
                
                =
                
                  
                    v
                    ⁡
                    
                      (
                      i
                      )
                    
                  
                
              
            
          
          
            
              
                
                  
                    g
                    n
                  
                  ⁡
                  
                    (
                    i
                    )
                  
                
                =
                
                  
                    
                      
                        E
                        1
                      
                      ⁡
                      
                        (
                        
                          1
                          -
                          
                            v
                            ⁡
                            
                              (
                              i
                              )
                            
                          
                        
                        )
                      
                    
                    /
                    
                      E
                      2
                    
                  
                
              
            
          
        
      
    
    
      
        (
        2
        )
      
    
  




where E1 and E2 are the frame energies of xH and n, respectively, i.e.:





  
    
      
        {
        
          
            
              
                
                  E
                  1
                
                =
                
                  
                    ∑
                    
                      k
                      =
                      0
                    
                    
                      L
                      -
                      1
                    
                  
                  ⁢
                  
                    
                      x
                      H
                      2
                    
                    ⁡
                    
                      (
                      k
                      )
                    
                  
                
              
            
          
          
            
              
                
                  E
                  2
                
                =
                
                  
                    ∑
                    
                      k
                      =
                      0
                    
                    
                      L
                      -
                      1
                    
                  
                  ⁢
                  
                    
                      n
                      2
                    
                    ⁡
                    
                      (
                      k
                      )
                    
                  
                
              
            
          
        
      
    
    
      
        (
        3
        )
      
    
  




where the current frame is represented with samples k=0, 1, 2, . . . , L−1. The voicing parameter ν(i) influences the balance of the noise component n and the modulated excitation xH and may e.g. be in the interval ν(i)ε[0,1]. The voicing parameter expresses the signal periodicity (or tonality or harmonicity) and is computed from the energy EACB of the algebraic codebook and the energy EFCB of the fixed codebook of the CELP codec, for example in accordance with:





  
    
      
        
          
            v
            ⁡
            
              (
              i
              )
            
          
          =
          
            0.5
            ⁢
            
              (
              
                1
                -
                
                  
                    r
                    v
                  
                  ⁡
                  
                    (
                    i
                    )
                  
                
              
              )
            
          
        
        ⁢
        
          

        
        ⁢
        where
      
    
    
      
        (
        4
        )
      
    
  
  
    
      
        
          
            r
            
              v
              ⁢
              
                
              
            
          
          ⁡
          
            (
            i
            )
          
        
        =
        
          
            
              
                E
                v
              
              ⁡
              
                (
                i
                )
              
            
            -
            
              
                E
                C
              
              ⁡
              
                (
                i
                )
              
            
          
          
            
              
                E
                v
              
              ⁡
              
                (
                i
                )
              
            
            +
            
              
                E
                C
              
              ⁡
              
                (
                i
                )
              
            
          
        
      
    
    
      
        (
        5
        )
      
    
  




where Eν(i) and EC(i) are the energies of the scaled pitch code vector and scaled algebraic code vector for subframe i.

The mixed excitation {tilde over (x)}H is filtered in LP synthesis block 28 using the high band LP filter 1/Â to form the high band synthesis ŷH. The output ŷL of the CELP decoder is joined with the high band synthesis ŷH in synthesis filter bank 30 to form the output signal ŷ.
An example embodiment of a time domain BWE based on the technology proposed herein focuses on an audio encoder and decoder system mainly intended for speech applications. This embodiment resides in the decoder of an encoding and decoding system as outlined in FIG. 2 and with an excitation noise mixing system as described in FIG. 3. The addition to the prior art systems is an additional control on both the spectral envelope and the excitation mixing by jointly controlling envelope shape and excitation noisiness with a common control (or shared) parameter f, as exemplified in the decoder 200 in FIG. 4. The control parameter f is “common” in the sense that the same control parameter f is used to control both envelope shape and excitation noisiness. In this example a single control parameter fε[0,1] is used. It should, however, be noted that any interval of the control parameter may be used, e.g. [−A,A], [0,A], [A,0] or [A,B] for any suitable A and B. However, there is a benefit of having a simple unit interval for the purpose of controlling two or more processes jointly.
The control of the spectral envelope may, for example, be done using a formant post-filter H(z) (illustrated at 42 in FIG. 4) of the form:




  
    
      
        
          H
          ⁡
          
            (
            z
            )
          
        
        =
        
          
            
              A
              ^
            
            ⁡
            
              (
              
                z
                /
                
                  γ
                  1
                
              
              )
            
          
          
            
              A
              ^
            
            ⁡
            
              (
              
                z
                /
                
                  γ
                  2
                
              
              )
            
          
        
      
    
    
      
        (
        6
        )
      
    
  




where

    
    
        Â is a linear predictor filter representing the envelope, and
        γ1, γ2 are functions of the control parameter f.
    
    


This post-filter 42 is typically used for cleaning spectral valleys in a CELP decoder, and is controlled by a joint post-filter and excitation controller 44. An example of the spectrum envelope emphasis obtained with such a post-filter can be seen in FIG. 5. In this example embodiment the filter 42 is made adaptive by modifying γ1, γ2 using the control parameter f in accordance with:




  
    
      
        {
        
          
            
              
                
                  γ
                  1
                
                =
                
                  
                    γ
                    0
                  
                  +
                  
                    
                      f
                      ·
                      Δ
                    
                    ⁢
                    
                      
                    
                    ⁢
                    γ
                  
                
              
            
          
          
            
              
                
                  γ
                  2
                
                =
                
                  
                    γ
                    0
                  
                  -
                  
                    
                      f
                      ·
                      Δ
                    
                    ⁢
                    
                      
                    
                    ⁢
                    γ
                  
                
              
            
          
        
      
    
    
      
        (
        7
        )
      
    
  




where γ0, Δγ are predetermined constants. Suitable values for γ0 may be γ0=0.75 or in the range γ0ε[0.5,0.9], and suitable values for Δγ may be Δγ=0.15 or in the range Δγε[0.1,0.3]. Note however that γ0 and Δγ must be chosen such that γ1ε[0,1] and γ2ε[0,1]. With this setup, the control value f=1 will give the strongest modification from the post-filter while f=0 will disable the post-filter by setting γ1=γ2 which yields H(z)=1.

In another variant of the post-filter 42 the idle state of the filter for f=0 is modified to have a flattening effect on the spectrum. This may be useful for situations where the initial spectrum has too much structure, such that a disabling of the post-filter is not enough to achieve the desired amount of spectral valley de-emphasis. In that case the expression in equation (7) can be modified as:




  
    
      
        {
        
          
            
              
                
                  
                    γ
                    1
                  
                  =
                  
                    
                      γ
                      0
                    
                    -
                    
                      γ
                      exp
                    
                    +
                    
                      
                        f
                        ·
                        Δ
                      
                      ⁢
                      
                        
                      
                      ⁢
                      γ
                    
                  
                
              
            
            
              
                
                  
                    γ
                    2
                  
                  =
                  
                    
                      γ
                      0
                    
                    +
                    
                      γ
                      exp
                    
                    -
                    
                      
                        f
                        ·
                        Δ
                      
                      ⁢
                      
                        
                      
                      ⁢
                      γ
                    
                  
                
              
            
          
          ⁢
          
            

          
          ⁢
          or
        
      
    
    
      
        (
        8
        )
      
    
  
  
    
      
        {
        
          
            
              
                
                  γ
                  1
                
                =
                
                  
                    γ
                    0
                  
                  -
                  
                    γ
                    exp
                  
                  +
                  
                    f
                    ·
                    
                      (
                      
                        Δγ
                        +
                        
                          γ
                          exp
                        
                      
                      )
                    
                  
                
              
            
          
          
            
              
                
                  γ
                  2
                
                =
                
                  
                    γ
                    0
                  
                  +
                  
                    γ
                    exp
                  
                  -
                  
                    f
                    ·
                    
                      (
                      
                        Δγ
                        +
                        
                          γ
                          exp
                        
                      
                      )
                    
                  
                
              
            
          
        
      
    
    
      
        (
        9
        )
      
    
  




where the equation (9) implicitly accounts for the flattening filter offset. Note that f=0 in this case generates γ1<γ2 which means the post-filter 42 has a flattening effect rather than emphasizing effect on the shape of the envelope.

The flattening effect may also be achieved by extending the range of the control parameter f to e.g. fε[−1,1] or fε[A, A] or fε[A, B] for suitable values of A and B. In this case, the post-filter 42 may be expressed as in equation (7) such that a negative f gives a flattening effect to the spectral envelope while a positive f enhances the spectral envelope structure. It may also be desirable to use different post-filter strengths for the spectral structure emphasis and spectral flattening, respectively. One such method would be to use a different Δγ depending on the sign of the control parameter f.




  
    
      
        {
        
          
            
              
                
                  
                    γ
                    1
                  
                  =
                  
                    
                      γ
                      0
                    
                    +
                    
                      f
                      ·
                      
                        Δγ
                        sharp
                      
                    
                  
                
              
            
            
              
                
                  
                    γ
                    2
                  
                  =
                  
                    
                      γ
                      0
                    
                    -
                    
                      f
                      ·
                      
                        Δγ
                        sharp
                      
                    
                  
                
              
            
          
          ,
          
            f
            ≥
            
              0
              ⁢
              
                

              
              ⁢
              
                {
                
                  
                    
                      
                        
                          
                            γ
                            1
                          
                          =
                          
                            
                              γ
                              0
                            
                            +
                            
                              f
                              ·
                              
                                Δγ
                                flat
                              
                            
                          
                        
                      
                    
                    
                      
                        
                          
                            γ
                            2
                          
                          =
                          
                            
                              γ
                              0
                            
                            -
                            
                              f
                              ·
                              
                                Δγ
                                flat
                              
                            
                          
                        
                      
                    
                  
                  ,
                  
                    f
                    <
                    0
                  
                
              
            
          
        
      
    
    
      
        (
        10
        )
      
    
  




where Δγflat and Δγsharp are predetermined constants which control the strength of the flattening and spectral enhancing strength, respectively. Suitable values may be Δγflat=0.12 or in the range Δγflatε[0.01,0.20] and Δγsharp=0.08 or in the range Δγsharpε[0.01,0.20].

The excitation mixing is in turn controlled by a mix controller 41 configured to control the excitation noisiness by mixing the high band excitation xH,i of subframe i with noise ni in accordance with (1), where the mixing factors gx(i) and gn(i) are defined by:




  
    
      
        {
        
          
            
              
                
                  
                    g
                    x
                  
                  ⁡
                  
                    (
                    i
                    )
                  
                
                =
                
                  
                    
                      v
                      ⁡
                      
                        (
                        i
                        )
                      
                    
                    ⁢
                    
                      (
                      
                        1
                        -
                        
                          α
                          ⁢
                          
                            
                          
                          ⁢
                          f
                        
                      
                      )
                    
                  
                
              
            
          
          
            
              
                
                  
                    g
                    n
                  
                  ⁡
                  
                    (
                    i
                    )
                  
                
                =
                
                  
                    
                      
                        E
                        1
                      
                      ⁡
                      
                        (
                        
                          1
                          -
                          
                            
                              v
                              ⁡
                              
                                (
                                i
                                )
                              
                            
                            ⁢
                            
                              (
                              
                                1
                                -
                                
                                  α
                                  ⁢
                                  
                                    
                                  
                                  ⁢
                                  f
                                
                              
                              )
                            
                          
                        
                        )
                      
                    
                    /
                    
                      E
                      2
                    
                  
                
              
            
          
        
      
    
    
      
        (
        11
        )
      
    
  




where

    
    
        ν(i) is a voicing parameter partially controlling the excitation noisiness,
        α is a predetermined tuning constant,
        E1 is the frame energy of the high band excitations xH,i for all subframes i, and
        E2 is the frame energy of the noise ni for all subframes i.
    
    


The tuning constant α decides the maximum modification compared to equation (2). A suitable value for α may be α=0.3 or in the range αε[0,1]. When the control parameter f is close to 1 the mixing factors will be balanced to give more noise, while f close to 0 will give the unmodified noise proportion in the mix.
If negative values of the control parameter f are permitted, an alternative expression for the noise mixing factors generated by mix controller 41 is




  
    
      
        {
        
          
            
              
                
                  
                    g
                    x
                  
                  ⁡
                  
                    (
                    i
                    )
                  
                
                =
                
                  
                    
                      v
                      ⁡
                      
                        (
                        i
                        )
                      
                    
                    ⁢
                    
                      (
                      
                        1
                        -
                        
                          max
                          ⁡
                          
                            (
                            
                              0
                              ,
                              
                                α
                                ⁢
                                
                                  
                                
                                ⁢
                                f
                              
                            
                            )
                          
                        
                      
                      )
                    
                  
                
              
            
          
          
            
              
                
                  
                    g
                    n
                  
                  ⁡
                  
                    (
                    i
                    )
                  
                
                =
                
                  
                    
                      
                        E
                        1
                      
                      ⁡
                      
                        (
                        
                          1
                          -
                          
                            
                              v
                              ⁡
                              
                                (
                                i
                                )
                              
                            
                            ⁢
                            
                              (
                              
                                1
                                -
                                
                                  max
                                  ⁡
                                  
                                    (
                                    
                                      0
                                      ,
                                      
                                        α
                                        ⁢
                                        
                                          
                                        
                                        ⁢
                                        f
                                      
                                    
                                    )
                                  
                                
                              
                              )
                            
                          
                        
                        )
                      
                    
                    /
                    
                      E
                      2
                    
                  
                
              
            
          
        
      
    
    
      
        (
        12
        )
      
    
  




where

    
    
        ν(i) is a voicing parameter partially controlling the excitation noisiness,
        α is a predetermined tuning constant,
        E1 is the frame energy of the high band excitations xH,i for all subframes i, and
        E2 is the frame energy of the noise ni for all subframes i.
    
    


Here the function max(a,b) returns the maximum value of a and b as defined in equation (14) below. In the expression above this ensures that a negative f does not influence the noise mixing values.
In an embodiment the control parameter f may be adapted by using parameters already present in the decoder 200. One example is to use the spectral tilt of the high band signal, since the post-filter 42 may be harmful in combination with a strong spectral tilt. Thus, the joint post-filter and excitation controller 44 may be configured adapt the control parameter f to a high band spectral tilt tm of frame m. The high band spectral tilt may be approximated using the second coefficient a1,m of the decoded LP filter Âm={1, a1,m, a2,m, . . . , aP,m} of the current frame m, where P is the filter order.
It is generally beneficial to smoothen the adaptation to avoid creating abrupt changes in the spectral envelope, for example in accordance with:

tm=β·a1,m+(1−β)max(0,tm-1)  (13)

where tm is the spectral tilt value of frame m, tm-1, is the spectral tilt value of the previous frame m−1 and β=0.1 or in the range β=[0,0.5]. The max function may be defined as:





  
    
      
        
          max
          ⁡
          
            (
            
              a
              ,
              b
            
            )
          
        
        =
        
          {
          
            
              
                
                  a
                  ,
                
              
              
                
                  a
                  ≥
                  b
                
              
            
            
              
                
                  b
                  ,
                
              
              
                
                  a
                  <
                  b
                
              
            
          
        
      
    
    
      
        (
        14
        )
      
    
  




Here the max function ensures the spectral tilt value used from the previous frame is not negative. Other examples for smoothing the spectral tilt are:

tm=β·max(0,a1,m)+(1−β)tm-1  (15)

and

tm=β·a1,m+(1−β)tm-1  (16)

It may also be desirable to consider both negative and positive spectral tilts. In this case the absolute value of the spectral tilt approximation may be used, i.e.:

tm=β·|a1,m|+(1−β)tm-1  (17)

The smoothened spectral tilt value can be mapped to the control parameter f with a piece-wise linear function:




  
    
      
        
          f
          ⁡
          
            (
            
              t
              m
            
            )
          
        
        =
        
          {
          
            
              
                
                  0
                  ,
                
              
              
                
                  
                    t
                    m
                  
                  ≥
                  
                    C
                    max
                  
                
              
            
            
              
                
                  
                    1
                    -
                    
                      
                        (
                        
                          
                            t
                            m
                          
                          -
                          
                            C
                            min
                          
                        
                        )
                      
                      /
                      
                        (
                        
                          
                            C
                            max
                          
                          -
                          
                            C
                            min
                          
                        
                        )
                      
                    
                  
                  ,
                
              
              
                
                  
                    C
                    min
                  
                  ≤
                  
                    t
                    m
                  
                  <
                  
                    C
                    max
                  
                
              
            
            
              
                
                  1
                  ,
                
              
              
                
                  
                    t
                    m
                  
                  <
                  
                    C
                    min
                  
                
              
            
          
        
      
    
    
      
        (
        18
        )
      
    
  




where Cmin and Cmax are predetermined constants. In this example the constant values are set to Cmax=0.8 and Cmin=0.4, but other suitable values may be chosen from Cmaxε[0.5,2.0] and Cminε[0,Cmax].

Returning to FIG. 4, using the modified gx and gn a new excitation signal {tilde over (x)}H is obtained. This signal is filtered using the high band LP filter 1/Â (at 28) to form a first stage high band synthesis y′H. This signal is fed to the adaptive post-filter H(z) (at 42) to obtain the high band synthesis {tilde over (y)}H. The output ŷL of the CELP decoder 24 is combined with the high band synthesis {tilde over (y)}H in the synthesis filter bank 30 to form the output signal ŷ.
Other alternatives exist to the tilt-based adaptation described above. For example, a measure of the spectral flatness of the high band may be used. The spectral flatness φ is measured on some representation of the high band spectrum. It may, for example, be derived from the high band LPC coefficients A using the well-known expression:




  
    
      
        
          φ
          =
          
            
              e
              
                
                  1
                  N
                
                ⁢
                
                  
                    ∑
                    
                      i
                      =
                      0
                    
                    
                      N
                      -
                      1
                    
                  
                  ⁢
                  
                    log
                    ⁡
                    
                      (
                      
                        X
                        i
                      
                      )
                    
                  
                
              
            
            
              
                1
                N
              
              ⁢
              
                
                  ∑
                  
                    i
                    =
                    0
                  
                  
                    N
                    -
                    1
                  
                
                ⁢
                
                  X
                  i
                
              
            
          
        
        ⁢
        
          

        
        ⁢
        where
      
    
    
      
        (
        19
        )
      
    
  
  
    
      
        
          
            X
            i
          
          =
          
            1
            
              
                
                
                  DFT
                  ⁡
                  
                    (
                    
                      A
                      ,
                      M
                    
                    )
                  
                
                
              
              2
            
          
        
        ,
        
          i
          =
          0
        
        ,
        1
        ,
        2
        ,
        ...
        ⁢
        
          
        
        ,
        
          N
          -
          1
        
      
    
    
      
        (
        20
        )
      
    
  




where DFT(A,M) denotes the discrete Fourier transform of length M of the LPC coefficients A. The expression |·| denotes the magnitude of the complex transform values (the dot represents a mathematical expression), and due to the symmetry of the transform only the first N=M/2 values are considered. This transform is preferably implemented with an FFT (Fast-Fourier Transform) and the M would be the nearest higher power of 2 to the filter length P+1, i.e. M=2┌log2(P+1)┐.

If P+1>M, the input filter A is padded with zeroes before the FFT is performed. The spectral flatness φ may also be calculated using the quantized LPC coefficients Â. If this is done, the spectral flatness measure may be calculated in the decoder without additional signaling. In this case the system can be described by FIG. 4, provided that A is substituted with Â in equation (20).
It may be desirable to determine the spectral flatness measure on the encoder side to reduce the overall complexity when considering both encoder and decoder. In such an embodiment the encoder includes a spectral flatness estimator configured to determine, for transmission to a decoder, a measure of spectral flatness of the high band signal. An encoder using a spectral flatness estimator 46 based on the LPC coefficients is depicted in FIG. 6. In this case, the flatness measure must be signaled in the bit-stream. The signaling may consist of a binary decision {circumflex over (φ)}ε{0,1} whether the spectral flatness is considered high or low depending on a threshold value φthr.




  
    
      
        {
        
          
            
              
                
                  
                    φ
                    ^
                  
                  =
                  0
                
                ,
              
            
            
              
                φ
                ≥
                
                  φ
                  thr
                
              
            
          
          
            
              
                
                  
                    φ
                    ^
                  
                  =
                  1
                
                ,
              
            
            
              
                φ
                <
                
                  φ
                  thr
                
              
            
          
        
      
    
    
      
        (
        21
        )
      
    
  




The corresponding control parameter f may, for example, be derived using the binary decision {circumflex over (φ)}, i.e. f=1-2{circumflex over (φ)}.
With the above definitions, the control parameter f will be 1 for flatness values above the threshold and −1 for flatness values below the threshold. To limit the influence of the abrupt switching between these values, the control parameter may further be smoothened using e.g. a forgetting factor β in a similar way as for the tilt filtering:

f′m=β·fm+(1−β)·f′m-1  (22)

A decoder 200 corresponding to the encoder in FIG. 6 is shown in FIG. 7. It is similar to the decoder in FIG. 4. However, in FIG. 7 the joint post-filter and excitation controller 44 determines the control parameter f based on the received binary decision {circumflex over (φ)} instead of the linear predictor filter Â representing the envelope. Generally, the control parameter f is adapted to a measure of spectral flatness (φ) of the high band.
It should be noted that other processing stages may be possible before the synthesis filter 1/Â or before or after the post-filter H(z). One such processing stage could be a temporal shaping procedure which aims to reconstruct the temporal structure of the original high band signal. Such temporal shaping may be encoded using a gain-shape vector quantization representing gain correction factors on a subframe level. Part of the temporal shaping will also be inherited from the low band excitation signal which is partly used as a base for the high band excitation signal.
The post-filter and excitation mixing may also affect the energy of the signals. Keeping the energy stable is desirable and there are many available methods for handling this. One possible solution is to measure the energy before and after the modification and restore the energy to the value before excitation mixing and post-filtering. The energy measurement may also be limited to a certain band or to the higher energy regions of the spectrum, allowing energy loss in the valleys of the spectrum. In this example embodiment energy compensation may be used as an integral part of the mixing and post-filter functions.
Frequency Domain BWE
Frequency transform based audio coders are often used for general audio signals such as music or speech with background noises or reverberation. At low bitrates they generally show poor performance. One common prior art solution is to lower the bandwidth to obtain acceptable quality for a narrower band and apply BWE for the higher frequencies. An overview of such a system is shown in FIG. 8.
The input audio is first partitioned into time segments or frames as a preparation step for the frequency transform. Each frame y is transformed to frequency domain to form a frequency domain spectrum Y. This may be done using any suitable transform, such as the Modified Discrete Cosine Transform (MDCT), the Discrete Cosine Transform (DCT) or the Discrete Fourier Transform (DFT). The frequency spectrum is partitioned into shorter row vectors denoted Y(b). These functions are performed by a frequency transformer 50. Each vector now represents the coefficients of a frequency band b out of a total number of bands Nb. From a perceptual perspective is beneficial to partition the spectrum using a non-uniform band structure which follows the frequency resolution of the human auditory system. This generally means that narrow bandwidths are used for low frequencies while larger bandwidths are used for high frequencies.
Next, the norm of each band is calculated in an envelope analyzer 52 to form a sequence of gain values E(b) which form the spectral envelope. These values are then quantized using an envelope encoder 54 to form the quantized envelope Ê(b). The envelope quantization may be done using any quantizing technique, e.g. differential scalar quantization or any vector quantization scheme. The quantized envelope coefficients Ê(b) are used to normalize the band vectors Y(b) in an envelope normalizer 56 to form corresponding normalized shape vectors X(b):




  
    
      
        
          X
          ⁡
          
            (
            b
            )
          
        
        =
        
          
            1
            
              
                E
                ^
              
              ⁡
              
                (
                b
                )
              
            
          
          ⁢
          
            Y
            ⁡
            
              (
              b
              )
            
          
        
      
    
    
      
        (
        23
        )
      
    
  




The sequence of normalized shape vectors X(b) constitutes the fine structure of the spectrum. The perceptual importance of the spectral fine structure varies with the frequency but may also depend on other signal properties such as the spectral envelope signal. Transform coders often employ an auditory model to determine the important parts of the fine structure and assign the available resources to the most important parts. The spectral envelope is often used as input to this auditory model and the output is typically a bit assignment for the each of the bands corresponding to the envelope coefficients. Here, a bit allocation algorithm in a bit allocator 58 uses the quantized envelope Ê(b) in combination with an internal auditory model to assign a number of bits R(b) which in turn are used by a fine structure encoder 60. When the transform coder is operated at low bitrates, some of the bands will be assigned zero bits and the corresponding shape vectors will not be quantized. The indices IE and IX from the quantization of the envelope and the encoded fine structure vectors, respectively, are multiplexed in a bitstream mux (multiplexer) 62 to be stored or transmitted to a decoder.
The decoder demultiplexes the indices from the communication channel or the stored media in a bitstream demux (de-multiplexer) 70 and forwards the indices IX to a fine structure decoder 72 and IE to an envelope decoder 74. The quantized envelope Ê(b) is obtained and fed to the bit allocation algorithm in a bit allocator 76 in the decoder, which generates the bit allocation R(b). Using R(b), the band with the highest non-zero value in the bit allocation is found. This band is denoted bmax.
The fine structure decoder 72 uses the fine structure indices IX and the bit allocation R(b) to produce the quantized fine structure vectors {circumflex over (X)}L (b), which are defined for b=1, 2, . . . , bmax.
In this example embodiment the crossover frequency is adaptive depending on the bit allocation and starts from the band bmax+1, given the constraint that bmax+1≦Nb.
There may be bands b<bmax which have zero bits assigned. In particular for low bitrates it is common that such zero-bit bands appear and due to variations in the spectrum the positions of the zero-bit bands usually vary from frame to frame. Such variations cause modulation effects in the synthesis. Typically the zero-bit bands are handled with spectral filling techniques, where signals are injected in the zero-bit bands. The filling signal may be a pseudo-random noise signal or a modified version of the coded bands. The filling technique is not an essential part of this technology and it is assumed that a suitable spectral filling is part of the fine structure decoder 72. After the spectral filling has been done, the low band fine structure {circumflex over (X)}L(b) is input to a low frequency envelope shaper 78, which restores the synthesized low band spectrum ŶL(b) in accordance with:

ŶL(b)={circumflex over (X)}L(b)·Ê(b),b=1,2, . . . bmax  (24)

The low band fine structure {circumflex over (X)}L (b) is also input to a fine structure modifier or processor 80, which identifies the length of the low band structure from the parameter bmax and creates a high band excitation signal {circumflex over (X)}H(b) defined for bmax+1, bmax+2, . . . , Nb. There are many techniques for creating a high band excitation from the low band excitation. In this example embodiment, the upper half of the low band excitation is folded and duplicated to fill the high band excitation. Assume that {circumflex over (X)}LH represents the upper half of the low band excitation signal and that the function rev(.) reverses the elements of a vector. Then the sequence [rev({circumflex over (X)}LH) {circumflex over (X)}LH rev({circumflex over (X)}LH) ĤLH, . . . ] is repeated for as many times as needed to fill the high band excitation spectrum {circumflex over (X)}H(b), bmax+1, bmax+2, . . . , Nb. The high band excitation signal is then input to a high frequency envelope shaper 82 to form the synthesized high band spectrum ŶH(b) in accordance with:

Ŷ(b)={circumflex over (X)}H(b)·Ê(b),b=bmax+1,bmax+2, . . . ,Nb  (25)

The synthesized low band spectrum ŶL(b) and the synthesized high band spectrum ŶH(b) are combined in a spectrum combiner 84 to form the synthesis spectrum Ŷ(b), or Ŷ with the band index omitted. The synthesis spectrum is input to the inverse frequency transformer 86 to form the output signal ŷ. In this process the necessary windowing and overlap-add operations that are connected with the frequency transform are also conducted.
As was the case of the time domain BWE, the excitation from the low band may have properties that are not suitable to be used as high band excitation. In particular, one may wish to flatten out some of the fine structure in the low band excitation. A decoder of such an example system is shown in FIG. 9. This prior art system assumes an encoder as outlined in FIG. 8. The addition to the described scheme there is a compressor H (at 88) which operates on the high band excitation signal {circumflex over (X)}H(b) to produce the compressed high band excitation signal {tilde over (X)}H(b). One example compressor function is:




  
    
      
        H
        =
        
          
            (
            
              
                max
                (
                
                  
                  
                    
                      X
                      ^
                    
                    H
                  
                  
                
                )
              
              
                
                
                  
                    X
                    ^
                  
                  H
                
                
              
            
            )
          
          η
        
      
    
    
      
        (
        26
        )
      
    
  




which means H is a vector with the same length as {circumflex over (X)}H. Here the band index b has been omitted and the vector represents all elements for the defined bands, i.e.:

{circumflex over (X)}H=[{circumflex over (X)}H(bmax+1)ĤH(bmax+2) . . . {circumflex over (X)}H(Nb)]  (27)

The compression factor η is smaller than 1 and a suitable value may be η=0.5 or in the range ηε[0.01,0.99], where values close to 0 give no effect and values close to 1 give maximum compression. The compressed high band synthesis is obtained by the element-wise multiplication of H and {circumflex over (X)}H. It can be expressed as a matrix multiplication:

{tilde over (X)}H=H diag({circumflex over (X)}H)  (28)

where diag({circumflex over (X)}H) produces a square matrix with {circumflex over (X)}H on the diagonal. The compressed high band excitation {tilde over (X)}H(b) is input to the high frequency envelope shaper 82 to form the high band spectrum ŶH(b) in accordance with:

ŶH(b)={tilde over (X)}H(b)·Ê(b),b=bmax+1,bmax+2, . . . ,Nb  (29)

As illustrated in FIG. 9, the low band spectrum ŶL(b) and the high band spectrum ŶH(b) are combined in the spectrum combiner 84 to form the synthesis spectrum Ŷ which is input to the inverse frequency transformer 86 to form the output signal ŷ.
An example embodiment of a frequency domain BWE based on the proposed technology focuses on an audio encoder and decoder system mainly intended for general audio signals. The new technology resides mainly in the decoder of an encoding and decoding system as outlined in FIG. 8 with an excitation compression system as illustrated in FIG. 9. An example embodiment of such a decoder 200 is illustrated in FIG. 10.
As an addition to the prior art there is provided a combined control of a high band excitation compression which is jointly controlled with a spectral envelope expander 90 as shown in FIG. 10. As in the time domain, a control parameter fε[0,1] is used for steering both the compressor 88 and the expander 90. This is performed by a joint expander and compressor controller 92.
The strength of the high band excitation compressor 88 is adapted using the control parameter f in accordance with:




  
    
      
        H
        =
        
          
            (
            
              
                max
                (
                
                  
                  
                    
                      X
                      ^
                    
                    H
                  
                  
                
                )
              
              
                
                
                  
                    X
                    ^
                  
                  H
                
                
              
            
            )
          
          
            η
            +
            
              Δ
              ⁢
              
                
              
              ⁢
              
                η
                ·
                f
              
            
          
        
      
    
    
      
        (
        30
        )
      
    
  




where Δη gives the maximum compression factor exponent η+Δη when f=1. If η=0.5 then a suitable value for Δη may be Δη=0.3 or in the range Δηε[0.01,1−η]. Note that η+Δη≦1. The compressed high band excitation is obtained by the element-wise multiplication of H and {circumflex over (X)}H, i.e.:

{tilde over (X)}H=H diag({circumflex over (X)}H)  (31)

The expander 90 used on the high band envelope has a similar structure as the high band excitation compressor:




  
    
      
        
          G
          =
          
            
              (
              
                
                  max
                  (
                  
                    
                      E
                      ^
                    
                    ⁡
                    
                      (
                      b
                      )
                    
                  
                  )
                
                
                  
                    E
                    ^
                  
                  ⁡
                  
                    (
                    b
                    )
                  
                
              
              )
            
            
              -
              
                (
                
                  φ
                  +
                  
                    Δ
                    ⁢
                    
                      
                    
                    ⁢
                    
                      φ
                      ·
                      f
                    
                  
                
                )
              
            
          
        
        ,
        
          b
          =
          
            
              b
              max
            
            +
            1
          
        
        ,
        
          
            b
            max
          
          +
          2
        
        ,
        ...
        ⁢
        
          
        
        ,
        
          N
          b
        
      
    
    
      
        (
        32
        )
      
    
  




Here the absolute value |·| may be omitted since the envelope coefficients Ê(b)≧0. For f=0 the expander will have minimum effect with the expansion coefficient φ. A suitable value for φ may be φ=0, since this would give an unaffected envelope for f=0. If a small expansion effect is always desirable, suitable values may for instance be chosen from the range φε[0,0.5]. The maximum expansion is obtained for f=1, which gives the expansion factor exponent −(φ+Δφ). The value for Δφ may be set to Δφ=1 but the suitable value would depend heavily on the band structure and may be chosen from a wide range, e.g. Δφε[0.5,10]. The expanded envelope {tilde over (E)}(b) is obtained by element-wise multiplication of the envelope with the expansion function G, i.e.:

{tilde over (E)}H=G diag(ÊH)  (33)

where ÊH represents elements the high band envelope ÊH=[Ê(bmax+1) Ê(bmax+2) . . . Ê(Nb)]. The expanded envelope is applied to the compressed high band fine structure to form the high band spectrum ŶH(b) in accordance with:

ŶH(b)={tilde over (X)}H(b)·{tilde over (E)}(b),b=bmax+1,bmax+2, . . . ,Nb  (34)

The synthesized low band spectrum {tilde over (Y)}L(b) and the synthesized high band spectrum ŶH(b) are combined in the spectrum combiner 84 to form the synthesis spectrum Ŷ which is input to the inverse frequency transformer 86 to form the output signal ŷ.
The joint control parameter f may be derived from parameters already available in the decoder 200, or it may be based on an analysis done in the encoder and transmitted to the decoder. Here, as for the time domain BWE case, we rely on an estimate on the high band spectral tilt. Such an estimate may be derived from the envelope parameters by measuring the quotient qm of the sums of the envelope coefficients in each half of the high band signal, i.e.:




  
    
      
        
          
            q
            m
          
          =
          
            
              
                ∑
                
                  b
                  =
                  
                    
                      b
                      max
                    
                    +
                    1
                  
                
                
                  b
                  half
                
              
              ⁢
              
                
                  E
                  ^
                
                ⁡
                
                  (
                  b
                  )
                
              
            
            
              
                ∑
                
                  b
                  =
                  
                    
                      b
                      half
                    
                    +
                    1
                  
                
                
                  N
                  b
                
              
              ⁢
              
                
                  E
                  ^
                
                ⁡
                
                  (
                  b
                  )
                
              
            
          
        
        ⁢
        
          

        
        ⁢
        where
      
    
    
      
        (
        35
        )
      
    
  
  
    
      
        
          b
          half
        
        =
        
          
            ⌊
            
              
                (
                
                  
                    N
                    b
                  
                  -
                  
                    b
                    max
                  
                
                )
              
              /
              2
            
            ⌋
          
          +
          
            b
            max
          
          +
          1
        
      
    
    
      
        (
        36
        )
      
    
  




The smoothing of the spectral tilt tm for frame m may be done the same way as in the time domain embodiment, e.g. using:

tm=β·qm+(1−β)tm-1  (37)

The mapping of the spectral tilt to the control parameter f may also be done using the same piece-wise linear function as in the time domain embodiment, i.e.:




  
    
      
        
          f
          ⁡
          
            (
            
              t
              m
            
            )
          
        
        =
        
          {
          
            
              
                
                  0
                  ,
                
              
              
                
                  
                    t
                    m
                  
                  ≥
                  
                    C
                    max
                  
                
              
            
            
              
                
                  
                    1
                    -
                    
                      
                        (
                        
                          
                            t
                            m
                          
                          -
                          
                            C
                            min
                          
                        
                        )
                      
                      /
                      
                        (
                        
                          
                            C
                            max
                          
                          -
                          
                            C
                            min
                          
                        
                        )
                      
                    
                  
                  ,
                
              
              
                
                  
                    C
                    min
                  
                  ≤
                  
                    t
                    m
                  
                  <
                  
                    C
                    max
                  
                
              
            
            
              
                
                  1
                  ,
                
              
              
                
                  
                    t
                    m
                  
                  <
                  
                    C
                    min
                  
                
              
            
          
        
      
    
    
      
        (
        38
        )
      
    
  




However, since the definition of the spectral tilt is different the constants Cmax and Cmin of the mapping function will be different. These will for instance depend on the band structure.
In an alternative to the frequency domain embodiment described above, the joint envelope and excitation control is adapted to the low band error signal which is estimated in the encoder, which is similar to the encoder in the system outlined in FIG. 8, but further has a local decoding and error measurement unit. An example of such a system is shown in FIG. 11, wherein the local decoding and error measurement unit includes a local decoder 96, a low frequency spectrum extractor 98, an adder 100 and a low frequency error encoder 102. In this embodiment a local low band synthesis is obtained by using the quantized envelope Ê(b) and a decoded low band fine structure {circumflex over (X)}L(b) which is extracted from the fine structure encoder. It may also be possible to run the full fine structure decoder to extract {circumflex over (X)}L(b) from the indices IX, but a local synthesis can in general be extracted from the encoder with less computational complexity. A locally synthesized low band spectrum ŶL(b) is generated by shaping the decoded low band structure with the quantized envelope:

ŶL(b)={circumflex over (X)}L(b)·Ê(b),b=1,2, . . . bmax  (39)

The low band spectrum of the input signal YL(b) is extracted from the full spectrum by finding the last quantized band using the bit allocation R(b). A low band error signal is formed as the log ratio of the input signal energy and the Euclidean distance between the synthesized low band spectrum from the input low band spectrum, i.e. a signal-to-noise ratio (SNR) measure DL on the low band synthesis defined as:




  
    
      
        
          D
          L
        
        =
        
          10
          ⁢
          
            
              log
              10
            
            (
            
              
                
                  Y
                  L
                
                ⁢
                
                  Y
                  L
                  T
                
              
              
                
                  (
                  
                    
                      Y
                      L
                    
                    -
                    
                      
                        Y
                        ^
                      
                      L
                    
                  
                  )
                
                ⁢
                
                  
                    (
                    
                      
                        Y
                        L
                      
                      -
                      
                        
                          Y
                          ^
                        
                        L
                      
                    
                    )
                  
                  T
                
              
            
            )
          
        
      
    
    
      
        (
        40
        )
      
    
  




The low band SNR is quantized and the quantization indices IERR are multiplexed together with the envelope indices IE and the fine structure indices IX to be stored or transmitted to a decoder. The low SNR encoding may be done e.g. using a uniform scalar quantizer.
The decoder 200 is similar to the decoder outlined in FIG. 9, but further has a combined control of a high band excitation compression which is jointly controlled with a spectral envelope expander as shown in FIG. 10. As in the time domain embodiments, a control parameter fε[0,1] is used for steering both the compressor and the expander.
Using the control parameter f the strength of the high band excitation compressor is adapted in accordance with:




  
    
      
        H
        =
        
          
            (
            
              
                max
                (
                
                  
                  
                    
                      X
                      ^
                    
                    H
                  
                  
                
                )
              
              
                
                
                  
                    X
                    ^
                  
                  H
                
                
              
            
            )
          
          
            η
            +
            
              Δ
              ⁢
              
                
              
              ⁢
              
                η
                ·
                f
              
            
          
        
      
    
    
      
        (
        41
        )
      
    
  




where Δη gives the maximum compression factor η+Δη when f=1. If η=0.5 then a suitable value for Δη may be Δη=0.3 or in the range Δηε[0.01,1−η]. Note that η+Δη≦1. The compressed high band excitation is obtained by the element-wise multiplication of H and {circumflex over (X)}H in accordance with:

{tilde over (X)}H=H diag({circumflex over (X)}H)  (42)

The expander used on the high band envelope has a similar structure as the high band excitation compressor:




  
    
      
        
          G
          =
          
            
              (
              
                
                  max
                  ⁡
                  
                    (
                    
                      
                        E
                        ^
                      
                      ⁡
                      
                        (
                        b
                        )
                      
                    
                    )
                  
                
                
                  
                    E
                    ^
                  
                  ⁡
                  
                    (
                    b
                    )
                  
                
              
              )
            
            
              -
              
                (
                
                  φ
                  +
                  
                    Δ
                    ⁢
                    
                      
                    
                    ⁢
                    
                      φ
                      ·
                      f
                    
                  
                
                )
              
            
          
        
        ,
        
          

        
        ⁢
        
          b
          =
          
            
              b
              max
            
            +
            1
          
        
        ,
        
          

        
        ⁢
        
          
            b
            max
          
          +
          2
        
        ,
        ...
        ⁢
        
          
        
        ,
        
          N
          b
        
      
    
    
      
        (
        43
        )
      
    
  




Here the absolute value |·| may be omitted since the envelope coefficients Ê(b)≧0. For f=0 the expander will have minimum effect with the expansion coefficient φ. A suitable value for φ may be φ=0, since this would give an unaffected envelope for f=0. If a small expansion effect is always desirable, suitable values may for instance be chosen from the range φε[0,0.5]. The maximum expansion is obtained for f=1, which gives the expansion factor exponent −(φ+Δφ). The value for Δφ may be set to Δφ=1 but the suitable value would depend heavily on the band structure and may be chosen from a wide range, e.g. Δφε[0.5,10]. The expanded envelope {tilde over (E)}(b) is obtained by element-wise multiplication of the envelope with the expansion function G, i.e.

{tilde over (E)}H=G diag(ÊH)  (44)

where ÊH represents elements the high band envelope ÊH=[Ê(bmax+1) Ê(bmax+2) . . . Ê(Nb)]. The expanded envelope is applied to the compressed high band fine structure {tilde over (X)}H(b) to form the high band spectrum ŶH(b) in accordance with:

ŶH(b)={tilde over (X)}H(b)·{tilde over (E)}(b),b=bmax+1,bmax+2, . . . ,Nb  (45)

The synthesized low band spectrum ŶL(b) and the synthesized high band spectrum ŶH(b) are combined in the spectrum combiner to form the synthesis spectrum Ŷ which is input to the inverse frequency transformer to form the output signal ŷ.
In this embodiment the control parameter f is based on the low band SNR from the encoder analysis. First, a reconstructed low band SNR {circumflex over (D)}L is obtained from the low band error index IERR. The reconstructed low band SNR is mapped to a control parameter f using a piece-wise linear function:




  
    
      
        f
        =
        
          {
          
            
              
                
                  0
                  ,
                
              
              
                
                  
                    
                      D
                      ^
                    
                    L
                  
                  <
                  
                    D
                    min
                  
                
              
            
            
              
                
                  
                    
                      (
                      
                        
                          
                            D
                            ^
                          
                          L
                        
                        -
                        
                          D
                          min
                        
                      
                      )
                    
                    /
                    
                      (
                      
                        
                          D
                          max
                        
                        -
                        
                          D
                          min
                        
                      
                      )
                    
                  
                  ,
                
              
              
                
                  
                    D
                    min
                  
                  ≤
                  
                    
                      D
                      ^
                    
                    L
                  
                  ≤
                  
                    D
                    max
                  
                
              
            
            
              
                
                  1
                  ,
                
              
              
                
                  
                    
                      D
                      ^
                    
                    L
                  
                  >
                  
                    D
                    max
                  
                
              
            
          
        
      
    
    
      
        (
        46
        )
      
    
  




where the constants Dmin and Dmax depend on the typical low band distortion values for this system. A suitable value for Dmin may be Dmin=10 or any value in the range Dminε[5,20], while suitable values for Dmax may be Dmax=20 or in the range Dmaxε[10,50]. This relation will give stronger modification for high SNR values, corresponding to low distortion in the low band. It may also be desirable to have the opposite relation, such that strong modification would be used for low SNRs (high distortion values). Such a relation may be obtained by reversing the relation described above, i.e.:





  
    
      
        f
        =
        
          {
          
            
              
                
                  1
                  ,
                
              
              
                
                  
                    
                      D
                      ^
                    
                    L
                  
                  <
                  
                    D
                    min
                  
                
              
            
            
              
                
                  
                    
                      (
                      
                        
                          D
                          max
                        
                        -
                        
                          
                            D
                            ^
                          
                          L
                        
                      
                      )
                    
                    /
                    
                      (
                      
                        
                          D
                          max
                        
                        -
                        
                          D
                          min
                        
                      
                      )
                    
                  
                  ,
                
              
              
                
                  
                    D
                    min
                  
                  ≤
                  
                    
                      D
                      ^
                    
                    L
                  
                  ≤
                  
                    D
                    max
                  
                
              
            
            
              
                
                  0
                  ,
                
              
              
                
                  
                    
                      D
                      ^
                    
                    L
                  
                  >
                  
                    D
                    max
                  
                
              
            
          
        
      
    
    
      
        (
        47
        )
      
    
  




It shall be noted that the compressor and expander function may change the overall energy of the vectors. Preferably the energy should be kept stable and there are many available methods for handling this. One possible solution is to measure the energy before and after the modification and restore the energy to the value before compression or expansion. The energy measurement may also be limited to a certain band or to the higher energy regions of the spectrum, allowing energy loss in the valleys of the spectrum. In this exemplary embodiment it is assumed that some energy compensation is used and that it is an integral part of the compressor and expander functions.
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.
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.
It should also be understood that it may be possible to reuse the general processing capabilities already present in the encoder/decoder. This may, for example, be done by reprogramming of the existing software or by adding new software components.
FIG. 13 illustrates an example embodiment of a control arrangement. This embodiment is based on a processor 210, for example a micro processor, which executes software 220 for jointly controlling the envelope shape and the excitation noisiness with a common control parameter. The software is stored in memory 230. The processor 210 communicates with the memory over a system bus. The input signals are received by an input/output (I/O) controller 240 controlling an I/O bus, to which the processor 210 and the memory 230 are connected. The output signals obtained from the software 220 are outputted from the memory 230 by the I/O controller 240 over the I/O bus. The input and output signals in parenthesis correspond to the time domain BWE and the input and output signals without parenthesis correspond to the frequency domain BWE.
An embodiment based on a measure co of spectral flatness may be structurally configured as in FIG. 13 with a processor, memory, system bus, I/O bys and I/O controller.
The technology described above is intended to be used in an audio encoder/decoder, which can be used in a mobile device (e.g. mobile phone, laptop) or a stationary device, such as a personal computer. Here the term User Equipment (UE) will be used as a generic name for such devices. FIG. 14 illustrates a UE including a decoder provided with a control arrangement. A radio signal received by a radio unit 300 is converted to baseband, channel decoded and forwarded to an audio decoder 200. The audio decoder is provided with a control arrangement 310 operating in the time or frequency domain as described above. The decoded and bandwidth extended audio samples are forwarded to a D/A conversion and amplification unit 320, which forwards the final audio signal to a loudspeaker 330.
FIG. 15 is a flow chart illustrating the proposed technology. Step S1 jointly controls the envelope shape and the excitation noisiness with a common control parameter f.
FIG. 16 is a flow chart illustrating an example embodiment of the proposed technology. In this embodiment step S1 includes a step S1A controlling the envelope shape by using a formant post-filter H(z), for example having the form defined by equation (6). The predetermined constants γ1, γ2 may, for example, be determined in accordance with one of the equations (7)-(10).
FIG. 17 is a flow chart illustrating an embodiment of the proposed technology. In this embodiment step S1 includes a step S1B controlling the excitation noisiness by mixing a high band excitation xH,i of a subframe i with noise ni in accordance with equation (1), where the mixing factors gx(i) and gn(i) are defined by, for example, equation (11) or (12), depending on the choice of predetermined constants γ1, γ2.
FIG. 18 is a flow chart illustrating an embodiment of the proposed technology. In this embodiment step S1 includes a step S1C adapting the control parameter f to a high band spectral tilt tm of frame m, for example in accordance with equation (18). In one embodiment the high band spectral tilt tm may be approximated using the second coefficient a1,m of the decoded linear predictor filter Âm{1, a1,m, a2,m, . . . , aP,m} of frame m, where P is the filter order. It is generally also beneficial to smoothen the high band spectral tilt tm, for example in accordance with one of the equations (13), (15)-(17). An embodiment based on a measure φ of spectral flatness may perform step S1C using the approach described with reference to equations (19)-(22)
FIG. 19 is a flow chart illustrating an embodiment of the proposed technology. This embodiment combines the described steps S1A, S1B, S1C. Typically the control parameter f is determined first. It is then used to perform steps S1A and S1B. Other combinations including S1A+S1C or S1B+S1C are also possible.
It will be understood by those skilled in the art that various modifications and changes may be made to the proposed technology without departure from the scope thereof, which is defined by the appended claims.
ABBREVIATIONS
ASIC Application Specific Integrated Circuit
BWE Bandwidth Extension
CELP Code Excited Linear Predictor
DCT Discrete Cosine Transform
DFT Discrete Fourier Transform
DSP Digital Signal Processor
FFT Fast-Fourier Transform
FPGA Field Programmable Gate Arrays
HF High Frequency
LF Low Frequency
LP Linear Predictor
LPC Linear Predictive Coding
MDCT Modified Discrete Cosine Transform
QMF Quadrature Mirror Filter
SBR Spectral Band Replication
SNR Signal-to-Noise Ratio
TCX Transform coded residual
UE User Equipment
REFERENCES


    [1] “AMR-WB+: A new audio coding standard for 3rd generation mobile audio services”, J. Mäkinen, B. Bessette, S. Bruhn, P. Ojala, R. Salami, A. Taleb, ICASSP 2005
    [2] “Enhanced aacPlus encoder Spectral Band Replication (SBR) part”, 3GPP TS 26.404 V10.0.0 (2011-03), sections 5.6.1-5.6.3, pp. 22-25.

## Claims

1. A method of generating a high band extension of an audio signal from an envelope and an excitation, wherein the method comprising:
jointly controlling envelope shape and excitation noisiness with a common control parameter f, said envelope shape being controlled by using a formant post-filter H(z) of the form:





  
    H
    ⁡
    
      (
      z
      )
    
  
  =
  
    
      
        A
        ^
      
      ⁡
      
        (
        
          z
          /
          
            γ
            1
          
        
        )
      
    
    
      
        A
        ^
      
      ⁡
      
        (
        
          z
          /
          
            γ
            2
          
        
        )
      
    
  



where
Â is a linear predictor filter representing the envelope, and
γ1, γ2 are functions of the control parameter f.

2. The method of claim 1, wherein:




   
  
    {
    
      
        
          
            
              γ
              1
            
            =
            
              
                γ
                0
              
              +
              
                
                  f
                  ·
                  Δ
                
                ⁢
                
                  
                
                ⁢
                γ
              
            
          
        
      
      
        
          
            
              γ
              2
            
            =
            
              
                γ
                0
              
              -
              
                
                  f
                  ·
                  Δ
                
                ⁢
                
                  
                
                ⁢
                γ
              
            
          
        
      
    
  



where γ0, Δγ are predetermined constants.

3. The method of claim 1, further comprising:
controlling the excitation noisiness by mixing a high band excitation xH,i of a subframe i with noise ni in accordance with:


{tilde over (x)}i=gx(i)xH,i+gn(i)ni 


where the mixing factors gx(i) and gn(i) are defined by:





   
  
    {
    
      
        
          
            
              
                g
                x
              
              ⁡
              
                (
                i
                )
              
            
            =
            
              
                
                  v
                  ⁡
                  
                    (
                    i
                    )
                  
                
                ⁢
                
                  (
                  
                    1
                    -
                    
                      α
                      ⁢
                      
                        
                      
                      ⁢
                      f
                    
                  
                  )
                
              
            
          
        
      
      
        
          
            
              
                g
                n
              
              ⁡
              
                (
                i
                )
              
            
            =
            
              
                
                  
                    E
                    1
                  
                  ⁡
                  
                    (
                    
                      1
                      -
                      
                        
                          v
                          ⁡
                          
                            (
                            i
                            )
                          
                        
                        ⁢
                        
                          (
                          
                            1
                            -
                            
                              α
                              ⁢
                              
                                
                              
                              ⁢
                              f
                            
                          
                          )
                        
                      
                    
                    )
                  
                
                /
                
                  E
                  2
                
              
            
          
        
      
    
  



where
ν(i) is a voicing parameter partially controlling the excitation noisiness,
α is a predetermined tuning constant,
E1 is a frame energy of the high band excitations xH,i for all subframes i, and
E2 is a frame energy of the noise ni for all subframes i.

4. The method of claim 1, wherein:




  {
  
    
      
        
          
            
              γ
              1
            
            =
            
              
                γ
                0
              
              +
              
                
                  f
                  ·
                  Δ
                
                ⁢
                
                  
                
                ⁢
                
                  γ
                  sharp
                
              
            
          
        
      
      
        
          
            
              γ
              2
            
            =
            
              
                γ
                0
              
              -
              
                
                  f
                  ·
                  Δ
                
                ⁢
                
                  
                
                ⁢
                
                  γ
                  sharp
                
              
            
          
        
      
    
    ,
    
      f
      ≥
      
        0
        ⁢
        
          

        
        ⁢
        
          {
          
            
              
                
                  
                    
                      γ
                      1
                    
                    =
                    
                      
                        γ
                        0
                      
                      +
                      
                        
                          f
                          ·
                          Δ
                        
                        ⁢
                        
                          
                        
                        ⁢
                        
                          γ
                          flat
                        
                      
                    
                  
                
              
              
                
                  
                    
                      γ
                      2
                    
                    =
                    
                      
                        γ
                        0
                      
                      -
                      
                        
                          f
                          ·
                          Δ
                        
                        ⁢
                        
                          
                        
                        ⁢
                        
                          γ
                          flat
                        
                      
                    
                  
                
              
            
            ,
            
              f
              <
              0
            
          
        
      
    
  



where γ0, Δγflat and Δγsharp are predetermined constants.

5. The method of claim 4, further comprising:
controlling the excitation noisiness by mixing a high band excitation xH,i of a subframe i with noise ni in accordance with:


{tilde over (x)}i=gx(i)xH,i+gn(i)ni 


where the mixing factors gx(i) and gn(i) are defined by:





   
  
    {
    
      
        
          
            
              
                g
                x
              
              ⁡
              
                (
                i
                )
              
            
            =
            
              
                
                  v
                  ⁡
                  
                    (
                    i
                    )
                  
                
                ⁢
                
                  (
                  
                    1
                    -
                    
                      max
                      ⁡
                      
                        (
                        
                          0
                          ,
                          
                            α
                            ⁢
                            
                              
                            
                            ⁢
                            f
                          
                        
                        )
                      
                    
                  
                  )
                
              
            
          
        
      
      
        
          
            
              
                g
                n
              
              ⁡
              
                (
                i
                )
              
            
            =
            
              
                
                  
                    E
                    1
                  
                  ⁡
                  
                    (
                    
                      1
                      -
                      
                        
                          v
                          ⁡
                          
                            (
                            i
                            )
                          
                        
                        ⁢
                        
                          (
                          
                            1
                            -
                            
                              max
                              ⁡
                              
                                (
                                
                                  0
                                  ,
                                  
                                    α
                                    ⁢
                                    
                                      
                                    
                                    ⁢
                                    f
                                  
                                
                                )
                              
                            
                          
                          )
                        
                      
                    
                    )
                  
                
                /
                
                  E
                  2
                
              
            
          
        
      
    
  



where
ν(i) is a voicing parameter partially controlling the excitation noisiness,
α is a predetermined tuning constant,
E1 is a frame energy of the high band excitations xH,i for all subframes i, and
E2 is a frame energy of the noise ni for all subframes i.

6. The method of claim 1, further comprising:
adapting the control parameter f to a high band spectral tilt tm of frame m.

7. The method of claim 6, wherein the control parameter f depends on the high band spectral tilt tm in accordance with:




  
    f
    ⁡
    
      (
      
        t
        m
      
      )
    
  
  =
  
    {
    
      
        
          
            0
            ,
          
        
        
          
            
              t
              m
            
            ≥
            
              C
              max
            
          
        
      
      
        
          
            
              1
              -
              
                
                  (
                  
                    
                      t
                      m
                    
                    -
                    
                      C
                      min
                    
                  
                  )
                
                /
                
                  (
                  
                    
                      C
                      max
                    
                    -
                    
                      C
                      min
                    
                  
                  )
                
              
            
            ,
          
        
        
          
            
              C
              min
            
            ≤
            
              t
              m
            
            <
            
              C
              max
            
          
        
      
      
        
          
            1
            ,
          
        
        
          
            
              t
              m
            
            <
            
              C
              min
            
          
        
      
    
  



where Cmin and Cmax are predetermined constants.

8. The method of claim 6, wherein the high band spectral tilt tm is approximated using the second coefficient a1,m of the decoded linear predictor filter Âm={1, a1,m, a2,m, . . . , aP,m} of frame m, where P is the filter order.

9. The method of claim 8, wherein:


tm=β·max(0,a1,m)+(1−β)tm-1 

where
tm is the spectral tilt value of frame m,
tm-1 is the spectral tilt value of the previous frame m−1, and
β is a constant in the range β=[0,0.5].

10. The method of claim 1, further comprising:
adapting the control parameter f to a measure of spectral flatness (φ) of the high band.

11. An audio decoder configured to generate a high band extension of an audio signal from an envelope and an excitation, comprising:
a control arrangement configured to jointly control envelope shape and excitation noisiness with a common control parameter f, said control arrangement comprising a joint post-filter and excitation controller configured to control the envelope shape by using a formant post-filter H(z) of the form:





  
    H
    ⁡
    
      (
      z
      )
    
  
  =
  
    
      
        A
        ^
      
      ⁡
      
        (
        
          z
          /
          
            γ
            1
          
        
        )
      
    
    
      
        A
        ^
      
      ⁡
      
        (
        
          z
          /
          
            γ
            2
          
        
        )
      
    
  



where
Â is a linear predictor filter representing the envelope, and
γ1, γ2 are functions of the control parameter f.

12. The decoder of claim 11, wherein:




   
  
    {
    
      
        
          
            
              γ
              1
            
            =
            
              
                γ
                0
              
              +
              
                
                  f
                  ·
                  Δ
                
                ⁢
                
                  
                
                ⁢
                γ
              
            
          
        
      
      
        
          
            
              γ
              2
            
            =
            
              
                γ
                0
              
              -
              
                
                  f
                  ·
                  Δ
                
                ⁢
                
                  
                
                ⁢
                γ
              
            
          
        
      
    
  



where γ0, Δγ are predetermined constants.

13. The decoder of claim 11, further comprising:
a mix controller configured to control the excitation noisiness by mixing a high band excitation xH,i of a subframe i with noise ni in accordance with:


{tilde over (x)}i=gx(i)xH,i+gn(i)ni 


where the mixing factors gx(i) and gn(i) are defined by:





   
  
    {
    
      
        
          
            
              
                g
                x
              
              ⁡
              
                (
                i
                )
              
            
            =
            
              
                
                  v
                  ⁡
                  
                    (
                    i
                    )
                  
                
                ⁢
                
                  (
                  
                    1
                    -
                    
                      α
                      ⁢
                      
                        
                      
                      ⁢
                      f
                    
                  
                  )
                
              
            
          
        
      
      
        
          
            
              
                g
                n
              
              ⁡
              
                (
                i
                )
              
            
            =
            
              
                
                  
                    E
                    1
                  
                  ⁡
                  
                    (
                    
                      1
                      -
                      
                        
                          v
                          ⁡
                          
                            (
                            i
                            )
                          
                        
                        ⁢
                        
                          (
                          
                            1
                            -
                            
                              α
                              ⁢
                              
                                
                              
                              ⁢
                              f
                            
                          
                          )
                        
                      
                    
                    )
                  
                
                /
                
                  E
                  2
                
              
            
          
        
      
    
  



where
ν(i) is a voicing parameter partially controlling the excitation noisiness,
α is a predetermined tuning constant,
E1 is a frame energy of the high band excitations xH,i for all subframes i, and
E2 is a frame energy of the noise ni for all subframes i.

14. The decoder of claim 11, wherein:




  {
  
    
      
        
          
            
              γ
              1
            
            =
            
              
                γ
                0
              
              +
              
                
                  f
                  ·
                  Δ
                
                ⁢
                
                  
                
                ⁢
                
                  γ
                  sharp
                
              
            
          
        
      
      
        
          
            
              γ
              2
            
            =
            
              
                γ
                0
              
              -
              
                
                  f
                  ·
                  Δ
                
                ⁢
                
                  
                
                ⁢
                
                  γ
                  sharp
                
              
            
          
        
      
    
    ,
    
      f
      ≥
      
        0
        ⁢
        
          

        
        ⁢
        
          {
          
            
              
                
                  
                    
                      γ
                      1
                    
                    =
                    
                      
                        γ
                        0
                      
                      +
                      
                        
                          f
                          ·
                          Δ
                        
                        ⁢
                        
                          
                        
                        ⁢
                        
                          γ
                          flat
                        
                      
                    
                  
                
              
              
                
                  
                    
                      γ
                      2
                    
                    =
                    
                      
                        γ
                        0
                      
                      -
                      
                        
                          f
                          ·
                          Δ
                        
                        ⁢
                        
                          
                        
                        ⁢
                        
                          γ
                          flat
                        
                      
                    
                  
                
              
            
            ,
            
              f
              <
              0
            
          
        
      
    
  



where γ0, Δγflat and Δγsharp are predetermined constants.

15. The decoder of claim 14, comprising a mix controller configured to control the excitation noisiness by mixing a high band excitation xH,i of a subframe i with noise ni in accordance with:


{tilde over (x)}i=gx(i)xH,i+gn(i)ni 

where the mixing factors gx(i) and gn(i) are defined by:





   
  
    {
    
      
        
          
            
              
                g
                x
              
              ⁡
              
                (
                i
                )
              
            
            =
            
              
                
                  v
                  ⁡
                  
                    (
                    i
                    )
                  
                
                ⁢
                
                  (
                  
                    1
                    -
                    
                      max
                      ⁡
                      
                        (
                        
                          0
                          ,
                          
                            α
                            ⁢
                            
                              
                            
                            ⁢
                            f
                          
                        
                        )
                      
                    
                  
                  )
                
              
            
          
        
      
      
        
          
            
              
                g
                n
              
              ⁡
              
                (
                i
                )
              
            
            =
            
              
                
                  
                    E
                    1
                  
                  ⁡
                  
                    (
                    
                      1
                      -
                      
                        
                          v
                          ⁡
                          
                            (
                            i
                            )
                          
                        
                        ⁢
                        
                          (
                          
                            1
                            -
                            
                              max
                              ⁡
                              
                                (
                                
                                  0
                                  ,
                                  
                                    α
                                    ⁢
                                    
                                      
                                    
                                    ⁢
                                    f
                                  
                                
                                )
                              
                            
                          
                          )
                        
                      
                    
                    )
                  
                
                /
                
                  E
                  2
                
              
            
          
        
      
    
  



where
ν(i) is a voicing parameter partially controlling the excitation noisiness,
α is a predetermined tuning constant,
E1 is a frame energy of the high band excitations xH,i for all subframes i, and
E2 is a frame energy of the noise ni for all subframes i.

16. The decoder of claim 11, wherein the joint post-filter and excitation controller is configured to adapt the control parameter f to a high band spectral tilt tm of frame m.

17. The decoder of claim 16, wherein the control parameter f depends on the high band spectral tilt tm in accordance with:




  
    f
    ⁡
    
      (
      
        t
        m
      
      )
    
  
  =
  
    {
    
      
        
          
            0
            ,
          
        
        
          
            
              t
              m
            
            ≥
            
              C
              max
            
          
        
      
      
        
          
            
              1
              -
              
                
                  (
                  
                    
                      t
                      m
                    
                    -
                    
                      C
                      min
                    
                  
                  )
                
                /
                
                  (
                  
                    
                      C
                      max
                    
                    -
                    
                      C
                      min
                    
                  
                  )
                
              
            
            ,
          
        
        
          
            
              C
              min
            
            ≤
            
              t
              m
            
            <
            
              C
              max
            
          
        
      
      
        
          
            1
            ,
          
        
        
          
            
              t
              m
            
            <
            
              C
              min
            
          
        
      
    
  



where Cmin and Cmax are predetermined constants.

18. The decoder of claim 16, wherein the joint post-filter and excitation controller is configured to approximate the high band spectral tilt tm by using the second coefficient a1,m of the decoded linear predictor filter Âm={1, a1,m, a2,m, . . . , aP,m} of frame m, where P is the filter order.

19. The decoder of claim 18, wherein:


tm=β·max(0,a1,m)+(1−β)tm-1 

where:
tm is the spectral tilt value of frame m,
tm-1 is the spectral tilt value of the previous frame m−1, and
β is a constant in the range β=[0,0.5].

20. The decoder of claim 11, wherein the joint post-filter and excitation controller is configured to adapt the control parameter f to a measure of spectral flatness (φ) of the high band.

21. A user equipment-comprising the audio decoder in accordance with claim 11.