[go: up one dir, main page]

DE60017825T2 - Verfahren und Vorrichtung zur Kodierung und Dekodierung von Audiosignalen und Aufzeichnungsträger mit Programmen dafür - Google Patents

Verfahren und Vorrichtung zur Kodierung und Dekodierung von Audiosignalen und Aufzeichnungsträger mit Programmen dafür Download PDF

Info

Publication number
DE60017825T2
DE60017825T2 DE60017825T DE60017825T DE60017825T2 DE 60017825 T2 DE60017825 T2 DE 60017825T2 DE 60017825 T DE60017825 T DE 60017825T DE 60017825 T DE60017825 T DE 60017825T DE 60017825 T2 DE60017825 T2 DE 60017825T2
Authority
DE
Germany
Prior art keywords
coefficient
segments
segment
coefficient segments
sequences
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
DE60017825T
Other languages
English (en)
Other versions
DE60017825D1 (de
Inventor
Naoki Iwakami
Takehiro Moriya
Akio Jin
Kazuaki Chikira
Takeshi Mori
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.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Application granted granted Critical
Publication of DE60017825D1 publication Critical patent/DE60017825D1/de
Publication of DE60017825T2 publication Critical patent/DE60017825T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

  • HINTERGRUND DER ERFINDUNG
  • Die vorliegende Erfindung betrifft Verfahren und Vorrichtungen zum Codieren eines Audiosignals in einen digitalen Code mit hoher Effektivität und zum Decodieren des digitalen Codes in das Audiosignal, die zum Aufzeichnen und Wiedergeben von Audiosignalen und deren Übertragung und Sendung über einen Kommunikationskanal eingesetzt werden können.
  • Ein herkömmliches Audiocodierschema hoher Effektivität ist ein solches Transformationscodierverfahren, wie es in der 1 dargestellt ist. Bei diesem Verfahren wird ein als eine Folge von Signalabtastwerten eingegebenes Audiosignal in einem Zeit-Frequenz-Transformationsteil 11 nach jeder Eingabe einer festgelegten Anzahl von Abtastwerten in Frequenzbereichskoeffizienten transformiert und dann codiert, und die codierten Frequenzbereichskoeffizienten werden in einem Vorverarbeitungsteil 2 vorverarbeitet und in einem Quantisierungsteil 3 quantisiert. Ein typisches Beispiel für dieses Schema ist TWINVQ (Transform-domain Weighted Interleave Vector Quantization).
  • Das TWINVQ-Schema verwendet auf der letzten Stufe des Quantisierungsteils 3 gewichtete verschachtelte Vektorquantisierung. Die Vektorquantisierung weist eine zweistufige Glättung von Koeffizienten in dem Vorverarbeitungsteil 2 auf, weil die Quantisierungseffektivität ansteigt, wenn die Verteilung von eingegebenen Koeffizientenwerten glatter wird. Auf der ersten Stufe werden die Frequenzbereichskoeffizienten mit dem LPC-Spektrum normiert, um dadurch ihre Gesamtabweichungen grob zu glätten. Auf der zweiten Stufe werden die Frequenzbereichskoeffizienten für jedes von mehreren Teilbändern, die auf der Bark-Skala dieselbe Bandbreite haben, weiter normiert, wodurch sie feiner geglättet werden als auf der ersten Stufe. Die Bark-Skala ist eine Art von Frequenzskala.
  • Die Bark-Skala hat die Eigenschaft, dass Frequenzen an gleich weit voneinander beabstandeten Punkten Tonhöhen liefern, die im Hinblick auf den menschlichen Gehörsinn beinahe gleich weit voneinander beabstandet sind. Auf der Bark-Skala sind die Teilbänder derselben Bandbreite in der Wahrnehmung ungefähr gleich breit, jedoch wächst auf einer linearen Skala ihre Bandbreite mit einem Anwachsen der Frequenz wie in der 2 gezeigt an. Wenn dementsprechend die Frequenzbereichskoeffizienten in Teilbänder aufgespalten werden, die auf der Bark-Skala ähnliche Bandbreiten haben, dann enthalten sie um so mehr Koeffizienten, je höher die Frequenz des Teilbandes ist.
  • Mit der Glättung der zweiten Stufe auf der Bark-Skala ist beabsichtigt, einen begrenzten Betrag an Information effektiv zuzuordnen, wobei der menschliche Gehörsinn mit berücksichtigt wird. Die Glättungsoperation durch Normierung für jedes Teilband auf der Bark-Skala basiert auf der Erwartung, dass die Koeffizienten in den Teilbändern stetig sind; weil aber die Teilbänder bei höhe ren Frequenzen mehr Koeffizienten enthalten, tritt gelegentlich die Situation ein, dass die Koeffizienten in den Teilbändern nicht stetig sind, wie in der 2 dargestellt. Dies bringt eine Schmälerung der Effektivität der Vektorquantisierung mit sich, was zu einer Verschlechterung der Tonqualität von decodierten Audiosignalen führt. Das Auftreten eines solchen Problems ist insbesondere dann wahrscheinlich, wenn das eingegebene Audiosignal viele Klangkomponenten im Hochfrequenzbereich enthält.
  • Nebenbei erwähnt ist das TWINVQ-Schema im Einzelnen in N. Iwakami, et al., „Transformed Domain Interleave Vector Quantization (TwinVQ)". Vorabdruck der 101st Audio Engineering Society Convention, 4377, (1996), beschrieben.
  • Bei der Audiocodierung der 1 kann die Quantisierung auch eine skalare Quantisierung sein, die eine adaptive Bitzuweisung verwendet. Ein solches Codierverfahren spaltet die Frequenzbereichskoeffizienten in Teilbänder auf und führt für jedes Teilband eine optimale Bitzuweisung aus. Die Teilbänder können manchmal so aufgeteilt werden, dass sie mit Hinblick auf das Erreichen einer besseren Anpassung an den menschlichen Gehörsinn auf der Bark-Skala dieselbe Bandbreite haben. In diesem Beispiel sind die Koeffizienten in den Teilbändern bei höheren Frequenzen jedoch oft nicht stetig, wie im Fall des TWINVQ-Schemas, was zu einer Schmälerung der Quantisierungseffektivität führt.
  • Als eine Lösung für ein solches Problem wird in der offengelegten japanischen Patentanmeldung Nr. 7-336232 ein Codierverfahren vorgeschlagen, welches das eingegebene Signal in ein Frequenzbereichsignal transformiert und adaptiv mit der Form der spektralen Hüllkurve die Bandbreite jedes Teilbandes ändert, in dem die Frequenzbereichskoeffizienten geglättet (normiert) werden. Dieses Verfahren macht die Bandbreiten von Teilbändern, die Klangkomponenten enthalten, eng und die Bandbreiten von anderen Teilbändern breit, wobei es dabei die Anzahl der Teilbänder reduziert und daher die Codiereffektivität dementsprechend erhöht. Wenn bei diesem Verfahren jedoch die Klangkomponenten spärlich sind, werden enge Bandbreiten auf glatte Teile in der Nähe der Klangkomponenten angewendet, was manchmal die Codiereffektivität schmälert. Darüber hinaus muss die Normierungsinformation für jede Komponente codiert und versendet werden; wenn viele Klangkomponenten gestreut sind, wächst daher die Menge an zu codierender Normierungsinformation dementsprechend an.
  • Mit Hinblick auf eine Erhöhung der Codiereffektivität wird in der offengelegten japanischen Patentanmeldunng Nr. 7-168593 ein Schema des voneinander getrennten Codierens der Klangkomponente und anderer vorgeschlagen. Weil bei diesem Schema das Spektrum von jedem maximalen Wert und benachbarte Spektren als ein Klangkomponentensignal einer Gruppe normiert und codiert werden, muss Information über die Position des Spektrums des maximalen Wertes und die Gruppengröße codiert und versendet werden. Wenn viele Klangkomponenten vorliegen, ist es aus diesem Grund notwendig, viele Informationen über die Positionen der Spektren von maximalen Werten und Gruppengrößen zu codieren – es ist wahrscheinlich, dass dies beim Erhöhen der Codiereffektivität ein Hindernis bildet.
  • Die offengelegte japanische Patentanmeldung Nr. 7-248145 beschreibt ein Schema, welches Tonhöhenkomponenten trennt, die durch gleich weit voneinander beabstandete Klangkomponenten gebildet werden, und sie einzeln codiert. Die Positionsinformation der Tonhöhenkomponenten ist durch die fundamentale Frequenz der Tonhöhe gegeben, und daher ist die Menge der einbezogenen Information klein; im Fall eines metallischen Tons oder dergleichen mit einer nicht ganzzahligen harmonischen Struktur können die Klangkomponenten jedoch nicht genau getrennt werden.
  • EP-A-0 713 295 und US-A-5,805,770 offenbaren beide ein Codierschema, bei dem Frequenzbereichskoeffizienten in Teilbänder geteilt werden, Koeffizienten in jedem Teilband, in dem Energie, falls vorhanden, konzentriert ist, als Klangkomponenten erfasst werden, Regionen erfasster Klangkomponenten von den verbleibenden verrauschten Regionen getrennt werden, die Klangregionen und verrauschten Regionen voneinander getrennt codiert werden und auch Positionen der Klangkomponenten codiert werden.
  • KURZBESCHREIBUNG DER ERFINDUNG
  • Es ist eine Aufgabe der vorliegenden Erfindung ein Codierverfahren, welches eine Transformationscodierung eines eingegebenen Audiosignals mit vielen Klangkomponenten im Hochfrequenzbereich mit hoher Effektivität erlaubt, ein Decodierverfahren für ein solches codiertes Signal, eine Vorrichtung, welche das Codier- und Decodierverfahren verwendet, und ein Aufzeichnungsmedium, auf dem die Verfahren als computerausführbare Programme aufgezeichnet sind, bereitzustellen.
  • Diese Aufgabe wird jeweils durch ein Audiosignalcodierverfahren mit den Merkmalen des Anspruchs 1, ein Decodierverfahren mit den Merkmalen der Ansprüche 16 und 17, eine Codiervorrichtung mit den Merkmalen der Ansprüche 26 und 27, eine Decodiervorrichtung mit den Merkmalen der Ansprüche 29 und 30 und ein Aufzeichnungsmedium mit den Merkmalen der Ansprüche 32 und 33 erreicht.
  • Gemäß der vorliegenden Erfindung werden Frequenzbereichskoeffizienten nach jeder Mehrzahl von Koeffizienten geteilt, um eine Einzelsequenz von Koeffizientensegmenten zu bilden, die Einzelsequenz von Koeffizientensegmenten wird in eine zusammenhängende Sequenz von mehreren Teilbändern aufgeteilt, von denen jedes aus einer Mehrzahl von Koeffizientensegmenten besteht, die Koeffizientensegmente werden für jedes Teilband in mehrere Sequenzen von klassifizierten Koeffizientensegmenten klassifiziert, und die mehreren Sequenzen von klassifizierten Koeffizientensegmenten werden codiert. Dieses Codierschema erlaubt es, die gesamte Menge an Information, die übertragen oder aufgezeichnet werden soll, zu reduzieren und decodierte Audiosignale mit hoher Qualität zu wiederzugeben.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockdiagramm, das eine allgemeine Form eines Transformationscodierverfahrens darstellt;
  • 2 ist ein Wellenformdiagramm, das ein Beispiel für die Amplitudenform von Frequenzbereichskoeffizienten zeigt;
  • 3 ist ein Diagramm zum Erklären der Prinzipien der vorliegenden Erfindung;
  • 4 ist ein Blockdiagram, das die funktionale Konfiguration einer ersten Ausgestaltung der vorliegenden Erfindung darstellt;
  • 5 ist ein Blockdiagram, das eine detaillierte funktionale Konfiguration eines Koeffizientensegmentklassifizierungsbestimmungsteils 13 in einer ersten, zweiten und dritten Ausgestaltung der vorliegenden Erfindung darstellt;
  • 6 ist ein Flussdiagramm der Verarbeitung eines Koeffizientensegmentklassifizierungsteils 14 in der ersten, zweiten und dritten Ausgestaltung der vorliegenden Erfindung;
  • 7 ist ein Diagramm, das die Betriebsweise eines Koeffizientensegmentklassifizierungsinformationskomprimierungsteils 15 in der ersten, zweiten und dritten Ausgestaltung der vorliegenden Erfindung zeigt;
  • 8 ist ein Flussdiagramm der Verarbeitung eines Koeffizientenkombinierteils 35 in der ersten, zweiten und dritten Ausgestaltung der vorliegenden Erfindung;
  • 9 ist ein Blockdiagramm, das die funktionale Konfiguration der zweiten Ausgestaltung der vorliegenden Erfindung zeigt;
  • 10 ist ein Diagramm zum Erklären der Glättung von Frequenzbereichskoeffizienten in der zweiten und dritten Ausgestaltung der vorliegenden Erfindung;
  • 11A ist ein Blockdiagramm, das ein Beispiel für die Konfiguration eines Glättungs/Kombinierteils 20 in der 9 darstellt;
  • 11B ist ein Blockdiagramm, das ein Beispiel für die Konfiguration eines Inversglättungs/Kombinierteils 40 in der 9 darstellt;
  • 12 ist ein Blockdiagramm, das eine detaillierte funktionale Konfiguration eines ersten Glättungsteils 21 in der zweiten und dritten Ausgestaltung der vorliegenden Erfindung zeigt;
  • 13 ist ein Flussschaubild der Verarbeitung eines Frequenzbandrekonstruktionsteils 21-1 des Glättungsteils in der zweiten und dritten Ausgestaltung der vorliegenden Erfindung;
  • 14 ist ein Blockdiagramm, das ein Beispiel für die funktionale Konfiguration eines ersten Inversglättungsteils 41 in der 11B darstellt;
  • 15 ist ein Blockdiagramm, das ein weiteres Beispiel für die funktionale Konfiguration des ersten Glättungsteils 21 in der 11A darstellt;
  • 16 ist ein Blockdiagramm, das ein weiteres Beispiel für die funktionale Konfiguration des ersten Inversglättungsteils 41 in der 11B darstellt;
  • 17A ist ein Blockdiagramm, das ein weiteres Beispiel für die funktionale Konfiguration des Inversglättungs/Kombinierteils 20 in der 9 darstellt;
  • 17B ist ein Blockdiagramm, das ein weiteres Beispiel für die funktionale Konfiguration des ersten Inversglättungs/Kombinierteils 40 in der 9 darstellt;
  • 18 ist ein Blockdiagramm, das die funktionale Konfiguration der dritten Ausgestaltung der vorliegenden Erfindung zeigt; und
  • 19 ist ein Blockdiagramm, das die Computerkonfiguration zum Implementieren der Codier- und Decodierschemata der vorliegenden Erfindung unter einer Programmsteuerung zeigt.
  • GENAUE BESCHREIBUNG DER BEVORZUGTEN AUSGESTALTUNGEN
  • Bei der vorliegenden Erfindung wird das eingegebene Signal in eine zusammenhängende Sequenz von Frequenzbereichskoeffizienten transformiert, die für jedes Band von ungefähr 100 Hz in Koeffizientensegmente geteilt wird, und die Koeffizientensegmente werden gemäß ihrer Intensität in wenigsten zwei Gruppen, z.B. Hoch- und Niedrigpegelgruppen, klassifiziert. Wenn die Frequenzbereichskoeffizienten z.B. wie in der 3, Zeile A dargestellt in der Größe variieren, werden benachbarte Frequenzbereichskoeffizienten oder Koeffizienten von modifizierter diskreter Cosinus-Transformation (MDCT), die in 3, Zeile B gezeigt sind, zusammen in Koeffizientensegmente gesetzt; wie in der 3, Zeile C dargestellt ist, und diese Koeffizientensegmente werden gemäß ihrer Intensität in Gruppen G0 und G1 klassifiziert, wie in der 3, Zeile D gezeigt ist. Die Gruppen G0 und G1 hoher und niedriger Intensität werden unabhängig voneinander verarbeitet. Ein mögliches Verfahren für die unabhängige Verarbeitung nach der Klassifizierung besteht darin, die Koeffizienten der zwei Gruppen G0 und G1 einzeln zu quantisieren; eine Alternative besteht darin, die Koeffizienten der zwei Gruppen G0 und G1 zu vektorquantisieren, nachdem sie unabhängig voneinander geglättet worden sind.
  • Weil die Koeffizientensegmente, die nach der Klassifizierung zu jeder der zwei Gruppen gehören, auf derselben Tonquelle basieren, ist die Variation der Intensität in jeder Gruppe klein. Dementsprechend ist es möglich, eine hoch effektive Quantisierung zu erreichen, während man über wahrnehmungsmäßig gleichen Bandbreiten eine gute Zuweisung von Informationen beibehält, wenn die unabhängige Verarbeitung nach der Klassifizierung für jedes der auf der Bark-Skala gleich beabstandeten Teilbänder ausgeführt wird. Die Koeffizientensegmente können auch zu dritt oder mehreren gruppiert werden.
  • Wie oben beschrieben, werden gemäß der vorliegenden Erfindung die Koeffizientensegmente in mehrere Gruppen klassifiziert, dann für jede Gruppe geglättet und codiert, während zur selben Zeit Klassifizierungsinformation codiert wird. Weil die Klassifizierungsinformation im Vergleich mit der Positionsinformation, die in dem Verfahren benötigt wird, das in der zuvor erwähnten offengelegten japanischen Patentanmeldung Nr. 7-168593 dargelegt ist, in der Komprimierung leicht ist, kann die Menge der eingebundenen Information unterdrückt werden; daher kann die Klassifizierungsinformation mit hoher Effektivität codiert werden.
  • ERSTE AUSGESTALTUNG
  • 4 zeigt im Blockformat eine erste Ausgestaltung der vorliegenden Erfindung.
  • Verarbeitungsteile 11 bis 18 bilden ein Codierteil 10, das mit einem Audiosignal x als einer Abtastwertsequenz versorgt wird und eine Sequenz C codierter Bits ausgibt. Die Verarbeitungsteile 31 bis 36 bilden ein Decodierteil 30, welches mit der Sequenz C codierter Bits versorgt wird und welches das Audiosignal x als eine Abtastwertsequenz ausgibt.
  • Zeit-Frequenz-Transformationsteil 11
  • Das eingegebene Audiosignal x wird als eine Abtastwertsequenz einem Zeit-Frequenz-Transformationsteil 11 bereitgestellt, welches nach jeder Eingabe einer festgelegten Anzahl N von Abtastwerten eine Zeit-Frequenz-Transformation ausführt, um N Frequenzbereichskoeffizienten zu erhalten. Diese Zeit-Frequenz-Transformation kann durch diskrete Cosinus-Transformation (DCT) oder modifizierte diskrete Cosinus-Transformation (MDCT) gemacht werden. Mit dem modifizierten diskreten Cosinus-Transformationsschema werden alle N eingegebenen Audioabtastwerte und die unmittelbar vorhergehenden N Abtastwerte, d.h. insgesamt 2 × N Audioabtastwerte, in N Frequenzbereichskoeffizienten transformiert. Die eingegebenen Abtastwerte können auch unmittelbar vor der Zeit-Frequenz-Transformationsverarbeitung mit einer Hamming- oder Hanning-Fensterfunktion multipliziert werden. Insbesondere in dem Fall des Verwendens der modifizierten diskreten Cosinus-Transformation können die eingegebenen Abtastwerte × bevorzugt mit dem Fenster W multipliziert werden, was durch die folgende Gleichung (1) ausgedrückt wird: W(i) = 0,5(1 – cos[2π(0,5 + i)/N]}, i = 0, 1, ..., N – 1 (1)
  • Mathematisch ausgedrückt ist die obige Verarbeitung der modifizierten diskreten Cosinus-Transfor mation wie folgt gegeben:
    Figure 00070001
    wobei i die Nummer des eingegebenen Abtastwertes ist, k die Zahl ist, welche die Frequenz repräsentiert, und x die eingegebenen Abtastwerte repräsentiert.
  • Koeffizientensegmenterzeugungsteil 12
  • Die Frequenzbereichskoeffizienten, die in dem Zeit-Frequenz-Transformationsteil 11 erhalten werden, werden in ein Koeffizientensegmenterzeugungsteil 12 eingegeben, in welchem sie in Schritten von M zu Koeffizientensegmenten gruppiert werden. Als ein Ergebnis wird jedes Koeffizientensegment E so gebildet, wie es durch die folgende Gleichung ausgedrückt wird: E(q, m) = X(q·M + m), q = 0, 1, ..., Q – 1; m = 0, 1, ..., M – 1 für jedes q (3)wobei q die Zahl ist, welche das Koeffizientensegment repräsentiert, m die Zahl ist, welche jeden Koeffizienten in dem Koeffizientensegment repräsentiert und Q die Anzahl der Koeffizientensegmente ist. Die Größe M des Koeffizientensegments kann auf einen beliebigen ganzzahligen Wert gesetzt werden, der gleich oder größer ist als 1, es ist jedoch für die Erhöhung der Codiereffektivität effektiv, die Größe M des Koeffizientensegmentes so zu setzen, dass dessen Frequenzbreite z.B. ungefähr 100 Hz wird. Wenn z.B. die Abtastwertfrequenz des eingegebenen Signals 48 kHz ist, wird die Größe M des Koeffizientensegmentes auf ungefähr 8 gesetzt. Obwohl der Wert M hier so beschrieben wurde, dass er für alle Koeffizientensegmente gleich ist, kann er für jedes Segment einzeln gesetzt werden.
  • Die so in dem Koeffizientensegmenterzeugungsteil 12 erzeugten Koeffizientensegmente werden in ein Koeffizientensegmentklassifizierungsbestimmungsteil 13 und ein Koeffizientensegmentklassifizierungsteil 14 eingegeben.
  • Koeffizientensegmentklassifizierungsbestimmungsteil 13
  • 5 stellt im Blockformat eine detaillierte Konfiguration des Koeffizientensegmentklassifizierungsbestimmungsteils 13 dar. Das Koeffizientensegmentklassifizierungsbestimmungsteil 13 wird mit den Koeffizientensegmenten von dem Koeffizientensegmenterzeugungsteil 12 versorgt und gibt deren Klassifizierungsinformation aus. D.h., die eingegebenen Koeffizientensegmente werden in ein Koeffizientensegmentintensitätsberechnungsteil 3-1 eingegeben, welches die Intensität 1 für jedes Segment wie folgt berechnet:
    Figure 00070002
    Eine Sequenz der Koeffizientensegmentintensität I wird von einem Bandaufspaltungsteil 3-2 in Teilbänder aufgespalten. Die so aufgespaltene Segmentintensität wird durch Isb(isb, qsb) ausgedrückt, wobei isb die Nummer jedes Teilbands bezeichnet und qsb die Segmentnummer in dem Teilband. Die Anzahl der Koeffizientensegmente in einem Teilband ist eine beliebige Zahl, die gleich oder größer ist als 2, welche durch Qsb(isb) gegeben ist. Die Beziehung zwischen I(q) und Isb wird durch die folgende Gleichung ausgedrückt: Isb(isb, qsb) = I(q) (5)
  • Und zwischen isb, qsb und q herrscht eine solche Beziehung, wie sie durch die folgende Gleichung gegeben ist:
  • Figure 00080001
  • Die so vom Bandaufspaltungsteil 3-2 in Teilbänder aufgespaltene Segmentintensität wird für ein Schwellenbestimmungsteil 3-3, ein Segmentklassifizierungsentscheidungsteil 3-4 und ein Grad-der-Trennung-Berechnungsteil 3-5 bereitgestellt.
  • In dem Schwellenbestimmungsteil 3-3 werden maximale und minimale Werte der Segmentintensität aus dem Bandaufspaltungsteil 3-2 für jedes Teilband berechnet, und die berechneten Werte werden verwendet, um durch die folgende Gleichung einen Schwellenwert T zum Klassifizieren der Segmente zu bestimmen. Tsb(iab) = αIsb(isb + qmax) + (1 – α)Isb(isb + qmin) (7)wobei qmin die Nummer des Koeffizientensegments mit dem minimalen Wert der Segmentintensität Isb ist, qmax die Nummer des Koeffizientensegments mit dem maximalen Wert der Segmentintensität Isb ist und α eine Konstante ist, die 1 ≥ α > 0 erfüllt. Der Wert der Konstanten α ist auf ungefähr 0,4 gesetzt. Der so bestimmte Schwellenwert Tsb wird den Segmentklassifizierungsentscheidungsteil 3-4 bereitgestellt.
  • Das Segmentklassifizierungsentscheidungsteil 3-4 vergleicht die Segmentintensität Isb aus dem Bandaufspaltungsteil 3-2 mit dem Schwellenwert Tsb aus dem Segmentklassifizierungsbestimmungsteil 3-3, um die Klassifizierung des Koeffizientensegments zu entscheiden, und die Klassifizierungsinformation G wird durch die folgende Gleichung für q = 0, 1, ..., Q – 1 bestimmt. G(q) = 0 für Isb(isb, qsb) ≤ Tsb(isb) = 1 für Isb(isb, qsb) > Tsb(isb) (8)
  • Die so bestimmte Segmentklassifizierungsinformation G(q) wird dem Grad-der-Trennung-Berech nungsteil 3-5 und einem Klassifizierungsinformationsausgabeteil 3-7 bereitgestellt.
  • Das Grad-der-Trennung-Berechnungsteil 3-5 verwendet die Segmentintensität Isb aus dem Bandaufspaltungsteil 3-2 und die Segmentklassifizierungsinformation G(q) aus dem Segmentklassifizierungsentscheidungsteil 3-4, um die Segmentintensität Isb in zwei Gruppen G(q) = 0 und G(q) = 1 zu teilen, und berechnet den Grad der Trennung aus den Intensitätswerten der zwei Gruppen. Der Berechnung des Grades der Trennung geht die Berechnung der Intensitätswerte der zwei Gruppen voraus. Die Intensität IG0 der Gruppe G(q) = 0 wird wie durch die folgende Gleichung ausgedrückt berechnet:
  • Figure 00090001
  • Die Intensität IG0 der Gruppe G(q) = 1 wird wie durch die folgende Gleichung ausgedrückt berechnet:
  • Figure 00090002
  • Der Grad der Trennung Dsb wird aus IG0 und IG1 wie folgt bestimmt: Dsb(isb) = IG1(isb)/IG0(isb) (11)
  • Der so für jedes Teilband isb bestimmte Grad der Trennung Dsb(isb) wird einem Segmentklassifizierungsverwendungs-/-nichtverwendungsbestimmungsteil 3-6 bereitgestellt.
  • Basierend auf dem im Grad-der-Trennung-Berechnungsteil 3-5 bestimmten Grad der Trennung bestimmt das Segmentklassifizierungsverwendungs-/-nichtverwendungsbestimmungsteil 3-6 für jedes Teilband, ob die Segmentklassifizierung verwendet werden soll. Wenn der Grad der Trennung Dsb einen Schwellenwert Dt übertrifft, wird ein Segmentklassifizierungsverwendungsflag Fsb(isb) auf 1 gesetzt. Wenn der Grad der Trennung den Schwellenwert nicht übertrifft, wird das Flag Fsb(isb) auf 0 gesetzt. Das im Teil 3-6 bestimmte Segmentklassifizierungsverwendungsflag Fsb wird dem Klassifizierungsinformationsausgabeteil 3-7 bereitgestellt.
  • Das Klassifizierungsinformationsausgabeteil 3-7 bestimmt die Klassifizierungsinformation G(q) aus dem Segmentklassifizierungsentscheidungsteil 3-4 für jedes Teilband neu basierend auf dem Segmentklassifizierungsverwendungsflag Fsb(isb), das vom Segmentklassifizierungsverwendungs-/nichtverwendungsbestimmungsteil 3-6 empfangen wird. Wenn der Wert des Flags Fsb(isb) 0 ist, werden alle Werte der Klassifizierungsinformation G(q) der Koeffizientensegmente, die zum isb-ten Teilband gehören, auf 0 gesetzt. Wenn der Wert des Flags Fsb(isb) 1 ist, wird die Klassifizierungsinformation der Koeffizientensegmente, die zum isb-ten Teilband gehören, unverändert gehalten. Im Übrigen ist die Neubestimmung der Information G(q) durch die Verwendung des Flags Fsb nicht notwendigerweise erforderlich, doch erlaubt die Neubestimmung unter Verwendung des Flags Fsb die Reduktion der Information G(q) eines Koeffizientensegments mit kleinen Variationen der Koeffizientengrößen in dem Teilband auf 0, was eine erhöhte Effektivität bei der anschließend ausgeführten Codierung der Klassifizierungsinformation G(q) liefert.
  • Die so in dem Klassifizierungsinformationsausgabeteil 3-7 neu bestimmte Klassifizierungsinformation G(q) wird vom Koeffizientensegmentklassifizierungsbestimmungsteil 13 ausgegeben, und diese Information wird in das Koeffizientensegmentklassifizierungsteil 14 und das Koeffizientensegmentklassifizierungsinformationskomprimierungsteil 15 eingegeben.
  • Koeffizientensegmentklassifizierungsteil 14
  • Das Koeffizientensegmentklassifizierungsteil 14 wird versorgt mit den Koeffizientensegmenten, die in dem Koeffizientensegmenterzeugungsteil 12 erzeugt werden, und der Koeffizientensegmentklassifizierungsinformation G(q), die in dem Koeffizientensegmentklassifizierungsbestimmungsteil 13 bestimmt wird, und klassifiziert all die Koeffizientensegmente in eine Gruppe Eg0 mit G(q) = 0 und eine Gruppe Eg1 mit G(q) = 1.
  • Es sei angenommen, dass das Koeffizientensegmentklassifizierungsteil 14 einen Speicher (nicht gezeigt) zum Speichern von Größen S0 und S1 der Gruppen Eg0 und Eg1 und einen Speicher (nicht gezeigt) hat, der als ein Zähler zum Zählen der Segmentnummer q dient.
  • 6 ist ein Flussdiagramm der Verarbeitung für das Koeffizientensegmentklassifizierungsteil 14.
  • Die Verarbeitung durch das Koeffizientensegmentklassifizierungsteil 14 startet mit dem Löschen von allen Speichern S0, S1 und q auf Null.
  • Als nächstes wird die Segmentnummer q in dem Speicher q mit der Anzahl A der Koeffizientensegmente E(q, m) verglichen, und wenn die erstere kleiner ist als die letztere, geht die Verarbeitung zum Schritt S3; wenn nicht, werden jeweils Eg0(S0, m) und Eg1(S1, m) zusammen mit deren Größen S0 und S1 als die Gruppen Eg0 und Eg1 ausgegeben, und die Verarbeitung endet (Schritt S2).
  • Im Schritt S3 wird bestimmt, ob der Wert der Klassifizierungsinformation des Koeffizientensegments 1 ist, und wenn dem so ist, geht die Verarbeitung zum Schritt S6, und wenn dem nicht so ist, zum Schritt S4.
  • Im-Schritt S4 wird das vom Speicherzähler q angegebene Segment E(q, m) zu der Segmentgruppe Eg0 hinzugefügt, wie durch die folgende Gleichung ausgedrückt wird: Eg0(S0, m) = E(q, m),m = 0, 1, ..., M – 1
  • Im Schritt S5 wird die Gruppengröße S0 in dem Speicher um Eins inkrementiert, und die Verarbeitung geht zum Schritt S8.
  • Im Schritt S6 wird das vom Speicherzähler q angezeigte Segment E(q, m) zu der Segmentgruppe Eg1 hinzugefügt, wie durch die folgende Gleichung ausgedrückt wird: Eg1(S1, m) = E(q, m),m = 0, 1, ..., M – 1
  • Im Schritt S7 wird die Gruppengröße S1 in dem Speicher um Eins inkrementiert, und die Verarbeitung geht zum Schritt S8.
  • Im Schritt S8 wird der Speicherzähler für die Segmentnummer q um Eins inkrementiert, und die Verarbeitung geht zum Schritt S2.
  • Die im Koeffizientenklassifizierungsteil 14 klassifizierten Segmentgruppen Eg0 und Eg1 und deren Größen S0, S1, wie oben beschrieben, werden jeweils dem ersten und zweiten Quantisierungsteil 16 und 17 bereitgestellt.
  • Koeffizientensegmentklassifizierungsinformationskomprimierteil 15
  • Das Koeffizientensegmentklassifizierungsinformationskomprimierteil 14 komprimiert eine Sequenz von in dem Koeffizientensegmentklassifizierungsbestimmungsteil 13 bestimmter Koeffizientensegmentklassifizierungsinformation G(q), wobei q = 0, 1, ..., Q – 1 ist, und stellt die komprimierte Koeffizientensegmentklassifizierungsinformation G(q)* für das Multiplexteil 18 bereit.
  • Weil die Koeffizientensegmentklassifizierungsinformation G(q) normalerweise den Wert 0 oder 1 mit einer höheren Wahrscheinlichkeit annimmt, kann jedes beliebige reversible Komprimiercodierschema, das eine solche Eigenschaft verwendet, benutzt werden, jedoch sind Entropie-Codierschemata wie die Huffman-Codierung und arithmetische Codierung besonders effektiv. Daneben ist Lauflängencodierung für die Komprimierung der Klassifizierungsinformation G(q) ebenfalls effektiv.
  • Alternativ dazu, ist es durch ein Verfahren, wie es in der 7 dargestellt ist, möglich, die Anzahl der Bits insgesamt zu reduzieren. Die Sequenz der Koeffizientensegmentklassifizierungsinformation G(q), wobei q = 0, 1, ..., Q – 1 ist, wird in einige Blöcke geteilt, und wenn der betreffende Block keine Koeffizientensegmentklassifizierungsinformation G(q) mit dem Wert 1 hat, wird ein durch ein Bit angezeigtes Flag FG auf 0 gesetzt, und es wird nur das Flag FG verwendet, um den Block zu repräsentieren. Wenn der Block die Koeffizientensegmentklassifizierungsinformation G(q) mit dem Wert 1 hat, wird das Flag FG auf 1 gesetzt, dann wird das Flag FG = 0 an der Vorderseite des Blocks hinzugefügt, und die Koeffizientensegmentklassifizierungsinformation G(q) in dem Block wird durch ein Bit repräsentiert. Dies erlaubt die Verringerung der Anzahl der einbezogenen Bits. Darüber hinaus kann die Koeffizientensegmentklassifizierungsinformation mit der verringerten Anzahl von Bits z.B. der zuvor erwähnten Huffman- oder arithmetischen Codierung unterworfen werden.
  • Erstes Quantisierungsteil 16
  • Das erste Quantisierungsteil 16 codiert die Koeffizienten, welche die in dem Koeffizientensegment klassifizierungsteil 14 klassifizierte Segmentgruppe Eg0 bilden.
  • Der Codierung der Segmentgruppe Eg0 geht deren Transformation in eine Einzelsequenz von Koeffizienten voraus, wie durch die folgende Gleichung ausgedrückt wird: C0(s·M + m) = Eg0(s, m)wobei: s = 0, 1, ..., S0, m = 0, 1, ..., M – 1
  • Die Codierung kann gemacht werden durch: ein Verfahren (A), welches die Koeffizienten, die die Koeffizientensequenz C0 bilden, in einige Unterblöcke teilt, dann die Anzahl der Quantisierungsbits jedem Unterblock adaptiv zuordnet und Skalarquantisierung auf jeden Unterblock anwendet; ein Verfahren (B), welches die Koeffizienten, die die Koeffizientensequenz C0 bilden, in einige Unterblöcke teilt, dann für jeden Unterblock die optimale Quantisierungsschrittweite bestimmt und Skalarquantisierung auf jeden Unterblock anwendet, gefolgt von einer Entropie-Codierung wie der Huffman- oder der arithmetischen Codierung; ein Verfahren (C), welches Vektorquantisierung auf die Koeffizientensequenz C0 als Ganze anwendet; und ein Verfahren (D), welches die verschachtelte Vektorquantisierung auf die Koeffizientensequenz C0 als Ganze anwendet.
  • Die bei den Verfahren A, C oder D quantisierte Information wird nach Transformieren des Quantisierungsindex InE0 durch Binärisierung in eine Bitfolge mit der notwendigen und minimalen Anzahl von Bits in das Multiplexteil 18 eingegeben. Im Falle des Verwendens des Verfahrens B wird die Bitfolge unversehrt für das Multiplexteil 18 bereitgestellt.
  • Darüber hinaus wird die Größe S0 der Segmentgruppe Eg0 aus dem Koeffizientensegmentklassifizierungsteil 14 ebenfalls durch Binärisierung in eine Bitfolge mit einer vorbestimmten Anzahl von Bits transformiert, um anschließend für das Multiplexteil 18 bereitgestellt zu werden.
  • Zweites Quantisierungsteil 17
  • Das zweite Quantisierungsteil 17 codiert die Koeffizienten, welche die in dem Koeffizientensegmentklassifizierungsteil 34 klassifizierte Segmentgruppe Eg1 bilden. Die Codierung wird durch Verfolgen einer Prozedur ausgeführt, die derjenigen ähnlich ist, die in dem ersten Quantisierungsteil 16 verwendet wird, wobei das Codierverfahren nicht notwendigerweise dasselbe wie dasjenige des letzteren sein muss.
  • Der Codierung der Segmentgruppe Eg1 geht deren Transformation in eine Einzelsequenz von Koeffizienten voraus, wie durch die folgende Gleichung ausgedrückt wird: C1(s·M + m) = Eg1(s, m)wobei: s = 0, 1, ..., S1, m = 0, 1, ..., M – 1
  • Die Codierung kann gemacht werden: durch ein Verfahren (A), das die Koeffizienten, die die Koeffizientensequenz C1 bilden, in einige Unterblöcke teilt, dann die Anzahl der Quantisierungsbits jedem Unterblock adaptiv zuordnet, und Skalarquantisierung auf jeden Unterblock anwendet; ein Verfahren (B), welches die Koeffizienten, die die Koeffizientensequenz C1 bilden, in einige Unterblöcke teilt, dann für jeden Unterblock die optimale Quantisierungsschrittweite bestimmt und Skalarquantisierung auf jeden Unterblock anwendet, gefolgt von einer solchen Entropie-Codierung wie der Huffman- oder der arithmetischen Codierung; ein Verfahren (C), welches Vektorquantisierung auf die Koeffizientensequenz C1 als Ganze anwendet; und ein Verfahren (D), welches die verschachtelte Vektorquantisierung auf die Koeffizientensequenz C1 als Ganze anwendet.
  • Die mit den Verfahren A, C oder D codierte Information wird nach Transformieren des Quantisierungsindex InE1 durch Binärisierung in eine Bitfolge mit der notwendigen und minimalen Anzahl von Bits in das Multiplexteil 18 eingegeben. Im Falle des Verwendens des Verfahrens B wird die Bitfolge unversehrt für das Multiplexteil 18 bereitgestellt. Darüber hinaus wird die Größe S1 der Segmentgruppe Eg1 aus dem Koeffizientensegmentklassifizierungsteil 14 ebenfalls durch Binärisierung in eine Bitfolge mit einer vorbestimmten Anzahl von Bits transformiert und anschließend in das Multiplexteil 18 eingegeben.
  • In jedem Fall muss das Codierverfahren im zweiten Quantisierungsteil 17 nicht dasselbe sein wie dasjenige, das im ersten Quantisierungsteil 16 verwendet wird. Es ist vielmehr bevorzugt, unterschiedliche Codierverfahren zu verwenden, die an das erste und zweite Quantisierungsteil 16 und 17 basierend auf dem Unterschied der Eigenschaften zwischen den Koeffizientensegmentgruppen Eg0 und Eg1, die diesen bereitgestellt werden, angepasst werden. Dies erlaubt die Verringerung der zu codierenden Menge an Information und die Unterdrückung von Verzerrung durch Codierfehler.
  • Multiplexteil 18
  • Das Multiplexteil 18 gibt alle Teile der eingegebenen Information G(q)*, InE0 und InE1 aus dem Koeffizientensegmentklassifizierungsinformationskomprimierteil 15 und dem ersten und zweiten Quantisierungsteil 16 und 17 als eine Bitfolge oder Sequenz aus. Die vom Multiplexteil 18 ausgegebene Bitsequenz ist die Ausgabe aus dem Codierteil 10, welche dem Demultiplexteil 31 des Decodierteils 30 bereitgestellt wird.
  • Das Decodierteil 30 wird untenstehend beschrieben.
  • Demultiplexteil 31
  • Das Demultiplexteil 31 empfängt die Bitsequenz, die von dem Codierteil 10 ausgegeben wird, und verfolgt eine Prozedur, die zu derjenigen des Multiplexteils 18 umgekehrt ist, um die eingegebene Bitsequenz in Bitsequenzen InE0, InE1 und G(q)* zur Eingabe in das erste Inversquantisierungsteil 32, das zweite Inversquantisierungsteil 33 bzw. das Koeffizientensegmentklassifizierungsinformationsdekomprimierteil 34 herunterzubrechen.
  • Erstes Dequantisierungsteil 32
  • Das erste Inversquantisierungsteil 32 inversquantisiert oder rekonstruiert die Bitsequenz aus dem Demultiplexteil 31 und gibt die Koeffizientensegmentgruppe Eg0 und deren Größe S0 aus. Die Größe S0 wird durch Transformieren einer größenanzeigenden Bitsequenz, die mit einer vorbestimmten Anzahl von Bits binärisiert ist, in eine ganze Zahl rekonstruiert.
  • Die Bitsequenz, welche die Segmentgruppe Eg0 repräsentiert, wird in eine Koeffizientensequenz C0 q durch Verfolgen einer Prozedur inversquantisiert, die zu derjenigen des Quantisierungsverfahrens A, B, C oder D, das im ersten Quantisierungsteil 16 verwendet wird, umgekehrt ist, wonach die Segmentgruppe Eg0 q rekonstruiert wird, wie durch die folgende Gleichung ausgedrückt wird: Eg0 q(s, m) = C0 q(s·M + m),wobei s = 0, 1, ..., S1 – 1, m = 0, 1, ..., M – 1
  • Der obere Index „q", der den Symbolen C0 und Eg0 beigefügt ist, zeigt an, dass die decodierten C0 q und Eg0 q Quantisierungsfehler im Hinblick auf C0 und Eg0 umfassen, weil die Quantisierung durch das erste Quantisierungsteil 16 Quantisierungsfehler verursacht. Dasselbe gilt für den oberen Index „q", der den anderen Symbolen beigefügt ist.
  • Zweites Dequantisierungsteil 33
  • Das zweite Inversquantisierungsteil 33 inversquantisiert oder rekonstruiert die Bitsequenz aus dem Demultiplexteil 31 und gibt die Koeffizientensegmentgruppe EG1 und deren Größe S1 aus. Die Größe S1-wird durch Transformieren einer größenanzeigenden Bitsequenz, die mit einer vorbestimmten Anzahl von Bits binärisiert ist, in eine ganze Zahl rekonstruiert.
  • Die Bitsequenz, welche die Segmentgruppe EG1 repräsentiert, wird in eine Koeffizientensequenz C1 0 durch Verfolgen einer Prozedur inversquantisiert, die zu derjenigen des Quantisierungsverfahrens A, B, C oder D, das im zweiten Quantisierungsteil 17 verwendet wird, umgekehrt ist, wonach die Segmentgruppe Eg1 q rekonstruiert wird, wie durch die folgende Gleichung ausgedrückt wird: Eg1 q(s, m) = C1 q(s·M + m),wobei s = 0, 1, ..., S1 – 1, m = 0, 1, ..., M – 1
  • Koeffizientensegmentklassifizierungsinformationsdekomprimierteil 34
  • Das Koeffizientensegmentklassifizierungsinformationsdekomprimierteil 34 dekomprimiert die Bitsequenz aus dem Demultiplexteil 31 durch Umkehren der Prozedur des reversiblen Kompressionscodierverfahrens, das in dem Koeffizientensegmentklassifizierungskomprimierteil 15 verwendet wird, wodurch es die Koeffizientensegmentklassifizierungsinformation G(q) rekonstruiert, wobei q = 0, 1, ..., Q – 1. Wenn das erste und zweite Quantisierungsteil 16 und 17 in dem Codierteil 10 verschiedene Codierverfahren verwenden, ist es eine Selbstverständlichkeit, dass das erste und zweite Inversquantisierungsteil 32 und 33 des Decodierteils 30 dementsprechend verschiedene Decodierverfahren verwenden.
  • Koeffizientenkombinierteil 35
  • Das Koeffizientenkombinierteil 35 verwendet die Koeffizientensegmentklassifizierungsinformation G(q) aus dem Koeffizientensegmentklassifizierungsinformationsdekomprimierteil 34, um die Segmentgruppen aus dem ersten und zweiten Inversquantisierungsteil 32 und 33 in eine Einzelsequenz zu rekombinieren, und gibt Frequenzbereichskoeffizienten aus.
  • 8 ist ein Flussdiagramm, das die Prozedur zeigt, durch welche das Koeffizientenkombinierteil 35 eine Sequenz von Koeffizientensegmenten Eq erhält. Im Schritt S1 werden die Werte S0, S1 und q auf Null initialisiert. Im Schritt S2 wird bestimmt, ob q kleiner ist als Q; wenn dem so ist, wird im Schritt S3 bestimmt, ob die Koeffizientensegmentklassifizierungsinformation G(q) 1 ist. Wenn nicht, wird im Schritt S4 definiert, dass das Koeffizientensegment Eg0 q(S0, m) Eq(q, m) ist, dann wird im Schritt S5 der Wert S0 um Eins inkrementiert und im Schritt S8 wird der Wert q um Eins inkrementiert, gefolgt von einer Rückkehr zum Schritt S2. Wenn im Schritt S3 bestimmt wird, dass die Information G(q) 1 ist, wird das Koeffizientensegment Eq1 q(S1, m) im Schritt S6 so definiert, dass es Eq(q, m) ist, dann wird im Schritt S7 der Wert S1 um Eins inkrementiert, und im Schritt S8 wird der Wert q um Eins inkrementiert, gefolgt von einer Rückkehr zum Schritt S2. Wenn im Schritt S2 bestimmt wird, dass q nicht kleiner ist als Q, dann wird die Verarbeitung beendet, und die Sequenz von Koeffizientensegmenten Eq(q, m), wobei q = 0, 1, ..., Q – 1, m = 0, 1, ..., M – 1.
  • Die Sequenz der Koeffizientensegmente Eq wird zum folgenden Frequenzbereichskoeffizienten Xq durch Verfolgen einer Prozedur restrukturiert, die zu derjenigen im Koeffizientensegmenterzeugungsteil 12 umgekehrt ist. Xq(q·M + m) = Eq(q, m),wobei q = 0, 1, ..., Q – 1; m = 0, 1, ..., M – 1
  • Frequenz-Zeit-Transformationsteil 36
  • Das Frequenz-Zeit-Transformationsteil 36 führt eine Frequenz-Zeit-Transformation der Sequenz von Koeffizienten Xq(q·M + m) aus dem Koeffizientenkombinierteil 35 aus, um ein Audiosignal xq zu erzeugen, und gibt es aus.
  • Die Frequenz-Zeit-Transformation kann durch inverse diskrete Cosinus-Transformation (IDCT) oder inverse modifizierte diskrete Cosinus-Transformation (IMDCT) gemacht werden. Im Falle des Verwendens der inversen modifizierten diskreten Cosinus-Transformation werden N eingegebene Koeffizienten in 2 N Zeitbereichsabtastwerte transformiert. Diese Abtastwerte werden mit einer Fensterfunktion, die durch die folgende Gleichung ausgedrückt wird, multipliziert, woraufhin N Abtastwerte in der ersten Hälfte des gegenwärtigen Rahmens und N Abtastwerte in der letzten Hälfte des vorhergehenden Rahmens miteinander addiert werden, um N Abtastwerte zu erhalten, die ausgegeben werden. W(i) = 0,5{1 – cos[2π(0,5 + i)/N]},i = 0, 1, ..., N – 1
  • Ein mathematischer Ausdruck der obigen Verarbeitung in dem Fall der inversen diskreten Cosinus-Transformation ist wie folgt:
    Figure 00160001
    xq(i) = Zt-1(i + N) + Z(i),i = 0, 1, ..., N – 1 wobei xq(i) das ausgegebene Audioabtastwertsignal ist.
  • ZWEITE AUSGESTALTUNG
  • 9 stellt im Blockformat eine zweite Ausgestaltung der vorliegenden Erfindung dar. In 9 bilden Verarbeitungsteile 11, 12, 13, 14, 15, 19 und 20 das Codierteil 10, welches ein eingegebenes Audiosignal in der Form einer Abtastwertsequenz empfängt und eine codierte Bitsequenz ausgibt. Verarbeitungsteile 31, 34 und 36 bis 40 bilden das Decodierteil 30, welches die codierte Bitsequenz empfängt und ein Audiosignal in der Form einer Abtastwertsequenz ausgibt.
  • Teile, die solchen der ersten Ausgestaltung entsprechen, werden durch dieselben Bezugszeichen bezeichnet. Eine genaue Beschreibung der Verarbeitungsteile 11 bis 15 für das Codierteil 10 wird nicht mehr wiederholt, weil sie dieselben Verarbeitungen ausführen wie diejenigen der entsprechenden Teile in der ersten Ausführung.
  • 10 ist ein Diagramm zum Erklären der Glättung der Frequenzbereichskoeffizienten in dieser Ausgestaltung. Die Zeile A zeigt den Zustand, in dem die von dem Zeit-Frequenz-Transformationsteil 11 gelieferten Frequenzbereichskoeffizienten durch das Koeffizientensegmenterzeugungsteil 12 als ein Koeffizientensegment E(q, m) definiert sind. Die Zeilen B und C zeigen voneinander getrennt das Koeffizientensegment der Gruppe G(q) = 1 und das Koeffizientensegment der Gruppe G(q) = 0, die von dem Koeffizientensegmentklassifizierungsbestimmungsteil 12 bestimmt werden. Die Zeilen D und E zeigen zwei zusammenhängende Sequenzen von klassifizierten Koeffizientensegmenten, die von dem Kaeffizientensegmentklassifizierungsteil 14 geliefert werden, d.h., zwei Koeffizientensegmentgruppen Eg0 und Eg1. Die in den Zeilen A bis E gezeigte Verarbeitung der Koeffizientensegmente ist dieselbe wie in dem Fall der ersten Ausgestaltung.
  • Die Koeffizientensegmentgruppen Eg0 und Eg1 (Zeilen E und D) aus dem Koeffizientensegmentklassifizierungsteil 14 und deren Größen S0 und S1 werden in das Glättungs/Kombinierteil 20 eingegeben. Zur selben Zeit wird auch die Koeffizientensegmentklassifizierungsinformation G(p) von dem Koeffizientensegmentklassifizierungsbestimmungsteil 13 in das Glättungs/Kombinierteil 20 eingegeben. In dem Glättungs/Kombinierteil 20 werden die Koeffizientensegmente in den jeweiligen Koeffizientensegmenten sequentiell geglättet durch Normieren mit repräsentativen Wertpegeln L0 = L00, L01, L02, L03, L04, L05, L06 (Zeile E) und L1 = L10, L11, L13, L15 (Zeile D) ihrer ursprünglichen Teilbänder, die basierend auf deren Koeffizientenwerten bestimmt werden. Diese zwei Gruppen von so geglätteten (Reihen G und F) Koeffizientensegmenten werden an ihren ursprünglichen Positionen auf derselben Frequenzachse basierend auf der Koeffizientensegmentklassifizierungsinformation G(q) angeordnet, um eine Sequenz von geglätteten Frequenzbereichskoeffizienten e(q, m) (Zeile H) zu erhalten, welche dem Vektorquantisierungsteil 19 bereitgestellt wird. Und die Teile der Koeffizientensegmentglättungsinformation L0 und L1, die zum Glätten benutzt werden, werden codiert und als L0* und L1* für das Multiplexteil 18 bereitgestellt. Die repräsentativen Werte L0 und/oder L1 der Koeffizientensegmente für dasselbe Teilband aus einem solchen Grund wie folgt: Es ist wahrscheinlich, dass sich die Koeffizientenwerte von Teilbändern, die in der Frequenz ein oder mehr Teilbänder voneinander beabstandet sind, sehr unterscheiden, und wenn sie zusammen normiert werden, wird die Glätte nicht so sehr verbessert.
  • Vektorquantisierungsteil 19
  • Das Vektorquantisierungsteil 19 vektorquantisiert die Frequenzbereichskoeffizienten, die vom Glättungs/Kombinierteil 20 bereitgestellt werden, und sendet einen codierten Index Ine an das Multiplexteil 18. Die Vektorquantisierung kann bevorzugt eine gewichtete verschachtelte Vektorquantisierung sein. Das Multiplexteil 18 multiplext den codierten Index Ine aus dem Vektorquantisierungsteil 19 zusammen mit der komprimierten Klassifizierungsinformation G(q)* von dem Koeffizientensegmentklassifizierungsinformationskomprimierteil 15 und der Koeffizientensegmentglättungsinformation L0* und L1* von dem Glättungs/Kombinierteil 20, und sendet die gemultiplexte Ausgabe z.B. an das Decodierteil 30.
  • Das Decodierteil 30 in dieser Ausgestaltung wird untenstehend beschrieben.
  • Vektordequantisierungsteil 37
  • Das Vektorinversquantisierungsteil 37 inversquantisiert, z.B. durch Bezugnahme auf ein Codebuch, den Vektorquantisierungsindex Ine aus dem Demultiplexteil 31, verwendet ihn, um eine Sequenz von geglätteten Frequenzbereichskoeffizienten eq(q, m) zu erhalten, und sendet sie an das Koeffizientensegmenterzeugungsteil 38.
  • Koeffizientensegmenterzeugungsteil 38
  • Das Koeffizientensegmenterzeugungsteil 38 verwendet dasselbe Verfahren wie dasjenige in dem Koeffizientensegmenterzeugungsteil 12 der ersten Ausgestaltung (4), um die Sequenz der geglätteten Frequenzbereichskoeffizienten eq(q, m) in geglättete Koeffizientensegmente eq(q) zu teilen, wobei q = 0, 1, ..., G – 1.
  • Koeffizientensegmentklassifizierungsteil 39
  • Basierend auf der Koeffizientensegmentklassifizierungsinformation G(q) = 0 oder 1 von dem Koeffizientensegmentklassifizierungsinformationsdekomprimierteil 34 klassifiziert das Koeffizientensegmentklassifizierungsteil 39 die geglätteten Koeffizientensegmente eq(q) mit demselben Verfahren in geglättete Koeffizientensegmentgruppen eg0 q(Größe S0) und eg1 q(Größe S1) wie in dem Koeffizientensegmentklassifizierungsteil 14 in der Ausgestaltung der 4.
  • Das Inversglättungs-/Kombinierteil 40 verwendet die Glättungsinformation L9 = (L0, L1), L0 = L00, L01, L02, L03, L04, L05, L06, ...; und L1 = L10, L11, L13, ..., L15, um für jede Unterregion die geglätteten Koeffizientensegmentgruppen eg0 q und eg1 q invers zu glätten, d.h. es berechnet Eg0 q = eg0 qL0 und Eg1 q = eg1 qL1. extrahiert dann sequentiell die Koeffizientensegmente aus der Gruppe Eg0 q oder Eg1 q in Übereinstimmung mit der Klassifizierungsinformation G(q) = 0 oder 1 und ordnet sie auf derselben Frequenzachse an, wodurch es Koeffizientensegmente EA(q) über dem gesamten Band erhält. Das Frequenz-Zeit-Transformationsteil 36 wandelt die Koeffizientensegmente EA(q) des gesamten Bandes in ein Zeitbereichssignal X um und gibt es aus.
  • Die 11A und 11B zeigen im Blockformat Beispiele von Konfigurationen des Glättungs/Kombinierteils 20 und des Inversglättungs-/Kombinierteils 40 in der zweiten Ausgestaltung, die oben mit Bezug auf die 9 beschrieben ist. Die Koeffizientensegmentgruppe Eg0 und deren Größe S0, die vom Koeffizientensegmentklassifizierungsteil 14 geliefert werden, werden in das erste Glättungsteil 21 eingegeben. Die Koeffizientensegmentgruppe Eg0 und deren Größe S1, die ebenfalls von dem Koeffizientensegmentklassifizierungsteil 14 geliefert werden, werden in das zweite Glättungsteil 22 eingegeben.
  • Erstes Glättungsteil 21
  • Das erste Glättungsteil 21 glättet die Koeffizientensegmentgruppe Eg0 aus dem Koeffizientensegmentklassifizierungsteil 14, wobei es die Koeffizientensegmentklassifizierungsinformation G(q) als Hilfsinformation verwendet. Die Glättung der Koeffizientensegmentgruppe Eg0 ist eine Verarbeitung, die einen repräsentativen Wert für jedes der Mehrzahl von Koeffizientensegmenten (Teilbändern) berechnet und alle die Koeffizienten, welche die Koeffizientensegmente von jedem Teilband bilden, mit dem berechneten repräsentativen Wert normiert.
  • Im Falle des Ausführens der allgemeinen Verarbeitung des Codierteils 10 und des Decodierteils 30 unter der Steuerung eines Computerprogramms erhöht der Umgang mit allen Koeffizientensegmenten an den zuvor beschriebenen Positionen auf einer linearen Frequenzachse die Anzahl von Verarbeitungen, die dem Codieren und Decodieren gemeinsam sind, und erlaubt daher die Vereinfachung von Strukturen von Codier- und Decodierprogrammen. Deshalb wird untenstehend eine Beschreibung eines Beispiels gegeben, welches die Koeffizientensegmente der Koeffizientensegmentgruppe Eg0 an den ursprünglichen Positionen auf der Frequenzachse glättet, um die ursprüngliche Gruppe von zusammenhängenden Koeffizientensegmenten zu erhalten. Der Rechenaufwand ist bei diesem Verfahren aber größer als derjenige des Verfahrens, welches die Koeffizientensegmente an den ursprünglichen Positionen auf der Frequenzachse, wie später beschrieben wird, nicht glättet, und die zur Verarbeitung benötigte Speicherkapazität ist ebenfalls groß. Dasselbe gilt für das zweite Glättungsteil 22.
  • 12 stellt im Blockdiagramm ein Beispiel für die Konfiguration des ersten Glättungsteils 21 dar.
  • In einem Frequenzbandwiederherstellungsteil 21 werden die Koeffizientensegmente Eg0(s, m), wobei s = 0, 1, ..., S0, welche die eingegebene Koeffizientensegmentgruppe Eg0 bilden, entwickelt oder zur Koeffizientensegmentgruppe EA ausgeweitet, welche das gesamte Band überdeckt (siehe 10, Reihe C) basierend auf der Koeffizientensegmentklassifizierungsinformation G(q). Die Koeffizientensegmentgruppe EA wird in ein Teilbandteilungsteil 21-2 eingegeben.
  • 13 ist ein Flussdiagramm, das die Prozedur für das Frequenzbandwiederherstellungsteil 21-2 für die Koeffizientensegmentgruppe Eg0(s, m) zeigt, wobei s = 0, 1, ..., S0 ist.
  • Im Schritt S1 werden die Werte q und S auf Null initialisiert, und im Schritt S2 wird bestimmt, ob die Koeffizientensegmentklassifizierungsinformation G(q) aus dem Koeffizientensegmentklassifizierungsteil 13 0 ist. Wenn sie 0 ist, dann wird im Schritt S3 ein s-tes Koeffizientensegment Eg0(s, m) der Koeffizientensegmentgruppe Eg0 auf der ursprünglichen Frequenzachse als ein q-tes Koeffizientensegment EA(q) in dem gesamten Band (q = 0, 1, ..., Q – 1) angeordnet, und die Werte q und s werden beide inkrementiert. Wenn die Koeffizientensegmentklassifizierungsinformation G(q) im Schritt S3 nicht 0 ist, dann werden im Schritt S4 Koeffizienten 0(M) auf der ursprünglichen Frequenzachse als ein q-tes Koeffizientensegment EA(q) in dem gesamten Band angeordnet. Im Schritt S6 wird bestimmt, ob q kleiner ist als Q; wenn dem so ist, kehrt die Verarbeitung zum Schritt S2 zurück, wobei sie die Schritte S2, S3, S4 und S5 wiederholt. Wenn q im Schritt S6 nicht kleiner ist als Q, ist die Wiederherstellung der Koeffizientensegmentgruppe Eg0 für das gesamte Band beendet.
  • In dem Teilbandteilungsteil 21-2 wird die Sequenz von Koeffizientensegmenten EA, die über das gesamte Band ausgeweitet ist, in Teilbänder aufgespalten. Die Bandbreiten der Teilbänder können über dem gesamten Band konstant gehalten werden oder sie können in höheren Frequenzbändern breiter sein. Die so in Teilbänder aufgespaltenen Koeffizientensegmente werden für ein Teilbandrepräsentativwertberechnungsteil 21-3 und ein Normierungsteil 21-5 bereitgestellt.
  • Das Teilbandrepräsentativwertberechnungsteil 21-3 berechnet den repräsentativen Wert für jedes Teilband. Der repräsentative Wert kann das Maximum von Beträgen der Koeffizienten in dem Teilband oder die Quadratwurzel eines Mittels von denjenigen Leistungen der Koeffizienten in dem Teilband sein, die größer sind als 0. Der berechnete repräsentative Wert wird für ein Teilbandrepräsentativwertcodierteil 21-4 bereitgestellt.
  • Das Teilbandrepräsentativwertcodierteil 21-4 codiert den repräsentativen Wert für jedes Teilband. Zu Beginn wird der repräsentative Wert des Teilbandes skalarquantisiert, um einen quantisierten Index L0* zu erhalten. Wenn der quantisierte Index 0 ist, wird kein repräsentativer Wert codiert. Nur repräsentative Werte von quantisierten Indizes, die größer sind als 0, werden als die Koeffizienten glättungsinformation in das Multiplexteil 18 eingegeben. Eine Alternative besteht darin, verschachtelte Vektorquantisierung auf die repräsentativen Werte anzuwenden. Die quantisierten repräsentativen Werte L0 werden dem Normierungsteil 21-5 bereitgestellt.
  • In dem Normierungsteil 21-5 werden die in Teilbänder aufgespaltenen Koeffizientensegmente Eg0 aus dem Teilbandteilungsteil 21-2 unter Verwendung der in dem Teilbandrepräsentativcodierteil 21-4 erzeugten quantisierten repräsentativen Werte der Teilbänder normiert. Die normierten, d.h. die geglätteten Koeffizientensegmente eg0 werden einem Koeffizientensegmentgruppenwiederherstellungsteil 21-6 bereitgestellt.
  • In dem Koeffizientensegmentgruppenwiederherstellungsteil 21-6 werden die Koeffizientensegmente des gesamten Bandes, die durch Umkehren der Prozedur des Frequenzbandwiederherstellungsteils 21-6 normiert werden, als die geglättete Koeffizientensegmentgruppe wiederhergestellt, welche vom ersten Glättungsteil 21 ausgegeben wird.
  • Zweites Glättungsteil 22
  • Das zweite Glättungsteil 22 ist im Aufbau mit dem ersten Glättungsteil 21 identisch und folgt derselben Prozedur wie diejenige des letzteren, um die Koeffizientensegmentgruppe Eg1, die vom Koeffizientensegmentklassifizierungsteil 14 eingegeben wird, unter Verwendung der Koeffizientensegmentklassifizierungsinformation G(q) als Hilfsinformation zu glätten. Die Prozedur ist dieselbe wie diejenige des ersten Glättungsteils 21, jedoch sind in den Schritten, die denjenigen des Frequenzbandwiederherstellungsteils 21-1 und des Koeffizientensegmentgruppenwiederherstellungsteils 21-6 entsprechen, die Verarbeitungen für die Koeffizientensegmentklassifizierungsinformation G(q) mit dem Wert 1 oder 0 ausgetauscht. Im übrigen existiert die Koeffizientensegmentgruppe Eg1 in einigen der Teilbänder nicht, jedoch wird in solchen Teilbändern die Glättung durch das zweite Glättungsteil 22 nicht ausgeführt. Dies wird auf jede Verarbeitung des zweiten Glättungsteils 22 angewendet, was später beschrieben wird.
  • Koeffizientenkombinierteil 23
  • Mit demselben Verfahren wie demjenigen des Koeffizientenkombinierteils 35 in der ersten Ausgestaltung kombiniert das Koeffizientenkombinierteil 23 die in dem ersten und zweiten Glättungsteil 21 und 22 geglätteten Koeffizientensegmentgruppen, um jeweils geglättete Frequenzbereichskoeffizienten zu erhalten.
  • In dem Inversglättungs-/Kombinierteil 40 in der 9 sind die vom Koeffizientensegmentklassifizierungsteil 39 erhaltenen Koeffizientensegmentgruppen eg0 q und eg1 q unter Verwendung der decodierten Koeffizientensegmentglättungsinformation L0 und L1 invers geglättet, und in Entsprechung mit der Koeffizientensegmentklassifizierungsinformation G(q) werden diese beiden Gruppen von inversgeglätteten Koeffizientensegmenten Eg0 q, Eg1 q zu einer Einzelsequenz von Frequenzbereichskoeffizienten Eq(q, m) kombiniert, welche vom Inversglättungs/Kombinierteil 40 ausgegeben wird.
  • Erstes Entglättungsteil 41
  • 14 zeigt im Blockformat die Konfiguration des ersten Inversglättungsteils 41 in der 11B entsprechend dem ersten Glättungsteil 21 in. der 12. Das erste Inversglättungsteil 41 glättet invers die geglättete Koeffizientensegmentgruppe eg0 q durch Verwendung der Glättungsinformation L0* und L1*, die vom Demultiplexteil 31 bereitgestellt wird. D.h., wie in der 14 dargestellt ist, werden in einem Frequenzbandwiederherstellungsteil 41 die geglätteten Koeffizientensegmente eg0 q(s), wobei s = 0, 1, ..., S0, welche die eingegebene geglättete Koeffizientensegmentgruppe eg0 bilden, in die Sequenz von Koeffizientensegmenten EA(q), welche das gesamte Band überdeckt, basierend auf der Koeffizientenklassifizierungsinformation G(q) expandiert. Diese Sequenz von Koeffizientensegmenten EA(q) wird einem Teilbandteilungsteil 41-2 bereitgestellt.
  • In dem Teilbandteilungsteil 41-2 wird die über das gesamte Band expandierte Sequenz von Koeffizientensegmenten EA(q) in Teilbänder aufgespalten. Die Bandbreiten der Teilbänder können über dem gesamten Band konstant gehalten werden, oder sie können in höheren Frequenzbändern breiter sein. Die in die Teilbänder aufgespaltenen Koeffizientensegmente werden einem Inversnormierungsteil 41-5 bereitgestellt.
  • In einem Teilbandrepräsentativwertdecodierteil 41-4 wird die in dieses eingegebene Koeffizientensegmentglättungsinformation L0* durch ein Decodierverfahren decodiert, das dem Decodierverfahren entspricht, welches dem in dem Teilbandrepräsentativwertcodierteil 21-4 (12) verwendeten Codierverfahren entspricht, um den repräsentativen Wert L0 für das Teilband zu erhalten.
  • In dem Inversnormierungsteil 41-5 werden die geglätteten Koeffizientensegmente eg0 q, die in Teilbänder aufgespalten sind, die von dem Teilbandteilungsteil 41-2 geliefert werden, unter Verwendung des repräsentativen Wertes L0 für das Teilband, der in dem Teilbandrepräsentativwertdecodierteil 41-4 decodiert wird, invers normiert.
  • In einem Koeffizientensegmentgruppenwiederherstellungsteil 41-6 wird aus den invers normierten Koeffizientensegmenten durch eine Verarbeitung, die zu derjenigen in dem Frequenzbandwiederherstellungsteil 41-4 umgekehrt ist, die Koeffizientensegmentgruppe wieder hergestellt, und die so wieder hergestellte Koeffizientensegmentgruppe wird als die Ausgabe Eg0 q des ersten Inversglättungsteils 41 verwendet.
  • Zweites Entglättungsteil 42
  • Das zweite Inversglättungsteil 42 in der 11B ist in der Konstruktion identisch mit dem oben beschriebenen ersten Inversglättungsteil 41 in der 14 und glättet invers die geglättete Koeffizientensegmentgruppe eg1 q, indem sie den repräsentativen Wert L1 für das Teilband verwendet, der von der vom Demultiplexteil 31 bereitgestellten Glättungsinformation L1* abgeleitet wird. Die Inversglättungsprozedur ist dieselbe wie diejenige des ersten Inversglättungsteils 41, doch sind in den Schritten, die denjenigen in dem Frequenzbandwiederherstellungsteil 41-1 und dem Koeffizientensegmentgruppenwiederherstellungsteil 41-6 entsprechen, die Verarbeitungen für die Koeffizien tensegmentklassifizierungsinformation G(q) des Wertes 1 und 0 ausgetauscht. Im übrigen existiert die Koeffizientensegmentgruppe eg1 q in einigen der Teilbänder nicht, daher wird in solchen Teilbändern die Inversglättung durch das zweite Inversglättungsteil 42 nicht ausgeführt. Dies gilt für jede Verarbeitung durch das zweite Inversglättungsteil 42, wie später beschrieben wird.
  • Das Frequenz-Zeit-Transformationsteil 36 wandelt die Frequenzbereichskoeffizienten Xq = Eq(q, m) aus dem Inversglättungs/Kombinierteil 40 wie in dem Frequenz-Zeit-Transformationsteil 36 in der 4 in Zeitbereichssignale xq um.
  • In der 12, die ein Beispiel für das Glättungsteil 21 (oder 22) in der 11A zeigt, werden die Koeffizientensegmente zuerst über dem ganzen Band wiederhergestellt und dann zur Koeffizientensegmentgruppe, indem sie durch Normierung geglättet werden. 15 stellt ein Beispiel für die Konfiguration des Glättungsteils 21 dar, welches die Koeffizientensegmentgruppe direkt normiert, ohne sie über dem gesamten Band wiederherzustellen. In diesem Beispiel spaltet das Teilbandteilungsteil 21-2 die Koeffizientensegmentgruppe Eg0, die von dem Koeffizientenklassifizierungsteil 14 zusammen mit der Größe So eingegeben wird, basierend auf der Klassifizierungsinformation G(q) von dem Koeffizientensegmentklassifizierungsbestimmungsteil 13 in Teilbänder (Reihe E) auf und erhält die Entsprechung zwischen den Teilbändern und der Klassifizierungsinformation G(q). Das Teilbandrepräsentativwertberechnungsteil 21-3 kann für jedes Teilband das quadratische Mittel von Beträgen von Koeffizientenwerten oder das quadratische Mittel von Koeffizientenwerten außer Null verwenden. Der repräsentative Wert des Teilbandes wird in dem Teilbandrepräsentativwertcodierteil 21-4 codiert, und der codierte repräsentative Wert L1* wird als die Koeffizientenglättungsinformation für das Multiplexteil 18 bereitgestellt, während zur selben Zeit der quantisierte repräsentative Wert L0 des Teilbandes, der durch Decodieren erhalten wird, für das Normierungsteil 21-5 bereitgestellt wird, wobei die Teilbandkoeffizientensegmente normiert werden, um die geglättete Koeffizientensegmentgruppe eg0 zu erhalten. Das zweite Glättungsteil 2 kann ebenfalls ähnlich konfiguriert sein.
  • 16 zeigt im Blockformat ein Beispiel für die Konfiguration des ersten Inversglättungsteils 41 des Decodierteils 30, welches der Konfiguration des ersten Glättungsteils 21 in der 15 entspricht. In dem gezeigten Beispiel wird die geglättete Koeffizientensegmentgruppe eg0 q aus dem Koeffizientensegmentklassifizierungsteil 39 (9) von dem Teilbandteilungsteil 41-2 in Teilbänder aufgespalten, die mit der Koeffizientensegmentklassifizierungsinformation G(q) verknüpft sind, woraufhin sie dem Denormierungsteil 41-5 bereitgestellt werden. Andererseits decodiert das Teilbandrepräsentativwertdecodierteil 41-4 die codierte Koeffizientensegmentglättungsinformation L0* aus dem Demultiplexteil 31, um den repräsentativen Wert L0 des Teilbandes zu erhalten, welcher dem Denormierungsteil 41-5 bereitgestellt wird. Das Denormierungsteil 41-5 normiert invers zu jedem Teilband die Koeffizientensegmentgruppe eg0 q durch den repräsentativen Wert L0 des Teilbandes, wodurch es die invers geglättete Koeffizientensegmentgruppe Eg0 q erhält.
  • Die 17A und 17B stellen jeweils andere Beispiele der Konfigurationen des Glättungs/Kombinierteils 20 und des Inversglättungs/Kombinierteils 40 in der 9 dar. In dem Glättungs/Kombinierteil 20 des Codierteils 10 teilt ein erstes Glättungsinformationsberechnungsteil 21A die Segmentgruppe Eg0 (10, Reihe E) in Unterregionen, berechnet die repräsentativen Werte L00, L01, L02, ... der Koeffizientensegmente in jeder Unterregion, und stellt sie als Glättungsinformation L0(= L00, L01, L02, ...) dem Glättungsinformationskombinierteil 23A bereit und die codierte Glättungsinformation L0* dem Multiplexteil 18 bereit. Jede der Unterregionen wird durch Kombinieren von eingegebenen Koeffizientensegmenten, die zum selben Teilband gehören, gebildet, wenn sie auf der Frequenzachse entwickelt werden. Die Teilbänder werden vorab gesetzt. Der repräsentative Wert kann z.B. das Maximum eines absoluten Wertes von Koeffizienten in jeder Unterregion oder ein Mittelwert der absoluten Werte der Koeffizienten außer 0 sein. Auf ähnliche Weise teilt ein zweites Glättungsinformationsberechnungsteil 22A die Koeffizientensegmentgruppe Eg1 (1 O, Zeile D) in Unterregionen derselben Größe, wie in dem Fall des ersten Glättungsinformationsberechnungsteils 21A, berechnet repräsentative Werte L10, L11, ... der jeweiligen Unterregionen und stellt sie als Glättungsinformation L1(= L10, L11, ...) für das Glättungsinformationskombinierteil 23A bereit und die codierte Glättungsinformation L1* für das Multiplexteil 18 bereit.
  • Das Glättungsinformationskombinierteil 23A wird mit der Glättungsinformation L00, L01, ... aus dem ersten Glättungsinformationsberechnungsteil 21A und der Glättungsinformation L10, L11, ... aus dem zweiten Glättungsinformationsberechnungsteil 22A versorgt, extrahiert die Teile der Glättungsinformation aus dem ersten oder zweiten Glättungsinformationsberechnungsteil 21A oder 22A abhängig davon, ob die Klassifizierungsinformation G(q) 0 oder 1 für q = 0, 1, ... ist, und ordnet sie auf derselben Frequenzachse in einer sequentiellen Reihenfolge (d.h. in der Reihenfolge von q = 0, 1, ...) an, wodurch es eine Sequenz von geglätteter Information über dem gesamten Band erhält (10, Zeile I).
  • Andererseits wird ein Koeffizientenkombinierteil 24A mit den Segmentgruppen Eg0 und Eg1 versorgt, und es extrahiert, wobei es derselben Prozedur wie diejenige zum Kombinieren der Glättungsinformation durch das Glättungsinformationskombinierteil 23A folgt, Segmente aus der Segmentgruppe Eg0 oder Eg1 abhängig davon, ob G(q) 0 oder 1 ist, und ordnet sie auf derselben Frequenzachse an, um eine Sequenz von Koeffizientensegmenten über dem gesamten Band (d.h. q = 0, 1, ..., Q – 1) zu erhalten. Weil im übrigen diese Segmentsequenz dieselbe ist wie die Sequenz von Koeffizientensegmenten, die von dem Koeffizientensegmenterzeugungsteil 12 erzeugt wird (9), kann das Koeffizientenkombinierteil 24A entbehrt werden.
  • Ein Glättungsteil 25 teilt für jedes q die Sequenz von Koeffizientensegmenten E aus dem Koeffizientenkombinierteil 24A (oder Koeffizientensegmenterzeugungsteil 12) durch die Glättungsinformationssequenz aus dem Glättungs/Informationskombinierteil 23A, um eine geglättete Koeffizientensequenz über dem gesamten Band zu erhalten (10, Zeile H). Die so erhaltene geglättete Koeffizientensequenz wird dem Vektorquantisierungsteil 19 in der 9 bereitgestellt.
  • Das Inversglättungs/Kombinierteil 40 des Decodierteils 30, wie in der 17B dargestellt, führt eine Verarbeitung aus, die zu derjenigen des Glättungsteils 20 (17A) des Codierteils 10 umgekehrt ist. D.h., erste und zweite Glättungsinformationsdecodierteile 41A und 42A decodieren die Glättungsinformation L0* und L1* aus dem Demultiplexteil 31A und stellen repräsentative Werte L0 und L1 der Unterregion für ein Glättungsinformationskombinierteil 43A bereit. Das Glättungsinformationskombinierteil 43A kombiniert die Glättungsinformation L0 und L1 in eine Einzelsequenz über dem gesamten Band, basierend auf der Koeffizientensegmentklassifizierungsinformation G(q), und stellt sie für ein Inversglättungsteil 45 bereit. Ein Koeffizientenkombinierteil 44A wird mit den geglätteten Koeffizientensegmentgruppen eg0 q und eg1 q aus dem Koeffizientensegmentklassifizierungsteil 39 (9) versorgt, und kombiniert basierend auf der Koeffizientensegmentklassifizierungsinformation G(q) die geglätteten Koeffizientensegmentgruppen eg0 q und eg1 q in eine Einzelsequenz geglätteter Koeffizientensegmente eq(q, m) über dem gesamten Band. Das Inversglättungsteil 45 wird mit der Einzelsequenz von über dem gesamten Band geglätteten Koeffizientensegmenten eq(q, m) versorgt und glättet sie invers durch die Einzelsequenz der Glättungsinformation über dem gesamten Band von dem Glättungsinformationskombinierteil 43A, um die Frequenzbereichskoeffizienten Eq(q, m) zu erzeugen, welche für das Frequenz-Zeit-Transformationsteil 36 (9) bereitgestellt werden.
  • DRITTE AUSGESTALTUNG
  • 18 zeigt im Blockformat eine dritte Ausgestaltung der vorliegenden Erfindung. Diese Ausgestaltung unterscheidet sich von der Ausgestaltung der 9 darin, dass ein Glättungsteil 29 zwischen dem Zeit-Frequenz-Transformationsteil 11 und dem Koeffizientensegmenterzeugungsteil 12 in dem Codierteil 10 zwischengeschoben ist, und dass ein Inversglättungsteil 49 zwischen dem Inversglättungs/Kombinierteil 40 und dem Frequenz-Zeit-Transformationsteil 36 in dem Decodierteil 30 zwischengeschoben ist.
  • Glättungsteil 29
  • Das Glättungsteil 29 glättet die Frequenzbereichskoeffizientensequenz von dem Zeit-Frequenz-Transformationsteil 11 und sendet die geglättete Sequenz von Koeffizientensegmenten an das Koeffizientensegmenterzeugungsteil 12. Das Glättungsschema kann bevorzugt z.B. Normierung durch lineares vorhersagbares Codierspektrum (LPC) sein. In diesem Fall wird der lineare Vorhersagekoeffizient LP, der verwendet wird, um das LPC-Spektrum zu erzeugen, codiert und als Hilfsinformation LP* an das Multiplexteil 18 gesendet. Nachfolgende Verarbeitungen sind ähnlich denjenigen in der 9.
  • Entglättungsteil 49
  • Das Inversglättungsteil 49 erzeugt ein LPC-Spektrum aus einem linearen Vorhersagekoeffizienten LP, der durch Decodieren von von dem Demultiplexteil 31 zugeführter linearer Vorhersagekoeffizienteninformation LP* erhalten wird, und verwendet das LPC-Spektrum, um die Koeffizientensequenz Eq(q, m) aus dem Inversglättungs-/Kombinierteil 40 zu entglätten, um Frequenzbereichskoeffizienten zu erhalten, die von dem Frequenz-Zeit-Transformationsteil 36 ausgegeben werden. Die Betriebsweisen von anderen Teilen sind dieselben wie bei der Ausgestaltung in der 9.
  • Wenn in dem Obigen die Abtastwertzahl zum Quantisieren der ersten und zweiten Koeffizientensegmentgruppen Eg0 und Eg1, nicht benötigt wird, müssen die Gruppengrößen S0 und S1 nicht berechnet werden. Oben wurden die Koeffizientensegmente so beschrieben, dass sie in zwei Gruppen klassifiziert werden, sie können aber auch in drei oder mehr Gruppen klassifiziert werden. Während die Breite der Koeffizientensegmente mit ungefähr 100 Hz beschrieben wurde, kann sie unterhalb von rund 200 Hz passend gewählt werden, und es ist auch möglich, die Bandbreite zum den Niedrigfrequenzbereich hin enger zu machen. Darüber hinaus müssen die Koeffizientensegmente nicht immer über dem gesamten Frequenzband geteilt werden, und das Aufspalten der Koeffizientensegmente über einem begrenzten Frequenzbereich fällt in den Bereich der vorliegenden Erfindung.
  • In der in der 18 dargestellten dritten Ausgestaltung können das erste und zweite Glättungsteil 21 und 22 des Glättungs/Kombinierteils 20 und das erste und zweite Inversglättungsteil 41 und 42 des Inversglättungs/Kombinierteils 40 von identischer Konstruktion sein wie das jeweilige Glättungsteil und das Inversglättungsteil, die in den 12 und 14 gezeigt sind, oder wie diejenigen, die in den 15 und 16 gezeigt sind. Darüber hinaus kann das Glättungs/Kombinierteil 20 und das Inversglättungs/Kombinierteil 40 in der 18 jeweils durch diejenigen, die in den 17A und 17B dargestellt sind, ersetzt werden. Außerdem kann die Konfiguration der 18 mit dem Glättungsteil 29, das zwischen dem Zeit-Frequenz-Transformationsteil 11 und dem Koeffizientensegmenterzeugungsteil 12 zwischengeschoben ist, auf die in der 4 gezeigte erste Ausgestaltung angewendet werden.
  • 19 stellt schematisch die Konfiguration zum Ausführen des Codier- und Decodierverfahrens der vorliegenden Erfindung durch einen Computer dar. Der Computer 50 umfasst eine CPU 51, ein RAM 52, ein ROM 53, eine I/O-Schnittstelle 54 und eine Festplatte 55, die über einen Bus 58 untereinander verbunden sind. Auf dem ROM 53 ist ein grundlegendes Programm für die Betriebsweise des Computers 50 aufgespielt, und die Festplatte 55 hat auf ihr Programme zum Ausführen der Codier- und Decodierverfahren gemäß der vorliegenden Erfindung vorab gespeichert. Z.B. lädt die CPU 51 das Codierprogramm während des Codierens von der Festplatte 55 in das RAM 52, codiert dann ein Audioabtastwertsignal, das über die Schnittstelle 54 eingegeben wird, indem sie es gemäß dem Codierprogramm verarbeitet, und gibt das codierte Signal über die Schnittstelle 54 aus. Während des Decodierens lädt die CPU 51 das Decodierprogramm von der Festplatte 55 in das RAM 52, verarbeitet dann einen eingegebenen Code unter der Steuerung des Decodierprogramms, und gibt das decodierte Audioabtastwertsignal aus. Die Codier/Decodierprogramme zum Ausführen der Verfahren der vorliegenden Erfindung können Programme sein, die auf einem externen Plattenlaufwerk aufgezeichnet sind, das über ein Laufwerk 56 mit dem internen Bus 58 verbunden ist. Das Aufzeichnungsmedium mit den Programmen zum Ausführen der Codier- und Decodierverfahren der vorliegenden Erfindung können ein magnetisches Aufzeichnungsmedium sein, ein IC-Speicher oder irgendein anderes Aufzeichnungsmedium, wie z. B. eine CD.
  • WIRKUNG DER ERFINDUNG
  • Wie oben beschrieben, werden gemäß der Erfindung Frequenzbereichskoeffizienten sequentiell in mehrere Koeffizientensegmente geteilt, von denen jedes aus einer Mehrzahl von Koeffizienten besteht, dann wird jedes der Koeffizientensegmente entsprechend der Intensität der Koeffizienten segmente in eine Mehrzahl von Gruppen klassifiziert, und es wird für jede Gruppe eine Codierung ausgeführt. Die Koeffizientensegmente derselben Gruppe haben daher eine gute Glätte, was eine wirksame Codierung erlaubt. Mit der Verwendung der vorliegenden Erfindung ist es möglich, ein musikalisches Tonsignal, welches Klangkomponenten hoher Tonhöhen hat, die in dem Hochfrequenzbereich gemischt sind, wie z. B. ein metallischer Klang, effektiv zu codieren.

Claims (33)

  1. Audiosignalcodierverfahren zum Codieren von eingegebenen Audiosignalabtastwerten, wobei das Verfahren die folgenden Schritte umfasst: (a) Zeit-Frequenz-Transformieren von jeder festgelegten Anzahl von eingegebenen Audiosignalabtastwerten in Frequenzbereichskoeffizienten; (b) Aufteilen der Frequenzbereichskoeffizienten in eine einzige Sequenz von Koeffizientensegmenten, von denen jedes aus einer zusammenhängenden Sequenz von mehreren Koeffizienten besteht, und weiteres Aufteilen der Sequenz von Koeffizientensegmenten in eine Sequenz von mehreren Teilbändern, von denen jedes aus mehreren Koeffizientensegmenten besteht; (c) Berechnen der Intensität von jedem Koeffizientensegment der Sequenz von Koeffizientensegmenten; (d) Klassifizieren der Koeffizientensegmente in jedem Teilband in der einzigen Sequenz in eine von mehreren Gruppen entsprechend der Intensitäten der Koeffizientensegmente in dem jeweiligen Teilband, um mehrere Sequenzen von Koeffizientensegmenten zu erzeugen, und Codieren von Klassifikationsinformation, die anzeigt, zu welcher der mehreren Sequenzen jedes Koeffizientensegment gehört, und Ausgeben von codierter Klassifikationsinformation; und (e) Codieren der mehreren Sequenzen von Koeffizientensegmenten und Ausgeben der codierten Ergebnisse als Koeffizientencode.
  2. Verfahren nach Anspruch 1, bei dem der Schritt (e) einen Schritt des voneinander getrennten Codierens der mehreren Sequenzen von Koeffizientensegmenten und des Ausgebens derselben als jeweilige ihnen entsprechende Koeffizientencodes umfasst.
  3. Verfahren nach Anspruch 1, bei dem der Schritt (e) die folgenden Schritte umfasst: (e-1) Getrenntes Normieren der Intensitäten der mehreren Sequenzen von Koeffizientensegmenten, Codieren von Normierungsinformation und Ausgeben der codierten Normierungsinformation als einen Normierungsinformationscode in dem Schritt (d); (e-2) Rekombinieren von Koeffizientensegmenten der normierten mehreren Sequenzen von Koeffizientensegmenten in eine einzige Sequenz von Koeffizientensegmenten der ursprünglichen Anordnung basierend auf der Klassifikationsinformation; und (e-3) Quantisieren der rekombinierten einzigen Sequenz von Koeffizientensegmenten und Ausgeben des Quantisierungsergebnisses als den Koeffizientencode.
  4. Verfahren nach Anspruch 2 oder 3, bei dem: die Anzahl der Gruppen zwei ist; und der Schritt (d) ein Schritt mit Folgendem ist: Für jedes Teilband Bestimmen eines Schwellenwertes in der Verteilung der Intensitäten der Koeffizientensegmente im jeweiligen Teilband; Vergleichen des Schwellenwertes mit der Intensität jedem der Koeffizientensegmente in dem jeweiligen Teilband; und Klassifizieren des Koeffizientensegments gemäß dem Vergleichsergebnis.
  5. Verfahren nach Anspruch 4, bei dem der Schritt (d) einen Schritt mit dem Folgenden umfasst: Berechnen der Summen der Intensitäten von Koeffizientensegmenten, die für das jeweilige Teilband zu den zwei Gruppen gehören; Berechnen des Verhältnisses zwischen den Summen als einen Index der Intensitätsvariation in dem jeweiligen Teilband; und Reklassifizieren aller Koeffizientensegmente in dem jeweiligen Teilband in diejenige der beiden Gruppen, welche die niedrigere Intensität hat, wenn das Verhältnis kleiner ist als ein vorbestimmter Wert.
  6. Verfahren nach Anspruch 2 oder 3, bei dem der Schritt (a) einen Schritt mit dem Folgenden umfasst: Glätten der Frequenzbereichskoeffizienten, indem sie mit einer spektralen Hüllkurve des eingegebenen Audiosignals über dessen gesamtes Band vornormiert werden; und Information über die spektrale Hüllkurve codiert und als ein spektraler Hüllkurvencode ausgegeben wird.
  7. Verfahren nach Anspruch 3, bei dem der Schritt (e-1) ein Schritt mit dem Folgenden ist: Berechnen eines repräsentativen Werts der Koeffizientensegmentintensitäten in dem jeweiligen Teilband der mehreren Sequenzen von Koeffizientensegmenten; und Normieren aller Koeffizientensegmente des jeweiligen Teilbandes mit einem dem repräsentativen Wert entsprechenden Wert.
  8. Verfahren nach Anspruch 3, bei dem der Schritt (e-1) ein Schritt mit dem Folgenden ist: getrenntes Wiederherstellen der mehreren Sequenzen von Koeffizientensegmenten über dem gesamten Band des eingegebenen Audiosignals; Berechnen eines repräsentativen Werts der Koeffizientensegmentintensitäten in dem jeweiligen Teilband; Normieren der Koeffizientensegmente des jeweiligen Teilbandes mit dem repräsentativen Wert; und jeweiliges Ausgeben der mehreren Sequenzen von Koeffizientensegmenten als geglättete Sequenz von Koeffizientensegmenten.
  9. Verfahren nach Anspruch 7 oder 8, bei dem der Schritt (e-1) ein Schritt mit dem Folgenden ist: Berechnen des repräsentativen Werts der Koeffizientensegmentintensitäten in dem jeweiligen Teilband; Quantisieren des repräsentativen Werts; Normieren des jeweiligen Teilbandes mit dem quantisierten repräsentativen Wert; und Ausgeben von Quantisierungsinformation als Glättungsinformation.
  10. Verfahren nach Anspruch 1, bei dem der Schritt (e) die folgenden Schritte umfasst: (e-1) Berechnen, als Glättungsinformation, eines Wertes, der Intensitäten von Koeffizientensegmenten in dem jeweiligen Teilband in den mehreren Sequenzen von Koeffizientensegmenten repräsentiert; (e-2) Kombinieren der Glättungsinformation der mehreren Sequenzen von Koeffizientensegmenten über dem gesamten Band des eingegebenen Audiosignals, um kombinierte Glättungsinformation zu erhalten, und Kombinieren der mehreren Sequenzen von Koeffizientensegmenten über dem gesamten Band zu einer kombinierten Sequenz; (e-3) Normieren der Koeffizientensegmente der kombinierten Sequenz mit der kombinierten Glättungsinformation, um eine einzige geglättete Sequenz von Koeffizientensegmenten zu erhalten; und (e-4) Codieren und Ausgeben der einzigen geglätteten Sequenz von Koeffizientensegmenten als einen Koeffizientencode.
  11. Verfahren nach Anspruch 1, 2 oder 3, bei dem das Codieren der Klassifikationsinformation in dem Schritt (d) durch reversible Komprimierung ausgeführt wird.
  12. Verfahren nach Anspruch 1, 2 oder 10, bei dem der Schritt (e) ein Schritt des Codierens von wenigstens einer der mehreren Sequenzen von Koeffizientensegmenten durch adaptive Bitzuweisungsquantisierung ist.
  13. Verfahren nach Anspruch 1, 2 oder 10, bei dem der Schritt (e) ein Schritt des Skalarquantisierens und anschließenden Entropie-Codierens von wenigstens einer der mehreren Sequenzen von Koeffizientensegmenten ist.
  14. Verfahren nach Anspruch 1, 2 oder 10, bei dem der Schritt (e) ein Schritt des Codierens von wenigstens einer der mehreren Sequenzen von Koeffizientensegmenten durch Vektorquantisierung ist.
  15. Verfahren nach Anspruch 1, 2 oder 10, bei dem der Schritt (e) ein Schritt des Codierens von wenigstens einer der mehreren Sequenzen von Koeffizientensegmenten durch ein Codierverfahren ist, das von demjenigen der anderen Sequenz von Koeffizientensegmenten verschieden ist.
  16. Decodierverfahren, welches eingegebene digitale Codes, wie sie durch das Verfahren des Anspruchs 1 aus einem eingegebenen Audiosignal erzeugt werden, decodiert und Audiosignalabtastwerte ausgibt, wobei das Verfahren die folgenden Schritte umfasst: (a) Decodieren der eingegebenen digitalen Codes in mehrere Sequenzen von Koeffizientensegmenten; (b) Decodieren von codierter Klassifikationsinformation in den eingegebenen digitalen Codes, um Klassifikationsinformation zu erhalten, die anzeigt, zu welcher der mehreren Sequenzen jedes Koeffizientensegment gehört, Kombinieren, basierend auf der Klassifikationsinformation, der mehreren Sequenzen von Koeffizientensegmenten zu einer einzigen Sequenz von Koeffizientensegmenten, von denen jedes eine zusammenhängende Sequenz von mehreren Frequenzbereichskoeffizienten umfasst, um eine ursprüngliche einzige Sequenz von Frequenzbereichskoeffizienten zu rekonstruieren; und (c) Transformieren der ursprünglichen einzigen Sequenz von Frequenzbereichskoeffizienten in Audiosignalabtastwerte im Zeitbereich, und Ausgeben der Audiosignalabtastwerte als ein Audiosignal.
  17. Decodierverfahren, welches eingegebene digitale Codes, wie sie durch das Verfahren des Anspruchs 3 aus einem eingegebenen Audiosignal erzeugt werden, decodiert und Audiosignalabtastwerte ausgibt, wobei das Verfahren die folgenden Schritte umfasst: (a) Decodieren des eingegebenen digitalen Codes in eine einzige Sequenz von Koeffizientensegmenten; (b) Decodieren von codierter Klassifikationsinformation in den eingegebenen digitalen Codes, um Klassifikationsinformation zu erhalten, die anzeigt, zu welcher der mehreren Sequenzen jedes Koeffizientensegment gehört, und basierend auf der Klassifikationsinformation Aufteilen der einzigen Sequenz von Koeffizientensegmenten in mehreren Sequenzen von Koeffizientensegmenten; (c) Decodieren der eingegebenen digitalen Codes, um entsprechend den mehreren Sequenzen von Koeffizientensegmenten eine Normierungsinformationssequenz zu erhalten, und basierend auf entsprechender Normierungsinformation in der Normierungsinformationssequenz Inversnormieren von jeder der mehreren Sequenzen von Koeffizientensegmenten für jedes Teilband; (d) Umordnen der inversnormierten mehreren Sequenzen von Koeffizientensegmenten zu der ursprünglichen einzigen Sequenz von Koeffizientensegmenten, von denen jedes eine zusammenhängende Sequenz von mehreren Frequenzbereichskoeffizienten umfasst, um eine ursprüngliche einzige Sequenz von Frequenzbereichskoeffizienten zu rekonstruieren; und (e) Transformieren der rekonstruierten ursprünglichen einzigen Sequenz von Frequenzbereichskoeffizienten im Zeitbereich und Ausgeben der resultierenden Audiosignalabtastwerte als ein Audiosignal.
  18. Verfahren nach Anspruch 16, bei dem der Schritt (c) einen Schritt mit dem Folgenden umfasst: Decodieren der eingegebenen digitalen Codes, um eine spektrale Hüllkurve über dem gesamten Band des eingegebenen Audiosignals zu erhalten; und Inversnormieren der Frequenzbereichskoeffizienten mit der spektralen Hüllkurve.
  19. Verfahren nach Anspruch 17, bei dem der Schritt (d) einen Schritt mit dem Folgenden umfasst: Decodieren der eingegebenen digitalen Codes, um eine spektrale Hüllkurve über dem gesamten Band des eingegebenen Audiosignals zu erhalten; und Inversnormieren der rekonstruierten ursprünglichen Einzelfrequenzbereichskoeffizienten mit der spektralen Hüllkurve, um sie als Frequenzbereichskoeffizienten zu verwenden.
  20. Verfahren nach Anspruch 17 oder 18, bei dem der Schritt (c) ein Schritt des jeweiligen Wiederherstellens von jeder der mehreren Sequenzen von Koeffizientensegmenten über dem gesamten ursprünglichen Band des eingegebenen Audiosignals auf der Basis der Klassifikationsinformation und des Inversnormierens der wiederhergestellten Koeffizientensegmente für jedes Teilband basierend auf der Normierungsinformation ist.
  21. Verfahren nach Anspruch 16 oder 17, bei dem das Decodieren der Klassifikationsinformation in dem Schritt (b) ein Decodieren von reversiblen komprimierten Codes ist.
  22. Verfahren nach Anspruch 16 oder 18, bei dem der Schritt (a) ein Schritt des Decodierens von adaptiv bitzuweisungsquantisierten Codes für wenigstens eine der mehreren Sequenzen von Koeffizientensegmenten ist.
  23. Verfahren nach Anspruch 16 oder 18, bei dem der Schritt (a) ein Schritt des Decodierens von Entropiecodes für wenigstens eine der mehreren Sequenzen von Koeffizientensegmenten ist, um skalarquantisierte Koeffizienten zu erhalten.
  24. Verfahren nach Anspruch 16 oder 18, bei dem der Schritt (a) ein Schritt des Decodierens von vektorquantisierten Codes für wenigstens eine der mehreren Sequenzen von Koeffizientensegmenten ist.
  25. Verfahren nach Anspruch 16 und 18, bei dem der Schritt (a) ein Schritt des Decodierens von wenigstens einer der mehreren Sequenzen von Koeffizientensegmenten durch ein Decodierverfahren ist, das von dem für die andere Sequenz verschieden ist.
  26. Codiervorrichtung, die eingerichtet ist, um eingegebene Audiosignalabtastwerte zu empfangen und um digitale Codes auszugeben, wobei die Vorrichtung folgendes umfasst: ein Zeit-Frequenz-Transformationsteil (11) zum Zeit-Frequenz-Transformieren von jeder festgelegten Anzahl von eingegebenen Audiosignalabtastwerten in Frequenzbereichskoeffizienten; ein Koeffizientensegmenterzeugungsteil (12) zum Aufteilen der Frequenzbereichskoeffizienten von dem Zeit-Frequenz-Transformationsteil in eine einzige Sequenz von Koeffizientensegmenten, von denen jedes aus einer zusammenhängenden Sequenz von Koeffizienten besteht, und weiterem Aufteilen der einzigen Sequenz von Koeffizientensegmenten in eine Sequenz von mehreren Teilbändern, von denen jedes aus einer Mehrzahl von Koeffizientensegmenten besteht; ein Segmentintensitätsberechnungsteil (3-1) zum Berechnen der Intensität von jedem Koeffizientensegment aus dem Koeffizientensegmenterzeugungsteil; ein Koeffizientensegmentklassifizierungsteil (14) zum Aufteilen der Koeffizientensegmente in jedem Teilband in eine von mehreren Gruppen entsprechend der relativen Größe der Segmentintensität, die in dem Segmentintensitätsberechnungsteil berechnet wird, dann Klassifizieren der einzigen Sequenz von Koeffizientensegmenten, die in dem Koeffizientensegmenterzeugungsteil erzeugt wird, in mehrere Sequenzen basierend auf Klassifikationsinformation über die Gruppierung, und Codieren von Klassifikationsinformation, die anzeigt, zu welcher der mehreren Sequenzen jedes Koeffizientensegment gehört, und Ausgeben der codierten Klassifikationsinformation; und ein Quantisierungsteil (16, 17) zum Codieren der mehreren Sequenzen von Koeffizientensegmenten und Ausgeben des codierten Ergebnisses als die digitalen Codes.
  27. Codiervorrichtung, die eingerichtet ist, um eingegebene Audiosignalabtastwerte zu empfangen und um digitale Codes auszugeben, wobei die Vorrichtung folgendes umfasst: ein Zeit-Frequenz-Transformationsteil (11) zum Zeit-Frequenz-Transformieren von jeder festgelegten Anzahl von eingegebenen Audiosignalabtastwerten in Frequenzbereichskoeffizienten; ein Koeffizientensegmenterzeugungsteil (12) zum Aufteilen der Frequenzbereichskoeffizienten von dem Zeit-Frequenz-Transformationsteil in eine einzige Sequenz von Koeffizientensegmenten, von denen jedes aus einer zusammenhängenden Sequenz von Koeffizienten besteht; ein Segmentintensitätsberechnungsteil (3-1) zum Berechnen der Intensität von jedem Koeffizientensegment von dem Koeffizientensegmenterzeugungsteil; ein Koeffizientensegmentklassifizierungsteil (14) zum Aufteilen der Koeffizientensegmente für jedes Teilband in mehrere Gruppen entsprechend der relativen Größe der Segmentintensität, die in dem Segmentintensitätsberechnungsteil (3-1) berechnet wird, dann Klassifizieren der einzigen Sequenz von Koeffizientensegmenten, die in dem Koeffizientensegmenterzeugungsteil erzeugt wird, in mehrere Sequenzen basierend auf Klassifikationsinformation, die anzeigt, zu welcher der mehreren Sequenzen jedes Koeffizientensegment gehört, und Codieren der Klassifikationsinformation und Ausgeben codierter Klassifikationsinformation; ein Glättungsteil (21, 22), um für jedes Teilband die Intensität von jedem der Koeffizientensegmente, die in dem Koeffizientensegmentklassifizierungsteil in mehrere Sequenzen klassifiziert werden, zu normieren, die Normierungsinformation zu, codieren und die codierte Information als einen digitalen Code auszugeben; ein Koeffizientenkombinierteil (23) zum Rekombinieren der mehreren intensitätsnormierten Sequenzen von Koeffizientensegmenten zu der ursprünglichen einzigen Sequenz von Koeffizientensegmenten durch Verwenden der Gruppierungsinformation; und ein Quantisierungsteil (19) zum Quantisieren der rekombinierten Koeffizientensegmente und Ausgeben der quantisierten Werte als die digitalen Codes.
  28. Codiervorrichtung nach Anspruch 27, die weiter ein zweites Glättungsteil (29) umfasst zum Glätten der Frequenzbereichskoeffizienten von dem Zeit-Frequenz-Transformationsteil durch Normieren derselben mit einer spektralen Hüllkurve, welche das gesamte Band des eingegebenen Audiosignals überdeckt, Codieren von spektraler Hüllkurveninformation und Ausgeben der codierten Information als einen digitalen Code.
  29. Decodiervorrichtung, die eingerichtet ist, um eingegebene digitale Codes zu empfangen, wie sie aus einem eingegebenen Audiosignal durch die Codiervorrichtung nach Anspruch 26 erzeugt werden, und um Audiosignalabtastwerte auszugeben, wobei die Vorrichtung folgendes umfasst: ein Inversquantisierungsteil (32, 33) zum Decodieren der eingegebenen digitalen Codes in mehrere Sequenzen von Koeffizientensegmenten; ein Koeffizientenkombinierteil (35) zum Decodieren von codierter Klassifikationsinformation in den eingegebenen digitalen Codes, um Klassifikationsinformation zu erhalten, die anzeigt, zu welcher der mehreren Sequenzen jedes Koeffizientensegment gehört, und zum Kombinieren der mehreren Sequenzen von Koeffizientensegmenten in eine einzige Sequenz von Koeffizientensegmenten, von denen jedes eine zusammenhängende Sequenz von mehreren Koeffizienten umfasst, basierend auf der Klassifikationsinformation, um eine ursprüngliche einzige Sequenz von Frequenzbereichskoeffizienten zu rekonstruieren; und ein Frequenz-Zeit-Transformationsteil (36) zum Frequenz-Zeit-Transformieren der rekonstruierten ursprünglichen einzigen Sequenz von Frequenzbereichskoeffizienten in den Zeitbereich und Ausgeben der resultierenden Audiosignalabtastwerte als ein Audiosignal.
  30. Decodiervorrichtung, die eingerichtet ist, um eingegebene digitale Codes zu empfangen, wie sie aus einem eingegebenen Audiosignal durch die Codiervorrichtung des Anspruchs 27 erzeugt werden, und um Audiosignalabtastwerte auszugeben, wobei die Vorrichtung folgendes umfasst: ein Inversquantisierungsteil (37) zum Decodieren der eingegebenen digitalen Codes in Koeffizientensegmente; ein Koeffizientensegmentklassifizierungsteil (34, 39) zum Decodieren codierter Klassifikationsinformation in den eingegebenen digitalen Codes, um Klassifikationsinformation zu erhalten, die anzeigt, zu welcher der mehreren Sequenzen jedes Koeffizientensegment gehört, und, basierend auf der Klassifikationsinformation, Klassifizieren der Koeffizientensegmente in den mehreren Sequenzen; ein Inversglättungsteil (41, 42) zum Decodieren der eingegebenen digitalen Codes, um Normierungsinformation der Koeffizientensegmente zu erhalten; die in die mehreren Sequenzen klassifiziert sind, und Inversnormieren der mehreren Sequenzen von Koeffizientensegmenten basierend auf der Normierungsinformation; ein Koeffizientenkombinierteil (35) zum Kombinieren der inversnormierten mehreren Sequenzen von Koeffizientensegmenten zu einer einzigen Sequenz von Koeffizientensegmenten, von denen jedes eine zusammenhängende Sequenz von mehreren Frequenzbereichskoeffizienten umfasst, basierend auf der Klassifikationsinformation, um eine ursprüngliche einzige Sequenz der Frequenzbereichskoeffizienten zu rekonstruieren; und ein Frequenz-Zeit-Transformationsteil (36) zum Frequenz-Zeit-Transformieren der einzigen Sequenz von Frequenzbereichskoeffizienten in den Zeitbereich und Ausgeben der resultierenden Audiosignalabtastwerte als ein Audiosignal.
  31. Decodiervorrichtung nach Anspruch 30, die weiter ein zweites Inversglättungsteil (49) zum Decodieren der eingegebenen digitalen Codes umfasst, um eine spektrale Hüllkurve zu erhalten, die das gesamte Band des eingegebenen Audiosignals überdeckt, und zum Inversnormieren der Frequenzbereichskoeffizienten, die mit der spektralen in das Frequenz-Zeit-Transformationsteil-eingegeben werden sollen.
  32. Computerlesbares Aufzeichnungsmedium, auf dem ein Codierprogramm zum Ausführen der Schritte des Codierverfahrens gemäß einem der Ansprüche 1 bis 15 auf einem Computer aufgezeichnet ist.
  33. Computerlesbares Aufzeichnungsmedium, auf dem ein Decodierprogramm zum Ausführen der Schritte des Decodierverfahrens gemäß einem der Ansprüche 16 bis 25 auf einem Computer aufgezeichnet ist.
DE60017825T 1999-03-23 2000-03-23 Verfahren und Vorrichtung zur Kodierung und Dekodierung von Audiosignalen und Aufzeichnungsträger mit Programmen dafür Expired - Lifetime DE60017825T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP7706199 1999-03-23
JP7706199 1999-03-23

Publications (2)

Publication Number Publication Date
DE60017825D1 DE60017825D1 (de) 2005-03-10
DE60017825T2 true DE60017825T2 (de) 2006-01-12

Family

ID=13623290

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60017825T Expired - Lifetime DE60017825T2 (de) 1999-03-23 2000-03-23 Verfahren und Vorrichtung zur Kodierung und Dekodierung von Audiosignalen und Aufzeichnungsträger mit Programmen dafür

Country Status (3)

Country Link
US (1) US6658382B1 (de)
EP (1) EP1047047B1 (de)
DE (1) DE60017825T2 (de)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7272556B1 (en) * 1998-09-23 2007-09-18 Lucent Technologies Inc. Scalable and embedded codec for speech and audio signals
US6978236B1 (en) * 1999-10-01 2005-12-20 Coding Technologies Ab Efficient spectral envelope coding using variable time/frequency resolution and time/frequency switching
JP3881943B2 (ja) * 2002-09-06 2007-02-14 松下電器産業株式会社 音響符号化装置及び音響符号化方法
US7372998B2 (en) * 2003-05-14 2008-05-13 Harris Corporation System and method for efficient non-overlapping partitioning of rectangular regions of interest in multi-channel detection
WO2006121101A1 (ja) 2005-05-13 2006-11-16 Matsushita Electric Industrial Co., Ltd. 音声符号化装置およびスペクトル変形方法
US8121836B2 (en) 2005-07-11 2012-02-21 Lg Electronics Inc. Apparatus and method of processing an audio signal
HUE043155T2 (hu) 2006-07-04 2019-08-28 Dolby Int Ab Szûrõátalakítót és szûrõkrompresszort tartalmazó szûrõrendszer, és eljárás a szûrõrendszer mûködtetésére
JP5045295B2 (ja) * 2007-07-30 2012-10-10 ソニー株式会社 信号処理装置及び方法、並びにプログラム
EP2193348A1 (de) * 2007-09-28 2010-06-09 Voiceage Corporation Verfahren und vorrichtung zur effizienten quantifizierung von umwandlungsinformationen in einem eingebetteten sprach- und audio-codec
US20090210222A1 (en) * 2008-02-15 2009-08-20 Microsoft Corporation Multi-Channel Hole-Filling For Audio Compression
ES2453098T3 (es) * 2009-10-20 2014-04-04 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Códec multimodo de audio
CN102158692B (zh) * 2010-02-11 2013-02-13 华为技术有限公司 编码方法、解码方法、编码器和解码器
US9075446B2 (en) 2010-03-15 2015-07-07 Qualcomm Incorporated Method and apparatus for processing and reconstructing data
CN102222505B (zh) * 2010-04-13 2012-12-19 中兴通讯股份有限公司 可分层音频编解码方法系统及瞬态信号可分层编解码方法
KR101850724B1 (ko) 2010-08-24 2018-04-23 엘지전자 주식회사 오디오 신호 처리 방법 및 장치
US9136980B2 (en) 2010-09-10 2015-09-15 Qualcomm Incorporated Method and apparatus for low complexity compression of signals
JP5648123B2 (ja) * 2011-04-20 2015-01-07 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 音声音響符号化装置、音声音響復号装置、およびこれらの方法
WO2014002226A1 (ja) 2012-06-28 2014-01-03 株式会社日立製作所 無線通信による信号処理装置および方法
EP2720222A1 (de) * 2012-10-10 2014-04-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zur wirksamen Synthese von Sinosoiden und Sweeps durch Verwendung spektraler Muster
JP6281336B2 (ja) * 2014-03-12 2018-02-21 沖電気工業株式会社 音声復号化装置及びプログラム
EP3751567B1 (de) 2019-06-10 2022-01-26 Axis AB Verfahren, computerprogramm, codierer und überwachungsvorrichtung

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5487086A (en) * 1991-09-13 1996-01-23 Comsat Corporation Transform vector quantization for adaptive predictive coding
KR100395190B1 (ko) 1993-05-31 2003-08-21 소니 가부시끼 가이샤 신호 부호화 또는 복호화 장치, 및 신호 부호화 또는복호화 방법
KR100330290B1 (ko) * 1993-11-04 2002-08-27 소니 가부시끼 가이샤 신호부호화장치,신호복호화장치,및신호부호화방법
US5684920A (en) 1994-03-17 1997-11-04 Nippon Telegraph And Telephone Acoustic signal transform coding method and decoding method having a high efficiency envelope flattening method therein
BR9505863A (pt) 1994-04-01 1996-02-21 Sony Corp Processos para codificar um sinal de entrada para transmitir um sinal codificado e para decodificar uma cadeia de códigos composta de sinais codificados aparelhos para codificar um sinal de entrada e para decodificar uma cadeia de códigos composta de sinais codificados e meio de gravaçao de informações
US5950151A (en) * 1996-02-12 1999-09-07 Lucent Technologies Inc. Methods for implementing non-uniform filters

Also Published As

Publication number Publication date
EP1047047B1 (de) 2005-02-02
US6658382B1 (en) 2003-12-02
EP1047047A3 (de) 2000-11-15
EP1047047A2 (de) 2000-10-25
DE60017825D1 (de) 2005-03-10

Similar Documents

Publication Publication Date Title
DE60017825T2 (de) Verfahren und Vorrichtung zur Kodierung und Dekodierung von Audiosignalen und Aufzeichnungsträger mit Programmen dafür
DE69915400T2 (de) Vorrichtung zur Kodierung und Dekodierung 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
DE69724126T2 (de) Audiosignalkodier- und dekodierverfahren und audiosignalkodierer und -dekodierer
DE69333786T2 (de) Verfahren zum Kodieren und Dekodieren von Audiodaten
DE69810361T2 (de) Verfahren und Vorrichtung zur mehrkanaligen akustischen Signalkodierung und -dekodierung
DE60225276T2 (de) Codierungsvorrichtung und -verfahren, decodierungsvorrichtung und -verfahren und programm
DE69133458T2 (de) Verfahren zur Sprachquantisierung und Fehlerkorrektur
DE3883701T2 (de) Verfahren und Vorrichtung für multiplexierte Vektorquantifizierung.
DE69924431T2 (de) Vorrichtung und Verfahren zur dynamischen Bitverteilung für Audiokodierung
DE69833834T2 (de) Skalierbares Audiokodier-und Dekodierverfahren und Gerät
DE69731677T2 (de) Verbessertes Kombinationsstereokodierverfahren mit zeitlicher Hüllkurvenformgebung
DE69901273T2 (de) Verfahren zur Codierung und Quantisierung von Audiosignalen
DE69431025T2 (de) Signalkodier- oder -dekodiergerät und Aufzeichnungsmedium
DE60222692T2 (de) Vorwärtskopplungsprädiktion von skalierungsfaktoren auf der basis zulässiger verzerrungen für die rauschformung bei der komprimierung auf psychoakustischer basis
DE60015448T2 (de) Teilband-Audiokodiersystem
EP1979901B1 (de) Verfahren und anordnungen zur audiosignalkodierung
DE69826529T2 (de) Schnelle datenrahmen-optimierung in einem audio-kodierer
EP0954909A1 (de) Verfahren zum codieren eines audiosignals
DE60310449T2 (de) Audiosignalkodierung
DE19811039A1 (de) Verfahren und Vorrichtungen zum Codieren und Decodieren von Audiosignalen
DE19747132A1 (de) Verfahren und Vorrichtungen zum Codieren von Audiosignalen sowie Verfahren und Vorrichtungen zum Decodieren eines Bitstroms
DE602004007550T2 (de) Verbesserte frequenzbereichs-fehlerverbergung
DE69629986T2 (de) Verfahren und Gerät zum Kodieren digitaler akustischer Signale
DE69015105T2 (de) Kompressionseinrichtung für transformiertes, digitales Audiosignal mit adaptiver Quantisierung auf Grund eines psycho-akustischen Kriteriums.

Legal Events

Date Code Title Description
8364 No opposition during term of opposition