Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DEVICE AND METHOD FOR ENCODING A TIME-DISCRETE AUDIO SIGNAL AND DEVICE AND METHOD FOR DECODING CODED AUDIO DATA
Document Type and Number:
WIPO Patent Application WO/2003/088212
Kind Code:
A1
Abstract:
According to the invention, a time-discrete audio signal is processed (52) in order to provide a quantization block with quantized spectral values (52). In addition, a whole-number spectral representation is generated from a time-discrete audio signal, using a whole-number transformation algorithm (56). The quantization block, which has been generated using a psychoacoustic model (54), is inverse quantized and rounded (58) to form a differential between the whole-number spectral values and the inverse quantized rounded spectral values. The quantization block alone produces a psychoacoustic encoded/decoded audio signal affected by loss after the decoding process, whereas the quantization block together with the combination block provides a loss-free, or practically loss-free encoded and decoded audio signal during said decoding process. The generation of the differential signal in the frequency range allows a simpler encoder/decoder structure to be produced.

Inventors:
GEIGER RALF (DE)
SPORER THOMAS (DE)
BRANDENBURG KARLHEINZ (DE)
HERRE JUERGEN (DE)
KOLLER JUERGEN (DE)
DEGUARA JOACHIM (DE)
Application Number:
PCT/EP2002/013623
Publication Date:
October 23, 2003
Filing Date:
December 02, 2002
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
FRAUNHOFER GES FORSCHUNG (DE)
GEIGER RALF (DE)
SPORER THOMAS (DE)
BRANDENBURG KARLHEINZ (DE)
HERRE JUERGEN (DE)
KOLLER JUERGEN (DE)
DEGUARA JOACHIM (DE)
International Classes:
G10L19/02; (IPC1-7): G10L19/02
Other References:
MORIYA T ET AL: "A design of lossy and lossless scalable audio coding", 2000 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING. PROCEEDINGS. (ICASSP). ISTANBUL, TURKEY, JUNE 5-9, 2000, IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING (ICASSP), NEW YORK, NY: IEEE, US, vol. 2 OF 6, 5 June 2000 (2000-06-05), pages II889 - II892, XP002901946, ISBN: 0-7803-6294-2
GEIGER R ET AL: "AUDIO CODING BASED ON INTEGER TRANSFORMS", PREPRINTS OF PAPERS PRESENTED AT THE 111TH AES CONVENTION, no. 5471, 30 November 2001 (2001-11-30), pages 1 - 9, XP008006797
HANS, M.; SCHAFER, R.W.: "Lossless compression of digital audio", SIGNAL PROCESSING MAGAZINE, IEEE, vol. 18, no. 4, July 2001 (2001-07-01), pages 21 - 32, XP001053611
NOLL P AND LIEBCHEN T: "DIGITAL AUDIO: FROM LOSSLESS TO TRANSPARENT CODING", IEEE SIGNAL PROCESSING WORKSHOP, 1999, Poznan, pages 53 - 60, XP000926389
GEIGER R ET AL: "INTMDCT-A LINK BETWEEN PERCEPTUAL AND LOSSLESS AUDIO CODING", 2002 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING. PROCEEDINGS. (ICASSP), vol. 3 OF 4, 13 May 2002 (2002-05-13) - 17 May 2002 (2002-05-17), Orlando, Florida, USA, pages II - 1813-II-1816, XP001097166, ISBN: 0-7803-7402-9
RAAD, M. AND MERTINS, A.: "From lossy to lossless audio coding using SPITH", PROC. OF THE 5TH INT. CONF. ON DIGITAL AUDIO EFFECTS, DAFX-02, 26 September 2002 (2002-09-26) - 28 September 2002 (2002-09-28), Hamburg, Deutschland, pages 245 - 250, XP002255007, Retrieved from the Internet [retrieved on 20030918]
Attorney, Agent or Firm:
Schoppe, Fritz (Zimmermann Stöckeler & Zinkle, P.O. Box 246 Pullach b. München, DE)
Download PDF:
Claims:
Patentansprüche Vorrichtung zum Codieren eines zeitdiskreten Audiosig- nals, um codierte Audiodaten zu erhalten, mit folgen- den Merkmalen : einer Einrichtung (52) zum Liefern eines Quantisie- rungs-Blocks von unter Verwendung eines psychoakusti- schen Modells (54).. quantisierten Spektralwerten-des zeitdiskreten Audiosignals ; einer Einrichtung (58) zum inversen Quantisieren des Quantisierungsblocks und zum Runden der invers quanti- sierten Spektralwerte, um einen Rundungs-Block von ge- rundeten invers quantisierten Spektralwerten zu erhal- ten ; einer Einrichtung (56) zum Erzeugen eines Ganzzahl- . B
1. l. ocks von.
2. ganzzahligen Spektralwerten unter Merwen dung eines GanzzahlTransformationsalgorithmus, der ausgebildet ist, um aus einem Block von ganzzahligen zeitdiskreten Abtastwerten den GanzzahlBlock von Spektralwerten zu erzeugen ; eine Kombinationseinrichtung (58) zum Bilden eines DifferenzBlocks, der von einer spektralwertweisen Differenz zwischen dem RundungsBlock und dem Ganz zahlBlock abhängt, um einen DifferenzBlock mit Dif ferenzSpektralwerten zu erhalten ; und einer Einrichtung (60) zum Verarbeiten des Quantisie rungsBlocks und des DifferenzBlocks, um codierte Au diodaten zu erzeugen, die Informationen über den Quan tisierungsBlock und Informationen über den Differenz Block umfassen.
3. Vorrichtung nach Anspruch 1, bei der die Einrichtung (52) zum Liefern ausgebildet ist, um aus einem ZeitBlock von zeitlichen Audiosignalwer ten mittels einer MDCT einen MDCTBlock von MDCT Spektralwerten zu erzeugen, und um den MDCTBlock unter Verwendung eines psychoakusti schen Modells zu quantisieren, um den Quantisierungs Block zu erzeugen, der quantisierte MDCTSpektralwerte aufweist.
4. Vorrichtung nach Anspruch 2, bei der die Einrichtung (56) zum Erzeugen des Ganz zahlBlocks ausgebildet ist,'um eine IntMDCT auf den' ZeitBlock auszuführen, um den GanzzahlBlock zu er zeugen, der IntMDCTSpektralwerte aufweist.
5. Vorrichtung nach einem der vorhergehenden Ansprüche, bei der die Einrichtung (52) zum Liefern ausgebildet ist, um unter Verwendung eine Gleitkomma Transformationsalgorithmus den QuantisierungsBlock zu berechnen.
6. Vorrichtung nach einem der Ansprüche 1 bis 3, bei der die Einrichtung (52) zum Liefern ausgebildet ist, um den QuantisierungsBlock unter Verwendung des von der Einrichtung (56) zum Erzeugen erzeugten Ganz zahlBlocks zu berechnen.
7. Vorrichtung nach einem der vorhergehenden Ansprüche, bei der die Einrichtung (60) zum Verarbeiten ausgebil det ist, um den QuantisierungsBlock einer Entropie Codierung zu unterziehen (60a), um einen Entropie codierten QuantisierungsBlock zu erhalten, um den RundungsBlock einer EntropieCodierung zu un terziehen (60b), um einen Entropiecodierten Rundungs Block zu erhalten, und um den Entropiecodierten QuantisierungsBlock in eine erste Skalierungsschicht eines skalierten Datenstroms, der die codierten Audiodaten darstellt, zu überführen, und um den Entropiecodierten RundungsBlock in eine zweite, Skalierungsschichtdes skalierten Datenstroms' zu überführen.
8. Vorrichtung nach Anspruch 6, bei der die Einrichtung (60) zum Verarbeiten ferner ausgebildet ist, um für die EntropieCodierung des QuantisierungsBlocks eine aus einer Mehrzahl von Co detabellen abhängig von den quantisierten Spektralwer ten zu verwenden, und bei der die Einrichtung (60) zum Verarbeiten ferner ausgebildet ist, um für die EntropieCodierung des DifferenzBlocks eine aus einer Mehrzahl von Codeta bellen abhängig von einer Eigenschaft eines Quantisie rers auszuwählen, der bei einer Quantisierung zum Er zeugen des QuantisierungsBlocks verwendbar ist.
9. Vorrichtung nach einem der vorhergehenden Ansprüche, bei der die Einrichtung (52) zum Liefern ausgebildet ist, um abhängig von einer Beschaffenheit des Audio signals eines einer Mehrzahl von Fenstern zum Fenstern eines zeitlichen Blocks von Audiosignalwerten zu ver wenden, und bei der die Einrichtung (56) zum Erzeugen ausgebildet ist, um für den ganzzahligen Transformationsalgorith mus dieselbe Fensterauswahl zu treffen.
10. Vorrichtung nach einem der Ansprüche 1 bis 8, bei der die Einrichtung zum Erzeugen ausgebildet ist, um einen ganzzahligen Transformationsalgorithmuszu verwenden, der folgende Schritte aufweist : Fenstern der zeitdiskreten Abtastwerte mit einem Fens ter (w) mit einer Länge, die 2N zeitdiskreten Abtast werten entspricht, um gefensterte zeitdiskrete Abtast werte für eine Umsetzung der zeitdiskreten Abtastwerte in eine spektrale Darstellung mittels einer Transfor mation zu liefern, die aus N Eingangswerten N Aus gangswerte erzeugen kann, wobei das Fenstern folgende Teilschritte aufweist : Auswählen (16) eines zeitdiskreten Abtastwerts aus einem Viertel des Fensters und eines zeitdis kreten Abtastwerts aus einem anderen Viertel des Fensters, um einen Vektor von zeitdiskreten Ab tastwerten zu erhalten ; Beaufschlagen des Vektors mit einer quadratischen Drehmatrix, deren Dimension mit der Dimension des Vektors übereinstimmt, wobei die Drehmatrix durch eine Mehrzahl von LiftingMatrizen darstellbar ist, wobei eine LiftingMatrix nur ein Element aufweist, das von dem Fenster (w) abhängt und un gleich 1 oder 0 ist, wobei der Teilschritt des Beaufschlagens folgende Unterschritte aufweist : Multiplizieren (18) des Vektors mit einer LiftingMatrix, um einen ersten Ergebnisvek tor zu erhalten ; Runden (20) einer Komponente des ersten Er gebnisvektors mit einer Rundungsfunktion die eine, reelle Zahl auf eine ganze Zahl abbildet, um einen gerundeten ersten Ergebnisvektor zu erhalten ; und sequentielles Durchführen der Schritte des Multipli zierens (22) und Rundens (24) mit einer anderen Lif tingMatrix, bis alle LiftingMatrizen abgearbeitet sind, um einen gedrehten Vektor zu erhalten, der einen ganzzahligen gefensterten Abtastwert aus dem Viertel des Fensters und einen ganzzahligen gefensterten Ab tastwert aus dem anderen Viertel des Fensters auf weist, und Durchführen des Schritt des Fensterns für alle zeit diskreten Abtastwerte der verbleibenden Viertel des Fensters, um 2N gefilterte ganzzahlige Abtastwerte zu erhalten ; und Umsetzen (14) von N gefensterten ganzzahligen Abtast werten in eine spektrale Darstellung durch eine Ganz zahlDCT für Werte mit den gefilterten ganzzahligen Abtastwerten des zweiten Viertels und des dritten Viertels des Fensters, um N ganzzahlige Spektralwerte zu. erhalten..
11. Vorrichtung nach einem der vorhergehenden Ansprüche, bei der die Einrichtung (52) zum Liefern des Quanti sierungsBlocks ausgebildet ist, um vor einem Quanti sierungsschritt (52b) eine Prädiktion von Spektralwer ten über der Frequenz unter Verwendung eines Prädikti onsfilters durchzuführen, um Prädiktionsrestspektral werte zu erhalten, die nach einer Quantisierung den QuantisierungsBlock darstellen, bei der ferner eine Prädiktionseinrichtung vorgesehen ist, die ausgebildet ist, um eine Prädiktion über der Frequenz der ganzzahligen Spektralwerte des Ganzzahl Blocks durchzuführen, wobei ferner eine Rundungsein richtung vorgesehen ist, um Prädiktionsrestspektral werte aufgrund der GanzzahlSpektralwerte zu runden, die den RundungsBlock darstellen.
12. Verfahren nach einem der vorhergehenden Ansprüche, bei der das zeitdiskrete Audiosignal zumindest zwei Kanäle aufweist, bei der die Einrichtung (52) zum Liefern ausgebildet ist, um eine Mitte/SeiteCodierung mit Spektralwerten des zeitdiskreten Audiosignals durchzuführen, um nach einer Quantisierung von Mitte/SeiteSpektralwerten den QuantisierungsBlock zu erhalten, und bei der die Einrichtung (56) zum Erzeugen des Ganz zahlBlocks ausgebildet ist, um ebenfalls eine Mit te/SeiteCodierung durchzuführen, die der Mitte/Seite Codierung der Einrichtung (52) zum Liefern entspricht.
13. Vorrichtung nach einem der vorhergehenden Ansprüche, bei der die Einrichtung (60) zum Verarbeiten ausgebil det ist, um einen MPEG2AACDatenstrom zu erzeugen, wobei in einem Feld Ancilliary Data Zusatzinformatio nen für den GanzzahlTransformationsalgorithmus einge bracht sind.
14. Vorrichtung nach einem der vorhergehenden Ansprüche, bei der die Einrichtung zum Verarbeiten (60) ausgebil det ist, um die codierten Audiodaten als Datenstrom mit einer Mehrzahl von Skalierungsschichten aus zugeben.
15. Vorrichtung nach Anspruch 13, bei der die Einrichtung zum Verarbeiten (60) ausgebil det ist, um in eine erste Skalierungsschicht (81) In formationen über den Quantisierungsblock einzufügen, und um in eine zweite Skalierungsschicht (82) Informa tionen über den Differenzblock einzufügen.
16. Vorrichtung nach Anspruch 13, bei der die Einrichtung zum Verarbeiten (60) ausgebil det ist, um in eine erste Skalierungsschicht Informa tionen über den Quantisierungsblock einzufügen, und um die Informationen über den Differenzblock in zumindest eine zweite und eine dritte Skalierungsschicht einzu fügen.
17. Vorrichtung nach Anspruch 15, bei der in der zweiten Skalierungsschicht Differenz Spektralwerte mit reduzierter Genauigkeit enthalten sind, und in einer oder mehreren höheren Skalierungs schichten ein restlicher Teil der Differenz Spektralwerte enthalten ist.
18. Vorrichtung nach Anspruch 15 oder 16, bei der die Informationen über den Differenzblock bi när codierte DifferenzSpektralwerte umfassen, bei der die zweite Skalierungsschicht für Differenz Spektralwerte eine Anzahl von Bits von einem höchstwertigen Bit (MSB) zu einem niederwertigen Bit (MSBx) für einen DifferenzSpektralwert umfaßt, und bei der die dritte Skalierungsschicht eine Anzahl von Bits ausgehend von einem niederwertigen Bit (MSBx1) bis zu einem niederstwertigen Bit (LSB) umfaßt.
19. Vorrichtung nach Anspruch 17, bei der das zeitdiskrete Audiosignal in einer Form von Abtastwerten mit einer Breite von 24 Bits vorliegt, und bei der die Einrichtung zum Verarbeiten (60) ausgebil det ist, um höherwertige 16 Bits der Differenz Spektralwerte in die zweite Skalierungsschicht einzu fügen, und um restliche. 8 Bits eines Differenz Spektralwerts in die dritte Skalierungsschicht einzu fügen, so daß ein Decodierer unter Verwendung der zweiten Skalierungsschicht eine CDQualität erreicht, wobei ein Decodierer unter Verwendung auch der dritten Skalierungsschicht eine StudioQualität erreicht.
20. Vorrichtung nach Anspruch 15, bei der die Einrichtung (60) zum Verarbeiten ausgebil det ist, um in eine zweite Skalierungsschicht zumin dest einen Teil von DifferenzSpektralwerten zur Dar stellung eines tiefpaßgefilterten Signals einzufügen und in zumindest eine weitere Skalierungsschicht eine Differenz zwischen den DifferenzSpektralwerten in der zweiten Skalierungsschicht und ursprünglichen Diffe renzSpektralwerten einzufügen.
21. Vorrichtung nach Anspruch 15 oder 19, bei der die Einrichtung (60) zum Verarbeiten ausgebil det ist, um in eine zweite Skalierungsschicht zumin dest einen Teil von DifferenzSpektralwerten bis zu einer bestimmten Grenzfrequenz einzufügen, und um in einer dritten Skalierungsschicht zumindest einen Teil von DifferenzSpektralwerten ab der bestimmten Grenz frequenz zu einer höheren Frequenz einzufügen.
22. Verfahren zum Codieren eines zeitdiskreten Audiosig nals, um codierte Audiodaten zu erhalten, mit folgen den Schritten : Liefern (52) eines QuantisierungsBlocks von unter Verwendung eines psychoakustischen Modells (54) quan tisierten Spektralwerten des zeitdiskreten Audiosig nals ; inverses Quantisieren (58) des Quantisierungsblocks und zum Runden der invers quantisierten Spektralwerte, um einen RundungsBlock von gerundeten invers quanti sierten Spektralwerten zu erhalten ; Erzeugen (56) eines GanzzahlBlocks von ganzzahligen Spektralwerten ~unter Verwendungeines Ganzzahl Transformationsalgorithmus, der ausgebildet ist, um aus einem Block von ganzzahligen zeitdiskreten Abtast werten den GanzzahlBlock von Spektralwerten zu er zeugen ; Bilden (58) eines DifferenzBlocks, der von einer spektralwertweisen Differenz zwischen dem Rundungs Block und dem GanzzahlBlock abhängt, um einen Diffe renzBlock mit DifferenzSpektralwerten zu erhalten ; und Verarbeiten (60) des QuantisierungsBlocks und des DifferenzBlocks, um codierte Audiodaten zu erzeugen, die Informationen über den QuantisierungsBlock und Informationen über den DifferenzBlock umfassen.
23. Vorrichtung zum Decodieren von codierten Audiodaten, die aus einem zeitdiskreten Audiosignal durch Liefern (52) eines QuantisierungsBlocks von unter Verwendung eines psychoakustischen Modells (54) quantisierten Spektralwerten des zeitdiskreten Audiosignals, durch inverses Quantisieren (58) des Quantisierungsblocks und Runden der invers quantisierten Spektralwerte, um einen RundungsBlock von gerundeten invers quantisier ten Spektralwerten zu erhalten, durch Erzeugen (56) eines GanzzahlBlocks von ganzzahligen Spektralwerten unter Verwendung eines GanzzahlTrans formationsalgorithmus, der ausgebildet ist, um aus ei nem Block von ganzzahligen zeitdiskreten Abtastwerten den GanzzahlBlock von Spektralwerten zu erzeugen, und durch Bilden (58) eines DifferenzBlocks, der von einer. spektralwertweisen Differenz zwischen dem Run= dungsBlock und dem GanzzahlBlock abhängt, um einen DifferenzBlock mit DifferenzSpektralwerten zu erhal ten, erzeugt worden sind, mit folgenden Merkmalen : einer Einrichtung (70) zum Verarbeiten der codierten Audiodaten, um einen QuantisierungsBlock und einen DifferenzBlock zu erhalten ; einer Einrichtung (74) zum inversen Quantisieren und Runden des QuantisierungsBlocks, um einen ganzzahli gen invers quantisierten QuantisierungsBlock zu er halten ; einer Einrichtung (78) zum spektralwertweisen Kombi nieren des ganzzahligen QuantisierungsBlocks und des DifferenzBlocks, um einen KombinationsBlock zu er halten ; und einer Einrichtung (82) zum Erzeugen einer zeitlichen Darstellung des zeitdiskreten Audiosignals unter Ver wendung des KombinationsBlocks und unter Verwendung eines zu dem GanzzahlTransformationsalgorithmus in versen GanzzahlTransformationsalgorithmus.
24. Vorrichtung zum Decodieren nach Anspruch 22, bei der die codierten Audiodaten skaliert sind und ei ne Mehrzahl von Skalierungsschichten umfassen, bei der die Einrichtung (70) zum Verarbeiten der co dierten Audiodaten ausgebildet ist, um als erste Ska lierungsschicht den Quantisierungsblock aus den co dierten Audiodaten zu ermitteln, und um als zweite Skalierungsschicht den Differenzblock aus den codier ten Audiodaten zu ermitteln.
25. Vorrichtung nach Anspruch 22, bei der die Informationen über den Differenzblock bi när codierte DifferenzSpektralwerte umfassen, bei der die codierten Audiodaten skaliert sind und ei ne Mehrzahl von Skalierungsschichten umfassen, bei der die Einrichtung (70) zum Verarbeiten der co dierten Audiodaten ausgebildet ist, um als erste Ska lierungsschicht den Quantisierungsblock aus den co dierten Audiodaten zu ermitteln, und um als zweite Skalierungsschicht eine Darstellung der Differenz Spektralwerte mit reduzierter Genauigkeit zu extrahie ren.
26. Vorrichtung nach Anspruch 24, bei der. die Einrichtung (70) zum Verarbeiten derco^ dierten Audiodaten ausgebildet ist, um als zweite Ska lierungsschicht eine Anzahl von Bits ausgehend von ei nem höchstwertigen Bit bis zu einem niederwertigen Bit, das höherwertig als ein niederstwertiges Bit ei nes DifferenzSpektralwerts ist, zu extrahieren, und bei der die Einrichtung (82) zum Erzeugen einer zeit lichen Darstellung des zeitdiskreten Audiosignals aus gebildet ist, um vor einer Verwendung des Ganzzahl Transformationsalgorithmus fehlende Bits für einen^ DifferenzSpektralwert synthetisch zu erzeugen.
27. Vorrichtung nach Anspruch 25, bei der die Einrichtung (82) ausgebildet ist, um zur synthetischen Erzeugung eine Heraufskalierung der zweiten Skalierungsschicht durchzuführen, wobei bei der Heraufskalierung ein Skalierungsfaktor verwendet wird, der gleich 2n ist, wobei n gleich der Anzahl von niederwertigen Bits ist, die in der zweiten Skalie rungsschicht nicht enthalten sind, oder um zur synthe tischen Erzeugung einen DitheringAlgorithmus einzu setzen.
28. Vorrichtung nach Anspruch 22, bei der die codierten Audiodaten skaliert sind und ei ne Mehrzahl von Skalierungsschichten umfassen, und bei der die Einrichtung (70) zum Verarbeiten der co dierten Audiodaten ausgebildet ist, um als erste Ska lierungsschicht den Quantisierungsblock aus den co dierten Au. dioda. ten zu ermitteln, und um als zweite Skalierungsschicht tiefpassgefilterte Differenz Spektralwerte zu ermitteln.
29. Vorrichtung nach Anspruch 22 oder 27, bei der die codierten Audiodaten skaliert sind und ei ne Mehrzahl von Skalierungsschichten umfassen, und bei der die Einrichtung (70) zum Verarbeiten der co dierten Audiodaten ausgebildet ist, um als erste'Ska lierungsschicht den Quantisierungsblock aus den co dierten Audiodaten zu ermitteln, und um als zweite Skalierungsschicht DifferenzSpektralwerte bis zu ei ner ersten Grenzfrequenz zu ermitteln, wobei die erste Grenzfrequenz kleiner als eine maximale Frequenz eines DifferenzSpektralwerts ist, der in einem Codierer er zeugbar ist.
30. Vorrichtung nach Anspruch 28, bei der die Einrichtung (82) zum Erzeugen einer zeit lichen Darstellung ausgebildet ist, um Eingangswerte in einen GanzzahlTransformationsalgorithmus voller Länge, die oberhalb der Grenzfrequenz der zweiten Ska lierungsschicht sind, auf einen vorbestimmten Wert zu setzen, und um die zeitliche Darstellung des zeitdis kreten Audiosignals nach dem Verwenden des inversen GanzzahlTransformationsalgorithmus mit einem Faktor herunterabzutasten, der entsprechend einem Verhältnis einer maximalen Frequenz eines Differenz Spektralwerts, der von einem Codierer erzeugbar ist, und der Grenzfrequenz gewählt wird.
31. Vorrichtung nach Anspruch 29, bei der der vorbestimmte Wert für alle Eingangswerte oberhalb der Grenzfrequenz gleich Null ist.
32. Verfahren zum Decodieren von codierten Audiodaten, die aus einem zeitdiskreten Audiosignal durch Liefern, in verses Quantisieren, Erzeugen, Bilden und Verarbeiten erzeugt worden sind, mit folgenden Schritten : Verarbeiten (70) der codierten Audiodaten, um einen QuantisierungsBlock und einen DifferenzBlock zu er halten ; inverses Quantisieren (74) des QuantisierungsBlocks und Runden, um einen ganzzahligen invers quantisierten QuantisierungsBlock zu erhalten ; spektralwertweises Kombinieren (78) des ganzzahligen QuantisierungsBlocks und des DifferenzBlocks, um ei nen KombinationsBlock zu erhalten ; und Erzeugen (82) einer zeitlichen Darstellung des zeit diskreten Audiosignals unter Verwendung des Kombina tionsBlocks und unter Verwendung eines zu dem Ganz zahlTransformationsalgorithmus inversen Ganzzahl Transformationsalgorithmus.
33. ComputerProgramm mit einem Programmcode zur Durchfüh rung des Verfahrens zum Codieren nach Anspruch 21, wenn das Programm auf einem Computer abläuft.
34. ComputerProgramm mit einem Programmcode zur Durchfüh rung des Verfahrens zum Decodieren nach Anspruch 31, wenn das Programm auf einem Computer abläuft.
Description:
Vorrichtung und Verfahren zum Codieren eines zeitdiskreten Audiosignals und Vorrichtung und Verfahren zum Decodieren von codierten Audiodaten Beschreibung Die vorliegende Erfindung bezieht sich auf die Audiocodie- rung/Audiodecodierung und insbesondere auf skalierbare Co- dier/Decodier-Algorithmen mit einer psychoakustischen ers- ten Skalierungsschicht und einer zweiten Skalierungs- schicht, die Zusatzaudiodaten für eine verlustlose Decodie- rung umfaßt.

Moderne Audiocodierverfahren, wie z. B. MPEG Layer3 (MP3) oder MPEG AAC verwenden Transformationen wie beispielsweise die sogenannte modifizierte diskrete Kosinustransformation (MDCT), um eine blockweise Frequenzdarstellung eines Audio- signals zu erhalten. Ein solcher Audiocodierer erhält übli- cherweise einen Strom von zeitdiskreten Audio-Abtastwerten.

Der Strom von Audio-Abtastwerten wird gefenstert, um einen gefensterten Block von beispielsweise 1024 oder 2048 ge- fensterten Audio-Abtastwerten zu erhalten. Zur Fensterung werden verschiedene Fensterfunktionen eingesetzt, wie z. B. ein Sinus-Fenster, etc.

Die gefensterten zeitdiskreten Audio-Abtastwerte werden dann mittels einer Filterbank in eine spektrale Darstellung umgesetzt. Prinzipiell kann hierzu eine Fourier- Transformation, oder aus speziellen Gründen eine Abart der Fourier-Transformation, wie z. B. eine FFT oder, wie es ausgeführt worden ist, eine MDCT eingesetzt werden. Der Block von Audio-Spektralwerten am Ausgang der Filterbank

kann dann je nach Bedarf weiter verarbeitet werden. Bei den oben bezeichneten Audio-Codierern folgt eine Quantisierung der Audio-Spektralwerte, wobei die Quantisierungsstufen ty- pischerweise so gewählt werden, daß das durch das Quanti- sieren eingeführt Quantisierungsrauschen unterhalb der psy- choakustischen Maskierungsschwelle liegt, d. h."wegmas- kiert"wird. Die Quantisierung ist eine verlustbehaftete Codierung. Um eine weitere Datenmengenreduktion zu erhal- ten, werden die quantisierten Spektralwerte anschließend beispielsweise mittels einer Huffman-Codierung Entropie- codiert. Durch Hinzufügen von Seiteninformationen, wie z.

