Apparatus and method for error concealment in low-delay unified speech and audio coding

Information

  • Patent Grant
  • 9384739
  • Patent Number
    9,384,739
  • Date Filed
    Wednesday, August 14, 2013
    11 years ago
  • Date Issued
    Tuesday, July 5, 2016
    8 years ago
Abstract
An apparatus for generating spectral replacement values for an audio signal has a buffer unit for storing previous spectral values relating to a previously received error-free audio frame. Moreover, the apparatus includes a concealment frame generator for generating the spectral replacement values, when a current audio frame has not been received or is erroneous. The previously received error-free audio frame has filter information, the filter information having associated a filter stability value indicating a stability of a prediction filter. The concealment frame generator is adapted to generate the spectral replacement values based on the previous spectral values and based on the filter stability value.
Description
BACKGROUND OF THE INVENTION

Audio signal processing has advanced in many ways and becomes increasingly important. In audio signal processing, Low-Delay Unified Speech and Audio Coding aims to provide coding techniques suitable for speech, audio and any mixture of speech and audio. Moreover, LD-USAC aims to assure a high quality for the encoded audio signals. Compared to USAC (Unified Speech and Audio Coding), the delay in LD-USAC is reduced.


When encoding audio data, a LD-USAC encoder examines the audio signal to be encoded. The LD-USAC encoder encodes the audio signal by encoding linear predictive filter coefficients of a prediction filter. Depending on the audio data that is to be encoded by a particular audio frame, the LD-USAC encoder decides, whether ACELP (Advanced Code Excited Linear Prediction) is used for encoding, or whether the audio data is to be encoded using TCX (Transform Coded Excitation). While ACELP uses LP filter coefficients (linear predictive filter coefficients), adaptive codebook indices and algebraic codebook indices and adaptive and algebraic codebook gains, TCX uses LP filter coefficients, energy parameters and quantization indices relating to a Modified Discrete Cosine Transform (MDCT).


On the decoder side, the LD-USAC decoder determines whether ACELP or TCX has been employed to encode the audio data of a current audio signal frame. The decoder then decodes the audio signal frame accordingly.


From time to time, data transmission fails. For example, an audio signal frame transmitted by a sender is arriving with errors at a receiver or does not arrive at all or the frame is late.


In these cases, error concealment may become useful for ensuring that the missing or erroneous audio data can be replaced. This is particularly true for applications having real-time requirements, as requesting a retransmission of the erroneous or the missing frame might infringe low-delay requirements.


However, existing concealment techniques used for other audio applications often create artificial sound caused by synthetic artefacts.


SUMMARY

According to an embodiment, an apparatus for generating spectral replacement values for an audio signal may have: a buffer unit for storing previous spectral values relating to a previously received error-free audio frame, and a concealment frame generator for generating the spectral replacement values when a current audio frame has not been received or is erroneous, wherein the previously received error-free audio frame includes filter information, the filter information including an associated filter stability value indicating a stability of a prediction filter, and wherein the concealment frame generator is adapted to generate the spectral replacement values based on the previous spectral values and based on the filter stability value.


According to another embodiment, an audio signal decoder may have: an apparatus for decoding spectral audio signal values, and an apparatus for generating spectral replacement values according to claim 1, wherein the apparatus for decoding spectral audio signal values is adapted to decode spectral values of an audio signal based on a previously received error-free audio frame, wherein the apparatus for decoding spectral audio signal values is furthermore adapted to store the spectral values of the audio signal in the buffer unit of the apparatus for generating spectral replacement values, and wherein the apparatus for generating spectral replacement values is adapted to generate the spectral replacement values based on the spectral values stored in the buffer unit, when a current audio frame has not been received or is erroneous.


According to another embodiment, an audio signal decoder may have: a decoding unit for generating first intermediate spectral values based on a received error-free audio frame, a temporal noise shaping unit for conducting temporal noise shaping on the first intermediate spectral values to acquire second intermediate spectral values, a prediction gain calculator for calculating a prediction gain of the temporal noise shaping depending on the first intermediate spectral values and depending on the second intermediate spectral values, an apparatus according to claim 1, for generating spectral replacement values when a current audio frame has not been received or is erroneous, and a values selector for storing the first intermediate spectral values in the buffer unit of the apparatus for generating spectral replacement values, if the prediction gain is greater than or equal to a threshold value, or for storing the second intermediate spectral values in the buffer unit of the apparatus for generating spectral replacement values, if the prediction gain is smaller than the threshold value.


According to another embodiment, an audio signal decoder may have: a first decoding module for generating generated spectral values based on a received error-free audio frame, an apparatus for generating spectral replacement values according to claim 1, and a processing module for processing the generated spectral values by conducting temporal noise shaping, applying noise-filling or applying a global gain, to acquire spectral audio values of the decoded audio signal, wherein the apparatus for generating spectral replacement values is adapted to generate spectral replacement values and to feed them into the processing module, when a current frame has not been received or is erroneous.


According to another embodiment, a method for generating spectral replacement values for an audio signal may have the steps of: storing previous spectral values relating to a previously received error-free audio frame, and generating the spectral replacement values when a current audio frame has not been received or is erroneous, wherein the previously received error-free audio frame includes filter information, the filter information including an associated filter stability value indicating a stability of a prediction filter defined by the filter information, wherein the spectral replacement values are generated based on the previous spectral values and based on the filter stability value.


Another embodiment may have a computer program for implementing the method of claim 15, when the computer program is executed by a computer or signal processor.


An apparatus for generating spectral replacement values for an audio signal is provided. The apparatus comprises a buffer unit for storing previous spectral values relating to a previously received error-free audio frame. Moreover, the apparatus comprises a concealment frame generator for generating the spectral replacement values, when a current audio frame has not been received or is erroneous. The previously received error-free audio frame comprises filter information, the filter information having associated a filter stability value indicating a stability of a prediction filter. The concealment frame generator is adapted to generate the spectral replacement values based on the previous spectral values and based on the filter stability value.


The present invention is based on the finding that while previous spectral values of a previously received error-free frame may be used for error concealment, a fade out should be conducted on these values, and the fade out should depend on the stability of the signal. The less stable a signal is, the faster the fade out should be conducted.


In an embodiment, the concealment frame generator may be adapted to generate the spectral replacement values by randomly flipping the sign of the previous spectral values.


According to a further embodiment, the concealment frame generator may be configured to generate the spectral replacement values by multiplying each of the previous spectral values by a first gain factor when the filter stability value has a first value, and by multiplying each of the previous spectral values by a second gain factor being smaller than the first gain factor, when the filter stability value has a second value being smaller than the first value.


In another embodiment, the concealment frame generator may be adapted to generate the spectral replacement values based on the filter stability value, wherein the previously received error-free audio frame comprises first predictive filter coefficients of the prediction filter, wherein a predecessor frame of the previously received error-free audio frame comprises second predictive filter coefficients, and wherein the filter stability value depends on the first predictive filter coefficients and on the second predictive filter coefficients.


According to an embodiment, the concealment frame generator may be adapted to determine the filter stability value based on the first predictive filter coefficients of the previously received error-free audio frame and based on the second predictive filter coefficients of the predecessor frame of the previously received error-free audio frame.


In another embodiment, the concealment frame generator may be adapted to generate the spectral replacement values based on the filter stability value, wherein the filter stability value depends on a distance measure LSFdist, and wherein the distance measure LSFdist is defined by the formula:







LSF
dist

=




i
=
0

u




(


f
i

-

f
i

(
p
)



)

2







wherein u+1 specifies a total number of the first predictive filter coefficients of the previously received error-free audio frame, and wherein u+1 also specifies a total number of the second predictive filter coefficients of the predecessor frame of the previously received error-free audio frame, wherein fi specifies the i-th filter coefficient of the first predictive filter coefficients and wherein fi(p) specifies the i-th filter coefficient of the second predictive filter coefficients.


According to an embodiment, the concealment frame generator may be adapted to generate the spectral replacement values furthermore based on frame class information relating to the previously received error-free audio frame. For example, the frame class information indicates that the previously received error-free audio frame is classified as “artificial onset”, “onset”, “voiced transition”, “unvoiced transition”, “unvoiced” or “voiced”.


In another embodiment, the concealment frame generator may be adapted to generate the spectral replacement values furthermore based on a number of consecutive frames that did not arrive at a receiver or that were erroneous, since a last error-free audio frame had arrived at the receiver, wherein no other error-free audio frames arrived at the receiver since the last error-free audio frame had arrived at the receiver.


According to another embodiment, the concealment frame generator may be adapted to calculate a fade out factor and based on the filter stability value and based on the number of consecutive frames that did not arrive at the receiver or that were erroneous. Moreover, the concealment frame generator may be adapted to generate the spectral replacement values by multiplying the fade out factor by at least some of the previous spectral values, or by at least some values of a group of intermediate values, wherein each one of the intermediate values depends on at least one of the previous spectral values.


In a further embodiment, the concealment frame generator may be adapted to generate the spectral replacement values based on the previous spectral values, based on the filter stability value and also based on a prediction gain of a temporal noise shaping.


According to a further embodiment, an audio signal decoder is provided. The audio signal decoder may comprise an apparatus for decoding spectral audio signal values, and an apparatus for generating spectral replacement values according to one of the above-described embodiments. The apparatus for decoding spectral audio signal values may be adapted to decode spectral values of an audio signal based on a previously received error-free audio frame. Moreover, the apparatus for decoding spectral audio signal values may furthermore be adapted to store the spectral values of the audio signal in the buffer unit of the apparatus for generating spectral replacement values. The apparatus for generating spectral replacement values may be adapted to generate the spectral replacement values based on the spectral values stored in the buffer unit, when a current audio frame has not been received or is erroneous.


Moreover, an audio signal decoder according to another embodiment is provided. The audio signal decoder comprises a decoding unit for generating first intermediate spectral values based on a received error-free audio frame, a temporal noise shaping unit for conducting temporal noise shaping on the first intermediate spectral values to obtain second intermediate spectral values, a prediction gain calculator for calculating a prediction gain of the temporal noise shaping depending on the first intermediate spectral values and depending on the second intermediate spectral values, an apparatus according to one of the above-described embodiments for generating spectral replacement values when a current audio frame has not been received or is erroneous, and a values selector for storing the first intermediate spectral values in the buffer unit of the apparatus for generating spectral replacement values, if the prediction gain is greater than or equal to a threshold value, or for storing the second intermediate spectral values in the buffer unit of the apparatus for generating spectral replacement values, if the prediction gain is smaller than the threshold value.


Furthermore, another audio signal decoder is provided according to another embodiment. The audio signal decoder comprises a first decoding module for generating generated spectral values based on a received error-free audio frame, an apparatus for generating spectral replacement values according to one of the above-described embodiments, a processing module for processing the generated spectral values by conducting temporal noise shaping, applying noise-filling and/or applying a global gain, to obtain spectral audio values of the decoded audio signal. The apparatus for generating spectral replacement values may be adapted to generate spectral replacement values and to feed them into the processing module when a current frame has not been received or is erroneous.





BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the present invention will be detailed subsequently referring to the appended drawings, in which:



FIG. 1 illustrates an apparatus for obtaining spectral replacement values for an audio signal according to an embodiment,



FIG. 2 illustrates an apparatus for obtaining spectral replacement values for an audio signal according to another embodiment,



FIGS. 3a-3c illustrate the multiplication of a gain factor and previous spectral values according to an embodiment,



FIG. 4a illustrates the repetition of a signal portion which comprises an onset in a time domain,



FIG. 4b illustrates the repetition of a stable signal portion in a time domain,



FIGS. 5a-5b illustrate examples, where generated gain factors are applied on the spectral values of FIG. 3a, according to an embodiment,



FIG. 6 illustrates an audio signal decoder according to an embodiment,



FIG. 7 illustrates an audio signal decoder according to another embodiment, and



FIG. 8 illustrates an audio signal decoder according to a further embodiment.





DETAILED DESCRIPTION OF THE INVENTION


FIG. 1 illustrates an apparatus 100 for generating spectral replacement values for an audio signal. The apparatus 100 comprises a buffer unit 110 for storing previous spectral values relating to a previously received error-free audio frame. Moreover, the apparatus 100 comprises a concealment frame generator 120 for generating the spectral replacement values, when a current audio frame has not been received or is erroneous. The previously received error-free audio frame comprises filter information, the filter information having associated a filter stability value indicating a stability of a prediction filter. The concealment frame generator 120 is adapted to generate the spectral replacement values based on the previous spectral values and based on the filter stability value.


The previously received error-free audio frame may, for example, comprise the previous spectral values. E.g. the previous spectral values may be comprised in the previously received error-free audio frame in an encoded form.


Or, the previous spectral values may, for example, be values that may have been generated by modifying values comprised in the previously received error-free audio frame, e.g. spectral values of the audio signal. For example, the values comprised in the previously received error-free audio frame may have been modified by multiplying each one of them with a gain factor to obtain the previous spectral values.


Or, the previous spectral values may, for example, be values that may have been generated based on values comprised in the previously received error-free audio frame. For example, each one of the previous spectral values may have been generated by employing at least some of the values comprised in the previously received error-free audio frame, such that each one of the previous spectral values depends on at least some of the values comprised in the previously received error-free audio frame. E.g., the values comprised in the previously received error-free audio frame may have been used to generate an intermediate signal. For example, the spectral values of the generated intermediate signal may then be considered as the previous spectral values relating to the previously received error-free audio frame.


Arrow 105 indicates that the previous spectral values are stored in the buffer unit 110.


The concealment frame generator 120 may generate the spectral replacement values, when a current audio frame has not been received in time or is erroneous. For example, a transmitter may transmit a current audio frame to a receiver, where the apparatus 100 for obtaining spectral replacement values, may for example be located. However, the current audio frame does not arrive at the receiver, e.g. because of any kind of transmission error. Or, the transmitted current audio frame is received by the receiver, but, for example, because of a disturbance, e.g. during transmission, the current audio frame is erroneous. In such or other cases, the concealment frame generator 120 is needed for error concealment.


For this, the concealment frame generator 120 is adapted to generate the spectral replacement values based on at least some of the previous spectral values, when a current audio frame has not been received or is erroneous. According to embodiments, it is assumed that the previously received error-free audio frame comprises filter information, the filter information having associated a filter stability value indicating a stability of a prediction filter defined by the filter information. For example, the audio frame may comprise predictive filter coefficients, e.g. linear predictive filter coefficients, as filter information.


The concealment frame generator 120 is furthermore adapted to generate the spectral replacement values based on the previous spectral values and based on the filter stability value.


For example, the spectral replacement values may be generated based on the previous spectral values and based on the filter stability value in that each one of the previous spectral values are multiplied by a gain factor, wherein the value of the gain factor depends on the filter stability value. E.g., the gain factor may be smaller in a second case than in a first case, when the filter stability value in the second case is smaller than in the first case.


According to another embodiment, the spectral replacement values may be generated based on the previous spectral values and based on the filter stability value. Intermediate values may be generated by modifying the previous spectral values, for example, by randomly flipping the sign of the previous spectral values, and by multiplying each one of the intermediate values by a gain factor, wherein the value of the gain factor depends on the filter stability value. For example, the gain factor may be smaller in a second case than in a first case, when the filter stability value in the second case is smaller than in the first case.


According to a further embodiment, the previous spectral values may be employed to generate an intermediate signal, and a spectral domain synthesis signal may be generated by applying a linear prediction filter on the intermediate signal. Then, each spectral value of the generated synthesis signal may be multiplied by a gain factor, wherein the value of the gain factor depends on the filter stability value. As above, the gain factor may, for example, be smaller in a second case than in a first case, if the filter stability value in the second case is smaller than in the first case.


A particular embodiment illustrated in FIG. 2 is now explained in detail. A first frame 101 arrives at a receiver side, where an apparatus 100 for obtaining spectral replacement values may be located. On the receiver side, it is checked, whether the audio frame is error-free or not. For example, an error-free audio frame is an audio frame where all the audio data comprised in the audio frame is error-free. For this purpose, means (not shown) may be employed on the receiver side, which determine, whether a received frame is error-free or not. To this end, state-of-the art error recognition techniques may be employed, such as means which test, whether the received audio data is consistent with a received check bit or a received check sum. Or, the error-detecting means may employ a cyclic redundancy check (CRC) to test whether the received audio data is consistent with a received CRC-value. Any other technique for testing, whether a received audio frame is error-free or not, may also be employed.


The first audio frame 101 comprises audio data 102. Moreover, the first audio frame comprises check data 103. For example, the check data may be a check bit, a check sum or a CRC-value, which may be employed on the receiver side to test whether the received audio frame 101 is error-free (is an error-free frame) or not.


If it has been determined that the audio frame 101 is error-free, then, values relating to the error-free audio frame, e.g. to the audio data 102, will be stored in the buffer unit 110 as “previous spectral values”. These values may, for example, be spectral values of the audio signal encoded in the audio frame. Or, the values that are stored in the buffer unit may, for example, be intermediate values resulting from processing and/or modifying encoded values stored in the audio frame. Alternatively, a signal, for example a synthesis signal in the spectral domain, may be generated based on encoded values of the audio frame, and the spectral values of the generated signal may be stored in the buffer unit 110. Storing the previous spectral values in the buffer unit 110 is indicated by arrow 105.


Moreover, the audio data 102 of the audio frame 101 is used on the receiver side to decode the encoded audio signal (not shown). The part of the audio signal that has been decoded may then be replayed on a receiver side.


Subsequently after processing audio frame 101, the receiver side expects the next audio frame 111 (also comprising audio data 112 and check data 113) to arrive at the receiver side. However, e.g., while the audio frame 111 is transmitted (as shown in 115), something unexpected happens. This is illustrated by 116. For example, a connection may be disturbed such that bits of the audio frame 111 may be unintentionally modified during transmission, or, e.g., the audio frame 111 may not arrive at all at a receiver side.


In such a situation, concealment is needed. When, for example, an audio signal is replayed on a receiver side that is generated based on a received audio frame, techniques should be employed that mask a missing frame. For example, concepts should define what to do, when a current audio frame of an audio signal that is needed for play back, does not arrive at the receiver side or is erroneous.


The concealment frame generator 120 is adapted to provide error concealment. In FIG. 2, the concealment frame generator 120 is informed that a current frame has not been received or is erroneous. On the receiver side, means (not shown) may be employed to indicate to the concealment frame generator 120 that concealment may be used (this is shown by dashed arrow 117).


To conduct error concealment, the concealment frame generator 120 may request some or all of the previous spectral values, e.g. previous audio values, relating to the previously received error-free frame 101 from the buffer unit 110. This request is illustrated by arrow 118. As in the example of FIG. 2, the previously received error-free frame may, for example, be the last error-free frame received, e.g. audio frame 101. However, a different error-free frame may also be employed on the receiver side as previously received error-free frame.


