Patent Description:
Low-bit-rate digital speech coders based on the code-excited linear prediction (CELP) coding principle generally suffer from signal sparseness artifacts when the bit-rate falls below about <NUM> to <NUM> bit per sample, leading to a somewhat artificial, metallic sound. Especially when the input speech has environmental noise in the background, the low-rate artifacts are clearly audible: the background noise will be attenuated during active speech sections. The present invention describes a noise insertion scheme for (A)CELP coders such as AMR-WB [<NUM>] and G. <NUM> [<NUM>, <NUM>] which, analogous to the noise filling techniques used in transform based coders such as xHE-AAC [<NUM>, <NUM>], adds the output of a random noise generator to the decoded speech signal to reconstruct the background noise.

The International publication <CIT> shows an encoding concept which is linear prediction based and uses spectral domain noise shaping. A spectral decomposition of an audio input signal into a spectrogram comprising a sequence of spectra is used for both linear prediction coefficient computation as well as the input for frequency-domain shaping based on the linear prediction coefficients. According to the cited document an audio encoder comprises a linear prediction analyzer for analyzing an input audio signal so as to derive linear prediction coefficients therefrom. A frequency-domain shaper of an audio encoder is configured to spectrally shape a current spectrum of the sequence of spectra of the spectrogram based on the linear prediction coefficients provided by linear prediction analyzer. A quantized and spectrally shaped spectrum is inserted into a data stream along with information on the linear prediction coefficients used in spectral shaping so that, at the decoding side, the de-shaping and de-quantization may be performed. A temporal noise shaping module can also be present to perform a temporal noise shaping.

<CIT> describes a method and a system for estimating artificial high band signal in a speech codec using voice activity information. Said document describes a method and system for encoding and decoding an input signal, wherein the input signal is divided into a higher frequency band and a lower frequency band in the encoding and decoding processes. The decoding of the higher frequency band is carried out by using an artificial signal along with speech related parameters obtained from the lower frequency band. In particular, the artificial signal is scaled before it is transformed into an artificial wideband signal containing colored noise in both the lower and the higher frequency band. Additionally, voice activity information is used to define speech periods and non-speech periods of the input signal. Based on the voice activity information, different weighting factors are used to scale the artificial signal in speech periods and non-speech periods.

<CIT> describes a scheme for injecting noise at uncoded elements of a spectrum which is controlled according to a measure of a distribution of energy of the original spectrum among the locations of the uncoded elements.

<CIT> describes an apparatus and a method for generating bandwidth extension output data. The apparatus generates bandwidth extension output data for an audio signal and has a noise floor measure, a signal energy characterizer, and a processor. The audio signal has components in a first frequency band and components in a second frequency band. The bandwidth extension output data are adapted to control a synthesis of the components of the second frequency band. The noise floor measurer measures noise floor data of the second frequency band for a time portion of the audio signal. The signal energy characterizer derives energy distribution data, the energy distribution data characterizing an energy distribution in a spectrum of the time portion of the audio signal. The processor combines the noise floor data and the energy distribution data to obtain the bandwidth extension output data.

In view of prior art there remains a demand for an improved audio decoder, an improved method, an improved computer program for performing such a method and an improved audio signal or a storage medium having stored such an audio signal, the audio signal having been treated with such a method. More specifically, it is desirable to find solutions improving the sound quality of the audio information transferred in the encoded bitstream.

The reference signs in the claims and in the detailed description of embodiments of the invention were added to merely improve readability and are in no way meant to be limiting.

Embodiments of the present invention are described in the following with respect to the figures.

The invention is described in detail with regards to the <FIG>. The invention is in no way meant to be limited to the shown and described embodiments.

<FIG> shows a first embodiment of an audio decoder according to the present invention. The audio decoder is adapted to provide a decoded audio information on the basis of an encoded audio information. The audio decoder is configured to use a coder which may be based on AMR-WB, G. <NUM> and LD-USAC (EVS) in order to decode the encoded audio information. The encoded audio information comprises linear prediction coefficients (LPC), which may be individually designated as coefficients ak The audio decoder comprises a tilt adjuster configured to adjust a tilt of a noise using linear prediction coefficients of a current frame to obtain a tilt information and a noise inserter configured to add the noise to the current frame in dependence on the tilt information obtained by the tilt calculator. The noise inserter is configured to add the noise to the current frame under the condition that the bitrate of the encoded audio information is smaller than <NUM> bit per sample. Furthermore, the noise inserter may be configured to add the noise to the current frame under the condition that the current frame is a speech frame. Thus, noise may be added to the current frame in order to improve the overall sound quality of the decoded audio information which may be impaired due to coding artifacts, especially with regards to background noise of speech information. When the tilt of the noise is adjusted in view of the tilt of the current audio frame, the overall sound quality may be improved without depending on side information in the bitstream. Thus, the amount of data to be transferred with the bit-stream may be reduced.

<FIG> shows a first method for performing audio decoding according to the present invention which can be performed by an audio decoder according to <FIG>. Technical details of the audio decoder depicted in <FIG> are described along with the method features. The audio decoder is adapted to read the bitstream of the encoded audio information. The audio decoder comprises a frame type determinator for determining a frame type of the current frame, the frame type determinator being configured to activate the tilt adjuster to adjust the tilt of the noise when the frame type of the current frame is detected to be of a speech type. Thus, the audio decoder determines the frame type of the current audio frame by applying the frame type determinator. If the current frame is an ACELP frame, the frame type determinator activates the tilt adjuster. The tilt adjuster is configured to use a result of a first-order analysis of the linear prediction coefficients of the current frame to obtain the tilt information. More specifically, the tilt adjuster calculates a gain g using the formula g = Σ [ak·ak+<NUM>] / Σ [ak·ak] as a first-order analysis, wherein ak are LPC coefficients of the current frame. <FIG> shows a diagram illustrating a tilt derived from LPC coefficients. <FIG> shows two frames of the word "see". For the letter "s", which has a high amount of high frequencies, the tilt goes up. For the letters "ee", which have a high amount of low frequencies, the tilt goes down. The spectral tilt shown in <FIG> is the transfer function of the direct form filter x(n) - g · x(n-<NUM>), g being defined as given above. Thus, the tilt adjuster makes use of the LPC coefficients provided in the bitstream and used to decode the encoded audio information. Side information may be omitted accordingly which may reduce the amount of data to be transferred with the bitstream. Furthermore, the tilt adjuster is configured to obtain the tilt information using a calculation of a transfer function of the direct form filter x(n) - g · x(n-<NUM>). Accordingly, the tilt adjuster calculates the tilt of the audio information in the current frame by calculating the transfer function of the direct form filter x(n) - g · x(n-<NUM>) using the previously calculated gain g. After the tilt information is obtained, the tilt adjuster adjusts the tilt of the noise to be added to the current frame in dependence on the tilt information of the current frame. After that, the adjusted noise is added to the current frame. Furthermore, which is not shown in <FIG>, the audio decoder comprises a de-emphasis filter to de-emphasize the current frame, the audio decoder being adapted to apply the de-emphasis filter on the current frame after the noise inserter added the noise to the current frame. After de-emphasizing the frame, which also serves as a low-complexity, steep IIR high-pass filtering of the added noise, the audio decoder provides the decoded audio information. Thus, the method according to <FIG> allows to enhance the sound quality of an audio information by adjusting the tilt of a noise to be added to a current frame in order to improve the quality of a background noise.

<FIG> shows a second embodiment of an audio decoder according to the present invention. The audio decoder is again adapted to provide a decoded audio information on the basis of an encoded audio information. The audio decoder again is configured to use a coder which may be based on AMR-WB, G. <NUM> and LD-USAC (EVS) in order to decode the encoded audio information. The encoded audio information again comprises linear prediction coefficients (LPC), which may be individually designated as coefficients ak. The audio decoder according to the second embodiment comprises a noise level estimator configured to estimate a noise level for a current frame using a linear prediction coefficient of at least one previous frame to obtain a noise level information and a noise inserter configured to add a noise to the current frame in dependence on the noise level information provided by the noise level estimator. The noise inserter is configured to add the noise to the current frame under the condition that the bitrate of the encoded audio information is smaller than <NUM> bit per sample. Furthermore, the noise inserter is configured to add the noise to the current frame under the condition that the current frame is a speech frame. Thus, again, noise may be added to the current frame in order to improve the overall sound quality of the decoded audio information which may be impaired due to coding artifacts, especially with regards to background noise of speech information. When the noise level of the noise is adjusted in view of the noise level of at least one previous audio frame, the overall sound quality may be improved without depending on side information in the bitstream. Thus, the amount of data to be transferred with the bit-stream may be reduced.

<FIG> shows a second method for performing audio decoding according to the present invention which can be performed by an audio decoder according to <FIG>. Technical details of the audio decoder depicted in <FIG> are described along with the method features. According to <FIG>, the audio decoder is configured to read the bitstream in order to determine the frame type of the current frame. Furthermore, the audio decoder comprises a frame type determinator for determining a frame type of the current frame, the frame type determinator being configured to identify whether the frame type of the current frame is speech or general audio, so that the noise level estimation can be performed depending on the frame type of the current frame. In general, the audio decoder is adapted to compute a first information representing a spectrally unshaped excitation of the current frame and to compute a second information regarding spectral scaling of the current frame to compute a quotient of the first information and the second information to obtain the noise level information. For example, if the frame type is ACELP, which is a speech frame type, the audio decoder decodes an excitation signal of the current frame and computes its root mean square erms for the current frame f from the time domain representation of the excitation signal. This means, that the audio decoder is adapted to decode an excitation signal of the current frame and to compute its root mean square erms from the time domain representation of the current frame as the first information to obtain the noise level information under the condition that the current frame is of a speech type. In another case, if the frame type is MDCT or DTX, which is a general audio frame type, the audio decoder decodes an excitation signal of the current frame and computes its root mean square erms for the current frame f from the time domain representation equivalent of the excitation signal. This means, that the audio decoder is adapted to decode an unshaped MDCT-excitation of the current frame and to compute its root mean square erms from the spectral domain representation of the current frame as the first information to obtain the noise level information under the condition that the current frame is of a general audio type. How this is done in detail is described in <CIT>. Furthermore, <FIG> shows a diagram illustrating how an LPC filter equivalent is determinated from a MDCT power-spectrum. While the depicted scale is a Bark scale, the LPC coefficient equivalents may also be obtained from a linear scale. Especially when they are obtained from a linear scale, the calculated LPC coefficient equivalents are very similar to those calculated from the time domain representation of the same frame, for example when coded in ACELP.

In addition, the audio decoder according to <FIG>, as illustrated by the method chart of <FIG>, is adapted to compute a peak level p of a transfer function of an LPC filter of the current frame as a second information, thus using a linear prediction coefficient to obtain the noise level information under the condition that the current frame is of a speech type.

That means, the audio decoder calculates the peak level p of the transfer function of the LPC analysis filter of the current frame f according to the formula p = Σ|ak|, wherein ak is a linear prediction coefficient with k = <NUM>. If the frame is a general audio frame, the LPC coefficient equivalents are obtained from the spectral domain representation of the current frame, as shown in <FIG> and described in <CIT> and above. As seen in <FIG>. , after calculating the peak level p, a spectral minimum mf of the current frame f is calculated by dividing erms by p. Thus, The audio decoder is adapted to compute a first information representing a spectrally unshaped excitation of the current frame, in this embodiment erms, and a second information regarding spectral scaling of the current frame, in this embodiment peak level p, to compute a quotient of the first information and the second information to obtain the noise level information. The spectral minimum of the current frame is then enqueued in the noise level estimator, the audio decoder being adapted to enqueue the quotient obtained from the current audio frame in the noise level estimator regardless of the frame type and the noise level estimator comprising a noise level storage for two or more quotients, in this case spectral minima me, obtained from different audio frames. More specifically, the noise level storage can store quotients from <NUM> frames in order to estimate the noise level. Furthermore, the noise level estimator is adapted to estimate the noise level on the basis of statistical analysis of two or more quotients of different audio frames, thus a collection of spectral minima mf. The steps for computing the quotient mf are depicted in detail in <FIG>, illustrating the necessary calculation steps. In the second embodiment, the noise level estimator operates based on minimum statistics as known from [<NUM>]. The noise is scaled according to the estimated noise level of the current frame based on minimum statistics and after that added to the current frame if the current frame is a speech frame. Finally, the current frame is de-emphasized (not shown in <FIG>). Thus, this second embodiment also allows to omit side information for noise filling, allowing to reduce the amount of data to be transferred with the bitstream. Accordingly, the sound quality of the audio information may be improved by enhancing the background noise during the decoding stage without increasing the data rate. Note that since no time/frequency transforms are necessary and since the noise level estimator is only run once per frame (not on multiple sub-bands), the described noise filling exhibits very low complexity while being able to improve low-bit-rate coding of noisy speech.