B. Skalenfaktoren etc. wird aus den Entropie-codierten quantisierten Spektralwerten mittels eines Bitstrom- Multiplexers ein Bitstrom gebildet, der gespeichert oder übertragen werden kann.

Im Audio-Decodierer wird der Bitstrom mittels eines Bit- strom-Demultiplexers in codierte quantisierte Spektralwerte und Seiteninformationen aufgeteilt. Die Entropie-codierten quantisierten Spektralwerte werden zunächst Entropie- decodiert, um die quantisierten Spektralwerte zu erhalten.

Die quantisierten Spektralwerte werden dann invers quanti- siert, um decodierte Spektralwerte zu erhalten, die Quanti- sierungsrauschen aufweisen, das jedoch unterhalb der psy- choakustischen Maskierungsschwelle liegt und daher unhör- bar sein wird. Diese Spektralwerte werden dann mittels ei- nes Synthese-Filterbank in eine zeitliche Darstellung umge- setzt, um zeitdiskrete decodierte Audio-Abtastwerte zu er- halten. In der Synthese-Filterbank muß ein zum Transforma- tions-Algorithmus inverser Transformations-Algorithmus ein- gesetzt werden. Außerdem muß nach der Frequenz-Zeit- Rücktransformation das Fenstern rückgängig gemacht werden.

Um eine gute Frequenzselektivität zu erreichen, verwenden moderne Audio-Codierer typischerweise eine Block- Überlappung. Ein solcher Fall ist in Fig. 4a dargestellt.

Zunächst werden beispielsweise 2048 zeitdiskrete Audio- Abtastwerte genommen und mittels einer Einrichtung 402 ge- fenstert. Das Fenster, das die Einrichtung 402 verkörpert, hat eine Fensterlänge von 2N Abtastwerten und liefert aus- gangsseitig einen Block von 2N gefensterten Abtastwerten.

Um eine Fensterüberlappung zu erreichen, wird mittels einer Einrichtung 404, die lediglich aus Übersichtlichkeitsgrün- den in Fig. 4a getrennt von der Einrichtung 402 dargestellt ist, ein zweiter Block von 2N gefensterten Abtastwerten ge- bildet. Die in die Einrichtung 404 eingespeisten 2048 Ab- tastwerte sind jedoch nicht die an das erste Fenster unmit- telbar anschließenden zeitdiskreten Audio-Abtastwerte, son- dern beinhalten die zweite Hälfte der durch die Einrichtung 402 gefensterten Abtastwerte und beinhalten zusätzlich le- diglich 1024"neue"Abtastwerte. Die Überlappung ist durch eine Einrichtung 406 in Fig. 4a symbolisch dargestellt, die einen Überlappungsgrad von 50% bewirkt. Sowohl die durch die Einrichtung 402 ausgegebenen 2N gefensterten Abtastwer- te als auch die durch die Einrichtung 404 ausgegebenen 2N gefensterten Abtastwerte werden dann mittels einer Einrich- tung 408 bzw. 410 dem MDCT-Algorithmus unterzogen. Die Ein- richtung 408 liefert gemäß dem bekannten MDCT-Algorithmus N Spektralwerte für das erste Fenster, während die Einrich- tung 410 ebenfalls N Spektralwerte liefert, jedoch für das zweite Fenster, wobei zwischen dem ersten Fenster und dem zweiten Fenster eine Überlappung von 50% besteht.

Im Decodierer werden die N Spektralwerte des ersten Fens- ters, wie es in Fig. 4b gezeigt ist, einer Einrichtung 412, die eine inverse modifizierte diskrete Kosinustransformati-

on durchführt, zugeführt. Dasselbe gilt für die N Spektral- werte des zweiten Fensters. Diese werden einer Einrichtung 414 zugeführt, die ebenfalls eine inverse modifizierte dis- krete Kosinustransformation durchführt. Sowohl die Einrich- tung 412 als auch die Einrichtung 414 liefern jeweils 2N Abtastwerte für das erste Fenster bzw. 2N Abtastwerte für das zweite Fenster.

In einer Einrichtung 416, die in Fig. 4b mit TDAC (TDAC = Time Domain Aliasing Cancellation) bezeichnet ist, wird die Tatsache berücksichtigt, daß die beiden Fenster überlappend sind. Insbesondere wird ein Abtastwert y, der zweiten Hälf- te des ersten Fensters, also mit einem Index N+k, mit einem Abtastwert Y2 aus der ersten Hälfte des zweiten Fensters, also mit einem Index k summiert, so daß sich ausgangssei- tig, also im Decodierer, N decodierte zeitliche Abtastwerte ergeben.

Es sei darauf hingewiesen, daß durch die Funktion der Ein-. richtung 416, die auch als Add-Funktion bezeichnet wird, die in dem durch Fig. 4a schematisch dargestellten Codierer durchgeführte Fensterung gewissermaßen automatisch berück- sichtigt wird, so daß in dem durch Fig. 4b dargestellten Decodierer keine explizite"inverse Fensterung"stattzufin- den hat.

Wenn die durch die Einrichtung 402 oder 404 implementierte Fensterfunktion mit w (k) bezeichnet wird, wobei der Index k den Zeitindex darstellt, bezeichnet wird, so muß die Bedin- gung erfüllt sein, daß. das Fenstergewicht w (k) im Quadrat addiert zu dem Fenstergewicht w (N+k) im Quadrat zusammen 1 ergibt, wobei k von 0 bis N-1 läuft. Wenn ein Sinus-Fenster verwendet wird, dessen Fenster-Gewichtungen der ersten

Halbwelle der Sinus-Funktion folgen, so ist diese Bedingung immer erfüllt, da das Quadrat des Sinus und das Quadrat des Kosinus für jeden Winkel zusammen den Wert 1 ergeben.

Nachteilig an dem in Fig. 4a beschriebenen Fenster- Verfahren mit anschließender MDCT-Funktion ist die Tatsa- che, daß die Fensterung durch Multiplikation eines zeitdis- kreten Abtastwerts, wenn an ein Sinus-Fenster gedacht wird, mit einer Gleitkommazahl erreicht wird, da der Sinus eines Winkels zwischen 0 und 180 Grad abgesehen von dem Winkel 90 Grad keine Ganzzahl ergibt. Auch wenn ganzzahlige zeitdis- krete Abtastwerte gefenstert werden, entstehen nach dem Fenstern also Gleitkommazahlen.

Daher ist, auch wenn kein psychoakustischer Codierer ver- wendet wird, d. h. wenn eine verlustlose Codierung erreicht werden soll, am Ausgang der Einrichtungen 408 bzw. 410 eine Quantisierung notwendig, um eine einigermaßen überschaubare Entropie-Codierung durchführen zu können.

Wenn also bekannte Transformationen, wie sie anhand von Fig. 4a betrieben worden sind, für ein verlustloses Audio- codieren eingesetzt werden soll, muß entweder eine sehr feine Quantisierung eingesetzt werden, um den resultieren- den Fehler aufgrund der Rundung der Gleitkommazahlen ver- nachlässigen zu können, oder das Fehlersignal muß zusätz- lich beispielsweise im Zeitbereich codiert werden.

Konzepte der ersteren Art, also bei denen die Quantisierung so fein eingestellt, daß der resultierende Fehler aufgrund der Rundung der Gleitkommazahlen vernachlässigbar ist, sind beispielsweise in der deutschen Patentschrift DE 197 42 201 Cl offenbart. Hier wird ein Audiosignal in seine spektrale

Darstellung überführt und quantisiert, um quantisierte Spektralwerte zu erhalten. Die quantisierten Spektralwerte werden wieder invers quantisiert, in den Zeitbereich über- führt und mit dem ursprünglichen Audiosignal verglichen.

Liegt der Fehler, also der Fehler zwischen dem ursprüngli- chen Audiosignal und dem quantisierten/invers quantisierten Audiosignal, oberhalb einer Fehlerschwelle, so wird der Quantisierer rückkopplungsmäßig feiner eingestellt, und der Vergleich wird erneut durchgeführt. Die Iteration. ist been-. det, wenn die Fehlerschwelle unterschritten wird. Das dann noch möglicherweise vorhandene Restsignal wird mit einem Zeitbereichscodierer codiert und in einen Bitstrom ge- schrieben, der neben dem Zeitbereichs-codierten Restsignal auch codierte Spektralwerte umfaßt, die gemäß den Quanti- sierereinstellungen quantisiert worden sind, die zum Zeit- punkt des Abbruchs der Iteration vorhanden waren. Es sei darauf hingewiesen, daß der verwendete Quantisierer nicht von einem psychoakustischen Modell gesteuert werden muß, so daß die codierten Spektralwerte. typischerweise genauer quantisiert sind, als dies aufgrund des psychoakustischen Modells sein müßte.

In der Fachveröffentlichung"A Design of Lossy and Lossless Scalable Audio Coding", T. Moriya u. a., Proc. ICASSP, 2000, ist ein skalierbarer Codierer beschrieben, der als erstes verlustbehaftetes Datenkompressionsmodul z. B. einen MPEG- Codierer umfaßt, der eine blockweise digitale Signalform als Eingangssignal hat und den komprimierten Bitstrom er- zeugt. In einem ebenfalls vorhandenen lokalen Decodierer wird die Codierung wieder rückgängig gemacht, und es wird ein codiertes/decodiertes Signal erzeugt. Dieses Signal wird mit dem ursprünglichen Eingangssignal verglichen, in- dem das codierte/decodierte Signal von dem ursprünglichen

Eingangssignal subtrahiert wird. Das Fehlersignal wird dann in ein zweites Modul eingespeist, wo eine verlustlose Bit- konversion verwendet wird. Diese Konversion hat zwei Schritte. Der erste Schritt besteht in einer Konversion von einem Zweierkomplementformat in ein Vorzeichen-Betrag- Format. Der zweite Schritt besteht in der Umwandlung von einer vertikalen Betragssequenz in eine horizontale Bitse- quenz in einem Verarbeitungsblock. Die verlustlose Datenum- wandlung wird ausgeführt, um die Anzahl von Nullen zu maxi- mieren oder die Anzahl von aufeinanderfolgenden Nullen in einer Sequenz zu maximieren, um eine möglichst gute Kompri- mierung des zeitlichen Fehlersignals, das als Folge von di- gitalen Zahlen vorliegt, zu erreichen. Dieses Prinzip ba- siert auf einem Bit-Slice-Arithmetic-Coding- (BSAC-) Sche- ma, das in der Fachveröffentlichung"Multi-Layer Bit Sliced Bit Rate Scalable Audio Coder", 103. AES-Convention, Preprint Nr. 4520,1997, dargestellt ist.

Nachteilig an den vorstehend beschriebenen Konzepten ist die Tatsache, daß die Daten für die verlustlose Erweite- rungsschicht, d. h. die Zusatzdaten, die benötigt werden, um eine verlustlose Decodierung des Audiosignals zu errei- chen, im Zeitbereich gewonnen werden müssen. Dies bedeutet, daß eine vollständige Decodierung einschließlich einer Fre- quenz/Zeit-Umsetzung erforderlich ist, um das codier- te/decodierte Signal im Zeitbereich zu erhalten, damit mit- tels einer Abtastwert-weisen Differenzbildung zwischen dem ursprünglichen Audioeingangssignal und dem codier- ten/decodierten Audiosignal, das aufgrund der psychoakusti- schen Codierung verlustbehaftet ist, das Fehlersignal be- rechnet wird. Dieses Konzept ist insbesondere dahingehend nachteilhaft, daß im Codierer, der den Audiodatenstrom er- zeugt, sowohl eine komplette Zeit-Frequenz-

Umsetzungseinrichtung, wie z. B. eine Filterbank bzw. z. B. ein MDCT-Algorithmus für die Hintransformation benötigt wird, und gleichzeitig, lediglich um das Fehlersignal zu erzeugen, eine komplette inverse Filterbank bzw. ein kom- pletter Synthesealgorithmus benötigt wird. Der Codierer muß daher zusätzlich zu seinen inhärenten Codiererfunktionali- täten auch die komplette Decodiererfunktionalität enthal- ten. Wenn der Codierer softwaremäßig implementiert ist, so werden hierfür sowohl Speicherkapazitäten als auch Prozes- sorkapazitäten benötigt, die zu einer Codiererimplementati- on mit erhöhtem Aufwand führt.

Die Aufgabe der vorliegenden Erfindung besteht darin, ein weniger aufwendiges Konzept zu schaffen, durch das ein Au- diodatenstrom erzeugbar ist, der zumindest nahezu ver- lustlos decodierbar ist.