The concealment frame generator then receives (some or all of) the previous spectral values relating to the previously received error-free audio frame (e.g. audio frame 101) from the buffer unit 110, as shown in 119. E.g., in case of multiple frame loss, the buffer is updated either completely or partly. In an embodiment, the steps illustrated by arrows 118 and 119 may be realized in that the concealment frame generator 120 loads the previous spectral values from the buffer unit 110.


The concealment frame generator 120 then generates spectral replacement values based on at least some of the previous spectral values. By this, the listener should not become aware that one or more audio frames are missing, such that the sound impression created by the play back is not disturbed.


A simple way to achieve concealment would be, to simply use the values, e.g. the spectral values of the last error-free frame as spectral replacement values for the missing or erroneous current frame.


However, particular problems exist especially in case of onsets, e.g., when the sound volume suddenly changes significantly. For example, in case of a noise burst, by simply repeating the previous spectral values of the last frame, the noise burst would also be repeated.


In contrast, if the audio signal is quite stable, e.g. its volume does not change significantly, or, e.g. its spectral values do not change significantly, then the effect of artificially generating the current audio signal portion based on the previously received audio data, e.g., repeating the previously received audio signal portion, would be less disturbing for a listener.


Embodiments are based on this finding. The concealment frame generator 120 generates spectral replacement values based on at least some of the previous spectral values and based on the filter stability value indicating a stability of a prediction filter relating to the audio signal. Thus, the concealment frame generator 120 takes the stability of the audio signal into account, e.g. the stability of the audio signal relating to the previously received error-free frame.


For this, the concealment frame generator 120 might change the value of a gain factor that is applied on the previous spectral values. For example, each of the previous spectral values is multiplied by the gain factor. This is illustrated with respect to FIGS. 3a-3c.


In FIG. 3a, some of the spectral lines of an audio signal relating to a previously received error-free frame are illustrated before an original gain factor is applied. For example, the original gain factor may be a gain factor that is transmitted in the audio frame. On the receiver side, if the received frame is error-free, the decoder may, for example, be configured to multiply each of the spectral values of the audio signal by the original gain factor g to obtain a modified spectrum. This is shown in FIG. 3b.


In FIG. 3b, spectral lines that result from multiplying the spectral lines of FIG. 3a by an original gain factor are depicted. For reasons of simplicity it is assumed that the original gain factor g is 2.0. (g=2.0). FIGS. 3a and 3b illustrate a scenario, where no concealment may have been used.


In FIG. 3c, a scenario is assumed, where a current frame has not been received or is erroneous. In such a case, replacement vectors have to be generated. For this, the previous spectral values relating to the previously received error-free frame, that have been stored in a buffer unit may be used for generating the spectral replacement values.


In the example of FIG. 3c, it is assumed that the spectral replacement values are generated based on the received values, but the original gain factor is modified.


A different, smaller, gain factor is used to generate the spectral replacement values than the gain factor that is used to amplify the received values in the case of FIG. 3b. By this, a fade out is achieved.


For example, the modified gain factor used in the scenario illustrated by FIG. 3c may be 75% of the original gain factor, e.g. 0.75-2.0=1.5. By multiplying each of the spectral values by the (reduced) modified gain factor, a fade out is conducted, as the modified gain factor gact=1.5 that is used for multiplication of the each one of the spectral values is smaller than the original gain factor (gain factor gprev=2.0) used for multiplication of the spectral values in the error-free case.


The present invention is inter alia based on the finding, that repeating the values of a previously received error-free frame is perceived as more disturbing, when the respective audio signal portion is unstable, then in the case, when the respective audio signal portion is stable. This is illustrated in FIGS. 4a and 4b.


For example, if the previously received error-free frame comprises an onset, then the onset is likely to be reproduced. FIG. 4a illustrates an audio signal portion, wherein a transient occurs in the audio signal portion associated with the last received error-free frame. In FIGS. 4a and 4b, the abscissa indicates time, the ordinate indicates an amplitude value of the audio signal.


The signal portion specified by 410 relates to the audio signal portion relating to the last received error-free frame. The dashed line in area 420 indicates a possible continuation of the curve in the time domain, if the values relating to the previously received error-free frame would simply be copied and used as spectral replacement values of a replacement frame. As can be seen, the transient is likely to be repeated what may be perceived as disturbing by the listener.


In contrast, FIG. 4b illustrates an example, where the signal is quite stable. In FIG. 4b, an audio signal portion relating to the last received error-free frame is illustrated. In the signal portion of FIG. 4b, no transient occurred. Again, the abscissa indicates time, the ordinate indicates an amplitude of the audio signal. The area 430 relates to the signal portion associated with the last received error-free frame. The dashed line in area 440 indicates a possible continuation of the curve in the time domain, if the values of the previously received error-free frame would be copied and used as spectral replacement values of a replacement frame. In such situations where the audio signal is quite stable, repeating the last signal portion appears to be more acceptable for a listener than in the situation where an onset is repeated, as illustrated in FIG. 4a.


The present invention is based on the finding that spectral replacement values may be generated based on previously received values of a previous audio frame, but that also the stability of a prediction filter depending on the stability of an audio signal portion should be considered. For this, a filter stability value should be taken into account. The filter stability value may, e.g., indicate the stability of the prediction filter.


In LD-USAC, the prediction filter coefficients, e.g. linear prediction filter coefficients, may be determined on an encoder side and may be transmitted to the receiver within the audio frame.


On the decoder side, the decoder then receives the predictive filter coefficients, for example, the predictive filter coefficients of the previously received error-free frame. Moreover, the decoder may have already received the predictive filter coefficients of the predecessor frame of the previously received frame, and may, e.g., have stored these predictive filter coefficients. The predecessor frame of the previously received error-free frame is the frame that immediately precedes the previously received error-free frame. The concealment frame generator may then determine the filter stability value based on the predictive filter coefficients of the previously received error-free frame and based on the predictive filter coefficients of the predecessor frame of the previously received error-free frame.


In the following, determination of the filter stability value according an embodiment is presented, which is particularly suitable for LD-USAC. The stability value considered depends on predictive filter coefficients, for example, 10 predictive filter coefficients fi in case of narrowband, or, for example, 16 predictive filter coefficients fi in case of wideband, which may have been transmitted in a previously received error-free frame. Moreover, predictive filter coefficients of the predecessor frame of the previously received error-free frame are also considered, for example 10 further predictive filter coefficients fi(p) in case of narrowband (or, for example, 16 further predictive filter coefficients fi(p) in case of wideband).


For example, the k-th prediction filter fk may have been calculated on an encoder side by computing an autocorrelation, such that:







f
k

=




n
=
k

t





s




(
n
)





s




(

n
-
k

)









wherein s′ is a windowed speech signal, e.g. the speech signal that shall be encoded, after a window has been applied on the speech signal. t may for example be 383. Alternatively, t may have other values, such as 191 or 95.


In other embodiments, instead of computing an autocorrelation, the Levinson-Durbin-algorithm, known from the state of the art, may alternatively be employed, see, for example,

  • [3]: 3GPP, “Speech codec speech processing functions; Adaptive Multi-Rate—Wideband (AMR-WB) speech codec; Transcoding functions”, 2009, V9.0.0, 3GPP TS 26.190.


As already stated, the predictive filter coefficients fi and fi(p) may have been transmitted to the receiver within the previously received error-free frame and the predecessor of the previously received error-free frame, respectively.


On the decoder side, a Line Spectral Frequency distance measure (LSF distance measure) LSFdist may then be calculated employing the formula:







LSF
dist

=




i
=
0

u




(


f
i

-

f
i

(
p
)



)

2







u may be the number of prediction filters in the previously received error-free frame minus 1. E.g. if the previously received error-free frame had 10 predictive filter coefficients, then, for example, u=9. The number of predictive filter coefficients in the previously received error-free frame is typically identical to the number of predictive filter coefficients in the predecessor frame of the previously received error-free frame.


The stability value may then be calculated according to the formula:

θ=0 if (1.25−LSFdist/v)<0
θ=1 if (1.25−LSFdist/v)>1
θ=1.25−LSFdist/v 0≦(1.25−LSFdist/v)≦1

v may be an integer. For example, v may be 156250 in case of narrowband. In another embodiment, v may be 400000 in case of wideband.


θ is considered to indicate a very stable prediction filter, if θ is 1 or close to 1.


θ is considered to indicate a very unstable prediction filter, if θ is 0 or close to 0.


The concealment frame generator may be adapted to generate the spectral replacement values based on previous spectral values of a previously received error-free frame, when a current audio frame has not been received or is erroneous. Moreover, the concealment frame generator may be adapted to calculate a stability value θ based on the predictive filter coefficients fi of the previously received error-free frame and also based on the predictive filter coefficients fi(p) of the previously received error-free frame, as has been described above.


In an embodiment, the concealment frame generator may be adapted to use the filter stability value to generate a generated gain factor, e.g. by modifying an original gain factor, and to apply the generated gain factor on the previous spectral values relating to the audio frame to obtain the spectral replacement values. In other embodiments, the concealment frame generator is adapted to apply the generated gain factor on values derived from the previous spectral values.


For example, the concealment frame generator may generate the modified gain factor by multiplying a received gain factor by a fade out factor, wherein the fade out factor depends on the filter stability value.


Let us, for example, assume that a gain factor received in an audio signal frame has, e.g. the value 2.0. The gain factor is typically used for multiplying the previous spectral values to obtain modified spectral values. To apply a fade out, a modified gain factor is generated that depends on the stability value θ.


For example, if the stability value θ=1, then the prediction filter is considered to be very stable. The fade out factor may then be set to 0.85, if the frame that shall be reconstructed is the first frame missing. Thus, the modified gain factor is 0.85-2.0=1.7. Each one of the received spectral values of the previously received frame is then multiplied by a modified gain factor of 1.7 instead of 2.0 (the received gain factor) to generate the spectral replacement values.



FIG. 5a illustrates an example, where a generated gain factor 1.7 is applied on the spectral values of FIG. 3a.


However, if, for example, the stability value θ=0, then the prediction filter is considered to be very unstable. The fade out factor may then be set to 0.65, if the frame that shall be reconstructed is the first frame missing. Thus, the modified gain factor is 0.65−2.0=1.3. Each one of the received spectral values of the previously received frame is then multiplied by a modified gain factor of 1.3 instead of 2.0 (the received gain factor) to generate the spectral replacement values.



FIG. 5b illustrates an example, where a generated gain factor 1.3 is applied on the spectral values of FIG. 3a. As the gain factor in the example of FIG. 5b is smaller than in the example of FIG. 5a, the magnitudes in FIG. 5b are also smaller than in the example of FIG. 5a.


Different strategies may be applied depending on the value θ, wherein θ might be any value between 0 and 1.


For example, a value θ≧0.5 may be interpreted as 1 such that the fade out factor has the same value as if θ would be 1, e.g. the fade out factor is 0.85. A value θ<0.5 may be interpreted as 0 such that the fade out factor has the same value as if θ would be 0, e.g. the fade out factor is 0.65.


According to another embodiment, the value of the fade out factor might alternatively be interpolated, if the value of 0 is between 0 and 1. For example, assuming that the value of the fade out factor is 0.85 if θ is 1, and 0.65 if θ is 0, then the fade out factor may be calculated according to the formula:

fade_out_factor=0.65+θ·0.2; for 0<θ<1.


In another embodiment, the concealment frame generator is adapted to generate the spectral replacement values furthermore based on frame class information relating to the previously received error-free frame. The information about the class may be determined by an encoder. The encoder may then encode the frame class information in the audio frame. The decoder might then decode the frame class information when decoding the previously received error-free frame.


Alternatively, the decoder may itself determine the frame class information by examining the audio frame.


Moreover, the decoder may be configured to determine the frame class information based on information from the encoder and based on an examination of the received audio data, the examination being conducted by the decoder, itself.


The frame class may, for example indicate whether the frame is classified as “artificial onset”, “onset”, “voiced transition”, unvoiced transition”, “unvoiced” and “voiced.


For example, “onset” might indicate that the previously received audio frame comprises an onset. E.g., “voiced” might indicate that the previously received audio frame comprises voiced data. For example, “unvoiced” might indicate that the previously received audio frame comprises unvoiced data. E.g., “voiced transition” might indicate that the previously received audio frame comprises voiced data, but that, compared to the predecessor of the previous received audio frame, the pitch did change. For example, “artificial onset” might indicate that the energy of the previously received audio frame has been enhanced (thus, for example, creating an artificial onset). E.g. “unvoiced transition” might indicate that the previously received audio frame comprises unvoiced data but that the unvoiced sound is about to change.


Depending on the previously received audio frame, the stability value θ and the number of successive erased frames, the attenuation gain, e.g. the fade out factor, may, for example, be defined as follows:















Number of




successive
Attenuation gain


Last good received frame
erased frames
(e.g. fade out factor)

















ARTIFICIAL ONSET

0.6


ONSET
≦3
0.2 · θ + 0.8


ONSET
>3
0.5


VOICED TRANSITION

0.4


UNVOICED TRANSITION
>1
0.8


UNVOICED TRANSITION
= 1
0.2 · θ + 0.75


UNVOICED
= 2
0.2 · θ + 0.6


UNVOICED
>2
0.2 · θ + 0.4


UNVOICED
= 1
0.2 · θ + 0.8


VOICED
= 2
0.2 · θ + 0.65


VOICED
>2
0.2 · θ + 0.5









According to an embodiment, the concealment frame generator may generate a modified gain factor by multiplying a received gain factor by the fade out factor determined based on the filter stability value and on the frame class. Then, the previous spectral values may, for example, be multiplied by the modified gain factor to obtain spectral replacement values.


The concealment frame generator may again be adapted to generate the spectral replacement values furthermore also based on the frame class information.


According to an embodiment, the concealment frame generator may be adapted to generate the spectral replacement values furthermore depending on the number of consecutive frames that did not arrive at the receiver or that were erroneous.


In an embodiment, the concealment frame generator may be adapted to calculate a fade out factor based on the filter stability value and based on the number of consecutive frames that did not arrive at the receiver or that were erroneous.


The concealment frame generator may moreover be adapted to generate the spectral replacement values by multiplying the fade out factor by at least some of the previous spectral values.


Alternatively, the concealment frame generator may be adapted to generate the spectral replacement values by multiplying the fade out factor by at least some values of a group of intermediate values. Each one of the intermediate values depends on at least one of the previous spectral values. For example, the group of intermediate values may have been generated by modifying the previous spectral values. Or, a synthesis signal in the spectral domain may have been generated based on the previous spectral values, and the spectral values of the synthesis signal may form the group of intermediate values.


In another embodiment, the fade out factor may be multiplied by an original gain factor to obtain a generated gain factor. The generated gain factor is then multiplied by at least some of the previous spectral values, or by at least some values of the group of intermediate values mentioned before, to obtain the spectral replacement values.


The value of the fade out factor depends on the filter stability value and on the number of consecutive missing or erroneous frames, and may, for example, have the values:














Filter stability
Number of consecutive



value
missing/erroneous frames
Fade out factor







0
1
0.8


0
2
 0.8 · 0.65 = 0.52


0
3
0.52 · 0.55 = 0.29


0
4
0.29 · 0.55 = 0.16


0
5
0.16 · 0.55 = 0.09


. . .
. . .
. . .









Here, “Number of consecutive missing/erroneous frames=1” indicates that the immediate predecessor of the missing/erroneous frame was error-free.


As can be seen, in the above example, the fade out factor may be updated each time a frame does not arrive or is erroneous based on the last fade out factor. For example, if the immediate predecessor of a missing/erroneous frame is error-free, then, in the above example, the fade out factor is 0.8. If the subsequent frame is also missing or erroneous, the fade out factor is updated based on the previous fade out factor by multiplying the previous fade out factor by an update factor 0.65: fade out factor=0.8-0.65=0.52, and so on.


Some or all of the previous spectral values may be multiplied by the fade out factor itself.


Alternatively, the fade out factor may be multiplied by an original gain factor to obtain a generated gain factor. The generated gain factor may then be multiplied by each one (or some) of the previous spectral values (or intermediate values derived from the previous spectral values) to obtain the spectral replacement values.


It should be noted, that the fade out factor may also depend on the filter stability value. For example, the above table may also comprise definitions for the fade out factor, if the filter stability value is 1.0, 0.5 or any other value, for example:














Filter stability
Number of consecutive



value
missing/erroneous frames
Fade out factor







1.0
1
1.0


1.0
2
 1.0 · 0.85 = 0.85


1.0
3
0.85 · 0.75 = 0.64


1.0
4
0.64 · 0.75 = 0.48


1.0
5
0.48 · 0.75 = 0.36


. . .
. . .
. . .









Fade out factor values for intermediate filter stability values may be approximated.


In another embodiment, the fade out factor may be determined by employing a formula which calculates the fade out factor based on the filter stability value and based on the number of consecutive frames that did not arrive at the receiver or that were erroneous.


As has been described above, the previous spectral values stored in the buffer unit may be spectral values. To avoid that disturbing artefacts are generated, the concealment frame generator may, as explained above, generate the spectral replacement values based on a filter stability value.


However, the such generated signal portion replacement may still have a repetitive character. Therefore, according to an embodiment, it is moreover proposed to modify the previous spectral values, e.g. the spectral values of the previously received frame, by randomly flipping the sign of the spectral values. E.g. the concealment frame generator decides randomly for each of the previous spectral values, whether the sign of the spectral value is inverted or not, e.g. whether the spectral value is multiplied by −1 or not. By this, the repetitive character of the replaced audio signal frame with respect to its predecessor frame is reduced.


In the following, a concealment in a LD-USAC decoder according to an embodiment is described. In this embodiment, concealment is working on the spectral data just before the LD-USAC-decoder conducts the final frequency to time conversion.


In such an embodiment, the values of an arriving audio frame are used to decode the encoded audio signal by generating a synthesis signal in the spectral domain. For this, an intermediate signal in the spectral domain is generated based on the values of the arriving audio frame. Noise filling is conducted on the values quantized to zero.


The encoded predictive filter coefficients define a prediction filter which is then applied on the intermediate signal to generate the synthesis signal representing the decoded/reconstructed audio signal in the frequency domain.



FIG. 6 illustrates an audio signal decoder according to an embodiment. The audio signal decoder comprises an apparatus for decoding spectral audio signal values 610, and an apparatus for generating spectral replacement values 620 according to one of the above described embodiments.


The apparatus for decoding spectral audio signal values 610 generates the spectral values of the decoded audio signal as just described, when an error-free audio frame arrives.


In the embodiment of FIG. 6, the spectral values of the synthesis signal may then be stored in a buffer unit of the apparatus 620 for generating spectral replacement values. These spectral values of the decoded audio signal have been decoded based on the received error-free audio frame, and thus relate to the previously received error-free audio frame.


When a current frame is missing or erroneous, the apparatus 620 for generating spectral replacement values is informed that spectral replacement values are needed. The concealment frame generator of the apparatus 620 for generating spectral replacement values then generates spectral replacement values according to one of the above-described embodiments.


For example, the spectral values from the last good frame are slightly modified by the concealment frame generator by randomly flipping their sign. Then, a fade out is applied on these spectral values. The fade out may depend on the stability of the previous prediction filter and on the number of consecutive lost frames. The generated spectral replacement values are then used as spectral replacement values for the audio signal, and then a frequency to time transformation is conducted to obtain a time-domain audio signal.


In LD-USAC, as well as in USAC and MPEG-4 (MPEG=Moving Picture Experts Group), temporal noise shaping (TNS) may be employed. By temporal noise shaping, the fine time structure of noise is controlled. On a decoder side, a filter operation is applied on the spectral data based on noise shaping information. More information on temporal noise shaping can, for example, be found in:

  • [4]: ISO/IEC 14496-3:2005: Information technology—Coding of audio-visual objects—Part 3: Audio, 2005


Embodiments are based on the finding that in case of an onset/a transient, TNS is highly active. Thus, by determining whether the TNS is highly active or not, it can be estimated, whether an onset/a transient is present.


According to an embodiment, a prediction gain that TNS has, is calculated on receiver side. On receiver side, at first, the received spectral values of a received error-free audio frame are processed to obtain first intermediate spectral values ai. Then, TNS is conducted and by this, second intermediate spectral values b, are obtained. A first energy value E1 is calculated for the first intermediate spectral values and a second energy value E2 is calculated for the second intermediate spectral values. To obtain the prediction gain gTNS of the TNS, the second energy value may be divided by the first energy value.


For example, gTNS may be defined as:







g
TNS

=


E
2

/

E
1









E
2

=





i
=
0

n



b
i
2


=


b
1
2

+

b
2
2

+

+

b
n
2










E
1

=





i
=
1

n



a
i
2


=


a
1
2

+

a
2
2

+

+


a
n
2





(

n
=

number





of





considered





spectral





values


)







According to an embodiment, the concealment frame generator is adapted to generate the spectral replacement values based on the previous spectral values, based on the filter stability value and also based on a prediction gain of a temporal noise shaping, when temporal noise shaping is conducted on a previously received error-free frame. According to another embodiment, the concealment frame generator is adapted to generate the spectral replacement values furthermore based on the number of consecutive missing or erroneous frames.


The higher the prediction gain is, the faster should the fade out be. For example, consider a filter stability value of 0.5 and assume that the prediction gain is high, e.g. gTNS=6; then a fade out factor, may, for example be 0.65 (=fast fade out). In contrast, again, consider a filter stability value of 0.5, but assume that the prediction gain is low, e.g. 1.5; then a fade out factor may, for example be 0.95 (=slow fade out).


The prediction gain of the TNS may also influence, which values should be stored in the buffer unit of an apparatus for generating spectral replacement values.


If the prediction gain gTNS is lower than a certain threshold (e.g. threshold=5.0), then the spectral values after the TNS has been applied are stored in the buffer unit as previous spectral values. In case of a missing or erroneous frame, the spectral replacement values are generated based on these previous spectral values.


Otherwise, if the prediction gain gTNS is greater than or equal to the threshold value, the spectral values before the TNS has been applied are stored in the buffer unit as previous spectral values. In case of a missing or erroneous frame, the spectral replacement values are generated based on these previous spectral values.


TNS is not applied in any case on these previous spectral values.


Accordingly, FIG. 7 illustrates an audio signal decoder according to a corresponding embodiment. The audio signal decoder comprises a decoding unit 710 for generating first intermediate spectral values based on a received error-free frame. Moreover, the audio signal decoder comprises a temporal noise shaping unit 720 for conducting temporal noise shaping on the first intermediate spectral values to obtain second intermediate spectral values. Furthermore, the audio signal decoder comprises a prediction gain calculator 730 for calculating a prediction gain of the temporal noise shaping depending on the first intermediate spectral values and the second intermediate spectral values. Moreover, the audio signal decoder comprises an apparatus 740 according to one of the above-described embodiments for generating spectral replacement values when a current audio frame has not been received or is erroneous. Furthermore, the audio signal decoder comprises a values selector 750 for storing the first intermediate spectral values in the buffer unit 745 of the apparatus 740 for generating spectral replacement values, if the prediction gain is greater than or equal to a threshold value, or for storing the second intermediate spectral values in the buffer unit 745 of the apparatus 740 for generating spectral replacement values, if the prediction gain is smaller than the threshold value.


The threshold value may, for example, be a predefined value. E.g. the threshold value may be predefined in the audio signal decoder.


According to another embodiment, concealment is conducted on the spectral data just after the first decoding step and before any noise-filling, global gain and/or TNS is conducted.


Such an embodiment is depicted in FIG. 8. FIG. 8 illustrates a decoder according to a further embodiment. The decoder comprises a first decoding module 810. The first decoding module 810 is adapted to generate generated spectral values based on a received error-free audio frame. The generated spectral values are then stored in the buffer unit of an apparatus 820 for generating spectral replacement values. Moreover, the generated spectral values are input into a processing module 830, which processes the generated spectral values by conducting TNS, applying noise-filling and/or by applying a global gain to obtain spectral audio values of the decoded audio signal. If a current frame is missing or erroneous, the apparatus 820 for generating spectral replacement values generates the spectral replacement values and feeds them into the processing module 830.


According to the embodiment illustrated in FIG. 8, the decoding module or the processing module conduct some or all of the following steps in case of concealment:


The spectral values, e.g. from the last good frame, are slightly modified by randomly flipping their sign. In a further step, noise-filling is conducted based on random noise on the spectral bins quantized to zero. In another step, the factor of noise is slightly adapted compared to the previously received error-free frame.


In a further step, spectral noise-shaping is achieved by applying the LPC-coded (LPC=Linear Predictive Coding) weighted spectral envelope in the frequency-domain. For example, the LPC coefficients of the last received error-free frame may be used. In another embodiment, averaged LPC-coefficients may be used. For example, an average of the last three values of a considered LPC coefficient of the last three received error-free frames may be generated for each LPC coefficient of a filter, and the averaged LPC coefficients may be applied.


In a subsequent step, a fade out may be applied on these spectral values. The fade out may depend on the number of consecutive missing or erroneous frames and on the stability of the previous LP filter. Moreover, prediction gain information may be used to influence the fade out. The higher the prediction gain is, the faster the fade out may be. The embodiment of FIG. 8 is slightly more complex than the embodiment of FIG. 6, but provides better audio quality.


Although some aspects have been described in the context of an apparatus, 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 apparatus.


Depending on certain implementation requirements, embodiments of the invention can be implemented in hardware or in software. The implementation can be performed using a digital storage medium, for example a floppy disk, a DVD, a CD, a ROM, a PROM, an EPROM, an EEPROM or a FLASH memory, having electronically readable control signals stored thereon, which cooperate (or are capable of cooperating) with a programmable computer system such that the respective method is performed.


Some embodiments according to the invention comprise a data carrier having electronically readable control signals, which are capable of cooperating with a programmable computer system, such that one of the methods described herein is performed.


Generally, embodiments of the present invention can be implemented as a computer program product with a program code, the program code being operative for performing one of the methods when the computer program product runs on a computer. The program code may for example be stored on a machine readable carrier.


Other embodiments comprise the computer program for performing one of the methods described herein, stored on a machine readable carrier or a non-transitory storage medium.


In other words, an embodiment of the inventive method is, therefore, a computer program having a program code for performing one of the methods described herein, when the computer program runs on a computer.


A further embodiment of the inventive methods is, therefore, a data carrier (or a digital storage medium, or a computer-readable medium) comprising, recorded thereon, the computer program for performing one of the methods described herein.


A further embodiment of the inventive method is, therefore, a data stream or a sequence of signals representing the computer program for performing one of the methods described herein. The data stream or the sequence of signals may for example be configured to be transferred via a data communication connection, for example via the Internet or over a radio channel.


A further embodiment comprises a processing means, for example a computer, or a programmable logic device, configured to or adapted to perform one of the methods described herein.


A further embodiment comprises a computer having installed thereon the computer program for performing one of the methods described herein.


In some embodiments, a programmable logic device (for example a field programmable gate array) may be used to perform some or all of the functionalities of the methods described herein. In some embodiments, a field programmable gate array may cooperate with a microprocessor in order to perform one of the methods described herein. Generally, the methods are advantageously performed by any hardware apparatus.


While this invention has been described in terms of several embodiments, there are alterations, permutations, and equivalents which fall within the scope of this invention. It should also be noted that there are many alternative ways of implementing the methods and compositions of the present invention. It is therefore intended that the following appended claims be interpreted as including all such alterations, permutations and equivalents as fall within the true spirit and scope of the present invention.


