DE69333786T2 - Verfahren zum Kodieren und Dekodieren von Audiodaten - Google Patents

Verfahren zum Kodieren und Dekodieren von Audiodaten Download PDF

Info

Publication number
DE69333786T2
DE69333786T2 DE69333786T DE69333786T DE69333786T2 DE 69333786 T2 DE69333786 T2 DE 69333786T2 DE 69333786 T DE69333786 T DE 69333786T DE 69333786 T DE69333786 T DE 69333786T DE 69333786 T2 DE69333786 T2 DE 69333786T2
Authority
DE
Germany
Prior art keywords
transformation
coefficients
band
coefficient
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69333786T
Other languages
English (en)
Other versions
DE69333786D1 (de
Inventor
Jae S. Lim
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Massachusetts Institute of Technology
Original Assignee
Massachusetts Institute of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US07/822,247 external-priority patent/US5394508A/en
Application filed by Massachusetts Institute of Technology filed Critical Massachusetts Institute of Technology
Publication of DE69333786D1 publication Critical patent/DE69333786D1/de
Application granted granted Critical
Publication of DE69333786T2 publication Critical patent/DE69333786T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/66Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission
    • H04B1/667Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission using a division in frequency subbands
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech 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/0204Speech 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 subband decomposition
    • G10L19/0208Subband vocoders
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech 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/0212Speech 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech 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/0204Speech 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 subband decomposition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L21/0216Noise filtering characterised by the method used for estimating noise
    • G10L2021/02161Number of inputs available containing the signal or the noise to be suppressed
    • G10L2021/02163Only one microphone
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)

Description

  • Die vorliegende Erfindung betrifft im Allgemeinen den Bereich der Signalverarbeitung und im besonderen die Codierung und Kompression von Daten. Insbesondere betrifft die Erfindung ein Verfahren und ein Gerät zur Codierung und Kompression von digitalen Daten, die Audiosignale oder Signale darstellen, die allgemein die Charakteristika von Tonfrequenzsignalen haben.
  • HINTERGRUND DER ERFINDUNG
  • Audiosignale oder NF-Signale sind allgegenwärtig. Sie werden als Funksignale oder als Teil von Fernsehsignalen übertragen. Andere Signale, wie beispielsweise Sprache, haben einschlägige Charakteristika mit Audiosignalen gemeinsam, wie beispielsweise die Bedeutung von Darstellungen des Spektralbereichs. Es ist für viele Anwendungen von Nutzen, Daten des Audiotyps in digitaler statt in analoger Form zu speichern und zu übertragen. Solche codierten Daten werden auf verschiedenen Typen digitaler Medien gespeichert, darunter Kompaktplatten (CDs), Digitalbänder, Magnetplatten, Computerspeicher, Direktzugriffsspeicher (RAM) und Festwertspeicher (ROM), um nur einige zu nennen.
  • Es ist zweckmäßig, die Menge an digitalen Daten zu minimieren, die dazu benötigt wird, eine analoges NF-Signal angemessen zu charakterisieren. Die Minimierung der Datenmenge führt zu einer Minimierung der benötigten Menge an physikalischen Speichermedien, wodurch Kosten reduziert werden und der Bedienungskomfort jeglicher im Zusammenhang mit diesen Daten verwendeten Hardware erhöht wird. Die Minimierung der Datenmenge, die notwendig ist, um einen gegebenen zeitlichen Anteil eines Audiosignal zu charakterisieren, ermöglicht auch eine schnellere Übertragung einer digitalen Darstellung des Audiosignals über jeden gegebenen Kommunikationskanal. Das führt ebenfalls zu Kosteneinsparung, da komprimierte Daten, die den gleichen Zeitanteil wie ein Audiosignal haben, im Gegensatz zu unkomprimierten Daten schneller oder über einen Kommunikationskanal mit geringerer Bandbreite versandt werden können. Beide dieser Möglichkeiten sind typischerweise kostengünstiger.
  • Die Prinzipien der digitalen Audiosignalaufbereitung sind hinlänglich bekannt und in vielen Quellen dargelegt, wie auch in Watkinson, John, The Art of Digital Audio., Focal Press, London (1988). Ein analoges Audiosignal x(t) ist schematisch in 1 dargestellt. Die horizontale Achse stellt die Zeit dar. Die Amplitude des Signals zu einer Zeit t ist auf der vertikalen Achse gezeigt. Die Skala der Zeitachse ist in Millisekunden aufgetragen, so sind ungefähr zwei Tausendstel Sekunden eines Audiosignals in 1 schematisch dargestellt. Ein erster Grundschritt bei der Speicherung und Übertragung des analogen Audiosignals besteht im Abtasten des Signals zu diskreten Signalbestandteilen, die dann weiter verarbeitet werden.
  • Das Abtasten des Signals x(t) ist schematisch in 2 dargestellt. Das Signal x(t) wird in vielen diskreten Zeitmomenten ausgewertet, z.B. mit einer Rate von 48 kHz. Beim Abtasten bedeutet dies, dass die Amplitude des Signals x(t) achtundvierzigtausend mal pro Sekunde festgestellt und aufgezeichnet wird. So wird das Signal x(t) in der Zeit einer msec (1 × 10–3 sec.) achtundvierzig mal abgetastet. Das Ergebnis ist eine zeitliche Abfolge x(n) von Amplituden, wie in 2 dargestellt ist, mit Lücken zwischen den Amplituden für die Anteile des analogen Audiosignals x(t), die nicht gemessen wurden. Wenn die Abtastgeschwindigkeit gegenüber den zeitweisen Schwankungen im analogen Signal hoch genug ist, dann folgen die absoluten Werte, auch Magnituden genannt, der Abtastwerte im allgemeinen der Form des analogen Signals. Wie 2 zeigt, folgen die Abtastwerte dem Signal x(t) ziemlich genau.
  • Die Skizze eines allgemeinen Verfahrens zur Verarbeitung eines digitalen Signals ist schematisch in 4a dargestellt. Der erste Schritt, ein Audiosignal zu gewinnen, ist bei 99 dargestellt, der Abtastschritt ist bei 102 angegeben. Wenn das Signal erst einmal abgetastet ist, wird es typischerweise aus der Zeitdomäne, die in 1 und 2 dargestellte Domäne, in eine andere Domäne transformiert, die die Analyse ermöglicht. Ein Zeitsignal kann typischerweise als eine Summe einer Anzahl einfacher harmonischer Zeitfunktionen ausgedrückt werden, wie z.B. cosωt und sinωt, jeweils für die verschiedenen harmonischen Frequenzen von ω. Die Darstellung eines zeitvariablen Signals als eine Serie harmonischer Funktionen wird allgemein in Feynman, R., Leighton, R., und Sands, M., The Feynman Lectures on Physics, Addison-Wesley Publishing Company, Reading, Massachusettes (1963), Bd. I, § 50 abgehandelt.
  • Es gibt verschiedene Transformationsmethoden (manchmal als "Teilbandmethoden" bezeichnet), die hinlänglich bekannt sind. Baylon, David and Lim, Jae, "Transform/Subband Analysis and Synthesis of Signals", S. 540–544, 2ssPA90, Gold Coast, Australia, Aug. 27–31 (1990). Eine solches Verfahren des Löschens des Zeitbereichsaliasing (Time-Domain Aliasing Cancellation Method, "TDAC"). Eine andere solche Transformation ist als diskrete Cosinustransformation (Discrete Cosine Transform, "DCT") bekannt. Die Transformation wird erreicht, indem eine Transformationsfunktion auf das Originalsignal angewendet wird. Ein Beispiel einer DCT-Transformation ist:
    Figure 00030001
    sonst,
    steht k darin symbolisch für die Frequenzvariable und N für die Anzahl von Abtastwerten im Fenster.
  • Die Transformation erzeugt eine Reihe von Amplitudenkoeffizienten einer anderen als einer Variablen der Zeit, typischerweise eine Variable der Frequenz. Die Koeffizienten können sowohl real als auch komplex bestimmt werden. (Wenn X(k) komplex bewertet wird, kann die vorliegende Erfindung beispielsweise gesondert auf reale und imaginäre Teile von X(k) oder gesondert auf absoluten Wert, oder Magnitude, und Phasenteile von X(k) angewendet werden. Zu Diskussionszwecken wird jedoch angenommen, dass X(k) real bestimmt wird.) Eine charakteristische graphische Darstellung eines Anteils des zu X(k) transformierten Signals x(n) ist schematisch in 3 dargestellt. Wenn die Umkehrung der Transformationsoperation auf das transformierte Signal X(k) angewandt wird, wird das ursprüngliche abgetastete Signal x(n) erzeugt.
  • Die Transformation wird durchgeführt, indem die Transformationsfunktion auf einen zeitlichen Abschnitt des abgetasteten analogen Signals x(n) angewendet wird. Der Abschnitt (als "Rahmen" bekannt) wird ausgewählt, indem ein Fenster bei 104 auf x(n) gelegt wird. Dazu eignen sich verschiedene Fenstertechniken. Die Fenster können aufeinanderfolgend angewendet werden, häufiger jedoch überlappen sie sich. Das Fenster muss zur Transformationsmethode, in einem typischen Fall zur TDAC-Methode, passen. Wie in 2 gezeigt ist, ist ein Fenster W1(n) auf x(n) gelegt und umfasst achtundvierzig Abtastwerte bei einer Dauer von einer msec (1 × 10–3 sec.). (Zu Zwecken der Darstellung wurden nur achtundvierzig Abtastwerte gezeigt. In einer typischen Anwendung umfasst ein Fenster viel mehr Abtastwerte als achtundvierzig). Das Fenster W2(n) wird über die folgende msec gelegt. Die Fenster überlappen sich normalerweise, die nicht überlappenden Fenster sind nur zu Zwecken der Darstellung gezeigt. Die Transformation von Signalen von einer Domäne in eine andere, beispielsweise von Zeit zu Frequenz, wird in vielen Grundlagentexten diskutiert, darunter: Oppenheim, A. V., und Schafer, R. W., Digital Signal Processing, Englewood Cliffs, N.J. Prentice Hall (1975); Rabiner, L. R., Gold, B., Theory and Application of Digital Signal Processing, Englewood Cliffs, N.J., Prentice Hall, (1975).
  • Die bei 106 in 4a angegebene Anwendung der Transformation auf das Fenster des abgetasteten Signals x(n) ergibt für einen Bereich diskreter Frequenzen eine Reihe von Koeffizienten. Jeder Koeffizient des transformierten Signalrahmens, stellt die Amplitude einer Komponente des transformierten Signals bei der angegebenen Frequenz dar. Die Anzahl der Frequenzkomponenten ist bei jedem Rahmen typischerweise dieselbe. Selbstverständlich differieren die Amplituden entsprechender Frequenzen von Segment zu Segment.
  • Wie in 3 gezeigt ist, ist das Signal X(k) eine Vielzahl von Amplituden bei diskreten Frequenzen. Dieses Signal wird hier als ein "Spektrum" des Originalsignals bezeichnet. Gemäss bekannter Methoden besteht der nächste Schritt im Codieren der Amplituden für jede der Frequenzen nach einem Binärcode und darin, die codierten Amplituden zu übertragen oder zu speichern.
  • Eine wichtige Aufgabe beim Codieren von Signalen besteht darin, die feste Anzahl verfügbarer Bits der Amplitudenspezifikation der Koeffizienten zuzuteilen. Die Anzahl der einem Koeffizienten oder einem anderen Signalbestandteil zugeordneten Bits, wird hier als die "zugeteilte Anzahl von Bits" dieses Koeffizienten oder Signalbestandteils bezeichnet. Dieser Schritt ist mit Bezug auf die anderen Schritte bei 107 in 4a dargestellt. Im allgemeinen ist für jeden Rahmen eine feste Anzahl N an Bits verfügbar. N wird durch Überlegungen wie die folgenden bestimmt: die Bandbreite des Kommunikationskanals, über den die Daten übertragen werden; oder die Kapazität des Speichermediums; oder die Menge an notwendigen Fehlerkorrekturen. Wie oben erwähnt wurde, erzeugt jeder Rahmen dieselbe Anzahl C an Koeffizienten (selbst wenn die Amplitude einiger Koeffizienten auch Null sein kann).
  • So besteht eine einfache Methode, die N verfügbaren Bits zuzuteilen, darin, dass sie gleichmäßig auf die Koeffizienten C aufgeteilt werden, so dass jeder Koeffizient durch N/C Bits spezifiziert werden kann. (Für Diskussionszwecke wird angenommen, dass N/C eine ganze Zahl ist.) So wäre also bei der Betrachtung des transformierten Signals X(k), wie in 3 gezeigt, der Koeffizient 32 mit der Amplitude von ca. einhundert in Form eines Codeworts mit derselben Anzahl an Bits (N/C) wie der Koeffizient 34 vorhanden, der eine sehr viel kleinere Amplitude von ca. zehn hat. Gemäss den meisten Codiermethoden, werden mehr Bits zum Spezifizieren oder Codieren einer Zahl in einem größeren Bereich benötigt, als zur Spezifizierung einer Zahl in einem kleineren Bereich notwendig sind, vorausgesetzt, beide werden mit derselben Genauigkeit spezifiziert. Um beispielsweise ganze Zahlen zwischen null und einhundert mit absoluter Genauigkeit mit einem Binärcode zu codieren, werden sieben Bits benötigt, während 4 Bits nötig sind, um ganze Zahlen zwischen null und zehn zu spezifizieren. Wenn also jedem Koeffizienten im Signal sieben Bits zugeteilt werden, wären drei Bits bei jedem Koeffizienten, der mit nur vier Bits hätte spezifiziert werden können, vergeudet. Wo nur eine beschränkte Anzahl an verfügbaren Bits auf viele Koeffizienten aufgeteilt werden kann, ist es eher von Bedeutung, Bits einzusparen als zu verschwenden. Die Bitvergeudung kann reduziert werden, wenn der Wertebereich genau bekannt ist.
  • Es gibt verschiedene bekannte Methoden, um jedem Koeffizienten eine Anzahl von Bits zuzuordnen. Alle diese bekannten Methoden führen jedoch entweder zu einer beträchtlichen Vergeudung von Bits oder zu einer beträchtlichen Einbuße bei der Genauigkeit der Quantisierung der Koeffizentenwerte. Eine solche Methode ist in der Schrift mit dem Titel "High Quality Audio Transform Coding at 128 Kbits/s", Davidson, G., Fielder, L., und Antill, M., der Dolby Laboratories, Inc., ICASSP, S. 1117–1120, April 3–6. Albuquerque, New Mexico (1990) beschrieben (auf die hier unter dem Begriff "Dolby-Schrift" Bezug genommen wird).
  • Nach diesem Verfahren werden die Transformationskoeffizienten in Bändern zusammengefasst, wobei die Bandbreiten durch Bandgrenzenanalyse bestimmt werden. Dies ist zum Beispiel in der EP-A-421 259 offenbart. Transformationskoeffizienten innerhalb eines Bandes werden in eine Bandblockdarstellung mit Fließkomma (Exponent und Mantisse) umgewandelt. Die Exponenten liefern einen Schätzwert der logarithmisch-spektralen Hüllkurve des untersuchten Audiorahmens und werden als Nebeninformation an den Decoder übertragen.
  • Die logarithmisch-spektrale Hüllkurve wird in der dynamischen Bitzuteilungsroutine eingesetzt, die für einen adaptiven Koeffizientenquantisierer Schrittgrößeninformation ableitet. Jedem Rahmen ist dieselbe Anzahl N an Bits zugeteilt. Die dynamische Bitzuteilungsroutine verwendet nur den Exponenten der höchsten Spektralamplitude jedes Bands zur Erhöhung der Quantisiererauflösung für psychoakustisch relevante Bänder. Die Mantisse jedes Bands wird zu einer Bitauflösung quantisiert, die von der Summe einer groben Festbitkomponente und einer feinen, dynamisch zugeteilten Komponente bestimmt wird. Die Festbitkomponente wird typischerweise unabhängig vom speziellen Rahmen festgelegt, aber jedoch abhängig von der Signalart und dem betreffenden Rahmen. Niedrigere Frequenzbänder können zum Beispiel aufgrund der Festbitkomponente im allgemeinen mehr Bits aufnehmen. Die dynamisch zugeteilte Komponente basiert auf dem Spitzenexponent des Bands. Die logarithmisch-spektralen Schätzdaten werden zur Übertragung an den Decoder mit den Bits mit fester und adaptiver Mantisse multiplexiert.
  • So führt diese Methode eine Rohanalyse der größten Amplitude eines Koeffizienten in einem Band des Signals durch und verwendet die Grobschätzung, um diesem Band die Anzahl an Bits zuzuweisen. Die Grobschätzung besagt nur den Integralteil der zweiten Potenz des Koeffizienten. Ist der Koeffizient beispielsweise sieben, legt die Grobschätzung den Maximalwert des Koeffizienten im Band auf 22 bis 23 (vier und acht) fest, oder, falls er fünfundzwanzig ist, auf 24 bis 25 (sechzehn und dreiundzwanzig). Die Grobschätzung (die eine ungenaue Schätzung ist) verursacht zwei Probleme: die Bitzuteilung ist ungenau; die zugeteilten Bits werden nicht effizient verwendet, da der Wertebereich für jeden vorhandenen Koeffizienten nicht genau bekannt ist. Bei der obigen Vorgehensweise wird jeder Koeffizient im Band mit demselben Genauigkeitsgrad spezifiziert wie die anderen Koeffizienten im Band. Ferner werden Daten hinsichtlich der Koeffizienten mit Maximalamplitude in den Bändern in zwei Stufen codiert: zunächst werden die Exponenten codiert und als Nebeninformation übertragen; dann wird die Mantisse zusammen mit den Mantissen der anderen Koeffizienten übertragen.
  • Zusätzlich zur Bestimmung wie viele Bits jedem Koeffizienten zum Codieren seiner Amplitude zuzuteilen sind, muss eine Codierungmethode auch den gesamten Amplitudenbereich in eine Anzahl von Teilbereichen unterteilen, wie in 4a bei 108 gezeigt ist, und bei 109 jedem Teilbereich einen Code zuteilen. Die Anzahl der Bits im Code ist gleich der Anzahl der jedem Koeffizienten zugeteilten Bits. Diese Teilbereiche werden typischerweise als "Quantisierungspegel" bezeichnet, da die tatsächlichen Amplituden nach der Codierung, Übertragung oder Speicherung und Decodierung in die verfügbaren Pegel bzw. "Rekonstruktionspegel" quantisiert werden. Wenn beispielsweise für jeden Koeffizienten drei Bits zur Verfügung stehen, dann können 23 oder 8 Rekonstruktionspegel identifiziert werden.
  • 5 zeigt ein einfaches Schema zur Zuteilung eines Dreibit-Codeworts für jeweils acht Bereiche der Amplitude zwischen 0 und 100. Das Codewort 000 wird allen Koeffizienten zugewiesen, deren transformierte Amplitude wie in 3 gezeigt, zwischen 0 und 12,5 liegt. So werden alle Koeffizienten zwischen 0 und 12,5 mit demselben Wert quantisiert, charakteristischerweise mit dem Mittelwert 6,25. Das Codewort 001 wird allen Koeffizienten zwischen 12,5 und 25,0 zugewiesen, die alle auf den Wert 18,75 quantisiert werden. Auf ähnliche Weise wird das Codewort 100 allen Koeffizienten zwischen 50,0 und 62,5 zugewiesen, die alle auf den Wert 56,25 quantisiert werden. Statt den Koeffizienten gleich lange Codewörter mit gleichförmigen Quantisierungspegeln zuzuweisen, ist es auch bekannt, zur Codierung jedem Koeffizienten unterschiedlich lange Codewörter zuzuweisen und auf die codierten Koeffizienten ungleichförmige Quantisierungspegel anzuwenden.
  • Es ist auch vorteilhaft, einen Maskierungspegel festzulegen. Der Maskierungspegel steht mit der menschlichen Wahrnehmung eines akustischen Signals in Zusammenhang. Bei einem gegebenen akustischen Signal ist es möglich, den Grad der Signalverzerrung ungefähr zu berechnen (z.B. Quantisierungsrauschen), der aufgrund des Signals nicht gehört oder wahrgenommen wird. Das ist in verschiedenen Anwendungen von Vorteil. Beispielsweise kann eine gewisse Signalverzerrung hingenommen werden, die der Mensch beim Hören nicht bemerkt. Der Maskierungspegel kann so bei der Zuteilung der verfügbaren Bits zu verschiedenen Koeffizienten eingesetzt werden.
  • Der gesamte Grundprozess der Digitalisierung eines Audiosignals und der Synthetisierung eines Audiosignals aus codierten digitalen Daten ist schematisch in 4a dargestellt, die Grundvorrichtung ist schematisch in 4b dargestellt. Ein Audiosignal wie Musik, Sprache, Verkehrslärm, etc., wird bei 99 von einem bekannten Gerät, wie z.B. einem Mikrophon, aufgenommen. Das Audiosignal x(t) wird bei 102 wie oben beschrieben und in 2 dargestellt, abgetastet. Das abgetastete Signal x(n) wird mit einem Fenster versehen 104 und transformiert 106. Nach der Transformation (die eine Teilbanddarstellung sein kann), werden die Bits unter den Koeffizienten aufgeteilt 107 und die Amplituden der Koeffizienten bei 108 quantisiert, indem jeder einen Rekonstruktionspegel zugewiesen bekommt, und diese quantisierten Punkte werden dann bei 109 mit binären Codewörtern codiert. An dieser Stelle werden die übertragenen Daten 112 entweder über einen Kommunikationskanal oder zu einer Speichervorrichtung. übertragen.
  • Die vorstehenden Schritte 102, 104, 106, 107, 108, 109 und 112 finden in einer Hardware statt, die im allgemeinen als "Transmitter", wie bei 150 in 4b gezeigt, beschrieben wird. Der Transmitter umfasst typischerweise einen (auch als Encoder bezeichneten) Signalcodierer 156 und kann weitere Elemente umfassen, die das codierte Signal zur Übertragung über einen Kanal 160 weiter aufbereiten. Alle der oben erwähnten Schritte finden jedoch im Allgemeinen im Codierer statt, der selbst vielfache Komponenten enthalten kann.
  • Gegebenenfalls können die Daten am anderen Ende des Datenkanals 160 von einem Receiver 164 empfangen oder von der Speichervorrichtung abgefragt werden. Es ist hinlänglich bekannt, dass der Receiver einen Decodierer 166 umfasst, der den Codiervorgang des Signalcodierers 156 mit einiger Genauigkeit umkehren kann. Der Receiver umfasst typischerweise auch andere, nicht gezeigte Elemente zur Umkehrung der Wirkung der zusätzlichen Transmitterelemente, die das codierte Signal zur Übertragung über den Kanal 160 aufbereiten. Der Signaldecodierer 166 ist mit einer Codeworttabelle ausgestattet, die die Codewörter mit dem Rekonstruktionspegel in Zusammenhang bringt. Die Daten werden aus binären in quantisierte Rekonstruktionsamplitudenwerte decodiert 114. Eine umgekehrte Transformation wird auf jede Reihe quantisierter Amplitudenwerte angewandt 116 und ergeben ein Signal, das einem Rahmen von x(n) ähnelt, d.h. es befindet sich in der Zeitdomäne und besteht bei jedem umkehrtransformierten Ergebnis aus einer diskreten Anzahl von Werten. Das Signal wird jedoch wegen der Quantisierung in Rekonstruktionspegel und der spezifischen verwendeten Darstellung nicht genau dasselbe wie der entsprechende Rahmen von x(n) sein. Der Unterschied zwischen dem ursprünglichen und dem Wert der Rekonstruktionspegel kann typischerweise nicht wieder hergestellt werden. Ein Strom umkehrtransformierter Rahmen wird kombiniert 118 und ein Audiosignal wieder hergestellt 120 unter der Verwendung eines bekannten Geräts wie z.B. einem D/A-Wandler und einem Lautsprecher.
  • Aufgaben der Erfindung
  • Die verschiedenen Aufgaben der Erfindung umfassen das Bereitstellen eines Verfahrens und eines Geräts zum Codieren und Decodieren digitaler NF-Signale: womit eine effizientere Bitzuteilung möglich wird, so dass im allgemeinen weniger Bits verwendet werden, um Koeffizienten mit kleineren Magnituden zu spezifizieren, als für die Spezifizierung größerer Koeffizienten verwendet werden; das eine Quantisierung der Amplitude der Koeffizienten vorsieht, derart, dass Bänder mit größeren Koeffizienten – im Unterschied zu Bändern mit nur kleineren Koeffizienten – in Rekonstruktionspegel aufgeteilt werden, so dass die kleineren als auch die größeren Koeffizienten genauer spezifiziert werden können als es der Fall wäre, wenn dieselben Rekonstruktionspegel für alle Koeffizienten verwendet würden; das eine genaue Schätzung der Maskierungspegel ermöglicht; das eine, auf dem Maskierungspegel beruhende, effiziente Zuteilung von Bits ermöglicht; das bis in kleine Mengen digitalisierter Daten Fehler stabil aufspürt und den Fehler im Hinblick auf diese Daten auf einen kleinen, bekannten Bereich eingrenzt; und das die Notwendigkeit, Koeffizienten immer wieder zu codieren minimiert und alles zusammen einen hocheffizienten Einsatz der zur Verfügung stehen Bits zulässt.
  • Kurze Beschreibung der Erfindung
  • Erfindungsgemäß werden Verfahren bereitgestellt, wie in Anspruch 1 dargelegt ist, und in einem ersten bevorzugten Beispiel zeigt die Anmeldung ein Verfahren zum Codieren eines ausgewählten Aspekts eines Signals, das durch Signalelemente definiert ist, die in mindestens einer Dimension diskret sind, wobei das Verfahren die folgenden Schritte umfasst: das Signal in mindestens ein Band aufzuteilen, wobei zumindest eines dieses zumindest einen Bandes eine Mehrzahl an benachbarten Signalelementen umfasst; in mindestens einem Band ein Signalelement zu identifizieren, das gegenüber anderen Signalelementen in diesem Band einen absoluten Wert (Magnitude) mit einer vorausgewählten Größe hat, und dieses Signalelement als "Maßstabs"-Signalelement (hier auch "Yardstick" genannt) für dieses Band festzulegen; und die örtliche Lage mindestens eines Maßstabs-Signalelements im Hinblick auf seine Position in dem entsprechenden Band zu codieren.
  • In einem zweiten bevorzugten Beispiel zeigt die Anmeldung ein Verfahren zum Decodieren eines Codes, der einen ausgewählten Aspekt eines Signals darstellt, das durch Signalelemente definiert ist, die zumindest in einer Dimension diskret sind, das durch ein, die folgenden Schritte umfassendes Verfahren codiert wurde: das Signal in mindestens ein Band aufzuteilen, wobei zumindest eines dieses zumindest einen Bandes eine Mehrzahl an benachbarten Signalelementen umfasst; in mindestens einem Band ein Signalelement zu identifizieren, das gegenüber anderen Signalelementen in diesem Band einen absoluten Wert (Magnitude) mit einer vorausgewählten Größe hat, und dieses Signalelement als "Maßstabs"-Signalelement für dieses Band festzulegen; und die örtliche Lage mindestens eines Maßstabs-Signalelements im Hinblick auf seine Position in dem entsprechenden Band zu codieren; und eine Funktion dieser codierten örtlichen Lage dieses mindestens einen Maßstabs-Signalelements zum Codieren des ausgewählten Aspektes dieses Signals zu verwenden; wobei das Verfahren des Decodierens den Schritt umfasst, den codierten Aspekt des Signals auf einer Funktion der örtlichen Lage des Maßstabs-Signalelements beruhend zu übersetzen, die genau umgekehrt zu der Funktion der örtlichen Lage ist, die verwendet wurde, um den ausgewählten Aspekt des Signals zu codieren.
  • In einem dritten bevorzugten Beispiel zeigt die Anmeldung ein Gerät zum Codieren eines ausgewählten Aspekts eines Signals, das durch Signalelemente definiert ist, die zumindest in einer Dimension diskret sind, wobei dieses Gerät folgendes umfasst: Mittel zum Aufteilen des Signals in mindestens ein Band, wobei mindestens eines dieses zumindest einen Bandes eine Mehrzahl an benachbarten Signalelementen umfasst; in mindestens einem Band ein Signalelement zu identifizieren, das gegenüber anderen Signalelementen in diesem Band eine Magnitude mit einer vorausgewählten Größe hat, und Mittel, um dieses Signalelement als "Maßstabs"-Signalelement für dieses Band festzulegen; Mittel zum Codieren der örtlichen Lage mindestens eines Maßstabs-Signalelements im Hinblick auf seine Position in dem entsprechenden Band; und Mittel zum Quantisieren der Magnitude dieses zumindest einen Maßstabs-Signalelements, für das die örtliche Lage codiert wurde.
  • In einem vierten bevorzugten Beispiel zeigt die Anmeldung Gerät zum Decodieren eines Codes, der einen ausgewählten Aspekt eines Signals darstellt, das durch Signalelemente definiert ist, die zumindest in einer Dimension diskret sind, das durch ein Verfahren codiert wurde, das folgende Schritte umfasst: das Signal in mindestens ein Band aufzuteilen, wobei zumindest eines dieses zumindest einen Bandes eine Mehrzahl an benachbarten Signalelementen umfasst; in mindestens einem Band ein Signalelement zu identifizieren, das gegenüber anderen Signalelementen in diesem Band eine Magnitude mit einer vorausgewählten Größe hat, und dieses Signalelement als "Maßstabs"-Signalelement für dieses Band festzulegen; und die örtliche Lage mindestens eines Maßstabs-Signalelements im Hinblick auf seine Position in dem entsprechenden Band zu codieren; und eine Funktion dieser codierten örtlichen Lage dieses mindestens einen Maßstabs-Signalelements zum Codieren des ausgewählten Aspektes dieses Signals zu verwenden; wobei das Decodiergerät Mittel zum Übersetzen des codierten Aspekts des Signals umfasst, die auf einer Funktion der örtlichen Lage des Maßstabs-Signalelements beruhen, die genau umgekehrt zur Funktion der örtlichen Lage ist, die zum Codieren des ausgewählten Aspekts des Signals verwendet wurde.
  • In einem fünften bevorzugten Beispiel zeigt die Anmeldung ein Verfahren zum Codieren eines ausgewählten Signalelements eines Signals, das durch Signalelemente definiert ist, die zumindest in einer Dimension diskret sind, wobei dieses Verfahren die folgenden Schritte umfasst: das Signal in eine Mehrzahl von Bändern aufzuteilen, wobei zumindest ein Band eine Mehrzahl an benachbarten Signalelementen umfasst; in jedem Band ein Signalelement zu identifizieren, das gegenüber anderen Signalelementen in diesem Band die größte Magnitude hat, und dieses Signalelement als "Maßstabs"-Signalelement für dieses Band festzulegen; die Magnitude jedes Maßstabs-Signalelements in einen ersten Genauigkeitsgrad zu quantisieren; dem ausgewählten Signalelement eine Signalelement-Bitzuteilung zuzuweisen, die eine Funktion der quantisierten Magnituden dieser Maßstabs-Signalelemente ist, wobei die Signalelement-Bitzuteilung so gewählt ist, dass das ausgewählte Signalelement, das diese Signalelement-Bitzuteilung verwendet, in einem zweiten Genauigkeitsgrad ist, der unter dem ersten Genauigkeitsgrad liegt.
  • In einem sechsten bevorzugten Beispiel zeigt die Anmeldung ein Verfahren zum Codieren eines ausgewählten Signalelements eines Signals, das durch Signalelemente definiert ist, die zumindest in einer Dimension diskret sind, wobei dieses Verfahren die folgenden Schritte umfasst: das Signal in eine Mehrzahl von Bändern aufzuteilen, wobei zumindest ein Band eine Mehrzahl an benachbarten Signalelementen umfasst, wobei eines der Bänder das ausgewählte Signalelement enthält; in jedem Band ein Signalelement zu identifizieren, das gegenüber den anderen Signalelementen in diesem Band die größte Magnitude hat, und dieses Signalelement als "Maßstabs"-Signalelement für dieses Band festzulegen; die Magnitude jedes Maßstabs-Signalelements nur einmal zu quantisieren; dem ausgewählten Signalelement eine Signalelement-Bitzuteilung zuzuweisen, die eine Funktion der quantisierten Magnituden der Maßstabs-Signalelemente ist.
  • In einem siebten bevorzugten Beispiel zeigt die Anmeldung ein Verfahren zum Decodieren eines ausgewählten Signalelements, das durch eines der oben erwähnten bevorzugten Verfahren codiert wurde, wobei das Verfahren zum Decodieren den Schritt umfasst, das Codewort zu übersetzen, das durch das Verfahren des Codierens auf der Funktion der quantisierten Magnituden der Maßstabs-Signalelemente beruhend erzeugt wurde, die genau umgekehrt zu der Funktion der quantisierten Magnituden ist, die verwendet wurde, um dem ausgewählten Signalelement Bits zuzuweisen.
  • In einem achten bevorzugten Beispiel zeigt die Anmeldung ein Gerät zum Codieren eines ausgewählten Signalelements eines Signals, das durch Signalelemente definiert ist, die zumindest in einer Dimension diskret sind, wobei dieses Gerät folgendes umfasst: Mittel zum Aufteilen des Signals in eine Mehrzahl von Bänder, wobei zumindest ein Band eine Mehrzahl an benachbarten Signalelementen umfasst, wobei eines der Bänder das ausgewählte Signalelement enthält; Mittel, um in jedem Band ein Signalelement zu identifizieren, das die größte Magnitude aller Signalelemente in dem Band hat, und dieses Signalelement als "Maßstabs"-Signalelement für dieses Band festzulegen; Mittel zum Quantisieren der Magnitude jedes Maßstabs-Signalelements in einem ersten Genauigkeitsgrad; Mittel, um dem ausgewählten Signalelement eine Signalelement-Bitzuteilung zuzuweisen, die eine Funktion der quantisierten Magnituden des Maßstabs-Signalelements ist, wobei die Signalelement-Bitzuteilung so gewählt ist, dass die Quantisierung des ausgewählten Signalelements, die die Signalelement-Bitzuteilung verwendet, in einem zweiten Genauigkeitsgrad ist, der unter dem ersten Genauigkeitsgrad liegt.
  • In einem neunten bevorzugten Beispiel zeigt die Anmeldung ein Gerät zum Decodieren eines Codewortes, das ein ausgewähltes Signalelement eines Signals darstellt, das durch eines oben erwähntes Verfahren codiert wurde, wobei das Gerät Mittel zum Übersetzen des Codewortes umfasst, die auf einer Funktion der quantisierten Magnituden der Maßstabs-Signalelemente beruhen, die genau umgekehrt zur Funktion der quantisierten Magnituden ist, die dazu verwendet wurde, dem ausgewählten Signalelement Bits zuzuteilen.
  • In einem zehnten bevorzugten Beispiel zeigt die Anmeldung ein Verfahren zum Codieren eines ausgewählten Signalelements eines Signals, das durch Signalelemente definiert ist, die zumindest in einer Dimension diskret sind, wobei dieses Verfahren die folgenden Schritte umfasst: das Signal in eine Mehrzahl von Bändern aufzuteilen, wobei mindestens eines der Bänder eine Mehrzahl von benachbarten Signalelementen umfasst; in jedem Band ein Signalelement zu identifizieren, das von allen Signalelementen die größte Magnitude in diesem Band hat, und dieses Signalelement als "Maßstabs"-Signalelement für dieses Band festzulegen; die Magnitude jedes Maßstabs-Signalelements in einem ersten Genauigkeitsgrad zu quantisieren; und dem ausgewählten Signalelement eine Signalelement-Bitzuteilung zuzuweisen, die eine Funktion der quantisierten Magnituden des Maßstabs-Signalelements ist, wobei die Signalelement-Bitzuteilung so gewählt ist, dass die Quantisierung des ausgewählten Signalelements, die die Signalelement-Bitzuteilung verwendet, in einem zweiten Genauigkeitsgrad ist, der unter dem ersten Genauigkeitsgrad liegt.
  • In einem elften bevorzugten Beispiel zeigt die Anmeldung ein Verfahren zum Codieren eines ausgewählten Signalelements eines Signals, das durch Signalelemente definiert ist, die zumindest in einer Dimension diskret sind, wobei dieses Verfahren die folgenden Schritte umfasst: das Signal in eine Mehrzahl von Bändern aufzuteilen, wobei zumindest ein Band eine Mehrzahl an benachbarten Signalelementen umfasst, wobei eines der Bänder das ausgewählte Signalelement enthält; in jedem Band ein Signalelement zu identifizieren, das von allen Signalelementen in diesem Band die größte Magnitude hat, und dieses Signalelement als "Maßstabs"-Signalelement für dieses Band festzulegen; die Magnitude jedes Maßstabs-Signalelements nur einmal zu quantisieren; dem ausgewählten Signalelement eine Signalelement-Bitzuteilung zuzuweisen, die eine Funktion der quantisierten Magnituden der Maßstabs-Signalelemente ist.
  • In einem zwölften bevorzugten Beispiel zeigt die Anmeldung ein Verfahren zum Codieren eines ausgewählten Signalelements eines Signals, das durch eines der oben erwähnten bevorzugten Verfahren codiert wurde, wobei das Verfahren zum Decodieren den Schritt umfasst, ein Codewort zu übersetzen, das durch das Verfahren des Codieren auf einer Funktion der quantisierten Magnituden der Maßstabs-Signalelemente beruhend erzeugt wurde, die genau umgekehrt zu der Funktion der quantisierten Magnituden ist, die verwendet wurde, um dem ausgewählten Signalelement Bits zuzuweisen.
  • In einem dreizehnten bevorzugten Beispiel zeigt die Anmeldung ein Gerät zum Codieren eines ausgewählten Signalelements eines Signals, das durch Signalelemente definiert ist, die zumindest in einer Dimension diskret sind, wobei dieses Gerät folgendes umfasst: Mittel zum Aufteilen des Signals in eine Mehrzahl von Bänder, wobei zumindest ein Band eine Mehrzahl an benachbarten Signalelementen umfasst, wobei eines der Bänder das ausgewählte Signalelement enthält; Mittel, um in jedem Band ein Signalelement zu identifizieren, das die größte Magnitude aller Signalelemente in dem Band hat, und dieses Signalelement als "Maßstabs"-Signalelement für dieses Band festzulegen; Mittel zum Quantisieren der Magnitude jedes Maßstabs-Signalelements in einem ersten Genauigkeitsgrad; Mittel, um dem ausgewählten Signalelement eine Signalelement-Bitzuteilung zuzuweisen, die eine Funktion der quantisierten Magnituden des Maßstabs-Signalelements ist, wobei die Signalelement-Bitzuteilung so gewählt ist, dass die Quantisierung des ausgewählten Signalelements, die die Signalelement-Bitzuteilung verwendet, in einem zweiten Genauigkeitsgrad ist, der unter dem ersten Genauigkeitsgrad liegt.
  • In einem vierzehnten bevorzugten Beispiel zeigt die Anmeldung ein Gerät zum Decodieren eines Codewortes, das ein ausgewähltes Signalelement eines Signals darstellt, das durch ein oben erwähntes Verfahren codiert wurde, wobei das Gerät Mittel zum Übersetzen des Codewortes umfasst, die auf einer Funktion der quantisierten Magnituden der Maßstabs-Signalelemente beruhen, die genau umgekehrt zur Funktion der quantisierten Magnituden ist, die dazu verwendet wurde, dem ausgewählten Signalelement Bits zuzuteilen.
  • Kurze Beschreibung der Figuren
  • 1 zeigt schematisch ein NF-Signal
  • 2 zeigt schematisch ein NF-Signal, das abgetastet wurde.
  • 3 zeigt schematisch das Spektrum eines NF-Signals, das aus der Zeitdomäne in die Frequenzdomäne transformiert wurde.
  • 4a zeigt schematisch die digitale Bearbeitung eines NF-Signals nach bekannten Verfahren.
  • 4b zeigt schematisch die Hardwareelemente eines bekannten digitalen Signalverarbeitungssystems.
  • 5 zeigt schematisch die Aufteilung von Koeffizientenamplituden in Rekonstruktionspegel und deren Zuteilung von Codewörtern nach aus dem Stand der Technik bekannten Verfahren.
  • 6 zeigt schematisch die Aufteilung eines Spektrums an NF-Signalen in Frequenzbänder gemäß dem Stand der Technik.
  • 7 zeigt schematisch das Spektrum von 6 nach Durchführung einer Skalierung, und ferner innerhalb von Bändern festgelegte Maßstabs-Koeffizienten.
  • 7a zeigt schematisch, wie die Maßstabs-Koeffizienten zur Erstellung einer Grobschätzung |X(k)|α verwendet werden.
  • 8 zeigt schematisch die Aufteilung der Amplitude von Koeffizienten in verschiedenen Bändern auf verschiedene Rekonstruktionspegel nach dem erfindungsgemäßen Verfahren.
  • 9a zeigt schematisch eine Alternative für die Zuweisung von Rekonstruktionspegeln zu einem Koeffizienten, der nur einen positiven Wert haben kann.
  • 9b zeigt schematisch eine andere Alternative für die Zuweisung von Rekonstruktionspegeln zu einem Koeffizienten, der nur einen positiven Wert haben kann.
  • 10a zeigt schematisch eine Alternative für die Zuweisung vom Rekonstruktionspegeln zu einem Koeffizienten, der entweder einen positiven oder einen negativen Wert haben kann.
  • 10b zeigt schematisch eine andere Alternative für die Zuweisung von Rekonstruktionspegeln zu einem Koeffizienten, der entweder einen positiven oder einen negativen Wert haben kann.
  • 11 zeigt schematisch wie die Magnituden von Maßstabs-Koeffizienten verwendet werden können, um die Anzahl an Bits für ein Band zuzuteilen.
  • 12 zeigt in den Teilen 12a, 12b und 12c schematisch die Schritte des erfindungsgemäßen Verfahrens.
  • 13 zeigt in den Teilen 13a und 13b schematisch die Komponenten des erfindungsgemäßen Geräts.
  • Genaue Beschreibung der bevorzugten erfindungsgemäßen Ausführungsformen
  • Eine erstes bevorzugtes Beispiel der Anmeldung zeigt ein Verfahrem zum Zuteilen von Bits zu einzelnen Koeffizienten, um die Magnitude (d.h. den absoluten Amplitudenwert) dieser Koeffizienten zu codieren. Gemäß dem anmeldungsgemäßen Verfahren, wird ein Audiosignal x(t) wie in 4a bei 99 erzielt, und mit einer zweckmäßigen Rate, wie z.B. 48 kHz wie bei 102, abgetastet, was x(n) ergibt. Das abgetastete Signal wird mit einem Fenster versehen und transformiert, wie bei 104 und 106, nach einer bekannten, zweckmäßigen Technik, wie beispielsweise TDAC oder DCT, unter Verwendung eines geeigneten Fensters mit einer typischen Größe, z.B. 512 oder 1024 Abtastwerte. Es ist selbstverständlich, dass andere Transformations- und Fenstertechniken ebenfalls im Rahmen der vorliegenden Erfindung liegen. Das Ergebnis ist ein Spektrum an Koeffizientensignalelementen in der Frequenzdomäne, wie in 3 dargestellt ist. Im vorliegenden Gebrauch soll der Begriff "Signalelemente" Anteile eines Signals im allgemeinen bedeuten. Sie können abgetastete Anteile eines untransformierten Signals sein oder Koeffizienten eines transformierten Signals, oder ein komplettes Signal selbst. Die Schritte des Verfahrens sind in Form eines Ablaufdiagramms in den 12a, 12b und 12c dargestellt.
  • Ein bedeutender Gesichtpunkt des erfindungsgemäßen Verfahrens ist dasjenige Verfahren, bei dem die Gesamtanzahl an Bits N unter der Gesamtanzahl an Koeffizienten C aufgeteilt werden. Gemäß dem erfindungsgemäßen Verfahren steht die Anzahl an zugeteilten Bits in engem Zusammenhang mit der Amplitude der Koeffizienten, die codiert werden sollen.
  • Der erste Schritt des Verfahrens besteht in der Aufteilung des Spektrums an Transformationskoeffizienten in X(k) in eine Anzahl B von Bändern, z.B. B gleich sechzehn oder sechsundzwanzig. Dieser Schritt ist in 12a bei 600 angegeben. Jedes Band muss nicht unbedingt dieselbe Anzahl an Koeffizienten haben. Es kann nämlich wünschenswert sein, in einigen Bändern mehr Frequenzkoeffizienten einzuschließen, wie beispielsweise in höheren Frequenzbändern, als in anderen, niedrigeren Frequenzbändern. In solch einem Fall ist es von Vorteil, ungefähr der sich ergebenden Bandgrenze zu folgen. Ein Beispiel des in zwei Bänder aufgeteilten Spektrums X(k) (wobei X(k) reale Werte hat) ist schematisch in 6 dargestellt. Andere typische Spektren können einen deutlicheren Unterschied in der Anzahl an Koeffizienten pro Band aufweisen, typischerweise mit einer relativ höheren Anzahl an Koeffizienten in den höheren Bändern als in den niedrigeren Bändern.
  • Wenn die Anzahl der Frequenzkoeffizienten in jedem Band nicht gleichmäßig ist, dann muss das Bandbreitenmuster jeden Bandes den Decodierelementen der anmeldungsgemäßen Vorrichtung bekannt sein oder mitgeteilt werden. Das ungleichmäßige Muster kann in einem Speicher eingestellt und gespeichert werden, auf den der Decodierer Zugriff hat. Falls sich jedoch die Bandbreite der Bänder aufgrund lokaler Charakteristika unentwegt ändert, muss der Decodierer über diese Schwankungen Bescheid wissen, typischerweise durch eine ausdrückliche Nachricht, die ihm das Muster mitteilt.
  • Wie in 6 dargestellt ist, ist das Spektrum in viele Bänder b1, b2, ... bB, aufgeteilt, angezeigt durch ein kleines dunkles Rechteck zwischen den Bändern. Wie oben dargelegt, ist es sinnvoll, wenn das Band aus einer Anzahl an Koeffizienten besteht, die der zweiten Potenz entspricht. An dieser Stelle ist es dann auch möglich, Frequenzen zu überspringen, die nicht von Belang sind, beispielsweise weil sie zu hoch sind, um vom menschlichen Gehör noch ausgemacht werden zu können.
  • Obwohl es für die Erfindung nicht notwendig ist, kann es zweckmäßig sein, die Spektrumskoeffizienten in einer Domäne zu analysieren, in der die Spektrumsmagnituden durch nicht-lineare Abbildung komprimiert sind, wie beispielsweise jede Magnitude in eine Bruchpotenz α, wie z.B. 1/2 oder eine logarithmische Transformation zu bringen. Der menschliche Gehörapparat scheint eine gewisse Art der Amplitudenkompression auszuführen. Nicht-lineares Abbilden wie Amplitudenkompression trägt auch zu einer gleichmäßigeren Verteilung der Amplituden bei, so dass ein gleichmäßiger Quantisierer effizienter ist. Nicht-lineares Abbilden, gefolgt von gleichmäßiger Quantisierung ist ein Beispiel für die hinlänglich bekannte nicht-gleichmäßige Quantisierung.
  • Der Schritt des nicht-linearen Abbildens ist in 12a bei 602 angegeben. Das transformierte Spektrum ist in 7 dargestellt, die sich durch die vertikale Skala von 6 unterscheidet.
  • In jedem Band des exponentiell skalierten Spektrums, wird der Koeffizient Cb1, Cb2, ... CbB mit der größten Magnitude (unter Nichtbeachtung des Vorzeichen) als "Maßstabs-Koeffizient" festgelegt. Dieser Schritt ist in 12a bei 608 angegeben. Die Maßstabs-Koeffizienten sind in 7 durch ein kleines Rechteck dargestellt, die den Kopf des Koeffizientenmarkierers einschließen. (In einer anderen, weiter unten besprochenen, bevorzugten Ausführungsform kann, anstatt den Koeffizienten, der der größte Koeffizient im Band ist, als Maßstabs-Koeffizienten festzulegen, auch ein anderer Koeffizient als Maßstab festgelegt werden. Dieser andere Koeffizient kann derjenige mit einer medianen oder mittleren Amplitude im Band sein, oder mit einer hohen; aber nicht der größten Magnitude im Band, wie beispielsweise der zweit- oder dritthöchsten. Die Ausführungsform, die den Koeffizienten mit der größten Magnitude als Maßstab festlegt, ist das vorherrschende weiter unten besprochene Beispiel und wird als erstes erläutert.)
  • Das erfindungsgemäße Verfahren bringt mehrere Ausführungsformen mit sich. Gemäß einer jeden wird die Magnitude der Maßstabs-Koeffizienten dazu verwendet, Bits effizient unter Koeffizienten aufzuteilen und auch, um die Anzahl und Platzierung der Rekonstruktionspegel festzulegen. Diese verschiedenen Ausführungsformen werden weiter unten ausführlich besprochen, sie sind in den 12a und 12b dargestellt. Diese Ausführungsformen umfassen insbesondere: bei 612, das Spektrum X(k) weiter in Teilbänder zu unterteilen; bei 614, die örtliche Lage und das Vorzeichen des Maßstabs-Koeffizienten genau zu quantisieren; und bei 616, 618 und 620 verschiedene Transformationen an diesen quantisierten Koeffizienten vorzunehmen, bevor Daten an den Decodierer übertragen werden. Das Grundverfahren der Erfindung verwendet in seiner weitesten Implementierung jedoch keine Teilbänder, geht also von der Teilbandentscheidung 610 zum Quantisierungsentscheidungsschritt 614 über. In diesem Grundverfahren wird nur die Magnitude der Maßstabs-Koeffizienten verwendet, und so geht das Verfahren also vom Quantisierungsentscheidungsschritt 614 zum Schritt der Magnitudentransformationsentscheidung 622 über. Die Magnituden müssen in diesem Stadium nicht unbedingt transformiert werden und deshalb geht das Grundverfahren direkt zu Schritt 624 über, bei dem die Magnitude der Maßstabs-Koeffizienten genau in Rekonstruktionspegel quantisiert werden.
  • Die Magnitude jedes Maßstabs-Koeffizienten wird in repräsentativen Fällen sehr genau quantisiert, genauer, als dies mit der Magnitude von Nicht-Maßstabs-Koeffizienten geschieht. In manchen Fällen äußert sich dieses genaue Vorgehen in einer Verwendung von (durchschnittlich) einer größeren Zahl an Bits zum Codieren eines Maßstabs-Koeffizienten, als (durchschnittlich) zum Codieren eines Nicht-Maßstabs-Koeffizienten. Wie jedoch nachstehend beschrieben wird, kann das bei einem Schritt der Nur-Maßstabs-Transformation, der bei Schritt 622 ausgeführt wird, nicht der Fall sein. Im allgemeinen ist die (durchschnittlich) höhere Genauigkeit der Maßstäbe durch eine geringere Divergenz zwischen dem ursprünglichen Koeffizientenwert und dem quantisierten Wert charakterisiert, im Gegensatz zur Divergenz zwischen den selben beiden (durchschnittlichen) Werten bei einem Nicht-Maßstabs-Koeffizienten.
  • Nach der Quantisierung werden die Maßstabs-Koeffizienten bei 626 (12b) in Codewörter codiert und bei 628 an den Receiver übertragen. Das Codierschema kann einfach sein, wie beispielsweise Anlegen der digitalen Darstellung der Position des Rekonstruktionspegels in einer von der niedrigsten bis zur höchsten Amplitude geordneten Reihe von Rekonstruktionspegeln. Alternativ kann ein komplizierteres Codierschema wie beispielsweise ein Codebuch eingesetzt werden. Wie es beim Receiver aus dem Stand der Technik der Fall ist, umfasst die erfindungsgemäße Vorrichtung einen mit einem Decodierer ausgestatteten Receiver, um die von der Codiervorrichtung ausgeführten Codierprozesse umzukehren. Wenn eine einfache Codiertechnik verwendet wird, kann der Receiver diese Technik einfach umkehren. Alternativ kann ein Codebuch vorgesehen werden, das die den Maßstabs-Koeffizienten zugeteilten Codewörter mit den Rekonstruktionspegeln in Zusammenhang bringt. Da die Maßstabs-Koeffizienten sehr genau quantisiert sind, wenn die Codewörter übersetzt und die Koeffizienten rekonstruiert sind, liegen sie sehr nahe bei den ursprünglichen Werten. (Der nächste, in 12b gezeigte Schritt 632 wird nur durchgeführt, wenn einer der Transformationsschritte 616, 618 oder 620 von 12a ausgeführt wurde. Die Ausführungsformen, bei denen diese Schritte ausgeführt werden, werden weiter unten erörtert.)
  • Die genau quantisierten Magnituden der Maßstabs-Koeffizienten werden eingesetzt, um den übrigen Koeffizienten im Band Bits zuzuteilen. Da in dieser zuerst diskutierten Ausführungsform jeder Maßstabs-Koeffizient derjenige mit der grössten Magnitude in dem Band ist, dem er angehört, ist bekannt, dass alle anderen Koeffizienten in dem Band eine Magnitude haben, die kleiner oder gleich derjenigen des Maßstabs-Koeffizienten ist. Ferner ist auch die Magnitude des Maßstabs-Koeffizienten sehr genau bekannt. So ist bekannt, wie viele Koeffizienten in dem Band codiert werden müssen, das den größten, den nächstgrößten, den kleinsten, usw., Amplitudenbereich hat. Aufbauend auf diesem Wissen können Bits effizient unter den Bändern aufgeteilt werden.
  • Die Bits können auf vielfältige Weise zugeteilt werden. Zwei wichtige allgemeine Verfahren sind: jedem Band Bits zuzuteilen, und dann jedem Koeffizienten in diesem Band; oder Bits direkt jedem Koeffizienten zuzuteilen, ohne vorher jedem Band Bits zuzuteilen. Gemäß einer Ausführungsart des ersten allgemeinen Verfahrens wird zunächst die Anzahl an Bits, die jedem einzelnen Band zugeteilt werden, bei 634 festgelegt. Eine höhere Zahl an Koeffizienten in einem Band erfordert allgemein eine höhere Anzahl an Bits zum Codieren aller Koeffizient dieses Bandes. Ähnlich erfordert eine höhere Durchschnittsmagnitude |X(k)|α der Koeffizienten in dem Band eine höhere Anzahl an Bits, um alle Koeffizienten dieses Bandes zu codieren. So wird ein grobes Maß der "Größe" jeden Bandes festgelegt, wobei "Größe" als Anzahl an Koeffizenten und Magnitude der Koeffizienten definiert wird, und dann werden die verfügbaren Bits entsprechend ihrer relativen Größen auf die Bänder aufgeteilt, wobei größere Bänder mehr Bits und kleinere Bänder weniger Bits erhalten.
  • Wie beispielsweise in 7a gezeigt ist, kann für eine grobe Schätzung angenommen werden, dass die Magnitude jedes Koeffizienten dieselbe ist wie der Maßstab für dieses Band. Das ist in 7a durch einen stark quer gestrichelten Kasten dargestellt, dessen Magnitude gleich dem absoluten Wert der Amplitude des Maßstabs-Koeffizienten ist. Wie aus einem Vergleich zwischen 7 und 7a hervorgeht, wird angenommen, dass alle Koeffizienten positiv sind, um zu einer groben Schätzung der Größe jeden Bandes zu gelangen. Mit Kenntnis der Anzahl aller Koeffizienten in jedem Band ist es dann möglich, eine Obergrenze für die Größe des Bandes festzulegen. In einem unverbindlichen Sinn ähnelt diese Analyse der Bestimmung des Energiegehalts des Bandes im Vergleich zum gesamten Energiegehalt des Rahmens. Wenn die relativen Größen erst einmal bestimmt sind, werden hinlänglich bekannte Techniken angewandt, um die verfügbaren Bits auf die Bänder entsprechend den geschätzten Größen aufzuteilen. Eine Technik ist in Lim, J. S., Two-Dimensional Signal and Image Processing, Prentice Hall, Englewood Cliffs, New Jersey (1990), S. 598 dargestellt. Erfahrungsgemäß kann es auch von Vorteil sein, Bits unter der Annahme auf die Bänder aufzuteilen, dass die Durchschnittsmagnitude |X(k)|α jedes Nicht-Maßstabs-Koeffizienten gleich einem anderen Bruchteil der Magnitude des Maßstabs ist, wie beispielsweise ½. Das ist in 7a durch weniger stark quer gestrichelte Kästchen dargestellt, die die Bänder des Signals überbrücken. Es ist festzuhalten, dass sich die stark quer gestrichelten Bereiche bis zur Frequenzachse hinunter erstrecken, obwohl der untere Abschnitt von den weniger stark quer gestrichelten Bereichen verdeckt ist.
  • Es ist auch möglich, die Schätzung der Größe des Bandes in Abhängigkeit zu der Anzahl der Koeffizienten im Band zu setzen (auch bekannt als Frequenzproben). Je mehr Koeffizienten beispielsweise vorhanden sind, umso unwahrscheinlicher ist es, dass die Durchschnittsmagnitude gleich der Magnitude des Maßstabs-Koeffizienten ist. Auf jeden Fall aber ermöglicht eine grobe Schätzung der Bandgröße eine zweckmäßige Zuteilung von Bits zu diesem Band.
  • Innerhalb jeden Bands werden Bits bei 636 unter den Koeffizienten aufgeteilt. Typischerweise werden die Bits gleichmäßig zugeteilt, es kann aber jede sinnvolle Regel angewandt werden. Es sollte festgehalten werden, dass die Magnituden der Maßstabs-Koeffizienten bereits quantisiert, codiert und übertragen sind und nicht noch einmal quantisiert, codiert und übertragen werden müssen. Gemäß dem in der Dolby-Schrift erörterten Stand der Technik, werden Aspekte der eingesetzten Koeffizienten in zwei verschiedenen Stufen codiert, um eine grobe Analyse der größten Magnitude eines Koeffizienten innerhalb eines Bandes zu machen; zunächst im Hinblick auf den Exponenten und dann im Hinblick auf die Mantisse.
  • Wie oben erwähnt wurde, kann man auch, anstatt den Bändern zuerst Bits zuzuteilen und dann die Bits auf die Koeffizienten jedes Bandes aufzuteilen, den Schätzwert von |X(k)|α verwenden, um den Koeffizienten ohne den Zwischenschritt des Zuteilens von Bits zu den Bändern, direkt Bits zuzuteilen. Wieder wird die grobe Schätzung |X(k)|α verwendet, um eine grobe Schätzung für die Magnitude jedes Koeffizienten zu erhalten. Wie in 7a dargestellt ist, kann die grobe Schätzung für die Magnitude jedes Koeffizienten die Magnitude des Maßstabs-Koeffizienten sein, oder eine Hälfte dieser Magnitude, oder irgend ein anderes sinnvolles Verfahren. (Wie unten erörtert ist, wird eine kompliziertere, aber nützlichere Schätzung möglich, wenn auch die Daten über die örtliche Lage der Maßstabs-Koeffizienten genau aufgezeichnet und codiert werden.) Aus der Schätzung der Magnitude jedes Koeffizienten kann eine Schätzung der Gesamtmagnitude oder der Signalgröße wie oben gemacht, und das Verhältnis von Größe des Koeffizienten und der Gesamtgröße als Basis verwendet werden, um dem Koeffizienten eine Anzahl an Bits zuzuteilen. Die allgemeine Technik ist bei Lim, J. S., a.a.O., S. 598 erörtert.
  • Aufgrund der genauen Quantisierung der Maßstabs-Koeffizienten, resultiert die vorliegende Erfindung in einer zweckmäßigeren Zuteilung von Bits zu den Koeffizienten in jedem Band, als es das in der Dolby Schrift beschriebene Verfahren aus dem Stand der Technik tut. Angenommen, die beiden Bänder b4 und b5 (8) haben Maßstabs-Koeffizienten 742 bzw. 743 mit Magnituden von neun bzw. fünfzehn. Gemäß dem Verfahren aus dem Stand der Technik wird jeder Maßstabs-Koeffizient grob quantisiert, indem nur sein Exponent codiert wird, und diese grobe Quantisierung wird eingesetzt, um allen Koeffizienten im Band des Maßstabs-Koeffizienten Bits zuzuteilen. Der Maßstabs-Koeffizient 742, der einen Wert von neun hat, würde also, da er zwischen 23 und 24 liegt, durch den Exponenten "3" quantisiert werden. Da fünfzehn die Höchstzahl ist, die dieser Exponent haben könnte, werden dem Band, in das der Maßstabs-Koeffizient fällt, Bits zugeteilt, als ob der Höchstwert jedes Koeffizienten fünfzehn wäre.
  • Gemäß des Stands der Technik würde der Maßstabs-Koeffizient 743, der einen Wert von fünfzehn hat, auch durch den Exponenten "3" quantisiert werden, da auch er zwischen 23 und 24 liegt. So werden dem Band, in das der Maßstabs-Koeffizient 743 fällt, auch Bits zugeteilt, als ob der Höchstwert jedes Koeffizienten fünfzehn betrüge. Obwohl also die beiden Bänder deutlich unterschiedliche Maßstabs-Koeffizienten haben, werden jedem Koeffizienten im Band dieselbe Anzahl an Bits zugeteilt. Zur Verdeutlichung kann angenommen werden, dass jeder Koeffizient in den beiden Bändern vier Bits zur Quantisierung zugeteilt bekommt.
  • Umgekehrt wird gemäß dem erfindungsgemäßen Verfahren, aufgrund dessen die Maßstabs-Koeffizienten sehr genau quantisiert werden, der Maßstabs-Koeffizient 743, der einen Wert von fünfzehn hat, als fünfzehn oder sehr nahe an fünfzehn quantisiert, wenn nur sehr wenige Bits zur Verfügung stehen. Ferner wird der Maßstabs-Koeffizient 742, der einen Wert von neun hat, als neun oder sehr nah an neun quantisiert. So werden den Koeffizienten im Band b4 eine andere Anzahl an Bits zugeteilt als den Koeffizienten in Band b5. Zur Verdeutlichung kann angenommen werden, dass die Koeffizienten im Band b5, die einen Maßstab der Magnitude fünfzehn haben, jeweils fünf Bits zugeteilt bekommen, während die Koeffizienten im Band b4, die einen Maßstab von nur neun haben, jeweils nur drei Bits zugeteilt bekommen.
  • Ein Vergleich zwischen der Bitzuteilungsmethode der Erfindung und derjenigen aus dem Stand der Technik zeigt, dass das erfindungsgemäße Verfahren geeigneter ist. Für Band b5 stehen mehr Bits zur Verfügung (fünf im Gegensatz zu vier), so dass die Quantisierung genauer wird. Für Band b4 werden weniger Bits verwendet (drei im Gegensatz zu vier), da der Bereich jedoch tatsächlich kleiner ist, als ihn das Verfahren aus dem Stand der Technik bestimmen kann (neun im Gegensatz zu fünfzehn), ist die Bitzuteilung zweckdienlicher. Da die Erfindung darüber hinaus die genaue Maßstabs-Quantisierung dazu verwendet, Rekonstruktionspegel festzulegen, was das Verfahren aus dem Stand der Technik nicht tut, ist die erreichte relative Genauigkeit sogar noch größer, was gleich erklärt wird.
  • Wenn jeder Koeffizient erst einmal seine Zuteilung an Bits bei 636 erhalten hat, kann die sehr genaue Quantisierung der Maßstabs-Koeffizienten dazu verwendet werden, um gegebenenfalls den gesamten Bandbereich aufzuteilen und bei 638 Rekonstruktionspegel zuzuweisen. 8 zeigt schematisch die Rekonstruktionspegelzuweisung. Die Maßstäbe 743 und 742 der Bänder b5 und b4 sind zusammen mit Nicht-Maßstabs-Koeffizienten 748 und 746 dargestellt, wobei erstere in das Band b4 und zweitere in das Band b5 fallen, die beide eine Magnitude von fünf haben. Mit dem oben angeführten Beispiel fortfahrend, ist die Zuweisung von Rekonstruktionspegeln nach der vorliegenden Erfindung und dem Stand der Technik dargestellt. Da gemäß dem Stand der Technik die Koeffizienten in beiden Bändern dieselbe Anzahl an Bits, nämlich vier, für Rekonstruktionspegel zugeteilt bekamen, hat jedes Band 24 oder sechzehn Rekonstruktionspegel. Diese Rekonstruktionspegel sind auf beiden Seiten von 8 durch identische Skalen 750 schematisch dargestellt. (Die Rekonstruktionspegel sind mit einer kurzen, im Zentrum jedes Rekonstruktionspegels gezeigten Skalenzeile dargestellt).
  • Die Rekonstruktionspegel, die nach dem erfindungsgemäßen Verfahren zugewiesen werden würden, unterscheiden sich stark von denjenigen aus dem Stand der Technik und unterscheiden sich genau genommen in beiden Bändern. In dem Beispiel bekam Band b5 fünf Bits pro Koeffizient zugeteilt, also sind 25 bzw. zweiunddreißig Rekonstruktionspegel verfügbar, um Koeffizienten in diesem Band zu quantisieren, die einen Maßstab von fünfzehn haben. Diese Rekonstruktionspegel sind schematisch bei Skala 780 dargestellt. Band b4 bekam nur drei Bits zugeteilt, also sind 23 bzw. acht Rekonstruktionspegel verfügbar für die Quantisierung der Koeffizienten in dem Band, die einen Maßstab von neun haben. Diese Rekonstruktionspegel sind bei Skala 782 dargestellt.
  • Ein Vergleich zwischen der Genauigkeit der beiden Verfahren zeigt, dass das erfindungsgemäße Verfahren leistungsfähiger ist als das aus dem Stand der Technik. Die zweiunddreißig Rekonstruktionspegel, die als Ergebnis der Fünfbitzuteilung für die Koeffizienten in Band b5 vorgesehen sind, sorgen deutlich für eine höhere Genauigkeit als dies die sechzehn Pegel tun, die ein Ergebnis der Vierbitzuteilung aus dem Stand der Technik sind. Ferner sind alle der zweiunddreißig Rekonstruktionspegel nützlich. Die acht als Ergebnis der vorliegenden Erfindung für die Koeffizienten in Band b4 zur Verfügung stehenden Rekonstruktionspegel, erbringen nicht so viele Rekonstruktionspegel wie die sechzehn, die sich aus dem Stand der Technik ergeben, alle acht Rekonstruktionspegel werden hingegen verwendet, während einige Rekonstruktionspegel aus dem Stand der Technik (diejenigen, die zwischen neun und fünfzehn liegen), möglicherweise für dieses Band nicht genutzt werden können, da kein Koeffizient neun überschreitet. Obwohl also technisch gesehen diesem Band nach dem Stand der Technik mehr Rekonstruktionspegel zugeteilt werden, können viele davon nicht verwendet werden und der erzielte Genauigkeitsgewinn ist gering. Die Bits, die bei der Zuteilung auf ungenutzte Rekonstruktionspegel verbraucht werden, könnten in demselben Band besser eingesetzt werden, indem Rekonstruktionspegel erneut zugeteilt werden, die in dem bekannten genauen Bereich oder in einem anderen Band liegen (wie z.B. Band b5, in dem der Maximalbereich relativ groß ist).
  • Das Anlegen von Grenzen zwischen Rekonstruktionspegeln und die Zuteilung von Rekonstruktionswerten zu diesen Rekonstruktionspegeln innerhalb des Bereichs kann variiert werden, um spezifischen Signalcharakteristika gerecht zu werden. Werden gleichmäßige Rekonstruktionspegel zugeteilt, können sie, wie bei Skala 902 in 9a gezeigt, so angelegt werden, dass sie einen Bereich von zehn überspannen, wobei der höchste Rekonstruktionspegel den Maßstabswert und jeder niedrigere Pegel einen niedrigeren Wert zugeteilt bekommt, abzüglich eines Betrags, der von der Pegelgröße abhängt. Bei einem solchen Schema wird kein Rekonstruktionspegel auf Null gesetzt. Alternativ kann, wie als Skala 904 dargestellt, der niedrigste Rekonstruktionspegel auf Null gesetzt werden, wobei jeder höhere Pegel um einen gleichen Betrag größer ist. In solch einem Fall wird kein Rekonstruktionspegel auf den Maßstabs-Koeffizienten gesetzt. Alternativ und in einer typischeren Weise wird, wie bei Skala 906 gezeigt, weder Maßstab, noch Null genau quantisiert, sondern wird jeweils einen halben Rekonstruktionspegel entfernt vom nächsten Rekonstruktionspegel liegen.
  • Wie im Falle einer ungleichen Bitzuteilung zu Koeffizienten in einem Band, wenn mehr als ein Rekonstruktionsschema durch den Codierer angewandt werden kann, muss entweder ein Signal an den Decodierer übertragen werden, zusammen mit den zu den quantisierten Koeffizienten gehörigen Daten, die angeben, welches Rekonstruktionsschema verwendet werden soll, oder der Decodierer muss so konstruiert sein, dass er in allen Situationen die erforderliche Verteilung von Rekonstruktionspegeln reproduziert. Diese Information würde analog zu der Art und Weise übertragen oder erzeugt werden, bei der die spezifische Information über die Anzahl der Koeffizienten pro Band wie oben erörtert übertragen oder erzeugt würde.
  • Anstatt die Amplitude jedes Bands gleich aufzuteilen, kann es vorteilhaft sein, sie wie in 9b bei 638 gezeigt, zu teilen, und die Rekonstruktionspegel zu spezifizieren, die sowohl den Null- als auch den Maßstabs-Koeffizienten genau umfassen und rekonstruieren, und die Verteilung der anderen Maßstabs-Koeffizienten mehr in Richtung auf den Endbereich des Maßstabs-Koeffizienten zu versetzen. Alternativ könnten sich die Rekonstruktionspegel näher am Null-Ende des Bereichs konzentrieren, wenn die Erfahrung zeigt, dass dies statistisch wahrscheinlicher ist. So können also die Quantisierungspegel im allgemeinen ungleichmäßig und auf die Charakteristika des speziellen Signaltyps zugeschnitten sein.
  • Die vorstehenden Beispiele sind implizit davon ausgegangen, dass der Maßstabs-Koeffizient größer Null ist, und dass alle anderen Koeffizienten größer oder gleich Null sind. Obwohl dies der Fall sein kann, können sich doch viele Situationen ergeben, bei denen die eine oder beide der Annahmen nicht zutreffen. Es gibt mehrere Methoden, um das Vorzeichen der Nicht-Maßstabs-Koeffizienten zu spezifizieren. Die grundlegendste ist, den Amplitudenbereich des Bandes in einen Bereich auszuweiten, der die doppelte Magnitude der des Maßstabs-Koeffizienten hat, und wie in 10a bei 638, Rekonstruktionspegel zuzuteilen. Beispielsweise wird jeder Koeffizient, der in eine Zone fällt, die zwischen den Amplitudenwerten 2,5 und 5,0 liegt, bei 640 als 3,75 quantisiert, und wird bei 642 das Dreibitcodewort "101" zugeteilt bekommen. Wie klar wird, ist die Präzision einer solchen Anordnung nur halb so genau als diejenige, die möglich wäre, wenn nur positive Koeffizienten quantisiert werden müssten. Negative Werte, wie beispielsweise diejenigen zwischen –5,0 und –7,5 werden auch als –6,25 quantisiert und bekommen das Codewort "001" zugeteilt.
  • Anstelle einer gleichen Aufteilung in positive und negative Werte ist es möglich, die positiven oder negativen Rekonstruktionspegel wie in 10b gezeigt feiner zuzuteilen. In einem solchen Fall wird es notwendig sein, dem positiven bzw. negativen Bereichsanteil mehr Rekonstruktionspegel zu geben. In 10b hat der positive Anteil vier volle Rekonstruktionspegel und einen Teil des Rekonstruktionspegels um Null zentriert, wohingegen der negative Anteil drei volle Rekonstruktionspegel und einen Teil des null-zentrierten Rekonstruktionspegels hat.
  • Die vorstehenden Beispiele zeigen, dass mit einer sehr genauen Quantisierung der Maßstabs-Koeffizienten eine sehr genaue Bereichsinformation für ein besonderes Band festgestellt werden kann. Folglich können die Rekonstruktionspegel einem speziellen Band sinnvoller zugeteilt werden, so dass die rekonstruierten Werte näher bei den ursprünglichen Werten liegen. Das Verfahren aus dem Stand der Technik resultiert in relativ größeren Bereichen für jedes gegebene Band, und daher in einer weniger zweckmäßigen Zuteilung von Rekonstruktionspegeln.
  • Auch die Schätzung des Maskierungspegels wurde mit Anwendung des erfindungsgemäßen Verfahrens gegenüber dem Stand der Technik verbessert. Die Schätzung des Maskierungspegels beruht auf einer Schätzung der Magnitude der Koeffizienten |X(k)|. Wie erwähnt wurde, ist für jeden Koeffizienten der Maskierungspegel im allgemeinen ein Maß dafür, wie viel Rauschen, wie z.B. Quantisierungsrauschen, im Signal geduldet werden kann, ohne dass es vom Menschen wahrgenommen wird. In den meisten Anwendungen können Signale mit größeren Amplituden mehr Rauschen ertragen, ohne dass das Rauschen bemerkt wird. Zusätzliche Faktoren, die zur Amplitude hinzukommen, tauchen auch in der Bestimmung des Maskierungspegels auf, wie z.B. Frequenz und Amplituden der Umgebungskoeffizienten. So resultiert eine bessere Einschätzung von |X(k)| für jeden gegebenen Koeffizienten natürlich in einer besseren Einschätzung eines passenden Maskierungpegels. Der Maskierungspegel wird verwendet, um die Zuteilung von Bits zu einem Koeffizienten feiner abzustimmen. Wenn sich der Koeffizient in einer Situation befindet, in der er relativ viel Quantisierungsrauschen ertragen kann, trägt die Bitzuteilung dem Rechnung und kann die Anzahl an Bits reduzieren, die einem spezifischen Koeffizienten (oder Band) zugeteilt würden, im Gegensatz zu der Anzahl, die zugeteilt würde, wenn dem Maskierungspegel nicht Rechnung getragen worden wäre.
  • Nachdem die Koeffizienten nach dem erfindungsgemäßen Verfahren codiert wurden, wird der Codewortstrom bei 644 an den Kommunikationskanal oder die Speichervorrichtung wie im Stand der Technik in 4A bei 112 gezeigt, übertragen. Nach der Übertragung werden die codierten Wörter in ein Audiosignal zurücktransformiert. Wie bei 660 in 12c gezeigt, werden die codierten Maßstabs-Koeffizienten basierend auf der Zuteilung von Rekonstruktionspegeln an die Codewörter quantisiert. Die Maßstabs-Koeffizienten sind sehr genau quantisiert worden. So werden die rekonstruierten Maßstabs-Koeffizienten nach der Übersetzung der Codewörter in rekonstruierte Pegel die ursprünglichen Maßstabs-Koeffizienten sehr genau wiedergeben.
  • Bei 662 findet eine Entscheidung statt, ob eine umgekehrte DCT-Transformation (oder eine andere geeignete Transformation) durchgeführt werden soll, um einer Transformation des DCT-Typs (wie unten erörtert) entgegenzuwirken, die gegebenenfalls bei den Schritten 616, 618 oder 620 im Codieren erfolgt ist. Falls das der Fall ist, wird die Umkehrtransformation bei 664 angewandt. Falls nicht, geht das erfindungsgemäße Verfahren zu 666 über, wo die Codewörter für die Nicht-Maßstabs-Koeffizienten eines einzelnen Rahmens in Quantisierungspegel übersetzt werden. Es gibt viele verschiedene mögliche Schemata, die weiter unten beschrieben werden.
  • Der Decodierer übersetzt die Codewörter in Quantisierungpegel, indem er die am Codierer durchgeführten Schritte in umgekehrter Reihenfolge anwendet. Von den Maßstabs-Koeffizienten stehen dem Codierer die Anzahl der Bänder und die Magnituden der Maßstabs-Koeffizienten zur Verfügung. Die Anzahl an Nicht-Maßstabs-Koeffizienten in jedem Band ist ebenfalls bekannt, entweder aus der Nebeninformation oder aus voreingestellter Information. Aus Vorstehendem können die Rekonstruktionspegel (Anzahl und örtliche Lage) vom Decodierer festgestellt werden, indem er dieselbe Regel anwendet wie vom Codierer zur Festlegung der Bitzuteilung und der Rekonstruktionspegel angewandt wurde. Falls es nur eine solche Regel gibt, wendet sie der Decodierer einfach an. Gibt es mehr als eine, wählt der Decodierer die passendste aus, entweder basierend auf Nebeninformation oder basierend auf den, den Maßstabs-Koeffizienten eigenen Merkmalen. Falls die Codewörter nach einem einfachen Ordnungsschema wie beispielsweise die binäre Darstellung der Position der Rekonstruktionspegel vom niedrigsten bis zum höchsten arithmetischen Wert, auf die Rekonstruktionspegel angewandt wurden, dann wird dieses Schema zur Herstellung des Rekonstruktionspegels einfach umgekehrt. Wird ein komplizierteres Schema angewendet, wie beispielsweise Anwendung eines Codebuchs, muss der Decodierer dazu Zugriff haben.
  • Das Endergebnis ist eine Reihe von quantisierten Koeffizienten für jede der Frequenzen, die im Spektrum X(k) vorhanden waren. Diese Koeffizienten werden nicht exakt dieselben sein wie die ursprünglichen, da einige Daten bei der Quantisierung verloren gegangen sind. Aufgrund der effizienteren Bitzuteilung, der besseren Bereichsaufteilung und der verbesserten Maskierungsschätzung sind die quantisierten Koeffizienten jedoch näher am Original als es die umquantisierten aus dem Stand der Technik wären. (Wiederhergestellte Nicht-Maßstabs-Koeffizienten jedoch entsprechen den ursprünglichen Nicht-Maßstabs-Koeffizienten typischerweise nicht so genau wie die wiederhergestellten Maßstabs-Koeffizienten den ursprünglichen Maßstabs-Koeffizienten.) Nach der Umquantisierung, wird die Wirkung der Operation, den Rahmen in die Bruchpotenz α, wie z.B. 1/2 zu bringen, bei 668 rückgängig gemacht, indem die Werte in die reziproke Potenz 1/α, in diesem Falle, zwei, gebracht werden. Dann wird bei 670 die bei Schritt 106 angewandte umgekehrte Transformation des TDAC-Typs angewandt, um die Frequenzinformation in die Zeitdomäne zurück zu transformieren. Das Ergebnis ist ein Segment von Daten, die beispielsweise mit einer Geschwindigkeit von 48 kHz abgetastet wurden. Sequentielle (typischerweise überlappende) Fenster werden bei 672 hinzugefügt und bei 674 tonfrequent synthetisiert.
  • Die vorstehende Erläuterung ist davon ausgegangen, dass nur die Magnituden der Maßstabs-Koeffizienten bei 614 genau codiert wurden, und dass weder die örtliche Lage der Maßstabs-Koeffizienten innerhalb des Bandes (d.h. zweiter Koeffizient vom unteren Frequenzende des Bandes, vierter Koeffizient vom unteren Frequenzende des Bandes, etc.) noch das Vorzeichen (oder die Phase) codiert wurde. Durch die Codierung entweder der örtlichen Lage oder der beiden zusätzlichen Fakten, kann eine zusätzliche Verbesserung in der Codierung erreicht werden. Die Codierung der örtlichen Lage sorgt nämlich für beträchtliche Einsparungen. Falls dies nicht so wäre, müssten die Maßstabs-Koeffizienten zweimal codiert werden: einmal, um die Schätzung von |X(k)|α durchzuführen, und ein zweites Mal, um sie dem Signal als einen Koeffizienten zuzuteilen.
  • Wurde die örtliche Lage des Maßstabs-Koeffizienten nicht codiert, wäre seine Magnitude im Strom aller Koeffizienten beispielsweise beim in 12A gezeigten Schritt 624 zu codieren. Werden die Maßstabs-Koeffizienten hingegen mit Magnitude und örtlicher Lage und Vorzeichen voll codiert, dann können ihre codierten Werte einfach übertragen werden. Ist die örtliche Lage nicht codiert, muss das Gerät zunächst die Magnituden jedes Maßstabs-Koeffizienten übertragen, z.B. bei Schritt 628 in 12b. Dann werden jedem Band und jedem Koeffizienten innerhalb des Bandes, einschließlich des Maßstabs-Koeffizienten bei Schritt 636, Bits zugeteilt. Wurden die Daten der örtlichen Lage des Maßstabs-Koeffizienten nicht gespeichert, ist das System für die besondere Identität des Maßstabs-Koeffizienten unempfänglich und teilt ihm bei 636 Bits zu, quantisiert ihn in einen Rekonstruktionspegel bei 640, codiert ihn bei 642 und überträgt seine Amplitude bei 644. Seine Amplitude wird also zweimal übertragen: erstens, bei 628 und zweitens, bei 644.
  • Wird die örtliche Lage jedoch ursprünglich bei 626 codiert, wenn das System die Zuteilung von Bits an den Maßstabs-Koeffizienten bei 636 vorbereitet, wird der Maßstabs-Koeffizient aufgrund seiner örtlichen Lage als solcher identifiziert und übersprungen, wodurch die Bits eingespart werden, die zur Codierung seiner Amplitude notwendig wären. Die Spezifizierung der örtlichen Lage der Maßstabs-Koeffizienten verbessert die Effizienz typischerweise nur, wenn zur Spezifizierung seiner örtlichen Lage weniger Bits benötigt werden als zur Spezifizierung seiner Amplitude. In einigen Fällen kann es von Vorteil sein, die örtlichen Lagen gewisser, aber nicht aller Signalelemente von Maßstabs-Koeffizienten zu codieren. Enthält ein Band beispielsweise eine große Anzahl an Koeffizienten, kann es unvorteilhaft sein, die örtliche Lage des Maßstabs-Koeffizienten in dem Band zu codieren, wohingegen es immer noch von Vorteil sein kann, die örtliche Lage eines Maßstabs-Koeffizienten in einem Band mit weniger Koeffizienten zu codieren. Durch die Beurteilung des Vorteils, die örtliche Lage der Maßstabs-Koeffizienten zu spezifizieren, müssen ferner die möglichen zusätzlichen Rechner- und eventuell Speicherbeanspruchungen sowohl im Codier- als auch Decodiergerät im Hinblick auf die verfügbare Datenkanal-Bandbreite in Betracht gezogen werden. Es ist typischerweise kostengünstiger, höhere Rechner- oder Speicherbeanspruchungen in Kauf zu nehmen, als Beanspruchungen der Bandbreite.
  • Wird bei 614 (12a) entschieden, die örtliche Lage des Koeffizienten genau zu quantisieren, werden einige zusätzliche Bits zur Spezifizierung und Codierung jedes Maßstabs-Koeffizienten benötigt. Über die Anzahl der Koeffizienten, die in jedem Band sein werden, wird entschieden, bevor die Koeffizienten codiert werden. Diese Information ist dem Decodierer typischerweise bekannt, obwohl es auch möglich ist, diese Information abzuändern und sie in die vom Codierer übertragene Nebeninformation aufzunehmen. So kann für jedes Band die örtliche Lage des Maßstabs-Koeffizienten genau festgelegt werden, und es müssen nur so viele Bits für die Lageinformation reserviert werden, wie Koeffizienten in dem in Frage kommenden Band vorhanden sind. Aus diesem Grunde ist es vorteilhaft, jedem Band eine Anzahl an Koeffizienten in einer Potenz von zwei zuzuweisen, so dass keine Bits bei der Festlegung der örtliche Lage des Maßstabs-Koeffizienten vergeudet werden.
  • Wie oben erwähnt wurde, besteht ein grundlegendes Verfahren, Bits innerhalb des Bandes zuzuweisen darin, dass jedem Nicht-Maßstabs-Koeffizienten eine gleiche Anzahl an Bits zugeteilt wird. In manchen Fällen kann dies aber nicht stattfinden, beispielsweise, wenn die Anzahl der verfügbaren Bits kein ganzzahliges Vielfaches der Anzahl von Nicht-Maßstabs-Koeffizienten ist. In diesem Fall ist es häufig von Vorteil, den dem Maßstabs-Koeffizienten (örtlich im Band) am nächsten liegenden Koeffizienten mehr Bits zuzuteilen, da die Erfahrung gezeigt hat, dass bei NF-Signalen benachbarte Koeffizienten in ihren Magnituden oft näher beieinander liegen, als entfernte Koeffizienten.
  • Es gibt verschiedene andere Verwendungen, denen übrige Bits unterzogen werden können. Beispielsweise kann Koeffizienten, die links vom Maßstabs-Koeffizienten liegen, d.h., die eine niedrigere Frequenz als der Maßstabs-Koeffizient haben, eine höhere Bevorzugung eingeräumt werden. Das geschieht unter Einbezug des Maskierungsergebnisses. Typischerweise tritt der Einfluss einer spezifischen Frequenzkomponente auf die Maskierungsfunktion im Hinblick auf einen höheren Frequenzbereich als den der in Frage kommenden Frequenz ein. Daher, dass Koeffizienten einer Frequenz, die niedriger ist als die des Maßstabs-Koeffizienten, bevorzugt werden, (die also links vom Maßstabs-Koeffizienten in einer wie in 11 gezeigten Skala liegen), führt dies zu einer genaueren Codierung des Koeffizienten, was einen Einfluss auf höhere Frequenzkomponenten hat. Unter manchen Umständen kann es sogar von Vorteil sein, diese niedrigeren Frequenzkoeffizienten stärker zu begünstigen, als mit nur einem einzigen Extrabit, das aus einer restlichen Anzahl an Extrabits zur Verfügung steht. Beispielsweise könnten fünf Koeffizienten auf der niedrigeren Seite des Maßstabs-Koeffizienten zusätzliche Bits zugeteilt bekommen, aber nur zwei auf der höheren Seite.
  • Auf diese Weise führt eine genaue Spezifizierung der örtlichen Lage des Maßstabs-Koeffizienten innerhalb des Bandes zu einer noch sinnvolleren Verteilung der Bits auf die verschiedenen Nicht-Maßstabs-Koeffizienten. Bei einer sinnvolleren Bitverteilung pro Nicht-Maßstabs-Koeffizient wird die Aufteilung von Bits in zweckmäßige Rekonstruktionspegel wie oben erörtert weiter verbessert.
  • Die Kenntnis der örtlichen Lage des Maßstabs-Koeffizienten ermöglicht auch eine bessere Grobschätzung von |X(k)|α, was wiederum eine bessere Einschätzung der Maskierungsfunktion möglich macht. Sind die örtlichen Lagen der Maßstabs-Koeffizienten bekannt, kann die Schätzung von |X(k)|α wie in 11 sein, und nicht wie es in 7a dargestellt ist. Ohne die Lageinformation ist alles, was bestimmt werden kann, dass die Koeffizienten im Band im Durchschnitt jeweils weniger als ein Bruchteil der Magnitude des Maßstabs-Koeffizienten sind. Die Kenntnis der Lagen ermöglicht hingegen die typische genauere, in 11 gezeigte, Schätzung, bei der jeder Nicht-Maßstabs-Koeffizient einen auf der Beziehung zwischen benachbarten Maßstabs-Koeffizienten beruhenden Schätzwert zugeteilt bekommt. Die Annahme, die solch einer Schätzung zugrunde liegt, ist, dass sich die Magnitude von Koeffizienten nicht sehr von einem Koeffizienten zum nächsten verändert und von daher die Nicht-Maßstabs-Koeffizienten im allgemeinen entlang einer Linie liegen, die benachbarte Maßstabs-Koeffizienten miteinander verbindet. Wenn also die weiter verfeinerte Schätzung für |X(k)|α erst einmal gemacht wurde, können die Schätzungen für die einzelnen Koeffizienten dazu verwendet werden, um eine der beiden Arten der Bitzuteilung durchzuführen: die Bitzuteilung für die Bänder, gefolgt von der Bitzuteilung für die Koeffizienten; oder die direkte Bitzuteilung für die Koeffizienten. Ferner kann die verfeinerte Schätzung noch dazu verwendet werden, um den Maskierungspegel noch zweckmäßiger festzulegen. So wird die Bitzuteilung, und folglich auch die Bereichszuteilung, durch die Codierung der örtlichen Lage von Maßstabs-Koeffizienten verbessert.
  • Wenn die Lage jedes Maßstabs-Koeffizienten spezifiziert wurde, ist es ohne Redundanz möglich, auf alle Maßstabs-Koeffizienten, die codiert wurden, zurückzugreifen und die Genauigkeit ihrer Codierung zu vergrößern, wenn mehr Bits zur Verfügung stehen, als zum Zeitpunkt des Codierens des Maßstabs-Koeffizienten angenommen wurde. Das spezielle Band kann beispielsweise aufgrund eines sehr großen Maßstabs-Koeffizienten eine sehr große Anzahl an Bits erhalten haben, braucht aber aufgrund einer im Band vorhandenen sehr kleinen Anzahl an Signalelementen keine so große Anzahl an Bits zum Codieren der restlichen Signalelemente. Sind die Lagen bekannt, können mehr Bits zugeteilt werden, um die Amplitude des Maßstabs-Koeffizienten zu spezifizieren, nachdem der erste Zuteilungsdurchgang von Bits an die Maßstabs-Koeffizienten erfolgt ist. Sind die Lagen nicht bekannt, kann das nicht ohne Redundanz effizient durchgeführt werden. Ein Weg, um die Magnitude des Maßstabs-Koeffizienten weiter zu spezifizieren, wäre es, die Extrabits zur Codierung des Unterschieds zwischen der Magnitude des zuerst codierten Maßstabs-Koeffizienten und der ursprünglichen Amplitude des Maßstabs-Koeffizienten zu verwenden. Da die Decodiervorrichtung zur Bestimmung, wie Bits zugeteilt wurden, dieselben Routinen anwendet wie vom Codierer eingesetzt wurden, erkennt der Decodierer ordnungsgemäß und automatisch die verbesserte Information über die Maßstabs-Koeffizientenamplitude.
  • Zusätzliche Codiereffizienz und -genauigkeit kann durch eine präzise Spezifizierung und Codierung des Vorzeichens des Maßstabs-Koeffizienten erlangt werden (das der Phase der Signalkomponenten bei dieser Frequenz entspricht). Nur ein zusätzliches Bit ist pro Maßstabs-Koeffizient notwendig, um sein Vorzeichen zu codieren, wenn X(k) real bewertet ist.
  • Die Kenntnis des Vorzeichens des Maßstabs-Koeffizienten verbessert die Fähigkeit des Verfahrens, Rekonstruktionspegel innerhalb eines gegebenen Bandes effizient zu bestimmen. Beispielsweise hat die Erfahrung gezeigt, dass ein Band oftmals eine größere Anzahl an Nicht-Maßstabs-Koeffizienten beinhalten kann, die dasselbe Vorzeichen wie der Maßstabs-Koeffizient haben. Es kann deshalb von Nutzen sein, einen oder mehrere Rekonstruktionspegel mit demselben Vorzeichen vorzusehen.
  • Die Kenntnis des Vorzeichens des Maßstabs-Koeffizienten verbessert nicht unbedingt die Schätzung der Maskierung. Die Verwendbarkeit der Vorzeicheninformation schwankt in Abhängigkeit von der eingesetzten Transformation.
  • Eine andere bevorzugte Ausführungsform der Erfindung ist besonders dann zweckmäßig, wenn die Anzahl der Bänder relativ klein ist. Diese Ausführungsform bringt bei Schritt 612 von 12a eine weitere Aufteilung jedes Bands im Spektrum X(k) in zwei Teilbänder mit sich. Ein Teilband umfasst den Maßstabs-Koeffizienten, das andere nicht. Die Teilbänder sollten das Band vorzugsweise halbieren. Der Koeffizient mit der größten Magnitude in dem Teilband, das den Maßstabs-Koeffizienten nicht enthält, wird ebenfalls bei 650 ausgewählt und bei 624 quantisiert. Die Aufteilung der beiden Bänder b2 und b4 in Teilbänder ist schematisch in 7 durch eine gestrichelte vertikale Linie durch die Zentren dieser beiden Bänder dargestellt. Bei der Umsetzung dieser Ausführungsform, werden der Maßstabs- und der zusätzlich codierte Koeffizient hier als der größere bzw. kleinere Maßstabs-Koeffizient bezeichnet. Dieser Schritt 650 findet statt zwischen der Auswahl des größeren Maßstabs-Koeffizienten bei 608 und der Codierung jeglicher Maßstabs-Koeffizienten bei 626.
  • Die Magnituden des kleineren Maßstabs-Koeffizienten werden ebenfalls bei 624 genau quantisiert. Da sie kleinere Maßstabs-Koeffizienten sind, weiß man, dass sie keine Magnitude haben, die größer als die der großen Maßstabs-Koeffizienten ist. Diese Tatsache kann dazu verwendet werden, Bits bei ihrer Codierung einzusparen.
  • Es gibt verschiedene Wege, um den gesamten Rahmen in beispielsweise sechzehn Bänder aufzuteilen. Einer besteht darin, das Segment vom Anfang in sechzehn Bänder aufzuteilen. Der andere besteht darin, das gesamte Segment zu halbieren, dann jedes Teil zu halbieren, und so weiter, wobei die von der ersten Teilung abgeleiteten Informationen wichtiger sind, als die von der zweiten Teilung. So erzeugt die Verwendung von Teilbändern eine Hierarchie wichtiger Informationen. Die erste Division ist wichtiger als die zweite, die wiederum wichtiger ist als die darauffolgende, etc. So kann es also von Nutzen sein, Bits für die wichtigeren Divisionen zurückzubehalten.
  • Wie oben erwähnt wurde, kann es vorteilhaft sein, vor der Quantisierung, Codierung und Übertragung bei Schritt 624, 626 bzw. 628 die Maßstabs-Koeffizienten einer zweiten Transformation zu unterziehen. Diese zweite Transformation könnte sowohl auf die größeren als auch die kleineren Maßstabs-Koeffizienten angewendet werden, oder jeweils nur auf die größeren oder kleineren Maßstabs-Koeffizienten. Und zwar, weil je nach der Art des Signals, ein Muster oder eine Organisation der Maßstabs-Koeffizienten vorhanden sein kann. Wie hinlänglich bekannt ist, nutzen Transformationen ein Datenmuster aus, um die Menge an Dateninformationen zu reduzieren, die zur präzisen Definition der Daten notwendig sind. Wenn beispielsweise jeder Maßstabs-Koeffizient einfach die doppelte Magnitude des vorhergehenden Koeffizienten wäre, wäre es nicht notwendig, die Magnituden aller Koeffizienten zu quantisieren, zu codieren und zu übertragen. Man müsste nur die Magnitude des ersten codieren und für die erforderliche Anzahl an Schritten eine Verdoppelungsfunktion an die erhaltenen Koeffizienten anlegen.
  • So wird bei Schritt 622, 652 oder 654 (je nachdem, ob Magnitude, Lage oder Vorzeichen genau quantisiert werden sollen) entschieden, ob die Maßstabs-Koeffizienten gemäß eines bekannten Verfahrens wie z.B. DCT, einer zweiten Transformation unterzogen werden. Ist die Art der Daten dergestalt, dass eine kompaktere Codierweise vorgesehen werden kann, wird bei den Schritten 618, 616 oder 620 eine andere Transformation angewandt. 12a gibt an, dass es sich um eine DCT-Transformation handelt. Es kann jedoch jede Transformation verwendet werden, die die Aufgabe erfüllt, die zu übertragende Datenmenge zu reduzieren. Andere zweckmäßige Transformationsarten umfassen die Diskrete Fourier Transformation.
  • Aufgrund dieser potentiellen Transformation nur von Maßstabs-Koeffizienten, ist es nicht in allen Fällen angebracht, darauf zu schließen, dass die höhere Genauigkeit nach dem erfindungsgemäßen Verfahren, nach dem die Maßstabs-Koeffizienten codiert werden, ein Ergebnis davon ist, jedem Maßstabs-Koeffizienten (im Durchschnitt) mehr Bits zuzusprechen als den Nicht-Maßstabs-Koeffizienten (im Durchschnitt). Es liegt daran, dass die Anwendung einer ausschließlichen Transformation der Maßstabs-Koeffizienten zu einer deutlichen Reduktion der Anzahl an Bits führt, die zur Codierung aller Maßstabs-Koeffizienten und somit jedes einzelnen Maßstabs-Koeffizienten (im Durchschnitt) führt. Selbstverständlich werden diese Biteinsparungen durch erhöhte Rechneranforderungen sowohl beim Codieren als auch Decodieren erreicht. In manchen Anwendungen rechtfertigen die Biteinsparungen die Rechnerbeanspruchung. In anderen möglicherweise nicht. Beides ist für den Fachmann ersichtlich.
  • Werden die Maßstabs-Koeffizienten zweimal transformiert, müssen sie bei 632 in die Frequenzdomäne X(k) zurücktransformiert werden, um, wie vorstehend erläutert wurde, die für die Bitzuteilung bei 634, 636 und den Aufbau der Rekonstruktionspegel bei 638 notwendigen Berechnungen zu vereinfachen. Alternativ können die Maßstabs-Koeffizienten, anstatt rücktransformiert zu werden, in einem Speicher im Codierer hinterlegt und vor Schritt 634 abgerufen werden.
  • Während der Decodierschritte des erfindungsgemäßen Verfahrens hängt die genaue Art und Weise der Übersetzung bei 666 aus übertragenen Codewörtern von Nicht-Maßstabs-Koeffizienten in Quantisierungspegel davon ab, ob Teilbänder verwendet wurden, ob örtliche Lage oder örtliche Lage und Vorzeichen der Maßstabs-Koeffizienten auch genau codiert wurden, und wie diese Informationen komprimiert wurden. Wurden Nebendaten zur Übertragung von Kontrolldaten verwendet, dann müssen diese Nebeninformationen decodiert und in die Anwendung mit einbezogen werden. Wenn all diese notwendigen Informationen in einem Speicher enthalten sind, auf den der Decodierer Zugriff hat, müssen die Codewörter nur noch gemäß festgelegter Algorithmen übersetzt werden.
  • Ein festgelegter Algorithmus kann beispielsweise die Anzahl an Koeffizienten pro Band in der ersten Hälfte des Rahmens auf sechzehn setzen und die Anzahl an Koeffizienten pro Band in der zweiten Hälfte auf zweiunddreißig. Eine weitere Regel könnte eingerichtet werden, um Bits innerhalb eines Bandes gleichmäßig auf Koeffizienten zu verteilen, sind Extrabits vorhanden, eines jeweils an den ersten Koeffizienten im Band. Ist das Vorzeichen des Maßstabs-Koeffizienten quantisiert, kann jeder Koeffizient in Rekonstruktionspegel unterteilt werden, wobei ein zusätzlicher Rekonstruktionspegel dasselbe Vorzeichen wie der Maßstabs-Koeffizient hat.
  • Im Lichte der vorstehenden eingehenden Erörterung des anmeldungsgemäßen Verfahrens wird die anmeldungsgemäße Vorrichtung aus 13a, die den Transmitterabschnitt der Vorrichtung zeigt und 13b, die den Reveiveranschnitt zeigt, deutlich. Die erfindungsgemäße Vorrichtung kann in eigens dazu ausgelegten Prozessoren oder in dahingehend programmierten digitalen Allzweckrechnern implementiert werden.
  • Der Transformer 802 des TDAC-Typs transformiert ein NF-Signal x(T) in ein Spektrum wie z.B. X(k). (Ein DCT-Wandler eignet sich ebenfalls und wird in die Erfindung mit einbezogen). Der ||α Operator skaliert das Spektrum in eine Domäne, die für den Menschen wahrnehmbarer ist, oder wenn eine nicht-gleichmäßige Quantisierung gewünscht wird. Der Spektralbanddivisor 806 teilt das skalierte Spektrum in einzelne Bänder auf. Der Maßstabs-Koeffizienten-Bezeichner 808 kennzeichnet die Koeffizienten in jedem Band, die die größte Magnitude haben. Die Quantisierer 810 und 812 quantisieren die Magnitude der Maßstabs-Koeffizienten (und eventuell das Vorzeichen), bzw., falls gewünscht, die örtliche Lage innerhalb des Bandes. Der DCT-Wandler 816 wendet eine DCT- oder eine ähnliche Transformation auf den quantisierten Maßstabs- Koeffizienten an, wenn feststeht, dass zwischen den Maßstabs-Koeffizienten eine ausreichende Struktur besteht, die den zusätzlichen Rechneraufwand rechtfertigt. Der Codierer 818 codiert die quantisierte Maßstabs-Koeffizienten-Information, ungeachtet, ob der DCT-Wandler mit dieser Information arbeitet, und erzeugt eine Serie von Codewörtern, die vom Sender 820 an einen Datenkanal übertragen werden.
  • In einem bevorzugten Beispiel übernimmt der bandweise Bitzuteiler 822 die Information von den Maßstabs-Koeffizienten-Quantisierern 810, verwendet diese Information zur Erstellung einer wie in 7a gezeigten Grobschätzung von |X(k)|α und setzt diese Schätzung ein, um die begrenzte Anzahl an verfügbaren Bits auf die Bänder in dem vom Spektralbandbezeichner 806 festgelegten Spektrum zu verteilen. Der koeffizientenweise Bitzuteiler 824 verwendet die Information vom Maßstabs-Koeffizienten- und Vorzeichenquantisierers 812 und 814 zusammen mit der Bitzuteilung innerhalb des Bandes, um die Bits der Bänder auf die Koeffizienten in diesem Band zu verteilen. Der Nicht-Maßstabs-Koeffizienten-Quantisierer 826 verwendet dieselbe Information, um passende Rekonstruktionspegel für jeden Koeffizienten in dem Band festzulegen und jeden Koeffizienten zu quantisieren. Die quantisierten Koeffizienten werden an den Codierer 818 weitergeleitet, der jedem Nicht-Maßstabs-Koeffizienten ein Codewort zuteilt und die Codewörter dann an den Transmitter 820 zur Übertragung weiterleitet.
  • In einem anderen bevorzugten Beispiel der Vorrichtung kann der bandweise Bitzuteiler auch die Information vom Maßstabs-Koeffizienten-Quantisierer 812 übernehmen, indem er die Grobschätzung |X(k)|α festlegt. Der bandweise Bitzuteiler würde, wenn die Lageinformation verwendet wird, eine wie in 11 gezeigte Grobschätzung machen und dann von dieser Schätzung ausgehend den Bändern Bits zuteilen.
  • In einem anderen Beispiel der erfindungsgemäßen Vorrichtung übernimmt der bandweise Bitzuteiler 822 auch Vorzeicheninformation vom Magnitudenquantisierer 810 und Lageinformation vom Lagequantisierer 812, um dem Band wie oben im Hinblick auf das erfindungsgemäße Verfahren beschrieben, Bits zuzuteilen.
  • Der anmeldungsgemäße Receiverer- oder Decodiererabschnitt ist schematisch in 13b dargestellt. Der Receiver 920 empfängt die Codewörter über den Datenkanal. Der Maßstabs-Koeffizienten-Decodierer decodiert die Daten des Maßstabs-Koeffizienten, wodurch sich quantisierte Daten ergeben, die die Maßstabs-Koeffizienten darstellen. Der DCT-Umkehrwandler 916 macht die Wirkung jeglicher DCT-artigen Transformation rückgängig, die bei 816 angewandt wurde, wodurch sich eine Reihe von skalierten Maßstabs-Koeffizienten ergibt, die in ihrem absoluten Wert sehr nahe an den ursprünglichen Maßstabs-Koeffizienten liegen, bevor sie im Magnituden-Quantisierer 810 quantisiert wurden. Der Nicht-Maßstabs-Koeffizienten-Decodierer 926 empfängt die Codewörter, die für die Nicht-Maßstabs-Koeffizienten stehen, und übersetzt diese Koeffizienten in rekonstruierte Maßstabs-Koeffizienten. Wie oben im Zusammenhang mit dem Verfahren erwähnt wurde, hängt die Operation des Decodierers 926 von dem Mittel ab, mit dem die Information über die Nicht-Maßstabs-Koeffizienten codiert wurde. Der Operator 904 erhebt die quantisierten Koeffizienten im rekonstruierten Spektrum in die Potenz 1/α, um die Wirkung des Operators 804 aufzuheben. Der Umkehrwandler 902 wendet eine Umkehrtransformation auf das Spektrum an, um die Wirkung des TDAC-Wandlers 802 rückgängig zu machen, und um das Signal aus der Frequenzdomäne in die Zeitdomäne zurück zu transformieren, wodurch sich ein gefenstertes Zeitdomänensegment ergibt. Der Kombinator 928 kombiniert die einzelnen abgetasteten Fenster und der Synthetizer 930 synthetisiert ein NF-Signal.
  • Eine andere bevorzugte Ausführungsform lässt den bandweisen Bitzuteiler weg und umfasst nur einen koeffizientenweisen Bitzuteiler, der die Schätzung von |X(k)|α übernimmt und dazu verwendet, dem Koeffizienten Bits direkt zuzuteilen, wie weiter oben im Hinblick auf das erfindungsgemäße Verfahren beschrieben wurde.
  • Die vorstehende Erläuterung des Verfahrens und der Vorrichtung sind von der Annahme ausgegangen, dass die Maßstabs-Koeffizienten die Koeffizienten mit dem absoluten Amplitudenhöchstwert im Band sind. Es ist auch von Vorteil, einen anderen Koeffizienten als die Maximalmagnitude als Referenz-Maßstabs-Koeffizienten zu verwenden, an der die anderen gemessen werden. Obwohl beispielsweise angenommen wird, dass beste Resultate mit der Verwendung des Koeffizienten mit der höchsten Amplitude erreicht werden, könnten vorteilhafte Ergebnisse auch unter Verwendung eines Koeffizienten erreicht werden, dessen Amplitude nahe an der größten ist, beispielsweise der zweit- oder drittgrößten. Ein solches Verfahren liegt im Rahmen der Erwägungen der Erfindung und soll mit den beigefügten Patentansprüchen abgedeckt sein.
  • Der Referenz- Maßstabs-Koeffizient kann auch ein Koeffizient mit einer Magnitude sein, die von allen Magnituden der anderen Koeffizienten im Band, dem mittleren oder medianen Koeffizienten im Band am nächsten ist. Ein Maßstabs-Koeffizient mittleren Werts ist in Fällen vorteilhaft, bei denen die statistischen Charakteristika des Signals so sind, dass der mittlere oder mediane Wert mehr Daten über die Gesamtenergie im Signal beinhaltet als der Höchstwert im Band. Dies wäre der Fall, wenn das stellvertretende Signal durch Schwingwege bzw. Abweichungen innerhalb eines beständigen Bereichs über und unter einen Mittelwert gekennzeichnet wäre. Es wäre auch notwendig, einen Bereich für die Magnitude dieser Schwingwege bzw. Abweichungen zu kennzeichnen oder zu schätzen. Wenn beispielsweise der mittlere Wert eines Bandes einen Wert von plus fünf hätte und aus den Statistiken dieser Signalart bekannt wäre, dass solche Signalwerte typischerweise um nur +/– vier Einheiten vom mittleren Wert abweichen, würde der Bereich von plus eins auf plus neun eingestellt und Rekonstruktionspegel würden innerhalb des Bereichs festgelegt werden. Wie zuvor können die Rekonstruktionspegel gleichmäßig unterteilt oder eher um den Mittelwert konzentriert oder zum Bereichsende hin verschoben werden, je nach den statistischen Daten über die spezielle Signalkategorie.
  • Auf ähnliche Weise kann der Maßstabs-Koeffizient der Koeffizient mit einer Magnitude sein, der dem Durchschnitt aller Magnituden der anderen Koeffizienten im Band am nächsten ist. Solch ein Durchschnittwert ist dann von Nutzen, wenn er einen besseren Schätzwert der Energie im Band darstellt, als irgend ein anderer Wert wie beispielsweise der Höchst- oder Medianwert.
  • Die vorliegende Erfindung hat viele Vorteile. Die Bits, die mit der Bitzuteilung zusammenhängen, wie beispielsweise Magnitude des Maßstabs-Koeffizienten sowie deren Lagen und Vorzeichen, werden gut geschützt. So wird jeder auftauchende Fehler in einem speziellen Band lokalisiert und deshalb nicht größer sein als die Magnitude des Maßstabs-Koeffizienten in jedem Band. Die Maßstabs-Koeffizienten werden immer genau dargestellt. Die Information über die Amplitude des Maßstabs-Koeffizienten wird nicht verworfen wie in manchen Verfahren aus dem Stand der Technik, sondern sehr effizient zu ihrer eigenen Verwendung und zur Bitzuteilung eingesetzt. Gegenüber dem in der Dolby-Schrift erörterten Verfahren setzt die Erfindung die verfügbaren Bits effizienter ein. Bei der Dolby-Methode werden die Exponenten der spektralen Spitzenwerte für jedes Band codiert. So wird zunächst eine Grobschätzung der Amplitude eines Bandes gemacht. Dann werden alle Koeffizienten einschließlich des Spitzenkoeffizienten unter Verwendung einer verfeinerten Schätzung ihrer Magnitude codiert und übertragen. Die Genauigkeit der Spitzenamplituden ist somit dieselbe wie die der anderen Koeffizienten in ein und demselben Band. Die Genauigkeit der Maßstabs-Koeffizienten in der vorliegenden Erfindung stellt sicher, dass genaue Bereiche zur Bestimmung der Rekonstruktionspegel verwendet werden, was wiederum einen effizienteren Einsatz der verfügbaren Bits ermöglicht.
  • Zusätzlich zu den vorstehenden spezifischen Implementierungen des Verfahrens und der Vorrichtung der Erfindung, liegen zusätzliche Varianten im beabsichtigten Rahmen der Patentansprüche. Es können Techniken mit eingeschlossen werden, die, zusätzlich zur Schätzung des Maskierungspegels, die menschlichen Wahrnehmungseigenschaften in Betracht ziehen.
  • Ferner kann mehr als ein Rahmen gleichzeitig in Betracht gezogen werden. Beispielsweise können in dem speziellen Fall von Stille, Bits aus dem Rahmen entnommen werden, in dem die Stille auftritt, und anderen Rahmen zugeteilt werden. In weniger extremen Fällen, kann es immer noch zweckmäßig sein, einem Rahmen weniger Bits als einem anderen zuzusprechen. Die Feststellung von Bändern kann durchlaufend geschehen, indem sequentielle Koeffizienten in ein Band aufgenommen werden, die näher aneinander liegen, und dann bei einem Koeffizienten oder einer deutlich verschiedenen Magnitude ein neues Band begonnen werden.
  • Ferner kann auch eine Wechselwirkung zwischen den Rahmen implementiert werden.
  • Die vorstehende Erörterung sollte als Veranschaulichung aufgefasst und in keiner Weise als einschränkend betrachtet werden. Während die Erfindung insbesondere mit Bezug auf deren bevorzugte Ausführungsformen dargestellt und beschrieben wurde, wird es Fachleuten klar sein, dass verschiedene Änderungen in der Form und den Einzelheiten daran vorgenommen werden können, ohne den in den Patentansprüchen definierten Rahmen der vorliegenden Erfindung zu verlassen.

Claims (46)

  1. Verfahren zum Codieren eines Tonfrequenzsignals, das durch Transformationskoeffizienten definiert ist, die in zumindest einer Richtung diskret sind, wobei das Verfahren umfasst: Bestimmen einer Aufteilung zumindest einiger der Transformationskoeffizienten in eine Vielzahl von Bändern, wobei zumindest eines der Bänder eine Vielzahl von benachbarten Transformationskoeffizienten aufweist; und Codieren von Daten, welche die bestimmte Aufteilung beschreiben.
  2. Verfahren nach Anspruch 1, wobei die Transformationskoeffizienten aus einer der folgenden Transformationen abgeleitet sind: einer DCT (Discrete Cosine Transform – diskrete Cosinustransformation) oder einer TDAC (Time Domain Aliasing Cancellation – Aufhebung des Zeitbereichs-Aliasing).
  3. Verfahren nach den Ansprüchen 1 oder 2, wobei die Transformationskoeffizienten Transformationskoeffizienten umfassen, die aus einem Rahmen abgeleitet sind, der erhalten wird, indem ein Fenster an Signalproben angelegt wird.
  4. Verfahren nach den Ansprüchen 1 oder 3, wobei die Bestimmung der Aufteilung umfasst, basierend auf lokalen Merkmalen zu bestimmen.
  5. Verfahren nach Anspruch 4, wobei die Bestimmung einer Aufteilung basierend auf lokalen Merkmalen umfasst, mit einem neuen Band anzufangen, wenn sich benachbarte Transformationskoeffizienten signifikant in der Größe unterscheiden.
  6. Verfahren nach den Ansprüchen 1 oder 3, darüber hinaus umfassend, zumindest einige der Transformationskoeffizienten unter Verwendung der bestimmten Aufteilung zu codieren.
  7. Verfahren nach Anspruch 1, wobei sich die Aufteilung für unterschiedliche Sätze von Transformationskoeffizienten unterscheidet.
  8. Verfahren nach Anspruch 3, wobei sich die Aufteilung für unterschiedliche Rahmen unterscheidet.
  9. Verfahren nach den Ansprüchen 1 oder 3, wobei sich die Aufteilung für unterschiedliche Signale unterscheidet.
  10. Verfahren nach den Ansprüchen 1 oder 3, darüber hinaus umfassend, einen Transformationskoeffizienten aus jedem der mehreren Bänder auszuwählen, wobei zumindest einer der ausgewählten Transformationskoeffizienten aus einem der Bänder stammt, das eine Vielzahl von benachbarten Transformationskoeffizienten aufweist.
  11. Verfahren nach Anspruch 10, wobei das Auswählen eines Transformationskoeffizienten umfasst, den Transformationskoeffizienten mit der größten Größe bezüglich der anderen Transformationskoeffizienten im Band auszuwählen.
  12. Verfahren nach Anspruch 10, wobei das Auswählen eines Transformationskoeffizienten umfasst, den Transformationskoeffizienten mit einer vorbestimmten Größe bezüglich der anderen Transformationskoeffizienten im Band auszuwählen.
  13. Verfahren nach den Ansprüchen 10, 11 oder 12, darüber hinaus umfassend, eine Transformation basierend auf den ausgewählten Transformationskoeffizienten durchzuführen.
  14. Verfahren nach Anspruch 13, wobei die Transformation die durchschnittliche Anzahl von Bits reduziert, die gebraucht werden, um die ausgewählten Transformationskoeffizienten zu codieren.
  15. Verfahren nach Anspruch 13, wobei die Durchführung einer Transformation umfasst, eine Transformation basierend auf den Größen der ausgewählten Transformationskoeffizienten durchzuführen.
  16. Verfahren nach Anspruch 15, wobei die Transformation die durchschnittliche Anzahl von Bits reduziert, die gebraucht werden, um die Größen der ausgewählten Transformationskoeffizienten zu codieren.
  17. Verfahren nach Anspruch 13, darüber hinaus umfassend, zu bestimmen, ob die Transformation durchgeführt werden soll.
  18. Verfahren nach Anspruch 13, darüber hinaus umfassend, die ausgewählten Transformationskoeffizienten zu quantisieren, und wobei die auf den ausgewählten Transformationskoeffizienten basierende Transformation eine Transformation umfasst, die auf den quantisierten ausgewählten Transformationskoeffizienten basiert.
  19. Verfahren nach Anspruch 18, wobei die Transformation die durchschnittliche Anzahl von Bits reduziert, die gebraucht werden, um die quantisierten ausgewählten Transformationskoeffizienten zu codieren.
  20. Verfahren nach Anspruch 19, wobei die Quantisierung der ausgewählten Transformationskoeffizienten umfasst, die Größen der ausgewählten Transformationskoeffizienten zu quantisieren, und wobei die auf den ausgewählten Transformationskoeffizienten basierende Transformation eine Transformation umfasst, die auf den quantisierten Größen der ausgewählten Transformationskoeffizienten basiert.
  21. Verfahren nach Anspruch 20, wobei die Transformation die durchschnittliche Anzahl von Bits reduziert, die gebraucht werden, um die quantisierten Größen der ausgewählten Transformationskoeffizienten zu codieren.
  22. Verfahren nach Anspruch 18, 19 oder 20, wobei die Quantisierung eine nichtlineare Abbildung umfasst.
  23. Verfahren nach den Ansprüchen 13, 14, 15, 16, 17, 18, 19, 20, 21 oder 22, wobei die Transformation eine der folgenden umfasst: eine DCT (diskrete Cosinustransformation) oder eine DFT (diskrete Fourier-Transformation).
  24. Decodierungsverfahren, umfassend: Empfangen eines codierten Tonfrequenzsignals, das durch diskrete Transformationskoeffizienten definiert ist, wobei das codierte Tonfrequenzsignal dieser Art codiert ist durch: Bestimmen einer Aufteilung zumindest einiger der Transformationskoeffizienten in eine Vielzahl von Bändern, wobei zumindest eines der Bänder eine Vielzahl von benachbarten Transformationskoeffizienten aufweist; und Codieren von Daten, welche die bestimmte Aufteilung beschreiben; und Decodieren zumindest einiger der codierten Tonfrequenzsignale auf eine Weise, die angemessen umgekehrt auf die Art der Codierung bezogen ist, wobei das Decodieren umfasst, Daten zu decodieren, welche die bestimmte Aufteilung beschreiben.
  25. Verfahren nach Anspruch 24, wobei die Transformationskoeffizienten aus einer der folgenden Transformationen abgeleitet sind: einer DCT (Dircrete Cosine Transform – diskrete Cosinustransformation) oder einer TDAC (Time Domain Aliasing Cancellation – Aufhebung des Zeitbereichs-Aliasing).
  26. Verfahren nach den Ansprüchen 24 oder 25, wobei die Transformationskoeffizienten Transformationskoeffizienten umfassen, die aus einem Rahmen abgeleitet sind, der erhalten wird, indem ein Fenster an Signalproben angelegt wird.
  27. Verfahren nach den Ansprüchen 24 oder 26, wobei die Bestimmung der Aufteilung umfasst, basierend auf lokalen Merkmalen zu bestimmen.
  28. Verfahren nach Anspruch 27, wobei die Bestimmung einer Aufteilung basierend auf lokalen Merkmalen umfasst, mit einem neuen Band anzufangen, wenn sich benachbarte Transformationskoeffizienten signifikant in der Größe unterscheiden.
  29. Verfahren nach den Ansprüchen 24 oder 26, wobei das codierte Tonfrequenzsignal von der Art ist, die durch Codieren mindestens einiger der Transformationskoeffizienten unter Verwendung der bestimmten Aufteilung codiert werden.
  30. Verfahren nach Anspruch 24, wobei sich die Aufteilung für unterschiedliche Sätze von Transformationskoeffizienten unterscheidet.
  31. Verfahren nach Anspruch 26, wobei sich die Aufteilung für unterschiedliche Rahmen unterscheidet.
  32. Verfahren nach den Ansprüchen 24 oder 26, wobei sich die Aufteilung für unterschiedliche Signale unterscheidet.
  33. Verfahren nach den Ansprüchen 24 oder 26, wobei das codierte Tonfrequenzsignal von der Art ist, die durch Auswählen eines Transformationskoeffizienten aus jedem der mehreren Bänder codiert werden, wobei zumindest einer der ausgewählten Transformationskoeffizienten aus einem der Bänder stammt, das eine Vielzahl von benachbarten Transformationskoeffizienten aufweist.
  34. Verfahren nach Anspruch 33, wobei das Auswählen eines Transformationskoeffizienten umfasst, den Transformationskoeffizienten mit der größten Größe bezüglich der anderen Transformationskoeffizienten im Band auszuwählen.
  35. Verfahren nach Anspruch 33, wobei das Auswählen eines Transformationskoeffizienten umfasst, den Transformationskoeffizienten mit einer vorbestimmten Größe bezüglich der anderen Transformationskoeffizienten im Band auszuwählen.
  36. Verfahren nach den Ansprüchen 33, 34 oder 35, wobei das codierte Tonfrequenzsignal von der Art ist, die durch Durchführen einer auf den ausgewählten Transformationskoeffizienten basierenden Transformation codiert wird.
  37. Verfahren nach Anspruch 36, wobei die Transformation die durchschnittliche Anzahl von Bits reduziert, die gebraucht werden, um die ausgewählten Transformationskoeffizienten zu codieren.
  38. Verfahren nach Anspruch 36, wobei die Durchführung einer Transformation umfasst, eine Transformation basierend auf den Größen der ausgewählten Transformationskoeffizienten durchzuführen.
  39. Verfahren nach Anspruch 38, wobei die Transformation die durchschnittliche Anzahl von Bits reduziert, die gebraucht werden, um die Größen der ausgewählten Transformationskoeffizienten zu codieren.
  40. Verfahren nach Anspruch 36, wobei das codierte Tonfrequenzsignal von der Art ist, die codiert wird, indem bestimmt wird, ob die Transformation durchgeführt werden soll.
  41. Verfahren nach Anspruch 36, wobei das codierte Tonfrequenzsignal von der Art ist, die codiert wird durch: Quantisieren der ausgewählten Transformationskoeffizienten, und wobei die auf den ausgewählten Transformationskoeffizienten basierende Transformation eine Transformation umfasst, die auf den quantisierten ausgewählten Transformationskoeffizienten basiert.
  42. Verfahren nach Anspruch 41, wobei die Transformation die durchschnittliche Anzahl von Bits reduziert, die gebraucht werden, um die quantisierten ausgewählten Transformationskoeffizienten zu codieren.
  43. Verfahren nach Anspruch 41, wobei die Quantisierung der ausgewählten Transformationskoeffizienten umfasst, die Größen der ausgewählten Transformationskoeffizienten zu quantisieren, und wobei die auf den ausgewählten Transformationskoeffizienten basierende Transformation eine Transformation umfasst, die auf den quantisierten Größen der ausgewählten Transformationskoeffizienten basiert.
  44. Verfahren nach Anspruch 43, wobei die Transformation die durchschnittliche Anzahl von Bits reduziert, die gebraucht werden, um die quantisierten Größen der ausgewählten Transformationskoeffizienten zu codieren.
  45. Verfahren nach Anspruch 41, 42 oder 43, wobei die Quantisierung eine nichtlineare Abbildung umfasst.
  46. Verfahren nach den Ansprüchen 36, 37, 38, 39, 40, 41, 42, 43, 44 oder 45, wobei die Transformation eine der folgenden umfasst: eine DCT (diskrete Cosinustransformation) oder eine DFT (diskrete Fourier-Transformation).
DE69333786T 1992-01-17 1993-01-13 Verfahren zum Kodieren und Dekodieren von Audiodaten Expired - Lifetime DE69333786T2 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US07/822,247 US5394508A (en) 1992-01-17 1992-01-17 Method and apparatus for encoding decoding and compression of audio-type data
US822247 1992-01-17
US879635 1992-05-07
US07/879,635 US5369724A (en) 1992-01-17 1992-05-07 Method and apparatus for encoding, decoding and compression of audio-type data using reference coefficients located within a band of coefficients

Publications (2)

Publication Number Publication Date
DE69333786D1 DE69333786D1 (de) 2005-04-28
DE69333786T2 true DE69333786T2 (de) 2006-03-30

Family

ID=27124626

Family Applications (2)

Application Number Title Priority Date Filing Date
DE69329796T Expired - Lifetime DE69329796T2 (de) 1992-01-17 1993-01-13 Verfahren zur kodierung, dekodierung und kompression von audiodaten
DE69333786T Expired - Lifetime DE69333786T2 (de) 1992-01-17 1993-01-13 Verfahren zum Kodieren und Dekodieren von Audiodaten

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE69329796T Expired - Lifetime DE69329796T2 (de) 1992-01-17 1993-01-13 Verfahren zur kodierung, dekodierung und kompression von audiodaten