Diese Aufgabe wird durch eine Vorrichtung zum Codieren ei- nes zeitdiskreten. Audio. signals nach. Patentanspruch 1, durch ein Verfahren zum Codieren eines zeitdiskreten Audiosignals nach Patentanspruch 21, durch eine Vorrichtung zum Decodie- ren von codierten Audiodaten nach Patentanspruch 22, durch ein Verfahren zum Decodieren von codierten Audiodaten nach Patentanspruch 31 oder durch ein Computer-Programm nach An- spruch 32 oder 33 gelöst.

Der vorliegenden Erfindung liegt die Erkenntnis zugrunde, daß die Zusatzaudiodaten, die eine verlustlose Decodierung des Audiosignals ermöglichen, dadurch gewonnen werden kön- nen, daß ein Block von quantisierten Spektralwerten wie üb- lich bereitgestellt wird, und dann invers quantisiert wird, um invers quantisierte Spektralwerte zu haben, die aufgrund der Quantisierung mittels eines psychoakustischen Modells

verlustbehaftet sind. Diese invers quantisierten Spektral- werte werden dann gerundet, um einen Rundungs-Block von ge- rundeten invers quantisierten Spektralwerten zu erhalten.

Als Referenz zur Differenzbildung wird erfindungsgemäß ein Ganzzahl-Transformationsalgorithmus verwendet, welcher aus einem Block von ganzzahligen zeitdiskreten Abtastwerten ei- nen Ganzzahl-Block von Spektralwerten, der lediglich ganz- zahlige Spektralwerte aufweist, erzeugt. Erfindungsgemäß wird nunmehr die Kombination der Spektralwerte im Rundungs- Block und im Ganzzahl-Block spektralwertweise, also im Fre- quenzbereich durchgeführt, so daß im Codierer selbst kein Synthesealgorithmus, also eine inverse Filterbank oder ein inverser MDCT-Algorithmus etc. benötigt wird. Der Kombina- tions-Block, der die Differenz-Spektralwerte aufweist, um- faßt aufgrund des Ganzzahl-Transformationsalgorithmus und der gerundeten Quantisierungswerte lediglich ganzzahlige Werte, die auf irgendeine bekannte Art und Weise Entropie- codiert werden können. Es sei darauf hingewiesen, daß zur Entropie-Codierungdes Kombmationsblocks. beliebige. Entro- pie-Codierer eingesetzt werden können, wie z. B. Huffman- Codierer oder arithmetische Codierer etc.

Zur Codierung der quantisierten Spektralwerte des Quanti- sierungsblocks können ebenfalls beliebige Codierer einge- setzt werden, wie z. B. die bekannten für moderne Audioco- dierer üblichen Werkzeuge.

Es sei darauf hingewiesen, daß das erfindungsgemäße Co- dier/Decodierkonzept kompatibel ist mit modernen Codier- werkzeugen, wie z. B. Fenster-Umschalten, TNS oder Mit- te/Seite-Codierung für mehrkanalige Audiosignale.

Bei einem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung wird zum Liefern eines Quantisierungsblocks von unter Verwendung eines psychoakustischen Modells quanti- sierten Spektralwerten eine MDCT eingesetzt. Darüber hinaus wird es bevorzugt, als Ganzzahl-Transformationsalgorithmus eine sogenannte IntMDCT einzusetzen.

Bei einem alternativen Ausführungsbeispiel der vorliegenden Erfindung kann auf die übliche MDCT verzichtet werden, und es kann die IntMDCT als Annäherung für die MDCT verwendet werden, und zwar dahingehend, daß das ganzzahlige Spektrum, das durch den Ganzzahl-Transformationsalgorithmus erhalten wird, einem psychoakustischen Quantisierer zugeführt wird, um quantisierte IntMDCT-Spektralwerte zu erhalten, die dann wieder invers quantisiert und gerundet werden, um mit den ursprünglichen Ganzzahl-Spektralwerten verglichen zu wer- den. In diesem Fall wird lediglich nur noch eine einzige Transformation benötigt, nämlich die IntMDCT, die aus ganz- zahligen zeitdiskreten Abtastwerten ganzzahlige Spektral- werte erzeugt.

Typischerweise arbeiten Prozessoren mit ganzen Zahlen, bzw. jede Gleitkommazahl ist als eine ganze Zahl darstellbar.

Wenn eine Ganzzahl-Arithmetik in einem Prozessor verwendet wird, so kann auf das Runden der invers quantisierten Spektralwerte verzichtet werden, da aufgrund der Arithmetik des Prozessors ohnehin gerundete Werte, nämlich innerhalb der Genauigkeit des LSB, d. h. des niederstwertigen Bits, vorliegen. In diesem Fall wird eine vollständig verlustlose Verarbeitung erreicht, d. h. eine Verarbeitung innerhalb der Genauigkeit des verwendeten Prozessorsystems. Alterna- tiv kann jedoch eine Rundung auf eine gröbere Genauigkeit durchgeführt werden, dahingehend, daß das Differenzsignal

im Kombinationsblock auf die durch eine Rundungsfunktion festgelegte Genauigkeit gerundet ist. Das Einführen einer Rundung über die inhärente Rundung eines Prozessorsystems hinaus ermöglicht eine Flexibilität dahingehend, den"Grad" der Verlustlosigkeit der Codierung zu beeinflussen, um im Sinne einer Datenkompression einen nahezu verlustlosen Co- dierer zu schaffen.

Der erfindungsgemäße Decodierer zeichnet sich dadurch aus, daß aus den Audiodaten sowohl die psychoakustisch codierten Audiodaten als auch die Zusatzaudiodaten extrahiert werden, einer möglicherweise vorhandenen Entropie-Decodierung un- terzogen werden und dann wie folgt verarbeitet werden. Zu- nächst wird der Quantisierungsblock im Decodierer invers quantisiert und unter Verwendung derselben Rundungsfunkti- on, die auch im Codierer eingesetzt worden ist, gerundet, um dann zu den Entropie-decodierten Zusatzaudiodaten hinzu- addiert zu werden. Im Decodierer liegen dann sowohl eine . psychoakustisch.. komprimierte spektrale. Darstellung des Au- diosignals als auch eine verlustlose Darstellung des Audio- signals vor, wobei die psychoakustisch komprimierte spekt- rale Darstellung des Audiosignals in den Zeitbereich umzu- setzen ist, um ein verlustbehaftetes codiertes/decodiertes Audiosignal zu erhalten, während die verlustlose Darstel- lung unter Verwendung eines zum Ganzzahl- Transformationsalgoritmus inversen Ganzzahl- Transformationsalgorithmus in den Zeitbereich umgesetzt wird, um ein verlustlos oder, wie es ausgeführt worden ist, nahezu verlustlos codiertes/decodiertes Audiosignal zu er- halten.

Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen detailliert erläutert. Es zeigen : Fig. 1 ein Blockschaltbild einer bevorzugten Einrichtung zum Verarbeiten von zeitdiskreten Audio- Abtastwerten, um ganzzahlige Werte zu erhalten, aus denen ganzzahlige Spektralwerte ermittelbar sind ; Fig. 2 eine schematische Darstellung der Zerlegung einer MDCT und einer inversen MDCT in Givens-Rotationen und zwei DCT-IV-Operationen ; Fig. 3 eine Darstellung zur Veranschaulichung der Zerle- gung der MDCT mit 50-Prozent-Überlappung in Rota- tionen und DCT-IV-Operationen ; Fig. 4a ein schematisches Blockschaltbild eines bekannten Codierers mit MDCT und 50 Prozent Überlappung ; Fig. 4b ein Blockschaltbild eines bekannten Decodierers zum Decodieren der durch Fig. 4a erzeugten Werte ; Fig. 5 ein Prinzipblockschaltbild eines bevorzugten er- findungsgemäßen Codierers ; Fig. 6 ein Prinzipblockschaltbild eines alternativen er- findungsgemäß bevorzugten Codierers ; Fig. 7 ein Prinzipblockschaltbild eines erfindungsgemäß bevorzugten Decodierers ;

Fig. 8a eine schematische Darstellung eines Bitstroms mit einer ersten Skalierungsschicht und einer zweiten Skalierungsschicht ; Fig. 8b eine schematische Darstellung eines Bitstroms mit einer ersten Skalierungsschicht und mehreren wei- teren Skalierungsschichten ; und Fig. 9 eine schematische Darstellung von binär codierten Differenz-Spektralwerten zur Verdeutlichung mög- licher Skalierungen hinsichtlich der Genauigkeit (Bits) der Differenz-Spektralwerte und/oder hin- sichtlich der Frequenz (Abtastrate) der Diffe- renz-Spektralwerte.

Im nachfolgenden wird anhand der Fig. 5 bis 7 auf erfin- dungsgemäße Codiererschaltungen (Fig. 5 und Fig. 6) bzw. eine erfindungsgemäß bevorzugte Decodiererschaltung (Fig.

7) eingegangen. Der in Fig. 5 gezeigte erfindungsg. emäße-. Co-, dierer umfaßt einen Eingang 50, in den ein zeitdiskretes Audiosignal einspeisbar ist, sowie einen Ausgang 52, aus dem codierte Audiodaten ausgebbar sind. Das am Eingang 50 eingespeiste zeitdiskrete Audiosignal wird in eine Einrich- tung 52 zum Liefern eines Quantisierungs-Blocks einge- speist, der ausgangsseitig einen Quantisierungs-Block des zeitdiskreten Audiosignals liefert, der unter Verwendung eines psychoakustischen Modells 54 quantisierte Spektral- werte des zeitdiskreten Audiosignals 50 aufweist. Der er- findungsgemäße Codierer umfaßt ferner eine Einrichtung zum Erzeugen eines Ganzzahl-Blocks unter Verwendung eines Ganz- zahl-Transformationsalgorithmus 56, wobei der Ganzzahl- Algorithmus wirksam ist, um aus ganzzahligen zeitdiskreten Abtastwerten ganzzahlige Spektralwerte zu erzeugen.

Der erfindungsgemäße Codierer umfaßt ferner eine Einrich- tung 58 zum inversen Quantisieren des Quantisierungs- Blocks, der von der Einrichtung 52 ausgegeben wird, und, wenn eine andere Genauigkeit als die Prozessorgenauigkeit erforderlich ist, eine Rundungsfunktion. Wenn bis zur Ge- nauigkeit des Prozessorsystems, wie es ausgeführt worden ist, gegangen werden soll, so ist die Rundungsfunktion be- reits inhärent bei dem inversen Quantisieren des Quantisie- rungs-Blocks enthalten, da ein Prozessor, der eine Ganz- zahlarithmetik hat, ohnehin nicht in der Lage ist, nicht- ganzzahlige Werte zu liefern. Die Einrichtung 58 liefert somit einen sogenannten Rundungs-Block, der invers quanti- sierte Spektralwerte umfaßt, die ganzzahlig sind, d. h. in- härent oder explizit gerundet worden sind. Sowohl der Run- dungs-Block als auch der Ganzzahl-Block werden einer Kombi- nationseinrichtung zugeführt, die unter Verwendung einer Differenzbildung einen Differenz-Block mit Differenz- <BR> <BR> <BR> <BR> Spektralwerten llefert, wobei der Ausdruck, Differ-enz-- Block"darauf hindeuten soll, daß die Differenz- Spektralwerte Werte sind, die Unterschiede zwischen dem Ganzzahl-Block und dem Rundungs-Block umfassen.

Sowohl der Quantisierungs-Block, der aus der Einrichtung 52 ausgegeben wird, als auch der Differenz-Block, der aus der Differenzbildungseinrichtung 58 ausgegeben wird, werden ei- ner Verarbeitungseinrichtung 60 zugeführt, die z. B. eine übliche Verarbeitung des Quantisierungs-Blocks durchführt, und die ferner z. B. eine Entropie-Codierung des Differenz- Blocks bewirkt. Die Einrichtung 60 zum Verarbeiten gibt an dem Ausgang 52 codierte Audiodaten aus, die sowohl Informa- tionen über den Quantisierungs-Block enthalten als auch In- formationen über den Differenz-Block umfassen.

Bei einem ersten bevorzugten Ausführungsbeispiel wird, wie es in Fig. 6 gezeigt ist, das zeitdiskrete Audiosignal mit- tels einer MDCT in seine spektrale Darstellung umgesetzt und dann quantisiert. Die Einrichtung 52 zum Liefern des Quantisierungsblocks besteht somit aus der MDCT-Einrichtung 52a und einem Quantisierer 52b.

Darüber hinaus wird es bevorzugt, den Ganzzahl-Block mit einer IntMDCT 56 als ganzzahligem Transformationsalgorith- mus zu erzeugen.

In Fig. 6 ist ferner die in Fig. 5 gezeigte Verarbeitungs- einrichtung 60 als Bitstrom-Codiereinrichtung 60a zum Bit- strom-Codieren des Quantisierungs-Blocks, der durch die Einrichtung 52b ausgegeben wird, sowie durch einen Entro- pie-Codierer 60b zum Entropie-Codieren des Differenz-Blocks dargestellt. Der Bitstrom-Codierer 60a gibt die psychoakus- <BR> <BR> <BR> <BR> otHisch codierten Audiodaten aus, während der yEntropie- Codierer 60b einen Entropie-codierten Differenz-Block aus- gibt. Die beiden Ausgangsdaten der Blöcke 60a und 60b kön- nen in geeigneter Weise in einen Bitstrom kombiniert wer- den, der als erste Skalierungsschicht die psychoakustisch codierten Audiodaten hat, und der als zweite Skalierungs- schicht die Zusatzaudiodaten für eine verlustlose Decodie- rung hat. Der skalierte Bitstrom entspricht dann den in Fig. 5 gezeigten codierten Audiodaten am Ausgang 52 des Co- dierers.

Bei einem alternativen bevorzugten Ausführungsbeispiel kann auf den MDCT-Block 52a von Fig. 6 verzichtet werden, wie es in Fig. 5 durch einen gestrichelten Pfeil 62 angedeutet ist. In diesem Fall wird das Ganzzahl-Spektrum, das durch

