DE60021455T2 - Multimodale Quantisierung des Prädiktionsfehlers in einem Sprachkodierer - Google Patents

Multimodale Quantisierung des Prädiktionsfehlers in einem Sprachkodierer Download PDF

Info

Publication number
DE60021455T2
DE60021455T2 DE2000621455 DE60021455T DE60021455T2 DE 60021455 T2 DE60021455 T2 DE 60021455T2 DE 2000621455 DE2000621455 DE 2000621455 DE 60021455 T DE60021455 T DE 60021455T DE 60021455 T2 DE60021455 T2 DE 60021455T2
Authority
DE
Germany
Prior art keywords
vectors
vector
weak
predictor
strong
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
DE2000621455
Other languages
English (en)
Other versions
DE60021455D1 (de
Inventor
Jacek Dallas Stachurski
Alan V. Mccree
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.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
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 Texas Instruments Inc filed Critical Texas Instruments Inc
Application granted granted Critical
Publication of DE60021455D1 publication Critical patent/DE60021455D1/de
Publication of DE60021455T2 publication Critical patent/DE60021455T2/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/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung bezieht sich im Allgemeinen auf das Gebiet der elektronischen Vorrichtungen und insbesondere auf eine Schaltungsanordnung für die Sprachcodierung, technische Übertragung, Speicherung und Synthese sowie auf Verfahren.
  • Die Leistung digitaler Sprachsysteme, die niedrige Bitraten verwenden, ist bei der aktuellen und absehbaren digitalen Kommunikation zunehmend wichtig geworden. Ein digitales Sprachverfahren, die linear-prädiktive Codierung (LPC), verwendet ein parametrisches Modell, um die menschliche Sprache nachzuahmen. In diesem Ansatz werden nur die Parameter des Sprachmodells über den Kommunikationskanal übertragen (oder gespeichert), wobei ein Synthesizer die Sprache mit den gleichen wahrnehmbaren Eigenschaften wie die Signalform der Eingangssprache regeneriert. Die periodische Aktualisierung der Modellparameter erfordert weniger Bits als die direkte Darstellung des Sprachsignals, weshalb ein vernünftiger LPC-Vocoder mit Bitraten arbeiten kann, die so niedrig wie 2–3 kbit/s (Kilobits pro Sekunde) sind, wohingegen das öffentliche Telephonsystem 64 kbit/s (8-Bit-PCM-Codewörter bei 8.000 Abtastwerten pro Sekunde) verwendet. Siehe z. B. McCree et al, A 2.4 Kbit/s MELP Coder Candidate for the New U.S. Federal Standard, Proc. IEEE Int. Conf. ASSP, 200 (1996) und US-Patent Nr. 5.699.477.
  • Die aus derartigen LPC-Vocodern ausgegebene Sprache ist jedoch in vielen Anwendungen nicht annehmbar, weil sie nicht immer wie natürliche menschliche Sprache klingt, insbesondere beim Vorhandensein von Hintergrundgeräuschen. Außerdem gibt es einem Bedarf an einem Sprach-Vocoder mit Sprache wenigstens in Telephonqualität mit einer Bitrate von etwa 4 kbit/s. Verschiedene Ansätze, um die Qualität zu verbessern, enthalten die Verbesserung der Schätzung der Parameter eines Linearprädiktionssystems mit gemischter Erregung (MELP- Systems) und ihre effizientere Quantisierung. Siehe Yeldener et al, A Mixed Sinusoidally Excited Linear Prediction coder at 4 kb/s and Below, Proc. IEEE Int. Conf. Acoust., Speech, Signal Processing (1998) und Shlomot et al, Combined Harmonic and Waveform Coding of Speech at Low Bit Rates, IEEE ... 585 (1998). Außerdem beschreibt US-Patent 5.749.065 eine auf einem Codebuch basierende prädiktive Codierung mit einem Codebuch für männliche Sprache und einem Codebuch für weibliche Sprache.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die vorliegende Anmeldung schafft linear-prädiktive Sprach-Codierungs-/-Decodierungs-Verfahren, wie sie in den unabhängigen Ansprüchen dargelegt sind.
  • Außerdem können sowohl stark prädiktive als auch schwach prädiktive Codebücher verwendet werden, wobei jedoch ein schwacher Prädiktor einen starken Prädiktor ersetzt, der ansonsten einem schwachen Prädiktor folgen müsste.
  • Dies besitzt die Vorteile, die die Beibehaltung niedriger Bitraten, jedoch mit vergrößerter Leistung, und die Vermeidung der Fehlerausbreitung durch eine Folge starker Prädiktoren einschließen.
  • KURZBESCHREIBUNG DER ZEICHNUNG
  • Spezifische Ausführungsformen der vorliegenden Erfindung werden nun beispielhaft unter Bezugnahme auf die beigefügte Zeichnung ausführlicher beschrieben, worin:
  • 1a1b Ablaufpläne bevorzugter Ausführungsformen sind,
  • 2a2b den Codierer und Decodierer der bevorzugten Ausführungsform im Blockformat veranschaulichen; und
  • 3a3d einen LP-Rest und seine Fourier-Transformationen zeigen.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Die ersten bevorzugten Ausführungsformen klassifizieren die Spektren des Linearprädiktionsrestes (LP-Restes) (in einem MELP-Codierer) in Klassen von Spektren (Vektoren), wobei sie jede Klasse separat vektorquantisieren. Eine erste bevorzugte Ausführungsform klassifiziert die Spektren z. B. in lange Vektoren (viele harmonische, die etwa den tiefen Tonhöhenfrequenzen entsprechen, wie es für männliche Sprache typisch ist) und kurze Vektoren (wenige harmonische, die etwa den hohen Tonhöhenfrequenzen entsprechen, wie es für weibliche Sprache typisch ist). Diese Spektren werden dann mit separaten Codebüchern vektorquantisiert, um die Codierung der Vektoren mit einer unterschiedlichen Anzahl von Komponenten (Harmonischen) zu unterstützen. 1a zeigt den Ablauf der Klassifikation, wobei sie eine Überlappung der Klassen enthält.
  • Die zweiten bevorzugten Ausführungsformen berücksichtigen die prädiktive Codierung der Spektren (oder alternativ anderer Parameter, wie z. B. und der Frequenzen des Linienspektrums oder LSFs) und eine Auswahl entweder des starken oder schwachen Prädiktors anhand der besten Approximation, aber mit dem Vorbehalt, dass ein erster starker Prädiktor, der ansonsten einem schwachen Prädiktor folgt, durch einen schwachen Prädiktor ersetzt wird. Dies verhindert die Fehlerausbreitung durch eine Folge starker Prädiktoren eines Fehlers in einem schwachen Prädiktor, der der Folge von starken Prädiktoren vorhergeht. 1b veranschaulicht den Steuerablauf der prädiktiven Codierung.
  • Die 2a2b veranschaulichen im Blockformat die MELP-Codierung (MELP-Analyse) und MELP-Decodierung (MELP-Synthese) der bevorzugten Ausführungsform. Insbesondere bestimmt die Linearprädiktionsanalyse die LPC-Koeffizienten a(j), j = 1, 2, ..., M, für einen Eingangsrahmen der digitalen Sprachabtastwerte {y(n)} durch das Setzen: e(n) = y(n) – ΣM≥j≥1a(j)y(n – j) (1)und das Minimieren von Σe(n)2. Typischerweise wird M, die Ordnung des Linearprädiktionsfilters, so gewählt, dass sie etwa 10–12 beträgt; die Abtastrate, um die Abtastwerte y(n) zu bilden, wird so gewählt, dass sie 8000 Hz beträgt (die gleiche wie die Abtastung im öffentlichen Telephonnetz für die digitale Übertragung); wobei die Anzahl der Abtastwerte {y(n)} in einem Rahmen oft 160 (ein 20-ms-Rahmen) oder 180 (ein 22,5-ms-Rahmen) beträgt. Ein Rahmen von Abtastwerten kann durch verschiedene Fensterbildungs-Operationen erzeugt werden, die auf die Abtastwerte der Eingangssprache angewendet werden. Der Name "lineare Prädiktion" ergibt sich aus der Interpretation von e(n) = y(n) – ΣM≥j≥1a(j)y(n – j) als der Fehler beim Vorhersagen von y(n) durch die lineare Summe der vorhergehenden Abtastwerte ΣM≥j≥1a(j)y(n – j). Folglich liefert die Minimierung von Σe(n)2 die {a(j)}, die die beste lineare Prädiktion liefern. Die Koeffizienten {a(j)} können für die Quantisierung und Übertragung in die LSFs umgesetzt werden.
  • Die e(n) bilden den LP-Rest für den Rahmen, wobei sie im Idealfall die Erregung für das Synthesefilter 1/A(z) sein würden, wobei A(z) die Übertragungsfunktion nach Gleichung (1) ist. Selbstverständlich ist der LP-Rest im Decodierer nicht verfügbar; deshalb ist es die Aufgabe des Codierers, den LP-Rest darzustellen, sodass der Decodierer die LP-Erregung aus den codieren Parametern erzeugen kann.
  • Die Bandpass-Stimmhaftigkeit für ein Frequenzband der Abtastwerte (typischerweise zwei bis fünf Bänder, wie z. B. 0–500 Hz, 500–1000 Hz, 1000–2000 Hz, 2000–3000 Hz und 3000–4000 Hz) bestimmt, ob die aus dem LP-Rest abgeleitete LP-Erregung {e(n)} für ein spezielles Band periodisch (stimmhaft) oder weißes Rauschen (stimmlos) sein sollte.
  • Die Tonhöhenanalyse bestimmt die Tonhöhenperiode (die kleinste Periode in stimmhaften Rahmen) durch Tiefpassfilterung von {y(n)} und dann Korrelieren von {y(n)} mit {y(n + m)} für verschiedene m; die Interpolationen sorgen für Teilintervalle der Abtastwerte. Die resultierende Tonhöhenperiode wird als pT bezeichnet, wobei p eine reelle Zahl ist, die typischerweise eingeschränkt ist, damit sie im Bereich von 20 bis 132 liegt, während T das Abtastintervall von 1/8 Millisekunde ist. Folglich ist p die Anzahl der Abtastwerte in einer Tonhö henperiode. Der LP-Rest {e(n)} in stimmhaften Bändern sollte eine Kombination der Harmonischen der Tonhöhenfrequenzen sein.
  • Die Schätzung der Fourier-Koeffizienten schafft die Codierung des LP-Restes für stimmhafte Bänder. Die folgenden Abschnitte beschreiben dies ausführlich.
  • Die Verstärkungsanalyse legt das Gesamtenergieniveau für einen Rahmen fest.
  • Die Codierung (und Decodierung) kann mit einem digitalen Signalprozessor (DSP), wie z. B. dem von Texas Instruments hergestellten TMS320C30, implementiert sein, der programmiert werden kann, um die Analyse oder Synthese im Wesentlichen in Echtzeit auszuführen.
  • 3a veranschaulicht einen LP-Rest {e(n)} für einen stimmhaften Rahmen, wobei sie etwa acht Tonhöhenperioden enthält, wobei jede Tonhöhenperiode etwa 26 Abtastwerte umfasst. 3b zeigt die Größen der {E(j)} für eine spezielle Periode des LP-Restes, und 3c zeigt die Größen der {E(j)} für alle acht Tonhöhenperioden. Für einen stimmhaften Rahmen mit der Tonhöhenperiode gleich pT befinden sich die Spitzen der Fourier-Koeffizienten bei etwa 1/pT, 2/pT, 3/pT, ..., k/pT, ...; d. h., bei der Grundfrequenz 1/pT und den Harmonischen. Selbstverständlich kann p keine ganze Zahl sein, wobei die Größen der Fourier-Koeffizienten bei den Harmonischen der Grundfrequenz, die als X[1], X[2], ..., X[k], ... bezeichnet werden, geschätzt werden müssen. Diese Schätzwerte werden quantisiert, übertragen und durch den Decodierer verwendet, um die LP-Erregung zu erzeugen.
  • Die {X[k]} können durch verschiedene Verfahren geschätzt werden: z. B. wird eine diskrete Fourier-Transformation auf die Abtastwerte einer einzelnen Periode (oder kleinen Anzahl von Perioden) der e(n) angewendet, wie in den 3b3c; alternativ können die {E(j)} interpoliert werden. In der Tat wendet ein Interpolationsansatz eine diskrete 512-Punkt-Fourier-Transformation auf eine erweiterte Version des LP-Restes an, was die Verwendung einer schnellen Fourier-Transformation erlaubt. Insbesondere wird der LP-Rest {e(n)} von 160 Abtastwerten auf 512 Abtastwerte erweitert, indem e512(n) = e(n) für n = 0, 1, ..., 159 und e512(n) = 0 für n = 160, 161, ..., 511 gesetzt wird. Dann erscheinen die Größen der diskreten Fourier-Transformation wie in 3d mit den Koeffizienten E512(j) die im Wesentlichen die Koeffizienten E(j) nach den 3b3c interpolierten. Die Spitzen X[k] werden bei den Frequenzen k/pT geschätzt. Die bevorzugte Ausführungsform verwendet nur die Größen der Fourier-Koeffizienten, obwohl die Phasen außerdem verwendet werden könnten. Weil die LP-Restkomponenten {e(n)} reell sind, sind die Koeffizienten {E(j)} der diskreten Fourier-Transformation für eine diskrete N-Punkt-Fourier-Transformation konjugiert symmetrisch: E(k) = E·(N – k). Folglich muss für die Größenbetrachtungen nur die Hälfte der {E(j)} verwendet werden.
  • Sobald die geschätzten Größen der Fourier-Koeffizienten X[k] für die Grundfrequenz der Tonhöhe und die Harmonischen k/pT gefunden worden sind, müssen sie mit einer minimalen Anzahl von Bits übertragen werden. Die bevorzugten Ausführungsformen verwenden die Vektorquantisierung der Spektren. Das heißt, die Menge der Fourier-Koeffizienten X[1], X[2], ..., X[k], ... wird in einer mehrdimensionalen Quantisierung als ein Vektor behandelt, wobei nur der Index des quantisierten Ausgangsvektors übertragen wird. Es wird angegeben, dass es [p] oder [p] + 1 Koeffizienten gibt, aber nur die Hälfte der Komponenten, zurückzuführen auf ihre konjugierte Symmetrie, signifikant ist. Folglich ist für eine kurze Tonhöhenperiode, wie z. B. pT = 4 Millisekunden (p = 32), die Grundfrequenz 1/pT (= 250 Hz) hoch, wobei es 32 Harmonische gibt, aber nur 16 signifikant sein würden (wobei die DC-Komponente nicht gezählt wird). Ähnlich ist für eine lange Tonhöhenperiode, wie z. B. pT = 12 Millisekunden (p = 96) die Grundfrequenz (= 83 Hz) tief, wobei es 48 signifikante Harmonische gibt.
  • Im Allgemeinen kann die Menge der quantisierten Ausgangsvektoren durch adaptive Auswahl mit einem Gruppierungsverfahren aus einer Menge der Eingangstrainingsvektoren erzeugt werden. Es kann z. B. eine große Anzahl zufällig ausgewählter Vektoren (Spektren) von verschiedenen Sprechern verwendet werden, um ein Codebuch (oder Codebücher bei der mehrstufigen Vektorquantisierung) zu bilden. Folglich kann eine quantisierte und codierte Version eines Ein gangsspektrums X[1], X[2], ..., X[k], ... als der Index im Codebuch des quantisierten Vektors übertragen werden, wobei dieser 20 Bits umfassen kann.
  • Wie in 1a veranschaulicht ist, fahren die ersten bevorzugten Ausführungsformen mit der Vektorquantisierung der Spektren der Fourier-Koeffizienten wie folgt fort. Zuerst wird das Spektrum (der Vektor) der Fourier-Koeffizienten gemäß der entsprechenden Tonhöhenperiode klassifiziert: falls die Tonhöhenperiode kleiner als 55 T ist, ist der Vektor ein "kurzer" Vektor, und falls die Tonhöhenperiode größer als 45 T ist, ist der Vektor ein "langer" Vektor. Einige Vektoren werden sowohl als kurze als auch als lange Vektoren genauer bestimmt. Die kurzen Vektoren werden mit einem Codebuch aus 20-komponentigen Vektoren vektorquantisiert, während die langen Vektoren mit einem Codebuch aus 45-komponentigen Vektoren verktorquantisiert werden. Wie vorher beschrieben worden ist, bringt die konjugierte Symmetrie der Fourier-Koeffizienten mit sich, dass nur die erste Hälfte der Vektorkomponenten signifikant ist und verwendet wird. Kurze Vektoren mit weniger als 20 signifikanten Komponenten werden auf 20 Komponenten erweitert, indem Komponenten angehängt werden, die gleich 1 sind. Analog werden lange Vektoren mit weniger als 45 signifikanten Komponenten auf 45 Komponenten erweitert, indem Komponenten angehängt werden, die gleich 1 sind. Jedes Codebuch besitzt 220 quantisierte Ausgangsvektoren, deshalb indexieren 20 Bits die quantisierten Ausgangsvektoren in jedem Codebuch. Es könnte ein Bit verwendet werden, um das Codebuch auszuwählen, die Tonhöhe wird aber überragen und kann verwendet werden, um zu bestimmen, ob die 20 Bits die lange oder kurze Vektorquantisierung sind.
  • Für einen Vektor, der sowohl als kurz als auch als lang klassifiziert ist, wird dieselbe Klassifizierung wie für den Vektor des vorhergehenden Rahmens verwendet; dies vermeidet Diskontinuitäten und schafft eine Hysterese durch die Überlappung der Klassifizierung. Wenn ferner der vorhergehende Rahmen stimmlos war, dann wird der Vektor als kurz genommen, falls die Tonhöhenperiode kleiner als 50 T ist, und sonst als lang genommen.
  • Auf die Metrik, die den Abstand zwischen den Vektoren definiert, wird ein Gewichtungsfaktor angewendet. Der Abstand wird sowohl für die Gruppierung der Trainingsvektoren (die das Codebuch erzeugt) als auch für die Quantisierung der Vektoren der Fourier-Komponenten durch den minimalen Abstand verwendet. Im Allgemeinen ist ein Abstand zwischen den Vektoren X1 und X2 durch d(X1, X2) = (X1 – X2)TW(X1 – X2) definiert, wobei W eine Matrix der Gewichte ist. Folglich werden Matrizen Wkurz für die kurzen Vektoren und Matrizen Wlang für die langen Vektoren definiert; ferner können die Gewichte von der Länge des zu quantisierenden Vektors abhängen. Dann wird für kurze Vektoren Wkurz[j, k] sehr klein gewählt, wenn entweder j oder k größer als 20 ist; dies macht die Komponenten X1[k] und X2[k] für k größer als 20 irrelevant. Ferner wird Wkurz[j, k] abnehmend gewählt, wie j und k von 1 bis 20 zunehmen, um die niedrigeren Vektorkomponenten hervorzuheben. Das heißt, die Quantisierung hängt in erster Linie von den Fourier-Koeffizienten für die Grundfrequenz und die niedrigen Harmonischen der Tonhöhenfrequenz ab. Analog wird Wlang[j, k] für j oder k größer als 45 sehr klein gewählt.
  • Ferner könnte die Verwendung der prädiktiven Codierung einbezogen werden, um die Größen zu verringern und das Quantisierungsrauschen zu verringern, wie im Folgenden beschrieben ist.
  • Die prädiktive Codierung
  • Ein differentieller (prädiktiver) Ansatz verringert das Quantisierungsrauschen. Das heißt, anstatt die Vektorquantisierung eines Spektrums X[1], X[2], ..., X[k], ... auszuführen, wird zuerst eine Prädiktion des Spektrums aus den quantisierten Spektren (Vektoren) des vorhergehenden Rahmens oder von mehreren vorhergehenden Rahmen erzeugt, wobei nur die Differenz quantisiert wird. Wenn der Vektor des aktuellen Rahmens von den Vektoren der früheren Rahmen gut approximiert werden kann, dann kann eine "starke" Prädiktion verwendet werden, in der die Differenz zwischen dem Vektor des aktuellen Rahmens und einem starken Prädiktor klein sein kann. Wenn andererseits der Vektor des aktuellen Rahmens aus den Vektoren der früheren Rahmen nicht gut approximiert werden kann, dann kann eine "schwache" Prädiktion (einschließlich keine Prädiktion) verwendet werden, in der die Differenz zwischen dem Vektor des aktuellen Rahmens und einem Prädiktor sehr groß sein kann. Eine einfache Prädiktion des Vektors X des aktuellen Rahmens könnte z. B. der quantisierte Vektor Y des vorhergehenden Rahmens oder allgemeiner ein Vielfaches αY sein, wobei α ein Gewichtungsvektor (zwischen 0 und 1) ist. In der Tat könnte α eine Diagonalmatrix mit verschiedenen Faktoren für verschiedene Vektorkomponenten sein. Für α-Werte im Bereich 0,7–1,0 liegt der Prädiktor αY nahe bei Y, wobei, falls er außerdem nahe bei X liegt, der zu quantisierende Differenzvektor X – αY klein im Vergleich zu X ist. Dies würde ein starker Prädiktor sein, wobei der Decodierer einen Schätzwert für X durch Q(X – αY) + αY wiederherstellt, wobei der erste Term der quantisierte Differenzvektor X – αY ist, während der zweite Term vom vorhergehenden Rahmen stammt und wahrscheinlich der vorherrschende Term ist. Umgekehrt ist für α-Werte im Bereich 0,0–0,3 der Prädiktor schwach, weil der zu quantisierende Differenzvektor X – αY wahrscheinlich mit X vergleichbar ist. In der Tat gibt es für α = 0 überhaupt keine Prädiktion, wobei der zu quantisierende Vektor X selbst ist.
  • Der Vorteil der starken Prädiktoren folgt aus der Tatsache, dass mit Codebüchern mit der gleichen Größe die Quantisierung von irgendetwas, das wahrscheinlich klein ist (die Differenz vom starken Prädiktor), bessere mittlere Ergebnisse als das Quantisieren von irgendetwas, das wahrscheinlich groß ist (die Differenz vom schwachen Prädiktor), liefert.
  • Folglich werden vier Codebücher trainiert: (1) kurze Vektoren und starke Prädiktion, (2) kurze Vektoren und schwache Prädiktion, (3) lange Vektoren und starke Prädiktion und (4) lange Vektoren und schwache Prädiktion. Dann wird ein Vektor verarbeitet, wie im oberen Abschnitt der 1b veranschaulicht ist: zuerst wird der Vektor X als kurz oder lang klassifiziert; als Nächstes werden die starken und schwachen Prädiktor-Vektoren Xstark und Xschwach aus den quantisierten Vektoren der vorhergehenden Rahmen erzeugt, wobei die Codebücher der starken Prädiktoren und schwachen Prädiktoren für die Vektorquantisierung von X – Xstark bzw. X – Xschwach verwendet werden. Dann werden die zwei Ergebnisse (Q(X – Xstark) + Xstark und Q(X – Xschwach) + Xschwach) mit dem Eingangsvektor verglichen, wobei die bessere Approximation (der starke oder schwache Prädiktor) ausgewählt wird. Ein Bit wird zusammen mit dem 20-Bit-Codebuch-Index für den Quantisierungsvektor übertragen (um anzugeben, ob ein starker oder schwacher Prädiktor verwendet worden ist). Die Tonhöhe bestimmt, ob der Vektor lang oder kurz war.
  • In einer Rahmenlöschung werden die Parameter (d. h. LSFs, Fourier-Koeffizienten, Tonhöhe, ...), die dem aktuellen Rahmen entsprechen, als verloren oder unzuverlässig betrachtet, wobei der Rahmen anhand der Parameter von den vorhergehenden Rahmen rekonstruiert wird. Beim Vorhandensein von Rahmenlöschungen breitet sich der Fehler, der sich aus dem Fehlen einer Gruppe von Parametern ergibt, durch die Folge der Rahmen aus, für die eine starke Prädiktion verwendet wird. Falls der Fehler in der Mitte der Folge auftritt, wird die genaue Entwicklung der vorhergesagten Parameter gefährdet, wobei normalerweise eine wahrnehmbare Verzerrung eingefügt wird. Wenn eine Rahmenlöschung innerhalb eines Bereichs geschieht, in dem ein schwacher Prädiktor konsistent ausgewählt wird, wird die Wirkung des Fehlers lokalisiert sein (er wird durch die schwache Prädiktion schnell verringert). Die größte Verschlechterung im rekonstruierten Rahmen wird beobachtet, wann immer eine Rahmenlöschung für einen Rahmen mit einem schwachen Prädiktor vorkommt, dem eine Folge von Rahmen folgt, für die ein starker Prädiktor gewählt wird. In diesem Fall wird die Entwicklung der Parameter auf einem Parameter aufgebaut, der von dem sehr verschieden ist, von dem angenommen wird, dass er die Entwicklung beginnt.
  • Folglich analysiert eine zweite bevorzugte Ausführungsform die in einer Folge von Rahmen verwendeten Prädiktoren, wobei sie ihre Sequentialisierung steuert. Insbesondere modifiziert eine bevorzugte Ausführungsform für einen aktuellen Rahmen, der andernfalls einen starken Prädiktor verwenden würde, der einem Rahmen unmittelbar folgt, der einen schwachen Prädiktor verwendet hat, den ak tuellen Rahmen, um den schwachen Prädiktor zu verwenden, wobei sie aber den Prädiktor des nächsten Rahmens nicht beeinflusst. 1b veranschaulicht die Entscheidungen.
  • Ein einfaches Beispiel veranschaulicht die Wirkung dieser bevorzugten Ausführungsform. Es wird eine Folge von Rahmen mit Vektoren X1, X2, X3, ... der Fourier-Koeffizienten vorausgesetzt, und es wird vorausgesetzt, dass der erste Rahmen einen schwachen Prädiktor verwendet, während die zweiten, dritten, vierten, ... Rahmen starke Prädiktoren verwenden, wobei aber die bevorzugte Ausführungsform den starken Prädiktor des zweiten Rahmens durch einen schwachen Prädiktor ersetzt. Folglich ist der übertragene quantisierte Differenzvektor für den ersten Rahmen Q(X1 – X1schwach), wobei ohne Löschung der Decodierer X1 als Q(X1 – X1schwach) + X1schwach wiederherstellt, wobei, zurückzuführen auf die schwache Prädiktion, der erste Term wahrscheinlich der vorherrschende Term ist. Ähnlich stellt der gewöhnliche Decodierer X2 als Q(X2 – X2stark) + X2stark, wobei der zweite Term vorherrschend ist, und analog X3, X4, ... wieder her. Im Gegensatz stellt der Decodierer der bevorzugten Ausführungsform X2 als Q(X2 – X2schwach) + X2schwach wieder her, wobei aber der erste Term wahrscheinlich vorherrschend ist.
  • Es wird angegeben, dass der Decodierer X1schwach aus den Vektoren X0, X–1, ... der vorhergehenden rekonstruierten Rahmen wieder erzeugt, wobei ähnlich X2stark und X2schwach aus den rekonstruierten X1, X0, ... wieder erzeugt werden, wobei dies ebenso für die anderen Prädiktoren gilt.
  • Nun wird bei einer Löschung der Parameter des ersten Rahmens der Vektor Q(X1 – X1schwach) verloren, wobei der Decodierer X1 durch irgendetwas rekonstruiert, wie z. B. nur durch das Wiederholen des rekonstruierten X0 vom früheren Rahmen. Dies kann jedoch keine sehr gute Approximation sein, weil ein schwacher Prädiktor ursprünglich verwendet worden ist. Dann rekonstruiert der gewöhnliche Decodierer für den zweiten Rahmen X2 durch Q(X2 – X2stark) + Y2stark + wobei Y2stark der anstatt aus X1, X0, ... aus X0, X0, ... wieder erzeugte starke Prädiktor ist, weil X1 verloren und durch die möglicherweise schlechte Approximation X0 ersetzt worden ist. Folglich würde der Fehler etwa X2stark – Y2stark betragen, was wahrscheinlich groß ist, zurückzuführen darauf, dass der starke Prädiktor der vorherrschende Term im Vergleich zum Differenzterm Q(X2 – X2stark) ist. Dies gilt außerdem für die Rekonstruktion von X3, X4, ...
  • Andererseits rekonstruiert die bevorzugte Ausführungsform X2 durch Q(X2 – X2schwach) + Y2schwach + wobei Y2stark der anstatt aus X1, X0, ... aus X0, X0, ... wieder erzeugte schwache Prädiktor ist, weil abermals X1 verloren und durch die möglicherweise schlechte Approximation X0 ersetzt worden ist. Folglich würde der Fehler etwa X2schwach – Y2schwach betragen, was wahrscheinlich klein ist, zurückzuführen darauf, dass der schwache Prädiktor im Vergleich zum Differenzterm Q(X2 – X2schwach) der kleinere Term ist. Wobei dieser kleinere Fehler außerdem für die Rekonstruktion von X3, X4 gilt.
  • In der Tat würde für den Fall der Prädiktoren X2stark = αX1 mit α = 0,8 und X2schwach = αX1 mit α = 0,2 der Fehler des gewöhnlichen Decodierers für die Rekonstruktion von X2 0,8(X1 – X0) betragen, während der Fehler des Decodierers der bevorzugten Ausführungsform 0,2(X1 – X0) betragen würde.
  • Alternativ modifizieren die zweiten bevorzugten Ausführungsformen starke Prädiktoren von zwei (oder mehr) aufeinanderfolgenden Rahmen nach einem Rahmen mit einem schwachen Prädiktor, damit sie schwache Prädiktoren sind. Das heißt, eine Folge aus schwach, stark, stark, stark, ... würde in schwach, schwach, schwach, stark, ... geändert werden.
  • Die vorausgehende Ersetzung starker Prädiktoren durch schwache Prädiktoren schafft einen Tausch der vergrößerten Fehlerrobustheit gegen eine ein wenig ver ringerte Qualität (die schwächeren Prädiktoren werden anstelle der besseren stärkeren Prädiktoren verwendet).

Claims (3)

  1. Verfahren zur linear-prädiktiven Sprachcodierung, das die folgenden Schritte umfasst: Klassifizieren der Fourier-Koeffizienten des Linearprädiktionsrestes in zwei oder mehr Klassen von Vektoren; Bereitstellen wenigstens eines Vektorquantisierungs-Codebuchs für jede Klasse von Vektoren; und Codieren der Vektoren mit den Codebüchern; wobei das Verfahren dadurch gekennzeichnet ist, dass die Klassen von Vektoren überlappen und ein Vektor in zwei oder mehr Klassen unter Verwendung der Klasse eines Vektors in einem vorhergehenden Rahmen codiert wird.
  2. Codierungsverfahren nach Anspruch 1, bei dem Prädiktionen der Vektoren codiert werden, wobei die Prädiktionen starke und schwache Prädiktoren verwenden; wobei das Verfahren den folgenden Schritt umfasst: Ersetzen eines einem schwachen Prädiktor folgenden starken Prädiktors durch einen schwachen Prädiktor.
  3. Verfahren zur linear-prädiktiven Sprachdecodierung, das die folgenden Schritte umfasst: Interpretieren der Fourier-Koeffizienten des Linearprädiktionsrestes als Elemente zweier oder mehrerer überlappender Klassen von Vektoren, wobei jede Klasse wenigstens ein Vektorquanitisierungs-Codebuch besitzt; und Decodieren eines solchen codierten Vektors unter Verwendung des Codebuchs der Klasse eines Vektors in einem vorhergehenden Rahmen.
DE2000621455 1999-03-12 2000-03-13 Multimodale Quantisierung des Prädiktionsfehlers in einem Sprachkodierer Expired - Lifetime DE60021455T2 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US12411299P 1999-03-12 1999-03-12
US12408999P 1999-03-12 1999-03-12
US124112P 1999-03-12
US124089P 1999-03-12

Publications (2)

Publication Number Publication Date
DE60021455D1 DE60021455D1 (de) 2005-09-01
DE60021455T2 true DE60021455T2 (de) 2006-05-24

Family

ID=26822196

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2000621455 Expired - Lifetime DE60021455T2 (de) 1999-03-12 2000-03-13 Multimodale Quantisierung des Prädiktionsfehlers in einem Sprachkodierer

Country Status (3)

Country Link
EP (1) EP1035538B1 (de)
JP (1) JP2000305597A (de)
DE (1) DE60021455T2 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2392640A1 (en) 2002-07-05 2004-01-05 Voiceage Corporation A method and device for efficient in-based dim-and-burst signaling and half-rate max operation in variable bit-rate wideband speech coding for cdma wireless systems
CA2415105A1 (en) * 2002-12-24 2004-06-24 Voiceage Corporation A method and device for robust predictive vector quantization of linear prediction parameters in variable bit rate speech coding
US20080249767A1 (en) * 2007-04-05 2008-10-09 Ali Erdem Ertan Method and system for reducing frame erasure related error propagation in predictive speech parameter coding

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3557662B2 (ja) * 1994-08-30 2004-08-25 ソニー株式会社 音声符号化方法及び音声復号化方法、並びに音声符号化装置及び音声復号化装置
JPH08179796A (ja) * 1994-12-21 1996-07-12 Sony Corp 音声符号化方法

Also Published As

Publication number Publication date
JP2000305597A (ja) 2000-11-02
EP1035538A2 (de) 2000-09-13
EP1035538B1 (de) 2005-07-27
EP1035538A3 (de) 2003-04-23
DE60021455D1 (de) 2005-09-01

Similar Documents

Publication Publication Date Title
DE60006271T2 (de) Celp sprachkodierung mit variabler bitrate mittels phonetischer klassifizierung
DE68912692T2 (de) Zur Sprachqualitätsmodifizierung geeignetes Übertragungssystem durch Klassifizierung der Sprachsignale.
DE60011051T2 (de) Celp-transkodierung
DE60121405T2 (de) Transkodierer zur Vermeidung einer Kaskadenkodierung von Sprachsignalen
DE69928288T2 (de) Kodierung periodischer sprache
DE69133458T2 (de) Verfahren zur Sprachquantisierung und Fehlerkorrektur
DE69023402T2 (de) Verfahren zur Sprachkodierung und -dekodierung.
DE69029120T2 (de) Stimmenkodierer
DE19647298C2 (de) Kodiersystem
DE60117144T2 (de) Sprachübertragungssystem und verfahren zur behandlung verlorener datenrahmen
DE19604273C2 (de) Verfahren und Vorrichtung zum Durchführen einer Suche in einem Kodebuch im Hinblick auf das Kodieren eines Klangsignales, Zellkommunikationssystem, Zellnetzwerkelement und mobile Zell-Sender-/Empfänger-Einheit
DE69815242T2 (de) Verfahren zur Quantisierung der LPC Parameter mittels geschalteter prädiktiver Quantisierung
DE602004007786T2 (de) Verfahren und vorrichtung zur quantisierung des verstärkungsfaktors in einem breitbandsprachkodierer mit variabler bitrate
DE60024123T2 (de) Lpc-harmonischer sprachkodierer mit überrahmenformat
DE69926821T2 (de) Verfahren zur signalgesteuerten Schaltung zwischen verschiedenen Audiokodierungssystemen
DE69634645T2 (de) Verfahren und Vorrichtung zur Sprachkodierung
DE60128677T2 (de) Verfahren und vorrichtung zur prädiktiven quantisierung von stimmhaften sprachsignalen
DE60123651T2 (de) Verfahren und vorrichtung zur robusten sprachklassifikation
DE69816810T2 (de) Systeme und verfahren zur audio-kodierung
DE69910058T2 (de) Verbesserung der periodizität eines breitbandsignals
DE60029990T2 (de) Glättung des verstärkungsfaktors in breitbandsprach- und audio-signal dekodierer
DE69730779T2 (de) Verbesserungen bei oder in Bezug auf Sprachkodierung
DE69916321T2 (de) Kodierung eines verbesserungsmerkmals zur leistungsverbesserung in der kodierung von kommunikationssignalen
DE69932460T2 (de) Sprachkodierer/dekodierer
DE69029232T2 (de) System und Methode zur Sprachkodierung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition