DE10217297A1 - Vorrichtung und Verfahren zum Codieren eines zeitdiskreten Audiosignals und Vorrichtung und Verfahren zum Decodieren von codierten Audiodaten - Google Patents
Vorrichtung und Verfahren zum Codieren eines zeitdiskreten Audiosignals und Vorrichtung und Verfahren zum Decodieren von codierten AudiodatenInfo
- Publication number
- DE10217297A1 DE10217297A1 DE10217297A DE10217297A DE10217297A1 DE 10217297 A1 DE10217297 A1 DE 10217297A1 DE 10217297 A DE10217297 A DE 10217297A DE 10217297 A DE10217297 A DE 10217297A DE 10217297 A1 DE10217297 A1 DE 10217297A1
- Authority
- DE
- Germany
- Prior art keywords
- block
- integer
- spectral values
- discrete
- quantization
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 230000005236 sound signal Effects 0.000 title claims abstract description 50
- 238000000034 method Methods 0.000 title claims description 21
- 230000003595 spectral effect Effects 0.000 claims abstract description 117
- 230000009466 transformation Effects 0.000 claims abstract description 70
- 238000013139 quantization Methods 0.000 claims abstract description 65
- 238000012545 processing Methods 0.000 claims description 21
- 239000011159 matrix material Substances 0.000 claims description 20
- 230000002123 temporal effect Effects 0.000 claims description 9
- 238000007667 floating Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 230000001419 dependent effect Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 29
- 238000001228 spectrum Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000015572 biosynthetic process Effects 0.000 description 6
- 238000000354 decomposition reaction Methods 0.000 description 5
- 230000002441 reversible effect Effects 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 238000000844 transformation Methods 0.000 description 4
- 230000001052 transient effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 238000002592 echocardiography Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000007493 shaping process Methods 0.000 description 2
- 241000530623 Bovine viral diarrhea virus 2 Species 0.000 description 1
- 241000316887 Saissetia oleae Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000004134 energy conservation Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/0212—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/0017—Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/032—Quantisation or dequantisation of spectral components
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
Abstract
Ein zeitdiskretes Audiosignal wird verarbeitet, um einen Quantisierungs-Block mit quantisierten Spektralwerten zu liefern. Ferner wird aus dem zeitdiskreten Audiosignal unter Verwendung eines Ganzzahl-Transformationsalgorithmus eine ganzzahlige Spektraldarstellung erzeugt. Der Quantisierungs-Block, der unter Verwendung eines psychoakustischen Modells erzeugt worden ist, wird invers-quantisiert und gerundet, um dann eine Differenz zwischen den ganzzahligen Spektralwerten und den invers-quantisierten gerundeten Spektralwerten zu bilden. Der Quantisierungs-Block alleine liefert nach der Decodierung ein verlustbehaftetes psychoakustisch codiertes/decodiertes Audiosignal, während der Quantisierungs-Block zusammen mit dem Kombinations-Block bei der Decodierung ein verlustlos oder nahezu verlustlos codiertes und wieder decodiertes Audiosignal liefert. Durch Erzeugen des Differenzsignals im Frequenzbereich ergibt sich eine einfachere Codierer/Decodiererstruktur.
Description
- Die vorliegende Erfindung bezieht sich auf die Audiocodierung/Audiodecodierung und insbesondere auf skalierbare Codier/Decodier-Algorithmen mit einer psychoakustischen ersten Skalierungsschicht und einer zweiten Skalierungsschicht, die Zusatzaudiodaten für eine verlustlose Decodierung umfaßt.
- Moderne Audiocodierverfahren, wie z. B. MPEG Layer3 (MP3) oder MPEG AAC verwenden Transformationen wie beispielsweise die sogenannte modifizierte diskrete Cosinustransformation (MDCT), um eine blockweise Frequenzdarstellung eines Audiosignals zu erhalten. Ein solcher Audiocodierer erhält üblicherweise einen Strom von zeitdiskreten Audio-Abtastwerten. Der Strom von Audio-Abtastwerten wird gefenstert, um einen gefensterten Block von beispielsweise 1024 oder 2048 gefensterten 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 typischerweise so gewählt werden, daß das durch das Quantisieren eingeführt Quantisierungsrauschen unterhalb der psychoakustischen Maskierungsschwelle liegt, d. h. "wegmaskiert" wird. Die Quantisierung ist eine verlustbehaftete Codierung. Um eine weitere Datenmengenreduktion zu erhalten, werden die quantisierten Spektralwerte anschließend beispielsweise mittels einer Huffman-Codierung Entropiecodiert. 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 Bitstrom-Demultiplexers in codierte quantisierte Spektralwerte und Seiteninformationen aufgeteilt. Die Entropie-codierten quantisierten Spektralwerte werden zunächst Entropiedecodiert, um die quantisierten Spektralwerte zu erhalten. Die quantisierten Spektralwerte werden dann invers quantisiert, um decodierte Spektralwerte zu erhalten, die Quantisierungsrauschen aufweisen, das jedoch unterhalb der psychoakustischen Maskierungsschwelle liegt und daher unhörbar sein wird. Diese Spektralwerte werden dann mittels eines Synthese-Filterbank in eine zeitliche Darstellung umgesetzt, um zeitdiskrete decodierte Audio-Abtastwerte zu erhalten. In der Synthese-Filterbank muß ein zum Transformations-Algorithmus inverser Transformations-Algorithmus eingesetzt 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 gefenstert. Das Fenster, das die Einrichtung 402 verkörpert, hat eine Fensterlänge von 2N Abtastwerten und liefert ausgangsseitig einen Block von 2N gefensterten Abtastwerten. Um eine Fensterüberlappung zu erreichen, wird mittels einer Einrichtung 404, die lediglich aus Übersichtlichkeitsgründen in Fig. 4a getrennt von der Einrichtung 402 dargestellt ist, ein zweiter Block von 2N gefensterten Abtastwerten gebildet. Die in die Einrichtung 404 eingespeisten 2048 Abtastwerte sind jedoch nicht die an das erste Fenster unmittelbar anschließenden zeitdiskreten Audio-Abtastwerte, sondern beinhalten die zweite Hälfte der durch die Einrichtung 402 gefensterten Abtastwerte und beinhalten zusätzlich lediglich 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 Abtastwerte als auch die durch die Einrichtung 404 ausgegebenen 2N gefensterten Abtastwerte werden dann mittels einer Einrichtung 408 bzw. 410 dem MDCT-Algorithmus unterzogen. Die Einrichtung 408 liefert gemäß dem bekannten MDCT-Algorithmus N Spektralwerte für das erste Fenster, während die Einrichtung 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 Fensters, wie es in Fig. 4b gezeigt ist, einer Einrichtung 412, die eine inverse modifizierte diskrete Cosinustransformation durchführt, zugeführt. Dasselbe gilt für die N Spektralwerte des zweiten Fensters. Diese werden einer Einrichtung 414 zugeführt, die ebenfalls eine inverse modifizierte diskrete Cosinustransformation durchführt. Sowohl die Einrichtung 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 y1 der zweiten Hälfte 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 ausgangsseitig, also im Decodierer, N decodierte zeitliche Abtastwerte ergeben.
- Es sei darauf hingewiesen, daß durch die Funktion der Einrichtung 416, die auch als Add-Funktion bezeichnet wird, die in dem durch Fig. 4a schematisch dargestellten Codierer durchgeführte Fensterung gewissermaßen automatisch berücksichtigt wird, so daß in dem durch Fig. 4b dargestellten Decodierer keine explizite "inverse Fensterung" stattzufinden 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 Bedingung 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 Cosinus 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 Tatsache, daß die Fensterung durch Multiplikation eines zeitdiskreten 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 zeitdiskrete Abtastwerte gefenstert werden, entstehen nach dem Fenstern also Gleitkommazahlen.
- Daher ist, auch wenn kein psychoakustischer Codierer verwendet 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 Audiocodieren eingesetzt werden soll, muß entweder eine sehr feine Quantisierung eingesetzt werden, um den resultierenden Fehler aufgrund der Rundung der Gleitkommazahlen vernachlässigen zu können, oder das Fehlersignal muß zusätzlich 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 C1 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 überführt und mit dem ursprünglichen Audiosignal verglichen. Liegt der Fehler, also der Fehler zwischen dem ursprünglichen 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 beendet, wenn die Fehlerschwelle unterschritten wird. Das dann noch möglicherweise vorhandene Restsignal wird mit einem Zeitbereichscodierer codiert und in einen Bitstrom geschrieben, der neben dem Zeitbereichs-codierten Restsignal auch codierte Spektralwerte umfaßt, die gemäß den Quantisierereinstellungen quantisiert worden sind, die zum Zeitpunkt 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 erzeugt. 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, indem das codierte/decodierte Signal von dem ursprünglichen Eingangssignal subtrahiert wird. Das Fehlersignal wird dann in ein zweites Modul eingespeist, wo eine verlustlose Bitkonversion 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 Bitsequenz in einem Verarbeitungsblock. Die verlustlose Datenumwandlung wird ausgeführt, um die Anzahl von Nullen zu maximieren oder die Anzahl von aufeinanderfolgenden Nullen in einer Sequenz zu maximieren, um eine möglichst gute Komprimierung des zeitlichen Fehlersignals, das als Folge von digitalen Zahlen vorliegt, zu erreichen. Dieses Prinzip basiert auf einem Bit-Slice-Arithmetic-Coding-(BSAC-)Schema, 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 Erweiterungsschicht, d. h. die Zusatzdaten, die benötigt werden, um eine verlustlose Decodierung des Audiosignals zu erreichen, im Zeitbereich gewonnen werden müssen. Dies bedeutet, daß eine vollständige Decodierung einschließlich einer Frequenz/Zeit-Umsetzung erforderlich ist, um das codierte/decodierte Signal im Zeitbereich zu erhalten, damit mittels einer Abtastwert-weisen Differenzbildung zwischen dem ursprünglichen Audioeingangssignal und dem codierten/decodierten Audiosignal, das aufgrund der psychoakustischen Codierung verlustbehaftet ist, das Fehlersignal berechnet wird. Dieses Konzept ist insbesondere dahingehend nachteilhaft, daß im Codierer, der den Audiodatenstrom erzeugt, 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 kompletter Synthesealgorithmus benötigt wird. Der Codierer muß daher zusätzlich zu seinen inhärenten Codiererfunktionalitäten auch die komplette Decodiererfunktionalität enthalten. Wenn der Codierer softwaremäßig implementiert ist, so werden hierfür sowohl Speicherkapazitäten als auch Prozessorkapazitäten benötigt, die zu einer Codiererimplementation mit erhöhtem Aufwand führt.
- Die Aufgabe der vorliegenden Erfindung besteht darin, ein weniger aufwendiges Konzept zu schaffen, durch das ein Audiodatenstrom erzeugbar ist, der zumindest nahezu verlustlos decodierbar ist.
- Diese Aufgabe wird durch eine Vorrichtung zum Codieren eines zeitdiskreten Audiosignals nach Patentanspruch 1, durch ein Verfahren zum Codieren eines zeitdiskreten Audiosignals nach Patentanspruch 13, durch eine Vorrichtung zum Decodieren von codierten Audiodaten nach Patentanspruch 14, durch ein Verfahren zum Decodieren von codierten Audiodaten nach Patentanspruch 15 oder durch ein Computer-Programm nach Anspruch 16 oder 17 gelöst.
- Der vorliegenden Erfindung liegt die Erkenntnis zugrunde, daß die Zusatzaudiodaten, die eine verlustlose Decodierung des Audiosignals ermöglichen, dadurch gewonnen werden können, daß ein Block von quantisierten Spektralwerten wie üblich 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 Spektralwerte werden dann gerundet, um einen Rundungs-Block von gerundeten invers quantisierten Spektralwerten zu erhalten. Als Referenz zur Differenzbildung wird erfindungsgemäß ein Ganzzahl-Transformationsalgorithmus verwendet, welcher aus einem Block von ganzzahligen zeitdiskreten Abtastwerten einen Ganzzahl-Block von Spektralwerten, der lediglich ganzzahlige Spektralwerte aufweist, erzeugt. Erfindungsgemäß wird nunmehr die Kombination der Spektralwerte im Rundungs- Block und im Ganzzahl-Block spektralwertweise, also im Frequenzbereich durchgeführt, so daß im Codierer selbst kein Synthesealgorithmus, also eine inverse Filterbank oder ein inverser MDCT-Algorithmus etc. benötigt wird. Der Kombinations-Block, der die Differenz-Spektralwerte aufweist, umfaßt aufgrund des Ganzzahl-Transformationsalgorithmus und der gerundeten Quantisierungswerte lediglich ganzzahlige Werte, die auf irgendeine bekannte Art und Weise Entropiecodiert werden können. Es sei darauf hingewiesen, daß zur Entropie-Codierung des Kombinationsblocks beliebige Entropie-Codierer eingesetzt werden können, wie z. B. Huffman- Codierer oder arithmetische Codierer etc.
- Zur Codierung der quantisierten Spektralwerte des Quantisierungsblocks können ebenfalls beliebige Codierer eingesetzt werden, wie z. B. die bekannten für moderne Audiocodierer üblichen Werkzeuge.
- Es sei darauf hingewiesen, daß das erfindungsgemäße Codier/Decodierkonzept kompatibel ist mit modernen Codierwerkzeugen, wie z. B. Fenster-Umschalten, TNS oder Mitte/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 quantisierten 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 werden. In diesem Fall wird lediglich nur noch eine einzige Transformation benötigt, nämlich die IntMDCT, die aus ganzzahligen zeitdiskreten Abtastwerten ganzzahlige Spektralwerte 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. Alternativ 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 Codierer 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 unterzogen werden und dann wie folgt verarbeitet werden. Zunächst wird der Quantisierungsblock im Decodierer invers quantisiert und unter Verwendung derselben Rundungsfunktion, die auch im Codierer eingesetzt worden ist, gerundet, um dann zu den Entropie-decodierten Zusatzaudiodaten hinzuaddiert zu werden. Im Decodierer liegen dann sowohl eine psychoakustisch komprimierte spektrale Darstellung des Audiosignals als auch eine verlustlose Darstellung des Audiosignals vor, wobei die psychoakustisch komprimierte spektrale Darstellung des Audiosignals in den Zeitbereich umzusetzen ist, um ein verlustbehaftetes codiertes/decodiertes Audiosignal zu erhalten, während die verlustlose Darstellung 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 erhalten.
- 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 Zerlegung der MDCT mit 50-Prozent-Überlappung in Rotationen 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 erfindungsgemäßen Codierers;
- Fig. 6 ein Prinzipblockschaltbild eines alternativen erfindungsgemäß bevorzugten Codierers; und
- Fig. 7 ein Prinzipblockschaltbild eines erfindungsgemäß bevorzugten Decodierers.
- Im nachfolgenden wird anhand der Fig. 5 bis 7 auf erfindungsgemäße Codiererschaltungen (Fig. 5 und Fig. 6) bzw. eine erfindungsgemäß bevorzugte Decodiererschaltung (Fig. 7) eingegangen. Der in Fig. 5 gezeigte erfindungsgemäße Codierer 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 Einrichtung 52 zum Liefern eines Quantisierungs-Blocks eingespeist, der ausgangsseitig einen Quantisierungs-Block des zeitdiskreten Audiosignals liefert, der unter Verwendung eines psychoakustischen Modells 54 quantisierte Spektralwerte des zeitdiskreten Audiosignals 50 aufweist. Der erfindungsgemäße Codierer umfaßt ferner eine Einrichtung zum Erzeugen eines Ganzzahl-Blocks unter Verwendung eines Ganzzahl-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 Einrichtung 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 Genauigkeit des Prozessorsystems, wie es ausgeführt worden ist, gegangen werden soll, so ist die Rundungsfunktion bereits inhärent bei dem inversen Quantisieren des Quantisierungs-Blocks enthalten, da ein Prozessor, der eine Ganzzahlarithmetik hat, ohnehin nicht in der Lage ist, nichtganzzahlige Werte zu liefern. Die Einrichtung 58 liefert somit einen sogenannten Rundungs-Block, der invers quantisierte Spektralwerte umfaßt, die ganzzahlig sind, d. h. inhärent oder explizit gerundet worden sind. Sowohl der Rundungs-Block als auch der Ganzzahl-Block werden einer Kombinationseinrichtung zugeführt, die unter Verwendung einer Differenzbildung einen Differenz-Block mit Differenz- Spektralwerten liefert, wobei der Ausdruck "Differenz- 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 einer 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 Informationen über den Quantisierungs-Block enthalten als auch Informationen über den Differenz-Block umfassen.
- Bei einem ersten bevorzugten Ausführungsbeispiel wird, wie es in Fig. 6 gezeigt ist, das zeitdiskrete Audiosignal mittels 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 Transformationsalgorithmus zu erzeugen.
- In Fig. 6 ist ferner die in Fig. 5 gezeigte Verarbeitungseinrichtung 60 als Bitstrom-Codiereinrichtung 60a zum Bitstrom-Codieren des Quantisierungs-Blocks, der durch die Einrichtung 52b ausgegeben wird, sowie durch einen Entropie-Codierer 60b zum Entropie-Codieren des Differenz-Blocks dargestellt. Der Bitstrom-Codierer 60a gibt die psychoakustisch codierten Audiodaten aus, während der Entropie- Codierer 60b einen Entropie-codierten Differenz-Block ausgibt. Die beiden Ausgangsdaten der Blöcke 60a und 60b können in geeigneter Weise in einen Bitstrom kombiniert werden, der als erste Skalierungsschicht die psychoakustisch codierten Audiodaten hat, und der als zweite Skalierungsschicht die Zusatzaudiodaten für eine verlustlose Decodierung hat. Der skalierte Bitstrom entspricht dann den in Fig. 5 gezeigten codierten Audiodaten am Ausgang 52 des Codierers.
- 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 Spektralwerte, die durch die Ganzzahl-Transformation erzeugt werden, werden hier gewissermaßen als Annäherung für eine übliches MDCT-Spektrum verwendet. Dieses Ausführungsbeispiel hat den Vorteil, daß nur der IntMDCT-Algorithmus im Codierer vorhanden ist, und daß nicht sowohl der IntMDCT- Algorithmus als auch der MDCT-Algorithmus im Codierer vorhanden sein müssen.
- Wieder Bezug nehmend auf Fig. 6 sei darauf hingewiesen, daß die durchgezogenen Blöcke und Linien einen üblichen Audiocodierern 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 erfindungsgemäße Gewinnung der Zusatzaudiodaten für eine verlustlose Codierung mittels einer Ganzzahl-Transformation ohne Änderung der Codierer/Decodierer-Grundstruktur hinzugefügt werden können.
- Fig. 7 zeigt ein Prinzipblockschaltbild eines erfindungsgemäßen Decodierers zum Decodieren der an dem Ausgang 52 von Fig. 5 ausgegebenen codierten Audiodaten. Diese werden zunächst in psychoakustisch codierte Audiodaten einerseits und die Zusatzaudiodaten andererseits zerlegt. Die psychoakustisch codierten Audiodaten werden einem üblichen Bitstrom-Decodierer 70 zugeführt, während die Zusatzaudiodaten, 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 Decodierer ferner eine Rundungseinrichtung 76 vorgesehen, die denselben Rundungsalgorithmus bzw. dieselbe Rundungsfunktion zum Abbilden einer reellen Zahl auf eine Ganzzahl durchführt, wie sie auch in der Einrichtung 58 von Fig. 6 implementiert sein kann. In einem decodiererseitigen Kombinierer 78 werden die gerundeten invers quantisierten Spektralwerte mit den Entropie-codierten Zusatzaudiodaten spektralwertweise 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önnen dann mittels einer Einrichtung 80 zum Durchführen einer inversen modifizierten diskreten Cosinustransformation 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 Ausgangssignal des Kombinierers 78 in seine zeitliche Darstellung umgesetzt, um ein verlustlos codiertes/decodiertes Audiosignal 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ührungsform des Entropie-Codierers 60b von Fig. 6 eingegangen. Nachdem in einem üblichen modernen MPEG-Codierer mehrere Codetabellen, die abhängig von einer durchschnittlichen Statistik der quantisierten Spektralwerte ausgewählt werden, vorliegen, wird es bevorzugt, dieselben Codetabellen oder Codebooks auch für die Entropie-Codierung des Differenz-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 durchgeführt werden.
- In einem MPEG-2-AAC-Codierer sind die spektralen Koeffizienten, also die quantisierten Spektralwerte im Quantisierungs-Block in Skalenfaktorbänder gruppiert, wobei die Spektralwerte mit einem Verstärkungsfaktor gewichtet sind, der von einem entsprechenden Skalenfaktor, der einem Skalenfaktorband zugeordnet ist, abgeleitet ist. Da in diesem bekannten Codiererkonzept ein ungleichmäßiger Quantisierer verwendet wird, um die gewichteten Spektralwerte zu quantisieren, hängt die Größe der Restwerte, also der Spektralwerte am Ausgang des Kombinierers 58, nicht nur von den Skalenfaktoren ab, sondern auch von den quantisierten Werten 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ängig von der Größe der Differenz-Spektralwerte durchzuführen und ferner im Decodierer die im Codierer verwendete Codetabelle auf der Basis sowohl der im Bitstrom übertragenen Skalenfaktoren als auch der quantisierten Werte zu ermitteln. Nachdem zum Entropie-Codieren der Differenz- Spektralwerte am Ausgang des Kombinierers 58 keine Seiteninformationen übertragen werden müssen, führt die Entropie- Codierung lediglich zu einer Datenratenkompression ohne daß irgendwelche Signalisierungsbits im Datenstrom als Seiteninformationen 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 transienten Audiosignalbereichen zu vermeiden. Diese Technik basiert auf der Möglichkeit, Fensterformen individuell in jeder Hälfte des MDCT-Fensters auszuwählen, und erlaubt es, die Blockgröße in aufeinanderfolgenden Blöcken zu variieren. Auf ähnliche Art und Weise ist der Ganzzahl- Transformationsalgorithmus in Form der IntMDCT, auf die Bezug nehmend auf die Fig. 1 bis 3 eingegangen wird, ausgeführt, um ebenfalls unterschiedliche Fensterformen beim Fenstern und beim Zeitbereich-Aliasing-Abschnitt der MDCT- Zerlegung zu verwenden. Es wird daher bevorzugt, sowohl für den Ganzzahl-Transformationsalgorithmus als auch für den Transformationsalgorithmus zum Erzeugen des Quantisierungsblocks 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)Stereocodierung erwähnt seien. Bei einer TNS-Codierung wird genauso wie bei einer MS-Codierung eine Modifikation der Spektralwerte vor der Quantisierung durchgeführt. Folglich nimmt die Differenz zwischen den IntMDCT-Werten, also dem Ganzzahl-Block, und den quantisierten MDCT-Werten zu. Erfindungsgemäß ist der Ganzzahl-Transformationsalgorithmus ausgebildet, um sowohl eine TNS-Codierung als auch eine Mitte/Seite-Codierung auch von Ganzzahl-Spektralwerten zuzulassen. Die TNS-Technik basiert auf einer adaptiven Vorwärtsprädiktion der MDCT-Werte über der Frequenz. Dasselbe Prädiktionsfilter, das von einem üblichen TNS-Modul signaladaptiv berechnet wird, wird vorzugsweise ebenfalls dazu verwendet, die Ganzzahl-Spektralwerte zu prädizieren, wobei, falls dadurch nichtganzzahlige Werte entstehen, eine nachgeschaltete Rundung eingesetzt werden kann, um wieder ganzzahlige Werte zu erzeugen. Diese Rundung erfolgt vorzugsweise nach jedem Prädiktionsschritt. In dem Decodierer kann das ursprüngliche Spektrum wieder rekonstruiert werden, 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 π/4, basierend auf dem Lifting-Schema, eingesetzt werden. Dadurch können die ursprünglichen IntMDCT-Werte in dem Decodierer wieder rekonstruiert werden.
- Es sei darauf hingewiesen, daß das erfindungsgemäße Konzept in seiner bevorzugten Ausprägung mit der IntMDCT als ganzzahligem Transformationsalgorithmus auf alle MDCT-basierten gehörangepaßten Audiocodierer angewendet werden kann. Lediglich 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 erfindungsgemäß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 Komponenten 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 gezeichnet ist, kann diese Zusatzdaten auswerten und zusammen mit dem quantisierten MDCT-Spektrum vom gehörangepaßten Decodierer das IntMDCT-Spektrum verlustlos rekonstruieren.
- Im nachfolgenden wird als Beispiel für einen ganzzahligen Transformationsalgorithmus auf den IntMDCT- Transformationsalgorithmus eingegangen, der in "Audio Coding 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 aufweist. 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.
- Im nachfolgenden wird zum besseren Verständnis der IntMDCT anhand der Fig. 1 bis 4 auf die wesentlichen Eigenschaften dieser speziellen Form eines ganzzahligen Transformationsalgorithmus eingegangen.
- Das erfindungsgemäße Verfahren zum Codieren bzw. Decodieren ist vorzugsweise auf einem digitalen Speichermedium, wie z. B. einer Diskette, mit elektronisch auslesbaren Steuersignalen gespeichert, wobei die Steuersignale so mit einem programmierbaren Computersystem zusammenarbeiten können, dass das Codier- und/oder Decodierverfahren ausgeführt werden kann/können. In anderen Worten ausgedrückt liegt also ein Computer-Programm-Produkt mit auf einem maschinenlesbaren Träger gespeichertem Programmcode zur Durchführen des Codierverfahrens und/oder des Decodierverfahrens vor, wenn das Programmprodukt auf einem Rechner abläuft. Die erfindungsgemäßen Verfahren können also in einem Computer- Programm mit einem Programmcode zur Durchführen der erfindungsgemäßen Verfahren, wenn das Programm auf einem Computer abläuft, realisiert sein.
- Fig. 1 zeigt ein Übersichtsdiagramm für die erfindungsgemäß bevorzugte Vorrichtung zum Verarbeiten von zeitdiskreten Abtastwerten, die ein Audiosignal darstellen, um ganzzahlige Werte zu erhalten, auf denen aufbauend der Int-MDCT- Ganzzahl-Transformationsalgorithmus arbeitet. Die zeitdiskreten Abtastwerte werden durch die in Fig. 1 gezeigte Vorrichtung gefenstert und optional in eine spektrale Darstellung 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 ganzzahligen DCT in eine spektrale Darstellung umgesetzt zu werden. Die ganzzahlige DCT ist ausgebildet, um aus N Eingangswerten N Ausgangswerte zu erzeugen, was im Gegensatz zu der MDCT-Funktion 408 von Fig. 4a steht, die aus 2N gefensterten Abtastwerten aufgrund der MDCT-Gleichung lediglich N Spektralwerte erzeugt.
- Zum Fenstern der zeitdiskreten Abtastwerte werden zunächst in einer Einrichtung 16 zwei zeitdiskrete Abtastwerte ausgewählt, die zusammen einen Vektor von zeitdiskreten Abtastwerten 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 × 2 beaufschlagt, wobei diese Operation nicht unmittelbar durchgeführt wird, sondern mittels mehrerer sogenannten Lifting-Matrizen.
- Eine Lifting-Matrix hat die Eigenschaft, daß sie nur ein Element aufweist, das von dem Fenster w abhängt und ungleich "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 Filterpaaren, die dasselbe Tiefpaß- oder Hochpaßfilter haben. Jedes Paar komplementärer Filter kann in Lifting-Schritte faktorisiert werden. Insbesondere gilt dies für Givens- Rotationen. Es sei der Fall betrachtet, bei dem die Polyphasenmatrix eine Givens-Rotation ist. Es gilt dann:
- Jede der drei rechts des Gleichheitszeichens stehenden Lifting-Matrizen hat als Hauptdiagonalelemente den Wert "1". Ferner ist in jeder Lifting-Matrix ein Nebendiagonalelement gleich 0, und ein Nebendiagonalelement vom Drehwinkel α abhängig.
- Der Vektor wird nunmehr mit der dritten Lifting-Matrix, d. h. der Liftingmatrix ganz rechts in obiger Gleichung, multipliziert, um einen ersten Ergebnisvektor zu erhalten. Dies ist in Fig. 1 durch eine Einrichtung 18 dargestellt. Es wird nunmehr der erste Ergebnisvektor mit einer beliebigen 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 Ausgang der Einrichtung 20 wird ein gerundeter erster Ergebnisvektor erhalten. Der gerundete erste Ergebnisvektor wird nunmehr in eine Einrichtung 22 zum Multiplizieren desselben mit der mittleren, d. h. zweiten, Lifting-Matrix eingespeist, um einen zweiten Ergebnisvektor zu erhalten, der in einer Einrichtung 24 wiederum gerundet wird, um einen gerundeten 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 gefensterte 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 Cosinus-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 × N Matrix. Jede orthogonale N × N-Matrix kann in N (N - 1)/2 Givens-Rotationen zerlegt werden, wie es in der Fachveröffentlichung P. P. Vaidyanathan, "Multirate Systems And Filter Banks", Prentice Hall, Englewood Cliffs, 1993, ausgeführt ist. Es sei darauf hingewiesen, daß auch weitere Zerlegungen existieren.
- Bezüglich der Klassifikationen der verschiedenen DCT- Algorithmen sei auf H. S. Malvar, "Signal Processing With Lapped Transforms", Artech House, 1992, verwiesen. Allgemein unterscheiden sich die DCT-Algorithmen durch die Art ihrer Basisfunktionen. Während die DCT-IV, die hier bevorzugt wird, nicht-symmetrische Basisfunktionen umfaßt, d. h. eine Cosinus-Viertelwelle, eine Cosinus-3/4-Welle, eine Cosinus-5/4-Welle, eine Cosinus-7/4-Welle, etc., hat die diskrete Cosinustransformation z. B. vom Typ II (DCT-II), achsensymmetrische und punktsymmetrische Basisfunktionen. Die 0-te Basisfunktion hat einen Gleichanteil, die erste Basisfunktion ist eine halbe Cosinuswelle, die zweite Basisfunktion ist eine ganze Cosinuswelle, usw. Aufgrund der Tatsache, daß die DCT-II den Gleichanteil besonders berücksichtigt, wird sie bei der Videocodierung verwendet, nicht aber bei der Audiocodierung, da bei der Audiocodierung im Gegensatz zur Videocodierung der Gleichanteil nicht von Relevanz ist.
- Im nachfolgend wird darauf eingegangen, wie der Drehwinkel α der Givens-Rotation von der Fensterfunktion abhängt.
- Eine MDCT mit einer Fensterlänge von 2N kann in eine diskrete Cosinustransformation 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 Überlappung ü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 aufeinanderfolgender 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 Ausgang 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 darstellt.
- Aus der TDAC-Bedingung für die Fensterfunktion w gilt folgender Zusammenhang:
- Für bestimmte Winkel αk, k = 0, . . ., N/2 - 1 kann diese Vorverarbeitung im Zeitbereich als Givens-Rotation geschrieben werden, wie es ausgeführt worden ist.
- Der Winkel α 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 Abtastwerte x(0) bis x(2N - 1), die durch ein Fenster gemeinsam "gefenstert" werden, werden zunächst derart durch die Einrichtung 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 schematisch die Lifting- Multiplikationen und anschließenden Rundungen der Einrichtungen 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 Verarbeitung wird für das dritte und vierte Viertel des ersten Fensters durchgeführt. Nunmehr liegen am Ausgang 12 2N gefensterte 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 Abtastwerte des ersten Viertels des Fensters werden in eine vorausgehende DCT-IV zusammen mit den gefensterten ganzzahligen 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 gezeigte ganzzahlige DCT-IV-Transformation 32 liefert nunmehr N ganzzahlige Spektralwerte y(0) bis y(N - 1). Diese ganzzahligen Spektralwerte können nunmehr beispielsweise einfach Entropie-codiert werden, ohne daß eine dazwischenliegende Quantisierung erforderlich ist, da die Fensterung und Transformation ganzzahlige Ausgangswerte liefert.
- In der rechten Hälfte von Fig. 2 ist ein Decodierer dargestellt. Der Decodierer bestehend aus Rücktransformation und "inverser Fensterung" arbeitet invers zum Codierer. Es ist bekannt, daß zur Rücktransformation einer DCT-IV eine inverse DCT-IV verwendet werden kann, wie es in Fig. 2 dargestellt ist. Die Ausgangswerte der Decodierer-DCT-IV 34 werden nunmehr, wie es in Fig. 2 dargestellt ist, mit den entsprechenden 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 durchlaufen 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 (Einrichtung 22) gebildet wird, so ergibt sich folgender Ausdruck:
(x, y) → (x, y + xsinα) (6)
- Die Werte x, y auf der rechten Seite von Gleichung 6 sind Ganzzahlen. Dies trifft jedoch für den Wert xsinα nicht zu. Hier muß die Rundungsfunktion r eingeführt werden, wie es in der nachfolgenden Gleichung
(x, y) → (x, y + r(xsinα)) (7)
dargestellt ist. Diese Operation führt die Einrichtung 24 aus. - Die inverse Abbildung (im Decodierer) ist folgendermaßen definiert:
(x', y') → (x', y' - r(x'sinα)) (8)
- Aufgrund dem Minuszeichens vor der Rundungsoperation wird ersichtlich, daß die ganzzahlige Approximierung des Lifting-Schritts umgekehrt werden kann, ohne daß ein Fehler eingeführt wird. Die Anwendung dieser Approximation auf jeden 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 Algorithmus 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 Rotation mit dem Winkel -α und lautet folgendermaßen:
- Die Lifting-Matrizen für den Decodierer, d. h. für die inverse Givens-Rotation, ergibt sich in diesem Fall unmittelbar aus Gleichung (1), indem lediglich der Ausdruck "sin α" durch den Ausdruck "-sin α" 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 innerhalb 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 dargestellt ist. Dann werden die rotierten Werte, d. h. die gefensterten 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 darauffolgenden 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 Rundungsschritt eingeführt wird, derart, daß die Gleitkomma-Zahlen unmittelbar nach ihrer Entstehung gerundet werden, derart, daß vor jeder Multiplikation eines Ergebnisvektors mit einer Lifting-Matrix der Ergebnisvektor lediglich Ganzzahlen hat.
- Die Ausgangswerte bleiben also immer ganzzahlig, wobei es bevorzugt wird, auch ganzzahlige Eingangswerte zu verwenden. Dies stellt keine Einschränkung dar, da jegliche beispielsweise PCM-Abtastwerte, wie sie auf einer CD abgespeichert sind, ganzzahlige Zahlenwerte sind, deren Wertebereich 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 Rotationen in umgekehrter Reihenfolge ausgeführt werden. Es existiert somit eine ganzzahlige Approximation der MDCT mit perfekter Rekonstruktion, also eine verlustlose Transformation.
- Die gezeigte Transformation liefert ganzzahlige Ausgangswerte statt Gleitkommawerte. Sie liefert eine perfekte Rekonstruktion, 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 Ausführungsbeispiel der vorliegenden Erfindung ein Ersatz für die modifizierte diskrete Cosinustransformation. Auch andere Transformationsverfahren können jedoch ganzzahlig ausgeführt werden, so lange eine Zerlegung in Rotationen und eine Zerlegung der Rotationen in Lifting-Schritte möglich ist.
- Die ganzzahlige MDCT hat die meisten günstigen Eigenschaften 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 Transformation berücksichtigt wird, wird eine kritische Abtastung beibehalten, so daß die Gesamtanzahl von Spektralwerten, die ein Audiosignal darstellen, gleich der Gesamtanzahl von Eingangs-Abtastwerten ist.
- Verglichen mit einer normalen MDCT, die Gleitkomma- Abtastwerte liefert, zeigt sich bei der beschriebenen bevorzugten 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 diese Rauscherhöhung bei signifikanten Signalpegeln nicht bemerkbar macht. Dafür bietet sich die ganzzahlige Verarbeitung für eine effiziente Hardware-Implementation an, da lediglich Multiplikationsschritte verwendet werden, die ohne weiteres in Verschieben-Addieren-Schritte (Shift/Add- Schritte) zerlegt werden können, welche einfach und schnell hardwaremäßig implementiert werden können. Selbstverständlich 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 Audiosignals angewandt wird, resultiert dies in einer guten Energiekonzentrierung. Damit kann ein effizientes verlustloses Codierschema aufgebaut werden, indem einfach die in Fig. 1 dargestellte Fensterung/Transformation mit einem Entropiecodierer kaskadiert wird. Insbesondere ein gestapeltes Codieren (Stacked Coding) unter Verwendung von Escape-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 Codetabelle passen, und dann die weggelassenen niederstwertigen Bits zusätzlich zu codieren. Im Vergleich zu der Alternative der Verwendung von größeren Codetabellen ist die beschriebene Alternative hinsichtlich des Speicherverbrauchs zum Speichern der Codetabellen günstiger. Ein nahezu verlustloser 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 Codiergewinn. Für transiente Teile des Signals ist der Codiergewinn niedrig, und zwar aufgrund des flachen Spektrums 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 verwendet werden, indem eine lineare Prädiktion im Frequenzbereich 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 Adaption des resultierenden Quantisierungsrauschens an die zeitliche Struktur des Audiosignals und verhindert daher Vorechos in psychoakustischen Audiocodierern. Für ein verlustloses 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 bleiben. Durch Verwenden des inversen Filters und derselben Rundungsfunktion kann das ursprüngliche Spektrum genau wieder hergestellt werden.
- Um die Redundanz zwischen zwei Kanälen zur Datenreduktion auszunutzen, kann auch eine Mitte-Seite-Codierung verlustlos eingesetzt werden, wenn eine gerundete Rotation mit einem Winkel π/4 verwendet wird. Im Vergleich zur Alternative des Berechnens der Summe und Differenz des linken und rechten Kanals eines Stereosignals hat die gerundete Rotation den Vorteil der Energieerhaltung. Die Verwendung sogenannter 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 ebenfalls berücksichtigt werden, um eine Redundanz zwischen zwei Kanälen flexibler reduzieren zu können.
Claims (17)
1. Vorrichtung zum Codieren eines zeitdiskreten
Audiosignals, um codierte Audiodaten zu erhalten, mit
folgenden Merkmalen:
einer Einrichtung (52) zum Liefern eines Quantisierungs-Blocks von unter Verwendung eines psychoakustischen Modells (54) quantisierten Spektralwerten des zeitdiskreten Audiosignals;
einer Einrichtung (58) zum inversen Quantisieren des Quantisierungsblocks und zum Runden der invers quantisierten Spektralwerte, um einen Rundungs-Block von gerundeten invers quantisierten Spektralwerten zu erhalten;
einer Einrichtung (56) zum Erzeugen eines Ganzzahl- Blocks von ganzzahligen Spektralwerten unter Verwendung eines Ganzzahl-Transformationsalgorithmus, der ausgebildet ist, um aus einem Block von ganzzahligen zeitdiskreten Abtastwerten den Ganzzahl-Block von Spektralwerten zu erzeugen;
eine Kombinationseinrichtung (58) zum Bilden eines Differenz-Blocks, der von einer spektralwertweisen Differenz zwischen dem Rundungs-Block und dem Ganzzahl-Block abhängt, um einen Differenz-Block mit Differenz-Spektralwerten zu erhalten; und
einer Einrichtung (60) zum Verarbeiten des Quantisierungs-Blocks und des Rundungs-Blocks, um codierte Audiodaten zu erzeugen, die Informationen über den Quantisierungs-Block und Informationen über den Differenz-Block umfassen.
einer Einrichtung (52) zum Liefern eines Quantisierungs-Blocks von unter Verwendung eines psychoakustischen Modells (54) quantisierten Spektralwerten des zeitdiskreten Audiosignals;
einer Einrichtung (58) zum inversen Quantisieren des Quantisierungsblocks und zum Runden der invers quantisierten Spektralwerte, um einen Rundungs-Block von gerundeten invers quantisierten Spektralwerten zu erhalten;
einer Einrichtung (56) zum Erzeugen eines Ganzzahl- Blocks von ganzzahligen Spektralwerten unter Verwendung eines Ganzzahl-Transformationsalgorithmus, der ausgebildet ist, um aus einem Block von ganzzahligen zeitdiskreten Abtastwerten den Ganzzahl-Block von Spektralwerten zu erzeugen;
eine Kombinationseinrichtung (58) zum Bilden eines Differenz-Blocks, der von einer spektralwertweisen Differenz zwischen dem Rundungs-Block und dem Ganzzahl-Block abhängt, um einen Differenz-Block mit Differenz-Spektralwerten zu erhalten; und
einer Einrichtung (60) zum Verarbeiten des Quantisierungs-Blocks und des Rundungs-Blocks, um codierte Audiodaten zu erzeugen, die Informationen über den Quantisierungs-Block und Informationen über den Differenz-Block umfassen.
2. Vorrichtung nach Anspruch 1, bei der die Einrichtung
(52) zum Liefern ausgebildet ist,
um aus einem Zeit-Block von zeitlichen Audiosignalwerten mittels einer MDCT einen MDCT-Block von MDCT- Spektralwerten zu erzeugen, und
um den MDCT-Block unter Verwendung eines psychoakustischen Modells zu quantisieren, um den Quantisierungs- Block zu erzeugen, der quantisierte MDCT-Spektralwerte aufweist.
um aus einem Zeit-Block von zeitlichen Audiosignalwerten mittels einer MDCT einen MDCT-Block von MDCT- Spektralwerten zu erzeugen, und
um den MDCT-Block unter Verwendung eines psychoakustischen Modells zu quantisieren, um den Quantisierungs- Block zu erzeugen, der quantisierte MDCT-Spektralwerte aufweist.
3. Vorrichtung nach Anspruch 2,
bei der die Einrichtung (56) zum Erzeugen des
Ganzzahl-Blocks ausgebildet ist, um eine IntMDCT auf den
Zeit-Block auszuführen, um den Ganzzahl-Block zu
erzeugen, der IntMDCT-Spektralwerte aufweist.
4. Vorrichtung nach einem der vorhergehenden Ansprüche,
bei der die Einrichtung (52) zum Liefern ausgebildet
ist, um unter Verwendung eine Gleitkomma-
Transformationsalgorithmus den Quantisierungs-Block zu
berechnen.
5. Vorrichtung nach einem der Ansprüche 1 bis 3,
bei der die Einrichtung (52) zum Liefern ausgebildet
ist, um den Quantisierungs-Block unter Verwendung des
von der Einrichtung (56) zum Erzeugen erzeugten
Ganzzahl-Blocks zu berechnen.
6. Vorrichtung nach einem der vorhergehenden Ansprüche,
bei der die Einrichtung (60) zum Verarbeiten ausgebildet ist, um den Quantisierungs-Block einer Entropie- Codierung zu unterziehen (60a), um einen Entropiecodierten Quantisierungs-Block zu erhalten,
um den Rundungs-Block einer Entropie-Codierung zu unterziehen (60b), um einen Entropie-codierten Rundungs- Block zu erhalten, und
um den Entropie-codierten Quantisierungs-Block in eine erste Skalierungsschicht eines skalierten Datenstroms, der die codierten Audiodaten darstellt, zu überführen, und um den Entropie-codierten Rundungs-Block in eine zweite Skalierungsschicht des skalierten Datenstroms zu überführen.
bei der die Einrichtung (60) zum Verarbeiten ausgebildet ist, um den Quantisierungs-Block einer Entropie- Codierung zu unterziehen (60a), um einen Entropiecodierten Quantisierungs-Block zu erhalten,
um den Rundungs-Block einer Entropie-Codierung zu unterziehen (60b), um einen Entropie-codierten Rundungs- Block zu erhalten, und
um den Entropie-codierten Quantisierungs-Block in eine erste Skalierungsschicht eines skalierten Datenstroms, der die codierten Audiodaten darstellt, zu überführen, und um den Entropie-codierten Rundungs-Block in eine zweite Skalierungsschicht des skalierten Datenstroms zu überführen.
7. Vorrichtung nach Anspruch 6,
bei der die Einrichtung (60) zum Verarbeiten ferner ausgebildet ist, um für die Entropie-Codierung des Quantisierungs-Blocks eine aus einer Mehrzahl von Codetabellen abhängig von den quantisierten Spektralwerten zu verwenden, und
bei der die Einrichtung (60) zum Verarbeiten ferner ausgebildet ist, um für die Entropie-Codierung des Differenz-Blocks eine aus einer Mehrzahl von Codetabellen abhängig von einer Eigenschaft eines Quantisierers auszuwählen, der bei einer Quantisierung zum Erzeugen des Quantisierungs-Blocks verwendbar ist.
bei der die Einrichtung (60) zum Verarbeiten ferner ausgebildet ist, um für die Entropie-Codierung des Quantisierungs-Blocks eine aus einer Mehrzahl von Codetabellen abhängig von den quantisierten Spektralwerten zu verwenden, und
bei der die Einrichtung (60) zum Verarbeiten ferner ausgebildet ist, um für die Entropie-Codierung des Differenz-Blocks eine aus einer Mehrzahl von Codetabellen abhängig von einer Eigenschaft eines Quantisierers auszuwählen, der bei einer Quantisierung zum Erzeugen des Quantisierungs-Blocks verwendbar ist.
8. Vorrichtung nach einem der vorhergehenden Ansprüche,
bei der die Einrichtung (52) zum Liefern ausgebildet ist, um abhängig von einer Beschaffenheit des Audiosignals eines einer Mehrzahl von Fenstern zum Fenstern eines zeitlichen Blocks von Audiosignalwerten zu verwenden, und
bei der die Einrichtung (56) zum Erzeugen ausgebildet ist, um für den ganzzahligen Transformationsalgorithmus dieselbe Fensterauswahl zu treffen.
bei der die Einrichtung (52) zum Liefern ausgebildet ist, um abhängig von einer Beschaffenheit des Audiosignals eines einer Mehrzahl von Fenstern zum Fenstern eines zeitlichen Blocks von Audiosignalwerten zu verwenden, und
bei der die Einrichtung (56) zum Erzeugen ausgebildet ist, um für den ganzzahligen Transformationsalgorithmus dieselbe Fensterauswahl zu treffen.
9. Vorrichtung nach einem der Ansprüche 1 bis 8,
bei der die Einrichtung zum Erzeugen ausgebildet ist, um einen ganzzahligen Transformationsalgorithmus zu verwenden, der folgende Schritte aufweist:
Fenstern der zeitdiskreten Abtastwerte mit einem Fenster (w) mit einer Länge, die 2N zeitdiskreten Abtastwerten entspricht, um gefensterte zeitdiskrete Abtastwerte für eine Umsetzung der zeitdiskreten Abtastwerte in eine spektrale Darstellung mittels einer Transformation zu liefern, die aus N Eingangswerten N Ausgangswerte erzeugen kann, wobei das Fenstern folgende Teilschritte aufweist:
Auswählen (16) eines zeitdiskreten Abtastwerts aus einem Viertel des Fensters und eines zeitdiskreten Abtastwerts aus einem anderen Viertel des Fensters, um einen Vektor von zeitdiskreten Abtastwerten zu erhalten;
Beaufschlagen des Vektors mit einer quadratischen Drehmatrix, deren Dimension mit der Dimension des Vektors übereinstimmt, wobei die Drehmatrix durch eine Mehrzahl von Lifting-Matrizen darstellbar ist, wobei eine Lifting-Matrix nur ein Element aufweist, das von dem Fenster (w) abhängt und ungleich 1 oder 0 ist, wobei der Teilschritt des Beaufschlagens folgende Unterschritte aufweist:
Multiplizieren (18) des Vektors mit einer Lifting-Matrix, um einen ersten Ergebnisvektor zu erhalten;
Runden (20) einer Komponente des ersten Ergebnisvektors mit einer Rundungsfunktion (r), die eine reelle Zahl auf eine ganze Zahl abbildet, um einen gerundeten ersten Ergebnisvektor zu erhalten; und
sequentielles Durchführen der Schritte des Multiplizierens (22) und Rundens (24) mit einer anderen Lifting-Matrix, bis alle Lifting-Matrizen abgearbeitet sind, um einen gedrehten Vektor zu erhalten, der einen ganzzahligen gefensterten Abtastwert aus dem Viertel des Fensters und einen ganzzahligen gefensterten Abtastwert aus dem anderen Viertel des Fensters aufweist, und
Durchführen des Schritt des Fensterns für alle zeitdiskreten Abtastwerte der verbleibenden Viertel des Fensters, um 2N gefilterte ganzzahlige Abtastwerte zu erhalten; und
Umsetzen (14) von N gefensterten ganzzahligen Abtastwerten in eine spektrale Darstellung durch eine Ganzzahl-DCT für Werte mit den gefilterten ganzzahligen Abtastwerten des zweiten Viertels und des dritten Viertels des Fensters, um N ganzzahlige Spektralwerte zu erhalten.
bei der die Einrichtung zum Erzeugen ausgebildet ist, um einen ganzzahligen Transformationsalgorithmus zu verwenden, der folgende Schritte aufweist:
Fenstern der zeitdiskreten Abtastwerte mit einem Fenster (w) mit einer Länge, die 2N zeitdiskreten Abtastwerten entspricht, um gefensterte zeitdiskrete Abtastwerte für eine Umsetzung der zeitdiskreten Abtastwerte in eine spektrale Darstellung mittels einer Transformation zu liefern, die aus N Eingangswerten N Ausgangswerte erzeugen kann, wobei das Fenstern folgende Teilschritte aufweist:
Auswählen (16) eines zeitdiskreten Abtastwerts aus einem Viertel des Fensters und eines zeitdiskreten Abtastwerts aus einem anderen Viertel des Fensters, um einen Vektor von zeitdiskreten Abtastwerten zu erhalten;
Beaufschlagen des Vektors mit einer quadratischen Drehmatrix, deren Dimension mit der Dimension des Vektors übereinstimmt, wobei die Drehmatrix durch eine Mehrzahl von Lifting-Matrizen darstellbar ist, wobei eine Lifting-Matrix nur ein Element aufweist, das von dem Fenster (w) abhängt und ungleich 1 oder 0 ist, wobei der Teilschritt des Beaufschlagens folgende Unterschritte aufweist:
Multiplizieren (18) des Vektors mit einer Lifting-Matrix, um einen ersten Ergebnisvektor zu erhalten;
Runden (20) einer Komponente des ersten Ergebnisvektors mit einer Rundungsfunktion (r), die eine reelle Zahl auf eine ganze Zahl abbildet, um einen gerundeten ersten Ergebnisvektor zu erhalten; und
sequentielles Durchführen der Schritte des Multiplizierens (22) und Rundens (24) mit einer anderen Lifting-Matrix, bis alle Lifting-Matrizen abgearbeitet sind, um einen gedrehten Vektor zu erhalten, der einen ganzzahligen gefensterten Abtastwert aus dem Viertel des Fensters und einen ganzzahligen gefensterten Abtastwert aus dem anderen Viertel des Fensters aufweist, und
Durchführen des Schritt des Fensterns für alle zeitdiskreten Abtastwerte der verbleibenden Viertel des Fensters, um 2N gefilterte ganzzahlige Abtastwerte zu erhalten; und
Umsetzen (14) von N gefensterten ganzzahligen Abtastwerten in eine spektrale Darstellung durch eine Ganzzahl-DCT für Werte mit den gefilterten ganzzahligen Abtastwerten des zweiten Viertels und des dritten Viertels des Fensters, um N ganzzahlige Spektralwerte zu erhalten.
10. Vorrichtung nach einem der vorhergehenden Ansprüche,
bei der die Einrichtung (52) zum Liefern des Quantisierungs-Blocks ausgebildet ist, um vor einem Quantisierungsschritt (52b) eine Prädiktion von Spektralwerten über der Frequenz unter Verwendung eines Prädiktionsfilters durchzuführen, um Prädiktionsrestspektralwerte zu erhalten, die nach einer Quantisierung den Quantisierungs-Block 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 Rundungseinrichtung vorgesehen ist, um Prädiktionsrestspektralwerte aufgrund der Ganzzahl-Spektralwerte zu runden, die den Rundungs-Block darstellen.
bei der die Einrichtung (52) zum Liefern des Quantisierungs-Blocks ausgebildet ist, um vor einem Quantisierungsschritt (52b) eine Prädiktion von Spektralwerten über der Frequenz unter Verwendung eines Prädiktionsfilters durchzuführen, um Prädiktionsrestspektralwerte zu erhalten, die nach einer Quantisierung den Quantisierungs-Block 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 Rundungseinrichtung vorgesehen ist, um Prädiktionsrestspektralwerte aufgrund der Ganzzahl-Spektralwerte zu runden, die den Rundungs-Block darstellen.
11. 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/Seite-Codierung mit Spektralwerten des zeitdiskreten Audiosignals durchzuführen, um nach einer Quantisierung von Mitte/Seite-Spektralwerten den Quantisierungs-Block zu erhalten, und
bei der die Einrichtung (56) zum Erzeugen des Ganzzahl-Blocks ausgebildet ist, um ebenfalls eine Mitte/Seite-Codierung durchzuführen, die der Mitte/Seite- Codierung der Einrichtung (52) zum Liefern entspricht.
bei der das zeitdiskrete Audiosignal zumindest zwei Kanäle aufweist,
bei der die Einrichtung (52) zum Liefern ausgebildet ist, um eine Mitte/Seite-Codierung mit Spektralwerten des zeitdiskreten Audiosignals durchzuführen, um nach einer Quantisierung von Mitte/Seite-Spektralwerten den Quantisierungs-Block zu erhalten, und
bei der die Einrichtung (56) zum Erzeugen des Ganzzahl-Blocks ausgebildet ist, um ebenfalls eine Mitte/Seite-Codierung durchzuführen, die der Mitte/Seite- Codierung der Einrichtung (52) zum Liefern entspricht.
12. Vorrichtung nach einem der vorhergehenden Ansprüche,
bei der die Einrichtung (60) zum Verarbeiten
ausgebildet ist, um einen MPEG-2-AAC-Datenstrom zu erzeugen,
wobei in einem Feld Ancilliary Data
Zusatzinformationen für den Ganzzahl-Transformationsalgorithmus
eingebracht sind.
13. Verfahren zum Codieren eines zeitdiskreten
Audiosignals, um codierte Audiodaten zu erhalten, mit
folgenden Schritten:
Liefern (52) eines Quantisierungs-Blocks von unter Verwendung eines psychoakustischen Modells (54) quantisierten Spektralwerten des zeitdiskreten Audiosignals;
inverses Quantisieren (58) des Quantisierungsblocks und zum Runden der invers quantisierten Spektralwerte, um einen Rundungs-Block von gerundeten invers quantisierten Spektralwerten zu erhalten;
Erzeugen (56) eines Ganzzahl-Blocks von ganzzahligen Spektralwerten unter Verwendung eines Ganzzahl- Transformationsalgorithmus, der ausgebildet ist, um aus einem Block von ganzzahligen zeitdiskreten Abtastwerten den Ganzzahl-Block von Spektralwerten zu erzeugen;
Bilden (58) eines Differenz-Blocks, der von einer spektralwertweisen Differenz zwischen dem Rundungs- Block und dem Ganzzahl-Block abhängt, um einen Differenz-Block mit Differenz-Spektralwerten zu erhalten; und
Verarbeiten (60) des Quantisierungs-Blocks und des Rundungs-Blocks, um codierte Audiodaten zu erzeugen, die Informationen über den Quantisierungs-Block und Informationen über den Differenz-Block umfassen.
Liefern (52) eines Quantisierungs-Blocks von unter Verwendung eines psychoakustischen Modells (54) quantisierten Spektralwerten des zeitdiskreten Audiosignals;
inverses Quantisieren (58) des Quantisierungsblocks und zum Runden der invers quantisierten Spektralwerte, um einen Rundungs-Block von gerundeten invers quantisierten Spektralwerten zu erhalten;
Erzeugen (56) eines Ganzzahl-Blocks von ganzzahligen Spektralwerten unter Verwendung eines Ganzzahl- Transformationsalgorithmus, der ausgebildet ist, um aus einem Block von ganzzahligen zeitdiskreten Abtastwerten den Ganzzahl-Block von Spektralwerten zu erzeugen;
Bilden (58) eines Differenz-Blocks, der von einer spektralwertweisen Differenz zwischen dem Rundungs- Block und dem Ganzzahl-Block abhängt, um einen Differenz-Block mit Differenz-Spektralwerten zu erhalten; und
Verarbeiten (60) des Quantisierungs-Blocks und des Rundungs-Blocks, um codierte Audiodaten zu erzeugen, die Informationen über den Quantisierungs-Block und Informationen über den Differenz-Block umfassen.
14. Vorrichtung zum Decodieren von codierten Audiodaten,
die aus einem zeitdiskreten Audiosignal durch Liefern
(52) eines Quantisierungs-Blocks 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 Rundungs-Block von gerundeten invers
quantisierten Spektralwerten zu erhalten, durch Erzeugen (56)
eines Ganzzahl-Blocks von ganzzahligen Spektralwerten
unter Verwendung eines Ganzzahl-
Transformationsalgorithmus, der ausgebildet ist, um
aus einem Block von ganzzahligen zeitdiskreten
Abtastwerten den Ganzzahl-Block von Spektralwerten zu
erzeugen, und durch Bilden (58) eines Differenz-Blocks,
der von einer spektralwertweisen Differenz zwischen
dem Rundungs-Block und dem Ganzzahl-Block abhängt, um
einen Differenz-Block mit Differenz-Spektralwerten zu
erhalten, erzeugt worden sind, mit folgenden
Merkmalen:
einer Einrichtung (70) zum Verarbeiten der codierten Audiodaten, um einen Quantisierungs-Block und einen Differenz-Block zu erhalten;
einer Einrichtung (74) zum inversen Quantisieren und Runden des Quantisierungs-Blocks, um einen ganzzahligen invers quantisierten Quantisierungs-Block zu erhalten;
einer Einrichtung (78) zum spektralwertweisen Kombinieren des ganzzahligen Quantisierungs-Blocks und des Differenz-Blocks, um einen Kombinations-Block zu erhalten; und
einer Einrichtung (82) zum Erzeugen einer zeitlichen Darstellung des zeitdiskreten Audiosignals unter Verwendung des Kombinations-Blocks und unter Verwendung eines zu dem Ganzzahl-Transformationsalgorithmus inversen Ganzzahl-Transformationsalgorithmus.
einer Einrichtung (70) zum Verarbeiten der codierten Audiodaten, um einen Quantisierungs-Block und einen Differenz-Block zu erhalten;
einer Einrichtung (74) zum inversen Quantisieren und Runden des Quantisierungs-Blocks, um einen ganzzahligen invers quantisierten Quantisierungs-Block zu erhalten;
einer Einrichtung (78) zum spektralwertweisen Kombinieren des ganzzahligen Quantisierungs-Blocks und des Differenz-Blocks, um einen Kombinations-Block zu erhalten; und
einer Einrichtung (82) zum Erzeugen einer zeitlichen Darstellung des zeitdiskreten Audiosignals unter Verwendung des Kombinations-Blocks und unter Verwendung eines zu dem Ganzzahl-Transformationsalgorithmus inversen Ganzzahl-Transformationsalgorithmus.
15. Verfahren zum Decodieren von codierten Audiodaten, die
aus einem zeitdiskreten Audiosignal durch Liefern,
inverses Quantisieren, Erzeugen, Bilden und Verarbeiten
erzeugt worden sind, mit folgenden Schritten:
Verarbeiten (70) der codierten Audiodaten, um einen Quantisierungs-Block und einen Differenz-Block zu erhalten;
inverses Quantisieren (74) des Quantisierungs-Blocks und Runden, um einen ganzzahligen invers quantisierten Quantisierungs-Block zu erhalten;
spektralwertweises Kombinieren (78) des ganzzahligen Quantisierungs-Blocks und des Differenz-Blocks, um einen Kombinations-Block zu erhalten; und
Erzeugen (82) einer zeitlichen Darstellung des zeitdiskreten Audiosignals unter Verwendung des Kombinations-Blocks und unter Verwendung eines zu dem Ganzzahl-Transformationsalgorithmus inversen Ganzzahl- Transformationsalgorithmus.
Verarbeiten (70) der codierten Audiodaten, um einen Quantisierungs-Block und einen Differenz-Block zu erhalten;
inverses Quantisieren (74) des Quantisierungs-Blocks und Runden, um einen ganzzahligen invers quantisierten Quantisierungs-Block zu erhalten;
spektralwertweises Kombinieren (78) des ganzzahligen Quantisierungs-Blocks und des Differenz-Blocks, um einen Kombinations-Block zu erhalten; und
Erzeugen (82) einer zeitlichen Darstellung des zeitdiskreten Audiosignals unter Verwendung des Kombinations-Blocks und unter Verwendung eines zu dem Ganzzahl-Transformationsalgorithmus inversen Ganzzahl- Transformationsalgorithmus.
16. Computer-Programm mit einem Programmcode zur
Durchführung des Verfahrens zum Codieren nach Anspruch 13,
wenn das Programm auf einem Computer abläuft.
17. Computer-Programm mit einem Programmcode zur
Durchführung des Verfahrens zum Decodieren nach Anspruch 15,
wenn das Programm auf einem Computer abläuft.
Priority Applications (12)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10217297A DE10217297A1 (de) | 2002-04-18 | 2002-04-18 | Vorrichtung und Verfahren zum Codieren eines zeitdiskreten Audiosignals und Vorrichtung und Verfahren zum Decodieren von codierten Audiodaten |
EP02792858A EP1495464B1 (de) | 2002-04-18 | 2002-12-02 | Vorrichtung und verfahren zum codieren eines zeitdiskreten audiosignals und vorrichtung und verfahren zum decodieren von codierten audiodaten |
DE50204426T DE50204426D1 (de) | 2002-04-18 | 2002-12-02 | Vorrichtung und verfahren zum codieren eines zeitdiskreten audiosignals und vorrichtung und verfahren zum decodieren von codierten audiodaten |
AU2002358578A AU2002358578B2 (en) | 2002-04-18 | 2002-12-02 | Device and method for encoding a time-discrete audio signal and device and method for decoding coded audio data |
KR1020047016744A KR100892152B1 (ko) | 2002-04-18 | 2002-12-02 | 시간-이산 오디오 신호를 부호화하기 위한 장치 및 방법그리고 부호화 오디오 데이터를 복호화하기 위한 장치 및방법 |
AT02792858T ATE305655T1 (de) | 2002-04-18 | 2002-12-02 | Vorrichtung und verfahren zum codieren eines zeitdiskreten audiosignals und vorrichtung und verfahren zum decodieren von codierten audiodaten |
JP2003585070A JP4081447B2 (ja) | 2002-04-18 | 2002-12-02 | 時間離散オーディオ信号を符号化する装置と方法および符号化されたオーディオデータを復号化する装置と方法 |
PCT/EP2002/013623 WO2003088212A1 (de) | 2002-04-18 | 2002-12-02 | Vorrichtung und verfahren zum codieren eines zeitdiskreten audiosignals und vorrichtung und verfahren zum decodieren von codierten audiodaten |
CNB028289749A CN1258172C (zh) | 2002-04-18 | 2002-12-02 | 对音频信号进行编码及解码的装置和方法 |
CA002482427A CA2482427C (en) | 2002-04-18 | 2002-12-02 | Apparatus and method for coding a time-discrete audio signal and apparatus and method for decoding coded audio data |
US10/966,780 US7275036B2 (en) | 2002-04-18 | 2004-10-15 | Apparatus and method for coding a time-discrete audio signal to obtain coded audio data and for decoding coded audio data |
HK05109316A HK1077391A1 (en) | 2002-04-18 | 2005-10-20 | Device and method for coding and decoding audio signal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10217297A DE10217297A1 (de) | 2002-04-18 | 2002-04-18 | Vorrichtung und Verfahren zum Codieren eines zeitdiskreten Audiosignals und Vorrichtung und Verfahren zum Decodieren von codierten Audiodaten |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10217297A1 true DE10217297A1 (de) | 2003-11-06 |
Family
ID=28798541
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10217297A Withdrawn DE10217297A1 (de) | 2002-04-18 | 2002-04-18 | Vorrichtung und Verfahren zum Codieren eines zeitdiskreten Audiosignals und Vorrichtung und Verfahren zum Decodieren von codierten Audiodaten |
DE50204426T Expired - Lifetime DE50204426D1 (de) | 2002-04-18 | 2002-12-02 | Vorrichtung und verfahren zum codieren eines zeitdiskreten audiosignals und vorrichtung und verfahren zum decodieren von codierten audiodaten |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE50204426T Expired - Lifetime DE50204426D1 (de) | 2002-04-18 | 2002-12-02 | Vorrichtung und verfahren zum codieren eines zeitdiskreten audiosignals und vorrichtung und verfahren zum decodieren von codierten audiodaten |
Country Status (9)
Country | Link |
---|---|
EP (1) | EP1495464B1 (de) |
JP (1) | JP4081447B2 (de) |
KR (1) | KR100892152B1 (de) |
CN (1) | CN1258172C (de) |
AT (1) | ATE305655T1 (de) |
CA (1) | CA2482427C (de) |
DE (2) | DE10217297A1 (de) |
HK (1) | HK1077391A1 (de) |
WO (1) | WO2003088212A1 (de) |
Families Citing this family (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
MXPA06003509A (es) * | 2003-09-29 | 2007-01-25 | Agency Science Tech & Res | Metodo para realizar una transformacion de dominio de una senal digital de dominio de tiempo al dominio de frecuencia y veceversa. |
DE602004013031T2 (de) * | 2003-10-10 | 2009-05-14 | Agency For Science, Technology And Research | Verfahren zum codieren eines digitalen signals in einen skalierbaren bitstrom, verfahren zum decodieren eines skalierbaren bitstroms |
DE102004007184B3 (de) * | 2004-02-13 | 2005-09-22 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Verfahren und Vorrichtung zum Quantisieren eines Informationssignals |
DE102004007200B3 (de) * | 2004-02-13 | 2005-08-11 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audiocodierung |
DE102004059979B4 (de) | 2004-12-13 | 2007-11-22 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung und Verfahren zur Berechnung einer Signalenergie eines Informationssignals |
US8494667B2 (en) | 2005-06-30 | 2013-07-23 | Lg Electronics Inc. | Apparatus for encoding and decoding audio signal and method thereof |
WO2007027050A1 (en) | 2005-08-30 | 2007-03-08 | Lg Electronics Inc. | Apparatus for encoding and decoding audio signal and method thereof |
KR100857120B1 (ko) | 2005-10-05 | 2008-09-05 | 엘지전자 주식회사 | 신호 처리 방법 및 이의 장치, 그리고 인코딩 및 디코딩방법 및 이의 장치 |
WO2007040361A1 (en) | 2005-10-05 | 2007-04-12 | Lg Electronics Inc. | Method and apparatus for signal processing and encoding and decoding method, and apparatus therefor |
US7742913B2 (en) | 2005-10-24 | 2010-06-22 | Lg Electronics Inc. | Removing time delays in signal paths |
EP1852849A1 (de) * | 2006-05-05 | 2007-11-07 | Deutsche Thomson-Brandt Gmbh | Verfahren und Vorrichtung für verlustfreie Kodierung eines Quellensignals unter Verwendung eines verlustbehafteten kodierten Datenstroms und eines verlustfreien Erweiterungsdatenstroms |
EP1883067A1 (de) * | 2006-07-24 | 2008-01-30 | Deutsche Thomson-Brandt Gmbh | Verfahren und Vorrichtung für verlustfreie Kodierung eines Quellsignals, unter Benutzung eines verlustbehafteten kodierten Datenstroms und eines verlustfreien Erweiterungsdatenstroms. |
EP1903559A1 (de) | 2006-09-20 | 2008-03-26 | Deutsche Thomson-Brandt Gmbh | Verfahren und Vorrichtung zur Transkodierung von Tonsignalen |
DE102006051673A1 (de) | 2006-11-02 | 2008-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung und Verfahren zum Nachbearbeiten von Spektralwerten und Encodierer und Decodierer für Audiosignale |
DE102007003187A1 (de) * | 2007-01-22 | 2008-10-02 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung und Verfahren zum Erzeugen eines zu sendenden Signals oder eines decodierten Signals |
KR101149448B1 (ko) | 2007-02-12 | 2012-05-25 | 삼성전자주식회사 | 오디오 부호화 및 복호화 장치와 그 방법 |
EP2015293A1 (de) * | 2007-06-14 | 2009-01-14 | Deutsche Thomson OHG | Verfahren und Vorrichtung zur Kodierung und Dekodierung von Audiosignalen über adaptiv geschaltete temporäre Auflösung in einer Spektraldomäne |
EP2186088B1 (de) * | 2007-08-27 | 2017-11-15 | Telefonaktiebolaget LM Ericsson (publ) | Spektralanalyse/synthese mit geringer komplexität unter verwendung von auswählbarer zeitauflösung |
EP2063417A1 (de) * | 2007-11-23 | 2009-05-27 | Deutsche Thomson OHG | Formung des Rundungsfehlers für die auf ganzzahligen Transformationen basierende Kodierung und Dekodierung |
EP2144230A1 (de) | 2008-07-11 | 2010-01-13 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audiokodierungs-/Audiodekodierungsschema geringer Bitrate mit kaskadierten Schaltvorrichtungen |
CN102177426B (zh) * | 2008-10-08 | 2014-11-05 | 弗兰霍菲尔运输应用研究公司 | 多分辨率切换音频编码/解码方案 |
WO2011122875A2 (ko) * | 2010-03-31 | 2011-10-06 | 한국전자통신연구원 | 부호화 방법 및 장치, 그리고 복호화 방법 및 장치 |
US8924222B2 (en) | 2010-07-30 | 2014-12-30 | Qualcomm Incorporated | Systems, methods, apparatus, and computer-readable media for coding of harmonic signals |
US9208792B2 (en) | 2010-08-17 | 2015-12-08 | Qualcomm Incorporated | Systems, methods, apparatus, and computer-readable media for noise injection |
JP5799707B2 (ja) * | 2011-09-26 | 2015-10-28 | ソニー株式会社 | オーディオ符号化装置およびオーディオ符号化方法、オーディオ復号装置およびオーディオ復号方法、並びにプログラム |
EP2830058A1 (de) | 2013-07-22 | 2015-01-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Frequenzbereichsaudiocodierung mit Unterstützung von Transformationslängenschaltung |
CN105632503B (zh) * | 2014-10-28 | 2019-09-03 | 南宁富桂精密工业有限公司 | 信息隐藏方法及系统 |
US10354667B2 (en) | 2017-03-22 | 2019-07-16 | Immersion Networks, Inc. | System and method for processing audio data |
EP3471271A1 (de) * | 2017-10-16 | 2019-04-17 | Acoustical Beauty | Verbesserte konvolutionen von digitalen signalen mit verwendung einer bitanforderungsoptimierung eines digitalen zielsignals |
EP3483879A1 (de) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Analyse-/synthese-fensterfunktion für modulierte geläppte transformation |
WO2019091576A1 (en) * | 2017-11-10 | 2019-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits |
CN107911122A (zh) * | 2017-11-13 | 2018-04-13 | 南京大学 | 基于分解压缩的分布式光纤振动传感数据无损压缩方法 |
US11281312B2 (en) | 2018-01-08 | 2022-03-22 | Immersion Networks, Inc. | Methods and apparatuses for producing smooth representations of input motion in time and space |
JP7387634B2 (ja) | 2018-04-11 | 2023-11-28 | ドルビー ラボラトリーズ ライセンシング コーポレイション | 機械学習に基づく音声符号化及び復号のための知覚に基づく損失関数 |
DE102019204527B4 (de) * | 2019-03-29 | 2020-11-19 | Technische Universität München | Kodierungs-/dekodierungsvorrichtungen und verfahren zur kodierung/dekodierung von vibrotaktilen signalen |
KR102250835B1 (ko) * | 2019-08-05 | 2021-05-11 | 국방과학연구소 | 수동 소나의 협대역 신호를 탐지하기 위한 lofar 또는 demon 그램의 압축 장치 |
CN118571234A (zh) * | 2023-02-28 | 2024-08-30 | 华为技术有限公司 | 音频编解码方法及相关装置 |
-
2002
- 2002-04-18 DE DE10217297A patent/DE10217297A1/de not_active Withdrawn
- 2002-12-02 KR KR1020047016744A patent/KR100892152B1/ko not_active Expired - Lifetime
- 2002-12-02 WO PCT/EP2002/013623 patent/WO2003088212A1/de active IP Right Grant
- 2002-12-02 JP JP2003585070A patent/JP4081447B2/ja not_active Expired - Lifetime
- 2002-12-02 CA CA002482427A patent/CA2482427C/en not_active Expired - Lifetime
- 2002-12-02 CN CNB028289749A patent/CN1258172C/zh not_active Expired - Lifetime
- 2002-12-02 AT AT02792858T patent/ATE305655T1/de active
- 2002-12-02 DE DE50204426T patent/DE50204426D1/de not_active Expired - Lifetime
- 2002-12-02 EP EP02792858A patent/EP1495464B1/de not_active Expired - Lifetime
-
2005
- 2005-10-20 HK HK05109316A patent/HK1077391A1/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
DE50204426D1 (de) | 2005-11-03 |
KR100892152B1 (ko) | 2009-04-10 |
CA2482427C (en) | 2010-01-19 |
CA2482427A1 (en) | 2003-10-23 |
JP2005527851A (ja) | 2005-09-15 |
CN1258172C (zh) | 2006-05-31 |
ATE305655T1 (de) | 2005-10-15 |
KR20050007312A (ko) | 2005-01-17 |
HK1077391A1 (en) | 2006-02-10 |
WO2003088212A1 (de) | 2003-10-23 |
EP1495464A1 (de) | 2005-01-12 |
CN1625768A (zh) | 2005-06-08 |
JP4081447B2 (ja) | 2008-04-23 |
EP1495464B1 (de) | 2005-09-28 |
AU2002358578A1 (en) | 2003-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1495464B1 (de) | Vorrichtung und verfahren zum codieren eines zeitdiskreten audiosignals und vorrichtung und verfahren zum decodieren von codierten audiodaten | |
EP1502255B1 (de) | Vorrichtung und verfahren zum skalierbaren codieren und vorrichtung und verfahren zum skalierbaren decodieren eines audiosignales | |
DE10345995B4 (de) | Vorrichtung und Verfahren zum Verarbeiten eines Signals mit einer Sequenz von diskreten Werten | |
DE19811039B4 (de) | Verfahren und Vorrichtungen zum Codieren und Decodieren von Audiosignalen | |
EP1397799B1 (de) | Verfahren und vorrichtung zum verarbeiten von zeitdiskreten audio-abtastwerten | |
DE69737489T2 (de) | Formung des erkennbaren Rauschsignals in der Zeitdomäne mittels LPC-Voraussage im Frequenzraum | |
EP1609084B1 (de) | Vorrichtung und verfahren zum umsetzen in eine transformierte darstellung oder zum inversen umsetzen der transformierten darstellung | |
DE69731677T2 (de) | Verbessertes Kombinationsstereokodierverfahren mit zeitlicher Hüllkurvenformgebung | |
DE60310716T2 (de) | System für die audiokodierung mit füllung von spektralen lücken | |
EP2022043B1 (de) | Informationssignalcodierung | |
DE60110679T3 (de) | Perzeptuelle Kodierung von Audiosignalen unter Verwendung von getrennter Reduzierung von Irrelevanz und Redundanz | |
DE19747132C2 (de) | Verfahren und Vorrichtungen zum Codieren von Audiosignalen sowie Verfahren und Vorrichtungen zum Decodieren eines Bitstroms | |
DE60014363T2 (de) | Verringerung der von der quantisierung verursachten datenblock-diskontinuitäten in einem audio-kodierer | |
EP1654674B1 (de) | Vorrichtung und verfahren zum verarbeiten von wenigstens zwei eingangswerten | |
DE102006051673A1 (de) | Vorrichtung und Verfahren zum Nachbearbeiten von Spektralwerten und Encodierer und Decodierer für Audiosignale | |
EP2034473B1 (de) | Vorrichtung und Verfahren zum Ermitteln eines Schaetzwerts | |
DE102020210917B4 (de) | Verbesserter M/S-Stereo-Codierer und -Decodierer | |
DE10065363B4 (de) | Vorrichtung und Verfahren zum Decodieren eines codierten Datensignals |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8130 | Withdrawal |