<FIG> shows a third embodiment of an audio decoder according to the present invention. The audio decoder is adapted to provide a decoded audio information on the basis of an encoded audio information. The audio decoder is configured to use a coder based on LD-USAC in order to decode the encoded audio information. The encoded audio information comprises linear prediction coefficients (LPC), which may be individually designated as coefficients ak. The audio decoder comprises a tilt adjuster configured to adjust a tilt of a noise using linear prediction coefficients of a current frame to obtain a tilt information and a noise level estimator configured to estimate a noise level for a current frame using a linear prediction coefficient of at least one previous frame to obtain a noise level information. Furthermore, the audio decoder comprises a noise inserter configured to add the noise to the current frame in dependence on the tilt information obtained by the tilt calculator and in dependence on the noise level information provided by the noise level estimator. Thus, noise may be added to the current frame in order to improve the overall sound quality of the decoded audio information which may be impaired due to coding artifacts, especially with regards to background noise of speech information, in dependence on the tilt information obtained by the tilt calculator and in dependence on the noise level information provided by the noise level estimator. In this embodiment, a random noise generator (not shown) which is comprised by the audio decoder generates a spectrally white noise, which is then both scaled according to the noise level information and shaped using the g-derived tilt, as described earlier.

<FIG> shows a third method for performing audio decoding according to the present invention which can be performed by an audio decoder according to <FIG>. The bitstream is read and a frame type determinator, called frame type detector, determines whether the current frame is a speech frame (ACELP) or general audio frame (TCXIMDCT). Regardless of the frame type, the frame header is decoded and the spectrally flattened, unshaped excitation signal in perceptual domain is decoded. In case of speech frame, this excitation signal is a time-domain excitation, as described earlier. If the frame is a general audio frame, the MDCT-domain residual is decoded (spectral domain). Time domain representation and spectral domain representation are respectively used to estimate the noise level as illustrated in <FIG> and described earlier, using LPC coefficients also used to decode the bitstream instead of using any side information or additional LPC coefficients. The noise information of both types of frames is enqueued to adjust the tilt and noise level of the noise to be added to the current frame under the condition that the current frame is a speech frame. After adding the noise to the ACELP speech frame (Apply ACELP noise filling) the ACELP speech frame is de-emphasized by a IIR and the speech frames and the general audio frames are combined in a time signal, representing the decoded audio information. The steep high-pass effect of the de-emphasis on the spectrum of the added noise is depicted by the small inserted Figures I, II, and III in <FIG>.

In other words, according to <FIG>, the ACELP noise filling system described above was implemented in the LD-USAC (EVS) decoder, a low delay variant of xHE-AAC [<NUM>] which can switch between ACELP (speech) and MDCT (music / noise) coding on a per-frame basis. The insertion process according to <FIG> is summarized as follows:.

The noise level estimation in step <NUM> is performed by computing the root mean square erms of the excitation signal for the current frame (or in case of an MDCT-domain excitation the time domain equivalent, meaning the erms which would be computed for that frame if it were an ACELP frame) and by then dividing it by the peak level p of the transfer function of the LPC analysis filter. This yields the level mf of the spectral minimum of frame f as in <FIG>. mf is finally enqueued in the noise level estimator operating based on e.g. minimum statistics [<NUM>]. Note that since no time/frequency transforms are necessary and since the level estimator is only run once · per frame (not on multiple sub-bands), the described CELP noise filling system exhibits very low complexity while being able to improve low-bit-rate coding of noisy speech.

Although some aspects have been described in the context of an audio decoder, it is clear that these aspects also represent a description of the corresponding method, where a block or device corresponds to a method step or a feature of a method step. Analogously, aspects described in the context of a method step also represent a description of a corresponding block or item or feature of a corresponding audio decoder.

The inventive encoded audio signal can be stored on a digital storage medium or can be transmitted on a transmission medium such as a wireless transmission medium or a wired transmission medium such as the Internet.

Claim 1:
An audio decoder for providing a decoded audio information on the basis of an encoded audio information comprising linear prediction coefficients (LPC),
the audio decoder comprising:
- a tilt adjuster configured to adjust a tilt of a noise in dependence on a tilt information, wherein the tilt adjuster is configured to use linear prediction coefficients of a current frame to obtain the tilt information; and
- a decoder core configured to decode an audio information of the current frame using the linear prediction coefficients of the current frame to obtain a decoded core coder output signal; and
- a noise inserter configured to add the adjusted noise to the current frame,
characterized in that
the tilt adjuster is configured to obtain the tilt information using a calculation of a gain g of the linear prediction coefficients of the current frame, wherein <MAT>
wherein ak are LPC coefficients of the current frame, located at LPC index k.