LITERATURE



  • [1]: 3GPP, “Audio codec processing functions; Extended Adaptive Multi-Rate—Wideband (AMR-WB+) codec; Transcoding functions”, 2009, 3GPP TS 26.290.

  • [2]: USAC codec (Unified Speech and Audio Codec), ISO/IEC CD 23003-3 dated Sep. 24, 2010

  • [3]: 3GPP, “Speech codec speech processing functions; Adaptive Multi-Rate—Wideband (AMR-WB) speech codec; Transcoding functions”, 2009, V9.0.0, 3GPP TS 26.190.

  • [4]: ISO/IEC 14496-3:2005: Information technology—Coding of audio-visual objects—Part 3: Audio, 2005

  • [5]: ITU-T G.718 (06-2008) specification


Claims
  • 1. An apparatus for generating spectral replacement values for an audio signal comprising: a buffer unit for storing previous spectral values relating to a previously received error-free audio signal frame, anda concealment frame generator for generating the spectral replacement values when a current audio signal frame has not been received or is erroneous, wherein the previously received error-free audio signal frame comprises filter information, the filter information comprising an associated filter stability value indicating a stability of a prediction filter, and wherein the concealment frame generator is adapted to generate the spectral replacement values based on the previous spectral values and based on the filter stability value,wherein during a playback of the audio signal, at a receiver, the current audio signal frame that has not been received in time or is erroneous is replaced with a synthesized representation of the generated spectral replacement values,wherein the apparatus is implemented using a hardware apparatus or a computer or a combination of a hardware apparatus and a computer.
  • 2. The apparatus according to claim 1, wherein the concealment frame generator is adapted to generate the spectral replacement values by randomly flipping the sign of the previous spectral values.
  • 3. The apparatus according to claim 1, wherein the concealment frame generator is configured to generate the spectral replacement values by multiplying each of the previous spectral values by a first gain factor when the filter stability value comprises a first value, and by multiplying each of the previous spectral values by a second gain factor, being smaller than the first gain factor, when the filter stability value comprises a second value being smaller than the first value.
  • 4. The apparatus according to claim 1, wherein the concealment frame generator is adapted to generate the spectral replacement values based on the filter stability value, wherein the previously received error-free audio signal frame comprises first predictive filter coefficients of the prediction filter, wherein a predecessor frame of the previously received error-free audio signal frame comprises second predictive filter coefficients, and wherein the filter stability value depends on the first predictive filter coefficients and on the second predictive filter coefficients.
  • 5. The apparatus according to claim 4, wherein the concealment frame generator is adapted to determine the filter stability value based on the first predictive filter coefficients of the previously received error-free audio signal frame and based on the second predictive filter coefficients of the predecessor frame of the previously received error-free audio signal frame.
  • 6. The apparatus according to claim 4, wherein the concealment frame generator is adapted to generate the spectral replacement values based on the filter stability value, wherein the filter stability value depends on a distance measure LSFdist, and wherein the distance measure LSFdist is defined by the formula:
  • 7. The apparatus according to claim 1, wherein the concealment frame generator is adapted to generate the spectral replacement values furthermore based on frame class information relating to the previously received error-free audio signal frame.
  • 8. The apparatus according to claim 7, wherein the concealment frame generator is adapted to generate the spectral replacement values based on the frame class information, wherein the frame class information indicates that the previously received error-free audio signal frame is classified as “artificial onset”, “onset”, “voiced transition”, “unvoiced transition”, “unvoiced” or “voiced”.
  • 9. The apparatus according to claim 1, wherein the concealment frame generator is adapted to generate the spectral replacement values furthermore based on a number of consecutive frames that did not arrive at a receiver or that were erroneous, since a last error-free audio signal frame had arrived at the receiver, wherein no other error-free audio signal frames arrived at the receiver since the last error-free audio signal frame had arrived at the receiver.
  • 10. The apparatus according to claim 9, wherein the concealment frame generator is adapted to calculate a fade out factor, based on the filter stability value and based on the number of consecutive frames that did not arrive at the receiver or that were erroneous, andwherein the concealment frame generator is adapted to generate the spectral replacement values by multiplying the fade out factor by at least some of the previous spectral values, or by at least some values of a group of intermediate values, wherein each one of the intermediate values depends on at least one of the previous spectral values.
  • 11. The apparatus according to claim 1, wherein the concealment frame generator is adapted to generate the spectral replacement values based on the previous spectral values, based on the filter stability value and also based on a prediction gain of a temporal noise shaping.
  • 12. An audio signal decoder comprising: an apparatus for decoding spectral audio signal values, andan apparatus for generating spectral replacement values according to claim 1,wherein the apparatus for decoding spectral audio signal values is adapted to decode spectral values of an audio signal based on a previously received error-free audio signal frame, wherein the apparatus for decoding spectral audio signal values is furthermore adapted to store the spectral values of the audio signal in the buffer unit of the apparatus for generating spectral replacement values, andwherein the apparatus for generating spectral replacement values is adapted to generate the spectral replacement values based on the spectral values stored in the buffer unit, when a current audio signal frame has not been received or is erroneous,wherein the apparatus for decoding spectral audio signal values is implemented using a hardware apparatus or a computer or a combination of a hardware apparatus and a computer.
  • 13. An audio signal decoder, comprising: a decoding unit for generating first intermediate spectral values based on a received error-free audio signal frame,a temporal noise shaping unit for conducting temporal noise shaping on the first intermediate spectral values to acquire second intermediate spectral values,a prediction gain calculator for calculating a prediction gain of the temporal noise shaping depending on the first intermediate spectral values and depending on the second intermediate spectral values,an apparatus according to claim 1, for generating spectral replacement values when a current audio signal frame has not been received or is erroneous, anda values selector for storing the first intermediate spectral values in the buffer unit of the apparatus for generating spectral replacement values, if the prediction gain is greater than or equal to a threshold value, or for storing the second intermediate spectral values in the buffer unit of the apparatus for generating spectral replacement values, if the prediction gain is smaller than the threshold value;wherein the decoding unit, the temporal noise shaping unit, the prediction gain calculator, and the values selector are implemented using a hardware apparatus or a computer or a combination of a hardware apparatus and a computer.
  • 14. An audio signal decoder, comprising: a first decoding module for generating generated spectral values based on a received error-free audio signal frame,an apparatus for generating spectral replacement values according to claim 1, anda processing module for processing the generated spectral values by conducting temporal noise shaping, applying noise-filling or applying a global gain, to acquire spectral audio values of the decoded audio signal,wherein the apparatus for generating spectral replacement values is adapted to generate spectral replacement values and to feed them into the processing module, when a current frame has not been received or is erroneous; andwherein the first decoding module and the processing module are implemented using a hardware apparatus or a computer or a combination of a hardware apparatus and a computer.
  • 15. A method for generating spectral replacement values for an audio signal comprising: storing previous spectral values relating to a previously received error-free audio signal frame, andgenerating the spectral replacement values when a current audio signal frame has not been received or is erroneous, wherein the previously received error-free audio signal frame comprises filter information, the filter information comprising an associated filter stability value indicating a stability of a prediction filter defined by the filter information, wherein the spectral replacement values are generated based on the previous spectral values and based on the filter stability value,wherein during a playback of the audio signal, at a receiver, the current audio signal frame that has not been received in time or is erroneous is replaced with a synthesized representation of the generated spectral replacement values,wherein the method is performed using a hardware apparatus or a computer or a combination of a hardware apparatus and a computer.
  • 16. A non-transitory computer-readable medium comprising a computer program for implementing the method of claim 15, when the computer program is executed by a computer or signal processor.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of copending International Application No. PCT/EP2012/052395, filed Feb. 13, 2012, which is incorporated herein by reference in its entirety, and additionally claims priority from U.S. Application No. 61/442,632, filed Feb. 14, 2011, which is also incorporated herein by reference in its entirety. The present invention relates to audio signal processing and, in particular, to an apparatus and method for error concealment in Low-Delay Unified Speech and Audio Coding (LD-USAC).