Country Status (7)

Country Link
US (2) US5369724A (de)
EP (2) EP0961414B1 (de)
AT (2) ATE198384T1 (de)
CA (1) CA2128216C (de)
DE (2) DE69329796T2 (de)
ES (2) ES2155449T3 (de)
WO (1) WO1993014492A1 (de)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5369724A (en) * 1992-01-17 1994-11-29 Massachusetts Institute Of Technology Method and apparatus for encoding, decoding and compression of audio-type data using reference coefficients located within a band of coefficients
US5394508A (en) * 1992-01-17 1995-02-28 Massachusetts Institute Of Technology Method and apparatus for encoding decoding and compression of audio-type data
IT1257431B (it) * 1992-12-04 1996-01-16 Sip Procedimento e dispositivo per la quantizzazione dei guadagni dell'eccitazione in codificatori della voce basati su tecniche di analisi per sintesi
US5659659A (en) * 1993-07-26 1997-08-19 Alaris, Inc. Speech compressor using trellis encoding and linear prediction
US5805770A (en) * 1993-11-04 1998-09-08 Sony Corporation Signal encoding apparatus, signal decoding apparatus, recording medium, and signal encoding method
KR960704300A (ko) * 1994-05-25 1996-08-31 이데이 노부유키 부호화 방법, 복호화 방법, 부호화/복호화 방법, 부호화 장치, 복호화 장치 및 부호화/복호화 장치(Encoding method, decoding method, encoding/decoding method, encoding apparatus, decoding apparatus, and encoding/decoding apparatus)
US5602961A (en) * 1994-05-31 1997-02-11 Alaris, Inc. Method and apparatus for speech compression using multi-mode code excited linear predictive coding
US5787387A (en) * 1994-07-11 1998-07-28 Voxware, Inc. Harmonic adaptive speech coding method and system
US5648989A (en) * 1994-12-21 1997-07-15 Paradyne Corporation Linear prediction filter coefficient quantizer and filter set
JPH0969781A (ja) * 1995-08-31 1997-03-11 Nippon Steel Corp オーディオデータ符号化装置
US5774837A (en) * 1995-09-13 1998-06-30 Voxware, Inc. Speech coding system and method using voicing probability determination
JP2820096B2 (ja) * 1996-01-10 1998-11-05 日本電気株式会社 符号化方式および復号方式
JP3189660B2 (ja) 1996-01-30 2001-07-16 ソニー株式会社 信号符号化方法
JP3491425B2 (ja) * 1996-01-30 2004-01-26 ソニー株式会社 信号符号化方法
US6111870A (en) 1996-11-07 2000-08-29 Interdigital Technology Corporation Method and apparatus for compressing and transmitting high speed data
US5832443A (en) * 1997-02-25 1998-11-03 Alaris, Inc. Method and apparatus for adaptive audio compression and decompression
US5991454A (en) * 1997-10-06 1999-11-23 Lockheed Martin Coporation Data compression for TDOA/DD location system
US5899969A (en) * 1997-10-17 1999-05-04 Dolby Laboratories Licensing Corporation Frame-based audio coding with gain-control words
US6012025A (en) * 1998-01-28 2000-01-04 Nokia Mobile Phones Limited Audio coding method and apparatus using backward adaptive prediction
JP2000165251A (ja) * 1998-11-27 2000-06-16 Matsushita Electric Ind Co Ltd オーディオ信号符号化装置及びそれを実現したマイクロホン
US6226608B1 (en) * 1999-01-28 2001-05-01 Dolby Laboratories Licensing Corporation Data framing for adaptive-block-length coding system
FR2796190B1 (fr) * 1999-07-05 2002-05-03 Matra Nortel Communications Procede et dispositif de codage audio
US6446037B1 (en) * 1999-08-09 2002-09-03 Dolby Laboratories Licensing Corporation Scalable coding method for high quality audio
EP1113432B1 (de) * 1999-12-24 2011-03-30 International Business Machines Corporation Verfahren und System zur Erkennung von identischen digitalen Daten
US6934677B2 (en) 2001-12-14 2005-08-23 Microsoft Corporation Quantization matrices based on critical band pattern information for digital audio wherein quantization bands differ from critical bands
US7240001B2 (en) 2001-12-14 2007-07-03 Microsoft Corporation Quality improvement techniques in an audio encoder
JP4676140B2 (ja) 2002-09-04 2011-04-27 マイクロソフト コーポレーション オーディオの量子化および逆量子化
US7502743B2 (en) 2002-09-04 2009-03-10 Microsoft Corporation Multi-channel audio encoding and decoding with multi-channel transform selection
US7460990B2 (en) 2004-01-23 2008-12-02 Microsoft Corporation Efficient coding of digital media spectral data using wide-sense perceptual similarity
US7418394B2 (en) * 2005-04-28 2008-08-26 Dolby Laboratories Licensing Corporation Method and system for operating audio encoders utilizing data from overlapping audio segments
US7630882B2 (en) * 2005-07-15 2009-12-08 Microsoft Corporation Frequency segmentation to obtain bands for efficient coding of digital media
US7562021B2 (en) 2005-07-15 2009-07-14 Microsoft Corporation Modification of codewords in dictionary used for efficient coding of digital media spectral data
KR101261524B1 (ko) * 2007-03-14 2013-05-06 삼성전자주식회사 노이즈를 포함하는 오디오 신호를 저비트율로부호화/복호화하는 방법 및 이를 위한 장치
US7761290B2 (en) 2007-06-15 2010-07-20 Microsoft Corporation Flexible frequency and time partitioning in perceptual transform coding of audio
US8046214B2 (en) * 2007-06-22 2011-10-25 Microsoft Corporation Low complexity decoder for complex transform coding of multi-channel sound
US7885819B2 (en) 2007-06-29 2011-02-08 Microsoft Corporation Bitstream syntax for multi-process audio decoding
US8249883B2 (en) 2007-10-26 2012-08-21 Microsoft Corporation Channel extension coding for multi-channel source
PL3046104T3 (pl) * 2013-09-16 2020-02-28 Samsung Electronics Co., Ltd. Sposób kodowania sygnału oraz sposób dekodowania sygnału
WO2015037969A1 (ko) 2013-09-16 2015-03-19 삼성전자 주식회사 신호 부호화방법 및 장치와 신호 복호화방법 및 장치
KR102625143B1 (ko) * 2014-02-17 2024-01-15 삼성전자주식회사 신호 부호화방법 및 장치와 신호 복호화방법 및 장치
JP6763849B2 (ja) 2014-07-28 2020-09-30 サムスン エレクトロニクス カンパニー リミテッド スペクトル符号化方法
EP3079151A1 (de) * 2015-04-09 2016-10-12 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audiocodierer und verfahren zur codierung eines audiosignals
CN110120217B (zh) * 2019-05-10 2023-11-24 腾讯科技(深圳)有限公司 一种音频数据处理方法及装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3167257D1 (en) * 1981-02-27 1985-01-03 Ibm Transmission methods and apparatus for implementing the method
US4899384A (en) * 1986-08-25 1990-02-06 Ibm Corporation Table controlled dynamic bit allocation in a variable rate sub-band speech coder
US5222189A (en) * 1989-01-27 1993-06-22 Dolby Laboratories Licensing Corporation Low time-delay transform coder, decoder, and encoder/decoder for high-quality audio
ATE116495T1 (de) * 1989-01-27 1995-01-15 Dolby Lab Licensing Corp Transformationscodierer, -decodierer und - codierer/decodierer mit kurzer zeitverzögerung für audio-anwendungen hoher qualität.
US5230038A (en) * 1989-01-27 1993-07-20 Fielder Louis D Low bit rate transform coder, decoder, and encoder/decoder for high-quality audio
JPH03117919A (ja) * 1989-09-30 1991-05-20 Sony Corp ディジタル信号符号化装置
JP2861238B2 (ja) * 1990-04-20 1999-02-24 ソニー株式会社 ディジタル信号符号化方法
NL9001127A (nl) * 1990-05-14 1991-12-02 Philips Nv Kodeerinrichting bevattende een subbandkoder, en een zender voorzien van de kodeerinrichting.
US5369724A (en) * 1992-01-17 1994-11-29 Massachusetts Institute Of Technology Method and apparatus for encoding, decoding and compression of audio-type data using reference coefficients located within a band of coefficients

