EP1145227B1 - Verfahren und vorrichtung zum verschleiern eines fehlers in einem codierten audiosignal und verfahren und vorrichtung zum decodieren eines codierten audiosignals - Google Patents

Verfahren und vorrichtung zum verschleiern eines fehlers in einem codierten audiosignal und verfahren und vorrichtung zum decodieren eines codierten audiosignals Download PDF

Info

Publication number
EP1145227B1
EP1145227B1 EP00926896A EP00926896A EP1145227B1 EP 1145227 B1 EP1145227 B1 EP 1145227B1 EP 00926896 A EP00926896 A EP 00926896A EP 00926896 A EP00926896 A EP 00926896A EP 1145227 B1 EP1145227 B1 EP 1145227B1
Authority
EP
European Patent Office
Prior art keywords
sub
spectral
spectral coefficients
band
coefficients
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
EP00926896A
Other languages
English (en)
French (fr)
Other versions
EP1145227A1 (de
Inventor
Pierre Lauber
Martin Dietz
Jürgen HERRE
Reinhold BÖHM
Ralph Sperschneider
Daniel Homm
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Original Assignee
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV filed Critical Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Publication of EP1145227A1 publication Critical patent/EP1145227A1/de
Application granted granted Critical
Publication of EP1145227B1 publication Critical patent/EP1145227B1/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm

Definitions

  • the present invention relates to coding or Decoding audio signals and in particular on obfuscation of errors ("Error Concealment”) in digital encoded audio signals.
  • Muting method also known as "muting" becomes.
  • a decoder detects that data is missing or incorrect the playback is switched off.
  • the Missing data are thus replaced by a zero signal. This avoids that due to a transmission error too loud or unpleasant noises from a decoder become. This is due to psychoacoustic effects sudden drop and rise in signal energy when the decoder outputs error-free data again, but as felt uncomfortable.
  • Spectral values in a block are incorrect, so can these spectral values based on the spectral values of a previous blocks or several previous blocks predicted, d. H. be predicted or estimated.
  • the predicted spectral values correspond within certain limits the incorrect spectral values when the audio signal is relative is stationary, d. H. if the audio signal is not like that undergoes rapid changes in the signal envelope.
  • a according to the MPEG-AAC standard ISO / IEC 13818-7 MPEG-2 Advanced Audio Coding
  • spectral value Prediction will therefore be 1024 in parallel working predictors in the decoder needed to e.g. B. in In the event of a complete block failure ("frame loss") to be able to predict all spectral values.
  • a disadvantage of this method is the relatively high computing effort, which is currently receiving real-time decoding of a Multimedia or audio data signal impossible.
  • MDCT modified discrete cosine transformation
  • DE 40 34 017 A1 relates to a method for recognition errors in the transmission of frequency-coded digital signals.
  • the frequency coefficient previous and possibly future blocks an error function formed on the basis of which the occurrence of an error is determined. An incorrect frequency coefficient will no longer used for the evaluation of subsequent blocks.
  • DE 197 35 675 A1 discloses a method for concealing errors in an audio data stream. For this, the spectral energy of a subset of intact audio data calculated. After creating a template for replacement data based on those calculated for the subset of the intact audio data spectral energy will be substitute data for faulty or non-existent audio data belonging to the subgroup correspond, generated based on the template.
  • the object of the present invention is a precise and flexible error concealment for audio signals to create that implemented with limited computational effort can be.
  • This task is accomplished by a method of disguising a Fault according to claim 1 and a device for Disguising an error according to claim 12 solved.
  • Another object of the present invention is a robust and flexible decoding of audio signals to accomplish.
  • This task is accomplished by a method for decoding a encoded audio signal according to claim 10 and by a Device for decoding an encoded audio signal according to Claim 13 solved.
  • the present invention is based on the finding that that the disadvantages of the spectral-value prediction, which in the dependence on the transformation algorithm used and depending on the window shape and block length exist, can be avoided that for Error concealment a prediction is used, which in "Quasi" time range works.
  • a set of spectral values preferably a long block or one Corresponds to the number of short blocks, divided into subbands.
  • a subband of the current set of spectral coefficients can then undergo a backward transformation to obtain a time signal that corresponds to the spectral coefficient of the subband.
  • For generation of estimates for a subsequent set of spectral coefficients is a prediction based on the Time signal of this subband performed.
  • this prediction is in the quasi-time range takes place because the temporal signal on which Basis of which the prediction is made, only that Time signal of a subband of the encoded audio signal and not the time signal of the entire spectrum of the audio signal is.
  • the time signal generated by prediction becomes one Subjected to forward transformation to estimated, i.e. H. predicted Spectral coefficients for the subband of the following Obtain set of spectral coefficients. Now it is found that in the following set of spectral coefficients one or more incorrect spectral coefficients , the incorrect spectral coefficients can be caused by the estimated, d. H. predicted, spectral coefficients be replaced.
  • the inventive method for concealing Errors require less computing effort because of the Grouping of spectral coefficient predictions only for each subband and no longer for each spectral coefficient must be carried out.
  • the invention provides Processes high flexibility because of the properties of the signals to be processed are taken into account can be.
  • noise substitution according to the present invention works especially good for tonal signals.
  • tonal signal components tend to be in the lower frequency range Range of the spectrum of an audio signal occur while the higher-frequency signal components tend to be non-stationary, d. H. are intoxicated.
  • "Noisy signal components” are signal components in the sense of the present description that are not very stationary. These noisy signal components do not necessarily have to have noise in the classic Represent meaning, but only rapidly changing Useful signals.
  • This feature of the present invention compares to a complete transformation of the whole Audio signal in the time domain and a prediction of the whole temporal audio signal from block to block below Using a so-called "long-term" predictor one represents significant advantage, since the advantages according to the invention the prediction in the time domain with the advantages of the spectral Decomposition can be combined.
  • Spectral decomposition only allows properties of the audio signal that are dependent on the frequency. The Number of subbands that are used when dividing the set of Spectral coefficients are generated, can be selected as desired. If only two subbands are selected, the result is already the advantage of considering the tonality in the lower Frequency range of the audio signal.
  • the method according to the invention is particularly suitable good for a combination with an error concealment technique, which is described in DE 197 35 675 A1, those for the substitution of noisy signal components suitable is. If tonal signal components of a missing Blocks obscured by the inventive method, and become noisy signal components through the just mentioned known methods that on an energy similarity between builds substituted data and intact data, combines, so completely failed blocks can almost be inaudibly obscured by a normal listener.
  • Fig. 1 shows a block diagram of a decoder according to one preferred embodiment of the present invention.
  • the decoder block diagram shown in Fig. 1 corresponds basically the MPEG-2 AAC decoder, as in Standard MPEG-2 AAC 13818-7 is set.
  • the encoded audio signal first gets into a bitstream demultiplexer 100 to separate spectral data and side information.
  • the Huffman encoded spectral coefficients are then in a Huffman decoder 200 is input to from the Huffman code words to obtain quantized spectral values.
  • the quantized spectral values are then converted into an inverse Quantizer 300 fed in and then by scale factor band multiplied by corresponding scale factors.
  • the encoder according to the invention can follow the inverse quantizer 300 several other functionalities have, such as B. a middle / side step, a predictor step, a TNS level etc. as specified in the standard.
  • the present Invention comprises the decoder immediately before a synthesis filter bank 400 an error concealer 500, which works according to the invention and ensures that the Effects of transmission errors in the encoded audio signal, which is fed into the bitstream demultiplexer 100 will be alleviated or made completely inaudible can.
  • the error concealer does 500 that transmission errors disguised become, d. H. that they are in a temporal audio signal on Synthesis filter bank output not or only weakly are audible.
  • the error encryption facility 500 also includes a parallel branch, around the input spectral coefficients below Bypassing the reverse transformer 502, the Means for generating estimates 504 and the forward transform means 506 directly from the entrance to To direct output.
  • This parallel branch includes one Time delay stage 510 to ensure that behind forward transformer 506 estimated spectral coefficients for a subsequent block at the same time with "real", possibly faulty Spectral coefficients for the following block on one Error selection facility 512 may be pending incorrect spectral coefficients in the real spectral coefficients for the following block by estimated spectral coefficients to be able to replace for the following block.
  • This spectral value replacement is by a Switch symbol 512 shown in Fig. 2. It was on it indicated that the error replacement device 512 either spectral value or block or block can work. Depending on the requirement, the same can also work sub-band.
  • the error replacement device 512 At the exit of the error replacement device 512 then lies the following set of spectral coefficients in which may have been originally incorrect Spectral coefficients through estimated spectral coefficients have been replaced, d. H. in which errors are obscured.
  • the circuit shown in FIG. 2 is a device upstream for subdivision into subbands.
  • the error replacement device 512 is a device to undo the division into subbands downstream, such that the filter bank 400 (Fig. 1) one "normal" set of spectral coefficients obtained without anything from the previous concealment of errors notice.
  • the error concealment device 500 (FIG. 1) thus includes a plurality of those described with reference to FIG. 2 Circuits, one circuit for each Subband.
  • the parallel circuits are on the input side connected by the partitioning device and on the output side through the undo facility Subdivision as detailed later.
  • FIG. 7 includes a time axis 700, the extent of a long block 702 is shown is.
  • a long block contains 2048 samples, from which 1024 spectral coefficients result if a 50% Window overlap is used as is known. Background information on the modified discrete cosine transformation used (MDCT) and the window overlap itself in the standard already cited.
  • MDCT modified discrete cosine transformation used
  • Fig. 7 are also eight short blocks 704 are drawn, each 256 Samples back to due to the 50% overlap 128 spectral coefficients.
  • the overlap of the short Blocks as well as the overlap of the long block with one preceding long block or with a preceding one or a subsequent start or stop window located.
  • the number of spectral coefficients of a long block equal to eight times the number of spectral coefficients of a short block. In other words, includes long block the same duration of the audio signal as eight short blocks.
  • the backward transformation means 502 via block type line 508 such controlled to have eight consecutive backward transformations of the spectral coefficients in corresponding Sub-bands of short blocks and the the quasi-time signals obtained simply line up in series, around means 504 for generating estimated values to be supplied with a time signal of a certain length.
  • the forward transformation device 506 again eight consecutive forward transformations perform, one after the other, with the values given by the means 504 for generating estimated values serially be issued.
  • this "duty cycle" requires that in the case of short blocks, the same number of spectral coefficients is spent, as in the case of long Blocks.
  • the spectral coefficients generated by the error concealer 500 spent in a "duty cycle" are in the sense of the present invention as Denoted set of estimated spectral coefficients.
  • the number of spectral coefficients corresponds in a set the number of spectral coefficients in a long block and the number of spectral coefficients of eight short blocks. Of course can be any other relationship between long and short block, for example 2, 4 or 16. Usually the situation will be such that the number the spectral coefficients of a long block through the Number of spectral coefficients of a short block divisible is.
  • Case would be the number of a set of spectral coefficients the smallest common multiple of correspond to long and short block, such that independence of the block type at the predictor level, d. H. in the Device 504 for generating estimated values has been reached becomes.
  • Fig. 3 is discussed, which is a preferred one Further development of the error concealment device of Fig. 2.
  • the error concealment device a noise generator 514 extended depending on a prediction gain signal 516 instead of with the forward transformation device 506 the error replacement device via a noise substitution switch 518 can be connected.
  • the Noise Substitution Device 514 works according to that in DE 197 35 675 A1 described method to get noisy signal components in the Approach audio signal. Since it is noisy spectral components is no longer the phase of the spectral coefficients considered, but only the energy several spectral coefficients in a subgroup.
  • the Noise generator 514 generates depending on the Energy in a subset of the most recent ones intact audio data a corresponding subset of Spectral coefficients, the energy in the subgroup the generated spectral coefficients of the energy of the corresponding Subset of the previous spectral coefficients corresponds to or is derived from the same.
  • the phases of spectral coefficients generated in the noise replacement however set at random.
  • Noise substitution switch 518 is provided by a prediction gain signal 516 controlled.
  • the prediction gain relates on the ratio of the output signal of the Means 504 for generating estimates of the input signal. Is it found that the Output signal differs relatively little from the input signal, it can be assumed that the audio signal relatively stationary in this subband, i. H. tonal, is. In contrast, the output signal of the predictor differs very strongly from the input signal, so it can be assumed become that the signal is transient, d. H. atonal or intoxicating. In this case there is a noise replacement deliver better results than a prediction, because noisy Signals per se cannot be reliably predicted can.
  • the noise substitution switch 518 can be controlled such that it is the forward transformation device 506 with the error replacement facility 512 connects when the prediction gain a certain one Threshold exceeds, or that the noise replacement device 514 connected to the error replacement device 512 if the prediction gain falls below this threshold, to optimize both substitution processes combine.
  • a current set of spectral coefficients received (10). 4 is shown assumed for reasons of clarity that the current Set of spectral coefficients only intact Has spectral coefficients or already an error concealment method subjected to Fig. 2 or 3 has been.
  • the current set of spectral coefficients will be processed on the one hand by the filter bank 400 (FIG. 1) and output to a loudspeaker, for example (12). on the other hand becomes the current set of spectral coefficients used a following set of spectral coefficients predict, d. H. to estimate or to predict.
  • a division of the current Set of spectral coefficients performed in subbands (14).
  • the subdivision takes place in subbands in such a way that only one subband per set is generated with a corresponding frequency range.
  • the current set of spectral coefficients a plurality of successive ones complete spectra. Then in the crotch 14 corresponding subbands for each complete spectrum generated, d. H. several per set of spectral coefficients Sub-bands.
  • the prediction 18 takes place in the quasi-time range, i. H. for each subband "time" signal to an estimated subband time signal to get for the following sentence.
  • This esteemed Quasi-time signal then becomes one again Undergone forward transformation 20, the forward transformation for a long block again only once is executed or for short blocks N times, where N is the Relationship between the number of spectral coefficients long blocks to the number of spectral coefficients of a short block.
  • step 20 there are estimated for each subband Spectral coefficients.
  • step 22 the in the subdivision introduced in step 14 is reversed again made such that after step 22 a following sentence of spectral coefficients is present.
  • step 24 the decoder does the following Set of spectral coefficients received.
  • This sentence will error detection 26 to determine if one spectral coefficient, several spectral coefficients or even all spectral coefficients of the following set are incorrect are.
  • the flow chart of Fig. 4 represents a snapshot, so to speak processing a set of spectral coefficients to a next set of spectral coefficients If the flowchart of FIG. 4 is implemented, for example, of course, only one Filter bank 400 (FIG. 1) used to complete steps 12 and 30 perform. Of course, only one will be the same only device for receiving the current set of Spectral coefficients or to receive the following Set of spectral coefficients may be required to obtain the Implement steps 10 and 24.
  • Fig. 5 shows a more detailed representation of the general 2 using the example of an MPEG-2 AAC transform encoder, the fault concealment device according to the invention 500 has.
  • the Error concealment device 500 (FIG. 1) 520 for dividing the blocks of spectral coefficients in preferably 32 subbands.
  • each subband has 32 spectral coefficients.
  • the subbands the short blocks cover the same frequency ranges, in the case of short blocks each subband has 4 Spectral coefficients.
  • Every subband will then an inverse modified discrete cosine transform subjected.
  • the IMDCT runs once and receives 32 input values.
  • eight are consecutive IMDCTs performed, each with 4 of the spectral coefficients, such that there are again 32 quasi-time samples at the output result. These then become the predictor 504 supplied, which in turn estimated 32 quasi-time samples generated, which are transformed using the MDCT 506.
  • a single MDCT with 32 temporal values performed while in the case of short Blocks eight consecutive MDCTS with each 4 samples can be executed.
  • the subbands have different lengths, they are The regulations of the IMDCT and MDCT have been adapted accordingly. For one practical implementation offers a parallel Processing. Of course, there is also one serial processing of the subbands possible in succession, if appropriate storage capacities are provided.
  • the output values of the MDCT 506 for each subband are shown in means 522 for undoing the subdivision, d. H. fed into an inverse subdivision device, um in the case of the preferred embodiment at the AAC-MDCT level an estimated set of spectral values issue.
  • the LMSL predictor 504a is a time delay stage 504b upstream.
  • Predictor 504 includes on the input side also a parallel-serial converter 504c and on the output side a serial-to-parallel converter 504d.
  • the predictor 504 also has a prediction gain calculator 504e, which is the output signal of the predictor 504a compared to the input signal to determine whether a stationary signal or a transient signal has been processed.
  • the prediction profit calculator 504e supplies the prediction gain signal on the output side 516, which is used to control the switch 518 (FIG. 3) is used to either predict spectral coefficients or spectral coefficients obtained by noise substitution to be used for concealing errors.
  • the predictor 504 also includes two in its implementation as an LMSL predictor Switches 504f and 504g, which have two switch positions. The switch position "1" affects the case that spectral coefficients of the following block are correct while the switch position "2" relates to the case that spectral coefficients of the following sentence are incorrect.
  • Fig. 6 shows the case where the spectral coefficients are faulty.
  • the switch is held at 504g of the input signal is a reference signal with a value of 0 fed into the predictor.
  • the output values of the parallel-serial converter fed into the LMSL predictor from below.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)

Description

Die vorliegende Erfindung bezieht sich auf das Codieren bzw. Decodieren von Audiosignalen und insbesondere auf die Verschleierung von Fehlern ("Error Concealment") in digital codierten Audiosignalen.
Mit zunehmender Verbreitung moderner Audiocodierer und entsprechender Audiodecodierer, die nach einem der MPEG-Standards arbeiten, hat die Übertragung von codierten Audiosignalen über Funknetze oder über leitungsgebundene Netze, wie z. B. das Internet, bereits eine große Bedeutung erlangt. Bei der Übertragung von codierten Audiosignalen mittels digitalem Rundfunk aber auch beim Übertragen von Audiosignalen über leitungsgebundene Netze liegt ein nicht-idealer Übertragungskanal vor, der dazu führen kann, daß codierte Audiosignale während der Übertragung gestört werden. Daher stellt sich decodiererseitig die Aufgabe, wie mit Übertragungsfehlern umgegangen werden soll, bzw. wie Übertragungsfehler "verschleiert" werden sollen. Die Fehlerverschleierung dient dazu, Übertragungsfehler auf irgendeine Art und Weise zu manipulieren, um den subjektiven Höreindruck eines solchen fehlerbehafteten decodierten Audiosignales zu verbessern.
Mehrere Fehlerverschleierungsverfahren sind bereits bekannt. Die einfachste Art der Fehlerverschleierung besteht in dem Verfahren der Stummschaltung, das auch als "Muting" bezeichnet wird. Erkennt ein Decodierer, daß Daten fehlen oder fehlerhaft sind, so schaltet derselbe die Wiedergabe ab. Die fehlenden Daten werden somit durch ein Null-Signal ersetzt. Damit wird vermieden, daß aufgrund eines Übertragungsfehlers zu laute bzw. unangenehme Geräusche eines Decodierers ausgegeben werden. Aufgrund psychoakustischer Effekte wird dieses plötzliche Abfallen und Ansteigen der Signalenergie, wenn der Decodierer wieder fehlerfreie Daten ausgibt, dennoch als unangenehm empfunden.
Ein anderes bekanntes Verfahren, das den plötzlichen Abfall und Wiederanstieg der Signalenergie vermeidet, ist das Verfahren der Datenwiederholung. Fällt beispielsweise ein Block oder mehrere Blöcke von Audiodaten aus, so wird ein Teil der zuletzt gesendeten Daten in einer Schleife wiederholt, bis wieder fehlerfreie, d. h. intakte Audiodaten vorliegen. Dieses Verfahren führt jedoch zu störenden Artefakten. Werden nur kurze Teile des Audiosignals wiederholt, so klingt das repetierte Signal unabhängig vom Orginalsignal maschinenartig mit einer Grundfrequenz bei der Wiederholfrequenz. Werden längere Teile wiederholt, entstehen bestimmte Echoeffekte, die ebenfalls als störend empfunden werden.
Bei blockorientierten Transformationscodierern/-decodierern, bei denen eine spektrale Darstellung eines zeitlichen Audiosignals verwendet wird, würde ferner die Möglichkeit bestehen, eine spektralwertweise Prädiktion im Falle von fehlerhaften Audiodaten durchzuführen. Wird festgestellt, daß Spektralwerte in einem Block fehlerhaft sind, so können diese Spektralwerte basierend auf den Spektralwerten eines vorausgehenden Blocks oder mehrerer vorausgehender Blöcke prädiziert, d. h. vorhergesagt oder abgeschätzt werden. Die prädizierten Spektralwerte entsprechen in gewissen Grenzen den fehlerhaften Spektralwerten, wenn das Audiosignal relativ stationär ist, d. h. wenn das Audiosignal keinen so schnellen Änderungen der Signaleinhüllenden unterzogen ist. Wenn beispielsweise ein nach dem MPEG-AAC-Standard (ISO/IEC 13818-7 MPEG-2 Advanced Audio Coding) arbeitendes Verfahren betrachtet wird, so hat ein normaler Block von codierten Audiodaten 1024 Spektralwerte. Beim Verfahren der spektralwertweisen Prädiktion werden daher 1024 parallel arbeitende Prädiktoren im Decodierer benötigt, um z. B. im Falle eines vollständigen Blockausfalls ("Frame Loss") sämtliche Spektralwerte prädizieren zu können.
Ein Nachteil dieses Verfahrens ist der relativ hohe Rechenaufwand, der derzeit eine Echtzeit Decodierung eines empfangenen Multimedia- oder Audiodatensignals unmöglich macht.
Ein weiterer wesentlicher Nachteil dieses Verfahrens wird durch den verwendeten Transformationsalgorithmus, die modifizierte diskrete Cosinustransformation (MDCT), bedingt. Es ist allgemein bekannt, daß der MDCT-Algorithmus kein ideales Fourier-Spektrum liefert, sondern ein "Spektrum", das sich von einem idealen Fourier- Spektrum unterscheidet. Untersuchungen haben gezeigt, daß z. B. eine Sinus-Zeitfunktion, die ein Fourier-Spektrum aufweist, das eine einzige Spektrallinie bei der Frequenz der Sinusfunktion hat, ein MDCT-"Spektrum" hat, das zwar bei der Frequenz der Sinusfunktion einen dominierenden Spektralkoeffizienten hat, das jedoch zusätzlich weitere Spektralkoeffizienten bei anderen Frequenzwerten aufweist. Außerdem ist die Höhe eines MDCT-"Spektrums" einer Sinusfunktion nicht von Block zu Block gleich, sondern dieselbe schwankt von Block zu Block. Eine weitere Tatsache ist, daß die MDCT-Transformation nicht streng energieerhaltend ist. So kann festgehalten werden, daß die MDCT-Transformation zwar zusammen mit einer inversen MDCT-Transformation exakt arbeitet, daß jedoch das MDCT-Spektrum wesentliche Unterschiede zu einem Fourier-Spektrum hat. Eine spektralwertweise Prädiktion von MDCT-Spektralkoeffizienten hat sich daher als unzureichend herausgestellt, wenn qualitativ hochwertige Anforderungen gestellt werden.
Ein weiterer Nachteil der spektralwertweisen Prädiktion insbesondere in Verbindung mit modernen Audiocodierverfahren besteht darin, daß moderne Audiocodierverfahren unterschiedliche Fensterlängen bzw. Fensterformen verwenden. Um zu vermeiden, daß sich bei schnellen Änderungen des zu codierenden Audiosignals, d. h. bei Transienten oder Anschlägen, das durch die Quantisierung der MDCT-Spektralkoeffizienten eingeführte Quantisierungsrauschen über eine langen Block "verschmiert", d. h. daß sogenannte Vorechos auftreten, verwenden moderne Transformationscodierer bei transienten Audiosignalen, d. h. Audiosignalen mit Anschlägen, kurze Fenster, um die zeitliche Auflösung auf Kosten der Frequenzauflösung zu erhöhen. Dies führt aber dazu, daß bei einer spektralwertweisen Prädiktion ständig sowohl Fensterlänge als auch Fensterform (es existieren zudem Übergangsfenster, um eine Fensterung von kurzen zu langen Blöcken und umgekehrt einzuleiten) berücksichtigt werden müssen, was ebenfalls zu einer Verkomplizierung der spektralwertweisen Prädiktion beiträgt und die Recheneffizienz empfindlich beeinflussen würde.
Die DE 40 34 017 A1 bezieht sich auf ein Verfahren zum Erkennen von Fehlern bei der Übertragung von frequenzcodierten digitalen Signalen. Hierbei wird aus Frequenzkoeffizienten zurückliegender sowie ggf. zukünftiger Blöcke eine Fehlerfunktion gebildet, anhand derer das Auftreten eines Fehlers ermittelt wird. Ein fehlerhafter Frequenzkoeffizient wird für die Bewertung nachfolgender Blöcke nicht mehr herangezogen.
Die DE 197 35 675 A1 offenbart ein Verfahren zum Verschleiern von Fehlern in einem Audiodatenstrom. Hierzu wird die spektrale Energie einer Untergruppe von intakten Audiodaten berechnet. Nach dem Bilden einer Vorlage für Ersatzdaten aufgrund der für die Untergruppe der intakten Audiodaten berechneten spektralen Energie werden Ersatzdaten für fehlerhafte oder nicht vorhandene Audiodaten, die der Untergruppe entsprechen, aufgrund der Vorlage erzeugt.
Das Dokument "Fehlerverschleierung bei spektral codierten Audiosignalen", Jürgen Herre, Dissertation der Universität Erlangen-Nürnberg, 1995, offenbart eine Prädiktionskonfiguration zur Fehlerverschleierung bei spektral codierten Audiosignalen.
Die Aufgabe der vorliegenden Erfindung besteht darin, eine präzise und flexible Fehlerverschleierung für Audiosignale zu schaffen, die mit begrenztem Rechenaufwand implementiert werden kann.
Diese Aufgabe wird durch ein Verfahren zum Verschleiern eines Fehlers nach Patentanspruch 1 und eine Vorrichtung zum Verschleiern eines Fehlers nach Patentanspruch 12 gelöst.
Eine weitere Aufgabe der vorliegenden Erfindung besteht darin, eine fehlerrobuste und flexible Decodierung von Audiosignalen zu schaffen.
Diese Aufgabe wird durch ein Verfahren zum Decodieren eines codierten Audiosignals nach Patentanspruch 10 und durch eine Vorrichtung zum Decodieren eines codierten Audiosignals nach Patentanspruch 13 gelöst.
Der vorliegenden Erfindung liegt die Erkenntnis zugrunde, daß die Nachteile der spektralwertweisen Prädiktion, die in der Abhängigkeit von dem verwendeten Transformätionsalgorithmus und in der Abhängigkeit von Fensterform und Blocklänge bestehen, dadurch vermieden werden können, daß zur Fehlerverschleierung eine Prädiktion eingesetzt wird, die im "Quasi"-Zeitbereich arbeitet. Hierzu wird ein Satz von Spektralwerten, der vorzugsweise einem langen Block bzw. einer Anzahl von kurzen Blöcken entspricht, in Subbänder unterteilt. Ein Subband des aktuellen Satzes von Spektralkoeffizienten kann daraufhin einer Rückwärts-Transformation unterzogen werden, um ein Zeitsignal zu erhalten, das den Spektralkoeffizienten des Subbandes entspricht. Zur Erzeugung von Schätzwerten für einen darauffolgenden Satz von Spektralkoeffizienten wird eine Prädiktion auf der Basis des Zeitsignals dieses Subbandes durchgeführt.
Es sei darauf hingewiesen, daß diese Prädiktion im Quasi-Zeitbereich stattfindet, da das zeitliche Signal, auf der Basis dessen die Prädiktion durchgeführt wird, lediglich das Zeitsignal eines Subbandes des codierten Audiosignals und nicht das Zeitsignal des gesamten Spektrums des Audiosignals ist. Das mittels Prädiktion erzeugte Zeitsignal wird einer Vorwärtstransformation unterzogen, um geschätzte, d. h. prädizierte Spektralkoeffizienten für das Subband des folgenden Satzes von Spektralkoeffizienten zu erhalten. Wird nun festgestellt, daß in dem folgenden Satz von Spektralkoeffizienten einer oder mehrere fehlerhafte Spektralkoeffizienten sind, so können die fehlerhaften Spektralkoeffizienten durch die geschätzten, d. h. prädizierten, Spektralkoeffizienten ersetzt werden.
Im Gegensatz zur reinen spektralwertweisen Prädiktion erfordert das erfindungsgemäße Verfahren zum Verschleiern von Fehlern einen geringeren Rechenaufwand, da aufgrund der Gruppierung von Spektralkoeffizienten Prädiktionen nur noch für jedes Subband und nicht mehr für jeden Spektralkoeffizienten durchgeführt werden müssen. Außerdem liefert das erfindungsgemäße Verfahren eine hohe Flexibilität, da die Eigenschaften der zu verarbeitenden Signale berücksichtigt werden können.
Die Rauschsubstitution gemäß der vorliegenden Erfindung arbeitet besonders gut für tonale Signale. Es wurde jedoch herausgefunden, daß tonale Signalanteile eher im niederfrequenteren Bereich des Spektrums eines Audiosignals auftreten, während die höherfrequenten Signalanteile eher nichtstationär, d. h. rauschhaft, sind. "Rauschhafte Signalanteile" sind im Sinne der vorliegenden Beschreibung Signalanteile die wenig stationär sind. Diese rauschhaften Signalanteile müssen jedoch nicht unbedingt Rauschen im klassischen Sinn darstellen, sondern lediglich sich schnell verändernde Nutzsignale.
Zur weiteren Reduzierung des Rechenaufwands ermöglicht es die vorliegende Erfindung daher, lediglich niederfrequentere Signalanteile einer Prädiktion zu unterziehen, während höherfrequentere Signalanteile überhaupt nicht verarbeitet werden. In anderen Worten ausgedrückt ist es möglich, nur das bzw. die unteren Subbänder einer Rückwärtstransformation, einer Prädiktion und einer Vorwärtstransformtion zu unterziehen.
Diese Eigenschaft der vorliegenden Erfindung stellt im Vergleich zu einer vollständigen Transformation des gesamten Audiosignals in den Zeitbereich und einer Prädiktion des gesamten zeitlichen Audiosignals von Block zu Block unter Verwendung eines sogenannten "Long-Term"-Prädiktors einen wesentlichen Vorteil dar, da erfindungsgemäß die Vorteile der Prädiktion im Zeitbereich mit den Vorteilen der spektralen Zerlegung kombiniert werden. Nur die spektrale Zerlegung ermöglicht es, Eigenschaften des Audiosignals, die von der Frequenz abhängig sind, zu berücksichtigen. Die Anzahl der Subbänder, die beim Unterteilen des Satzes von Spektralkoeffizienten erzeugt wird, ist beliebig wählbar. Werden nur zwei Subbänder gewählt, so ergibt sich bereits der Vorteil der Berücksichtigung der Tonalität im unteren Frequenzbereich des Audiosignals. Werden dagegen sehr viele Subbänder gewählt, so wird der Prädiktor im Quasi-Zeitbereich eine relativ kurze Länge haben, derart, daß seine Verzögerung nicht allzu groß wird. Da die einzelnen Subbänder vorzugsweise parallel verarbeitet werden, wären bei einer Ausführung der vorliegenden Erfindung unter Verwendung eines festverdrahteten integrierten Schaltkreises viele parallele Prädiktorschaltungen notwendig.
Wird die vorliegende Erfindung im Zusammenhang mit einem Transformationscodierer eingesetzt, der unterschiedliche Blocklängen verwendet, so ergibt sich der Vorteil, daß der Prädiktor selbst von Blocklänge ("Frame Length") und Fensterform ("Window Shape") unabhängig ist. Außerdem wird durch die Rücktransformation die Abhängigkeit von dem verwendeten Transformationsalgorithmus selbst, die oben bezüglich der MDCT ausgeführt worden ist, eliminiert. Weiterhin liefert das erfindungsgemäße Konzept zur Fehlerverschleierung geschätzte Spektralkoeffizienten, die aufgrund der Rückwärtstransformation, der Prädiktion im Zeitbereich und der Vorwärtstransformation phasenrichtig sind, d. h. es treten keine Phasensprünge im Zeitsignal aufgrund eines prädizierten Spektralkoeffizienten gegenüber einem Zeitsignal eines vorausgehenden intakten Satzes von Spektralkoeffizienten auf. Damit können tonale Signale derart gut für fehlerhafte oder fehlende Signalanteile substituiert werden, daß ein üblicher Hörer in den allermeisten Fällen nicht einmal merkt, daß ein Fehler aufgetreten ist.
Schließlich eignet sich das erfindungsgemäße Verfahren besonders gut für eine Kombination mit einer Fehlerverschleierungstechnik, die in der DE 197 35 675 A1 beschrieben ist, die für die Substitution von rauschhaften Signalanteilen geeignet ist. Werden tonale Signalanteile eines fehlenden Blocks durch das erfindungsgemäße Verfahren verschleiert, und werden rauschhafte Signalanteile durch das eben erwähnte bekannte Verfahren, daß auf einer Energieähnlichkeit zwischen substituierten Daten und intakten Daten aufbaut, kombiniert, so können vollständig ausgefallene Blöcke nahezu unhörbar für einen normalen Hörer verschleiert werden.
Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend bezugnehmend auf die beiliegenden Zeichnungen detailliert erläutert. Es zeigen:
Fig. 1
einen Decodierer, der eine erfindungsgemäße Fehlerverschleierungseinrichtung aufweist;
Fig. 2
ein detaillierteres Blockschaltbild der Fehlerverschleierungseinrichtung von Fig. 1;
Fig. 3
ein detaillierteres Blockschaltbild der Fehlerverschleierungseinrichtung von Fig. 1, die zudem eine Rauschersetzung aufweist und basierend auf dem Prädiktionsgewinn arbeitet;
Fig. 4
ein Flußdiagramm für das erfindungsgemäße Verfahren zur Fehlerverschleierung;
Fig. 5
ein detailliertes Blockschaltbild eines bevorzugten Ausführungsbeispiels der Fehlerverschleierungseinrichtung für einen MPEG-2 AAC-Decodierer;
Fig. 6
ein detailliertes Blockschaltbild des Prädiktors von Fig. 5; und
Fig. 7
eine schematische Darstellung der Blockstruktur nach dem AAC-Standard.
Fig. 1 zeigt ein Blockschaltbild eines Decodierers gemäß einem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung. Das in Fig. 1 gezeigte Decodiererblockschaltbild entspricht grundsätzlich dem MPEG-2 AAC-Decodierer, wie er im Standard MPEG-2 AAC 13818-7 festgelegt ist. Das codierte Audiosignal gelangt zunächst in einen Bitstrom-Demultiplexer 100, um Spektraldaten und Seiteninformationen zu trennen. Die Huffman-codierten Spektralkoeffizienten werden dann in einen Huffman-Decodierer 200 eingespeist, um aus den Huffman-Codewörtern quantisierte Spektralwerte zu erhalten. Die quantisierten Spektralwerte werden anschließend in einen inversen Quantisierer 300 eingespeist und anschließend skalenfaktorbandweise mit entsprechenden Skalenfaktoren multipliziert. Der erfindungsgemäße Codierer kann im Anschluß an den inversen Quantisierer 300 mehrere weitere Funktionalitäten haben, wie z. B. eine Mitte/Seite-Stufe, eine Prädiktor-Stufe, eine TNS-Stufe usw. wie es im Standard festgelegt ist.
Gemäß einem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung umfaßt der Decodierer unmittelbar vor einer Synthese-Filterbank 400 eine Fehlerverschleierungseinrichtung 500, die erfindungsgemäß arbeitet und dafür sorgt, daß die Auswirkungen von Übertragungsfehlern in dem codierten Audiosignal, das in den Bitstrom-Demultiplexer 100 eingespeist wird, gelindert bzw. vollständig unhörbar gemacht werden können. Anders ausgedrückt bewirkt die Fehlerverschleierungseinrichtung 500, daß Übertragungsfehler verschleiert werden, d. h. daß sie in einem zeitlichen Audiosignal am Ausgang der Synthese-Filterbank nicht oder nur noch schwach hörbar sind.
Fig. 2 zeigt ein allgemeines Blockschaltbild der Fehlerverschleierungseinrichtung 500. Dieselbe umfaßt eine Rückwärtstransformationseinrichtung 502, eine Einrichtung 504 zur Erzeugung von Schätzwerten sowie eine Einrichtung 506 zur Vorwärtstransformation. Sowohl die Rückwärtstransformationseinrichtung 502 als auch die Vorwärtstransformationseinrichtung 506 sind abhängig von dem Blocktyp, der gerade vorliegt, über eine Blocktypleitung 508 steuerbar. Die Fehlerverschlüsselungseinrichtung 500 umfaßt ferner einen Parallelzweig, um die eingangsseitigen Spektralkoeffizienten unter Umgehung der Rückwärtstransformationseinrichtung 502, der Einrichtung zur Erzeugung von Schätzwerten 504 und der Vorwärtstransformationseinrichtung 506 direkt vom Eingang zum Ausgang zu leiten. Dieser Parallelzweig umfaßt eine Zeitverzögerungsstufe 510, um sicherzustellen, daß hinter der Vorwärtstransformationseinrichtung 506 vorliegende geschätzte Spektralkoeffizienten für einen folgenden Block gleichzeitig mit "realen", unter Umständen fehlerhaften Spektralkoeffizienten für den folgenden Block an einer Fehler-Auswahl-Einrichtung 512 anliegen, um eventuell fehlerhafte Spektralkoeffizienten in den realen Spektralkoeffizienten für den folgenden Block durch geschätzte Spektralkoeffizienten für den folgenden Block ersetzen zu können. Diese spektralwertweise Ersetzung ist durch ein Schaltersymbol 512 in Fig. 2 dargestellt. Es sei darauf hingewiesen, daß die Fehler-Ersetzungs-Einrichtung 512 entweder spektralwertweise oder block- bzw. satzweise arbeiten kann. Je nach Anforderung kann dieselbe auch subbandweise arbeiten. Am Ausgang der Fehler-Ersetzungs-Einrichtung 512 liegt dann der folgende Satz von Spektralkoeffizienten vor, in dem eventuell ursprünglich fehlerhafte Spektralkoeffizienten durch geschätzte Spektralkoeffizienten ersetzt worden sind, d. h. in dem Fehler verschleiert sind.
An dieser Stelle sei darauf hingewiesen, daß das Blockschaltbild, das in Fig. 2 gezeigt ist, lediglich einen Teil der Fehlerverschleierungseinrichtung 500 darstellt. Diese Darstellung wurde jedoch aus Übersichtlichkeitsgründen gewählt. Wie es in Fig. 5 anhand eines bevorzugten Ausführungsbeispiels der vorliegenden Erfindung näher erläutert werden wird, ist der in Fig. 2 gezeigten Schaltung eine Einrichtung zur Unterteilung in Subbänder vorgeschaltet. Analog dazu ist der Fehler-Ersetzungs-Einrichtung 512 eine Einrichtung zum Rückgängigmachen der Unterteilung in Subbänder nachgeschaltet, derart, daß die Filterbank 400 (Fig. 1) einen "normalen" Satz von Spektralkoeffizienten erhält, ohne von der vorausgegangenen Fehlerverschleierung irgendetwas zu merken. Die Fehlerverschleierungseinrichtung 500 (Fig. 1) umfaßt somit eine Mehrzahl von bezugnehmend auf Fig. 2 beschriebenen Schaltungen, und zwar eine Schaltung für jedes Subband. Die parallelen Schaltungen sind eingangsseitig durch die Einrichtung zum Unterteilen verbunden und ausgangsseitig durch die Einrichtung zum Rückgängigmachen der Unterteilung, wie es später detailliert ausgeführt wird.
Es wurde bereits früher darauf hingewiesen, daß moderne Transformationscodierer zur Erhöhung der zeitlichen Auflösung im Falle von Transienten in einem zu codierenden Audiosignal kurze Fenster verwenden. Dabei ist es gebräuchlich, daß die Anzahl der zeitlichen Abtastwerte bzw. die Anzahl der Spektralkoeffizienten in einem langen Fenster bzw. Block ein ganzzahliges Vielfaches der Anzahl von zeitlichen Abtastwerten bzw. Spektralkoeffizienten in einem kurzen Fenster bzw. Block darstellt. Ein vorteilhafter Effekt der vorliegenden Erfindung besteht darin, daß die Einrichtung 504 zur Erzeugung von Schätzwerten unabhängig von der verwendeten Transformation, von der verwendeten Blocklänge bzw. von dem verwendeten Fenstertyp arbeiten kann. Daher werden sowohl die Rückwärtstransformationseinrichtung 502 als auch die Vorwärtstransformationseinrichtung 506 Blocktyp-abhängig gesteuert, um der Einrichtung 504 zur Erzeugung von Schätzwerten immer dieselbe Anzahl von zeitlichen Abtastwerten zuzuführen bzw. von derselben abzuführen.
Zur weiteren Veranschaulichung dieser Eigenschaft wird nachfolgend auf Fig. 7 Bezug genommen, um die Situation für MPEG-2 AAC darzustellen. Fig. 7 umfaßt eine Zeitachse 700, bezüglich der die Ausdehnung eines langen Blocks 702 dargestellt ist. Ein langer Block umfaßt 2048 Abtastwerte, woraus sich 1024 Spektralkoeffizienten ergeben, wenn eine 50%-ige Überlappung der Fenster eingesetzt wird, wie es bekannt ist. Hintergründe zur verwendeten modifizierten diskreten Cosinus-Transformation (MDCT) und der Fensterüberlappung finden sich in dem bereits zitierten Standard. In Fig. 7 sind ferner acht kurze Blöcke 704 eingezeichnet, von denen jeder 256 Abtastwerte aufweist, um wieder aufgrund der 50%-igen Überlappung 128 Spektralkoeffizienten zu ergeben. Aus Übersichtlichkeitsgründen wurde in Fig. 7 die Überlappung der kurzen Blöcke sowie die Überlappung des langen Blocks mit einem vorausgehenden langen Block bzw. mit einem vorausgehenden oder einem nachgeschalteten Start- bzw. Stoppfenster nicht eingezeichnet. Auf jeden Fall ist aus Fig. 7 ersichtlich, daß die Anzahl der Spektralkoeffizienten eines langen Blocks gleich dem achtfachen der Anzahl der Spektralkoeffizienten eines kurzen Blocks ist. Anders ausgedrückt umfaßt ein langer Block dieselbe Zeitdauer des Audiosignals wie acht kurze Blöcke.
Wie es in Fig. 2 gezigt ist, wird die Rückwärtstransformationseinrichtung 502 über die Blocktypleitung 508 derart gesteuert, daß sie acht zeitlich aufeinanderfolgende Rückwärtstransformationen der Spektralkoeffizienten in entsprechenden Subbändern von kurzen Blöcken durchführt und die gewonnenen Quasi-Zeitsignale einfach seriell aneinanderreiht, um die Einrichtung 504 zur Erzeugung von Schätzwerten mit einem Zeitsignal einer bestimmten Länge zu versorgen. Analog dazu wird die Vorwärtstransformationseinrichtung 506 wieder acht aufeinanderfolgende Vorwärtstransformationen durchführen, und zwar nacheinander mit den Werten, die von der Einrichtung 504 zum Erzeugen von Schätzwerten seriell ausgegeben werden. Somit bedingt dieser "Arbeitszyklus", daß im Falle von kurzen Blöcken dieselbe Anzahl von Spektralkoeffizienten ausgegeben wird, wie im Falle von langen Blöcken. Die Spektralkoeffizienten, die durch die Fehlerverschleierungseinrichtung 500 in einem "Arbeitszyklus" ausgegeben werden, werden im Sinne der vorliegenden Erfindung als Satz von geschätzten Spektralkoeffizienten bezeichnet. Aus Praktikabilitätsgründen entspricht die Anzahl der Spektralkoeffizienten in einem Satz der Anzahl der Spektralkoeffizienten in einem langen Block und der Anzahl der Spektralkoeffizienten von acht kurzen Blöcken. Selbstverständlich können beliebige andere Verhältnisse zwischen langem und kurzem Block verwendet werden, beispielsweise 2, 4 oder 16. Üblicherweise wird die Situation derart sein, daß die Anzahl der Spektralkoeffizienten eines langen Blocks durch die Anzahl der Spektralkoeffizienten eines kurzen Blocks teilbar ist. Sollte dies jedoch aus irgendeinem Grunde nicht der Fall sein, so würde die Anzahl eines Satzes von Spektralkoeffizienten dem kleinsten gemeinsamen Vielfachen von langem und kurzem Block entsprechen, derart, daß Unabhängigkeit vom Blocktyp auf Prädiktorebene, d. h. bei der Einrichtung 504 zur Erzeugung von Schätzwerten, erreicht wird.
Im Nachfolgenden wird auf Fig. 3 eingegangen, die eine bevorzugte Weiterbildung der Fehlerverschleierungseinrichtung von Fig. 2 darstellt. Insbesondere ist die Fehlerverschleierungseinrichtung um eine Rauschersetzungseinrichtung 514 erweitert, die abhängig von einem Prädiktionsgewinnsignal 516 statt mit der Vorwärtstransformationseinrichtung 506 mit der Fehler-Ersetzungs-Einrichtung über einen Rauschersetzungsschalter 518 verbunden werden kann. Die Rauschersetzungseinrichtung 514 arbeitet nach dem in der DE 197 35 675 A1 beschriebenen Verfahren, um rauschhafte Signalanteile im Audiosignal anzunähern. Da es sich um rauschhafte Spektralanteile handelt, wird nicht mehr die Phase der Spektralkoeffizienten berücksichtigt, sondern lediglich die Energie mehrerer Spektralkoeffizienten in einer Untergruppe. Die Rauschersetzungseinrichtung 514 erzeugt abhängig von der Energie in einer Untergruppe der zuletzt vorhandenen intakten Audiodaten eine entsprechende Untergruppe von Spektralkoeffizienten, wobei die Energie in der Untergruppe der erzeugten Spektralkoeffizienten der Energie der entsprechenden Untergruppe der vorausgehenden Spektralkoeffizienten entspricht bzw. aus derselben abgeleitet ist. Die Phasen der bei der Rauschersetzung erzeugten Spektralkoeffizienten werden jedoch zufällig festgelegt.
Der Rauschersetzungsschalter 518 wird durch ein Prädiktionsgewinnsignal 516 gesteuert. Allgemein bezieht sich der Prädiktionsgewinn auf das Verhältnis des Ausgangssignals der Einrichtung 504 zur Erzeugung von Schätzwerten zum Eingangssignal. Wird festgestellt, daß sich in einem Subband das Ausgangssignal relativ wenig von dem Eingangssignal unterscheidet, so kann davon ausgegangen werden, daß das Audiosignal in diesem Subband relativ stationär, d. h. tonal, ist. Unterscheidet sich dagegen das Ausgangssignal des Prädiktors sehr stark vom Eingangssignal, so kann davon ausgegangen werden, daß das Signal instationär ist, d. h. atonal oder rauschhaft. In diesem Fall wird eine Rauschersetzung bessere Ergebnisse liefern als eine Prädiktion, da rauschhafte Signale per se nicht zuverlässig vorhergesagt werden können. So könnte beispielsweise der Rauschersetzungschalter 518 derart gesteuert werden, daß er die Vorwärtstransformationseinrichtung 506 mit der Fehler-Ersetzungs-Einrichtung 512 verbindet, wenn der Prädiktionsgewinn eine bestimmte Schwelle überschreitet, bzw. daß die Rauschersetzungseinrichtung 514 mit der Fehler-Ersetzung-Einrichtung 512 verbunden wird, wenn der Prädiktionsgewinn diese Schwelle unterschreitet, um beide Substitutionsverfahren optimal zu kombinieren.
Im Nachfolgenden wird bezugnehmend auf Fig. 4 auf das Verfahren der erfindungsgemäßen Rauschsubstitution näher eingegangen. Zunächst wird ein aktueller Satz von Spektralkoeffizienten empfangen (10). Bei der Darstellung von Fig. 4 wird aus Übersichtlichkeitsgründen davon ausgegangen, daß der aktuelle Satz von Spektralkoeffizienten ausschließlich intakte Spektralkoeffizienten aufweist oder aber bereits einem Fehlerverschleierungsverfahren nach Fig. 2 oder 3 unterzogen worden ist. Der aktuelle Satz von Spektralkoeffizienten wird einerseits von der Filterbank 400 (Fig. 1) verarbeitet und beispielsweise an einen Lautsprecher ausgegeben (12). Andererseits wird der aktuelle Satz von Spektralkoeffizienten dazu verwendet, einen folgenden Satz von Spektralkoeffizienten vorherzusagen, d. h. zu schätzen bzw. zu prädizieren. Dazu wird erfindungsgemäß eine Unterteilung des aktuellen Satzes von Spektralkoeffizienten in Subbänder durchgeführt (14). Im Falle eines langen Blockes findet die Unterteilung in Subbänder derart statt, daß pro Satz lediglich ein Subband mit einem entsprechenden Frequenzbereich erzeugt wird. Im Falle von kurzen Blöcken wird der aktuelle Satz von Spektralkoeffizienten eine Mehrzahl von zeitlich aufeinanderfolgenden kompletten Spektren umfassen. Dann werden im Schritt 14 für jedes vollständige Spektrum entsprechende Subbänder erzeugt, d. h. pro Satz von Spektralkoeffizienten mehrere Subbänder.
Nach der Unterteilung in Subbänder wird eine Rücktransformation je Subband durchgeführt (16). Im Falle von langen Blökken, d. h. die Anzahl der Spektralkoeffizienten eines Blocks entspricht der Anzahl der Spektralkoeffizienten eines Satzes, wird eine einzige Rücktransformation pro Subband durchgeführt, bevor zur Prädiktion 18 übergegangen wird. Im Falle von kurzen Blöcken werden mehrere Rücktransformationen entsprechend der Subbänder jedes "kurzen" Spektrums durchgeführt, bevor dann für sämtliche Subbänder zusammen eine Prädiktion 18 durchgeführt wird.
Die Prädiktion 18 findet im Quasi-Zeitbereich statt, d. h. für jedes Subband-"Zeit"-Signal, um ein geschätztes Subbandzeitsignal für den folgenden Satz zu erhalten. Dieses geschätzte Quasi-Zeitsignal wird anschließend wieder einer Vorwärtstransformation 20 unterzogen, wobei die Vorwärtstransformation für einen langen Block wieder nur einmal ausgeführt wird bzw. für kurze Blöcke N-mal, wobei N das Verhältnis zwischen der Anzahl von Spektralkoeffizienten eines langen Blocks zu der Anzahl von Spektralkoeffizienten eines kurzen Blocks ist.
Nach dem Schritt 20 liegen für jedes Subband geschätzte Spektralkoeffizienten vor. In einem Schritt 22 wird die in dem Schritt 14 eingeführte Unterteilung wieder rückgängig gemacht, derart, daß nach dem Schritt 22 ein folgender Satz von Spektralkoeffizienten vorliegt.
In einem Schritt 24 wird von dem Decodierer der folgende Satz von Spektralkoeffizienten empfangen. Dieser Satz wird einer Fehlerdetektion 26 unterzogen, um festzustellen, ob ein Spektralkoeffizient, mehrere Spektralkoeffizienten oder sogar alle Spektralkoeffizienten des folgenden Satzes fehlerhaft sind. Die Fehlerdetektion findet auf für Fachleute bekannte Art und Weise statt, wobei beispielsweise die CRC-Checksum (CRC = Cyclic Redundancy Code) über einem Frame überprüft wird. Wird festgestellt, daß eine Checksum, die aufgrund der übertragenen Daten berechnet wird, zu einer mit den Daten übertragenen Checksum unterschiedlich ist, können die geschätzten Spektralkoeffizienten, die durch den Schritt 22 erzeugt worden sind, statt der Spektralkoeffizienten des fehlerhaften Blocks eingesetzt werden. Die fehlerhaften Spektralkoeffizienten werden damit gegen die geschätzten Spektralkoeffizienten ausgetauscht (28). Schließlich werden die fehlerverschleierten Spektralkoeffizienten des folgenden Satzes verarbeitet, um die zeitlichen Abtastwerte ausgeben zu können (30).
Das Flußdiagramm von Fig. 4 stellt gewissermaßen eine Augenblicksaufnahme der Verarbeitung von einem Satz von Spektralkoeffizienten zu einem nächsten Satz von Spektralkoeffizienten dar. Wird das Flußdiagramm von Fig. 4 implementiert, so wird selbstverständlich beispielsweise nur eine einzige Filterbank 400 (Fig. 1) verwendet, um die Schritte 12 und 30 durchzuführen. Genauso wird selbstverständlich nur eine einzige Einrichtung zum Empfangen des aktuellen Satzes von Spektralkoeffizienten bzw. zum Empfangen des folgenden Satzes von Spektralkoeffizienten vonnöten sein, um die Schritte 10 und 24 zu implementieren. Die zeitliche Synchronität für die Schritte 10 und 24 wird bei einer Vorrichtung, die das erfindungsgemäße Verfahren implementiert, durch die Zeitverzögerungsstufe 510 im Parallelzweig (Fig. 2) sichergestellt.
Fig. 5 zeigt eine detailliertere Darstellung des allgemeinen Blockdiagramms von Fig. 2 am Beispiel eines MPEG-2 AAC-Transformationscodierers, der die erfindungsgemäße Fehlerverschleierungseinrichtung 500 aufweist. Wie es bereits bezugnehmend auf Fig. 2 dargestellt worden ist, umfaßt die Fehlerverschleierungseinrichtung 500 (Fig. 1) eine Einrichtung 520 zum Unterteilen der Blöcke von Spektralkoeffizienten in vorzugsweise 32 Subbänder. Im Falle von langen Blökken hat jedes Subband 32 Spektralkoeffizienten. Da die Subbänder der kurzen Blöcke die gleichen Frequenzbereiche überstreichen, hat im Falle von kurzen Blöcken jedes Subband 4 Spektralkoeffizienten. Eine Aufteilung eines gesamten Spektrums in gleichgroße Subbänder wird aus Gründen der Einfachheit bevorzugt, wobei jedoch eine Unterteilung in ungleiche Subbänder ebenfalls möglich wäre, beispielsweise angelehnt an die psychoakustischen Frequenzgruppen. Jedes Subband wird daraufhin einer inversen modifizierten diskreten Cosinus-Transformation unterzogen. Im Falle von langen Blöcken läuft die IMDCT einmal ab und empfängt 32 Eingangswerte. Im Falle von kurzen Blöcken werden acht aufeinanderfolgende IMDCTs ausgeführt, und zwar jeweils mit 4 der Spektralkoeffizienten, derart, daß sich am Ausgang wieder 32 Quasi-Zeitabtastwerte ergeben. Diese werden dann dem Prädiktor 504 zugeführt, der wiederum 32 geschätzte Quasi-Zeitabtastwerte erzeugt, die mittels der MDCT 506 transformiert werden. Im Falle von langen Blöcken wird eine einzige MDCT mit 32 zeitlichen Werten durchgeführt, während im Falle von kurzen Blöcken acht zeitlich aufeinanderfolgende MDCTS mit jeweils 4 Abtastwerten ausgeführt werden. Obwohl in Fig. 5 nur ein Zweig für das nullte Subband dargestellt ist, sei festgehalten, daß für jedes Subband ein identischer Zweig existiert, wenn die Subbänder alle die gleiche Länge haben. Haben die Subbänder unterschiedliche Längen, so sind die Ordnungen der IMDCT bzw. der MDCT daran angepaßt. Für eine praktische Implementation bietet sich eine parallele Verarbeitung an. Selbstverständlich ist jedoch auch eine serielle Verarbeitung der Subbänder hintereinander möglich, wenn entsprechende Speicherkapazitäten vorgesehen werden. Die Ausgangswerte der MDCT 506 für jedes Subband werden in eine Einrichtung 522 zum Rückgängigmachen der Unterteilung, d. h. in eine inverse Unterteilungseinrichtung, eingespeist, um im Falle des bevorzugten Ausführungsbeispiels auf AAC-MDCT-Ebene einen geschätzten Satz von Spektralwerten auszugeben.
Fig. 6 zeigt eine weitere detaillierte Darstellung des Prädiktors 504. Das Herzstück des Prädiktors 504 ist beim bevorzugten Ausführungsbeispiel ein sogenannter LMSL-Prädiktor 504a, der eine Länge n = 32 hat. Details über den LMSL-Prädiktor sind in dem Buch "Adaptive Signal Processing", Bernard Widrow, Samuel Stearns, Prentice-Hall, 1995, S. 99 ff., zu finden. Dem LMSL-Prädiktor 504a ist eine Zeitverzögerungsstufe 504b vorgeschaltet. Der Prädiktor 504 umfaßt eingangsseitig ferner einen Parallel-Seriell-Wandler 504c und ausgangseitig einen Seriell-Parallel-Wandler 504d. Derselbe hat ferner eine Prädiktionsgewinnberechnungseinrichtung 504e, die das Ausgangssignal des Prädiktors 504a mit dem Eingangssignal vergleicht, um feststellen zu können, ob ein stationäres Signal oder ein instationäres Signal verarbeitet worden ist. Die Prädiktionsgewinnberechnungseinrichtung 504e liefert ausgangsseitig das Prädiktionsgewinnsignal 516, das zur Steuerung des Schalters 518 (Fig. 3) verwendet wird, um entweder prädizierte Spektralkoeffizienten oder durch Rauschersetzung gewonnene Spektralkoeffizienten zur Fehlerverschleierung zu verwenden. Der Prädiktor 504 umfaßt ferner in seiner Implemention als LMSL-Prädiktor zwei Schalter 504f und 504g, die zwei Schalterstellungen haben. Die Schalterstellung "1" betrifft den Fall, daß Spektralkoeffizienten des folgenden Blocks fehlerfrei sind, während die Schalterstellung "2" den Fall betrifft, daß Spektralkoeffizienten des folgenden Satzes fehlerhaft sind. In Fig. 6 ist der Fall gezeichnet, bei dem die Spektralkoeffizienten fehlerhaft sind. In diesem Fall wird am Schalter 504g statt des Eingangssignals ein Referenzsignal mit einem Wert von 0 in den Prädiktor eingespeist. Im Fall von fehlerfreien Spektralkoeffizienten (Schalterstellung "1" des Schalters 504g) werden dagegen die Ausgangswerte des Parallel-Seriell-Wandlers von unten in den LMSL-Prädiktor eingespeist.
Im Falle der Anwendung des erfindungsgemäßen Fehlerverschleierungsverfahrens im Zusammenhang mit einem AAC-Codierer wird es bevorzugt, für sämtliche Vorwärts- bzw. Rückwärtstransformationen die entsprechenden Transformationsalgorithmen (MDCT bzw. IMDCT) zu verwenden. Für die Fehlerverschleierung ist es jedoch nicht notwendig, daß zur Rückwärts- bzw. zur Vorwärtstransformation dasselbe Transformationsverfahren eingesetzt wird, das bei der Codierung des Audiosignals verwendet wurde, um die Spektralkoeffizienten zu bilden.
Aufgrund der Unterteilung des Spektrums in Subbänder und aufgrund der einzelnen Transformationen für jedes Subband werden für jedes Subband Frequenz-Zeitbereichs-Transformationen mit niedrigerer Ordnung als der Frequenzauflösung entsprechend verwendet. Somit werden spezielle Schätzwerte für tonale Signalanteile in der Zwischenebene mittels des Prädiktors erzeugt. Als Vorwärtstransformation/Synthese werden Zeit-Frequenzbereich-Transformationen niedrigerer Ordnung als der ursprünglichen Frequenzauflösung entsprechend verwendet, wobei die gleiche Ordnung gewählt wird wie bei der benutzten Frequenz-Zeitbereichs-Transformation. Somit liefert die erfindungsgemäße Fehlerverschleierung einerseits Flexibilität unter Ausnutzung von Vorkenntnissen spektraler Eigenschaften von Audiosignalen und andererseits eine Unabhängigkeit von dem im Codierer verwendeten Transformationsverfahren durch Erzeugung der Schätzwerte im Quasi-Zeitsignal, also nicht auf Spektralkoeffizientenebene. Wenn die Prädiktion im Quasi-Zeitbereich zur Ersetzung tonaler Signalanteile eingesetzt wird, und wenn die Rauschersetzung für rauschhafte Spektralanteile verwendet wird, so können Fehler für eine große Klasse von Audiosignalen selbst bei vollständigem Blockverlust derart verschleiert werden, daß nahezu keine hörbaren Störungen auftreten. Versuche haben gezeigt, daß bei nicht allzu kritischen Testsignalen normale Hörer, d. h. ungeschulte Testhörer, selbst bei vollständigem Blockverlust nur in einem von 10 Fällen Unregelmäßigkeiten im Audiosignal gehört haben.

Claims (13)

  1. Verfahren zum Verschleiern eines Fehlers in einem codierten Audiosignal, wobei das codierte Audiosignal aufeinanderfolgende Sätze von Spektralkoeffizienten aufweist, wobei ein Satz von Spektralkoeffizienten eine spektrale Darstellung für einen Satz von Audioabtastwerten ist, mit folgenden Schritten:
    Unterteilen (14) eines aktuellen Satzes von Spektralkoeffizienten in mindestens zwei Subbänder mit unterschiedlichen Frequenzbereichen, wobei ein Subband der mindestens zwei Subbänder zumindest zwei Spektralkoeffizienten aufweist;
    Rückwärts-Transformieren (16) der Spektralkoeffizienten des einen Subbandes, um eine zeitliche Darstellung der zumindest zwei Spektralkoeffizienten des einen Subbandes zu erhalten;
    Durchführen (18) einer Prädiktion unter Verwendung der zeitlichen Darstellung der zumindest zwei Spektralkoeffizienten des einen Subbandes, um eine geschätzte zeitliche Darstellung für ein Subband eines auf den aktuellen Satz folgenden Satzes zu erhalten, wobei das Subband des folgenden Satzes den gleichen Frequenzbereich wie das Subband des aktuellen Satzes umfaßt;
    Vorwärts-Transformieren (20) der geschätzten zeitlichen Darstellung um zumindest zwei geschätzte Spektralkoeffizienten für das Subband des folgenden Satzes zu erhalten;
    Bestimmen (26) ob ein Spektralkoeffizient des Subbands des folgenden Satzes fehlerhaft ist; und
    als Reaktion auf den Schritt des Bestimmens, falls ein fehlerhafter Spektralkoeffizient vorliegt, Verwenden (28) eines geschätzten Spektralkoeffizienten statt eines fehlerhaften Spektralkoeffizienten des folgenden Satzes, um den fehlerhaften Spektralkoeffizienten des folgenden Satzes zu Verschleiern.
  2. Verfahren nach Anspruch 1, bei dem das eine Subband, das im Schritt des Rückwärts-Transformierens (16) verarbeitet wird, niederfrequente Spektralkoeffizienten aufweist, während das andere der mindestens zwei Subbänder höherfrequente Spektralkoeffizienten aufweist.
  3. Verfahren nach Anspruch 1 oder 2, bei dem die Anzahl der Spektralkoeffizienten in einem Satz von Spektralkoeffizienten gleich der Anzahl von Spektralkoeffizienten in einem Block (702) erster Länge und das N-fache der Spektralkoeffizienten in einem Block (704) zweiter Länge ist, und bei dem N Blöcke (704) mit der zweiten Länge hintereinander auftreten, wobei
    der Schritt des Unterteilens (14) derart ausgeführt wird, daß die Subbänder der Blöcke mit der ersten Länge gleiche Frequenzbereiche umfassen, wie die Subbänder der Blöcke mit der zweiten Länge, derart, daß die Anzahl der Spektralkoeffizienten eines Subbandes des Blocks mit der ersten Länge gleich dem N-fachen der Anzahl der Spektralkoeffizienten des entsprechenden Subbandes des Blocks mit der zweiten Länge ist;
    der Schritt des Rückwärtstransformierens (16) für jedes entsprechende Subband der N Blöcke mit der zweiten Länge nacheinander ausgeführt wird, um eine zeitliche Darstellung der Spektralkoeffizienten entsprechender Subbänder der N Blöcke mit der zweiten Länge zu erhalten;
    der Schritt des Durchführens (18) einer Prädiktion mit der zeitlichen Darstellung sämtlicher entsprechender Subbänder der N Blöcke mit der zweiten Länge durchgeführt wird; und
    der Schritt des Vorwärtstransformierens (20) für jedes entsprechende Subband der N Blöcke mit der zweiten Länge nacheinander durchgeführt wird.
  4. Verfahren nach einem der vorhergehenden Ansprüche, bei dem im Schritt des Unterteilens (14) eine Vielzahl von Subbändern erzeugt wird, derart, daß alle Subbänder zusammen die spektrale Darstellung des codierten Audiosignais in einem Satz von Spektralkoeffizienten bilden.
  5. Verfahren nach einem der vorhergehenden Ansprüche, bei dem nach dem Schritt des Bestimmens (26), ob ein Spektralkoeffizient eines Subbands fehlerhaft ist, folgender Schritt ausgeführt wird:
    Bestimmen (504e), ob der Spektralkoeffizient einen tonalen Anteil des uncodierten Audiosignals darstellt, aufgrund eines Vergleichs des Spektralkoeffizienten mit dem entsprechenden geschätzten Spektralkoeffizienten;
    falls der Spektralkoeffizient als tonal bestimmt wird, Verwenden des geschätzten Spektralkoeffizientens, und falls der Spektralkoeffizient als nicht-tonal bestimmt wird, Durchführen einer Rauschersetzung (514) für einen fehlerhaften Spektralkoeffizienten des folgenden Satzes.
  6. Verfahren nach einem der Ansprüche 3 bis 5, bei dem die Spektralkoeffizienten MDCT-Koeffizienten sind, die Länge eines Satzes der Länge eines langen Blocks entspricht und 1024 MDCT-Koeffizienten beträgt, während ein Satz von Spektralkoeffizienten acht Blöcke kurzer Länge umfaßt, von denen jeder 128 MDCT-Koeffizienten aufweist, und bei dem im Schritt des Unterteilens 32 Subbänder je 32 MDCT-Koeffizienten für einen langen Block bzw. je 4 MDCT-Koeffizienten für einen kurzen Block gebildet werden.
  7. Verfahren nach einem der vorhergehenden Ansprüche, bei dem im Schritt des Durchführens (18) der Prädiktion ein adaptiver rückgekoppelter Prädiktor (504a) verwendet wird, der vorzugsweise ein LMSL-Prädiktor ist.
  8. Verfahren nach einem der vorhergehenden Ansprüche, bei dem der Transformationsalgorithmus, der dem codierten Audiosignal zugrunde liegt, der gleiche Transformationsalgorithmus ist, der im Schritt des Rückwärts-Transformierens (16) und im Schritt des Vorwärtstransformierens (20) verwendet wird.
  9. Verfahren nach einem der vorhergehenden Ansprüche, bei dem der Transformationsalgorithmus, der im Schritt des Rückwärts-Transformierens (16) verwendet wird, genau invers zu dem Transformationsalgorithmus ist, der im Schritt des Vorwärts-Transformierens (20) verwendet wird.
  10. Verfahren zum Decodieren eines codierten Audiosignals, das aufeinanderfolgende Sätze von Spektralkoeffizienten aufweist, wobei ein Satz von Spektralkoeffizienten eine spektrale Darstellung für einen Satz von Audioabtastwerten ist:
    Empfangen (10) eines aktuellen Satzes von Spektralkoeffizienten;
    Unterteilen (14) eines aktuellen Satzes von Spektralkoeffizienten in mindestens zwei Subbänder mit unterschiedlichen Frequenzbereichen, wobei ein Subband der mindestens zwei Subbänder zumindest zwei Spektralkoeffizienten aufweist;
    Rückwärts-Transformieren (16) der Spektralkoeffizienten des einen Subbandes, um eine zeitliche Darstellung der zumindest zwei Spektralkoeffizienten des einen Subbandes zu erhalten;
    Durchführen (18) einer Prädiktion unter Verwendung der zeitlichen Darstellung der zumindest zwei Spektralkoeffizienten des einen Subbandes, um eine geschätzte zeitliche Darstellung für ein Subband eines auf den aktuellen Satz folgenden Satzes zu erhalten, wobei das Subband des folgenden Satzes den gleichen Frequenzbereich wie das Subband des aktuellen Satzes umfaßt;
    Vorwärts-Transformieren (20) der geschätzten zeitlichen Darstellung um zumindest zwei geschätzte Spektralkoeffizienten für das Subband des folgenden Satzes zu erhalten;
    Empfangen (24) eines folgenden Satzes von Spektralkoeffizienten und Unterteilen des folgenden Satzes in Subbänder, die den gleichen Frequenzbereich wie die Subbänder des aktuellen Satzes umfassen;
    Bestimmen (26) ob ein Spektralkoeffizient des Subbands des folgenden Satzes fehlerhaft ist;
    als Reaktion auf den Schritt des Bestimmens, falls ein fehlerhafter Spektralkoeffizient vorliegt, Verwenden (28) eines geschätzten Spektralkoeffizienten statt eines fehlerhaften Spektralkoeffizienten des folgenden Satzes, um den fehlerhaften Spektralkoeffizienten des folgenden Satzes zu Verschleiern; und
    Verarbeiten (30) des folgenden Satzes unter Benutzung des im Schritt des Verwendens (28) verwendeten geschätzten Spektralkoeffizienten, um den folgenden Satz von Audioabtastwerten zu erhalten.
  11. Verfahren nach Anspruch 10, bei dem die Spektralkoeffizienten des codierten Audiosignals Entropie-codiert und quantisiert sind, das vor dem Schritt des Empfangens (10) des aktuellen Satzes bzw. des folgenden Satzes folgende Schritte aufweist:
    Rückgängigmachen (200) der Entropie-Codierug um quantisierte Spektralkoeffizienten zu erhalten;
    Requantisieren (300) der quantisierten Spektralkoeffizienten, um requantisierte Spektralkoeffizienten zu erhalten;
    und bei dem der Schritt des Verarbeitens folgenden Schritt aufweist:
    Rücktransformieren (400) des folgenden Satzes unter Verwendung eines Transformationsalgorithmus, der zu dem Transformationsalgorithmus invers ist, der zum Transformieren verwendet wurde, um die Spektralkoeffizienten des codierten Audiosignals zu erhalten.
  12. Vorrichtung zum Verschleiern eines Fehlers in einem codierten Audiosignal, wobei das codierte Audiosignal aufeinanderfolgende Sätze von Spektralkoeffizienten aufweist, wobei ein Satz von Spektralkoeffizienten eine spektrale Darstellung für einen Satz von Audioabtastwerten ist, mit folgenden Merkmalen:
    einer Einrichtung (520) zum Unterteilen (14) eines aktuellen Satzes von Spektralkoeffizienten in mindestens zwei Subbänder mit unterschiedlichen Frequenzbereichen, wobei ein Subband der mindestens zwei Subbänder zumindest zwei Spektralkoeffizienten aufweist;
    einer Einrichtung (502) zum Rückwärts-Transformieren (16) der Spektralkoeffizienten des einen Subbandes, um eine zeitliche Darstellung der zumindest zwei Spektralkoeffizienten des einen Subbandes zu erhalten;
    einer Einrichtung (504) zum Durchführen (18) einer Prädiktion unter Verwendung der zeitlichen Darstellung der zumindest zwei Spektralkoeffizienten des einen Subbandes, um eine geschätzte zeitliche Darstellung für ein Subband eines auf den aktuellen Satz folgenden Satzes zu erhalten, wobei das Subband des folgenden Satzes den gleichen Frequenzbereich wie das Subband des aktuellen Satzes umfaßt;
    einer Einrichtung (506) zum Vorwärts-Transformieren (20) der geschätzten zeitlichen Darstellung, um zumindest zwei geschätzte Spektralkoeffizienten für das Subband des folgenden Satzes zu erhalten;
    einer Einrichtung zum Bestimmen (26) ob ein Spektralkoeffizient des Subbands des folgenden Satzes fehlerhaft ist; und
    einer Einrichtung (512) zum Verwenden (28) eines geschätzten Spektralkoeffizienten statt eines fehlerhaften Spektralkoeffizienten des folgenden Satzes, um den fehlerhaften Spektralkoeffizienten des folgenden Satzes zu Verschleiern.
  13. Vorrichtung zum Decodieren eines codierten Audiosignals, das aufeinanderfolgende Sätze von Spektralkoeffizienten aufweist, wobei ein Satz von Spektralkoeffizienten eine spektrale Darstellung für einen Satz von Audioabtastwerten ist, mit folgenden Merkmalen:
    einer Einrichtung (100) zum Empfangen (10) eines aktuellen Satzes von Spektralkoeffizienten;
    einer Einrichtung (520) zum unterteilen (14) eines aktuellen Satzes von Spektralkoeffizienten in mindestens zwei Subbänder mit unterschiedlichen Frequenzbereichen, wobei ein Subband der mindestens zwei Subbänder zumindest zwei Spektralkoeffizienten aufweist;
    einer Einrichtung (502) zum Rückwärts-Transformieren (16) der Spektralkoeffizienten des einen Subbandes, um eine zeitliche Darstellung der zumindest zwei Spektralkoeffizienten des einen Subbandes zu erhalten;
    einer Einrichtung (504) zum Durchführen (18) einer Prädiktion unter Verwendung der zeitlichen Darstellung der zumindest zwei Spektralkoeffizienten des einen Subbandes, um eine geschätzte zeitliche Darstellung für ein Subband eines auf den aktuellen Satz folgenden Satzes zu erhalten, wobei das Subband des folgenden Satzes den gleichen Frequenzbereich wie das Subband des aktuellen Satzes umfaßt;
    einer Einrichtung (506) zum Vorwärts-Transformieren (20) der geschätzten zeitlichen Darstellung um zumindest zwei geschätzte Spektralkoeffizienten für das Subband des folgenden Satzes zu erhalten;
    einer Einrichtung (502, 510) zum Empfangen (24) eines folgenden Satzes von Spektralkoeffizienten und zum Unterteilen des folgenden Satzes in Subbänder, die den gleichen Frequenzbereich wie die Subbänder des aktuellen Satzes umfassen;
    einer Einrichtung zum Bestimmen (26) ob ein Spektralkoeffizient des Subbands des folgenden Satzes fehlerhaft ist;
    einer Einrichtung (512) zum verwenden (28) eines geschätzten Spektralkoeffizienten statt eines fehlerhaften Spektralkoeffizienten des folgenden Satzes, um den fehlerhaften Spektralkoeffizienten des folgenden Satzes zu Verschleiern; und
    einer Einrichtung zum Verarbeiten (30) des folgenden Satzes unter Benutzung des geschätzten Spektralkoeffizienten, um den folgenden Satz von Audioabtastwerten zu erhalten.
EP00926896A 1999-05-07 2000-04-12 Verfahren und vorrichtung zum verschleiern eines fehlers in einem codierten audiosignal und verfahren und vorrichtung zum decodieren eines codierten audiosignals Expired - Lifetime EP1145227B1 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE19921122A DE19921122C1 (de) 1999-05-07 1999-05-07 Verfahren und Vorrichtung zum Verschleiern eines Fehlers in einem codierten Audiosignal und Verfahren und Vorrichtung zum Decodieren eines codierten Audiosignals
DE19921122 1999-05-07
PCT/EP2000/003294 WO2000068934A1 (de) 1999-05-07 2000-04-12 Verfahren und vorrichtung zum verschleiern eines fehlers in einem codierten audiosignal und verfahren und vorrichtung zum decodieren eines codierten audiosignals

Publications (2)

Publication Number Publication Date
EP1145227A1 EP1145227A1 (de) 2001-10-17
EP1145227B1 true EP1145227B1 (de) 2002-07-24

Family

ID=7907325

Family Applications (1)

Application Number Title Priority Date Filing Date
EP00926896A Expired - Lifetime EP1145227B1 (de) 1999-05-07 2000-04-12 Verfahren und vorrichtung zum verschleiern eines fehlers in einem codierten audiosignal und verfahren und vorrichtung zum decodieren eines codierten audiosignals

Country Status (6)

Country Link
US (1) US7003448B1 (de)
EP (1) EP1145227B1 (de)
JP (1) JP3623449B2 (de)
AT (1) ATE221244T1 (de)
DE (2) DE19921122C1 (de)
WO (1) WO2000068934A1 (de)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7315815B1 (en) * 1999-09-22 2008-01-01 Microsoft Corporation LPC-harmonic vocoder with superframe structure
DE19959038A1 (de) * 1999-12-08 2001-06-28 Bosch Gmbh Robert Verfahren zur Dekodierung von digitalen Audiodaten
EP1199709A1 (de) * 2000-10-20 2002-04-24 Telefonaktiebolaget Lm Ericsson Fehlerverdeckung in Bezug auf die Dekodierung von kodierten akustischen Signalen
US7428684B2 (en) 2002-04-29 2008-09-23 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Device and method for concealing an error
DE10219133B4 (de) * 2002-04-29 2007-02-22 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Verschleiern eines Fehlers
SE527669C2 (sv) * 2003-12-19 2006-05-09 Ericsson Telefon Ab L M Förbättrad felmaskering i frekvensdomänen
US7356748B2 (en) * 2003-12-19 2008-04-08 Telefonaktiebolaget Lm Ericsson (Publ) Partial spectral loss concealment in transform codecs
WO2005086138A1 (ja) * 2004-03-05 2005-09-15 Matsushita Electric Industrial Co., Ltd. エラー隠蔽装置およびエラー隠蔽方法
US7668712B2 (en) * 2004-03-31 2010-02-23 Microsoft Corporation Audio encoding and decoding with intra frames and adaptive forward error correction
US8326606B2 (en) * 2004-10-26 2012-12-04 Panasonic Corporation Sound encoding device and sound encoding method
KR100668319B1 (ko) * 2004-12-07 2007-01-12 삼성전자주식회사 오디오 신호의 변환방법 및 장치와 오디오 신호에적응적인 부호화방법 및 장치, 오디오 신호의 역변환 방법및 장치와 오디오 신호에 적응적인 복호화 방법 및 장치
KR100708123B1 (ko) * 2005-02-04 2007-04-16 삼성전자주식회사 자동으로 오디오 볼륨을 조절하는 방법 및 장치
US7831421B2 (en) * 2005-05-31 2010-11-09 Microsoft Corporation Robust decoder
US7707034B2 (en) * 2005-05-31 2010-04-27 Microsoft Corporation Audio codec post-filter
US7177804B2 (en) 2005-05-31 2007-02-13 Microsoft Corporation Sub-band voice codec with multi-stage codebooks and redundant coding
JP2006276877A (ja) * 2006-05-22 2006-10-12 Nec Corp 変換符号化されたデータの復号方法及び変換符号化されたデータの復号装置
KR101291193B1 (ko) 2006-11-30 2013-07-31 삼성전자주식회사 프레임 오류은닉방법
EP2092790B1 (de) * 2006-12-07 2010-07-07 AKG Acoustics GmbH Vorrichtung zur ausblendung von signalausfällen für eine mehrkanalanordnung
US20090048828A1 (en) * 2007-08-15 2009-02-19 University Of Washington Gap interpolation in acoustic signals using coherent demodulation
US8126578B2 (en) * 2007-09-26 2012-02-28 University Of Washington Clipped-waveform repair in acoustic signals using generalized linear prediction
US9300469B2 (en) * 2008-01-21 2016-03-29 Nippon Telegraph And Telephone Corporation Secure computing system, secure computing method, secure computing apparatus, and program therefor
WO2010111841A1 (zh) * 2009-04-03 2010-10-07 华为技术有限公司 频域脉冲解码的预测方法和预测装置及解码器
JP2011257575A (ja) * 2010-06-09 2011-12-22 Cri Middleware Co Ltd 音声処理装置、音声処理方法、プログラムおよび記録媒体
WO2011156905A2 (en) * 2010-06-17 2011-12-22 Voiceage Corporation Multi-rate algebraic vector quantization with supplemental coding of missing spectrum sub-bands
EP2458585B1 (de) * 2010-11-29 2013-07-17 Nxp B.V. Fehlerverdeckung für Subband-codierte Audiosignale
SG185519A1 (en) 2011-02-14 2012-12-28 Fraunhofer Ges Forschung Information signal representation using lapped transform
TWI488177B (zh) 2011-02-14 2015-06-11 Fraunhofer Ges Forschung 使用頻譜域雜訊整形之基於線性預測的編碼方案
CA2827000C (en) * 2011-02-14 2016-04-05 Jeremie Lecomte Apparatus and method for error concealment in low-delay unified speech and audio coding (usac)
ES2639646T3 (es) 2011-02-14 2017-10-27 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codificación y decodificación de posiciones de impulso de pistas de una señal de audio
MX2013009304A (es) 2011-02-14 2013-10-03 Fraunhofer Ges Forschung Aparato y metodo para codificar una porcion de una señal de audio utilizando deteccion de un transiente y resultado de calidad.
ES2529025T3 (es) 2011-02-14 2015-02-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparato y método para procesar una señal de audio decodificada en un dominio espectral
JP5973582B2 (ja) 2011-10-21 2016-08-23 サムスン エレクトロニクス カンパニー リミテッド フレームエラー隠匿方法及びその装置、並びにオーディオ復号化方法及びその装置
KR102037691B1 (ko) 2013-02-05 2019-10-29 텔레폰악티에볼라겟엘엠에릭슨(펍) 오디오 프레임 손실 은폐
KR101788484B1 (ko) 2013-06-21 2017-10-19 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. Tcx ltp를 이용하여 붕괴되거나 붕괴되지 않은 수신된 프레임들의 재구성을 갖는 오디오 디코딩
PT3285255T (pt) 2013-10-31 2019-08-02 Fraunhofer Ges Forschung Descodificador de áudio e método para fornecer uma informação de áudio descodificada utilizando uma ocultação de erro baseada num sinal de excitação no domínio de tempo
JP6306177B2 (ja) 2013-10-31 2018-04-04 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 時間ドメイン励振信号を修正するエラーコンシールメントを用いて、復号化されたオーディオ情報を提供する、オーディオデコーダおよび復号化されたオーディオ情報を提供する方法
EP3230980B1 (de) * 2014-12-09 2018-11-28 Dolby International AB Mdct-domain-fehlerverdeckung
US10763885B2 (en) 2018-11-06 2020-09-01 Stmicroelectronics S.R.L. Method of error concealment, and associated device
US10784988B2 (en) 2018-12-21 2020-09-22 Microsoft Technology Licensing, Llc Conditional forward error correction for network data
US10803876B2 (en) * 2018-12-21 2020-10-13 Microsoft Technology Licensing, Llc Combined forward and backward extrapolation of lost network data
CN111711493B (zh) * 2020-06-16 2022-03-11 中国电子科技集团公司第三研究所 具有加密解密能力的水下通信设备及发射器和接收器

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5752225A (en) * 1989-01-27 1998-05-12 Dolby Laboratories Licensing Corporation Method and apparatus for split-band encoding and split-band decoding of audio information using adaptive bit allocation to adjacent subbands
JPH03245370A (ja) 1990-02-22 1991-10-31 Matsushita Electric Ind Co Ltd 音声帯域分割復号化装置
US5455833A (en) * 1990-10-25 1995-10-03 Fraunhofer Gesellschaft Zur Forschung E.V. Process for the detecting of errors in the transmission of frequency-coded digital signals
JPH07123242B2 (ja) 1993-07-06 1995-12-25 日本電気株式会社 音声信号復号化装置
KR970011728B1 (ko) * 1994-12-21 1997-07-14 김광호 음향신호의 에러은닉방법 및 그 장치
JPH08328599A (ja) 1995-06-01 1996-12-13 Mitsubishi Electric Corp Mpegオーディオ復号器
US5781888A (en) * 1996-01-16 1998-07-14 Lucent Technologies Inc. Perceptual noise shaping in the time domain via LPC prediction in the frequency domain
DE19735675C2 (de) * 1997-04-23 2002-12-12 Fraunhofer Ges Forschung Verfahren zum Verschleiern von Fehlern in einem Audiodatenstrom
AU4201100A (en) * 1999-04-05 2000-10-23 Hughes Electronics Corporation Spectral phase modeling of the prototype waveform components for a frequency domain interpolative speech codec system

Also Published As

Publication number Publication date
EP1145227A1 (de) 2001-10-17
JP3623449B2 (ja) 2005-02-23
ATE221244T1 (de) 2002-08-15
DE19921122C1 (de) 2001-01-25
US7003448B1 (en) 2006-02-21
DE50000306D1 (de) 2002-08-29
WO2000068934A1 (de) 2000-11-16
JP2002544550A (ja) 2002-12-24

Similar Documents

Publication Publication Date Title
EP1145227B1 (de) Verfahren und vorrichtung zum verschleiern eines fehlers in einem codierten audiosignal und verfahren und vorrichtung zum decodieren eines codierten audiosignals
EP0954909B1 (de) Verfahren zum codieren eines audiosignals
DE19747132C2 (de) Verfahren und Vorrichtungen zum Codieren von Audiosignalen sowie Verfahren und Vorrichtungen zum Decodieren eines Bitstroms
DE602004005197T2 (de) Vorrichtung und verfahren zum kodieren eines audiosignals und vorrichtung und verfahren zum dekodieren eines kodierten audiosignals
EP1697930B1 (de) Vorrichtung und verfahren zum verarbeiten eines multikanalsignals
DE69923555T2 (de) Verfahren und vorrichtung zur entropie-kodierung von quantisierten transformationskoeffizienten eines signals
EP1230827B1 (de) Verfahren und vorrichtung zum verarbeiten eines stereoaudiosignals
EP1953739B1 (de) Verfahren und Vorrichtung zur Geräuschsunterdrückung bei einem decodierten Signal
WO1999004505A1 (de) Verfahren zum signalisieren einer rauschsubstitution beim codieren eines audiosignals
EP0978172B1 (de) Verfahren zum verschleiern von fehlern in einem audiodatenstrom
DE102006051673A1 (de) Vorrichtung und Verfahren zum Nachbearbeiten von Spektralwerten und Encodierer und Decodierer für Audiosignale
EP1023777B1 (de) Verfahren und vorrichtung zur erzeugung eines bitratenskalierbaren audio-datenstroms
DE102007029381A1 (de) Digitalsignal-Verarbeitungsvorrichtung, Digitalsignal-Verarbeitungsverfahren, Digitalsignal-Verarbeitungsprogramm, Digitalsignal-Wiedergabevorrichtung und Digitalsignal-Wiedergabeverfahren
DE102004009949A1 (de) Vorrichtung und Verfahren zum Ermitteln eines Schätzwertes
DE19742201C1 (de) Verfahren und Vorrichtung zum Codieren von Audiosignalen
DE112008003153B4 (de) Frequenzband-Bestimmungsverfahren zum Formen von Quantisierungsrauschen
DE10065363B4 (de) Vorrichtung und Verfahren zum Decodieren eines codierten Datensignals
DE3733786C2 (de)
DE19735675A1 (de) Verfahren zum Verschleiern von Fehlern in einem Audiodatenstrom
DE102005032079A1 (de) Verfahren und Vorrichtung zur Geräuschunterdrückung

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20010730

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE

AX Request for extension of the european patent

Free format text: AL;LT;LV;MK;RO;SI

GRAG Despatch of communication of intention to grant

Free format text: ORIGINAL CODE: EPIDOS AGRA

GRAG Despatch of communication of intention to grant

Free format text: ORIGINAL CODE: EPIDOS AGRA

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

17Q First examination report despatched

Effective date: 20011228

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT CH DE FR GB LI NL

AX Request for extension of the european patent

Free format text: AL;LT;LV;MK;RO;SI

REF Corresponds to:

Ref document number: 221244

Country of ref document: AT

Date of ref document: 20020815

Kind code of ref document: T

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

Free format text: NOT ENGLISH

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

Free format text: GERMAN

REF Corresponds to:

Ref document number: 50000306

Country of ref document: DE

Date of ref document: 20020829

GBT Gb: translation of ep patent filed (gb section 77(6)(a)/1977)

Effective date: 20020813

ET Fr: translation filed
LTIE Lt: invalidation of european patent or patent extension

Effective date: 20020724

REG Reference to a national code

Ref country code: IE

Ref legal event code: FD4D

Ref document number: 1145227E

Country of ref document: IE

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed

Effective date: 20030425

REG Reference to a national code

Ref country code: CH

Ref legal event code: PFA

Owner name: FRAUNHOFER-GESELLSCHAFT ZUR FOERDERUNG DER ANGEWA

Free format text: FRAUNHOFER-GESELLSCHAFT ZUR FOERDERUNG DER ANGEWANDTEN FORSCHUNG E.V.#LEONRODSTRASSE 54#80636 MUENCHEN (DE) -TRANSFER TO- FRAUNHOFER-GESELLSCHAFT ZUR FOERDERUNG DER ANGEWANDTEN FORSCHUNG E.V.#HANSASTRASSE 27 C#80686 MUENCHEN (DE)

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 17

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 18

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 19

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: NL

Payment date: 20190418

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20190418

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20190423

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: CH

Payment date: 20190424

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20190424

Year of fee payment: 20

Ref country code: AT

Payment date: 20190416

Year of fee payment: 20

REG Reference to a national code

Ref country code: DE

Ref legal event code: R071

Ref document number: 50000306

Country of ref document: DE

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

Ref country code: NL

Ref legal event code: MK

Effective date: 20200411

REG Reference to a national code

Ref country code: GB

Ref legal event code: PE20

Expiry date: 20200411

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK07

Ref document number: 221244

Country of ref document: AT

Kind code of ref document: T

Effective date: 20200412

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF EXPIRATION OF PROTECTION

Effective date: 20200411