die Ganzzahl-Transformationseinrichtung 56 geliefert wird, sowohl in die Differenz-Bildungseinrichtung 58 eingespeist als auch in den Quantisierer 52b von Fig. 6. Die Spektral- werte, die durch die Ganzzahl-Transformation erzeugt wer- den, werden hier gewissermaßen als Annäherung für eine üb- liches MDCT-Spektrum verwendet. Dieses Ausführungsbeispiel hat den Vorteil, daß nur der IntMDCT-Algorithmus im Codie- rer vorhanden ist, und daß nicht sowohl der IntMDCT- Algorithmus als auch der MDCT-Algorithmus im Codierer vor- handen sein müssen.

Wieder Bezug nehmend auf Fig. 6 sei darauf hingewiesen, daß die durchgezogenen Blöcke und Linien einen üblichen Audio- codierern nach einem der MPEG-Standards darstellen, während die gestrichelten Blöcke und Linien die Erweiterung eines solchen üblichen MPEG-Codierers darstellen. Es ist also zu sehen, daß keine grundsätzliche Änderung des üblichen MPEG- Codierers erforderlich sind, sondern daß die erfindungsge- måße Gewinnung vder Zusatzaudiodaten für eìne _verlustlose Codierung mittels einer Ganzzahl-Transformation ohne Ände- rung der Codierer/Decodierer-Grundstruktur hinzugefügt wer- den können.

Fig. 7 zeigt ein Prinzipblockschaltbild eines erfindungsge- mäßen Decodierers zum Decodieren der an dem Ausgang 52 von Fig. 5 ausgegebenen codierten Audiodaten. Diese werden zu- nächst in psychoakustisch codierte Audiodaten einerseits und die Zusatzaudiodaten andererseits zerlegt. Die psycho- akustisch codierten Audiodaten werden einem üblichen Bit- strom-Decodierer 70 zugeführt, während die Zusatzaudioda- ten, wenn sie im Codierer Entropie-codiert worden sind, mittels eines Entropie-Decodierers 72 Entropie-decodiert werden. Am Ausgang des Bitstrom-Decodierers 70 von Fig. 7

liegen quantisierte Spektralwerte vor, die einem inversen Quantisierer 74 zugeführt werden, der prinzipiell identisch zu dem inversen Quantisierer in der Einrichtung von Fig. 6 aufgebaut sein kann. Wird eine Genauigkeit angestrebt, die nicht der Prozessor-Genauigkeit entspricht, so ist im Deco- dierer ferner eine Rundungseinrichtung 76 vorgesehen, die denselben Rundungsalgorithmus bzw. dieselbe Rundungsfunkti- on zum Abbilden einer reellen Zahl auf eine Ganzzahl durch- führt, wie sie auch in der Einrichtung 58 von Fig. 6 imple- mentiert sein kann. In einem decodiererseitigen Kombinierer 78 werden die gerundeten invers quantisierten Spektralwerte mit den Entropie-codierten Zusatzaudiodaten spektralwert- weise vorzugsweise additiv kombiniert, so daß im Decodierer zum einen invers quantisierte Spektralwerte am Ausgang der Einrichtung 74 vorliegen und zum anderen Ganzzahl- Spektralwerte am Ausgang des Kombinierers 78 vorliegen.

Die ausgangsseitigen Spektralwerte der Einrichtung 74 kön- , nen dann mittels. einer-Einrichtung 80 zum Durchführen einer inversen modifizierten diskreten Kosinustransformation in den Zeitbereich umgesetzt werden, um ein verlustbehaftetes psychoakustisch codiertes und wieder decodiertes Audisignal zu erhalten. Mittels einer Einrichtung 82 zum Durchführen einer inversen Ganzzahl-MDCT (IntMDCT) wird ferner das Aus- gangssignal des Kombinierers 78 in seine zeitliche Darstel- lung umgesetzt, um ein verlustlos codiertes/decodiertes Au- diosignal oder ein, wenn eine entsprechende gröbere Rundung eingesetzt worden ist, ein nahezu verlustlos codiertes und wieder decodiertes Audiosignal zu erzeugen.

Im nachfolgenden wird auf eine besondere bevorzugte Ausfüh- rungsform des Entropie-Codierers 60b von Fig. 6 eingegan- gen. Nachdem in einem üblichen modernen MPEG-Codierer meh-

rere Codetabellen, die abhängig von einer durchschnittli- chen Statistik der quantisierten Spektralwerte ausgewählt werden, vorliegen, wird es bevorzugt, dieselben Codetabel- len oder Codebooks auch für die Entropie-Codierung des Dif- ferenz-Blocks am Ausgang des Kombinierers 58 zu verwenden.

Nachdem der Betrag des Differenz-Blocks, also des Rest- IntMDCT-Spektrums, von der Genauigkeit der Quantisierung abhängt, kann eine Codebuch-Auswahl für den Entropie- Codierer 60b ohne zusätzliche Seiteninformationen durchge- führt werden.

In einem MPEG-2-AAC-Codierer sind die spektralen Koeffi- zienten, also die quantisierten Spektralwerte im Quantisie- rungs-Block in Skalenfaktorbänder gruppiert, wobei die Spektralwerte mit einem Verstärkungsfaktor gewichtet sind, der von einem entsprechenden Skalenfaktor, der einem Ska- lenfaktorband zugeordnet ist, abgeleitet ist. Da in diesem bekannten Codiererkonzept ein ungleichmäßiger Quantisierer . verwendet wird, um die gewichteten. Spektralwerte zu quan- tisieren, hängt die Größe der Restwerte, also der Spektral- werte am Ausgang des Kombinierers 58, nicht nur von den Skalenfaktoren ab, sondern auch von den quantisierten Wer- ten selbst. Nachdem jedoch sowohl die Skalenfaktoren als auch die quantisierten Spektralwerte in dem Bitstrom, der von der Einrichtung 60a von Fig. 6 erzeugt wird, also in den psychoakustisch codierten Audiodaten enthalten sind, wird es bevorzugt, eine Codebuch-Auswahl im Codierer abhän- gig von der Größe der Differenz-Spektralwerte durchzuführen und ferner im Decodierer die im Codierer verwendete Codeta- belle auf der Basis sowohl der im Bitstrom übertragenen Skalenfaktoren als auch der quantisierten Werte zu ermit- teln. Nachdem zum Entropie-Codieren der Differenz- Spektralwerte am Ausgang des Kombinierers 58 keine Seiten-

informationen übertragen werden müssen, führt die Entropie- Codierung lediglich zu einer Datenratenkompression ohne daß irgendwelche Signalisierungsbits im Datenstrom als Seiten- informationen für den Entropie-Codierer 60b aufgewendet werden müßten.

In einem Audiocodierer nach dem Standard MPEG-2 AAC wird eine Fensterumschaltung verwendet, um Vorechos in transien- ten Audiosignalbereichen zu vermeiden. Diese Technik ba- siert auf der Möglichkeit, Fensterformen individuell in je- der Hälfte des MDCT-Fensters auszuwählen, und erlaubt es, die Blockgröße in aufeinanderfolgenden Blöcken zu variie- ren. Auf ähnliche Art und Weise ist der Ganzzahl- Transformationsalgorithmus in Form der IntMDCT, auf die Be- zug nehmend auf die Fig. 1 bis 3 eingegangen wird, ausge- führt, um ebenfalls unterschiedliche Fensterformen beim Fenstern und beim Zeitbereich-Aliasing-Abschnitt der MDCT- Zerlegung zu verwenden. Es wird daher bevorzugt, sowohl für <BR> <BR> <BR> <BR> -_den^Ganzzaohl Transformationsalgorithmus als. auch für den Transformationsalgorithmus zum Erzeugen des Quantisie- rungsblocks dieselben Fensterentscheidungen zu verwenden.

In einem Codierer nach MPEG-2 AAC existieren ferner mehrere weitere Codierwerkzeuge, von denen lediglich TNS (TNS = Temporal Noise Shaping) und Mitte/Seite- (MS) Stereocodie- rung erwähnt seien. Bei einer TNS-Codierung wird genauso wie bei einer MS-Codierung eine Modifikation der Spektral- werte vor der Quantisierung durchgeführt. Folglich nimmt die Differenz zwischen den IntMDCT-Werten, also dem Ganz- zahl-Block, und den quantisierten MDCT-Werten zu. Erfin- dungsgemäß ist der Ganzzahl-Transformationsalgorithmus aus- gebildet, um sowohl eine TNS-Codierung als auch eine Mit- te/Seite-Codierung auch von Ganzzahl-Spektralwerten zuzu-

lassen. Die TNS-Technik basiert auf einer adaptiven Vor- wärtsprädiktion der MDCT-Werte über der Frequenz. Dasselbe Prädiktionsfilter, das von einem üblichen TNS-Modul signal- adaptiv berechnet wird, wird vorzugsweise ebenfalls dazu verwendet, die Ganzzahl-Spektralwerte zu prädizieren, wo- bei, falls dadurch nicht-ganzzahlige Werte entstehen, eine nachgeschaltete Rundung eingesetzt werden kann, um wieder ganzzahlige Werte zu erzeugen. Diese Rundung erfolgt vor- zugsweise nach jedem Prädiktionsschritt. In dem Decodierer kann das ursprüngliche Spektrum wieder rekonstruiert wer- den, indem das inverse Filter und dieselbe Rundungsfunktion eingesetzt werden. Auf ähnliche Art und Weise kann die MS- Codierung ebenfalls auf IntMDCT-Spektralwerte angewendet werden, indem gerundete Givens-Rotationen mit einem Winkel von tut/4, basierend auf dem Lifting-Schema, eingesetzt wer- den. Dadurch können die ursprünglichen IntMDCT-Werte in dem Decodierer wieder rekonstruiert werden. <BR> <BR> <BR> <BR> <BR> <BR> <P>Estsei darauf hingewiesen, ¢daßdas erfindungsgemäße-Konzept in seiner bevorzugten Ausprägung mit der IntMDCT als ganz- zahligem Transformationsalgorithmus auf alle MDCT-basierten gehörangepaßten Audiocodierer angewendet werden kann. Le- diglich beispielhaft sind solche Codierer Codierer nach MPEG-4 AAC Scalable, MPEG-4 AAC Low Delay, MPEG-4 BSAC, MPEG-4 Twin VQ, Dolby AC-3 etc.

Es sei besonders darauf hingewiesen, daß das erfindungsge- mäße Konzept rückwärts kompatibel ist. Der gehörangepaßte Codierer bzw. Decodierer wird nicht verändert, sondern nur erweitert. Zusatzinformationen für die verlustlosen Kompo- nenten lassen sich rückwärts kompatibel im gehörangepaßt codierten Bitstrom übertragen, beispielsweise bei MPEG-2 AAC im Feld"Ancilliary Data". Der Zusatz zum bisherigen

gehörangepaßten Decodierer, der in Fig. 7 gestrichelt ge- zeichnet ist, kann diese Zusatzdaten auswerten und zusammen mit dem quantisierten MDCT-Spektrum vom gehörangepaßten De- codierer das IntMDCT-Spektrum verlustlos rekonstruieren.

Das erfindungsgemäß Konzept der psychoakustischen Codie- rung, ergänzt um eine verlustlose bzw. nahezu verlustlose Codierung eignet sich besonders für die Erzeugung, Übertra- gung und Decodierung von skalierbaren Datenströmen. Es ist bekannt, daß skalierbare Datenströme verschiedene Skalie- rungsschichten umfassen, von denen zumindest die unterste Skalierungsschicht unabhängig von den höheren Skalierungs- schichten übertragen und decodiert werden kann. Weitere Skalierungsschichten oder Enhancement Layers werden bei ei- ner skalierbaren Verarbeitung von Daten der ersten Skalie- rungsschicht oder Grundlayer hinzugefügt. Ein voll ausges- tatteter Codierer kann einen skalierten Datenstrom erzeu- gen, der eine erste Skalierungsschicht hat, und der prinzi- pi. beliebig viele-weitere-Skalierung-ssch-ichten-aufwe. ist-.- Ein Vorteil des Skalierungskonzepts besteht darin, daß in dem Fall, in dem ein breitbandiger Übertragungskanal zur Verfügung steht, der vom Codierer erzeugte skalierte Daten- strom komplett, also inklusive aller Skalierungsschichten über den breitbandigen Übertragungskanal übertragen werden kann. Ist dagegen lediglich ein schmalbandiger Übertra- gungskanal vorhanden, so kann das codierte Signal dennoch über den Übertragungskanal übertragen werden, jedoch ledig- lich in Form der ersten Skalierungsschicht oder einer be- stimmten Anzahl von weiteren Skalierungsschichten, wobei die bestimmte Anzahl kleiner als die gesamte vom Codierer erzeugte Anzahl von Skalierungsschichten ist. Selbstver- ständlich kann der Codierer bereits, angepaßt auf den Ka- nal, mit dem er verbunden ist, die Grundskalierungsschicht

oder erste Skalierungsschicht und eine vom Kanal abhängige Anzahl weiterer Skalierungsschichten erzeugen.

Auf Decodiererseite hat das skalierbare Konzept ferner den Vorteil, daß es rückwärts kompatibel ist. Dies bedeutet, daß ein Decodierer, der nur in der Lage ist, die erste Ska- lierungsschicht zu verarbeiten, einfach die zweite und wei- tere Skalierungsschichten im Datenstrom ignoriert und ein nützliches Ausgangssignal erzeugen kann. Ist der Decodierer dagegen ein typischerweise modernerer Decodierer, der meh- rere Skalierungsschichten aus dem skalierten Datenstrom verarbeiten kann, so kann dieser Codierer mit demselben Da- tenstrom wie ein Basis-Decodierer angesprochen werden.

