DE202004002264U1 - Audiocodierung - Google Patents
Audiocodierung Download PDFInfo
- Publication number
- DE202004002264U1 DE202004002264U1 DE200420002264 DE202004002264U DE202004002264U1 DE 202004002264 U1 DE202004002264 U1 DE 202004002264U1 DE 200420002264 DE200420002264 DE 200420002264 DE 202004002264 U DE202004002264 U DE 202004002264U DE 202004002264 U1 DE202004002264 U1 DE 202004002264U1
- Authority
- DE
- Germany
- Prior art keywords
- audio
- parameterization
- version
- block
- values
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 230000005236 sound signal Effects 0.000 claims abstract description 49
- 238000013139 quantization Methods 0.000 claims description 60
- 230000000873 masking effect Effects 0.000 claims description 24
- 238000012546 transfer Methods 0.000 claims description 24
- 238000001914 filtration Methods 0.000 claims description 16
- 238000000034 method Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 5
- 238000010348 incorporation Methods 0.000 claims 1
- 238000011045 prefiltration Methods 0.000 description 47
- 230000006870 function Effects 0.000 description 34
- 238000007906 compression Methods 0.000 description 27
- 230000006835 compression Effects 0.000 description 25
- 230000009467 reduction Effects 0.000 description 20
- 230000008859 change Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 11
- 238000005070 sampling Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 8
- 238000012544 monitoring process Methods 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 5
- 230000003321 amplification Effects 0.000 description 5
- 238000003199 nucleic acid amplification method Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 238000001228 spectrum Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012432 intermediate storage Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000036962 time dependent Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000005311 autocorrelation function Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000006735 deficit Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000011435 rock Substances 0.000 description 1
- 239000000779 smoke Substances 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001960 triggered effect Effects 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/04—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 predictive techniques
- G10L19/26—Pre-filtering or post-filtering
- G10L19/265—Pre-filtering, e.g. high frequency emphasis prior to encoding
-
- 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/04—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 predictive techniques
- G10L19/26—Pre-filtering or post-filtering
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Vorrichtung zum Codieren eines Audiosignals einer Folge von Audiowerten in ein codiertes Signal, mit einer Einrichtung zum Ermitteln einer ersten Mithörschwelle für einen ersten Block von Audiowerten der Folge von Audiowerten und einer zweiten Mithörschwelle für einen zweiten Block von Audiowerten der Folge von Audiowerten;
einer Einrichtung (24) zum Berechnen einer Version einer ersten Parametrisierung eines parametrisierbaren Filters (30), so daß dessen Übertragungsfunktion in etwa dem Inversen des Betrags der ersten Mithörschwelle entspricht, und einer Version einer zweiten Parametrisierung des parametrisierbaren Filters, so daß dessen Übertragungsfunktion in etwa dem Inversen des Betrags der zweiten Mithörschwelle entspricht;
einer Einrichtung zum Filtern eines vorbestimmten Blocks von Audiowerten der Folge von Audiowerten mit dem parametrisierbaren Filter unter Verwendung einer vorbestimmten Parametrisierung, die in vorbestimmter Weise von der Version der zweiten Parametrisierung abhängt, um einen zu dem vorbestimmten Block korrespondierenden Block von gefilterten Audiowerten zu erhalten;
einer Einrichtung zum Quantisieren der...
einer Einrichtung (24) zum Berechnen einer Version einer ersten Parametrisierung eines parametrisierbaren Filters (30), so daß dessen Übertragungsfunktion in etwa dem Inversen des Betrags der ersten Mithörschwelle entspricht, und einer Version einer zweiten Parametrisierung des parametrisierbaren Filters, so daß dessen Übertragungsfunktion in etwa dem Inversen des Betrags der zweiten Mithörschwelle entspricht;
einer Einrichtung zum Filtern eines vorbestimmten Blocks von Audiowerten der Folge von Audiowerten mit dem parametrisierbaren Filter unter Verwendung einer vorbestimmten Parametrisierung, die in vorbestimmter Weise von der Version der zweiten Parametrisierung abhängt, um einen zu dem vorbestimmten Block korrespondierenden Block von gefilterten Audiowerten zu erhalten;
einer Einrichtung zum Quantisieren der...
Description
- Die vorliegende Erfindung bezieht sich auf Audiocodierer bzw. -decodierer bzw. die Audiocodierung im allgemeinen und insbesondere auf Audicodierungen, die eine Codierung von Audiosignalen mit einer kurzen Verzögerungszeit ermöglichen.
- Das derzeit bekannteste Audiokompressionsverfahren ist das MPEG-1 Layer III. Bei diesem Kompressionsverfahren werden die Abtast- bzw. Audiowerte eines Audiosignals verlustbehaftet in ein codiertes Signal codiert. Anders ausgedrückt werden bei der Kompression Irrelevanz und Redundanz des ursprünglichen Audiosignals reduziert bzw. idealer Weise entfernt. Um dies zu erzielen, werden durch ein psychoakustisches Modell simultane und zeitliche Maskierungen erkannt, d.h. es wird eine sich zeitlich ändernde, vom Audiosignal abhängige Maskierungsschwelle berechnet bzw. bestimmt, die angibt, ab welcher Lautstärke Töne einer bestimmten Frequenz für das menschliche Gehör erst wahrnehmbar sind. Diese Information wird wiederum zur Codierung des Signals verwendet, indem die Spektralwerte des Audiosignals abhängig von der Maskierungsschwelle genauer, weniger genau oder gar nicht quantisiert und in das codierte Signal eingebunden werden.
- Audiokompressionsverfahren, wie das MP3-Format, erfahren dann eine Grenze in ihrer Anwendbarkeit, wenn es darum geht, Audiodaten über einen bitratenbegrenzten Übertragungskanal einerseits komprimiert, andererseits aber mit möglichst geringer Verzögerungszeit zu übertragen. Bei einigen Anwendungen spielt die Verzögerungszeit keine Rolle, wie z.B. bei der Archivierung von Audioinformationen. Audiocoder mit niedriger Verzögerung, manchmal auch „Ultra Low Delay Coder" genannt, sind jedoch dort notwendig, wo es um zeitkritische Übertragungen von Audiosignalen geht, wie z.B. beim Tele-Conferencing, bei drahtlosen Lautsprechern oder Mikrophonen. Für diese Anwendungsgebiete wird in dem Artikel von Schuller G. usw. „Perceptual Audio Coding using Adaptive Pre- and Post-Filters and Lossless Compression", IEEE Transactions on Speech and Audio Processing, Bd. 10, Nr. 6, September 2002, S. 379 – 390, eine Audiocodierung vorgeschlagen, bei der die Irrelevanzreduktion und die Redundanzreduktion nicht basierend auf einer einzigen Transformation, sondern auf zwei getrennten Transformationen durchgeführt werden.
- Das Prinzip wird im folgenden Bezug nehmend auf die
12 und13 erläutert. Die Codierung geht von einem Audiosignal902 aus, das bereits abgetastet worden ist und deshalb bereits als eine Folge904 von Audio- bzw. Abtastwerten906 vorliegt, wobei durch einen Pfeil908 die zeitliche Reihenfolge der Audiowerte906 angedeutet ist. Für aufeinanderfolgende Blöcke von Audiowerten906 , die mit aufsteigender Nummerierung mit „Block#" gekennzeichnet sind, wird mittels eines psychoakustischen Modells eine Mithörschwelle berechnet.13 zeigt beispielsweise ein Diagramm, bei dem über die Frequenz f mit der Kurve a das Spektrum eines Signalblocks aus128 Audiowerten906 und bei b die Maskierungsschwelle, wie sie durch ein psychoakustisches Modell berechnet worden ist, in logarithmischen Einheiten aufgetragen ist. Die Maskierungsschwelle zeigt, wie bereits erwähnt, an, bis zu welcher Intensität Frequenzen für das menschliche Ohr unhörbar sind, nämlich alle Töne unterhalb der Maskierungsschwelle b. Basierend auf den für jeden Block berechneten Mithörschwellen wird nun eine Irrelevanzreduktion durch Steuerung eines parametrisierbaren Filters gefolgt von einem Quantisierer erzielt. Für ein parametrisierbares Filter wird eine Parametrisierung derart berechnet, daß die Frequenzantwort desselben dem Inversen des Betrags der Maskierungsschwelle entspricht. Diese Parametrisierung ist in12 durch x#(i) angedeutet. - Nach der Filterung der Audiowerte
906 erfolgt eine Quantisierung mit konstanter Schrittweite, beispielsweise eine Rundungsoperation auf die nächste Ganzzahl. Das hierdurch hervorgerufene Quantisierungsrauschen ist weißes Rauschen. Decoderseitig wird das gefilterte Signal wieder mit einem parametrisierbaren Filter „rücktransformiert", dessen Übertragungsfunktion auf den Betrag der Maskierungsschwelle selbst eingestellt wird. Hierdurch wird nicht nur das gefilterte Signal wieder dekodiert sondern auch das Quantisierungsrauschen decoderseitig an die Form der Maskierungsschwelle angepaßt. Damit das Quantisierungsrauschen möglichst genau der Maskierungsschwelle entspricht, wird codiererseitig zu jedem Parametersatz bzw. zu jeder Parametrisierung ferner ein Verstärkungswert a# berechnet, der vor der Quantisierung auf das gefilterte Signal angewendet wird. Damit decodiererseitig die Rücktransformation durchgeführt werden kann, werden der Verstärkungswert a und die Parametrisierung x als Seiteninformationen910 neben den eigentlichen Hauptdaten, nämlich den quantisierten, gefilterten Audiowerten912 , zum Codierer übertragen. Zur Redundanzreduktion914 werden diese Daten, d.h. Seiteninformationen910 und Hauptdaten912 , noch einer verlustlosen Kompression, nämlich einer Entropiecodierung, unterzogen, wodurch das codierte Signal erhalten wird. - Obiger Artikel schlägt als Blockgröße eine Größe von 128 Abtastwerten
906 vor. Hierdurch wird eine relativ kurze Verzögerung von 8 ms bei 32 kHz Abtastrate ermöglicht. Bezüglich der detaillierten Implementierung wird in dem Artikel noch beschrieben, daß zur Effizienzsteigerung der Seiteninformationscodierung die Seiteninformationen, nämlich die Koeffizienten x# und a# nur dann übertragen werden, wenn genügend Änderung im Vergleich zu einem vorher übertragenen Parametersatz vorhanden ist, d.h. wenn die Änderung einen bestimmten Schwellwert überschreitet. Zudem wird beschrieben, daß die Implementierung vorzugsweise so vorgenommen wird, daß ein aktueller Parametersatz nicht unmittelbar auf alle zu dem jeweiligen Block gehörenden Abtastwerte angewendet wird, sondern daß eine lineare Interpolation der Filterkoeffizienten x# verwendet wird, um hörbare Artefakte zu vermeiden. Um die lineare Interpolation der Filterkoeffizienten durchzuführen, wird eine Lattice-Struktur für das Filter vorgeschlagen, um das Auftreten von Instabilitäten zu verhindern. Für den Fall, daß ein codiertes Signal mit einer gesteuerten Bitrate erwünscht ist, schlägt der Artikel noch vor, das gefilterte und mit dem zeitabhängigen Verstärkungsfaktor a skalierte Signal selektiv noch mit einem Faktor ungleich 1 zu multiplizieren bzw. zu schwächen, so daß zwar hörbare Störungen entstehen, aber die Bitrate an aufwendig zu codierenden Stellen des Audiosignals reduziert werden kann. - Obwohl das in dem oben zitierten Artikel beschriebene Audiocodierungsschema die Verzögerungszeit für viele Anwendungen bereits ausreichend reduziert, besteht ein Problem bei obigem Schema darin, daß aufgrund der Notwendigkeit, die Maskierungsschwelle bzw. die Übertragungsfunktion des codiererseitigen Filters, im folgenden als Prefilter bezeichnet, übertragen zu müssen, der Übertragungskanal relativ hoch belastet wird, obgleich ja die Filterkoeffizienten nur bei Überschreiten einer vorbestimmten Schwelle übertragen werden.
- Ein weiterer Nachteil obigen Codierschemas besteht darin, daß aufgrund der Tatsache, daß die Maskierungsschwelle bzw. das Inverse hiervon durch den zu übertragenden Parametersatz x# decodierseitig zur Verfügung gestellt werden muß, ein Kompromiß zwischen einerseits einer möglichst niedrigen Bitrate bzw. einem hohen Kompressionsverhältnis und andererseits einer möglichst genauen Approximation bzw. Parametrisierung der Maskierungsschwelle bzw. dem Inversen hiervon zu treffen ist. Unvermeidlich ist es deshalb, daß das durch obiges Audiocodierschema an die Maskierungsschwelle angepaßte Quantisierungsrauschen an einigen Frequenzbereichen die Maskierungsschwelle überschreitet und deshalb für den Hörer zu hörbaren Audiostörungen führt.
13 zeigt beispielsweise mit der Kurve c die parametrisierte Frequenzantwort des decoderseitigen parametrisierbaren Filters . Wie es zu sehen ist, gibt es Bereiche, an denen die Übertragungsfunktion des decoderseitigen Filters, im folgenden auch als Postfilter bezeichnet, die Maskierungsschwelle b überschreitet. Das Problem vergrößert sich nun dadurch, daß die Parametrisierung nur intermittierend bei genügend Änderung zwischen den Parametrisierungen übertragen und dazwischen interpoliert wird. Eine Interpolation der Filterkoeffizienten x#, wie in dem Artikel vorgeschlagen, allein führt bei Konstanthalten des Verstärkungswertes a# von Stützstelle zu Stützstelle bzw. von neuer Parametrisierung zu neuer Parametrisierung zu hörbaren Störungen. Auch wenn die in dem Artikel vorgeschlagene Interpolation auch auf den Seiteninformationswert a#, d.h. die übertragenen Verstärkungswerte, angewendet wird, können in dem decodiererseitig ankommenden Audiosignal hörbare Audioartefakte verbleiben. - Ein weiteres Problem bei dem Audiocodierschema nach
12 bzw.13 besteht darin, daß das gefilterte Signal aufgrund der frequenzselektiven Filterung eine nicht vorhersehbare Form annehmen kann, bei der sich insbesondere aufgrund einer zufälligen Überlagerung vieler einzelner Oberwellen ein einzelner oder einzelne Audiowerte des codierten Signals zu sehr hohen Werten aufsummieren, die aufgrund ihres seltenen Auftretens wiederum bei der anschließenden Redundanzreduktion zu einem schlechteren Kompressionsverhältnis führen. - Die Aufgabe der vorliegenden Erfindung besteht darin, ein effektiveres Audiocodierschema zu schaffen.
- Diese Aufgabe wird durch eine Vorrichtung gemäß Anspruch 1 oder 8 gelöst.
- Eine erfindungsgemäße Codierung eines Audiosignals einer Folge von Audiowerten in ein codiertes Signal umfaßt das Ermitteln einer ersten Mithörschwelle für einen ersten Block von Audiowerten der Folge von Audiowerten und einer zweiten Mithörschwelle für einen zweiten Block von Audiowerten der Folge von Audiowerten; das Berechnen einer Version einer ersten Parametrisierung eines parametrisierbaren Filters, so daß dessen Übertragungsfunktion in etwa dem Inversen des Betrags der ersten Mithörschwelle entspricht, und einer Version einer zweiten Parametrisierung des parametrisierbaren Filters, so daß dessen Übertragungsfunktion in etwa dem Inversen des Betrags der zweiten Mithörschwelle entspricht; das Filtern eines vorbestimmten Blocks von Audiowerten der Folge von Audiowerten mit dem parametrisierbaren Filter unter Verwendung einer vorbestimmten Parametrisierung, die in vorbestimmter Weise von der Version der zweiten Parametrisierung abhängt, um einen zu dem vorbestimmten Block korrespondierenden Block von gefilterten Audiowerten zu erhalten; das Quantisieren der gefilterten Audiowerte, um einen Block von quantisierten, gefilterten Audiowerten zu erhalten; die Bildung einer Kombination der Version der ersten Parametrisierung und der Version der zweiten Parametrisierung, die zumindest eine Differenz zwischen der Version der ersten Parametrisierung und der Version der zweiten Parametrisierung umfaßt; und das Einbinden von Informationen, aus denen die quantifizierten, gefilterten Audiowerte und eine Version der ersten Parametrisierung herleitbar sind, und die die Kombination umfassen, in das codierte Signal.
- Der Kerngedanke der vorliegenden Erfindung besteht darin, daß durch die Übertragung von Differenzen von aufeinanderfolgenden Parametrisierungen ein höheres Kompressionsverhältnis erzielt werden kann.
- Findet die Übertragung der Parametrisierungen zudem nur dann statt, wenn zwischen denselben ein ausreichender Unterschied besteht, besteht die Erkenntnis der vorliegenden Erfindung insbesondere ebenfalls darin, daß auch in diesem Fall, obwohl die Parametrisierungsdifferenzen das Mindestunterscheidungsmaß nicht unterschreiten, dennoch die Übertragung von Differenzen zwischen zwei Parametrisierungen anstelle der einer Parametrisierung eine Kompressionserhöhung liefert, die den zusätzlichen Aufwand der Differenzbildung codiererseitig und Summenbildung decoderseitig mehr als aufwiegt.
- Gemäß einem Ausführungsbeispiel der vorliegenden Erfindung werden die reinen Differenzen zwischen aufeinanderfolgenden Parametrisierungen übertragen, während gemäß einem weiteren Ausführungsbeispiel von diesen Differenzen auch noch die Mindestschwelle abgezogen wird, ab der Parametrisierungen neuer Stützstellen erst übertragen werden.
- Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:
-
1 ein Blockschaltbild eines Audiocodierers gemäß einem Ausführungsbeispiel der vorliegenden Erfindung; -
2 ein Flußdiagramm zur Veranschaulichung der Arbeitsweise des Audiocodierers von1 am Dateneingang; -
3 ein Flußdiagramm zur Veranschaulichung der Arbeitsweise des Audiocodierers von1 im Hinblick auf die Auswertung des eingehenden Audiosignals durch ein psychoakustisches Modell; -
4 ein Flußdiagramm zur Veranschaulichung der Arbeitsweise des Audiocodierers von1 im Hinblick auf die Anwendung der durch das psychoakustische Modell erhaltenen Parameter auf das eingehende Audiosignal; -
5a ein schematisches Diagramm zur Veranschaulichung des eingehenden Audiosignals, der Folge von Audiowerten, aus der dasselbe besteht, und der Arbeitsschritte von4 in Relation zu den Audiowerten; -
5b ein schematisches Diagramm zur Veranschaulichung des Aufbaus des codierten Signals; -
6 ein Flußdiagramm zur Veranschaulichung der Arbeitsweise des Audiocodierers von1 im Hinblick auf die Endverarbeitung bis zum codierten Signal; -
7a ein Diagramm in dem ein Ausführungsbeispiel für eine Quantisierungsstufenfunktion gezeigt ist; -
7a ein Diagramm in dem ein weiteres Ausführungsbeispiel für eine Quantisierungsstufenfunktion gezeigt ist; -
8 ein Blockschaltbild eines Audiodecodierers, der zur Decodierung eines durch den Audiocodierer von1 codierten Audiosignals in der Lage ist, gemäß einem Ausführungsbeispiel der vorliegenden Erfindung; -
9 ein Flußdiagramm zur Veranschaulichung der Arbeitsweise des Decodierers von8 am Dateneingang; -
10 ein Flußdiagramm zur Veranschaulichung der Arbeitsweise des Decodierers von8 im Hinblick auf die Zwischenspeicherung der vordecodierten, quantisierten, gefilterten Audiodaten und der Verarbeitung der Audioblöcke ohne zugehörige Seiteninformationen; -
11 ein Flußdiagramm zur Veranschaulichung der Arbeitsweise des Decodierers von8 im Hinblick auf die eigentliche Rückfilterung; -
12 ein schematisches Diagramm zur Veranschaulichung eines herkömmlichen Audiocodierschemas mit kurzer Verzögerungszeit; und -
13 ein Diagramm, in dem exemplarisch ein Spektrum eines Audiosignals, eine Mithörschwelle desselben und die Übertragungsfunktion des Postfilters im Decodierer gezeigt sind. -
1 zeigt einen Audiocodierer gemäß einem Ausführungsbeispiel der vorliegenden Erfindung. Der Audiocodierer, der allgemein mit10 angezeigt ist, umfaßt zunächst einen Dateneingang12 , an dem derselbe das zu codierende Audiosignal empfängt, das, wie es später Bezug nehmend auf5a noch näher erläutert werden wird, aus einer Folge von Audiowerten bzw. Abtastwerten besteht, sowie einen Datenausgang, an dem das codierte Signal ausgegeben wird, dessen Informationsinhalt Bezug nehmend auf5b näher erörtert wird. - Der Audiocodierer
10 von1 gliedert sich in einen Irrelevanzreduktionsteil16 und einen Redundanzreduktionsteil18 . Der Irrelevanzreduktionsteil16 umfaßt eine Einrichtung20 zum Ermitteln einer Mithörschwelle, eine Einrichtung22 zur Berechnung eines Verstärkungswertes, eine Einrichtung24 zur Berechnung einer Parametrisierung, eine Stützstellenvergleichseinrichtung26 , einen Quantisierer28 und ein parametrisierbares Prefilter30 sowie einen Eingangs-FIFO- (first-in-first-out) Puffer32 . Der Redundanzreduktionsteil18 umfaßt einen Komprimierer34 , eine Bitratensteuerung36 , einen Eingangs-Speicher38 und einen Multiplizierer40 . - Irrelevanzreduktionsteil
16 und Redundanzreduktionsteil18 sind seriell in dieser Reihenfolge zwischen Dateneingang12 und Datenausgang14 geschaltet. Insbesondere ist der Dateneingang12 mit einem Dateneingang der Einrichtung20 zum Ermitteln einer Mithörschwelle und einem Dateneingang des Eingangspuffers32 verbunden. Ein Datenausgang der Einrichtung20 zum Ermitteln einer Mithörschwelle ist mit einem Eingang der Einrichtung24 zur Berechnung einer Parametrisierung sowie mit einem Dateneingang der Einrichtung22 zur Berechnung eines Verstärkungswertes verbunden, um an dieselben eine ermittelte Mithörschwelle weiterzuleiten. Die Einrichtungen22 und24 berechnen basierend auf der Mithörschwelle eine Parametrisierung bzw. einen Verstärkungswert und sind mit der Stützstellenvergleichseinrichtung26 verbunden, um an dieselbe diese Ergebnisse weiterzuleiten. Die Stützstellenvergleichseinrichtung26 leitet je nach einem Vergleichsergebnis, wie es im folgenden noch erörtert werden wird, die von den Einrichtungen22 und24 berechneten Ergebnisse als Eingangsparameter bzw. Parametrisierung an das parametrisierbare Prefilter30 weiter. Das parametrisierbare Prefilter30 ist zwischen einen Datenausgang des Eingangspuffers32 und einen Dateneingang des Quantisierers28 geschaltet. Der Quantisierer28 leitet an den Redundanzreduktionsteil18 quantisierte, gefilterte Audiowerte weiter, und zwar genau genommen an den Dateneingang des Eingangsspeichers38 . Die Stützstellenvergleichseinrichtung26 leitet an den Redundanzreduktionsteil18 Informationen weiter, aus denen die an das parametrisierbare Prefilter30 weitergeleiteten Eingangsparameter herleitbar sind, und zwar genau genommen an einen Dateneingang des Komprimierers34 . Der Komprimierer34 empfängt ferner die quantisierten, gefilterten Audiowerte aus dem Eingangsspeicher38 , wobei jedoch zwischen den Datenausgang des Puffers38 und den Komprimierer34 der Multiplizierer40 geschaltet ist, um die quantisierten, gefilterten Audiowerte mit einem Multiplikator zu multiplizieren, der von der Bitratensteuerung36 eingestellt wird. Die Bitratensteuerung36 ist zwischen einen Datenausgang des Komprimierers34 und den Datenausgang14 des Audiocodierers10 geschaltet, um den Multiplikator für den Multiplizierer40 geeignet zu bestimmen. Der Multiplizierer40 kann wahlweise das Multiplikationsergebnis an den Eingang des Quantisierers28 weiterleiten. - Nachdem im Vorhergehenden der Aufbau des Audiocodierers von
1 beschrieben worden ist, wird im folgenden Bezug nehmend auf die2 –7b dessen Funktionsweise beschrieben. - Wie es
2 zu entnehmen ist, ist das Audiosignal, wenn es den Dateneingang12 erreicht, bereits durch Audiosignalabtastung50 aus einem analogen Audiosignal erhalten worden. Die Audiosignalabtastung wird mit einer vorbestimmten Abtastfrequenz durchgeführt, die üblicherweise zwischen 32 – 48 kHz liegt. Am Dateneingang12 liegt folglich ein Audiosignal an, das aus einer Folge von Abtast- bzw. Audiowerten besteht. Obwohl, wie es aus der folgenden Beschreibung noch deutlich werden wird, die Codierung des Audiosignals nicht blockbasiert stattfindet, werden die Audiowerte am Dateneingang12 zunächst in einem Schritt52 zu Audioblöcken zusammengefaßt. Die Zusammenfassung zur Audioblökken geschieht, wie es aus folgender Beschreibung deutlich wird, lediglich zu Zwecken der Bestimmung der Mithörschwelle und findet in einer Eingangsstufe der Einrichtung20 zum Ermitteln einer Mithörschwelle statt. Bei dem vorliegenden Ausführungsbeispiel wird exemplarisch davon ausgegangen, daß jeweils128 aufeinanderfolgende Audiowerte zu Audioblöcken zusammengefaßt werden, und daß die Zusammenfassung derart stattfindet, daß aufeinanderfolgende Audioblöcke sich einerseits nicht überlappen und andererseits unmittelbar benachbart zueinander sind. Dies sei anhand von5a noch einmal kurz exemplarisch erläutert. -
5a zeigt mit54 die Folge von Abtastwerten an, wobei jeder Abtastwert durch ein Rechteck56 veranschaulicht ist. Die Abtastwerte sind zu Zwecken der Veranschaulichung numeriert, wobei aus Übersichtlichkeitsgründen wiederum nur einige der Abtastwerte der Folge54 gezeigt sind. Wie es durch geschweifte Klammern oberhalb der Folge54 gezeigt ist, sind gemäß vorliegendem Ausführungsbeispiel jeweils 128 aufeinanderfolgende Abtastwerte zu einem Block zusammengefaßt, wobei die unmittelbar darauffolgenden 128 Abtastwerte den nächsten Block bilden. Lediglich vorsichtshalber wird darauf hingewiesen, daß die Zusammenfassung zu Blöcken auch anders vorgenommen werden könnte, beispielsweise durch überlappende Blöcke oder beabstandete Blöcke und Blöcke mit einer anderen Blockgröße, obwohl die Blockgröße von 128 wiederum bevorzugt ist, da sie einen guten Kompromiß zwischen einerseits einer hohen Audioqualität und andererseits einer möglichst niedrigen Verzögerungszeit liefert. - Während die in dem Schritt
52 in der Einrichtung20 zusammengefaßten Audioblöcke in der Einrichtung20 zum Ermitteln einer Mithörschwelle blockweise verarbeitet werden, werden in dem Eingangspuffer32 die eingehenden Audiowerte solange gepuffert bzw. zwischengespeichert54 , bis das parametrisierbare Prefilter30 von der Stützstellenvergleichseinrichtung26 Eingangsparameter erhalten hat, um eine Prefilterung vorzunehmen, wie es im folgenden noch beschrieben wird. - Wie es
3 zu entnehmen ist, beginnt die Einrichtung20 zum Ermitteln einer Mithörschwelle ihre Bearbeitung unmittelbar, nachdem genügend Audiowerte am Dateneingang12 eingegangen sind, um einen Audioblock zu bilden bzw. den nächsten Audioblock zu bilden, was die Einrichtung20 durch eine Überprüfung in Schritt60 überwacht. Ist ein bearbeitbarer vollständiger Audioblock noch nicht vorhanden, wartet die Einrichtung20 . Ist ein vollständiger zu bearbeitender Audioblock vorhanden, so berechnet die Einrichtung20 zum Ermitteln einer Mithörschwelle in einem Schritt62 auf der Basis eines geeigneten psychoakustischen Modells in einem Schritt62 eine Mithörschwelle. Zur Veranschaulichung der Mithörschwelle wird wiederum auf12 und insbesondere die Kurve b verwiesen, die auf der Grundlage eines psychoakustischen Modells beispielsweise bezüglich eines aktuellen Audioblocks mit einem Spektrum a erhalten worden ist. Die Maskierungsschwelle, die in Schritt62 ermittelt wird, ist eine frequenzabhängige Funktion, die für aufeinanderfolgende Audioblöcke variieren kann, und auch von Audiosignal zu Audiosignal, wie z.B. von Rock- zu Klassikmusikstücken, deutlich variieren kann. Die Mithörschwelle gibt für jede Frequenz einen Schwellwert an, unterhalb dessen das menschliche Gehör Störungen nicht wahrnehmen kann. - In einem darauffolgenden Schritt
64 berechnen die Einrichtung24 und die Einrichtung22 aus der berechneten Mithörschwelle M(f) (wobei f die Frequenz angebe) einen Verstärkungswert a bzw. einen Parametersatz aus N Parametern x(i) (i = 1, ..., N). Die Parametrisierung x(i), die die Einrichtung24 in Schritt64 berechnet, ist für das parametrisierbare Prefilter30 vorgesehen, das beispielsweise in einer Adaptivfilterstruktur ausgeführt ist, wie sie bei der LPC-Codierung verwendet wird (LPC = linear predictive coding = lineare Prädiktionscodierung) ausgeführt. Seien beispielsweise s(n) mit n = 0, ... 127 die 128 Audiowerte des augenblicklichen Audioblocks und s'(n) die sich ergebenden gefilterten128 Audiowerte, dann ist das Filter beispielsweise derart ausgeführt, daß folgende Gleichung erfüllt ist: wobei K die Filterordnung ist und a t / k mit k = 1, ..., K die Filterkoeffizienten sind und der Index t veranschaulichen soll, daß sich die Filterkoeffizienten bei aufeinanderfolgenden Audioblöcken ändern. Die Einrichtung24 berechnet nun die Parametrisierung a t / k derart, daß die Übertragungsfunktion H(f) des parametrisierbaren Prefilters30 in etwa gleich dem Inversen des Betrags der Maskierungsschwelle M(f) ist, d.h. so daß gilt, wobei die Abhängigkeit von t wiederum veranschaulichen soll, daß für verschiedene Audioblöcke sich die Maskierungsschwelle M(f) ändert. Bei Implementierung des Prefilters30 als das oben erläuterte adaptive Filter werden die Filterkoeffizienten a t / k folgendermaßen erhalten: die inverse diskrete Fourier-Transformation von |M(f,t)|² über der Frequenz für den Block zum Zeitpunkt t ergibt die Zielautokorrelationsfunktion r t / mm(i). Dann werden die a t / k durch Lösen des linearen Gleichungssystems erhalten: - Damit aber bei der noch im folgenden näher beschriebenen linearen Interpolation zwischen den Parametrisierungen keine Instabilitäten auftreten, wird vorzugsweise für das Filter
30 eine Lattice-Struktur verwendet, wobei die Filterkoeffizienten von der Lattice-Struktur in Reflektionskoeffizienten umparametrisiert werden. Bezüglich näherer Details im Hinblick auf die Ausgestaltung des Prefilters, die Berechnung der Koeffizienten und die Umparametrisierung wird auf den in der Beschreibungseinleitung erwähnten Artikel von Schuller usw. und insbesondere auf Seite 381, Gliederungspunkt III, verwiesen, welcher hiermit diesbezüglich unter Bezugnahme aufgenommen wird. - Während folglich die Einrichtung
24 eine Parametrisierung für das parametrisierbare Prefilter30 derart berechnet, daß dessen Übertragungsfunktion gleich dem Inversen der Maskierungsschwelle ist, berechnet die Einrichtung22 basierend auf der Mithörschwelle eine Rauschleistungsgrenze, nämlich eine Grenze, die angibt, welche Rauschleistung der Quantisierer28 in das durch das Prefilter30 gefilterte Audiosignal einführen darf, damit das Quantisierungsrauschen nach der Rück- bzw. Postfilterung auf Decoderseite unterhalb der Mithörschwelle M(f) oder genau auf derselben liegt. Die Einrichtung22 berechnet diese Rauschleistungsgrenze als die Fläche unterhalb des Betragsquadrats der Mithörschwelle M, d.h. als Σ|M(f)|². Den Verstärkungswert a berechnet die Einrichtung22 aus der Rauschleistungsgrenze, indem sie die Wurzel aus dem Bruch von Quantisierungsrauschleistung durch Rauschleistungsgrenze berechnet. Das Quantisierungsrauschen ist das durch den Quantisierer28 hervorgerufene Rauschen. Das durch den Quantisierer28 hervorgerufene Rauschen ist, wie es noch beschrieben werden wird, weißes Rauschen und somit frequenzunabhängig. Die Quantisierungsrauschleistung ist die Leistung des Quantisierungsrauschens. - Wie es aus der vorhergehenden Beschreibung deutlich wurde, berechnet die Einrichtung
22 neben dem Verstärkungswert a auch die Rauschleistungsgrenze. Obwohl es möglich ist, daß die Stützstellenvergleichseinrichtung26 aus dem von der Einrichtung22 erhaltenen Verstärkungswert a erneut die Rauschleistungsgrenze berechnet, ist es ferner möglich, daß die Einrichtung22 neben dem Verstärkungswert a der Stützstellenvergleichseinrichtung26 auch gleich die ermittelte Rauschleistungsgrenze übermittelt. - Nach der Berechnung des Verstärkungswertes sowie der Parametrisierung überprüft daraufhin die Stützstellenvergleichseinrichtung
26 in einem Schritt66 , ob sich die soeben berechnete Parametrisierung um mehr als eine vorbestimmte Schwelle von der aktuellen, zuletzt an das parametrisierbare Prefilter weitergeleiteten Parametrisierung unterscheidet. Ergibt die Überprüfung in Schritt66 , daß sich die soeben berechnete Parametrisierung um mehr als die vorbestimmte Schwelle von der aktuellen unterscheidet, so werden die soeben berechneten Filterkoeffizienten und der soeben berechnete Verstärkungswert bzw. die Rauschleistungsgrenze in der Stützstellenvergleichseinrichtung26 für eine noch zu erörternde Interpolation zwischengespeichert und die Stützstellenvergleichseinrichtung26 übergibt in einem Schritt68 die soeben berechneten Filterkoeffizienten und in einem Schritt70 den soeben berechneten Verstärkungswert an das Prefilter30 . Ist dies jedoch nicht der Fall, und die soeben berechnete Parametrisierung unterscheidet sich nicht um mehr als die vorbestimmte Schwelle von der aktuellen, übergibt die Stützstellenvergleichseinrichtung (26 ) an das Prefilter30 in Schritt72 an Stelle der soeben berechneten Parametrisierung nur die aktuelle Stützstellenparametrisierung, d.h. diejenige Parametrisierung, die das letzte Mal im Schritt66 zu einem positiven Ergebnis führte, sich also um mehr als eine vorbestimmte Schwelle von einer vorhergehenden Stützstellen-Parametrisierung unterschied. Nach den Schritten70 und72 kehrt der Prozeß von3 zur Bearbeitung des nächsten Audioblocks, d.h. zur Abfrage60 , zurück. - In dem Fall, daß sich die soeben berechnete Parametrisierung nicht von der aktuellen Stützstellen-Parametrisierung unterschied, und demzufolge das Prefilter
30 in Schritt72 wieder die bereits zuvor für zumindest den letzten Audioblock erhaltene Stützstellenparametrisierung erhält, wendet das Prefilter30 diese Stützstellenparametrisierung auf alle Abtastwerte dieses sich in dem FIFO32 befindlichen Audioblocks an, wie es im folgenden noch näher beschrieben wird, wodurch dieser aktuelle Block aus dem FIFO32 entnommen wird und der Quantisierer28 einen sich ergebenden Audioblock von pregefilterten Audiowerten erhält. -
4 stellt die Arbeitsweise des parametrisierbaren Prefilters30 näher für den Fall dar, daß dieselbe die soeben berechnete Parametrisierung und den soeben berechneten Verstärkungswert erhält, weil dieselben sich von der aktuellen Stützstellenparametrisierung ausreichend unterschieden. Wie es Bezug nehmend auf3 beschrieben worden ist, erfolgt also nicht zu jedem der aufeinanderfolgenden Audioblöcke eine Verarbeitung nach4 , sondern nur zu Audioblöcken, bei denen sich die zugehörige Parametrisierung ausreichend von der aktuellen Stützstellenparametrisierung unterschied. Die anderen Audioblöcke werden, wie soeben beschrieben, dadurch pregefiltert, daß die jeweils aktuelle Stützstellenparametrisierung und der zugehörige jeweils aktuelle Verstärkungswert auf alle Abtastwerte dieser Audioblöcke angewendet werden In einem Schritt80 überwacht nun das parametrisierbare Prefilter30 , ob eine Übergabe von soeben berechneten Filterkoeffizienten von der Stützstellenvergleichseinrichtung26 stattgefunden hat oder von älteren Stützstellenparametrisierungen. Das Prefilter30 führt die Überwachung80 solange durch, bis eine solche Übergabe stattgefunden hat. - Sobald eine solche Übergabe stattgefunden hat, beginnt das parametrisierbare Prefilter
30 mit der Bearbeitung des aktuellen Audioblocks von Audiowerten, der sich gerade in dem Zwischenspeicher32 befindet, also demjenigen, zu dem die Parametrisierung gerade berechnet worden ist. In5a ist beispielsweise veranschaulicht worden, daß alle Audiowerte56 vor dem Audiowert mit der Nummer 0 bereits verarbeitet worden sind und deshalb den Speicher32 bereits passiert haben. Die Verarbeitung des Blocks von Audiowerten vor dem Audiowert mit der Nummer 0 ist damals ausgelöst worden, weil die Parametrisierung, die für den Audioblock vor dem Block 0 berechnet worden ist, nämlich x0(i), sich um mehr als die vorbestimmte Schwelle von der zuvor zum Prefilter30 weitergeleiteten Stützstellen-Parametrisierung unterschied. Die Parametrisierung x0(i) ist also eine Stützstellenparametrisierung, wie sie in der vorliegenden Erfindung bezeichnet wird. Die Verarbeitung der Audiowerte in dem Audioblock vor dem Audiowert 0 wurde basierend auf dem Parametersatz a0, x0(i) durchgeführt. - In
5a wird davon ausgegangen, daß die Parametrisierung, die zu Block 0 mit den Audiowerten 0 – 127 berechnet worden ist, sich um weniger als die vorbestimmte Schwelle von der Parametrisierung x0(i) unterschied, die sich auf den Block davor bezog. Dieser Block 0 wurde deshalb ebenfalls bereits von dem Prefilter30 aus dem FIFO32 entnommen, hinsichtlich all seiner Abtastwerte 0-127 mittels der in Schritt72 zugeführten Parametrisierung x0(i) gleichermaßen verarbeitet, wie es durch den mit „direkte Anwendung" beschriebenen Pfeil81 angedeutet ist, und dann an den Quantisierer28 weitergegeben. - Die zu dem sich immer noch in dem FIFO
32 befindlichen Block 1 berechnete Parametrisierung unterschied sich jedoch nach dem exemplarischen Beispiel von5a demgegenüber um mehr als die vorbestimmte Schwelle von der Parametrisierung x0(i) und wurde deshalb in Schritt68 an das Prefilter30 als Parametrisierung x1(i) zusammen mit dem Verstärkungswert a1 (Schritt70 ) und gegebenenfalls der zugehörigen Rauschleistungsgrenze weitergeleitet, wobei die Indizes von a und x in5a ein Index für die Stützstellen sein sollen, wie sie bei der später zu erörternden Interpolation verwendet werden, die bezüglich der Abtastwerte 128-255 im Block 1 durchgeführt, durch einen Pfeil81 versinnbildlicht und durch die aus Schritt80 folgenden Schritte in4 verwirklicht wird. Mit Auftreten des Audioblocks mit Nummer 1 würde folglich die Bearbeitung bei Schritt80 beginnen. - Zur Zeit der Weiterleitung des Parametersatzes a1, x1 befinden sich im Speicher
32 folglich (zumindest) nur noch die Audiowerte 128 – 255, d.h. der aktuelle Audioblock nach dem zuletzt durch das Prefilter30 verarbeiteten Audioblock 0. - Nachdem nun die Übergabe von Stützstellenparametern x1(i) in Schritt
80 festgestellt worden ist, ermittelt das Prefilter30 in Schritt84 die zu dem Verstärkungswert a1 korrespondierende Rauschleistungsgrenze q1. Dies kann dadurch geschehen, daß die Stützstellenvergleichseinrich tung26 diesen Wert an das Prefilter30 weiterleitet, oder durch erneute Berechnung dieses Wertes durch das Prefilter30 , wie es im Vorhergehenden Bezug nehmend auf Schritt64 beschrieben worden ist. - Danach wird in einem Schritt
86 ein Index j auf einen Abtastwert initialisiert, um auf den ältesten in dem FIFO-Speicher32 verbliebenen Abtastwert bzw. den ersten Abtastwert des aktuellen Audioblocks „Block 1" zu zeigen, d.h. im vorliegenden Beispiel von5a den Abtastwert 128. In einem Schritt88 führt das parametrisierbare Prefilter eine Interpolation zwischen den Filterkoeffizienten x0 und x1 durch, wobei dabei die Parametrisierung x0 als Stützwert an der Stützstelle mit Audiowertnummer 127 des vorhergehenden Blocks 0 und die Parametrisierung x1 als Stützwert an der Stützstelle mit Audiowertnummer 255 des aktuellen Blocks 1 gilt. Diese Audiowertpositionen 127 und 255 werden im folgenden auch als Stützstelle 0 und Stützstelle 1 bezeichnet, wobei in5a die sich auf die Stützstellen beziehenden Stützstellenparametrisierungen durch die Pfeile90 und92 angedeutet sind. - Das parametrisierbare Prefilter
30 führt in dem Schritt88 die Interpolation der Filterkoeffizienten x0, x1 zwischen den beiden Stützstellen in Form einer linearen Interpolation durch, um den interpolierten Filterkoeffizienten an der Abtastposition j zu erhalten, d.h. x(tj)(i) mit i = 1...N. - Danach, nämlich in Schritt
90 , führt das parametrisierbare Prefilter30 eine Interpolation zwischen der Rauschleistungsgrenze q1 und q0 durch, um eine interpolierte Rauschleistungsgrenze an der Abtastposition j zu erhalten, d.h. q(tj) . - In einem Schritt
92 berechnet daraufhin das parametrisierbare Prefilter30 den Verstärkungswert für die Abtastposition j auf der Basis der interpolierten Rauschleistungsgrenze und der Quantisierungsrauschleistung sowie vorzugs weise auch den interpolierten Filterkoeffizienten, nämlich beispielsweise abhängig von Wurzel aus wobei hierzu auf die Ausführungen zu Schritt64 von3 verwiesen wird. - In einem Schritt
94 wendet daraufhin das parametrisierbare Prefilter30 den berechneten Verstärkungswert sowie die interpolierten Filterkoeffizienten auf den Abtastwert an der Abtastposition j an, um einen gefilterten Abtastwert für diese Abtastposition zu erhalten, nämlich s'(tj). - In einem Schritt
96 überprüft das parametrisierbare Prefilter30 daraufhin, ob die Abtastposition j die aktuelle Stützstelle, d.h. Stützstelle 1, erreicht hat, in dem Fall von5a die Abtastposition 255, d.h. den Abtastwert, für den die dem parametrisierbaren Prefilter30 übermittelte Parametrisierung plus Verstärkungswert unmittelbar, d.h. ohne Interpolation, gelten soll. Ist dies nicht der Fall, so erhöht bzw. inkrementiert das parametrisierbare Prefilter30 den Index j um 1, wobei die Schritte 88 – 96 erneut wiederholt werden. Fällt die Überprüfung im Schritt96 jedoch positiv aus, so wendet in Schritt100 das parametrisierbare Prefilter den von der Stützstellenvergleichseinrichtung26 zuletzt übermittelten Verstärkungswert und die von der Stützstellenvergleichseinrichtung26 zuletzt übermittelten Filterkoeffizienten unmittelbar ohne Interpolation auf den Abtastwert an der neuen Stützstelle an, woraufhin der aktuelle Block, d.h. in dem vorliegenden Fall der Block 1, abgearbeitet ist, und der Prozeß von neuem bei Schritt80 bezüglich des nachfolgenden zu verarbeitenden Blocks durchgeführt wird, der je nach dem, ob sich die Parametrisierung des nächsten Audioblocks Block 2 ausreichend von der Parametrisierung x1(i) unterscheidet, gegebenenfalls eben dieser nächste Audioblock Block 2 sein kann oder aber ein späterer Audioblock ist. - Bevor Bezug nehmend auf
5 das weitere Vorgehen bei der Verarbeitung der gefilterten Abtastwerte s' beschrieben wird, wird im folgenden Zweck und Hintergrund der Vorgehensweise nach den3 und4 beschrieben. Sinn und Zweck der Filterung besteht darin, das Audiosignal am Eingang12 mit einem adaptiven Filter zu filtern, dessen Übertragungsfunktion ständig möglichst optimal an das Inverse der Mithörschwelle angepaßt ist, die sich ja ebenfalls in der Zeit ändert. Der Grund hierfür besteht darin, daß decoderseitig die Rückfilterung durch ein adaptives Filter, dessen Übertragungsfunktion dementsprechend ständig an die Mithörschwelle angepaßt ist, das durch eine Quantisierung des gefilterten Audiosignals eingeführte weiße Quantisierungsrauschen, d.h. das in der Frequenz konstante Quantisierungsrauschen, formt, nämlich an die Form der Mithörschwelle anpaßt. - Die Anwendung des Verstärkungswertes in den Schritten
94 und100 im Prefilter30 besteht in einer Multiplikation des Audiosignals bzw. des gefilterten Audiosignals, d.h. der Abtastwerte s oder der gefilterten Abtastwerte s', mit dem Verstärkungsfaktor. Der Sinn besteht darin, hierdurch das Quantisierungsrauschen, das durch die anschließend näher beschriebene Quantisierung in das gefilterte Audiosignal eingefügt wird, und das durch die Rückfilterung decoderseitig an die Form der Mithörschwelle angepaßt wird, möglichst so hoch einzustellen, daß es die Mithörschwelle dennoch nicht überschreitet. Veranschaulichend läßt sich dies durch die Parseval'sche Formel, nach welcher das Betragsquadrat einer Funktion gleich dem Betragsquadrat der Fourier-Transformierten ist. Wenn also decoderseitig die Multiplikation des Audiosignals im Prefilter mit dem Verstärkungswert wieder rückgängig gemacht wird, indem das gefilterte Audiosignal mit dem Verstärkungswert dividiert wird, reduziert sich damit die Quantisierungsrauschleistung ebenfalls, nämlich um den Faktor a–2, wobei a der Verstärkungswert ist. Folglich kann durch die Anwendung des Verstärkungswertes in dem Prefilter30 die Quantisierungs rauschleistung optimal hoch eingestellt werden, was gleichbedeutend damit ist, daß die Quantisierungsschrittweite erhöht und damit die Anzahl der zu codierenden Quantisierungsstufen reduziert wird, was wiederum die Kompression in dem anschließenden Redundanzreduktionsteil erhöht. - Anders ausgedrückt, kann der Effekt des Prefilters als eine Normierung des Signals an seine Maskierungsschwelle angesehen werden, so daß der Pegel der Quantisierungsstörungen bzw. des Quantisierungsrauschens sowohl in Zeit auch Frequenz konstant gehalten werden kann. Da das Audiosignal im Zeitbereich vorliegt, kann deshalb die Quantisierung mit einer gleichmäßigen konstanten Quantisierung schrittweise durchgeführt werden, wie es im folgenden noch beschrieben wird. Auf diese Weise wird Idealerweise jegliche Irrelevanz aus dem Audiosignal entfernt, und es kann ein verlustfreies Kompressionsschema verwendet werden, um auch noch die verbleibende Redundanz in dem pregefilterten und quantisierten Audiosignal zu entfernen, wie es im folgenden noch beschrieben wird.
- Anhand von
5a soll ferner noch einmal deutlich hervorgehoben werden, daß freilich die verwendeten Filterkoeffizienten und Verstärkungswerte a0, a1, x0, x1 selbstverständlich ,als Seiteninformationen decoderseitig zur Verfügung stehen müssen, daß aber der Übertragungsaufwand hierzu dadurch verringert wird, daß neue Filterkoeffizienten und neue Verstärkungswerte nicht einfach für jeden Block neu verwendet werden. Vielmehr findet eine Schwellwertüberprüfung66 statt, um nur bei ausreichender Parametrisierungsänderung die Parametrisierungen als Seiteninformationen zu übertragen, und ansonsten, quasi in den Übergangsstellen bzw. Übergangsaudioblöcken, wird eine Interpolation durchgeführt. Die Interpolation der Filterkoeffizienten findet auf die im Vorhergehenden Bezug nehmend auf den Schritt88 beschriebene Weise statt. Die Interpolation im Hinblick auf die Verstärkung findet über einen Umweg statt, nämlich über eine lineare Interpolation90 der Rauschleistungsgrenze q0, q1. Im Vergleich zu einer unmittelbaren Interpolation über den Verstärkungswert führt die lineare Interpolation bezüglich der Rauschleistungsgrenze zu einem besseren Hörergebnis bzw. weniger hörbaren Artefakten. - Im folgenden wird nun anhand von
6 die weitere Verarbeitung des pre- bzw. vorgefilterten Signals beschrieben, welche im wesentlichen eine Quantisierung und eine Redundanzreduktion umfaßt. Zunächst werden die von dem parametrisierbaren Prefilter30 ausgegebenen gefilterten Abtastwerte oberhalb einer oberen Schranke in einem Schritt110 abgeschnitten und daraufhin in einem Schritt112 quantisiert. Die beiden Schritte110 und112 werden von dem Quantisierer28 ausgeführt. Insbesondere werden die beiden Schritte110 und112 von dem Quantisierer28 bevorzugter Weise in einem Schritt ausgeführt, indem die gefilterten Audiowerte s' mit einer Quantisierungsstufenfunktion quantisiert werden, die die beispielsweise in einer Fließkommadarstellung vorliegenden gefilterten Abtastwerte s' auf eine Mehrzahl von ganzzahligen Quantisierungsstufenwerten bzw. -indizes abbildet und ab einem gewissen Schwellwert für die gefilterten Abtastwerte flach verläuft, so daß gefilterte Abtastwerte, die größer als der Schwellwert sind, auf ein und dieselbe Quantisierungsstufe quantisiert werden. Ein Beispiel für eine solche Quantisierungsstufenfunktion ist in7a dargestellt. - Die quantisierten gefilterten Abtastwerte sind in
7a mit σ' bezeichnet. Die Quantisierungsstufenfunktion ist vorzugsweise eine Quantisierungsstufenfunktion mit unterhalb des Schwellwertes konstanter Schrittweite, d.h. der Sprung auf die nächste Quantisierungsstufe findet stets nach einem konstanten Intervall entlang der Eingangswerte S' statt. In der Implementierung wird die Schrittweite zum Schwellwert derart eingestellt, daß die Anzahl an Quantisierungsstufen vorzugsweise einer Potenz von 2 entspricht. Im Vergleich zur Fließkommadarstellung der eingehenden gefilterten Abtastwerte s' ist der Schwellwert kleiner, so daß ein Maximalwert des darstellbaren Bereichs der Fließkommadarstellung den Schwellwert übertrifft. - Der Grund für den Schwellwert besteht darin, daß beobachtet worden ist, daß das gefilterte Audiosignal, das von dem Prefilter
30 ausgegeben wird, vereinzelt Audiowerte aufweist, die sich aufgrund einer ungünstigen Akkumulation von Oberwellen zu sehr großen Werten aufsummieren. Ferner ist beobachtet worden, daß ein Abschneiden dieser Werte, wie es durch die in7a gezeigte Quantisierungsstufenfunktion erzielt wird, zu einer hohen Datenreduktion, aber nur zu einer geringfügigen Beeinträchtigung der Audioqualität führt. Vielmehr entstehen diese vereinzelten Stellen im gefilterten Audiosignal künstlich durch die frequenzselektive Filterung im parametrisierbaren Filter30 , so daß ein Abschneiden derselben die Audioqualität nur geringfügig beeinträchtigt. - Ein etwas konkreteres Beispiel für die in
7a gezeigte Quantisierungsstufenfunktion wäre eine solche, die bis zum Schwellwert alle gefilterten Abtastwerte s' auf die nächstgelegene Ganzzahl rundet, und von da an alle darüberliegenden gefilterten Abtastwerte auf die höchste Quantisierungsstufe quantisiert, wie z.B. 256. Dieser Fall ist in7a dargestellt. - Ein weiteres Beispiel für eine mögliche Quantisierungsstufenfunktion wäre die in
7b gezeigte. Bis zum Schwellwert entspricht die Quantisierungsstufenfunktion von7b derjenigen von7a . Anstatt jedoch für Abtastwerte s' oberhalb des Schwellwertes abrupt flach zu verlaufen, verläuft die Quantisierungsstufenfunktion mit einer Steilheit weiter, die kleiner ist als die Steilheit im Bereich unterhalb des Schwellwertes. Anders ausgedrückt ist oberhalb des Schwellwertes die Quantisierungsschrittweite größer. Hierdurch wird ein ähnlicher Effekt erzielt wie mit der Quantisierungsfunktion von7a , jedoch mit einerseits mehr Aufwand aufgrund der verschiedenen Schrittweiten der Quantisierungsstufenfunktion oberhalb und unterhalb des Schwellwertes und andererseits einer besserten Audioqualität, da sehr hohe gefilterte Audiowerte s' nicht vollständig abgeschnitten werden, sondern lediglich mit einer größeren Quantisierungsschrittweite quantisiert werden. - Wie es im Vorhergehenden schon beschrieben worden ist, müssen decoderseitig nicht nur die quantisierten und gefilterten Audiowerte σ' zur Verfügung stehen, sondern ferner auch die Eingangsparameter für das Prefilter
30 , die der Filterung dieser Werte zugrundegelegt worden sind, nämlich die Stützstellenparametrisierung inklusive eines Hinweises auf den zugehörigen Verstärkungswert. In einem Schritt114 unternimmt deshalb der Komprimierer34 einen ersten Komprimierungsversuch und komprimiert dabei Seiteninformationen beinhaltend die Verstärkungswerte a0 und a1 an den Stützstellen, wie z.B. 127 und 255, sowie die Filterkoeffizienten x0 und x1 an den Stützstellen und die quantisierten, gefilterten Abtastwerte σ' in ein vorläufiges gefiltertes Signal. Der Komprimierer34 ist dabei ein verlustfrei arbeitender Codierer, wie z.B. ein Huffman- oder arithmetischer Codierer mit oder ohne Prädiktion und/oder Adaption. - Der Speicher
38 , den die quantisierten, abgetasteten Audiowerte σ' durchlaufen, dient als Zwischenspeicher für eine geeignete Blockgröße, mit welcher der Komprimierer34 die von dem Quantisierer28 ausgegebenen quantisierten, gefilterten Audiowerte σ' verarbeitet. Die Blockgröße kann sich von der Blockgröße der Audioblöcke, wie sie von der Einrichtung20 verwendet werdenunterscheiden. - Für den ersten Komprimierungsversuch hat die Bitratensteuerung
36 den Multiplizierer40 mit einem Multiplikator von 1 angesteuert, so daß die quantisierten, gefilterten Audiowerte von dem Quantisierer28 unverändert zu dem Komprimierer34 gelangen. Der Komprimierer34 überwacht in einem Schritt116 , ob eine gewisse Kompressionsblockgröße, d.h. eine gewisse Anzahl von quantisierten, abgetasteten Audio werten, in das vorläufige codierte Signal codiert worden ist, oder ob weitere quantisierte, gefilterte Audiowerte σ' in das aktuelle vorläufige codierte Signal zu codieren sind. Ist die Kompressionsblockgröße nicht erreicht, führt der Komprimierer34 die aktuelle Kompression114 weiter durch. Ist die Kompressionsblockgröße jedoch erreicht, überprüft in einem Schritt118 die Bitratensteuerung36 , ob die für die Komprimierung benötigte Bitmenge größer als eine von einer erwünschten Bitrate vorgeschriebene Bitmenge ist. Ist dies nicht der Fall, überprüft die Bitratensteuerung36 in einem Schritt120 , ob die benötigte Bitmenge kleiner als die durch die erwünschte Bitrate vorgeschriebene Bitmenge ist. Ist dies der Fall, fügt die Bitratensteuerung36 das codierte Signal in Schritt122 mit Füllbits auf, bis die durch die erwünschte Bitrate vorgeschriebene Bitmenge erreicht ist. Anschließend erfolgt in Schritt124 die Ausgabe des codierten Signals. Alternativ zu Schritt122 könnte die Bitratensteuerung36 den in dem Speicher38 noch gespeicherten, zuletzt der Kompression zugrundeliegenden Kompressionsblock von quantisierten, gefilterten Audiowerten σ' in mit einem Multiplikator größer 1 durch den Multiplizierer40 multiplizierter Form an den Quantisierer28 zum erneuten Durchlaufen der Schritte110 –118 weiterleiten, bis die durch die erwünschte Bitrate vorgeschriebene Bitmenge erreicht ist, wie es durch einen gestrichelten Schritt125 angezeigt ist. - Ergibt jedoch die Überprüfung in Schritt
118 , daß die benötigte Bitmenge größer als die von der erwünschten Bitrate vorgeschriebene ist, ändert die Bitratensteuerung36 den Multiplikator für den Multiplizierer40 auf einen Faktor zwischen 0 und 1 ausschließlich. Dies führt sie in Schritt126 durch. Nach dem Schritt126 sorgt die Bitratensteuerung36 dafür, daß der Speicher38 den letzten der Kompression zugrundeliegenden Kompressionsblock von quantisierten, gefilterten Audiowerten σ' erneut ausgibt, wobei dieselben daraufhin mit dem in Schritt126 eingestellten Faktor multipliziert werden und erneut dem Quantisierer28 zugeführt werden, woraufhin die Schritte110 –118 erneut durchgeführt werden und das bisher vorläufig kodierte Signal verworfen wird. - Es wird darauf hingewiesen, daß bei erneutem Durchführen der Schritte
110 –116 in dem Schritt114 freilich auch der in dem Schritt126 (oder dem Schritt125 ) verwendete Faktor in das codierte Signal eingebunden wird. - Der Sinn der Vorgehensweise nach Schritt
126 besteht darin, daß durch den Faktor die effektive Schrittweite des Quantisierers28 erhöht wird. Dies bedeutet, daß das resultierende Quantisierungsrauschen gleichmäßig oberhalb der Maskierungsschwelle liegt, was zu hörbaren Störungen bzw. hörbarem Rauschen führt, aber dafür eine reduzierte Bitrate ergibt. Wird nach erneutem Durchlaufen der Schritte110 –116 in Schritt118 erneut festgestellt, daß die benötigte Bitmenge größer als die von der gewünschten Bitrate vorgeschriebene ist, wird der Faktor in Schritt126 weiter reduziert usw. - Wenn die Daten schließlich bei Schritt
124 als codiertes Signal ausgegeben werden, wird der nächste Kompressionsblock von den darauffolgenden quantisierten, gefilterten Audiowerten σ' durchgeführt. -
5b veranschaulicht noch einmal das sich ergebende codierte Signal, das allgemein mit130 angezeigt ist. Das codierte Signal umfaßt Seiteninformationen und dazwischenliegende Hauptdaten. Die Seiteninformationen umfassen, wie bereits erwähnt, Informationen, aus denen für spezielle Audioblöcke, nämlich Audioblöcke, bei denen sich in der Folge von Audioblöcken eine signifikante Änderung in den Filterkoeffizienten ergeben hat, der Wert des Verstärkungswertes und der Wert der Filterkoeffizienten hergeleitet werden kann. Gegebenenfalls umfassen die Seiteninformationen ferner weitere Informationen, die sich auf den für die Bitsteuerung verwendeten Verstärkungswert beziehen. Auf grund der gegenseitigen Abhängigkeit zwischen Verstärkungswert und Rauschleistungsgrenze q können die Seiteninformationen wahlweise neben dem Verstärkungswert a# zu einer Stützstelle # auch die Rauschleistungsgrenze q# umfassen, oder auch nur letztere. Innerhalb des codierten Signals sind die Seiteninformationen vorzugsweise derart angeordnet, daß die Seiteninformationen zu Filterkoeffizienten und zugehörigem Verstärkungswert bzw. zugehöriger Rauschleistungsgrenze hinter den Hauptdaten zu dem Audioblock von quantisierten, gefilterten Audiowerten σ' angeordnet sind, aus dem diese Filterkoeffizienten mit zugehörigem Verstärkungswert bzw. zugehöriger Rauschleistungsgrenze abgeleitet worden sind, also die Seiteinformationen a0, x0(i) nach dem Block –1 und die Seiteinformationen a1, x1 (i) nach dem Block 1. Anders ausgedrückt sind die Hauptdaten, d.h. die quantisierten, gefilterten Audiowerte σ', ab exklusive einem Audioblock der Art, bei der sich eine in der Folge von Audioblöcken signifikante Änderung in den Filterkoeffizienten ergeben hat, bis zu einschießlich dem nächsten Audioblock dieser Art, in5b beispielsweise die Audiowerte σ' (t0) – σ' (t255) , immer zwischen dem Seiteninformationsblock132 zu dem ersteren dieser beiden Audioblöcke (Block –1) und dem weiteren Seiteninformationsblock134 zu dem zweiten dieser beiden Audioblöcke (Block 1) angeordnet.. Die Audiowerte σ' (t0) – σ' (t127) sind wie im vorhergehenden bezugnehmend auf5a erwähnt allein mittels der Seiteninformationen132 erhalten worden bzw. dekodierbar, während die Audiowerte σ' (t128) – σ' (t255) durch Interpolation mittels der Seiteninformationen132 als Stützwerte an der Stützstelle mit der Abtastwertnummer127 und mittels der Seiteninformationen134 als Stützwerte an der Stützstelle mit der Abtastwertnummer255 erhalten worden sind und somit nur mitels beider Seiteninformationen dekodierbar sind. - Ferner werden die Seiteninformationen betreffend den Verstärkungswert bzw. die Rauschleistungsgrenze und die Filterkoeffizienten in jedem Seiteninformationsblock
132 und134 nicht immer unabhängig voneinander eingebunden. Vielmehr werden diese Seiteninformationen in Differenzen zu dem vorhergehenden Seiteninformationsblock übertragen. In5b enthält beispielsweise der Seiteninformationsblock132 Verstärkungswert a0 und Filterkoeffizienten x1 bezüglich der Stützstelle zum Zeitpunkt t–1. In dem Seiteninformationsblock132 sind diese Werte aus dem Block selbst herleitbar. Aus dem Seiteninformationsblock134 sind jedoch die Seiteninformationen betreffend die Stützstelle zum Zeitpunkt t255 nicht mehr aus diesem Block allein herleitbar. Vielmehr umfaßt der Seiteninformationsblock134 lediglich Informationen über Differenzen des Verstärkungswertes a1 der Stützstelle zum Zeitpunkt t255 zu dem Verstärkungswert der Stützstelle zum Zeitpunkt t0 und die Differenzen der Filterkoeffizienten x1 zu den Filterkoeffizienten x0. Der Seiteninformationsblock134 enthält folglich lediglich die Informationen zu a1 – a0 und x1 (i) – x0 (i) . Zu intermittierenden Zeitpunkten sollten jedoch die Filterkoeffizienten und der Verstärkungswert bzw. die Rauschleistungsgrenze voll und nicht nur als Differenz zur vorhergehenden Stützstelle übertragen werden, wue z.B. jede Sekunde, um einem Empfänger bzw. Dekodierer das einklinken in einen laufenden Strom von Codierungsdaten zu ermöglichen, wie es im folgenden noch erörtert wird. - Diese Art des Einbindens der Seiteninformationen in die Seiteninformationsblöcke
132 und134 bietet den Vorteil der Möglichkeit einer höheren Komprimierungsrate. Der Grund dafür besteht darin, daß, obwohl die Seiteninformationen möglichst nur dann übertragen werden, wenn sich eine ausreichende Änderung der Filterkoeffizienten zu den Filterkoeffizienten einer vorhergehenden Stützstelle ergeben hat, sich der Aufwand der Differenzbildung codiererseitig bzw. Summenbildung decodierseitig lohnt, da die sich ergebenden Differenzen trotz der Abfrage in Schritt66 klein sind, um somit Vorteile bei der Entropiecodierung zu ermöglichen. - Nachdem im Vorhergehenden ein Ausführungsbeispiel für einen Audiocodierer beschrieben worden ist, wird im folgenden ein Ausführungsbeispiel für einen Audiodecodierer beschrieben, der geeignet ist, das durch den Audiocodierer
10 von1 erzeugte codierte Signal in ein decodiertes, abspielbares bzw. weiterverarbeitbares Audiosignal zu decodieren. - Der Aufbau dieses Decodierers ist in
8 gezeigt. Der Decodierer, der allgemein mit210 angezeigt ist, umfaßt einen Dekomprimierer212 , einen FIFO-Speicher214 , einen Multiplizierer216 und ein parametrisierbares Postfilter218 . Dekomprimierer212 , FIFO-Speicher214 , Multiplizierer216 und parametrisierbares Postfilter218 sind in dieser Reihenfolge zwischen einen Dateneingang220 und einen Datenausgang222 des Decodierers210 geschaltet, wobei am Dateneingang220 das codierte Signal erhalten wird und am Datenausgang222 das decodierte Audiosignal ausgegeben wird, das sich lediglich durch das durch den Quantisierer28 im Audiocodierer10 erzeugte Quantisierungsrauschen von dem ursprünglichen Audiosignal am Dateneingang12 des Audiocodierers10 unterscheidet. Der Dekomprimierer212 ist an einem weiteren Datenausgang mit einem Steuereingang des Multiplizierers216 verbunden, um an denselben einen Multiplikator weiterzuleiten, und über einen weiteren Datenausgang mit einem Parametrisierungseingang des parametrisierbaren Postfilters218 . - Wie es in
9 gezeigt ist, dekomprimiert der Dekomprimierer212 in einem Schritt224 zunächst das am Dateneingang220 anliegende komprimierte Signal, um an die quantisierten, gefilterten Audiodaten, nämlich die Abtastwerte σ', sowie die dazugehörigen Seiteninformationen in den Seiteninformationsblöcken132 ,134 zu gelangen, die ja die Filterkoeffizienten und Verstärkungswerte oder, anstelle der Verstärkungswerte, die Rauschleistungsgrenzen, an den Stützstellen anzeigen. - Wie es in
10 gezeigt ist, überprüft der Dekomprimierer212 in einem Schritt226 das dekomprimierte Signal in der Reihenfolge seiner Ankunft, ob darin Seiteninformationen mit Filterkoeffizienten enthalten sind, und zwar in in sich abgeschlossener Form ohne Differenzbezugnahme auf einen vorhergehenden Seiteninformationsblock. Anders ausgedrückt, sucht der Dekomprimierer212 nach dem ersten Seiteninformationsblock132 . Sobald der Dekomprimierer212 fündig geworden ist, werden die quantisierten, gefilterten Audiowerte σ' in einem Schritt228 in dem FIFO-Speicher214 zwischengespeichert. Ist während des Schrittes 228 ein vollständiger Audioblock von quantisierten, gefilterten Audiowerte σ' eingespeichert worden, ohne daß unmittelbar ein Seiteninformationsblock folgt, so wird dieser innerhalb des Schrittes228 zunächst mittels der in in dem Schritt226 empfangenen Seiteninformationen enthaltenen Informationen über Parametrisierung und Verstärkungswert in dem Postfilter postgefiltert und im Multiplizierer216 verstärkt, wodurch er dekodiert und damit der zugehörige dekodierte Audioblock erhalten wird. - In einem Schritt
230 überwacht der Dekomprimierer212 das dekomprimierte Signal auf das Auftauchen eines irgendwie gearteten Seiteninformationsblocks, nämlich mit reinen mit vollen Filterkoeffizienten oder Filterkoeffizienten-Differenzen zu einem vorhergehenden Seiteninformationsblock hin. In dem Beispiel von5b würde beispielsweise der Dekomprimierer212 auf die Erkennung des Seiteninformationsblocks132 im Schritt226 in dem Schritt230 das Auftauchen des Seiteninformationsblocks134 erkennen. Dabei wäre bereits in Schritt228 der Block von quantisierten, gefilterten Audiowerten σ' (t0) – σ' (t127) dekodiert worden, und zwar unter Verwendung der Seiteninformationen132 . Solange der Seiteninformationsblock134 im dekomprimierten Signal also noch nicht auftritt, wird die Zwischenspeicherung und die eventuelle Dekodierung von Blöcken vermittels der Seiteninformationen aus Schritt226 , wie es im vorhergehenden beschrieben wurde, im Schritt228 fortgesetzt. - Sobald der Seiteninformationsblock
134 auftritt, berechnet der Dekomprimierer212 im Schritt232 durch Summieren der Differenzwerte in dem Seiteninformationsblock134 zu den Parameterwerten in dem Seiteninformationsblock132 die Parameterwerte an der Stützstelle 1, d.h. a1, x1(i). Freilich entfällt der Schritt232 falls der aktuelle Seiteninformationsblock ein in sich abgeschlossener Seiteninformationsblock ohne Differenzen ist, was, wie im vorhergehenden beschrieben beispielsweise alle Sekunde der Fall sein kann. Damit die Wartezeit für den Decodierer210 nicht zu lange ist, werden Seiteninformationsblöcke132 , bei denen die Parameterwerte absolut, d.h. ohne Relation zu einem anderen Seiteninformationsblock, herleitbar sind, in genügend kleinen Abständen angeordnet, so daß die Einschaltzeit bzw. die Totzeit beim Einschalten des Audiocodierers210 bei beispielsweise einer Funkübertragung oder Rundfunkübertragung nicht zu groß ist. Vorzugsweise sind auch die Anzahl der dazwischen angeordneten Seiteninformationsblöcke134 mit den Differenzwerten in einer festen vorbestimmten Anzahl zwischen den Seiteninformationsblöcken132 angeordnet, so daß der Decodierer weiß, wann wieder ein Seiteninformationsblock der Art132 in dem codierten Signal zu erwarten ist. Alternativ werden die verschiedenen Seiteninformationsblocktypen durch entsprechende Flags angezeigt. - Wie es nun in
11 gezeigt ist, wird, nachdem nun ein Seiteninformationsblock für eine neue Stützstelle erreicht worden ist, und zwar insbesonder nach Schritt226 oder232 , zunächst ein Abtastwertindex j auf 0 im Schritt234 initialisiert. Dieser Wert entspricht der Abtastposition des ersten Abtastwertes in dem aktuell in dem FIFO214 verbliebenen Audioblock, auf den sich die aktuellen Seiteninformationen beziehen. Schritt234 wird von dem parametrisierbaren Postfilter218 durchgeführt. Das Postfilter218 führt danach in einem Schritt236 eine Berechnung der Rauschleistungsgrenze an der neuen Stützstelle durch, wobei dieser Schritt dem Schritt84 von4 entspricht und gegebenen falls entfallen kann, wenn beispielsweise die Rauchleistungsgrenze an den Stützstellen zusätzlich zu den Verstärkungswerten übertragen wird. In nachfolgenden Schritten238 und240 führt daraufhin das Postfilter218 Interpolationen bezüglich der Filterkoeffizienten und der Rauschleistungsgrenzen durch, die den Interpolationen88 und90 von4 entsprechen. Die nachfolgende Berechnung des Verstärkungswertes für die Abtastposition j auf der Basis der interpolierten Rauschleistungsgrenze und den interpolierten Filterkoeffizienten aus den Schritten238 und240 in Schritt242 entspricht dem Schritt92 von4 . In einem Schritt244 wendet daraufhin das Postfilter218 den in Schritt242 berechneten Verstärkungswert sowie die interpolierten Filterkoeffizienten auf den Abtastwert an der Abtastposition j an. Dieser Schritt unterscheidet sich von dem Schritt94 von4 dadurch, daß die interpolierten Filterkoeffizienten derart auf die quantisierten, gefilterten Abtastwerte σ' angewendet werden, daß die Übertragungsfunktion des parametrisierbaren Postfilters nicht dem Inversen der Mithörschwelle, sondern der Mithörschwelle selbst entspricht. Ferner führt das Postfilter nicht eine Multiplikation mit dem Verstärkungswert, sondern eine Division durch den Verstärkungswert an dem quantisierten, gefilterten Abtastwert σ' oder bereits zurückgefilterten, quantisierten, gefilterten Abtastwert an der Position j durch. - Hat das Postfilter
218 noch nicht die aktuelle Stützstelle mit der Abtastposition j erreicht, was dasselbe in Schritt246 überprüft, inkrementiert es in Schritt248 den Abtastpositionsindex j und beginnt die Schritte238 –246 von neuem. Erst wenn die Stützstelle erreicht ist, wendet sie den Verstärkungswert und die Filterkoeffizienten der neuen Stützstelle auf den Abtastwert an der Stützstelle an, nämlich in Schritt250 . Wiederum umfaßt die Anwendung wie im Schritt218 anstatt einer Multiplikation eine Division mittels des Verstärkungswertes und eine Filterung mit einer Übertragungsfunktion gleich der Mithörschwelle und nicht dem Inversen letztgenannter. Nach Schritt250 ist der aktuelle Audioblock durch Interpolation zwischen zwei Stützstellenparametrisierungen dekodiert. - Wie bereits erwähnt, wird durch die Filterung und die Anwendung des Verstärkungswertes in den Schritten
218 und224 das durch die Quantisierung bei der Codierung in Schritt110 bzw.112 eingefügte Rauschen sowohl in Form als auch in Höhe an die Mithörschwelle angepaßt. - Es wird noch darauf hingewiesen, daß in dem Fall, daß die quantisierten, gefilterten Audiowerte aufgrund der Bitratensteuerung vor der Codierung in das codierte Signal noch einer weiteren Multiplikation in Schritt
126 unterzogen worden sind, dieser Faktor in den Schritten218 und224 ebenfalls berücksichtigt werden kann. Alternativ können freilich die durch den Prozeß von11 erhaltenen Audiowerte einer weiteren Multiplikation unterzogen werden, um die um einer niedrigern Bitrate willen geschwächten Audiowerte wieder entsprechend zu verstärken. - Hinsichtlich der
3 ,4 ,6 und9 –11 wird darauf hingewiesen, daß dieselben Flußdiagramme zeigen, welche die Arbeitsweise des Codierers von1 oder des Decodierers von8 veranschaulichen, und daß jeder der in diesen Flußdiagrammen durch einen Block dargestellten Schritte wie beschrieben in einer entsprechenden Einrichtung implementiert ist, wie es im vorhergehenden beschrieben wurde. Die Implementierung der einzelnen Schritte kann dabei in Hardware, als ASIC-Schaltungsteil, oder in Software, als Unterroutinen, realisiert sein. Insbesondere zeigen in diesen Figuren die in den Blöcken eingeschrieben Erläuterungen grob an, auf welchen Vorgang sich der jeweilige Schritt bezieht, der dem jeweiligen Block entspricht, während die Pfeile zwischen den Blöcken die Reihenfolge der Schritte bei Betrieb des Codierers bzw. Dekodierers veranschaulichen. - Bezug nehmend auf die vorhergehende Beschreibung wird noch darauf hingewiesen, daß das oben dargestellte Codierschema in verschiedener Hinsicht variiert werden kann. Beispielsweise ist es nicht notwendig, daß eine Parametrisierung und ein Verstärkungswert oder eine Rauschleistungsgrenze, wie sie für einen bestimmten Audioblock bestimmt worden sind, als für einen bestimmten Audiowert unmittelbar gültig angesehen werden sollen, wie in dem vorhergehenden Ausführungsbeispiel der jeweils letzte Audiowert jedes Audioblocks, d.h. des 128sten Werts in diesem Audioblock, so daß für diesen Audiowert die Interpolation unterbleiben kann. Vielmehr ist es möglich, diese Stützstellenparameterwerte auf eine Stützstelle zu beziehen, die sich zeitlich zwischen den Abtastzeitpunkten t0 mit n = 0, ..., 127 der Audiowerte dieses Audioblocks befindet, so daß für jeden Audiowert eine Interpolation notwendig wäre. Insbesondere kann die für einen Audioblock bestimmte Parametrisierung bzw. der für diesen Audioblock bestimmte Verstärkungswert auch auf einen anderen Wert unmittelbar angewendet werden, wie z.B. den Audiowert in der Mitte des Audioblocks, wie z.B. den 64sten Audiowert in dem Fall der obigen Blockgröße von 128 Audiowerten.
- Ferner wird darauf hingewiesen, daß sich obiges Ausführungsbeispiel auf ein Audiocodierungsschema bezog, das darauf ausgelegt war, ein codiertes Signal mit einer gesteuerten Bitrate zu erzeugen. Die Steuerung der Bitrate ist aber nicht in jedem Anwendungsfall erforderlich. Deshalb können die entsprechenden Schritte
116 –122 und126 auch weggelassen werden. - Hinsichtlich des Bezug nehmend auf den Schritt
114 erwähnten Komprimierungsschemas wird der Vollständigkeit halber auch auf das in der Beschreibungseinleitung beschriebene Dokument von Schuller et.al. verwiesen, und insbesondere auf Gliederungspunkt IV, dessen Inhalt hiermit bezüglich der Redundanzreduktion mittels verlustloser Codierung hiermit unter Bezugnahme aufgenommen wird. - Ferner wird Bezug nehmend auf das vorhergehende Ausführungsbeispiel noch auf folgendes hingewiesen. Obwohl im Vorhergehenden beschrieben worden ist, daß der Schwellwert bei der Quantisierung immer konstant bleibt bzw. auch die Quantisierungsstufenfunktion immer konstant bleibt, d.h. stets die in dem gefilterten Audiosignal erzeugten Artefakte mit gröberer Quantisierung quantisiert bzw. abgeschnitten werden, wodurch die Audioqualität gegebenenfalls hörbar verschlechtert werden könnte, ist es ferner möglich, diese Maßnahme erst dann zu verwenden, wenn es die Komplexität des Audiosignals erfordert, nämlich dann, wenn die zur Codierung notwendige Bitrate eine erwünschte Bitrate überschreitet. In diesem Fall könnte zusätzlich zu den in
7a und7b gezeigten Quantisierungsstufenfunktionen beispielsweise eine solche mit einer über den ganzen möglichen Wertebereich am Ausgang des Prefilters konstanten Quantisierungsschrittweite verwendet werden und der Quantisierer würde beispielsweise auf ein Signal ansprechen, um entweder die Quantisierungsstufenfunktion mit stets konstanter Quantisierungsschrittweite oder eine der Quantisierungsstufenfunktionen nach7a oder7b zu verwenden, so daß durch das Signal dem Quantisierer mitgeteilt werden könnte, bei geringfügiger Audioqualitätsverschlechterung die Quantisierungsstufenverringerung oberhalb des Schwellwertes bzw. das Abschneiden oberhalb des Schwellwertes durchzuführen. Alternativ könnte auch graduell der Schwellwert allmählich verringert werden. In diesem Fall könnte die Schwellwertverringerung anstatt der Faktorverringerung von Schritt126 durchgeführt werden. Nach einem ersten Komprimierungsversuch ohne Schritt110 könnte also das vorläufig komprimierte Signal lediglich erst dann in einem modifizierten Schritt126 einer selektiven Schwellwertquantisierung unterzogen werden, wenn die Bitrate immer noch zu hoch ist (118 ). In einem erneuten Durchgang würden dann die gefilterten Audiowerte mit der Quantisierungsstufenfunktion quantisiert werden, die einen flacheren Verlauf oberhalb der Audioschwelle aufweist. Weitere Bitratenreduktionen könnten in dem modifizierten Schritt126 noch durch Reduzieren des Schwellwertes und damit einer weiteren Modifikation der Quantisierungsstufenfunktion durchgeführt werden. - Ferner sind einige Aspekte obigen Ausführungsbeispiels zwar vorteilhaft, aber nicht notwendig. So könnte beispielsweise bei dem obigen Audiocodierschema die Interpolation weggelassen werden. Ferner wäre es möglich, die Parametrisierungen und den Verstärkungswert bzw. die Parametrisierungen und die Rauschleistungsgrenze bezüglich jeden Audioblocks zu übertragen, bezüglich dessen sie berechnet wurden, und keinen zu überspringen, wenn sich die aufeinanderfolgenden Parametrisierungen um weniger als vorerwähntes vorbestimmtes Maß unterscheiden.
- Ferner wäre es möglich, die Differenzcodierung lediglich auf die Parametrisierungen anzuwenden, nicht aber auf den Verstärkungswert bzw. die Rauschleistungsgrenze.
- Ferner ist es denkbar, bei obigem Codierungsschema die Filterkoeffizienten in den Differenz-Seitenblöcken
134 auch anders zu übertragen nämlich beispielsweise in Form der aktuellen Filterkoeffizienten minus der vorhergehend übertragenen Filterkoeffizienten minus der Mindestschwelle aus Schritt66 . - Oben beschriebenes Audiocodierschema beschäftigt sich folglich unter anderem mit der Übertragung von Seiteninformationen bei einem Audiocoder mit sehr geringer Verzögerungszeit auf effektive Art und Weise. Die Seiteninformationen, die für den Decoder übertragen werden müssen, damit das Audiosignal wieder geeignet rekonstruiert werden kann, haben die Eigenschaft, daß sich dieselben meistens nur langsam ändern. Deshalb werden nur Differenzen übertragen, was die Bitrate verringert. Zudem werden dieselben nur dann übertragen, wenn ausreichend Änderung da ist. Von Zeit zu Zeit wird der absolute Wert übertragen, falls vergangene Werte verlorengegangen sind. Anders ausgedrückt werden die Seiteninformationen vom Prefilter bzw. die Koeffizienten so übertragen, daß das Postfilter im Decodier die inverse Übertragungsfunktion besitzt, so daß das Audiosignal wieder passend rekonstruiert werden kann. Die dafür nötige Bitrate wird reduziert, indem Differenzen übertragen werden, und auch nur dann, wenn sie groß genug sind. Diese Differenzen haben kleinere Werte und kommen häufiger vor, weshalb sie weniger Bits bei der Codierung benötigen. Die Differenzcodierung zahlt sich insbesondere deshalb aus, weil sich die Differenzen bei sich kontinuierlich ändernden Audiosignalen auch nur stetig ändern.
- Insbesondere wird darauf hingewiesen, dass abhängig von den Gegebenheiten das erfindungsgemäße Audiokodierungsschema auch in Software implementiert sein kann. Die Implementierung kann auf einem digitalen Speichermedium, insbesondere einer Diskette oder einer CD mit elektronisch auslesbaren Steuersignalen erfolgen, die so mit einem programmierbaren Computersystem zusammenwirken können, daß das entsprechende Verfahren ausgeführt wird. Allgemein besteht die Erfindung somit auch in einem Computerprogrammprodukt mit auf einem maschinenlesbaren Träger gespeicherten Programmcode zur Durchführung des erfindungsgemäßen Verfahrens, wenn das Computerprogrammprodukt auf einem Rechner abläuft. In anderen Worten ausgedrückt kann die Erfindung somit als ein Computerprogramm mit einem Programmcode zur Durchführung des Verfahrens realisiert werden, wenn das Computerprogramm auf einem Computer abläuft.
- Insbesondere können obige Verfahrensschritte in den Blöcken der Flußdiagramme einzeln oder zu mehreren in Unterprogrammroutinen implementiert sein. Alternativ ist freilich auch eine Implementierung einer erfindungsgemäßen Vorrichtung in Form einer Integrierten Schaltung möglich, bei der diese Blöcke beispielsweise als einzelne Schaltungsteile einer ASIC implementiert sind.
Claims (8)
- Vorrichtung zum Codieren eines Audiosignals einer Folge von Audiowerten in ein codiertes Signal, mit einer Einrichtung zum Ermitteln einer ersten Mithörschwelle für einen ersten Block von Audiowerten der Folge von Audiowerten und einer zweiten Mithörschwelle für einen zweiten Block von Audiowerten der Folge von Audiowerten; einer Einrichtung (
24 ) zum Berechnen einer Version einer ersten Parametrisierung eines parametrisierbaren Filters (30 ), so daß dessen Übertragungsfunktion in etwa dem Inversen des Betrags der ersten Mithörschwelle entspricht, und einer Version einer zweiten Parametrisierung des parametrisierbaren Filters, so daß dessen Übertragungsfunktion in etwa dem Inversen des Betrags der zweiten Mithörschwelle entspricht; einer Einrichtung zum Filtern eines vorbestimmten Blocks von Audiowerten der Folge von Audiowerten mit dem parametrisierbaren Filter unter Verwendung einer vorbestimmten Parametrisierung, die in vorbestimmter Weise von der Version der zweiten Parametrisierung abhängt, um einen zu dem vorbestimmten Block korrespondierenden Block von gefilterten Audiowerten zu erhalten; einer Einrichtung zum Quantisieren der gefilterten Audiowerte, um einen Block von quantisierten, gefilterten Audiowerten zu erhalten; einer Einrichtung zum Bilden einer Kombination der Version der ersten Parametrisierung und der Version der zweiten Parametrisierung, die zumindest eine Differenz zwischen der Version der ersten Parametrisie rung und der Version der zweiten Parametrisierung umfaßt; und einer Einrichtung zum Einbinden von Informationen, aus denen die quantifizierten, gefilterten Audiowerte und eine Version der ersten Parametrisierung herleitbar sind, und die die Kombination umfassen, in das codierte Signal. - Vorrichtung gemäß Anspruch 1, bei der die Einrichtung zum Filtern folgende Merkmale aufweist: eine Einrichtung zum Interpolieren zwischen der Version der ersten Parametrisierung und der Version der zweiten Parametrisierung, um für einen vorbestimmten Audiowert des vorbestimmten Blocks von Audiowerten eine Version einer interpolierten Parametrisierung zu erhalten; und eine Einrichtung zum Anwenden der Version der interpolierten Parametrisierung auf den vorbestimmten Audiowert.
- Vorrichtung gemäß einem der vorhergehenden Ansprüche, bei der die Einrichtung zum Einbinden einen Entropiecodierer umfaßt.
- Vorrichtung gemäß einem der vorhergehenden Ansprüche, bei der die Einrichtung zum Ermitteln der ersten und der zweiten Mithörschwelle und die Einrichtung zum Berechnen ausgebildet sind, um von dem ersten Block von Audiowerten an für eine Mehrzahl von nachfolgenden aufeinanderfolgenden Blöcken von Audiowerten der Folge von Audiowerten eine Mithörschwelle zu ermitteln bzw. eine Parametrisierung des parametrisierbaren Filters zu berechnen, so daß die Übertragungsfunktion desselben in etwa dem Inversen des Betrags der jeweiligen Mithörschwelle entspricht, wobei die Vorrichtung ferner folgendes Merkmal aufweist: eine Einrichtung zum Überprüfen der Parametrisierungen der Reihe nach, ob sich dieselben um mehr als ein vorbestimmtes Maß von der ersten Parametrisierung unterscheiden, und zum Auswählen erst derjeniger Parametrisierung unter den Parametrisierungen als die zweite Parametrisierung, die sich erstmals um mehr als das vorbestimmte Maß von der ersten Parametrisierung unterscheidet.
- Vorrichtung gemäß Anspruch 4, bei dem die Kombination die Differenz minus das vorbestimmte Maß aufweist.
- Vorrichtung gemäß einem der vorhergehenden Ansprüche, die ferner eine Einrichtung (
22 ) zum Ermitteln einer ersten Rauschleistungsgrenze abhängig von der ersten Maskierungsschwelle und einer zweiten Rauschleistungsgrenze abhängig von der zweiten Maskierungsschwelle aufweist, und bei der die Einrichtung zum Filtern eine Einrichtung (90 ) zum Interpolieren zwischen der ersten Rauschleistungsgrenze und der zweiten Rauschleistungsgrenze, um für einen vorbestimmten Audiowert des vorbestimmten Blocks von Audiowerten eine interpolierte Rauschleistungsgrenze zu erhalten, eine Einrichtung (92 ) zum Ermitteln eines Zwischenskalierungswerts abhängig von einer durch eine Quantisierung gemäß einer vorbestimmten Quantisierungsvorschrift hervorgerufenen Quantisierungsrauschleistung und der interpolierten Rauschleistungsgrenze, und eine Einrichtung (94 ) zum Anwenden des Zwischenskalierungswerts auf den vorbestimmten Audiowert, um einen skalierten, gefilterten Audiowerte zu erhalten, aufweist. - Vorrichtung gemäß einem der vorhergehenden Ansprüche, die ausgebildet ist, um eine Mehrzahl aufeinanderfolgender vorbestimmter Blöcke zu verarbeiten und dabei in das codierte Signal intermittierend Informationen, die die quantifizierten, gefilterten Audiowerte und eine Version der ersten und der zweiten Parametrisierung umfassen, einzubauen.
- Vorrichtung zum Decodieren eines codierten Signals in ein Audiosignal, wobei das codierte Signal Informationen enthält, aus denen ein Block von quantifizierten, gefilterten Audiowerten und eine Version einer ersten Parametrisierung, gemäß der eine Übertragungsfunktion eines parametrisierbaren Filters dem Inversen des Betrags einer ersten Mithörschwelle entspricht, herleitbar ist, und die eine Kombination zwischen einer Version einer zweiten Parametrisierung, gemäß der eine Übertragungsfunktion des parametrierbaren Filters dem Inversen eines Betrags einer zweiten Mithörschwelle entspricht, und der Version der ersten Parametrisierung, die zumindest eine Differenz zwischen der Version der ersten Parametrisierung und der Version der zweiten Parametrisierung umfaßt, umfassen, mit einer Einrichtung zum Herleiten der Version der ersten Parametrisierung aus dem codierten Signal; einer Einrichtung zum Bilden einer Summe zwischen der Version der ersten Parametrisierung und der Differenz, um die Version der zweiten Parametrisierung zu erhalten; und einer Einrichtung zum Filtern des Blocks von quantisierten, gefilterten Audiowerten mit einem parametrisierbaren Filter unter Verwendung der Version der zweiten Parametrisierung, derart, daß dessen Übertragungsfunktion in etwa dem Betrag der Mithörschwelle entspricht, um einen Block von dekodierten Audiowerten des Audiosignals zu erhalten.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE200420002264 DE202004002264U1 (de) | 2004-02-13 | 2004-02-13 | Audiocodierung |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE200420002264 DE202004002264U1 (de) | 2004-02-13 | 2004-02-13 | Audiocodierung |
Publications (1)
Publication Number | Publication Date |
---|---|
DE202004002264U1 true DE202004002264U1 (de) | 2004-08-05 |
Family
ID=32842428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE200420002264 Expired - Lifetime DE202004002264U1 (de) | 2004-02-13 | 2004-02-13 | Audiocodierung |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE202004002264U1 (de) |
-
2004
- 2004-02-13 DE DE200420002264 patent/DE202004002264U1/de not_active Expired - Lifetime
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102004007200B3 (de) | Audiocodierung | |
EP2022043B1 (de) | Informationssignalcodierung | |
DE102007017254B4 (de) | Vorrichtung zum Kodieren und Dekodieren | |
DE69317958T2 (de) | Kodierer von Audiosignalen mit niedriger Verzögerung, unter Verwendung von Analyse-durch-Synthese-Techniken | |
EP0290581B1 (de) | Verfahren zum übertragen digitalisierter tonsignale | |
EP1979901B1 (de) | Verfahren und anordnungen zur audiosignalkodierung | |
DE60121405T2 (de) | Transkodierer zur Vermeidung einer Kaskadenkodierung von Sprachsignalen | |
DE60307252T2 (de) | Einrichtungen, verfahren und programme zur kodierung und dekodierung | |
DE69132885T2 (de) | CELP-Kodierung niedriger Verzögerung und 32 kbit/s für ein Breitband-Sprachsignal | |
EP0954909A1 (de) | Verfahren zum codieren eines audiosignals | |
DE19747132A1 (de) | Verfahren und Vorrichtungen zum Codieren von Audiosignalen sowie Verfahren und Vorrichtungen zum Decodieren eines Bitstroms | |
DE102004009955B3 (de) | Vorrichtung und Verfahren zum Ermitteln einer Quantisierer-Schrittweite | |
EP1953739A2 (de) | Verfahren und Vorrichtung zur Geräuschunterdrückung | |
DE60028500T2 (de) | Sprachdekodierung | |
EP1697929B1 (de) | Verfahren und vorrichtung zum quantisieren eines informationssignals | |
DE68913691T2 (de) | System zur Sprachcodierung und -decodierung. | |
EP0993672B1 (de) | Verfahren zur codierung und/oder decodierung von sprachsignalen unter verwendung einer langzeitprädiktion und eines mehrimpulsanregungssignals | |
DE102004007191B3 (de) | Audiocodierung | |
DE19743662A1 (de) | Verfahren und Vorrichtung zur Erzeugung eines bitratenskalierbaren Audio-Datenstroms | |
EP1697931B1 (de) | Vorrichtung und verfahren zum ermitteln eines schätzwerts | |
DE202004002264U1 (de) | Audiocodierung | |
DE202004002269U1 (de) | Vorrichtung zum Quantisieren eines Informationssignals | |
EP0905918A2 (de) | Verfahren und Vorrichtung zum Kodieren von Audiosignalen | |
DE69229627T2 (de) | Sprachkodierer mit veränderlicher bitrate | |
DE69021986T2 (de) | Verfahren zur Kodierung eines Audiosignals unter Verwendung einer Orthogonaltransformation. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R207 | Utility model specification |
Effective date: 20040909 |
|
R150 | Term of protection extended to 6 years |
Effective date: 20070510 |
|
R151 | Term of protection extended to 8 years |
Effective date: 20100430 |
|
R152 | Term of protection extended to 10 years | ||
R152 | Term of protection extended to 10 years |
Effective date: 20120430 |
|
R071 | Expiry of right | ||
R071 | Expiry of right |