US Referenced Citations (122)
Number Name Date Kind
5537510 Kim Jul 1996 A
5598506 Wigren Jan 1997 A
5606642 Stautner et al. Feb 1997 A
5684920 Iwakami et al. Nov 1997 A
5848391 Bosi et al. Dec 1998 A
5953698 Hayata Sep 1999 A
5960389 Jarvinen et al. Sep 1999 A
6070137 Bloebaum et al. May 2000 A
6134518 Cohen et al. Oct 2000 A
6173257 Gao Jan 2001 B1
6236960 Peng et al. May 2001 B1
6317117 Goff Nov 2001 B1
6532443 Nishiguchi et al. Mar 2003 B1
6587817 Vähätalo et al. Jul 2003 B1
6636829 Benyassine et al. Oct 2003 B1
6757654 Westerlund et al. Jun 2004 B1
6879955 Rao et al. Apr 2005 B2
6969309 Carpenter Nov 2005 B2
7003448 Lauber et al. Feb 2006 B1
7124079 Johansson et al. Oct 2006 B1
7249014 Kannan et al. Jul 2007 B2
7280959 Bessette Oct 2007 B2
7343283 Ashley et al. Mar 2008 B2
7363218 Jabri et al. Apr 2008 B2
7519535 Spindola Apr 2009 B2
7519538 Villemoes et al. Apr 2009 B2
7536299 Cheng et al. May 2009 B2
7565286 Gracie et al. Jul 2009 B2
7587312 Kim Sep 2009 B2
7707034 Sun et al. Apr 2010 B2
7711563 Chen May 2010 B2
7788105 Miseki Aug 2010 B2
7809556 Goto et al. Oct 2010 B2
7873511 Herre et al. Jan 2011 B2
7877253 Krishnan et al. Jan 2011 B2
7933769 Bessette Apr 2011 B2
7979271 Bessette Jul 2011 B2
7987089 Krishnan et al. Jul 2011 B2
8045572 Li et al. Oct 2011 B1
8078458 Zopf et al. Dec 2011 B2
8121831 Oh et al. Feb 2012 B2
8160274 Bongiovi Apr 2012 B2
8239192 Kovesi et al. Aug 2012 B2
8255207 Vaillancourt et al. Aug 2012 B2
8255213 Yoshida et al. Aug 2012 B2
8364472 Ehara Jan 2013 B2
8428936 Mittal et al. Apr 2013 B2
8566106 Salami et al. Oct 2013 B2
8630862 Geiger et al. Jan 2014 B2
8630863 Son et al. Jan 2014 B2
8825496 Setiawan et al. Sep 2014 B2
8954321 Beack et al. Feb 2015 B1
20020111799 Bernard Aug 2002 A1
20020184009 Heikkinen Dec 2002 A1
20030009325 Kirchherr et al. Jan 2003 A1
20030033136 Lee Feb 2003 A1
20030046067 Gradl Mar 2003 A1
20030078771 Jung et al. Apr 2003 A1
20030225576 Li et al. Dec 2003 A1
20040046236 Collier Mar 2004 A1
20040093368 Lee et al. May 2004 A1
20040225505 Andersen et al. Nov 2004 A1
20050021338 Graboi et al. Jan 2005 A1
20050065785 Bessette Mar 2005 A1
20050091044 Ramo et al. Apr 2005 A1
20050096901 Uvliden et al. May 2005 A1
20050130321 Nicholson et al. Jun 2005 A1
20050131696 Wang et al. Jun 2005 A1
20050154584 Jelinek et al. Jul 2005 A1
20050165603 Bessette et al. Jul 2005 A1
20050192798 Vainio et al. Sep 2005 A1
20050240399 Makinen Oct 2005 A1
20050278171 Suppappola et al. Dec 2005 A1
20060116872 Byun et al. Jun 2006 A1
20060206334 Kapoor et al. Sep 2006 A1
20060271356 Vos Nov 2006 A1
20060293885 Gournay et al. Dec 2006 A1
20070016404 Kim et al. Jan 2007 A1
20070050189 Cruz-Zeno et al. Mar 2007 A1
20070100607 Villemoes May 2007 A1
20070147518 Bessette Jun 2007 A1
20070160218 Jakka et al. Jul 2007 A1
20070171931 Manjunath et al. Jul 2007 A1
20070172047 Coughlan et al. Jul 2007 A1
20070225971 Bessette Sep 2007 A1
20070253577 Yen et al. Nov 2007 A1
20070282603 Bessette Dec 2007 A1
20080010064 Takeuchi et al. Jan 2008 A1
20080015852 Kruger et al. Jan 2008 A1
20080027719 Kirshnan et al. Jan 2008 A1
20080052068 Aguilar et al. Feb 2008 A1
20080208599 Rosec et al. Aug 2008 A1
20080275580 Andersen Nov 2008 A1
20090024397 Ryu et al. Jan 2009 A1
20090076807 Xu et al. Mar 2009 A1
20090110208 Choo et al. Apr 2009 A1
20090204412 Kovesi Aug 2009 A1
20090226016 Fitz et al. Sep 2009 A1
20090319283 Schnell et al. Dec 2009 A1
20090326930 Kawashima et al. Dec 2009 A1
20100017200 Oshikiri et al. Jan 2010 A1
20100063812 Gao Mar 2010 A1
20100070270 Gao Mar 2010 A1
20100106496 Morii et al. Apr 2010 A1
20100138218 Geiger Jun 2010 A1
20100198586 Edler et al. Aug 2010 A1
20100217607 Neuendorf et al. Aug 2010 A1
20100268542 Kim et al. Oct 2010 A1
20110007827 Virette Jan 2011 A1
20110153333 Bessette Jun 2011 A1
20110161088 Bayer et al. Jun 2011 A1
20110178795 Bayer et al. Jul 2011 A1
20110218797 Mittal et al. Sep 2011 A1
20110218799 Mittal et al. Sep 2011 A1
20110218801 Vary et al. Sep 2011 A1
20110257979 Gao Oct 2011 A1
20110270616 Garudadri et al. Nov 2011 A1
20110311058 Oh et al. Dec 2011 A1
20120022881 Geiger et al. Jan 2012 A1
20120226505 Lin et al. Sep 2012 A1
20120271644 Bessette et al. Oct 2012 A1
20130332151 Fuchs et al. Dec 2013 A1
Foreign Referenced Citations (134)
Number Date Country
2007312667 Apr 2008 AU
2730239 Jan 2010 CA
1274456 Nov 2000 CN
1344067 Apr 2002 CN
1381956 Nov 2002 CN
1437747 Aug 2003 CN
1539137 Oct 2004 CN
1539138 Oct 2004 CN
101351840 Oct 2006 CN
101110214 Jan 2008 CN
101366077 Feb 2009 CN
101371295 Feb 2009 CN
101379551 Mar 2009 CN
101388210 Mar 2009 CN
101425292 May 2009 CN
101483043 Jul 2009 CN
101488344 Jul 2009 CN
101743587 Jun 2010 CN
101770775 Jul 2010 CN
102008015702 Aug 2009 DE
0665530 Aug 1995 EP
0673566 Sep 1995 EP
0758123 Feb 1997 EP
0784846 Jul 1997 EP
0843301 May 1998 EP
1120775 Aug 2001 EP
1852851 Jul 2007 EP
2107556 Jul 2009 EP
2109098 Oct 2009 EP
2144230 Jan 2010 EP
2911228 Jul 2008 FR
H08263098 Oct 1996 JP
10039898 Feb 1998 JP
H10214100 Aug 1998 JP
H11502318 Feb 1999 JP
H1198090 Apr 1999 JP
2000357000 Dec 2000 JP
2002-118517 Apr 2002 JP
2003501925 Jan 2003 JP
2003506764 Feb 2003 JP
2004513381 Apr 2004 JP
2004514182 May 2004 JP
2005534950 Nov 2005 JP
2006504123 Feb 2006 JP
2007065636 Mar 2007 JP
2007523388 Aug 2007 JP
2007525707 Sep 2007 JP
2007538282 Dec 2007 JP
2008-15281 Jan 2008 JP
2008513822 May 2008 JP
2008261904 Oct 2008 JP
2009508146 Feb 2009 JP
2009075536 Apr 2009 JP
2009522588 Jun 2009 JP
2009-527773 Jul 2009 JP
2010530084 Sep 2010 JP
2010-538314 Dec 2010 JP
2010539528 Dec 2010 JP
2011501511 Jan 2011 JP
2011527444 Oct 2011 JP
1020040043278 May 2004 KR
1020060025203 Mar 2006 KR
1020070088276 Aug 2007 KR
1020100059726 Jun 2010 KR
1020100134709 Apr 2015 KR
2169992 Jun 2001 RU
2183034 May 2002 RU
2003118444 Dec 2004 RU
2004138289 Jun 2005 RU
2296377 Mar 2007 RU
2302665 Jul 2007 RU
2312405 Dec 2007 RU
2331933 Aug 2008 RU
2335809 Oct 2008 RU
2008126699 Feb 2010 RU
2009107161 Sep 2010 RU
2009118384 Nov 2010 RU
200830277 Oct 1996 TW
200943279 Oct 1998 TW
201032218 Sep 1999 TW
380246 Jan 2000 TW
469423 Dec 2001 TW
I253057 Apr 2006 TW
200703234 Jan 2007 TW
200729156 Aug 2007 TW
200841743 Oct 2008 TW
I313856 Aug 2009 TW
200943792 Oct 2009 TW
I316225 Oct 2009 TW
I 320172 Feb 2010 TW
201009810 Mar 2010 TW
201009812 Mar 2010 TW
I324762 May 2010 TW
201027517 Jul 2010 TW
201030735 Aug 2010 TW
201040943 Nov 2010 TW
I333643 Nov 2010 TW
201103009 Jan 2011 TW
9222891 Dec 1992 WO
9510890 Apr 1995 WO
9530222 Nov 1995 WO
9629696 Sep 1996 WO
0031719 Jun 2000 WO
0075919 Dec 2000 WO
02101724 Dec 2002 WO
WO-02101722 Dec 2002 WO
2004027368 Apr 2004 WO
2005041169 May 2005 WO
2005078706 Aug 2005 WO
2005081231 Sep 2005 WO
2005112003 Nov 2005 WO
2006126844 Nov 2006 WO
WO-2007051548 May 2007 WO
2007083931 Jul 2007 WO
WO-2007073604 Jul 2007 WO
WO 2007073604 Jul 2007 WO
WO2007096552 Aug 2007 WO
WO-2008013788 Oct 2008 WO
2008157296 Dec 2008 WO
WO-2009029032 Mar 2009 WO
2009077321 Oct 2009 WO
2009121499 Oct 2009 WO
2010003563 Jan 2010 WO
2010003491 Jan 2010 WO
WO-2010003491 Jan 2010 WO
WO-2010040522 Apr 2010 WO
2010059374 May 2010 WO
2010081892 Jul 2010 WO
2010093224 Aug 2010 WO
2011006369 Jan 2011 WO
WO-2010003532 Feb 2011 WO
2011048117 Apr 2011 WO
WO-2011048094 Apr 2011 WO
2011147950 Dec 2011 WO
Non-Patent Literature Citations (36)
Entry
A Silence Compression Scheme for G.729 Optimized for Terminals Conforming to Recommendation V.70, ITU-T Recommendation G.729—Annex B, International Telecommunication Union, Nov. 1996, pp. 1-16.
Martin, R., Spectral Subtraction Based on Minimum Statistics, Proceedings of European Signal Processing Conference (EUSIPCO), Edinburg, Scotland, Great Britain, Sep. 1994, pp. 1182-1185.
“Digital Cellular Telecommunications System (Phase 2+); Universal Mobile Telecommunications System (UMTS); LTE; Speech codec speech processing functions; Adaptive Multi-Rate-Wideband (AMR-)WB Speech Codec; Transcoding Functions (3GPP TS 26.190 version 9.0.0”, Technical Specification, European Telecommunications Standards Institute (ETSI) 650, Route Des Lucioles; F-06921 Sophia-Antipolis; France; No. V.9.0.0, Jan. 1, 2012, 54 Pages.
“IEEE Signal Processing Letters”, IEEE Signgal Processing Society. vol. 15. ISSN 1070-9908., 2008, 9 Pages.
“Information Technology—MPEG Audio Technologies—Part 3: Unified Speech and Audio Coding”, ISO/IEC JTC 1/SC 29 ISO/IEC DIS 23003-3, Feb. 9, 2011, 233 Pages.
“WD7 of USAC”, International Organisation for Standardisation Organisation Internationale De Normailisation. ISO/IEC JTC1/SC29/WG11. Coding of Moving Pictures and Audio. Dresden, Germany., Apr. 2010, 148 Pages.
3GPP, , “3rd Generation Partnership Project; Technical Specification Group Service and System Aspects. Audio Codec Processing Functions. Exteneded AMR Wideband Codec; Transcoding functions (Release 6).”, 3GPP Draft; 26.290, V2.0.0 3rd Generation Partnership Project (3GPP), Mobile Competence Centre; Valbonne, France., Sep. 2004, pp. 1-85.
Ashley, J et al., “Wideband Coding of Speech Using a Scalable Pulse Codebook”, 2000 IEEE Speech Coding Proceedings., Sep. 17, 2000, pp. 148-150.
Bessette, B et al., “The Adaptive Multirate Wideband Speech Codec (AMR-WB)”, IEEE Transactions on Speech and Audio Processing, IEEE Service Center. New York. vol. 10, No. 8., Nov. 1, 2002, pp. 620-636.
Bessette, B et al., “Universal Speech/Audio Coding Using Hybrid ACELP/TCX Techniques”, ICASSP 2005 Proceedings. IEEE International Conference on Acoustics, Speech, and Signal Processing, vol. 3,, Jan. 2005, pp. 301-304.
Bessette, B et al., “Wideband Speech and Audio Codec at 16/24/32 Kbit/S Using Hybrid ACELP/TCX Techniques”, 1999 IEEE Speech Coding Proceedings. Porvoo, Finland., Jun. 20, 1999, pp. 7-9.
Ferreira, A et al., “Combined Spectral Envelope Normalization and Subtraction of Sinusoidal Components in the ODFTand MDCT Frequency Domains”, 2001 IEEE Workshop on Applications of Signal Processing to Audio and Acoustics., Oct. 2001, pp. 51-54.
Fischer, et al., “Enumeration Encoding and Decoding Algorithms for Pyramid Cubic Lattice and Trellis Codes”, IEEE Transactions on Information Theory. IEEE Press, USA, vol. 41, No. 6, Part 2., Nov. 1, 1995, pp. 2056-2061.
Hermansky, H et al., “Perceptual linear predictive (PLP) analysis of speech”, J. Acoust. Soc. Amer. 87 (4)., Apr. 1990, pp. 1738-1751.
Hofbauer, K et al., “Estimating Frequency and Amplitude of Sinusoids in Harmonic Signals—A Survey and the Use of Shifted Fourier Transforms”, Graz: Graz University of Technology; Graz University of Music and Dramatic Arts; Diploma Thesis, Apr. 2004, 111 pages.
Lanciani, C et al., “Subband-Domain Filtering of MPEG Audio Signals”, 1999 IEEE International Conference on Acoustics, Speech, and Signal Processing. Phoenix, , AZ, USA., Mar. 15, 1999, pp. 917-920.
Lauber, P et al., “Error Concealment for Compressed Digital Audio”, Presented at the 111th AES Convention. Paper 5460. New York, USA., Sep. 21, 2001, 12 Pages.
Lee, Ick Don et al., “A Voice Activity Detection Algorithm for Communication Systems with Dynamically Varying Background Acoustic Noise”, Dept. of Electrical Engineering, 1998 IEEE, May 18-21, 1998, pp. 1214-1218.
Makinen, J et al., “AMR-WB+: a New Audio Coding Standard for 3rd Generation Mobile Audio Services”, 2005 IEEE International Conference on Acoustics, Speech, and Signal Processing. Philadelphia, PA, USA., Mar. 18, 2005, 1109-1112.
Motlicek, P et al., “Audio Coding Based on Long Temporal Contexts”, Rapport de recherche de l'IDIAP 06-30, Apr. 2006, pp. 1-10.
Neuendorf, M et al., “A Novel Scheme for Low Bitrate Unified Speech Audio Coding—MPEG RMO”, AES 126th Convention. Convention Paper 7713. Munich, Germany, May 1, 2009, 13 Pages.
Neuendorf, M et al., “Completion of Core Experiment on unification of USAC Windowing and Frame Transitions”, International Organisation for Standardisation Organisation Internationale De Normalisation ISO/IEC JTC1/SC29/WG11. Coding of Moving Pictures and Audio. Kyoto, Japan., Jan. 2010, 52 Pages.
Neuendorf, M et al., “Unified Speech and Audio Coding Scheme for High Quality at Low Bitrates”, ICASSP 2009 IEEE International Conference on Acoustics, Speech and Signal Processing, Piscataway, NJ, USA., Apr. 19, 2009, 4 Pages.
Patwardhan, P et al., “Effect of Voice Quality on Frequency-Warped Modeling of Vowel Spectra”, Speech Communication. vol. 48, No. 8., Aug. 2006, pp. 1009-1023.
Ryan, D et al., “Reflected Simplex Codebooks for Limited Feedback MIMO Beamforming”, IEEE. XP31506379A., Jun. 14-18, 2009, 6 Pages.
Sjoberg, J et al., “RTP Payload Format for the Extended Adaptive Multi-Rate Wideband (AMR-WB+) Audio Codec”, Memo. The Internet Society. Network Working Group. Category: Standards Track., Jan. 2006, pp. 1-38.
Terriberry, T et al., “A Multiply-Free Enumeration of Combinations with Replacement and Sign”, IEEE Signal Processing Letters. vol. 15, 2008, 11 Pages.
Terriberry, T et al., “Pulse Vector Coding”, Retrieved from the internet on Oct. 12, 2012. XP55025946. URL:http://people.xiph.org/˜tterribe/notes/cwrs.html, Dec. 1, 2007, 4 Pages.
Virette, D et al., “Enhanced Pulse Indexing CE for ACELP in USAC”, Organisation Internationale De Normalisation ISO/IEC JTC1/SC29/WG11. MPEG2012/M19305. Coding of Moving Pictures and Audio. Daegu, Korea., Jan. 2011, 13 Pages.
Wang, F et al., “Frequency Domain Adaptive Postfiltering for Enhancement of Noisy Speech”, Speech Communication 12. Elsevier Science Publishers. Amsterdam, North-Holland. vol. 12, No. 1., Mar. 1993, 41-56.
Waterschoot, T et al., “Comparison of Linear Prediction Models for Audio Signals”, EURASIP Journal on Audio, Speech, and Music Processing. vol. 21., Dec. 2008, 27 pages.
Zernicki, T et al., “Report on CE on Improved Tonal Component Coding in eSBR”, International Organisation for Standardisation Organisation Internationale De Normalisation ISO/IEC JTC1/SC29/WG11. Coding of Moving Pictures and Audio. Daegu, South Korea, Jan. 2011, 20 Pages.
3GPP, TS 26.290 Version 9.0.0; Digital cellular telecommunications system (Phase 2+); Universal Mobile Telecommunications System (UMTS); LTE; Audio codec processing functions; Extended Adaptive Multi-Rate-Wideband (AMR-WB+) codec; Transcoding functions (3GPP TS 26.290 version 9.0.0 release 9), Jan. 2010, Chapter 5.3, pp. 24-39.
Britanak, et al., “A new fast algorithm for the unified forward and inverse MDCT/MDST computation”, Signal Processing, vol. 82, Mar. 2002, pp. 433-459.
Herley, C. et al., “Tilings of the Time-Frequency Plane: Construction of Arbitrary Orthogonal Bases and Fast Tilings Algorithms”, IEEE Transactions on Signal Processing, vol. 41, No. 12, Dec. 1993, pp. 3341-3359.
Lefebvre, R. et al., “High quality coding of wideband audio signals using transform coded excitation (TCX)”, 1994 IEEE International Conference on Acoustics, Speech, and Signal Processing, Apr. 19-22, 1994, pp. I/193 to I/196 (4 pages).
Related Publications (1)
Number Date Country
20130332152 A1 Dec 2013 US
Provisional Applications (1)
Number Date Country
61442632 Feb 2011 US
Continuations (1)
Number Date Country
Parent PCT/EP2012/052395 Feb 2012 US
Child 13966536 US