Bei der vorliegenden Erfindung besteht die grundsätzliche Skalierbarkeit darin, daß der Quantisierungsblock, also die Ausgabe des Bitstrom-Codierers 60a in eine erste Skalie- rungsschicht 81 von Fig. 8 geschrieben wird, die, wenn Fig. <BR> <BR> <BR> <BR> <P>6. betrachtet wird, psychoakustisch codierte--Daten z-B. für- einen Frame umfaßt. Die vorzugsweise Entropie-codierten Differenz-Spektralwerte, die durch die Kombinationseinrich- tung 58 erzeugt werden, werden bei einfacher Skalierbarkeit in die zweite Skalierungsschicht geschrieben, die in Fig.

8a mit 82 bezeichnet ist und somit die Zusatzaudiodaten für einen Frame umfaßt.

Ist der Übertragungskanal vom Codierer zum Decodierer ein breitbandiger Übertragungskanal, so können beide Skalie- rungsschichten 81 und 82 zum Decodierer übertragen werden.

Ist jedoch der Übertragungskanal ein schmalbandiger Über- tragungskanal, in den nur die erste Skalierungsschicht "paßt", so kann einfach die zweite Skalierungsschicht vor der Übertragung vom Datenstrom entfernt werden, so daß ein

Decodierer nur mit der ersten Skalierungsschicht angespro- chen wird.

Auf Decodiererseite kann ein"Basis-Decodierer", der nur die psychoakustisch codierten Daten verarbeiten kann, die zweite Skalierungsschicht 82 einfach weglassen, sofern er diese über einen breitbandigen Übertragungskanal empfangen hat. Ist der Decodierer jedoch ein voll ausgestatteter De- codierer, der sowohl einen psychoakustischen Decodieralgo- rithmus als auch einen Ganzzahl-Decodieralgorithmus umfaßt, so kann dieser voll ausgestattete Decodierer sowohl die erste Skalierungsschicht als auch die zweite Skalierungs- schicht zum Decodieren nehmen, um ein verlustlos codiertes und wieder decodiertes Ausgangssignal zu erzeugen.

Bei einem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung werden, wie es in Fig. 8a schematisch dargestellt ist, wieder in einer ersten Skalierungsschicht die psycho- akustisch cozdierten Daten fürAeinen Frame. sein. Die-zwe-ite-- Skalierungsschicht von Fig. 8a wird nun jedoch feiner ska- liert, so daß aus dieser zweiten Skalierungsschicht in Fig.

8a mehrere Skalierungsschichten entstehen, wie z. B. eine (kleinere) zweite Skalierungsschicht, eine dritte Skalie- rungsschicht, eine vierte Skalierungsschicht, etc.

Die von dem Addierer 58 ausgegebenen Differenz- Spektralwerte eignen sich besonders gut für eine weitere Unter-Skalierung, wie es anhand von Fig. 9 dargestellt wird. Fig. 9 stellt schematisch binär codierte Spektralwer- te dar. Jede Zeile 90 in Fig. 9 stellt einen binär codier- ten Differenz-Spektralwert dar. In Fig. 9 sind die Diffe- renz-Spektralwerte nach der Frequenz geordnet, wie es durch einen Pfeil 91 angedeutet ist. So hat ein Differenz-

Spektralwert 92 eine höhere Frequenz als der Differenz- Spektralwert 90. Die erste Spalte des Tableaus in Fig. 9 stellt das höchstwertige Bit eines Differenz-Spektralwerts vor. Die zweite Stelle stellt das Bit mit der Wertigkeit MSB-1 dar. Die dritte Spalte stellt ein Bit mit der Wertig- keit MSB-2 dar. Die drittletzte Spalte stellt ein Bit mit der Wertigkeit LSB+2 dar. Die vorletzte Spalte stellt ein Bit mit der Wertigkeit LSB+1 dar. Schließlich stellt die letzte Spalte ein Bit mit der. Wertigkeit LSB, also das nie.-. derstwertige Bit eines Differenz-Spektralwerts, dar.

Bei einem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung wird eine Genauigkeits-Skalierung dahingehend vorgenommen, daß als zweite Skalierungsschicht die z. B. 16 höchstwertigsten Bits eines Differenz-Spektralwerts genom- men werden, um dann, falls gewünscht, durch den Entropie- Codierer 60b entropie-codiert zu werden. Ein Decodierer, der die zweite Skalierungsschicht verwendet, erhält ausgangsseitig.,. _....,. Differenz-Spektralwerte.... mit-einer Genauigkeit von 16 Bits, so daß die zweite Skalierungsschicht zusammen mit der ersten Skalierungsschicht ein verlustlos decodiertes Audiosignal in CD-Qualität liefert. Es ist bekannt, daß Audioabtastwerte in CD-Qualität mit einer Breite von 16 Bits vorliegen.

Wird in den Codierer dagegen ein Audiosignal in Studioqua- lität eingespeist, also ein Audiosignal mit Abtastwerten, wobei jeder Abtastwert 24 Bits umfaßt, so kann der Codierer ferner eine dritte Skalierungsschicht erzeugen, die die letzten acht Bit eines Differenz-Spektralwerts umfaßt und ebenfalls je nach Bedarf entropie-codiert wird (Einrichtung 60 von Fig. 6).

Ein voll ausgestatteter Decodierer, der den Datenstrom mit der ersten Skalierungsschicht, der zweiten Skalierungs- schicht (16 höchstwertige Bits der Differenz-Spektralwerte) und der dritten Skalierungsschicht (8 niederwertige Bits eines Differenz-Spektralwerts) erhält, so kann der Decodie- rer unter Verwendung aller drei Skalierungsschichten ein verlustlos codiertes/decodiertes Audiosignal in Studioqua- lität, also mit einer am Ausgang des Decodierers vorliegen- den Wortbreite, eines Abtastwerts von 24 Bits liefern.

Es sei darauf hingewiesen, daß im Studiobereich höhere Wortlängen der Abtastwerte üblich sind als im Consumer- Bereich. Im Consumer-Bereich beträgt die Wortbreite 16 Bits bei einer Audio-CD, während im Studiobereich 24 Bit oder 20 Bit eingesetzt werden.

Basierend auf dem Konzept der Skalierung im IntMDCT-Bereich können somit, wie es dargelegt worden ist, alle drei Genau- ., J-gke. iten.. (16 Bit, 20. Bit oder 24 Bit) oder beliebige-um-mi- nimal 1 Bit skalierte Genauigkeiten skalierbar codiert wer- den.

Hierbei wird das mit 24-Bit-Genauigkeit dargestellte Audio- signal mit Hilfe der inversen IntMDCT im ganzzahligen Spektralbereich dargestellt und mit einem Gehör angepaßt MDCT-basierten Audiocoder-Ausgangssignal skalierbar kombi- niert.

Die ganzzahligen Differenzwerte, die zur verlustlosen Dar- stellung vorhanden sind, werden nun nicht vollständig in einer Skalierungsschicht codiert, sondern zunächst mit ge- ringerer Genauigkeit. Erst in einer weiteren Skalierungs- schicht werden die zur exakten Darstellung nötigen Restwer-

te übertragen. Alternativ könnte jedoch auch in einer wei- teren Skalierungsschicht ein Differenz-Spektralwert insge- samt, also mit 24 Bits beispielsweise, dargestellt sein, so daß zum Decodieren dieser weiteren Skalierungsschicht die darunterliegende Skalierungsschicht nicht benötigt wird.

Dieses Szenario führt jedoch insgesamt zu einer höheren Bitstromgröße, kann jedoch dann, wenn die Bandbreite des Übertragungskanals unproblematisch ist, zu einer Vereinfa- chung im Decodierer beitragen, da im Decodierer dann nicht mehr Skalierungsschichten kombiniert werden müssen, sondern immer eine Skalierungsschicht allein zum Decodieren aus- reicht.

Werden beispielsweise die unteren acht LSB, wie es in Fig.

9 dargestellt ist, zunächst nicht übertragen, so erreicht man eine Skalierbarkeit zwischen 24 Bit und 16 Bit.

Zur Rücktransformation der mit geringerer Genauigkeit über- <BR> <BR> <BR> <BR> tragenen Werte. « in dren. Zeitbereich werden diewüber. trag. enen Werte bevorzugt auf den ursprünglichen Bereich, beispiels- weise 24 Bit, zurückskaliert, indem dieselben beispielswei- se mit 28 multipliziert werden. Auf die entsprechend zu- rückskalierten Werte wird dann eine inverse IntMDCT ange- wandt.

Bei der erfindungsgemäßen Genauigkeitsskalierung im Fre- quenzbereich wird es ferner bevorzugt, auch die Redundanz in den LSBs zu nützen. Hat ein Audiosignal beispielsweise im oberen Frequenzbereich sehr wenig Energie, so äußert sich dies auch beim IntMDCT-Spektrum in sehr kleinen Wer- ten, die beispielsweise deutlich kleiner als die z. B. bei 8 Bit möglichen Werten (-128,. .., 127) sind. Dies äußert sich in einer Komprimierbarkeit der LSB-Werte des IntMDCT-

Spektrums. Ferner wird darauf hingewiesen, daß bei sehr kleinen Differenz-Spektralwerten typischerweise eine Anzahl von Bits von MSB bis MSB-n gleich Null sind, und daß dann erst bei einem Bit mit einer Wertigkeit MSB-n-1 die erste, führende 1 in einem binär codierten Differenz-Spektralwert auftritt. In einem solchen Fall, wenn ein Differenz- Spektralwert in der zweiten Skalierungsschicht nur Nullen umfaßt, eignet sich eine Entropie-Codierung zur weiteren Datenkomprimierung besonders gut.

Gemäß einem weiteren Ausführungsbeispiel der vorliegenden Erfindung wird für die zweite Skalierungsschicht 82 von Fig. 8a eine Abtastraten-Skalierbarkeit bevorzugt. Eine Ab- tastraten-Skalierbarkeit wird dadurch erreicht, daß in der zweiten Skalierungsschicht, wie es in Fig. 9 rechts darge- stellt ist, die Differenz-Spektralwerte bis zu einer ersten Grenzfrequenz enthalten sind, während in einer dritten Ska- lierungsschicht die Differenz-Spektralwerte mit einer Fre- quenz... zwiachen der ersten Grenzfrequenz-und der. maximalen Frequenz enthalten sind. Natürlich kann auch eine weitere Skalierung durchgeführt werden, so daß aus dem gesamten Frequenzbereich mehrere Skalierungsschichten gemacht wer- den.

Bei einem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung umfaßt die zweite Skalierungsschicht in Fig. 9 Differenz-Spektralwerte bis zu einer Frequenz von 24 kHz, was einer Abtastrate von 48 kHz entspricht. Die dritte Ska- lierungsschicht enthält dann die Differenz-Spektralwerte von 24 kHz bis 48 kHz, was einer Abtastrate von 96 kHz ent- spricht.

Es sei ferner darauf hingewiesen, daß in der zweiten Ska- lierungsschicht und der dritten Skalierungsschicht nicht notwendigerweise sämtliche Bits eines Differenz- Spektralwertes codiert sein müssen. So könnten in einer weiteren Form der kombinierten Skalierbarkeit die zweite Skalierungsschicht, die Bits MSB bis MSB-x der Differenz- Spektralwerte bis zu einer bestimmten Grenzfrequenz umfas- sen. Eine dritte Skalierungsschicht könnte dann die Bits MSB bis MSB-x der Differenz-Spektralwerte von der ersten Grenzfrequenz bis zur maximalen Frequenz umfassen. Eine vierte Skalierungsschicht könnte dann die restlichen Bits für die Differenz-Spektralwerte bis zur Grenzfrequenz um- fassen. Die letzte Skalierungsschicht könnte dann die rest- lichen Bits der Differenz-Spektralwerte für die oberen Fre- quenzen umfassen. Dieses Konzept wird zu einer Aufteilung des Tableaus in Fig. 9 in vier Quadranten führen, wobei je- der Quadrant eine Skalierungsschicht darstellt. <BR> <BR> <BR> <BR> <BR> <BR> <P>., Bei.. der. Jfre-quenzmäßigen.. Skalie. rbarkeit-wid-bei'-'einem''be--- vorzugtem Ausführungsbeispiel der vorliegenden Erfindung eine Skalierbarkeit zwischen 48 kHz und 96 kHz Abtastrate beschrieben. Das 96 kHz-Abtastsignal wird im IntMDCT- Bereich in der verlustlosen Erweiterungsschicht zunächst nur bis zu Hälfte codiert und übertragen. Falls der obere Teil nicht zusätzlich übertragen wird, wird er im Decodie- rer zu Null angenommen. Bei der inversen IntMDCT (gleiche Länge wie im Encoder) entsteht dann ein 96 kHz-Signal, das im oberen Frequenzbereich keine Energie enthält und daher ohne Qualitätsverluste auf 48 kHz unter-abgetastet werden kann.

Die vorstehende Skalierung der Differenz-Spektralwerte in Quadranten von Fig. 9 mit festen Grenzen ist hinsichtlich

der Größe der Skalierungsschichten günstig, da in einer Skalierungsschicht tatsächlich lediglich z. B. 16 Bits bzw.

8 Bits oder die Spektralwerte bis zu der Grenzfrequenz bzw. über der Grenzfrequenz enthalten sein müssen.

Eine alternative Skalierung besteht darin, die Quadranten- grenzen in Fig. 9 gewissermaßen"aufzuweichen". Am Beispiel der Frequenzskalierbarkeit würde das bedeuten, nicht einen sogenannten Brickwall-Tiefpaß"anzuwenden, dahingehend, daß die Differenz-Spektralwerte vor einer Grenzfrequenz un- verändert sind und nach der Grenzfrequenz gleich Null sind.