Also Published As

Publication number Publication date
CA2128216C (en) 2006-06-06
DE69333786D1 (de) 2005-04-28
US5369724A (en) 1994-11-29
DE69329796T2 (de) 2001-08-02
EP0628195B1 (de) 2000-12-27
US5640486A (en) 1997-06-17
EP0961414B1 (de) 2005-03-23
ATE198384T1 (de) 2001-01-15
EP0961414A2 (de) 1999-12-01
CA2128216A1 (en) 1993-07-22
EP0628195A4 (de) 1996-07-31
EP0961414A3 (de) 2000-08-30
ES2238798T3 (es) 2005-09-01
ES2155449T3 (es) 2001-05-16
DE69329796D1 (de) 2001-02-01
ATE291771T1 (de) 2005-04-15
WO1993014492A1 (en) 1993-07-22
EP0628195A1 (de) 1994-12-14

Similar Documents

Publication Publication Date Title
DE69333786T2 (de) Verfahren zum Kodieren und Dekodieren von Audiodaten
DE69028675T2 (de) Wahrnehmungsgebundene Kodierung von Audiosignalen
DE69431622T2 (de) Verfahren und gerät zum kodieren von mit mehreren bits kodiertem digitalem ton durch subtraktion eines adaptiven zittersignals, einfügen von versteckten kanalbits und filtrierung, sowie kodiergerät zur verwendung bei diesem verfahren
DE69924431T2 (de) Vorrichtung und Verfahren zur dynamischen Bitverteilung für Audiokodierung
DE69326484T2 (de) Vorrichtung und Verfahren zur Datenkompression
DE69326492T2 (de) Verfahren zur Auswahl des Codier Modus für Stereo Audio-Signale unter Benutzung von Hörbarkeitsmodellen
DE60310716T2 (de) System für die audiokodierung mit füllung von spektralen lücken
DE69015613T2 (de) Transformationscodierer, -decodierer und -codierer/decodierer mit kurzer zeitverzögerung für audio-anwendungen hoher qualität.
DE3784120T2 (de) Tabellengesteuerte dynamische bitverteilung in einem teilband-sprachkodierer mit veraenderlicher datenrate.
DE69320872T2 (de) Kompression und Dehnung von digitalen Signalen
DE69323106T2 (de) Verfahren und Vorrichtung für perceptuelles Kodieren von Audio-Signalen
DE69531471T2 (de) Mehrkanalsignalkodierung unter Verwendung gewichteter Vektorquantisierung
DE60214027T2 (de) Kodiervorrichtung und dekodiervorrichtung
DE69401514T2 (de) Vom rechenaufwand her effiziente adaptive bitzuteilung für kodierverfahren und kodiereinrichtung
DE69522187T2 (de) Verfahren und vorrichtung zur kodierung, dekodierung und kodierung-dekodierung
DE69428030T2 (de) Digitales signalkodierungsgerät, dazugehöriges dekodiergerät und aufzeichnungsträger
DE69013738T2 (de) Einrichtung zur Sprachcodierung.
DE69029232T2 (de) System und Methode zur Sprachkodierung
DE69431025T2 (de) Signalkodier- oder -dekodiergerät und Aufzeichnungsmedium
EP0954909A1 (de) Verfahren zum codieren eines audiosignals
DE69015105T2 (de) Kompressionseinrichtung für transformiertes, digitales Audiosignal mit adaptiver Quantisierung auf Grund eines psycho-akustischen Kriteriums.
DE60038279T2 (de) Beitband Sprachkodierung mit parametrischer Kodierung des Hochfrequenzanteils
DE60017825T2 (de) Verfahren und Vorrichtung zur Kodierung und Dekodierung von Audiosignalen und Aufzeichnungsträger mit Programmen dafür
DE69426860T2 (de) Sprachcodierer und Verfahren zum Suchen von Codebüchern
DE602005005441T2 (de) Audiocodierung auf der basis von blockgruppierung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
R071 Expiry of right

Ref document number: 961414

Country of ref document: EP