Stattdessen könnten die Differenz-Spektralwerte auch mit irgendeinem beliebigen Tiefpaß gefiltert sein, der die Spektralwerte unterhalb der Grenzfrequenz schon etwas be- einträchtigt, aber oberhalb der Grenzfrequenz dazu führt, daß hier ebenfalls noch Energie vorhanden ist, obgleich die Differenz-Spektralwerte energiemäßig abnehmend sind. In ei- ner solchermaßen erzeugten Skalierungsschicht sind dann <BR> <BR> <BR> <BR> auch Spektralwerste oberhalb deL Grenzfrequenz enthalt-en-.-Da diese Spektralwerte jedoch relativ klein sind, sind sie durch eine Entropie-Codierung effizient codierbar. Die höchste Skalierungsschicht hätte in diesem Fall die Diffe- renz zwischen den kompletten Differenz-Spektralwerten und den in der zweiten Skalierungsschicht enthaltenen Spektral- werten.

Ähnlich kann auch die Genauigkeitsskalierung gewissermaßen aufgeweicht werden. So kann die erste Skalierungsschicht auch Spektralwerte mit z. B. mehr als 16 Bit haben, wobei nächste Skalierungsschicht dann noch die Differenz hat.

Allgemein gesagt hat die zweite Skalierungsschicht somit die Differenz-Spektralwerte mit geringerer Genauigkeit, während in der nächsten Skalierungsschicht der Rest, also

die Differenz zwischen den kompletten Spektralwerten und den in der zweiten Skalierungsschicht enthaltenen Spektral- werten übertragen wird. Damit wird eine variable Genauig- keitsreduzierung erreicht.

Das erfindungsgemäße Verfahren zum Codieren bzw. Decodieren ist vorzugsweise auf einem digitalen Speichermedium, wie z.

B. einer Diskette, mit elektronisch auslesbaren Steuersig- nalen gespeichert, wobei die Steuersignale so mit einem programmierbaren Computersystem zusammenarbeiten können, dass das Codier-und/oder Decodierverfahren ausgeführt wer- den kann/können. In anderen Worten ausgedrückt liegt also ein Computer-Programm-Produkt mit auf einem maschinenlesba- ren Träger gespeichertem Programmcode zur Durchführen des Codierverfahrens und/oder des Decodierverfahrens vor, wenn das Programmprodukt auf einem Rechner abläuft. Die erfin- dungsgemäßen Verfahren können also in einem Computer- Programm. mit einem. Programmcode zur Durchführen der erfin- dungsgemäßen Verfahren, wenn das Programm auf einem Compu- ter abläuft, realisiert sein.

Im nachfolgenden wird als Beispiel für einen ganzzahligen Transformationsalgorithmus auf den IntMDCT- Transformationsalgorithmus eingegangen, der in"Audio Co- ding Based on Integer Transforms"111-te AES-Versammlung, New York, 2001, beschrieben ist. Die IntMDCT ist besonders günstig, da sie die attraktiven Eigenschaften der MDCT hat, wie z. B. eine gute spektrale Darstellung des Audiosignals, eine kritische Abtastung und eine Blocküberlappung auf- weist. Die gute Approximation der MDCT durch eine IntMDCT erlaubt es ferner, bei dem in Fig. 5 gezeigten Codierer nur einen Transformationsalgorithmus zu verwenden, wie es durch

einen Pfeil 62 in Fig. 5 dargestellt ist. Anhand der Fig. 1 bis 4 werden die wesentlichen Eigenschaften dieser speziel- len Form eines ganzzahligen Transformationsalgorithmus er- klärt.

Fig. 1 zeigt ein Übersichtsdiagramm für die erfindungsgemäß bevorzugte Vorrichtung zum Verarbeiten von zeitdiskreten Abtastwerten, die ein Audiosignal darstellen, um ganzzahli- ge Werte zu auf denen.. aufbauend der Int-MDCT- Ganzzahl-Transformationsalgorithmus arbeitet. Die zeitdis- kreten Abtastwerte werden durch die in Fig. 1 gezeigte Vor- richtung gefenstert und optional in eine spektrale Darstel- lung umgesetzt. Die zeitdiskreten Abtastwerte, die an einem Eingang 10 in die Vorrichtung eingespeist werden, werden mit einem Fenster w mit einer Länge, die 2N zeitdiskreten Abtastwerten entspricht, gefenstert, um an einem Ausgang 12 ganzzahlige gefensterte Abtastwerte zu erreichen, welche dazu geeignet sind, um mittels einer Transformation und insbesondere der. Einrichtung 14 zum Ausführen einer.. ganz-.. zahligen DCT in eine spektrale Darstellung umgesetzt zu werden. Die ganzzahlige DCT ist ausgebildet, um aus N Ein- gangswerten N Ausgangswerte zu erzeugen, was im Gegensatz zu der MDCT-Funktion 408 von Fig. 4a steht, die aus 2N ge- fensterten Abtastwerten aufgrund der MDCT-Gleichung ledig- lich N Spektralwerte erzeugt.

Zum Fenstern der zeitdiskreten Abtastwerte werden zunächst in einer Einrichtung 16 zwei zeitdiskrete Abtastwerte aus- gewählt, die zusammen einen Vektor von zeitdiskreten Ab- tastwerten darstellen. Ein zeitdiskreter Abtastwert, der durch die Einrichtung 16 ausgewählt wird, liegt im ersten Viertel des Fensters. Der andere zeitdiskrete Abtastwert liegt in dem zweiten Viertel des Fensters, wie es anhand

von Fig. 3 noch detaillierter ausgeführt wird. Der durch die Einrichtung 16 erzeugte Vektor wird nunmehr mit einer Drehmatrix der Dimension 2 x 2 beaufschlagt, wobei diese Operation nicht unmittelbar durchgeführt wird, sondern mit- tels mehrerer sogenannten Lifting-Matrizen.

Eine Lifting-Matrix hat die Eigenschaft, daß sie nur ein Element aufweist, das von dem Fenster w abhängt und un- gleich"1"oder"0"ist.

Die Faktorisierung von Wavelet-Transformationen in Lifting- Schritte ist in der Fachveröffentlichung"Factoring Wavlet Transforms Into Lifting Steps", Ingrid Daubechies und Wim Sweldens, Preprint, Bell Laboratories, Lucent Technologies, 1996, dargestellt. Allgemein ist ein Lifting-Schema eine einfache Beziehung zwischen perfekt rekonstruierenden Fil- terpaaren, die dasselbe Tiefpaß-oder Hochpaßfilter haben.

Jedes Paar komplementärer Filter kann in Lifting-Schritte faktorisiert wierden. Insbesondere gilt dies für-Givens-- Rotationen. Es sei der Fall betrachtet, bei dem die Poly- phasenmatrix eine Givens-Rotation ist. Es gilt dann : Jede der drei rechts des Gleichheitszeichens stehenden Lif- ting-Matrizen hat als Hauptdiagonalelemente den Wert"1".

Ferner ist in jeder Lifting-Matrix ein Nebendiagonalelement gleich 0, und ein Nebendiagonalelement vom Drehwinkel a abhängig.

Der Vektor wird nunmehr mit der dritten Lifting-Matrix, d. h. der Liftingmatrix ganz rechts in obiger Gleichung, mul-

tipliziert, um einen ersten Ergebnisvektor zu erhalten.

Dies ist in Fig. 1 durch eine Einrichtung 18 dargestellt.

Es wird nunmehr der erste Ergebnisvektor mit einer beliebi- gen Rundungsfunktion, die die Menge der reellen Zahlen in die Menge der ganzen Zahlen abbildet, gerundet, wie es in Fig. 1 durch eine Einrichtung 20 dargestellt ist. Am Aus- gang der Einrichtung 20 wird ein gerundeter erster Ergeb- nisvektor erhalten. Der gerundete erste Ergebnisvektor wird nunmehr in eine Einrichtung 22-zum Multiplizieren desselben mit der mittleren, d. h. zweiten, Lifting-Matrix einge- speist, um einen zweiten Ergebnisvektor zu erhalten, der in einer Einrichtung 24 wiederum gerundet wird, um einen ge- rundeten zweiten Ergebnisvektor zu erhalten. Der gerundete zweite Ergebnisvektor wird nunmehr in eine Einrichtung 26 eingespeist, und zwar zum Multiplizieren desselben mit der links in der obigen Gleichung aufgeführten, d. h. ersten, Liftingmatrix, um einen dritten Ergebnisvektor zu erhalten, der schließlich noch mittels einer Einrichtung 28 gerundet wird, ^ um schließ-lich-an dem--Ausgang 12-ganzzahlige ge- fensterte Abtastwerte zu erhalten, die nun, wenn eine spektrale Darstellung derselben gewünscht wird, durch die Einrichtung 14 verarbeitet werden müssen, um an einem Spektralausgang 30 ganzzahlige Spektralwerte zu erhalten.

Vorzugsweise ist die Einrichtung 14 als Ganzzahl-DCT oder Integer-DCT ausgeführt.

Die diskrete Kosinus-Transformation gemäß Typ 4 (DCT-IV) mit einer Länge N ist durch folgende Gleichung gegeben :

Die Koeffizienten der DCT-IV bilden eine orthonormale N x N Matrix. Jede orthogonale N x N-Matrix kann in N (N-1)/2 Gi- vens-Rotationen zerlegt werden, wie es in der Fachveröf- fentlichung P. P. Vaidyanathan, "Multirate Systems And Fil- ter Banks", Prentice Hall, Englewood Cliffs, 1993, ausge- führt ist. Es sei darauf hingewiesen, daß auch weitere Zer- legungen existieren.

Bezüglich der Klassifikationen der verschiedenen DCT- Algorithmen sei auf H. S. Malvar, "Signal Processing With Lapped Transforms", Artech House, 1992, verwiesen. Allge- mein unterscheiden sich die DCT-Algorithmen durch die Art ihrer Basisfunktionen. Während die DCT-IV, die hier bevor- zugt wird, nicht-symmetrische Basisfunktionen umfaßt, d. h. eine Kosinus-Viertelwelle, eine Cosinus-3/4-Welle, eine Co- sinus-5/4-Welle, eine Cosinus-7/4-Welle, etc., hat die dis- krete Kosinustransformation z. B. vom Typ II (DCT-II), ach- sensymmetrische und punktsymmetrische Basisfunktionen. Die 0-te Basisfunktion. hat einen Gleichanteil, die erste^Basist funktion ist eine halbe Kosinuswelle, die zweite Basisfunk- tion ist eine ganze Kosinuswelle, usw. Aufgrund der Tatsa- che, daß die DCT-II den Gleichanteil besonders berücksich- tigt, wird sie bei der Videocodierung verwendet, nicht aber bei der Audiocodierung, da bei der Audiocodierung im Gegen- satz zur Videocodierung der Gleichanteil nicht von Relevanz ist.

Im nachfolgend wird darauf eingegangen, wie der Drehwinkel a der Givens-Rotation von der Fensterfunktion abhängt.

Eine MDCT mit einer Fensterlänge von 2N kann in eine dis- krete Kosinustransformation vom Typ IV mit einer Länge N reduziert werden. Dies wird dadurch erreicht, daß die TDAC-

Operation explizit im Zeitbereich durchgeführt wird, und daß dann die DCT-IV angewandt wird. Bei einer 50% igen Über- lappung überlappt die linke Hälfte des Fensters für einen Block t mit der rechten Hälfte des vorausgehenden Blocks, d. h. des Blocks t-1. Der überlappende Teil zwei aufeinan- derfolgender Blöcke t-1 und t wird im Zeitbereich, d. h. vor der Transformation, folgendermaßen vorverarbeitet, d. h. zwischen dem Eingang 10 und dem Ausgang 12 von Fig. 1 verarbeitet : Die mit der Tilde bezeichneten Werte sind die Werte am Aus- gang 12 von Fig. 1, während die ohne Tilde in der obigen Gleichung bezeichnete x Werte die Werte am Eingang 10 bzw. hinter der Einrichtung 16 zum Auswählen sind. Der Laufindex k läuft von 0 bis N/2-1, während w die Fensterfunktion dar- stellt.

Aus der TDAC-Bedingung für die Fensterfunktion w gilt fol- gender Zusammenhang : Für bestimmte Winkel ak, k = 0,..., N/2-1 kann diese Vor- verarbeitung im Zeitbereich als Givens-Rotation geschrieben werden, wie es ausgeführt worden ist.

Der Winkel a der Givens-Rotation hängt folgendermaßen von der Fensterfunktion w ab : ü-arctan [w (N/2-1-k)/w (N/2 + k) ] (5) Es sei darauf hingewiesen, daß beliebige Fensterfunktionen w eingesetzt werden können, solange sie diese TDAC- Bedingung erfüllen.

Im nachfolgenden wird anhand von Fig. 2 ein kaskadierter Codierer und Decodierer beschrieben. Die zeitdiskreten Ab- tastwerte x (0) bis x (2N-1), die durch ein Fenster gemeinsam "gefenstert"werden, werden zunächst derart durch die Ein- richtung 16 von Fig. 1 ausgewählt, daß der Abtastwert x (0) und der Abtastwert x (N-1), d. h. ein Abtastwert aus dem ersten Viertel des Fensters und ein Abtastwert aus dem zweiten Viertel des Fensters, ausgewählt werden, um den Vektor am Ausgang der Einrichtung 16 zu bilden. Die sich überkreuzenden Pfeile-stellen schematischo dine--L-if-t-ing- Multiplikationen und anschließenden Rundungen der Einrich- tungen 18,20 bzw. 22,24 bzw. 26,28 dar, um am Eingang der DCT-IV-Blöcke die ganzzahligen gefensterten Abtastwerte zu erhalten.

Wenn der erste Vektor wie oben beschrieben verarbeitet ist, wird ferner ein zweiter Vektor aus den Abtastwerten x (N/2- 1) und x (N/2), d. h. wieder ein Abtastwert aus dem ersten Viertel des Fenster und ein Abtastwert aus dem zweiten Viertel des Fensters, ausgewählt und wiederum durch den in Fig. 1 beschriebenen Algorithmus verarbeitet. Analog dazu werden sämtliche anderen Abtastwertpaare aus dem ersten und zweiten Viertel des Fensters bearbeitet. Die selbe Verar- beitung wird für das dritte und vierte Viertel des ersten

Fensters durchgeführt. Nunmehr liegen am Ausgang 12 2N ge- fensterte ganzzahlige Abtastwerte vor, die nunmehr so, wie es in Fig. 2 dargestellt ist, in eine DCT-IV-Transformation eingespeist werden. Insbesondere werden die ganzzahligen gefensterten Abtastwerte des zweiten und dritten Viertels in eine DCT eingespeist. Die gefensterten ganzzahligen Ab- tastwerte des ersten Viertels des Fensters werden in eine vorausgehende DCT-IV zusammen mit den gefensterten ganzzah- ligen Abtastwerten des vierten Viertels des vorausgehenden Fensters verarbeitet. Analog dazu wird das vierte Viertel der gefensterten ganzzahligen Abtastwerte in Fig. 2 mit dem ersten Viertel des nächsten Fensters zusammen in eine DCT- IV-Transformation eingespeist. Die mittlere in Fig. 2 ge- zeigte ganzzahlige DCT-IV-Transformation 32 liefert nunmehr N ganzzahlige Spektralwerte y (0) bis y (N-1). Diese ganzzah- ligen Spektralwerte können nunmehr beispielsweise einfach Entropie-codiert werden, ohne daß eine dazwischenliegende Quantisierung erforderlich ist, da die Fensterung und Transformation ganzzahlige Ausga-ngswerte lie-feNrt.

In der rechten Hälfte von Fig. 2 ist ein Decodierer darge- stellt. Der Decodierer bestehend aus Rücktransformation und "inverser Fensterung"arbeitet invers zum Codierer. Es ist bekannt, daß zur Rücktransformation einer DCT-IV eine in- verse DCT-IV verwendet werden kann, wie es in Fig. 2 darge- stellt ist. Die Ausgangswerte der Decodierer-DCT-IV 34 wer- den nunmehr, wie es in Fig. 2 dargestellt ist, mit den ent- sprechenden Werten der vorausgehenden Transformation bzw. der nachfolgenden Transformation invers verarbeitet, um aus den ganzzahligen gefensterten Abtastwerten am Ausgang der Einrichtung 34 bzw. der vorausgehenden und nachfolgenden Transformation wieder zeitdiskrete Audio-Abtastwerte x (0) bis x (2N-1) zu erzeugen.

Die ausgangsseitige Operation geschieht durch eine inverse Givens-Rotation, d. h. derart, daß die Blöcke 26,28 bzw.

22,24 bzw. 18,20 in der entgegengesetzten Richtung durch- laufen werden. Dies sei anhand der zweiten Lifting-Matrix von Gleichung 1 näher dargestellt. Wenn (im Codierer) der zweite Ergebnisvektor durch Multiplikation des gerundeten ersten Ergebnisvektors mit der zweiten Liftingmatrix (Ein- richtung 22) gebildet wird, so ergibt sich folgender Aus- druck : (x, F+ (xry+xSin) (6) Die Werte x, y auf der rechten Seite von Gleichung 6 sind Ganzzahlen. Dies trifft jedoch für den Wert x sin a nicht zu. Hier muß die Rundungsfunktion r eingeführt werden, wie es in der nachfolgenden Gleichung (x,y) # (x,y + r(x sin α)) (7) dargestellt ist. Diese Operation führt die Einrichtung 24 aus.

Die inverse Abbildung (im Decodierer) ist folgendermaßen definiert : (x, y') FA (x',y'-r(x' sin α)) (8) Aufgrund dem Minuszeichens vor der Rundungsoperation wird ersichtlich, daß die ganzzahlige Approximierung des Lif- ting-Schritts umgekehrt werden kann, ohne daß ein Fehler eingeführt wird. Die Anwendung dieser Approximation auf je- den der drei Lifting-Schritte führt zu einer ganzzahligen

Approximation der Givens-Rotation. Die gerundete Rotation (im Codierer) kann umgekehrt werden (im Decodierer), ohne daß ein Fehler eingeführt wird, und zwar indem die inversen gerundeten Lifting-Schritte in umgekehrter Reihenfolge durchlaufen werden, d. h. wenn beim Decodieren der Algo- rithmus von Fig. 1 von unten nach oben durchgeführt wird.

Wenn die Rundungsfunktion r punktsymmetrisch ist, ist die inverse gerundete. Rotation. identisch zu der gerundeten Ro- tation mit dem Winkel-a und lautet folgendermaßen : Die Lifting-Matrizen für den Decodierer, d. h. für die in- verse Givens-Rotation, ergibt sich in diesem Fall unmittel- bar aus Gleichung (1), indem lediglich der Ausdruck"sin durch den Ausdruck"-sin a"ersetzt wird.

Im nachfolgenden wird anhand von Fig. 3 noch einmal die Zerlegung einer üblichen MDCT mit überlappenden Fenstern 40 bis 46 dargelegt. Die Fenster 40 bis 46 überlappen jeweils zu 50%. Pro Fenster werden zunächst Givens-Rotationen in- nerhalb des ersten und zweiten Viertels eines Fensters bzw. innerhalb des dritten und vierten Viertels eines Fensters ausgeführt, wie es durch die Pfeile 48 schematisch darge- stellt ist. Dann werden die rotierten Werte, d. h. die ge- fensterten ganzzahligen Abtastwerte derart in eine N-zu-N- DCT eingespeist, daß immer das zweite und dritte Viertel eines Fensters bzw. das vierte und erste Viertel eines dar- auffolgenden Fensters gemeinsam mittels eines DCT-IV- Algorithmus in eine spektrale Darstellung umgesetzt wird.

Es werden daher die üblichen Givens-Rotation in Lifting- Matrizen zerlegt, die sequentiell ausgeführt werden, wobei nach jeder Lifting-Matrix-Multiplikation ein Rundungs- schritt eingeführt wird, derart, daß die Gleitkomma-Zahlen unmittelbar nach ihrer Entstehung gerundet werden, derart, daß vor jeder Multiplikation eines Ergebnisvektors mit ei- ner Lifting-Matrix der Ergebnisvektor lediglich Ganzzahlen hat.

Die Ausgangswerte bleiben also immer ganzzahlig, wobei es bevorzugt wird, auch ganzzahlige Eingangswerte zu verwen- den. Dies stellt keine Einschränkung dar, da jegliche bei- spielsweise PCM-Abtastwerte, wie sie auf einer CD abgespei- chert sind, ganzzahlige Zahlenwerte sind, deren Wertebe- reich je nach Bitbreite variiert, d. h. abhängig davon, ob die zeitdiskreten digitalen Eingangswerte 16-Bit-Werte oder 24-Bit-Werte sind. Dennoch ist, wie es ausgeführt worden ist, der gesamte Prozeß invertierbar, indem die inversen Stationen in umgekehrter Reihenfolge ausgeführt'werden. Es : existiert somit eine ganzzahlige Approximation der MDCT mit perfekter Rekonstruktion, also eine verlustlose Transforma- tion.

Die gezeigte Transformation liefert ganzzahlige Ausgangs- werte statt Gleitkommawerte. Sie liefert eine perfekte Re- konstruktion, so daß kein Fehler eingeführt wird, wenn eine Vorwärts-und dann eine Rückwärtstransformation ausgeführt werden. Die Transformation ist gemäß einem bevorzugten Aus- führungsbeispiel der vorliegenden Erfindung ein Ersatz für die modifizierte diskrete Cosinustransformation. Auch ande- re Transformationsverfahren können jedoch ganzzahlig ausge- führt werden, so lange eine Zerlegung in Rotationen und ei-

ne Zerlegung der Rotationen in Lifting-Schritte möglich ist.

Die ganzzahlige MDCT hat die meisten günstigen Eigenschaf- ten der MDCT. Sie hat eine überlappende Struktur, wodurch eine bessere Frequenzselektivität als bei nicht- überlappenden Blocktransformationen erhalten wird. Aufgrund der TDAC-Funktion, die bereits beim Fenstern vor der Trans- formation, berücksichtigt wird, wird eine kritische Abtas- tung beibehalten, so daß die Gesamtanzahl von Spektralwer- ten, die ein Audiosignal darstellen, gleich der Gesamtan- zahl von Eingangs-Abtastwerten ist.

Verglichen mit einer normalen MDCT, die Gleitkomma- Abtastwerte liefert, zeigt sich bei der beschriebenen be- vorzugten ganzzahligen Transformation, daß lediglich in dem Spektralbereich, in dem wenig Signalpegel ist, das Rauschen im Vergleich zur normalen MDCT erhöht ist, während sich Lese Rauscherhöhung bei signifikanten Signalpege-ln wnicht" bemerkbar macht. Dafür bietet sich die ganzzahlige Verar- beitung für eine effiziente Hardware-Implementation an, da lediglich Multiplikationsschritte verwendet werden, die oh- ne weiteres in Verschieben-Addieren-Schritte (Shift/Add- Schritte) zerlegt werden können, welche einfach und schnell hardwaremäßig implementiert werden können. Selbstverständ- lich ist auch eine Software-Implementation möglich.

Die ganzzahlige Transformation liefert eine gute spektrale Darstellung des Audiosignals und bleibt dennoch im Bereich der ganzen Zahlen. Wenn sie auf tonale Teile eines Audio- signals angewandt wird, resultiert dies in einer guten E- nergiekonzentrierung. Damit kann ein effizientes verlustlo- ses Codierschema aufgebaut werden, indem einfach die in

Fig. 1 dargestellte Fensterung/Transformation mit einem Entropiecodierer kaskadiert wird. Insbesondere ein gesta- peltes Codieren (Stacked Coding) unter Verwendung von Esca- pe-Werten, wie es in MPEG AAC eingesetzt wird, ist günstig.

Es wird bevorzugt, alle Werte um eine bestimmte Potenz von zwei herunterzuskalieren, bis sie in eine erwünschte Code- tabelle passen, und dann die weggelassenen niederstwertigen Bits zusätzlich zu codieren. Im Vergleich zu der Alternati- ve der. Verwendung von größeren-Codetabellen ist die be- schriebene Alternative hinsichtlich des Speicherverbrauchs zum Speichern der Codetabellen günstiger. Ein nahezu ver- lustloser Codierer könnte auch dadurch erhalten werden, daß einfach bestimmte der niederstwertigen Bits weggelassen werden.

Insbesondere für tonale Signale ermöglicht eine Entropie- Codierung der ganzzahligen Spektralwerte einen hohen Co- diergewinn. Für transiente Teile des Signals ist der Co- <BR> <BR> <BR> ergewinn niedrig, und zwar aufgrund-des flachen Spektruffis transienter Signale, d. h. aufgrund einer geringen Anzahl von Spektralwerten, die gleich oder nahezu 0 sind. Wie es in J. Herre, J. D. Johnston : "Enhancing the Performance of Perceptual Audio Coders by Using Temporal Noise Shaping (TNS)"101. AES Convention, Los Angeles, 1996, Preprint 4384, beschrieben ist, kann diese Flachheit jedoch verwen- det werden, indem eine lineare Prädiktion im Frequenzbe- reich verwendet wird. Eine Alternative ist eine Prädiktion mit offener Schleife. Eine andere Alternative ist der Prä- diktor mit geschlossener Schleife. Die erste Alternative, d. h. der Prädiktor mit offener Schleife, wird TNS genannt.

Die Quantisierung nach der Prädiktion führt zu einer Adap- tion des resultierenden Quantisierungsrauschens an die zeitliche Struktur des Audiosignals und verhindert daher

Vorechos in psychoakustischen Audiocodierern. Für ein ver- lustloses Audiocodieren ist die zweite Alternative, d. h. mit einem Prädiktor mit geschlossener Schleife, geeigneter, da die Prädiktion mit geschlossener Schleife eine genaue Rekonstruktion des Eingangssignals erlaubt. Wenn diese Technik auf ein erzeugtes Spektrum angewendet wird, muß ein Rundungsschritt nach jedem Schritt des Prädiktionsfilters durchgeführt werden, um im Bereich der Ganzzahlen zu blei- ben. Durch Verwenden des inversen Filters und-derselben Rundungsfunktion kann das ursprüngliche Spektrum genau wie- der hergestellt werden.

Um die Redundanz zwischen zwei Kanälen zur Datenreduktion auszunutzen, kann auch eine Mitte-Seite-Codierung ver- lustlos eingesetzt werden, wenn eine gerundete Rotation mit einem Winkel O/4 verwendet wird. Im Vergleich zur Alterna- tive des Berechnens der Summe und Differenz des linken und rechten Kanals eines Stereosignals hat die gerundete Rota- tion-.. den-Vorteil der Energieerhaltung. Die'VerWendang''s'ogte'- nannter Joint-Stereo-Codiertechniken kann für jedes Band ein-oder ausgeschaltet werden, wie es auch im Standard MPEG AAC durchgeführt wird. Weitere Drehwinkel können eben- falls berücksichtigt werden, um eine Redundanz zwischen zwei Kanälen flexibler reduzieren zu können.