Nothing Special   »   [go: up one dir, main page]

DE60121405T2 - Transkodierer zur Vermeidung einer Kaskadenkodierung von Sprachsignalen - Google Patents

Transkodierer zur Vermeidung einer Kaskadenkodierung von Sprachsignalen Download PDF

Info

Publication number
DE60121405T2
DE60121405T2 DE60121405T DE60121405T DE60121405T2 DE 60121405 T2 DE60121405 T2 DE 60121405T2 DE 60121405 T DE60121405 T DE 60121405T DE 60121405 T DE60121405 T DE 60121405T DE 60121405 T2 DE60121405 T2 DE 60121405T2
Authority
DE
Germany
Prior art keywords
code
gain
coding method
lpc
speech
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
DE60121405T
Other languages
English (en)
Other versions
DE60121405D1 (de
Inventor
Fujitsu Limited Masanao Kawasaki-shi Suzuki
Fujitsu Limited Yasuji Kawasaki-shi Ota
Fujitsu Kyushu Digital Yoshiteru Hakata-ku Tsuchinaga
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Application granted granted Critical
Publication of DE60121405D1 publication Critical patent/DE60121405D1/de
Publication of DE60121405T2 publication Critical patent/DE60121405T2/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
    • 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/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/12Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders

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)

Description

  • HINTERGRUND DER ERFINDUNG
  • Diese Erfindung bezieht sich auf eine Sprachcodekonvertierungsvorrichtung, und genauer auf eine Sprachcodekonvertierungsvorrichtung, zu der ein Sprachcode, der durch ein erstes Sprachkodierungsverfahren erhalten wird, zum Konvertieren dieses Sprachcodes zu einem Sprachcode eines zweiten Sprachcodekodierungsverfahrens und zum Ausgeben des letzteren Sprachcodes eingegeben wird.
  • Es gab in den letzten Jahren eine stark ansteigende Erhöhung bei Teilnehmern von zellularen Telefonen, und es wird vorausgesagt, dass die Zahl derartiger Benutzer fortsetzen wird, in der Zukunft zu wachsen. Sprachkommunikation, die das Internet (Voice over IP oder VoIP) verwendet, kommt in Intra-Firmen-IP-Netzen (Intranets) und für die Bereitstellung von Langstrecken-Telefondiensten zunehmend in Gebrauch. In Sprach kommunikationssystemen, wie etwa zellularen Telefonsystemen und VoIP, wird von Sprachkodierungstechnologie zum Komprimieren von Sprache Gebrauch gemacht, um die Kommunikationsleitung effektiv zu nutzen. In dem Fall zellularer Telefone unterscheidet sich die verwendete Sprachkodierungstechnologie abhängig von dem Land oder System. Hinsichtlich W-CDMA, von dem erwartet wird, als das zellulare Telefonsystem der nächsten Generation eingesetzt zu werden, wurde AMR (adaptive Mehrfachrate, Adaptive Multi-Rate) als das übliche globale Sprachkodierungsverfahren übernommen. Mit VoIP wird andererseits ein Verfahren in Übereinstimmung mit der Empfehlung der ITU-T G.729A als das Sprachkodierungsverfahren verwendet. Die Verfahren AMR und G.729A setzen beide einen Basisalgorithmus ein, der als CELP (Code Excited Linear Prediction) bezeichnet wird. Die CELP-Operationsprinzipien werden nun beschrieben, wobei das Verfahren G.729A als ein Beispiel genommen wird.
  • CELP-Operationsprinzipien
  • CELP ist durch die effiziente Übertragung linearer Vorhersagekoeffizienten (LPC-Koeffizienten), die die Sprachcharakteristika des menschlichen Vokaltraktes darstellen, und ein Klangquellensignal, das die Tonhöhenkomponente (Pitch-Komponente) und die Rauschkomponente von Sprache umfasst, gekennzeichnet. Genauer wird in Übereinstimmung mit CELP der menschliche Vokaltrakt durch ein LPC-Synthesefilter H(z) angenähert, was durch die folgende Gleichung ausgedrückt wird:
    Figure 00020001
    und es wird angenommen, dass das Klangquellensignal, das zu dem LPC-Synthesefilter H(z) eingegeben wird, in eine Tonhöhenperiodenkomponente, die die Periodizität der Sprache darstellt, und eine Rauschkomponente, die Zufälligkeit darstellt, getrennt werden kann. CELP extrahiert an Stelle einer direkten Übertragung des eingegebenen Sprachsignals zu der Decoderseite die Filterkoeffizienten des LPC-Synthesefilters und die Tonhöhenperioden- und Rauschkomponenten des Erregungssignals, quantisiert diese, um Quantisierungsindizes zu erhalten, und überträgt die Quantisierungsindizes, wobei dadurch ein hohes Maß von Informationskomprimierung implementiert wird.
  • Kodiereraufbau und Operation
  • 23 ist ein Diagramm, das ein Verfahren in Übereinstimmung mit der Empfehlung der ITU-T G.729A veranschaulicht. Wie in 23 gezeigt, werden Eingangssignale (Sprachsignale) X einer vorbestimmten Zahl (= N) von Abtastungen pro Rahmen zu einem LPC-Analysator 1 Rahmen für Rahmen eingegeben. Falls die Abtastungsgeschwindigkeit 8 kHz ist und die Periode eines einzelnen Rahmens 10 ms ist, dann besteht ein Rahmen aus 80 Abtastungen. Der LPC-Analysator 1, der als ein All-Polfilter betrachtet wird, der durch Gleichung (1) dargestellt wird, erhält Filterkoeffizienten αi (i = 1, ..., p), wobei p die Ordnung des Filters darstellt. Allgemein wird in dem Fall von Sprache in dem Telefonband ein Wert von 10 bis 12 als p verwendet. Der LPC-Analysator 1 führt LPC-Analyse unter Verwendung des Eingangssignals (80 Abtastungen), 40 vorher gelesener Abtastungen und 120 vergangener Abtastungen für insgesamt 240 Abtastungen durch, und erhält die LPC-Koeffizienten.
  • Ein Parameterkonverter 2 konvertiert die LPC-Koeffizienten zu LSP-(Line Spectrum Pair, Linienspektrumpaar) Parametern. Ein LSP-Parameter ist ein Parameter einer Frequenzregion, in der gegenseitige Konvertierung mit LPC-Koeffizienten möglich ist. Da eine Quantisierungscharakteristik LPC-Koeffizienten überlegen ist, wird Quantisierung in der LSP-Domäne durchgeführt. Ein LSP-Quantisierer 3 quantisiert einen LSP-Parameter, der durch die Konvertierung erhalten wird, und erhält einen LSP-Code und einen LSP-dequantisierten Wert. Ein LSP-Interpolator 4 erhält einen LSP-interpolierten Wert von dem LSP-dequantisierten Wert, der in dem vorliegenden Rahmen gefunden wird, und dem LSP-dequantisierten Wert, der in dem vorherigen Rahmen gefunden wird. Genauer wird ein Rahmen in zwei Teilrahmen geteilt, nämlich erste und zweite Teilrahmen, von je 5 ms, und der LPC-Analysator 1 bestimmt die LPC-Koeffizienten des zweiten Teilrahmens, aber nicht des ersten Teilrahmens. Unter Verwendung des LSP-dequantisierten Wertes, der in dem vorliegenden Rahmen gefunden wird, und des LSP-dequantisierten Wer tes, der in dem vorherigen Rahmen gefunden wird, sagt der LSP-Interpolator 4 den LSP-dequantisierten Wert des ersten Teilrahmens durch Interpolation vorher.
  • Ein Parameterumkehrungskonverter 5 konvertiert den LSP-dequantisierten Wert und den LSP-interpolierten Wert zu LPC-Koeffizienten und setzt diese Koeffizienten in einem LPC-Synthesefilter 5. In diesem Fall werden die LPC-Koeffizienten, die aus den LSP-interpolierten Werten in dem ersten Teilrahmen des Rahmens konvertiert werden, und die LPC-Koeffizienten, die aus den LSP-dequantisierten Werten in dem zweiten Teilrahmen konvertiert werden, als die Filterkoeffizienten des LPC-Synthesefilters 6 verwendet. In der anschließenden Beschreibung ist 1 mit einem Index (Indizes) keine Ziffer, sondern ein Alphabet.
  • Nachdem LSP-Parameter LSPi (i = 1, ..., p) wie durch skalare Quantisierung oder Vektorquantisierung in dem LSP-Quantisierer 3 quantisiert sind, werden die Quantisierungsindizes (LSP-Codes) zu einem Decoder gesendet. 24 ist ein Diagramm, das bei einer Beschreibung des Quantisierungsverfahrens von Nutzen ist. Hier wurden Mengen von großen Zahlen von Quantisierungs-LSP-Parametern in einer Quantisierungstabelle 3a in Entsprechung zu Indexzahlen 1 bis n gespeichert. Eine Abstandskalkulationseinheit 3b kalkuliert einen Abstand in Übereinstimmung mit der folgenden Gleichung: d = W·Σi{lspq(i) – lsp(i)}2 (i = 1 ∼ P)wobei W einen Gewichtungskoeffizienten darstellt.
  • Wenn q von 1 bis n variiert wird, findet ein Minimalabstands-Indexdetektor 3c das q, für das der Abstand d minimal ist, und sendet den Index q zu der Decoderseite als einen LSP-Code.
  • Als Nächstes wird Klangquellen- und Verstärkungssuchverarbeitung ausgeführt. Klangquelle und Verstärkung werden auf einer Basis pro Teilrahmen verarbeitet. In Übereinstimmung mit CELP wird ein Klangquellensignal in eine Tonhöhenperiodenkomponente und eine Rauschkomponente unterteilt, es wird ein adaptives Codebuch 7, das eine Sequenz von vergangenen Klangquellensignalen speichert, verwendet, um die Tonhöhenperiodenkomponente zu quantisieren, und es wird ein algebraisches Codebuch 8 oder Rauschcodebuch verwendet, um die Rauschkomponente zu quantisieren. Nachstehend wird eine typische Sprachkodierung vom CELP-Typ beschrieben, die das adaptive Codebuch 7 und das algebraische Codebuch 8 als Klangquellen-Codebücher verwendet.
  • Das adaptive Codebuch 7 ist angepasst, N Abtastungen von Klangquellensignalen (als "Periodizitätssignale" bezeichnet) auszugeben, die aufeinanderfolgend um eine Abtastung verzögert sind, in Verbindung mit Indizes 1 bis L. 25 ist ein Diagramm, das den Aufbau des adaptiven Codebuchs 7 in dem Fall eines Teilrahmens von 40 Abtastungen (N = 40) zeigt. Das adaptive Codebuch wird durch einen Puffer BF zum Speichern der Tonhöhenperiodenkomponente der letzten (L+39) Abtastungen gebildet. Ein Periodizitätssignal umfassend 1 bis 40 Abtastungen wird durch Index 1 spezifiziert, ein Periodizitätssignal umfassend 2 bis 41 Abtastungen wird durch Index 2 spezifiziert, ..., und ein Periodizitätssignal umfassend L bis L+39 Abtastungen wird durch Index L spezifiziert. In dem Anfangszustand ist der Inhalt des adaptiven Codebuchs 7 derart, dass alle Signale Amplituden von Null haben. Die Operation ist derart, dass eine Teilrahmenlänge der ältesten Signale Teilrahmen für Teilrahmen verworfen wird, sodass das Klangquellensignal, das in dem vorliegenden Rahmen erhalten wird, in dem adaptiven Codebuch 7 gespeichert wird.
  • Eine Suche im adaptiven Codebuch identifiziert die Periodizitätskomponente des Klangquellensignals unter Verwendung des adaptiven Codebuchs 7, das die vergangenen Klangquellensignale speichert. D.h. eine Teilrahmenlänge (= 40 Abtastungen) von vergangenen Klangquellensignalen in dem adaptiven Codebuch 7 wird extrahiert, während, eine Abtastung in einem Zeitpunkt, der Punkt, in dem das Auslesen aus dem adaptiven Codebuch 7 beginnt, geändert wird, und die vergangenen Klangquellensignale zu dem LPC-Synthesefilter 6 eingegeben werden, um ein Tonhöhensynthesesignal βAPL zu erstellen, wobei PL das vergangene Periodizitätssignal (adaptiver Codevektor), was Verzögerung L entspricht, was aus dem adaptiven Codebuch 7 extrahiert wird, A die Impulsantwort des LPC-Synthesefilters 6 und β die Verstärkung des adaptiven Codebuchs darstellen.
  • Eine Arithmetikeinheit 9 findet eine Fehlerleistung EL zwischen der eingegebenen Sprache X und βAPL in Übereinstimmung mit der folgenden Gleichung: EL = |X – βAPL|2 (2)
  • Falls wir APL ein gewichtetes synthetisiertes Signal, das von dem adaptiven Codebuch ausgegeben wird, Rpp die Autokorrelation von APL und Rxp die Kreuzkorrelation zwischen APL und dem eingegebenen Signal X darstellen lassen, dann wird ein adaptiver Codevektor PL in einem Tonhöhennachlauf (pitch lag) Lopt, für den die Fehlerleistung von Gleichung (2) minimal ist, durch die folgende Gleichung ausgedrückt:
    Figure 00060001
  • D.h. der optimale Startpunkt zum Auslesen aus dem adaptiven Codebuch ist der, in dem der Wert, der erhalten wird durch Normalisieren der Kreuzkorrelation Rxp zwischen dem gewichteten synthetisierten Signal APL und dem eingegebenen Signal X durch die Autokorrelation Rpp des gewichteten synthetisierten Signals am größten ist. Entsprechend findet eine Fehlerleistungsevaluierungseinheit 10 den Tonhöhennachlauf Lopt, der Gleichung (3) erfüllt. Die optimale Tonhöhenverstärkung βopt ergibt sich durch die folgende Gleichung: βopt = Rxp/Rpp (4)
  • Als Nächstes wird die Rauschkomponente, die in dem Klangquellensignal enthalten ist, unter Verwendung des algebraischen Codebuchs 8 quantisiert. Das letztere wird durch eine Vielzahl von Impulsen einer Amplitude 1 oder –1 gebildet. Auf dem Weg eines Beispiels veranschaulicht 26 Impulspositionen für einen Fall, wo die Rahmenlänge 40 Abtastungen ist. Das algebraische Codebuch 8 unterteilt die N (= 40) Abtastungspunkte, die einen Rahmen bilden, in eine Vielzahl von Impulssystemgruppen 1 bis 4 und gibt aufeinander folgend, für alle Kombinationen, die durch Extrahieren eines Abtastungspunktes von jeder der Impulssystemgruppen erhalten werden, als Rauschkomponenten, gepulste Signale mit einem Impuls +1 oder –1 in jedem Abtastungspunkt aus. In diesem Beispiel sind im wesentlichen die Impulse pro Rahmen aufgestellt. 27 ist ein Diagramm, das bei einer Beschreibung von Abtastungspunkten von Nutzen ist, die jeder der Impulssystemgruppen 1 bis 4 zugewiesen sind.
    • (1) Es sind acht Abtastungspunkte 0, 5, 10, 15, 20, 25, 30, 35 der Impulssystemgruppe 1 zugewiesen;
    • (2) Es sind acht Abtastungspunkte 1, 6, 11, 16, 21, 26, 31, 36 der Impulssystemgruppe 2 zugewiesen;
    • (3) Es sind acht Abtastungspunkte 2, 7, 12, 17, 22, 27, 32, 37 der Impulssystemgruppe 3 zugewiesen; und
    • (4) Es sind 16 Abtastungspunkte 3, 4, 8, 9, 13, 14, 18, 19, 23, 24, 28, 29, 33, 34, 38, 39 der Impulssystemgruppe 4 zugewiesen.
  • Es sind drei Bits erforderlich, um die Abtastungspunkte in Impulssystemgruppen 1 bis 3 auszudrücken, und es ist ein Bit erforderlich, um das Vorzeichen eines Impulses auszudrücken, für eine Summe von vier Bits. Ferner sind vier Bits erforderlich, um die Abtastungspunkte in Impulssystemgruppe 4 auszudrücken, und es ist ein Bit erforderlich, um das Vorzeichen eines Impulses auszudrücken, für eine Summe von fünf Bits. Entsprechend sind 17 Bits notwendig, um ein gepulstes Signal zu spezifizieren, das von dem algebraische Codebuch 8 mit der Impulsplatzierung von 26 auszugeben, und es existieren 217 (= 24 × 24 × 24 × 25) Typen von gepulsten Signalen.
  • Die Impulspositionen von jedem der Impulssysteme sind begrenzt, wie in 26 veranschaulicht wird. In der algebraischen Codebuchsuche wird eine Kombination von Impulsen, für die die Fehlerleistung relativ zu der eingegebenen Sprache minimiert ist, in der Reproduktion von unter den Kombinationen von Impulspositionen von jedem der Impulssysteme entschieden. Genauer wird mit βopt als die optimale Tonhöhenverstärkung, die aus der adaptiven Codebuchsuche gefunden wird, die Ausgabe PL des adaptiven Codebuchs mit βopt multipliziert, und das Produkt wird zu einem Addierer 11 eingegeben. Zur gleichen Zeit werden die gepulsten Signale aufeinanderfolgend zu dem Addierer 11 von dem algebraischen Codebuch 8 eingegeben, und es wird ein Impulssignal spezifiziert, das die Differenz zwischen dem eingegebenen Signal X und einem reproduzierten Signal, das durch Eingeben der Addiererausgabe zu dem LPC-Synthesefilter 6 erhalten wird, minimieren wird. Genauer wird ein erster Zielvektor X' für eine algebraische Codebuchsuche in Übereinstimmung mit der folgenden Gleichung generiert, die die optimale Ausgabe des adaptiven Codebuchs PL und die optimale Tonhöhenverstärkung β opt, die aus dem eingegebenen Signal X durch die Suche im adaptiven Codebuch erhalten wird, generiert: X' = X – βoptAPL (5)
  • In diesem Beispiel werden Impulsposition und Amplitude (Vorzeichen) durch 17 Bit ausgedrückt, und deshalb existieren 217 Kombinationen, wie oben erwähnt. Wenn entsprechend CR einen k-ten Ausgabevektor vom algebraischen Codebuch darstellt, wird ein Codevektor CR, der eine Evaluierungsfunktions-Fehlerausgabeleistung D in der folgenden Gleichung minimieren wird, durch eine Suche des algebraischen Codebuchs gefunden: D = |X'-GCACK|2 (6)wobei GC die Verstärkung des algebraischen Codebuchs darstellt. Minimieren von Gleichung (6) entspricht dem Finden des CR, d.h. des k, was die folgende Gleichung minimieren wird:
    Figure 00090001
  • Somit sucht in der Suche im algebraischen Codebuch die Fehlerleistungsevaluierungseinheit 10 nach dem k, das die Kombination von Impulsposition und Polarität spezifiziert, was den größten wert bieten wird, der durch Normalisieren der Kreuzkorrelation zwischen dem algebraischen Synthesesignal ACR und dem Zielsignal X' durch die Autokorrelation des algebraischen Synthesesignals ACR erhalten wird.
  • Als Nächstes wird Verstärkungsquantisierung beschrieben. Mit dem System nach G.729A wird die Verstärkung des algebraischen Codebuchs nicht direkt quantisiert. Viel mehr werden die Verstärkung des adaptiven Codebuchs Ga (= βopt) und ein Korrekturkoeffizient γ der Verstärkung des algebraischen Codebuchs Ga gemeinsam Vektor-quantisiert. Die Verstärkung des algebraischen Codebuchs Ga und der Korrekturkoeffizient γ sind wie folgt aufeinander bezogen: Gc = g' × γwobei g' die Verstärkung des vorliegenden Rahmens darstellt, die aus den logarithmischen Verstärkungen von vier vergangenen Teilrahmen vorhergesagt wird. Ein Verstärkungsquantisierer 12 hat eine Verstärkungsquantisierungstabelle (Verstärkungscodebuch), nicht gezeigt, wofür 128 (= 27) Kombinationen der Verstärkung des adaptiven Codebuchs Ga und Korrekturkoeffizienten γ für die Verstärkung des algebraischen Codebuchs vorbereitet sind. Das Verfahren der Verstärkungscodebuchsuche enthält (1) Extrahieren einer Menge von Tabellenwerten aus der Verstärkungsquantisierungstabelle hinsichtlich eines Ausgabevektors von dem adaptiven Codebuch 7 und eines Ausgabevektors von dem algebraischen Codebuch 8 und Einstellen dieser Werte jeweils in Verstärkungsvariationseinheiten 13, 14; (2) Multiplizieren dieser Vektoren mit Verstärkungen Ga, Gc unter Verwendung jeweils der Verstärkungsvariationseinheiten 13, 14, und Eingeben der Produkte zu dem LPC-Synthesefilter 6; und (3) Auswählen, über die Fehlerleistungsevaluierungseinheit 10, der Kombination, für die die Fehlerleistung relativ zu dem eingegebenen Signal k die kleinste ist.
  • Ein Leitungskodierer 15 erstellt Leitungsdaten durch Multiplexen (1) eines LSP-Codes, der der Quantisierungsindex des LSP ist, (2) eines Tonhöhennachlaufcodes Lopt, (3) eines al gebraischen Codes, der ein algebraischer Codebuchindex ist, und (4) eines Verstärkungscodes, der ein Quantisierungsindex der Verstärkung ist, und sendet die Leitungsdaten zu dem Decoder.
  • Wie oben beschrieben, erzeugt somit das CELP-System ein Modell des Sprachgenerierungsprozesses, quantisiert die charakteristischen Parameter dieses Modells und überträgt die Parameter, wobei es dadurch möglich gemacht wird, Sprache effizient zu komprimieren.
  • Decoderaufbau und Operation
  • 28 ist ein Blockdiagramm, das einen mit G.729A übereinstimmenden Decoder veranschaulicht. Leitungsdaten, die von der Kodiererseite gesendet werden, werden zu einem Leitungsdecoder 21 eingegeben, der fortfährt, einen LSP-Code, Tonhöhennachlaufcode, algebraischen Code und Verstärkungscode auszugeben. Der Decoder dekodiert Sprachdaten basierend auf diesen Codes. Die Operation des Decoders wird nun beschrieben, obwohl Teile der Beschreibung wegen Funktionen des Decoders, die in dem Kodierer enthalten sind, redundant sein werden.
  • Bei Empfang des LSP-Codes als eine Eingabe wendet ein LSP-Dequantisierer 22 Dequantisierung an und gibt einen LSP-dequantisierten Wert aus. Ein LSP-Interpolator 23 interpoliert einen LSP-dequantisierten Wert des ersten Teilrahmens des vorliegenden Rahmens aus dem LSP-dequantisierten Wert in dem zweiten Teilrahmen des vorliegenden Rahmens und dem LSP-dequantisierten Wert in dem zweiten Teilrahmen des vorherigen Rahmens. Als Nächstes konvertiert ein Parameterumkehrungskonverter 24 den LSP-interpolierten Wert und den LSP-dequantisierten Wert zu LPC-Synthesefilterkoeffizienten. Ein G.729A entsprechendes Synthesefilter 25 verwendet den LPC-Koeffizienten, der aus dem LSP-interpolierten Wert in dem anfängli chen ersten Teilrahmen konvertiert wird, und verwendet den LPC-Koeffizienten, der aus dem LSP-dequantisierten Wert in dem folgenden zweiten Teilrahmen konvertiert wird.
  • Ein adaptives Codebuch 26 gibt ein Tonhöhensignal einer Teilrahmenlänge (= 40 Abtastungen) von einem Auslesestartpunkt aus, der durch einen Tonhöhennachlaufcode spezifiziert ist, und ein Rauschcodebuch 27 gibt eine Impulsposition und Impulspolarität von einer Ausleseposition aus, die einem algebraischen Code entspricht. Ein Verstärkungsdequantisierer 28 kalkuliert einen dequantisierten Wert der Verstärkung des adaptiven Codebuchs und einen dequantisierten Wert der Verstärkung des algebraischen Codebuchs aus dem Verstärkungscode, der dazu angelegt wird, und setzt diese Werte jeweils in Verstärkungsvariationseinheiten 29, 30. Ein Addierer 31 erstellt ein Klangquellensignal durch Addieren eines Signals, was durch Multiplizieren der Ausgabe des adaptiven Codebuchs mit dem dequantisierten Wert der Verstärkung des adaptiven Codebuchs erhalten wird, und eines Signals, das durch Multiplizieren der Ausgabe des algebraischen Codebuchs mit dem dequantisierten Wert der Verstärkung des algebraischen Codebuchs erhalten wird. Das Klangquellensignal wird zu einem LPC-Synthesefilter 25 eingegeben. Als ein Ergebnis kann reproduzierte Sprache von dem LPC-Synthesefilter 25 erhalten werden.
  • In dem Anfangszustand ist der Inhalt des adaptiven Codebuchs 26 auf der Decoderseite derart, dass alle Signale Amplituden von Null haben. Die Operation ist derart, dass eine Teilrahmenlänge der ältesten Signale Teilrahmen für Teilrahmen verworfen wird, sodass das Klangquellensignal, das in dem vorliegenden Rahmen erhalten wird, in dem adaptiven Codebuch 26 gespeichert wird. Mit anderen Worten werden das adaptive Codebuch 7 des Kodierers und das adaptive Codebuch 26 des Decoders stets in dem identischen neuesten Zustand gehalten.
  • Unterschied zwischen Kodierungsverfahren nach G.729A und AMR Als Nächstes wird der Unterschied zwischen dem G.729A entsprechenden Sprachkodierungsverfahren und dem AMR-Sprachkodierungsverfahren beschrieben. 29 veranschaulicht Ergebnisse, die durch Vergleichen der wesentlichen Merkmale der Sprachkodierungsverfahren nach G.729R und AMR erhalten werden. Es sollte vermerkt werden, dass obwohl es insgesamt acht Typen von AMR-Kodierungsmodi gibt, die besonderen, die in 29 gezeigt werden, für alle Kodierungsmodi gemeinsam sind. Die Sprachkodierungsverfahren nach G.729A und AMR haben die gleiche Eingangssignal-Abtastfrequenz (= 8 kHz), die gleiche Teilrahmenlänge (= 5 ms) und die gleiche Größenordnung linearer Vorhersage (= Größenordnung zehn). Wie in 30 gezeigt wird, haben sie jedoch unterschiedliche Rahmenlängen und unterschiedliche Zahlen von Teilrahmen pro Rahmen. In dem Verfahren nach G.729A besteht ein Rahmens aus zwei Teilrahmen, nämlich Teilrahmen 0-ter und 1-ter; in dem AMR-Verfahren besteht ein Rahmen aus vier Teilrahmen, nämlich Teilrahmen 0-ter bis 3-ter.
  • 31 veranschaulicht das Ergebnis vom Vergleich der Bitzuweisungen der Verfahren nach G.729A und AMR. 31 veranschaulicht einen Fall, wo der Modus für das AMR-Verfahren 7,95 kbps ist, was der Bitrate des Verfahrens nach G.729A am nächsten ist. Aus 31 ist offensichtlich, dass obwohl die Zahlen von Bits (= 17) des algebraischen Codebuchs pro Teilrahmen die gleichen sind, sich die Zuordnungen von Zahlen der Bits, die für andere Codes notwendig sind, vollständig unterscheiden. Mit dem Verfahren nach G.729A sind ferner die Verstärkung des adaptiven Codebuchs und die Verstärkung des algebraischen Codebuchs gemeinsam Vektor-quantisiert, und als eine Folge gibt es einen Typ vom Verstärkungscode pro Teilrahmen. Mit dem AMR-Verfahren gibt es jedoch zwei Typen von Verstärkungscodes, nämlich Verstärkung des adaptiven Codebuchs und Verstärkung des algebraischen Codebuchs, pro Teilrahmen.
  • Wie oben beschrieben, wird ein gemeinsamer Basisalgorithmus durch das Verfahren nach G.729A verwendet, der nun weithin für VoIP in der Kommunikation von Sprache über das Internet eingesetzt und durch das AMR-Verfahren für ein zellulares Telefonsystem der nächsten Generation angenommen wird. Die Rahmenlängen unterscheiden sich jedoch und so auch die Zahlen von Bits, die die Codes ausdrücken.
  • Es wird angenommen, dass die steigende Popularität des Internet und zellularer Telefone zu einem stets ansteigenden Sprachverkehr durch Internetbenutzer und Benutzer von zellularen Telefonnetzen führen wird. 32 ist eine konzeptionelle Ansicht, die die Beziehung zwischen Netzen und Benutzern in einem derartigen Fall veranschaulicht. In einem Fall, wo ein Benutzer A eines Netzes (z.B. des Internet) 51 per Sprache mit einem Benutzer B eines Netzes (z.B. eines zellularen Telefonnetzes) 53 kommuniziert, kann Kommunikation zwischen den Benutzern nicht stattfinden, falls sich ein erstes Kodierungsverfahren, das in einer Sprachkommunikation durch das Netz 51 verwendet wird, von einem zweiten Kodierungsverfahren unterscheidet, das in einer Sprachkommunikation durch das Netz 53 verwendet wird.
  • Entsprechend ist ein Sprachcodekonverter 55 zwischen den Netzen vorgesehen, wie in 32 gezeigt, und ist angepasst, den Sprachcode, der durch ein Netz kodiert wurde, in den Sprachcode des Kodierungsverfahrens zu konvertieren, das in dem anderen Netz verwendet wird.
  • 33 zeigt ein Beispiel vom Stand der Technik, das Sprachcodekonvertierung verwendet. Dieses Beispiel berücksichtigt nur einen Fall, wo Sprache, die zu einem Endgerät 52 durch einen Benutzer A eingegeben wird, zu einem Endgerät 54 von Benutzer B gesendet wird. Es wird hier angenommen, dass das Endgerät 52 im Besitz durch Benutzer A nur einen Kodierer 52a eines Kodierungsverfahrens 1 hat, und dass das Endgerät 54 von Benutzer B nur einen Decoder 54a eines Kodierungsverfahrens 2 hat.
  • Sprache, die durch Benutzer B auf der übertragenden Seite erzeugt wurde, wird zu dem Kodierer 52a des Kodierungsverfahrens 1 eingegeben, das in das Endgerät 52 einbezogen ist. Der Kodierer 52a kodiert das eingegebene Sprachsignal zu einem Sprachcode des Kodierungsverfahrens 1 und gibt diesen Code zu einem Übertragungspfad 51' aus. Wenn der Sprachcode vom Kodierungsverfahren 1 über den Übertragungspfad 51' eingegeben wird, dekodiert ein Decoder 55a des Sprachcodekonverters 55 die reproduzierte Sprache aus dem Sprachcode vom Kodierungsverfahren 1. Ein Kodierer 55b des Sprachcodekonverters 55 konvertiert dann das reproduzierte Sprachsignal zu einem Sprachcode des Kodierungsverfahrens 2 und sendet diesen Sprachcode zu einem Übertragungspfad 53'. Der Sprachcode des Kodierungsverfahrens 2 wird zu dem Endgerät 54 durch den Übertragungspfad 53' eingegeben. Bei Empfang des Sprachcodes des Kodierungsverfahrens 2 als eine Eingabe dekodiert der Decoder 54a die reproduzierte Sprache aus den Sprachcode des Kodierungsverfahrens 2. Als ein Ergebnis ist der Benutzer B auf der empfangenden Seite dazu fähig, die reproduzierte Sprache zu hören. Eine Verarbeitung zum Dekodieren von Sprache, die zuerst kodiert wurde, und dann Neukodieren der dekodierten Sprache wird als "Tandemverbindung" bezeichnet.
  • Sprache (reproduzierte Sprache), die aus Information besteht, die durch Kodierungsverarbeitung komprimiert wird, enthält einen geringeren Umfang von Sprachinformation im Vergleich mit der ursprünglichen Sprache (Quelle), und daher ist die Klangqualität der reproduzierten Sprache der der Quelle unterlegen. Insbesondere wird mit der neuesten Sprachkodierung geringer Bitrate, die durch die Verfahren nach G.729A und AMR typisiert sind, viel Information, die in der eingegebenen Sprache enthalten ist, in dem Kodierungsprozess verworfen, um eine hohe Komprimierungsrate zu realisieren. Wenn eine Tandemverbindung eingesetzt wird, in der Kodierung und Dekodierung wiederholt werden, entsteht ein Problem einer merklichen Verschlechterung in der Qualität der reproduzierten Sprache.
  • Ein zusätzliches Problem bei Tandemverarbeitung ist Verzögerung. Es ist bekannt, dass wenn eine Verzögerung über 100 ms hinaus in einer Zweiwegkommunikation auftritt, wie etwa einer Telefonkonversation, die Verzögerung durch die kommunizierenden Seiten wahrgenommen wird und ein Hindernis für die Konversation ist. Es ist auch bekannt, dass selbst wenn Echtzeitverarbeitung in Sprachkodierung ausgeführt werden kann, in der Rahmenverarbeitung ausgeführt wird, grundsätzlich eine Verzögerung unvermeidlich ist, die viermal die Rahmenlänge ist. Da z.B. die Rahmenlänge in dem AMR-Verfahren 20 ms ist, ist die Verzögerung mindestens 80 ms. Bei dem konventionellen Verfahren von Sprachcodekonvertierung ist Tandemverbindung in den Verfahren nach G.729A und AMR erforderlich. Die Verzögerung in einem derartigen Fall ist 160 ms oder größer. Eine derartige Verzögerung wird durch die Seiten in einer Telefonkonversation wahrgenommen und ist eine Behinderung der Konversation.
  • Wie oben beschrieben ist, damit Sprachkommunikation zwischen Netzen durchgeführt wird, die unterschiedliche Sprachkodierungsverfahren einsetzen, die konventionelle Praxis, Tandemverarbeitung auszuführen, in der ein komprimierter Sprachcode in Sprache dekodiert wird und dann der Sprachcode neu kodiert wird. Als eine Folge entstehen Probleme, nämlich eine ausgeprägte Verschlechterung in der Qualität der reproduzierten Sprache und ein Hindernis für Telefonkonversation, das durch eine Verzögerung verursacht wird.
  • Ein anderes Problem besteht darin, dass der Stand der Technik die Effekte eines Übertragungspfadfehlers nicht berücksichtigt. Falls drahtlose Kommunikation unter Verwendung eines zellularen Telefons durchgeführt wird, und ein Bitfehler oder Häufungsfehler wegen dem Einfluss einer Erscheinung, wie etwa Phasenlage, auftritt, ändert sich genauer der Sprachcode zu einem, der von dem ursprünglichen verschieden ist, und es gibt Fälle, wo der Sprachcode eines gesamten Rahmens verloren ist. Falls der Verkehr über das Internet stark ist, wächst die Übertragungsverzögerung, der Sprachcode eines ganzen Rahmens kann verloren sein oder Rahmen können die Plätze im Sinne ihrer Reihenfolge ändern. Da Codekonvertierung basierend auf einem Sprachcode durchgeführt wird, der falsch ist, falls ein Übertragungspfadfehler ein Faktor ist, kann eine Konvertierung zu dem optimalen Sprachcode nicht länger erreicht werden. Somit gibt es Bedarf für eine Technik, die die Effekte vom Übertragungspfadfehler reduzieren wird.
  • In US-A-5,995,923 werden ein Verfahren und eine Vorrichtung zum Verbessern der Sprachqualität von Tandem-Sprachentschlüsselungsgeräten offenbart. Insbesondere ist die Vorrichtung zum Konvertieren eines komprimierten Sprachsignals von einem Format zu einem anderen Format über ein gemeinsames Zwischenformat fähig, wobei somit die Notwendigkeit zum aufeinanderfolgenden Dekomprimieren von Sprachdaten zu einer Digitalisierung vom PCM-Typ und dann neuer Komprimierung der Sprachdaten vermieden wird.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Entsprechend besteht ein Ziel der vorliegenden Erfindung, wie in den angefügten Ansprüchen beansprucht, darin so anzuord nen, dass sich die Qualität rekonstruierter Sprache nicht verschlechtert, selbst wenn ein Sprachcode von dem eines ersten Sprachkodierungsverfahrens zu dem eines zweiten Sprachkodierungsverfahrens konvertiert wird.
  • Ein anderes Ziel der vorliegenden Erfindung besteht darin so anzuordnen, dass eine Sprachverzögerung reduziert werden kann, um die Qualität einer Telefonkonversation zu verbessern, selbst wenn ein Sprachcode von dem eines ersten Sprachkodierungsverfahrens zu dem eines zweiten Sprachkodierungsverfahrens konvertiert wird.
  • Ein anderes Ziel der vorliegenden Erfindung besteht darin, eine Verschlechterung in der Klangqualität rekonstruierter Sprache zu reduzieren, die einem Übertragungspfadfehler zuzuschreiben ist, durch Eliminieren zu dem möglichen maximalen Grad der Effekte eines Fehlers von einem Sprachcode, der durch einen Übertragungspfadfehler verzerrt wurde, und Anwenden einer Sprachcodekonvertierung auf den Sprachcode, worin die Effekte des Fehlers reduziert wurden.
  • Gemäß der vorliegenden Erfindung werden die vorangehenden Ziele erreicht durch Bereitstellen einer Sprachcode-Konvertierungsvorrichtung, zu der ein Sprachcode, der durch Kodierung erhalten wird, die durch ein erstes Sprachkodierungsverfahren durchgeführt wird, eingegeben wird zum Konvertieren dieses Sprachcodes zu einem Sprachcode eines zweiten Sprachkodierungsverfahrens, gekennzeichnet dadurch, dass die Vorrichtung umfasst: ein Codetrennungsmittel zum Trennen, von dem Sprachcode basierend auf dem ersten Sprachkodierungsverfahren, in Codes einer Vielzahl von Komponenten, die notwendig sind, um ein Sprachsignal zu rekonstruieren; Codekonvertierungsmittel zum Konvertieren der getrennten Codes der Vielzahl von Komponenten zu Sprachcodes des zweiten Sprachkodierungsverfahrens; und Mittel zum Multiplexen der Codes, die von jeweiligen der Codekonvertierungsmittel ausgegeben werden, und Ausgeben eines Sprachcodes, der auf dem zweiten Sprachkodierungsverfahren basiert, und wobei das Sprachkonvertierungsmittel enthält:
    Dequantisierer zum Dequantisieren der getrennten Codes von jeder der Komponenten des ersten Sprachkodierungsverfahrens und Ausgeben von dequantisierten Werten; und
    Quantisierer zum Quantisieren von jedem der quantisierten Werte, die von jeweiligen der Dequantisierer ausgegeben werden, durch das zweite Sprachkodierungsverfahren, um Codes zu generieren.
  • Als eine Folge gibt es keine Notwendigkeit, rekonstruierte Sprache in dem Sprachcode-Konvertierungsprozess auszugeben. Dies bedeutet, dass es möglich ist, eine Verschlechterung in der Qualität von Sprache zu unterdrücken, die schließlich reproduziert wird, und eine Signalverzögerung durch Verkürzen der Verarbeitungszeit zu reduzieren.
  • Andere Merkmale und Vorteile der vorliegenden Erfindung werden aus der folgenden Beschreibung offensichtlich, die in Verbindung mit den begleitenden Zeichnungen aufgenommen wird, in denen gleiche Bezugszeichen die gleichen oder ähnliche Teile überall in den Figuren davon bezeichnen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockdiagramm, das die Prinzipien der vorliegenden Erfindung veranschaulicht;
  • 2 ist ein Blockdiagramm, das die Prinzipien der vorliegenden Erfindung detaillierter veranschaulicht;
  • 3 ist ein Blockdiagramm einer ersten Ausführungsform der vorliegenden Erfindung;
  • 4A und 4B sind Diagramme, die bei einer Beschreibung von Rahmen nützlich sind, die LSP-Quantisierung unterzogen werden;
  • 5 ist ein Blockdiagramm, das den Aufbau eines LSP-Quantisierers veranschaulicht;
  • 6 ist ein Diagramm, das die Entsprechung zwischen Rahmen und Teilrahmen zeigt;
  • 7A und 7B sind Diagramme, die die Beziehung zwischen Tonhöhennachlauf und Indizes in dem Verfahren nach G.729A zeigen;
  • 8A und 8B sind Diagramme, die die Beziehung zwischen Tonhöhennachlauf und Indizes in dem AMR-Verfahren zeigen;
  • 9 ist ein Diagramm, das die entsprechende Beziehung zwischen Tonhöhennachlauf in dem Verfahren nach G.729A und Tonhöhennachlauf in dem AMR-Verfahren zeigt;
  • 10 ist ein Blockdiagramm, das den Aufbau eines Verstärkungsquantisierers veranschaulicht;
  • 11 ist ein Diagramm einer zweiten Ausführungsform der vorliegenden Erfindung;
  • 12 ist ein Blockdiagramm, das den Aufbau eines LSP-Quantisierers gemäß der zweiten Ausführungsform veranschaulicht;
  • 13 ist ein Flussdiagramm von SLP-Kodierungsverarbeitung gemäß der zweiten Ausführungsform;
  • 14 ist ein Teil eins eines Verarbeitungsflussdiagramms gemäß einer dritten Ausführungsform;
  • 15 ist ein Teil zwei eines Verarbeitungsflussdiagramms gemäß der dritten Ausführungsform;
  • 16 ist ein Diagramm einer vierten Ausführungsform der vorliegenden Erfindung;
  • 17 ist ein Diagramm, das bei einer Beschreibung einer Verarbeitung von Nutzen ist, die durch einen LSP-Code konverter gemäß der vierten Ausführungsform ausgeführt wird;
  • 18 ist ein Blockdiagramm eines LSP-Dequantisierers;
  • 19 ist ein Blockdiagramm eines LSP-Quantisierers;
  • 20 ist ein Blockdiagramm, das bei einer Beschreibung des Eindringens eines Kanalfehlers in einen Sprachcode von Nutzen ist;
  • 21 ist ein Blockdiagramm, das bei einer Beschreibung der Prinzipien einer fünften Ausführungsform der vorliegenden Erfindung von Nutzen ist;
  • 22 ist ein Blockdiagramm, das die fünfte Ausführungsform zeigt;
  • 23 ist ein Blockdiagramm eines Kodierers basierend auf Codekonvertierung nach ITU-T G.729A gemäß dem Stand der Technik;
  • 24 ist ein Diagramm, das bei einer Beschreibung eines Quantisierungsverfahrens gemäß dem Stand der Technik von Nutzen ist;
  • 25 ist ein Diagramm, das bei einer Beschreibung eines adaptiven Codebuchs gemäß dem Stand der Technik von Nutzen ist;
  • 26 ist ein Diagramm, das bei einer Beschreibung eines algebraischen Codebuchs von Nutzen ist, das in Codekonvertierung nach G.729A gemäß dem Stand der Technik verwendet wird;
  • 27 ist ein Diagramm, das bei einer Beschreibung von Abtastungspunkten von Impulssystemgruppen gemäß dem Stand der Technik von Nutzen ist;
  • 28 ist ein Blockdiagramm eines Decoders basierend auf Codekonvertierung nach ITU-T G.729A gemäß dem Stand der Technik;
  • 29 ist ein Diagramm, das einen Vergleich von Hauptmerkmalen von Codekonvertierung nach ITU-T G.729A und AMR-Codekonvertierung gemäß dem Stand der Technik zeigt;
  • 30 ist ein Diagramm, das einen Vergleich von Rahmenlängen gemäß dem Stand der Technik zeigt;
  • 31 ist ein Diagramm, das einen Vergleich von Bitzuordnungen in Codekonvertierung nach ITU-T G.729A und AMR-Codekonvertierung gemäß dem Stand der Technik zeigt;
  • 32 ist eine konzeptionelle Ansicht des Standes der Technik; und
  • 33 veranschaulicht ein Beispiel von Sprachcodekonvertierung gemäß dem Stand der Technik.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • (A) Prinzipien der vorliegenden Erfindung
  • 1 ist ein Blockdiagramm, das die Prinzipien einer Sprachcode-Konvertierungsvorrichtung gemäß der vorliegenden Erfindung veranschaulicht. Die Vorrichtung empfängt, als ein Eingangssignal, einen Sprachcode, der durch ein erstes Sprachkodierungsverfahren (Kodierungsverfahren 1) erhalten wird, und konvertiert diesen Sprachcode zu einem Sprachcode eines zweiten Sprachkodierungsverfahrens (Kodierungsverfahren 2).
  • Ein Kodierer 61a des Kodierungsverfahrens 1, der in ein Endgerät 61 einbezogen ist, kodiert ein Sprachsignal, das durch einen Benutzer A erzeugt wird, zu einem Sprachcode des Kodierungsverfahrens 1 und sendet diesen Sprachcode zu einem Übertragungspfad 71. Eine Sprachcodekonvertierungseinheit 80 konvertiert den Sprachcode des Kodierungsverfahrens 1, der von dem Übertragungspfad 71 eingetreten ist, zu einem Sprachcode des Kodierungsverfahrens 2 und sendet diesen Sprachcode zu einem Übertragungspfad 72. Ein Decoder 91a in einem Endgerät 91 dekodiert reproduzierte Sprache aus dem Sprachcode des Kodierungsverfahrens 2, der über dem Übertragungspfad 72 eintritt, und ein Benutzer B ist zum Hören der reproduzierten Sprache fähig.
  • Das Kodierungsverfahren 1 kodiert ein Sprachsignal durch (1) einen ersten LPC-Code, der durch Quantisierungslinearvorhersagekoeffizienten (LPC-Koeffizienten) erhalten wird, die durch eine lineare Vorhersageanalyse Rahmen für Rahmen erhalten werden, oder LSP-Parameter, die aus diesen LPC-Koeffi zienten gefunden werden; (2) einen ersten Tonhöhennachlaufcode, der das Ausgangssignal eines adaptiven Codebuchs spezifiziert, was zum Ausgeben eines periodischen Klangquellensignals dient; (3) einen ersten Rauschcode, der das Ausgangssignal eines Rauschcodebuchs spezifiziert, was zum Ausgeben eines verrauschten Klangquellensignals dient; und (4) einen ersten Verstärkungscode, der durch gemeinsames Quantisieren der adaptiven Codebuchverstärkung, was die Amplitude des Ausgangssignals des adaptiven Codebuch darstellt, und Rauschcodebuchverstärkung, die die Amplitude des Ausgangssignals des Rauschcodebuch darstellt, erhalten wird. Das Kodierungsverfahren 2 kodiert ein Sprachsignal durch (1) einen zweiten LPC-Code, (2) einen zweiten Tonhöhennachlaufcode, (3) einen zweiten Rauschcode und (4) einen zweiten Verstärkungscode, die durch Quantisierung in Übereinstimmung mit einem Quantisierungsverfahren erhalten werden, das sich von dem des Kodierungsverfahrens 1 unterscheidet.
  • Die Sprachcodekonvertierungseinheit 80 hat einen Codetrenner 81, einen LSP-Codekonverter 82, einen Tonhöhennachlauf-Codekonverter 83, einen algebraische Codekonverter 84, einen Verstärkungscodekonverter 85 und einen Codemultiplexer 86. Der Codetrenner 81 trennt den Sprachcode des Kodierungsverfahrens 1, wobei der Code von dem Kodierer 61a des Endgerätes 61 über den Übertragungspfad 71 eintritt, in Codes einer Vielzahl von Komponenten, die notwendig sind, um ein Sprachsignal zu reproduzieren, nämlich (1) einen LSP-Code, (2) einen Tonhöhennachlaufcode, (3) einen algebraischen Code und (4) einen Verstärkungscode. Diese Codes werden zu den Codekonvertern 82, 83, 84 bzw. 85 eingegeben. Die letzteren konvertieren die eingegebenen LSP-Code, Tonhöhennachlaufcode, algebraischen Code und Verstärkungscode des Kodierungsverfahrens 1 zu einem LSP-Code, Tonhöhennachlaufcode, algebraischen Code und Verstärkungscode des Kodierungsverfahrens 2, und der Codemulti plexer 86 multiplext diese Codes des Kodierungsverfahrens 2 und sendet das multiplexte Signal zu dem Übertragungspfad 72.
  • 2 ist ein Blockdiagramm, das die Sprachcodekonvertierungseinheit veranschaulicht, worin der Aufbau der Code konverter 82 bis 85 klargestellt wird. Komponenten in 2, die zu jenen in 1 gezeigten identisch sind, werden durch gleiche Bezugszeichen bezeichnet. Der Codetrenner 81 trennt einen LSP-Code 1, einen Tonhöhennachlaufcode 1, einen algebraischen Code 1 und einen Verstärkungscode 1 von Leitungsdaten (das Sprachsignal basierend auf Kodierungsverfahren 1), die von dem Übertragungspfad über einen Eingangsanschluss #1 eintreten, und gibt diese Codes zu den Codekonvertern 82, 83, 84 bzw. 85 ein.
  • Der LSP-Codekonverter 82 hat einen LSP-Dequantisierer 82a zum Dequantisieren des LSP-Codes 1 des Kodierungsverfahrens 1 und Ausgeben eines LSP-dequantisierten Wertes, und einen LSP-Quantisierer 82b zum Quantisieren des LSP-dequantisierten Wertes durch das Kodierungsverfahren 2 und Ausgeben eines LSP-Codes 2. Der Tonhöhennachlaufcodekonverter 83 hat einen Tonhöhennachlauf-Dequantisierer 83a zum Dequantisieren des Tonhöhennachlaufcodes 1 des Kodierungsverfahrens 1 und Ausgeben eines Tonhöhennachlauf-Dequantisierungswertes, und einen Tonhöhennachlauf-Quantisierer 83b zum Quantisieren des Tonhöhennachlauf-Dequantisierungswertes durch das Kodierungsverfahren 2 und Ausgeben eines Tonhöhennachlaufcodes 2. Der algebraische Codekonverter 84 hat einen algebraischen Dequantisierer 84a zum Dequantisieren des algebraischen Codes 1 des Kodierungsverfahrens 1 und Ausgeben eines algebraischen dequantisierten Wertes, und einen algebraischen Quantisierer 84b zum Quantisieren des algebraischen dequantisierten Wertes durch das Kodierungsverfahren 2 und Ausgeben eines algebraischen Codes 2. Der Verstärkungscodekonverter 85 hat einen Verstärkungsdequantisierer 85a zum Dequantisieren des Ver stärkungscodes 1 des Kodierungsverfahrens 1 und Ausgeben eines Verstärkungsdequantisierungswertes, und einen Verstärkungsquantisierer 85b zum Quantisieren des Verstärkungsdequantisierungswertes durch das Kodierungsverfahren 2 und Ausgeben eines Verstärkungscodes 2.
  • Der Codemultiplexer 86 multiplext den LSP-Code 2, Tonhöhennachlaufcode 2, algebraischen Code 2 und Verstärkungscode 2, die von den Quantisierern 82b, 83b, 84b bzw. 85b ausgegeben werden, wobei dadurch ein Sprachcode basierend auf dem Kodierungsverfahren 2 erstellt wird, und sendet diesen Sprachcode zu dem Übertragungspfad von einem Ausgangsanschluss #2.
  • Im Stand der Technik ist die Eingabe eine reproduzierte Sprache, die durch Dekodieren eines Sprachcodes erhalten wird, der in Übereinstimmung mit dem Kodierungsverfahren 1 kodiert wurde, und die reproduzierte Sprache wird erneut in Übereinstimmung mit dem Kodierungsverfahren 2 kodiert und dann dekodiert. Als eine Folge ist, da Sprachparameter aus reproduzierter Sprache extrahiert werden, in der der Umfang von Information im Vergleich mit der Quelle wegen der erneuten Kodierung (d.h. Sprachinformationskomprimierung) leicht reduziert wurde, der Sprachcode, der dadurch erhalten wird, nicht notwendigerweise der optimale Sprachcode. Im Gegensatz dazu wird in Übereinstimmung mit der Codekonvertierungsvorrichtung der vorliegenden Erfindung der Sprachcode des Kodierungsverfahrens 1 zu dem Sprachcode des Kodierungsverfahrens 2 über den Prozess von Dequantisierung und Quantisierung konvertiert. Als ein Ergebnis ist es möglich, Sprachcodekonvertierung mit viel weniger Verschlechterung im Vergleich zu der konventionellen Tandemverbindung auszuführen. Ein zusätzlicher Vorteil besteht darin, dass da es unnötig ist, Dekodierung in Sprache zu bewirken, um Sprachcodekonvertierung durchzuführen, wenig von der Verzögerung gibt, die ein Problem bei der konventionellen Tandemverbindung ist.
  • (B) Erste Ausführungsform
  • 3 ist ein Blockdiagramm, das eine Sprachcodekonvertierungseinheit gemäß einer ersten Ausführungsform der vorliegenden Erfindung veranschaulicht. Komponenten, die zu jenen in 2 gezeigten identisch sind, sind durch gleiche Bezugszeichen bezeichnet. Diese Anordnung unterscheidet sich von der in 2 dadurch, dass ein Puffer 87 vorgesehen ist, und dass der Verstärkungsquantisierer des Verstärkungscodekonverters 85 durch einen adaptiven Codebuch-Verstärkungsquantisierer 85b1 und einen Rauschcodebuch-Verstärkungsquantisierer 85b2 gebildet wird. Ferner wird in der in 3 gezeigten ersten Ausführungsform angenommen, dass das Kodierungsverfahren nach G.729A als Kodierungsverfahren 1 verwendet wird und das AMR-Verfahren als das Kodierungsverfahren 2 verwendet wird. Obwohl es acht Kodierungsmodi in AMR-Kodierung gibt, wird in dieser Ausführungsform von einem Kodierungsmodus mit einer Übertragungsrate von 7,95 kbps Gebrauch gemacht.
  • Wie in 3 gezeigt, wird ein n-ter Rahmen von Kanaldaten bst1(n) zu Anschluss #1 von einem G.729A-Kodierer (nicht gezeigt) über den Übertragungspfad eingegeben. Hier ist die Bitrate von G.729A-Kodierung 8 kbps, und deshalb werden die Leitungsdaten bst1(n) durch eine Bitsequenz von 80 Bits dargestellt. Der Codetrenner 81 trennt LSP-Code I_LSP1(n), Tonhöhennachlaufcode I_LAG1(n, j), algebraischen Code I_CODE1(n, j) und Verstärkungscode I_GAIN(n, j) von den Leitungsdaten bst1(n) und gibt diese Codes zu Konvertern 82, 83, 84 bzw. 85 ein. Der Index j stellt die Zahl der 0-ten und 1-ten Teilrahmen dar, die jeden Rahmen bilden, und nimmt Werte von 0 und 1 an.
  • (a) LSP-Codekonverter
  • 4A und 4B sind Diagramme, die die Beziehung zwischen Rahmen und LSP-Quantisierung in den Kodierungsverfahren nach G.729A und AMR veranschaulichen. Wie in 4A gezeigt, ist eine Rahmenlänge gemäß dem Verfahren nach G.729A 10 ms und ein LSP-Parameter, der aus dem eingegebenen Sprachsignal des ersten Teilrahmens (1-ter Teilrahmen) gefunden wird, wird nur einmal jede 10 ms quantisiert. Im Gegensatz dazu ist die Rahmenlänge gemäß dem AMR-Verfahren 20 ms, und ein LSP-Parameter wird aus dem eingegebenen Signal des dritten Teilrahmens (3–ter Teilrahmen) nur einmal jede 20 ms quantisiert. Falls mit anderen Worten die gleichen 20 ms betrachtet werden, die Rahmenlänge in beiden Fällen zu sein, führt das Verfahren nach G.729A LSP-Quantisierung zweimal durch, wohingegen das AMR-Verfahren Quantisierung nur einmal durchführt. Dies bedeutet, dass die LSP-Codes von zwei aufeinanderfolgenden Rahmen in dem Verfahren nach G.729A zu dem LSP-Code des AMR-Verfahrens nicht konvertiert werden können wie sie sind.
  • Gemäß der ersten Ausführungsform gibt es deshalb eine Anordnung derart, dass nur die LSP-Codes von ungeraden Rahmen zu LSP-Codes des AMR-Verfahrens konvertiert werden; die LSP-Codes von geraden Rahmen werden nicht konvertiert. Es ist jedoch auch möglich, eine Anordnung anzunehmen, in der nur die LSP-Codes von geraden Rahmen zu LSP-Codes des AMR-Verfahrens konvertiert werden, und die LSP-Codes der ungeraden Rahmen nicht konvertiert werden. Wie nachstehend beschrieben wird, verwendet ferner der G.729A entsprechende LSP-Dequantisierer 82a Zwischenrahmenvorhersage und deshalb wird die Aktualisierung des Status Rahmen für Rahmen durchgeführt.
  • Wenn der LSP-Code I_LSP1(n+1) eines ungeraden Rahmens in den LSP-Dequantisierer 82a eintritt, dequantisiert der letztere den Code und die LSP-dequantisierte Werte lsp(i) (i = 1, ..., 10) aus. Hier führt der LSP-Dequantisierer 82a die gleiche Operation wie die eines Dequantisierers durch, der in einem Decoder des Kodierungsverfahrens nach G.729A verwendet wird.
  • Wenn ein LSP-dequantisierter Wert lsp(i) in den LSP-Quantisierer 82b eintritt, quantisiert der letztere den Wert in Übereinstimmung mit dem AMR-Verfahren und erhält den LSP-Code I_LSP2(m). Hier ist es nicht notwendigerweise erforderlich, dass der LSP-Quantisierer 82b genau der gleiche wie der Quantisierer ist, der in einem Kodierer des AMR-Kodierungsverfahrens verwendet wird, obwohl angenommen wird, dass mindestens die LSP-Quantisierungstabelle davon die gleiche wie die des AMR-Kodierungsverfahrens ist.
  • LSP-Dequantisierungsverfahren in LSP-Dequantisierern
  • Das G.729A entsprechende LSP-Dequantisierungsverfahren, das in dem LSP-Dequantisierer 82a verwendet wird, wird im Einklang mit G.729A beschrieben. Falls der LSP-Code I_SLP1(n) eines n-ten Rahmens zu dem LSP-Dequantisierer 82a eingegeben wird, unterteilt der letztere diesen Code in vier Codes L0, L1, L2 und L3. Der Code L1 stellt eine Elementzahl (Indexzahl) eines ersten LSP-Codebuchs CB1 dar, und die Codes L2, L3 stellen Elementzahlen jeweils von zweiten und dritten LSP-Codebüchern CB2, CB3 dar. Das erste LSP-Codebuch CB1 hat 128 Mengen von 10-dimensionalen Vektoren, und die zweiten und dritten LSP-Codebücher CB2 und CB3 haben beide 32 Mengen von 5-dimensionalen Vektoren. Der Code L0 zeigt an, welcher von zwei Typen von MA-Vorhersagekoeffizienten (die später beschrieben werden) zu verwenden sind.
  • Als Nächstes wird ein Restvektor li(n) des n-ten Rahmens durch die folgende Gleichung gefunden:
    Figure 00290001
  • Ein Restvektor l (n+1) / i des (n+1)-ten Rahmens kann auf eine ähnliche Weise gefunden werden. Ein LSF-Koeffizient ω(i) wird aus dem Restvektor l (n+1) / i des (n+1)-ten Rahmens und Restvektoren l (n+1-k) / i der vergangenen vier Rahmen in Übereinstimmung mit der folgenden Gleichung gefunden:
    Figure 00300001
    wobei p(i, k) darstellt, welcher Koeffizient der zwei Typen von MA-Vorhersagekoeffizienten durch den Code L0 spezifiziert wurde. Es sollte vermerkt werden, dass ein LSF-Koeffizient nicht aus einem Restvektor hinsichtlich des n-ten Rahmens gefunden wird. Der Grund dafür besteht darin, dass der n-te Rahmen nicht durch den LSP-Quantisierer quantisiert wird. Der Restvektor l (n+1) / i ist jedoch notwendig, um den Status zu aktualisieren.
  • Als Nächstes findet der LSP-Dequantisierer 82a einen LSP-dequantisierten Wert lsp(i) aus dem LSP-Koeffizienten ω(i) unter Verwendung der folgenden Gleichung: lsp(i) = cos[ω(i)] (i = 1, ..., 10) (10)
  • LSP-Quantisierungsverfahren in LSP-Quantisierern
  • Die Details des LSP-Quantisierungsverfahrens, das in dem LSP-Quantisierer 82b verwendet wird, werden nun beschrieben. In Übereinstimmung mit dem AMR-Kodierungsverfahren wird ein gewöhnliches LSP-Quantisierungsverfahren in sieben der acht Modi verwendet, wobei der 12,2-kbps-Modus ausgeschlossen ist. Es unterscheidet sich nur die Größe des LSP-Codebuchs. Das LSP-Quantisierungsverfahren in dem 7,95-kbps-Modus wird hier beschrieben.
  • Falls der LSP-dequantisierte Wert lsp(i) durch Gleichung (10) gefunden wurde, findet der LSP-Quantisierer 82b einen Restvektor r(i)(m) durch Subtrahieren eines Vorhersagevektors q(i)(m) aus dem LSP-dequantisierten Wert lsp(i) in Übereinstimmung mit der folgenden Gleichung: r(i)(m) = lsp(i) – q(i)(m) (11)wobei m die Zahl des vorliegenden Rahmens darstellt.
  • Der Vorhersagevektor q(i)(m) wird in Übereinstimmung mit der folgenden Gleichung unter Verwendung eines quantisierten Restvektors ȓ(1)(m-1) des unmittelbar vorangehenden Rahmens und eines MA-Vorhersagevektors a(i) gefunden: q(i)(m) = a(i)ȓ(i)(m-1) (12)
  • In Übereinstimmung mit dem AMR-Kodierungsverfahren wird der 10-dimensionale Vektor r(i)(m) in drei kleine Vektoren r1(i) (i = 1, 2, 3), r2(i) (i = 4, 5, 6) und r3(i) (i = 7, 8, 9, 10) unterteilt, und jeder dieser kleinen Vektoren wird unter Verwendung von neuen Bits Vektor-quantisiert.
  • Vektorquantisierung ist sogenannte Musteranpassungsverarbeitung. Aus vorbereiteten Codebüchern (Codebücher, für die die dimensionalen Längen die gleichen wie jene der kleinen Vektoren sind) CB1 bis CB3 wählt der LSP-Quantisierer 82b ein Codebuch, für das der gewichtete Euklidische Abstand zu jedem kleinen Vektor minimal ist. Das ausgewählte Codebuch dient als der optimale Codebuchvektor. I1, I2 und I3 sollen Zahlen (Indizes) darstellen, die die bestimmten Elementzahlen des optimalen Codebuchvektors in jedem der Codebücher CB1 bis CB3 anzeigen. Der LSP-Quantisierer 82b gibt einen LSP-Code I_LSP2(m) aus, der durch Kombinieren dieser Indizes I1, I2, I3 erhalten wird. Da die Größen aller Codebücher CB1 bis CB3 neun Bits (512 Mengen) sind, ist die Wortlänge von jedem der Indizes I1, I2, I3 auch neun Bits, und der LSP-Code I_LSP2(m) hat eine Wortlänge, die eine Summe von 27 Bits ist.
  • 5 ist ein Blockdiagramm, das den Aufbau des LSP-Quantisierers 82b veranschaulicht. Der letztere enthält eine Restvektor-Kalkulationseinheit 82b1 zum Ausgeben des folgenden 10-dimensionalen Restvektors in Übereinstimmung mit Gleichung (11): r(i) = r1(i) (i = 1, 2, 3), r2(i) (i = 4, 5, 6), r3(i), (i = 7, 8, 9, 10)
  • Optimale Codebuchvektor-Entscheidungseinheiten 82b2 bis 82b4 geben die Indexzahlen I1, I2, I3 eines optimalen Codebuchvektors aus, für den die gewichteten Euklidischen Abstände zu jedem der kleinen Vektoren r1(i) (i = 1, 2, 3), r2(i) (i = 4, 5, 6), r3(i) (i = 7, 8, 9, 10) minimal sind.
  • Ferner wurden 512 Mengen von 3-dimensionalen Niederfrequenz-LSP-Vektoren r(j, 1), r(j, 2), r(j, 3) (i = 1 ∼ 512) in dem Niederfrequenz-LSP-Codebuch CB1 der optimalen Codebuchvektor-Entscheidungseinheit 82b2 in Entsprechung mit Indizes 1 – 512 gespeichert. Eine Abstandskalkulationseinheit DSC kalkuliert einen Abstand in Übereinstimmung mit der folgenden Gleichung: d = Σi{r(j, i) – r1(i)}2 (i = 1 ∼ 3)
  • Wenn j von 1 bis 512 variiert wird, findet ein Minimalabstandsindexdetektor MDI das j, für das der Abstand d minimiert ist, und gibt j als einen LSP-Code I1 für die Region unterer Ordnung aus.
  • Obwohl die Details nicht gezeigt werden, verwenden die optimalen Codebuchvektor-Entscheidungseinheiten 82b3 und 82b4 das Mittelbereichsfrequenz-LSP-Codebuch CB2 und das Hochfrequenz-LSP-Codebuch CB3, um die Indizes I2 bzw. I3 auf eine Art und Weise ähnlich zu der der optimalen Codebuchvektor-Entscheidungseinheit 82b2 auszugeben.
  • (b) Tonhöhennachlaufcodekonverter
  • Es wird nun der Tonhöhennachlaufcodekonverter 83 beschrieben.
  • Wie oben erwähnt (siehe 29), ist eine Rahmenlänge 10 ms in dem Kodierungsverfahren nach G.729A und 20 ms in dem AMR-Kodierungsverfahren. Wenn der Tonhöhennachlaufcode konvertiert wird, ist es deshalb notwendig, dass ein Tonhöhennachlaufcode von zwei Rahmen in dem G.729A-Verfahren als ein Rahmen eines Tonhöhennachlaufcodes in dem AMR-Verfahren konvertiert wird.
  • Es wird ein Fall betrachtet, wo Tonhöhennachlaufcodes der n-ten und (n+1)-ten Rahmen in dem G.729A-Verfahren zu einem Tonhöhennachlaufcode des m-ten Rahmens in dem AMR-Verfahren konvertiert werden. Falls angenommen wird, dass die führende Zeitsteuerung des n-ten Rahmens in dem G.729A-Verfahren und die führende Zeitsteuerung des m-ten Rahmens in dem AMR-Verfahren gleich sind, dann wird die Beziehung zwischen den Rahmen und Teilrahmen der G.729A- und AMR-Verfahren sein, wie in (a) von 6 gezeigt. Ferner werden die Quantisierungsbitzahlen vom Tonhöhennachlauf in jedem Teilrahmen der G.729A- und AMR-Verfahren sein, wie in (b) von 6 gezeigt (siehe 31).
  • In geraden Teilrahmen sind deshalb die Verfahren zum Kodieren von Tonhöhennachläufen in den G.729A und AMR genau die gleichen, und die Zahlen von Quantisierungsbits sind die gleichen, d.h. acht. Dies bedeutet, dass ein G.729A entsprechender Tonhöhennachlaufcode zu einem AMR entsprechenden Tonhö hennachlaufcode hinsichtlich gerader Teilrahmen durch die folgenden Gleichungen konvertiert werden kann: I_LAG2(m, 0) = I_LAG1(n, 0) (13) I_LAG2(m, 2) = I_LAG1(n+1, 0) (14)
  • Andererseits wird in ungeraden Teilrahmen Quantisierung der Differenz zwischen ganzzahligem Nachlauf des vorliegenden Rahmens und ganzzahligem Nachlauf des vorangehenden Teilrahmens in den G.729A und AMR durchgeführt. Da die Zahl von Quantisierungsbits für das AMR-Verfahren eine größer ist, kann die Konvertierung durch die folgenden Gleichungen durchgeführt werden: I_LAG2(m, 1) = I_LAG1(n, 1) + 15 (15) I_LAG2(m, 3) = I_LAG1(n+1, 1) + 15 (16)
  • Gleichungen (13), (14) und Gleichungen (15), (16) werden detaillierter beschrieben.
  • Mit den Verfahren nach G.729A und AMR wird ein Tonhöhennachlauf unter der Annahme entschieden, dass die Tonhöhenperiode von Sprache zwischen 2,5 und 18 ms ist. Falls der Tonhöhennachlauf eine ganze Zahl ist, ist Kodierungsverarbeitung einfach. In dem Fall einer kurzen Tonhöhenperiode ist jedoch Frequenzauflösung unbefriedigend und die Sprachqualität nimmt ab. Aus diesem Grund wird ein Abtastungsinterpolationsfilter verwendet, um Tonhöhennachlauf in einem Drittel der Abtastungsgenauigkeit in den Verfahren nach G.729A und AMR zu entscheiden. Dies ist gerade so, als ob ein Sprachsignal, das in einer Periode abgetastet wird, die ein Drittel der tatsächlichen Abtastungsperiode ist, in dem adaptiven Codebuch gespeichert wurde.
  • Somit existieren zwei Typen von Tonhöhennachlauf, nämlich ganzzahliger Nachlauf, der die tatsächliche Abtastungsperiode anzeigt, und nicht-ganzzahliger Nachlauf, der ein Drittel der Abtastungsperiode anzeigt.
  • 7A und 7B veranschaulichen die Beziehung zwischen Tonhöhennachlauf und Indizes in dem G.729A-Verfahren, wobei 7A den Fall für gerade Teilrahmen und 7B den Fall für ungerade Teilrahmen zeigt. In dem Fall der ungeraden Teilrahmen werden Indizes in einem Drittel der Abtastungsgenauigkeit für Nachlaufwerte in dem Bereich 19+1/3 bis 85 und in einer Genauigkeit von einer Abtastung für Nachlaufwerte in dem Bereich von 85 bis 143 zugewiesen. Hier wird der ganzzahlige Anteil vom Nachlauf als "ganzzahliger Nachlauf" bezeichnet, und der nicht-ganzzahlige Anteil (fraktionaler Anteil) wird als "nicht-ganzzahliger Nachlauf" bezeichnet. In dem G.729A-Verfahren sind acht Bits dem Tonhöhennachlauf in den geraden Teilrahmen zugewiesen, und daher gibt es 256 Tonhöhennachlaufindizes. Z.B. ist der Index 4 in einem Fall, wo Tonhöhennachlauf 20+2/3 ist, und der Index bis 254 in einem Fall, wo er 142 ist.
  • Andererseits wird in dem Fall von ungeraden Teilrahmen gemäß dem G.729A-Verfahren die Differenz zwischen dem ganzzahligen Nachlauf Told des vorherigen Teilrahmens (gerade) und dem Tonhöhennachlauf (ganzzahliger Tonhöhennachlauf oder nicht-ganzzahliger Tonhöhennachlauf) des vorliegenden Teilrahmens unter Verwendung von fünf Bits (32 Muster) quantisiert. In dem Fall von ungeraden Teilrahmen wird angenommen, dass Told ein Bezugspunkt ist und dass der Index von Told 17 ist, wie in 7B gezeigt. Es wird angenommen, dass der Index vom Nachlauf, der 5+2/3 Abtastungen kleiner als Told ist, Null ist, und dass der Index vom Nachlauf, der 4+2/3 Abtastungen größer als Told ist, 31 ist. Mit anderen Worten wird der Bereich Told – (5 + 2/3) bis Told + (4 + 2/3) gleichmäßig in Ein-Drittel-Abtastungsintervalle unterteilt, und es werden Indizes von 32 Mustern (5 Bits) zugewiesen.
  • Es wird nun die Beziehung zwischen dem Tonhöhennachlauf und Indizes in dem AMR-Verfahren beschrieben. 8 ist ein Diagramm, das die Beziehung zwischen Tonhöhennachlauf und Indizes in dem AMR-Verfahren veranschaulicht, wobei 8A den Fall für gerade Teilrahmen und 8B den Fall für ungerade Teilrahmen zeigt. In dem Fall der geraden Teilrahmen des AMR-Verfahrens sind acht Bits den Tonhöhennachlaufindizes zugewiesen. Tonhöhennachlauf besteht aus ganzzahligem Nachlauf und nicht-ganzzahligem Nachlauf, und das Indexzahlenzuweisungsverfahren ist genau das gleiche wie das des G.729A-Verfahrens. In dem Fall von geraden Teilrahmen können entsprechend mit G.729A übereinstimmende Tonhöhennachlaufindizes zu mit AMR übereinstimmenden Tonhöhennachlaufindizes durch Gleichungen (13) und (14) konvertiert werden.
  • Andererseits wird in dem Fall von ungeraden Teilrahmen gemäß dem AMR-Verfahren die Differenz zwischen ganzzahligem Nachlauf Told des vorherigen Teilrahmens und Tonhöhennachlauf des vorliegenden Teilrahmens gerade wie in dem Fall des G.729A-Verfahrens quantisiert. Die Zahl von Quantisierungsbits ist jedoch eine größer als in dem Fall des G.729A-Verfahrens, und Quantisierung wird unter Verwendung von sechs Bits (64 Muster) durchgeführt. In dem Fall von ungeraden Teilrahmen wird angenommen, dass Told ein Bezugspunkt ist, und dass der Index von Told 32 ist, wie in 8B gezeigt. Es wird angenommen, dass der Index vom Nachlauf, der 10+2/3 Abtastungen kleiner als Told ist, Null ist, und dass der Index vom Nachlauf, der 9+2/3 Abtastungen größer als Told ist, 63 ist. Mit anderen Worten wird der Bereich Told – (10+2/3) bis Told + (9+2/3) gleichmäßig in Ein-Drittel-Abtastungsintervalle unterteilt, und es werden Indizes von 64 Mustern (6 Bits) zugewiesen.
  • 9 ist ein Diagramm von entsprechenden Beziehungen in einem Fall, wo mit G.729A übereinstimmende Indizes in ungeraden Teilrahmen zu mit AMR übereinstimmenden Indizes konvertiert werden. Wie aus 9 verstanden wird, sind die Indizes um insgesamt 15 von dem G.729A-Verfahren zu dem AMR-Verfahren verschoben, obwohl die Nachlaufwerte die gleichen sind. Bezüglich einem Nachlauf-(5+2/3) ist z.B. der 0-te Index in dem G.729A-Verfahren zugewiesen, aber der 15-te Index ist in dem AMR-Verfahren zugewiesen. Um mit G.729A übereinstimmende Indizes in ungeraden Teilrahmen zu mit AMR übereinstimmenden Indizes zu konvertieren, ist es entsprechend notwendig, die Indexwerte durch Addieren in 15 zu korrigieren, wie durch Gleichungen (15), (16) angezeigt.
  • (c) Konvertierung von algebraischem Code
  • Es wird als Nächstes Konvertierung von algebraischem Code beschrieben.
  • Obwohl sich die Rahmenlänge in dem G.729A-Verfahren von der in dem AMR-Verfahren unterscheidet, ist die Teilrahmenlänge für beide die gleiche, nämlich 5 ms (40 Abtastungen). Mit anderen Worten ist die Beziehung zwischen Rahmen und Teilrahmen in den G.729A- und AMR-Verfahren, wie in (a) von 6 veranschaulicht. Ferner sind die Zahlen von Quantisierungsbits vom algebraischen Code in jedem Teilrahmen der G.729A- und AMR-Verfahren, wie in (c) von 6 veranschaulicht (siehe 31). Des weiteren haben die algebraischen Codebücher von beiden Verfahren den Aufbau, der in 25 dargestellt wird; die Strukturen sind genau die gleichen.
  • Entsprechend können die vier Impulspositionen und die Impulspolaritätsinformation, die die Ergebnisse sind, die von der algebraischen Codebuchsuche in dem G.729A-Verfahren ausgegeben werden, durch die Ergebnisse, die von der algebraischen Codebuchsuche in dem AMR-Verfahren ausgegeben werden, auf einer Basis von eins zu eins ersetzt werden wie sie sind. Die Konvertierungen vom algebraischen Code sind, wie durch das Folgende angezeigt: I_CODE2(m, 0) = I_CODE1(n, 0) (17) I_CODE2(m, 1) = I_CODE1(n, 1) (18) I_CODE2(m, 2) = I_CODE1(n+1, 0) (19) I_CODE2(m, 3) = I_CODE1(n+1, 1) (20)
  • (d) Konvertierung vom Verstärkungscode
  • Als Nächstes wird die Konvertierung vom Verstärkungscode beschrieben.
  • Zuerst wird ein Verstärkungscode I_GAIN(n, 0) zu dem Verstärkungsdequantisierer 85a eingegeben (3). In Übereinstimmung mit dem G.729A-Verfahren wird Vektorquantisierung verwendet, um die Verstärkung zu quantisieren. Entsprechend werden ein Verstärkungsdequantisierungswert des adaptiven Codebuchs Ga und ein dequantisierter Wert γc eines Korrekturkoeffizienten für algebraische Codebuchverstärkung als der Verstärkungsdequantisierungswert gesucht. Die algebraische Codebuchverstärkung wird in Übereinstimmung mit der folgenden Gleichung unter Verwendung eines Vorhersagewertes gc', der aus der logarithmischen Energie der algebraischen Codebuchverstärkung der vergangenen vier Teilrahmen vorhergesagt wird, und γc gefunden: Gc = gc' γc (21)
  • In dem AMR-Verfahren werden die adaptive Codebuchverstärkung Ga und die algebraische Codebuchverstärkung Gc getrennt quantisiert, und deshalb wird Quantisierung getrennt durch den adaptiven Codebuchverstärkungsquantisierer 85b1 und den alge braischen Codebuchverstärkungsquantisierer 85b2 des AMR-Verfahrens in dem Verstärkungscodekonverter 85 durchgeführt. Es ist nicht notwendig, den adaptiven Codebuchverstärkungsquantisierer 85b1 und den algebraischen Codebuchverstärkungsquantisierer 85b2 mit jenen, die durch das AMR-Verfahren verwendet werden, zu identifizieren. Mindestens sind aber eine adaptive Codebuchverstärkungstabelle und eine algebraische Codebuchtabelle der Quantisierer 85b1 , 85b2 die gleichen wie jene, die durch das AMR-Verfahren verwendet werden.
  • 10 ist ein Diagramm, das die Konstruktionen des adaptiven Codebuchverstärkungsquantisierers 85b1 und des algebraischen Codebuchverstärkungsquantisierers 85b2 zeigt.
  • Zuerst wird der adaptive Codebuchverstärkungsdequantisierungswert Ga zu dem adaptiven Codebuchverstärkungsquantisierer 85b1 eingegeben, und wird skalarer Quantisierung unterzogen. Werte Ga(i) (i = 1 – 16) von 16 Typen (vier Bits), die die gleichen wie jene des AMR-Verfahrens sind, wurden in einer skalaren Quantisierungstabelle SQTa gespeichert. Eine Quadratfehler-Kalkulationseinheit ERCa kalkuliert das Quadrat des Fehlers zwischen dem adaptiven Codebuchverstärkungsdequantisierungswert Ga und jedem Tabellenwert, d.h. [Ga-Ga(i)]2, und ein Indexdetektor IXDa erhält, als den optimalen Wert, den Tabellenwert, der den Fehler minimiert, der vorherrscht, wenn i von 1 bis 16 variiert, und gibt diesen Index als adaptiven Codebuchverstärkungscode I_GAIN2a(m, 0) in dem AMR-Verfahren aus.
  • Als Nächstes wird Gc, das in Übereinstimmung mit Gleichung (21) aus dem Rauschcodebuch-Verstärkungsdequantisierungswert γc und gc' erhalten wird, zu dem algebraischen Codebuchverstärkungsquantisierer 85b2 eingegeben, um skalarer Quantisierung unterzogen zu werden. Werte Gc(i) (i = 1 – 32) von 32 Typen (fünf Bits), die die gleichen wie jene des AMR-Verfah rens sind, wurden in einer skalaren Quantisierungstabelle SQTc gespeichert. Eine Quadratfehler-Kalkulationseinheit ERCc kalkuliert das Quadrat des Fehlers zwischen dem Rauschcodebuch-Verstärkungsdequantisierungswert Gc und jedem Tabellenwert, d.h. [Gc-Gc(i)]2, und ein Indexdetektor IXDc erhält, als den optimalen Wert, den Tabellenwert, der den Fehler minimiert, der vorherrscht, wenn i von 1 bis 32 variiert, und gibt diesen Index als Rauschcodebuch-Verstärkungscode I_GAIN2c(m, 0) in dem AMR-Verfahren aus.
  • Eine ähnliche Verarbeitung wird ausgeführt, um einen mit AMR übereinstimmenden adaptiven Codebuchverstärkungscode I_GAIN2a(m, 1) und Rauschcodebuch-Verstärkungscode I_GAIN2c(m, 1) aus dem mit G.729A übereinstimmenden Verstärkungscode I_GAIN1(n, 1) zu finden.
  • Ähnlich werden mit AMR übereinstimmender adaptiver Codebuchverstärkungscode I_GAIN2a(m, 2) und Rauschcodebuch-Verstärkungscode I_GAIN2c(m, 2) aus dem mit G.729A übereinstimmenden Verstärkungscode I_GAIN1(n+1, 0) gefunden, und der mit AMR übereinstimmende adaptive Codebuchverstärkungscode I_GAIN2a(m, 3) und der Rauschcodebuch-Verstärkungscode I_GRIN2c(m, 3) werden aus dem mit G.729A übereinstimmenden Verstärkungscode I_GAIN1(n+1, 1) gefunden.
  • (e) Codeübertragungsverarbeitung
  • Der Puffer 87 von 3 enthält die Codes, die von den Konvertern 82 bis 85 ausgegeben werden, bis die Verarbeitung von zwei Rahmen vom G.729A-Code (ein Rahmen in dem AMR-Verfahren) abgeschlossen ist. Der konvertierte Code wird dann zu dem Codemultiplexer 86 eingegeben. Wenn alles eines Rahmens in dem AMR-Verfahren erlangt wurden, multiplext der Codemultiplexer 86 die Codedaten, konvertiert die Daten zu Leitungsdaten und sendet die Leitungsdaten zu dem Übertragungspfad von dem Ausgangsanschluss #2.
  • In Übereinstimmung mit der ersten Ausführungsform kann somit wie oben beschrieben mit G.729A übereinstimmender Sprachcode zu mit AMR übereinstimmenden Sprachcode konvertiert werden, ohne in Sprache dekodiert zu werden. Als ein Ergebnis kann Verzögerung gegenüber der reduziert werden, auf die bei konventioneller Tandemverbindung stoßen wird, und eine Abnahme in der Klangqualität kann ebenso reduziert werden.
  • (C) Zweite Ausführungsform
  • 11 ist ein Diagramm, das bei einer Beschreibung eines Überblicks einer zweiten Ausführungsform der vorliegenden Erfindung von Nutzen ist. Die zweite Ausführungsform verbessert den LSB-Quantisierer 82b in dem LSP-Codekonverter 82 der ersten Ausführungsform; die gesamte Anordnung der Sprachcodekonvertierungseinheit ist die gleiche wie die der ersten Ausführungsform (3).
  • 11 veranschaulicht einen Fall, wo ein LSP-Code von n-ten und (n+1)-ten Rahmen des G.729A-Verfahrens zu LSP-Code des m-ten Rahmen des AMR-Verfahrens konvertiert wird. In 11 stellen LSP0(i) (i = 1, ..., 10) 10-dimensionale LSP-dequantisierte Werte in einem ersten Teilrahmen (1-ter Teilrahmen) eines n-ten Rahmens gemäß dem G.729A-Verfahren dar, und LSP1(i) (i = 1, ..., 10) stellen 10-dimensionale LSP-dequantisierte Werte in einem ersten Teilrahmen (1-ter Teilrahmen) eines (n+1)-ten Rahmens gemäß dem G.729A-Verfahren dar. Ferner stellen old LSP(i) (i = 1, ..., 10) 10-dimensionale LSP-dequantisierte Werte in einem 1-ten Teilrahmen eines vergangenen Rahmens [(n-1)-ter Rahmen] dar.
  • In einem Fall, wo Sprachcode von dem G.729A- zu dem AMR-Verfahren konvertiert wird, wird ein dequantisierter Wert LSP0(i) in dem G.729A-Verfahren wegen der Differenz in der Rahmenlänge nicht zu einem LSP-Code in dem AMR-Verfahren konvertiert, wie in der ersten Ausführungsform ausgeführt wird. Mit anderen Worten wird ein LSP einmal pro Rahmen in dem G.729A-Verfahren quantisiert, und deshalb werden LSP0(i), LSP1(i) zusammen quantisiert und zu der Decoderseite gesendet. Um Sprachcode von dem G.729A zu dem AMR-Verfahren zu konvertieren, ist es jedoch notwendig, LSP-Parameter in Übereinstimmung mit der Operation des mit AMR übereinstimmenden Dekoders zu kodieren und zu konvertieren. Als eine Folge wird der dequantisierte Wert LSP1(i) in dem G.729A-Verfahren zu einem mit AMR übereinstimmenden Code konvertiert, aber der dequantisierte Wert LSP0(i) wird nicht zu mit AMR übereinstimmenden Code konvertiert.
  • Gemäß dem AMR-Verfahren besteht ein Rahmen aus vier Teilrahmen, und es werden nur die LSP-Parameter des letzten Teilrahmens (3-ter Teilrahmen) quantisiert und übertragen. In dem Dekoder werden deshalb LSP-Parameter LSPc0(i), LSPc1(i) und LSPc2(i) der 0-ten, 1-ten und 2-ten Teilrahmen aus dem dequantisierten Wert old_LSPc(i) des vorherigen Rahmens und dem LSP-Parameter LSPc3(i) des 3-ten Teilrahmens in dem vorliegenden Rahmen in Übereinstimmung mit den folgenden Interpolationsgleichungen gefunden: LSPc0(i) = 0,75 old LSPc(i) + 0,25 LSPc3(i) (i = 1, 2, ..., 10) (22) LSPc1(i) = 0,50 old LSPc(i) + 0,50 LSPc3(i) (i = 1, 2, ..., 10) (23) LSPc2(i) = 0,25 old LSPc(i) + 0,75 LSPc3(i) (i = 1, 2, ..., 10) (24)
  • Falls sich die Qualität eingegebener Sprache nicht abrupt ändert, was der Fall mit stimmhaften Klängen ist, ändern sich auch die LSP-Parameter nicht abrupt. Dies bedeutet, dass kein besonderes Problem entsteht, falls ein LSP-dequantisierter Wert zu Code so konvertiert wird, um den LSP-Quantisierungsfehler in dem letzten Teilrahmen (3-ter Teilrahmen) zu minimieren, wie in der ersten Ausführungsform, und die LSP-Parameter der anderen 0-ten bis 3-ten Teilrahmen werden durch die Interpolationsoperationen von Gleichungen (22) bis (24) gefunden. Falls sich jedoch die Sprachqualität plötzlich ändert, wie in dem Fall von nicht-stimmhaften oder transienten Segmenten, und genauer falls sich die Qualität von Sprache innerhalb des Rahmens plötzlich ändert, gibt es Fälle, wo das Konvertierungsverfahren der ersten Ausführungsform unbefriedigend ist. Entsprechend wird in der zweiten Ausführungsform Codekonvertierung ausgeführt, die nicht nur den LSP-Quantisierungsfehler in dem letzten Teilrahmen berücksichtigt, sondern auch einen Interpolatorfehler, der von LSP-Interpolation stammt.
  • Wenn ein dequantisierter Wert LSP1(i) zu einem mit AMR übereinstimmenden LSP-Code gemäß der ersten Ausführungsform konvertiert wird, wird die Konvertierung unter Verwendung eines Bezugs nur auf das Quadrat des Fehlers zwischen dem LSP-Parameter LSPc3(i), der durch den oben erwähnten LSP-Code spezifiziert ist, und dem dequantisierten Wert LSP1(i) durchgeführt. Im Gegensatz dazu wird in der zweiten Ausführungsform Kodierung durchgeführt, die nicht nur das oben erwähnten Quadrat des Fehlers berücksichtigt, sondern auch das Quadrat des Fehlers zwischen dem dequantisierten Wert LSP0(i) und dem LSP-Parameter LSPc1(i), der durch die Interpolationsoperation von Gleichung (23) erhalten wird.
  • 12 ist ein Diagramm, das den Aufbau des LSP-Quantisierers 82b gemäß der zweiten Ausführungsform veranschaulicht, und 13 ist ein Flussdiagramm von Konvertierungsverarbeitung gemäß der zweiten Ausführungsform. Jeder LSP-Vektor (LSP-Parameter) der zehn Dimensionen wird bei seiner Teilung in drei kleine Vektoren einer Niederfrequenzregion (erste bis dritte Dimensionen), einer Mittelbereichsfrequenzregion (vierte bis sechste Dimensionen) und einer Hochfrequenzregion (siebte bis zehnte Dimensionen) betrachtet.
  • Verarbeitung zum Entscheiden von dreidimensionalen LSP-Codes der Niederfrequenz
  • Zuerst wird die nachstehend dargelegte Verarbeitung mit Bezug auf den kleinen Vektor der Niederfrequenzregion (drei Dimensionen der Niederfrequenzregion) unter den Werten LSP1(i) (i = 1, ..., 10) ausgeführt. Die LSP-Codebücher, die hier verwendet werden, sind von drei Typen, nämlich dem Niederfrequenz-Codebuch CB1 (3 Dimensionen × 512 Mengen), dem Mittelbereichsfrequenz-Codebuch CB2 (3 Dimensionen × 512 Mengen) und dem Hochfrequenz-Codebuch CB3 (4 Dimensionen × 512 Mengen).
  • Eine Restvektor-Kalkulationseinheit DBC kalkuliert einen Restvektor r1(i) (i = 1 – 3) durch Subtrahieren eines Vorhersagevektors von dem Niederfrequenz-LSP-dequantisierten Wert LSP1(i) (i = 1 – 3) (Schritt 101).
  • Als Nächstes führt eine Verarbeitungseinheit (CPU) die Operation I1 = 1 (Schritt 102) durch, extrahiert einen I1-ten Codevektor CB1(I1, i) (i = 1 – 3) aus dem Niederfrequenz-Codebuch CB1 (Schritt 103), findet einen Konvertierungsfehler E1(I1) zwischen diesem Codevektor und dem Restvektor r1(i) (i = 1 – 3) in Übereinstimmung mit der folgenden Gleichung: E1(I1) = Σi{r1(i) – CB1(Ii, i)}2 (i = 1 ∼ 3) und speichert diesen Fehler in einem Speicher MEM (Schritt 104).
  • Als Nächstes interpoliert die CPU unter Verwendung von Gleichung (23) LSPc1(i) (i = 1 – 3) aus dem LSP-dequantisierten Wert LSPc3(i) (i = 1 – 3), der vorherrschte, als der Codevektor CB1(I1, i) ausgewählt wurde, und dem vorangehenden dequantisierten Wert old LSPc(i) (i = 1 – 3) (Schritt 105), kalkuliert den Konvertierungsfehler E2(I1) zwischen LSP0(i) und LSPc1(i) in Übereinstimmung mit der folgenden Gleichung: E2(I1) = Σi{LSP0(i) – LSPc1(i)}2 (i = 1 ∼ 3)und speichert diesen Fehler in dem Speicher MEM (Schritt 106).
  • Unter Verwendung der folgenden Gleichung kalkuliert die CPU als Nächstes einen Fehler E(I1), der vorherrschte, als der I1-te Codevektor ausgewählt wurde, und speichert diesen Fehler im Speicher (Schritt 107): E(I1) = E1(I1) + E2(I1)
  • Die CPU vergleicht dann den Fehler E(I1) mit einem minimalen Fehler minE(I1) bisher (Schritt 108), und aktualisiert den Fehler E(I1) zu minE(I1), falls E(I1) < minE(I1) zutrifft (Schritt 109).
  • Folgend der Aktualisierungsverarbeitung prüft die CPU zu sehen, ob I1 = 512 zutrifft (Schritt 110) falls I1 < 512 zutrifft, inkrementiert die CPU I1(I1+1 → I1; Schritt 111). Die CPU wiederholt dann die Verarbeitung von Schritt 103 an. Falls I1 = 512 zutrifft, entscheidet die CPU jedoch, als den dreidimensionalen LSP-Code der Niederfrequenz, den Index I1, für den der Fehler E(I1) minimiert ist (Schritt 112).
  • Verarbeitung zum Entscheiden von dreidimensionalen LSP-Codes der Mittelbereichsfrequenz
  • Falls die Verarbeitung zum Entscheiden des dreidimensionalen LSP-Codes der Niederfrequenz I1 abgeschlossen ist, führt die CPU die nachstehend dargelegte Verarbeitung mit Bezug auf den kleinen Vektor (dreidimensional) der Mittelbereichsfrequenzregion aus.
  • Die Restvektor-Kalkulationseinheit DBC kalkuliert einen Restvektor r2(i) (i = 4 – 6) durch Subtrahieren eines Vorhersagevektors von dem Mittelbereichsfrequenz-LSP-dequantisierten Wert LSP1(i) (i = 4 – 6).
  • Als Nächstes führt die Verarbeitungseinheit (CPU) die Operation I2 = 1 durch, extrahiert einen I2-ten Codevektor CB2(I2, i) (i = 4 – 6) aus dem Mittelbereichsfrequenz-Codebuch CB2, findet einen Konvertierungsfehler E1(I2) zwischen diesem Codevektor und dem Restvektor r2(i) (i = 4 – 6) in Übereinstimmung mit der folgenden Gleichung: E1(I2) = Σi{r2(i) – CB2(I2, i)}2 (i = 4 ∼ 6)und speichert diesen Fehler in dem Speicher MEM.
  • Als Nächstes interpoliert die CPU unter Verwendung von Gleichung (23) LSPc1(i) (i = 4 – 6) aus dem LSP-dequantisierten Wert LSPc3(i) (i = 4 – 6), der vorherrschte, als der Codevektor CB2(I2, i) ausgewählt wurde, und dem vorangehenden dequantisierten Wert old_LSPc(i) (i = 4 – 6), kalkuliert den Konvertierungsfehler E2(I2) zwischen LSP0(i) und LSPc1(i) in Übereinstimmung mit der folgenden Gleichung: E2(I2) = Σi{LSP0(i) – LSPc1(i)}2 (i = 4 ∼ 6) und speichert diesen Fehler in dem Speicher MEM.
  • Unter Verwendung der folgenden Gleichung kalkuliert die CPU als Nächstes einen Fehler E(I2), der vorherrschte, als der I2-te Codevektor ausgewählt wurde, und speichert diesen Fehler im Speicher: E(I2) = E1(I2) + E2(I2)
  • Die CPU vergleicht dann den Fehler E(I2) mit einem minimalen Fehler minE(I2) bisher und aktualisiert den Fehler E(I2) auf minE(I2), falls E(I2) < minE(I2) zutrifft.
  • Folgend der Aktualisierungsverarbeitung prüft die CPU um zu sehen, ob I2 = 512 zutrifft. Falls I2 < 512 zutrifft, inkrementiert die CPU I2(I2 + 1 → I2). Die CPU wiederholt dann die oben beschriebene Verarbeitung. Falls I2 = 512 zutrifft, entscheidet die CPU jedoch, als den dreidimensionalen LSP-Code der Mittelbereichsfrequenz, den Index I2, für den der Fehler E(I2) minimiert ist.
  • Verarbeitung zum Entscheiden von vierdimensionalen LSP-Codes der Hochfrequenz
  • Falls die Verarbeitung zum Entscheiden des dreidimensionalen LSP-Codes der Mittelbereichsfrequenz I2 abgeschlossen ist, führt die CPU die nachstehend dargelegte Verarbeitung mit Bezug auf den kleinen Vektor (vierdimensional) der Hochfrequenzregion aus.
  • Die Restvektor-Kalkulationseinheit DBC kalkuliert einen Restvektor r3(i) (i = 7 – 10) durch Subtrahieren eines Vorhersagevektors von dem Hochfrequenz-LSP-dequantisierten Wert LSP1(i) (i = 7 – 10).
  • Als Nächstes führt die Verarbeitungseinheit (CPU) die Operation I3 = 1 durch, extrahiert einen I3-ten Codevektor CB3(I3, i) (i = 7 – 10) aus dem Hochfrequenz-Codebuch CB3, findet einen Konvertierungsfehler E1(I3) zwischen diesem Codevektor und dem Restvektor r3(i) (i = 7 – 10) in Übereinstimmung mit der folgenden Gleichung: E1(I3) = Σi{r3(i) – CB3(I3, i)}2 (i = 7 ∼ 10)und speichert diesen Fehler in dem Speicher MEM.
  • Als Nächstes interpoliert die CPU unter Verwendung von Gleichung (23) LSPc1(i) (i = 7 – 10) aus dem LSP-dequantisierten Wert LSPc3(i) (i = 7 – 10), der vorherrschte, als der Codevektor CB3(I3, i) ausgewählt wurde, und dem vorangehenden dequantisierten Wert old LSPc(i) (i = 7 – 10), kalkuliert den Konvertierungsfehler E2(I3) zwischen LSP0(i) und LSPc1(i) in Übereinstimmung mit der folgenden Gleichung: E2(I3) = Σi{LSP0(i) – LSPc1(i)}2 (i = 7 ∼ 10)und speichert diesen Fehler in dem Speicher MEM.
  • Als Nächstes kalkuliert die CPU unter Verwendung der folgenden Gleichung einen Fehler E(I3), der vorherrschte, als der I3-te Codevektor ausgewählt wurde, und speichert diesen Fehler im Speicher: E(I3) = E1(I3) + E2(I3)
  • Die CPU vergleicht dann den Fehler E(I3) mit einem minimalen Fehler minE(I3) bisher und aktualisiert den Fehler E(I3) auf minE(I3), falls E(I3) < minE(I3) zutrifft.
  • Folgend der Aktualisierungsverarbeitung prüft die CPU um zu sehen, ob I3 = 512 zutrifft. Falls I3 < 512 zutrifft, inkrementiert die CPU I3(I2 + 1 ∼ I2). Die CPU wiederholt dann die oben beschriebene Verarbeitung. Falls jedoch I3 = 512 zutrifft, entscheidet die CPU, als den vierdimensionalen LSP-Code der Hochfrequenz, den Index I3, für den der Fehler E(I3) minimiert ist.
  • Somit wird in der zweiten Ausführungsform der Konvertierungsfehler von LSPc1(i) als Interpolatorfehler berücksichtigt. Es ist jedoch auch möglich, den LSP-Code durch Berücksichtigung des Konvertierungsfehlers LSPc0(i) und LSPc2(i) auf eine ähnliche Weise zu entscheiden.
  • Ferner nimmt in der zweiten Ausführungsform die Beschreibung an, dass die Gewichtungen von E1 und E2 als der Fehlerevaluierungsbezug gleich sind. Der LSP-Code kann jedoch auch auf eine Anordnung hin so entschieden werden, dass E1 und E2 getrennt als E = ω1E1 + ω2E2 gewichtet sind.
  • In Übereinstimmung mit der zweiten Ausführungsform, wie oben beschrieben, kann somit ein G.729A entsprechender Sprachcode zu einem AMR entsprechenden Code konvertiert werden, ohne zu Sprache dekodiert zu werden. Als ein Ergebnis kann Verzögerung gegenüber der reduziert werden, auf die mit der konventionellen Tandemverbindung getroffen wird, und eine Abnahme der Klangqualität kann ebenso reduziert werden. Außerdem wird nicht nur der Konvertierungsfehler, der vorherrscht, wenn LSP1(i) neu quantisiert wird, sondern auch der Interpolationsfehler wegen dem LSP-Interpolator berücksichtigt. Dies macht es möglich, eine ausgezeichnete Sprachcodekonvertierung mit wenig Konvertierungsfehler sogar in einem Fall durchzuführen, wo die Qualität eingegebener Sprache innerhalb des Rahmens variiert.
  • (D) Dritte Ausführungsform
  • Die dritte Ausführungsform verbessert den LSP-Quantisierer 82b in dem LSP-Codekonverter 82 der zweiten Ausführungsform. Die gesamte Anordnung ist die gleiche wie die der ersten Ausführungsform, die in 3 gezeigt wird.
  • Die dritte Ausführungsform ist dadurch gekennzeichnet, dass eine vorherige Auswahl (Auswahl einer Vielzahl von Kandidaten) für jeden der kleinen Vektoren der Niederfrequenz-, Mittelbereichsfrequenz und Hochfrequenz-Regionen durchgeführt wird, und schließlich eine Kombination {I1, I2, I3} von LSP-Codevektoren entschieden wird, für die die Fehler in allen Bändern minimal sein werden. Der Grund für diesen Ansatz besteht darin, dass es Fälle gibt, wo der 10-dimensionale LSP-synthetisierte Codevektor, der aus Codevektoren synthetisiert wird, für die der Fehler in jedem Band minimal ist, nicht der optimale Vektor ist. Da ein LPC-Synthesefilter aus LPC-Koeffizienten besteht, die durch Konvertierung aus 10-dimensionalen LSP-Parametern in dem Verfahren nach AMR oder G.729A erhalten werden, übt insbesondere der Konvertierungsfehler in der LSP-Parameterregion einen großen Einfluss auf die reproduzierte Sprache aus. Entsprechend ist es wünschenswert, nicht nur eine Codebuchsuche durchzuführen, für die der Fehler für jeden kleinen Vektor des LSP minimiert ist, sondern auch schließlich einen LSP-Code zu entscheiden, der den Fehler (Verzerrung) von 10-dimensionalen LSP-Parametern minimieren wird, die durch Kombinieren kleiner Vektoren erhalten werden.
  • 14 und 15 sind Flussdiagramme einer Konvertierungsverarbeitung, die durch den LSP-Quantisierer 82b gemäß der dritten Ausführungsform ausgeführt wird. Hier hat der LSP-Quantisierer 82b die gleichen Blockkomponenten wie jene, die in 12 gezeigt werden; es unterscheidet sich nur die Verarbeitung, die durch die CPU ausgeführt wird.
  • Der 10-dimensionale dequantisierte Wert, der von dem LSP-Dequantisierer 82a ausgegeben wird, ist in drei Bereiche unterteilt, nämlich einen 3-dimensionalen kleinen Vektor der Niederfrequenz LSP1(i) (i = 1 – 3), einen 3-dimensionalen kleinen Vektor LSP1(i) (i = 4 – 6) der Mittelbereichsfrequenz und einen vierdimensionalen kleinen Vektor der Hochfrequenz LSP1(i) (i = 7 – 10) (Schritt 201).
  • Als Nächstes kalkuliert die Restvektor-Kalkulationseinheit DBC einen Restvektor r1(i) (i = 1 – 3) durch Subtrahieren eines Vorhersagevektors von dem LSP-dequantisierten Wert der Niederfrequenz LSP1(i) (i = 1 – 3) (Schritt 202). Die Verarbeitungseinheit (CPU) führt dann die Operation I1 = 1 (Schritt 203) durch, extrahiert einen I1-ten Codevektor CB1(I1, i) (i = 1 – 3) aus dem Niederfrequenz-Codebuch CB1 (Schritt 204), findet einen Konvertierungsfehler E1(I1) zwischen diesem Codevektor und dem Restvektor r1(i) (i = 1 – 3) in Übereinstimmung mit der folgenden Gleichung: E1(I1) = Σi{r1(i) – CB1(I1, i)}2 (i = 1 ∼ 3)und speichert diesen Fehler in dem Speicher MEM (Schritt 205).
  • Unter Verwendung von Gleichung (23) kalkuliert die CPU als Nächstes LSPc1(i) (i = 1 – 3) aus dem LSP-dequantisierten Wert LSPc3(i) (i = 1 – 3), der vorherrschte, als der Codevektor CB1(I1, i) ausgewählt wurde, und dem vorangehenden dequantisierten Wert old_LSPc(i) (i = 1 – 3) (Schritt 206), kalkuliert den Konvertierungsfehler E2(I1) zwischen LSP0(i) und LSPc1(i) in Übereinstimmung mit der folgenden Gleichung: E2(I1) = Σi{LSP0(i) – LSPc1(i)}2 (i = 1 ∼ 3)und speichert diesen Fehler in dem Speicher MEM (Schritt 207).
  • Unter Verwendung der folgenden Gleichung kalkuliert die CPU als Nächstes einen Fehler EL(I1), der vorherrschte, als der I1-te Codevektor ausgewählt wurde, und speichert diesen Fehler in Speicher (Schritt 208): EL(I1) = E1(I1) + E2(I1)
  • Der Prozessor prüft daraufhin um zu sehen, ob I1 = 512 zutrifft (Schritt 209). Falls I1 = 512 zutrifft, implementiert die CPU I1(I1 + 1 → I1; Schritt 210). Die CPU wiederholt dann die Verarbeitung von Schritt 204 an. Falls jedoch I1 = 512 zutrifft, dann wählt die CPU die NL-Zahl von Codevektorkandidaten, beginnend von den kleineren von EL(I1) (I1 = 1 – 512) und nimmt PSELI1(j) (j = 1, ..., NL) als den Index von jedem der Kandidaten an (Schritt 211).
  • Falls die Verarbeitung zum Entscheiden des dreidimensionalen kleinen Vektors der Niederfrequenz abgeschlossen ist, führt die CPU eine ähnliche Verarbeitung mit Bezug auf den dreidimensionalen kleinen Vektor der Mittelbereichsfrequenz aus. Speziell kalkuliert die CPU 512 Mengen von Fehlern EM(I2) (Schritt 212) durch eine Verarbeitung ähnlich zu der von Schritten 202 bis 210. Als Nächstes wählt die CPU die NM-Zahl von Codevektorkandidaten aus den kleineren von EM(I2) (I2 = 1 – 512) und nimmt PSELI2(k) (k = 1, ..., NM) als den Index von jedem Kandidaten an (Schritt 213).
  • Falls die Verarbeitung zum Entscheiden des dreidimensionalen kleinen Vektors der Mittelbereichsfrequenz abgeschlossen ist, führt die CPU eine ähnliche Verarbeitung mit Bezug auf den vierdimensionalen kleinen Vektor der Hochfrequenz aus. Speziell kalkuliert die CPU 512 Mengen von Fehlern EH(I3) (Schritt 214), wählt die NH-Zahl von Codevektorkandidaten aus den kleineren von EH(I3) (I3 = 1 – 512) und nimmt PSELI3(m) (m = 1, ..., NH) als den Index von jedem Kandidaten an (Schritt 215).
  • Es wird eine Kombination, für die die Fehler in allen Bändern minimal sein wird, durch die folgende Verarbeitung von den Kandidaten entschieden, die durch die oben dargelegte Verarbeitung ausgewählt wurden: speziell findet die CPU den kombinierten Fehler E(j, k, m) = EL[PSELI1(j)] + EM[PSELI2(k)] + EH[PSELI3(m)]der vorherrscht, wenn PSELI1(j), PSELI2(k), PSELI3(m) aus den Indexkandidaten der NL-Zahl der Niederfrequenz, der NM-Zahl der Mittelbereichsfrequenz und der NH-Zahl der Hochfrequenz ausgewählt wird, die durch die oben beschriebene Verarbeitung ausgewählt wurden (Schritt 216), entscheidet die Kombination aus allen Kombinationen von j, k, m, für die der kombinierte Fehler E(j, k, m) minimal sein wird, und gibt die folgenden Indizes, die zu dieser Zeit vorherrschen, als die LSP-Codes des AMR-Verfahrens aus (Schritt 217): PSELI1(j), PSELI2(k), PSELI3(m).
  • Gemäß der dritten Ausführungsform wird der Konvertierungsfehler von LSPc1(i) als Interpolatorfehler berücksichtigt. Es ist jedoch auch möglich, den LSP-Code durch Berücksichtigung des Konvertierungsfehlers von LSPc0(i) und LSPc2(i) auf eine ähnliche Weise zu entscheiden.
  • Ferner nimmt die Beschreibung in der dritten Ausführungsform an, dass die Gewichtungen von E1 und E2 als der Fehlerevalu ierungsbezug gleich sind. Der LSP-Code kann jedoch auch bei einer Anordnung so entschieden werden, dass E1 und E2 als E = ω1E1 + ω2E2 getrennt gewichtet sind.
  • In Übereinstimmung mit der dritten Ausführungsform kann somit, wie oben beschrieben, ein mit G.729A übereinstimmender Sprachcode zu einem mit AMR übereinstimmenden Code konvertiert werden, ohne zu Sprache dekodiert zu werden. Als ein Ergebnis kann die Verzögerung gegenüber der, worauf mit der konventionellen Tandemverbindung getroffen wird, reduziert werden, und eine Abnahme der Klangqualität kann ebenso reduziert werden. Außerdem werden nicht nur der Konvertierungsfehler, der vorherrscht, wenn LSP1(i) neu quantisiert wird, sondern auch der Interpolationsfehler wegen dem LSP-Interpolator berücksichtigt. Dies macht es möglich, eine ausgezeichnete Sprachcodekonvertierung mit kleinem Konvertierungsfehler sogar in einem Fall durchzuführen, wo die Qualität der eingegebenen Sprache innerhalb des Rahmens variiert.
  • Ferner ist die dritte Ausführungsform angepasst, eine Kombination von Codevektoren zu finden, für die ein kombinierter Fehler in allen Bändern aus Kombinationen von Codevektoren, die aus einer Vielzahl von Codevektoren jedes Bandes ausgewählt sind, minimal sein wird, und um einen LSP-Code basierend auf der gefundenen Kombination zu entscheiden. Als ein Ergebnis kann diese Ausführungsform reproduzierte Sprache mit einer Klangqualität bereitstellen, die der der zweiten Ausführungsform überlegen ist.
  • (E) Vierte Ausführungsform
  • Die vorangehende Ausführungsform bezieht sich auf einen Fall, wo das Kodierungsverfahren nach G.729A als das Kodierungsverfahren 1 verwendet wird, und das AMR-Kodierungsverfahren als das Kodierungsverfahren 2 verwendet wird. In der vierten Aus führungsform wird der 7,95-kbps-Modus des AMR-Kodierungsverfahrens als das Kodierungsverfahren 1 verwendet, und das Kodierungsverfahren nach G.729A wird als das Kodierungsverfahren 2 verwendet.
  • 16 ist ein Blockdiagramm, das eine Sprachcode-Konvertierungseinheit gemäß einer vierten Ausführungsform der vorliegenden Erfindung veranschaulicht. Komponenten, die zu jenen in 2 gezeigten identisch sind, sind durch gleiche Bezugszeichen bezeichnet. Diese Anordnung unterscheidet sich von der in 2 dadurch, dass der Puffer 87 vorgesehen ist, und dadurch, dass der Verstärkungsdequantisierer des Verstärkungscodekonverters 85 durch einen adaptiven Codebuchverstärkungsdequantisierer 85a1 und einen Rauschcodebuch-Verstärkungsdequantisierer 85a2 gebildet wird. Ferner wird in 16 der 7,95-kbps-Modus des AMR-Verfahrens als das Kodierungsverfahren 1 verwendet, und das Kodierungsverfahren nach G.729A wird als das Kodierungsverfahren 2 verwendet.
  • Wie in 16 gezeigt, wird ein m-ter Rahmen von Leitungsdaten bst1(m) zu Anschluss #1 von einem mit AMR übereinstimmenden Kodierer (nicht gezeigt) über den Übertragungspfad eingegeben. Hier ist die Bitrate von AMR-Kodierung 7,95 kbps und die Rahmenlänge ist 20 ms, und deshalb werden die Leitungsdaten bst1(m) durch eine Bitsequenz von 159 Bits dargestellt. Der Codetrenner 81 trennt den LSP-Code I_LSP1(m), den Tonhöhennachlaufcode I_LAG1(m, j), den algebraischen Code I_CODE1(m, j), den adaptiven Codebuchverstärkungscode I_GAIN1a(m, j) und den algebraische Codebuchverstärkungscode I_GAIN1c(m, j) aus den Leitungsdaten bst1(n) und gibt diese Codes zu den Konvertern 82, 83, 84, 85 ein. Der Anhang j repräsentiert die vier Teilrahmen, die jeden Rahmen in dem AMR-Verfahren bilden, und nimmt beliebige der Werte 0, 1, 2 und 3 an.
  • (a) LSP-Code-Konverter
  • Überblick der LSP-Codekonvertierungsverarbeitung
  • Wie in 4B gezeigt, ist die Rahmenlänge gemäß dem AMR-Verfahren 20 ms, und ein LSP-Parameter wird von dem Eingangssignal des dritten Teilrahmens nur einmal jede 20 ms quantisiert. Im Gegensatz dazu ist die Rahmenlänge gemäß dem Verfahren nach G.729A 10 ms, und ein LSP-Parameter, der aus dem eingegebenen Sprachsignal des ersten Teilrahmens gefunden wird, wird nur einmal jede 10 ms quantisiert. Entsprechend müssen zwei Rahmen des LSP-Codes in dem Verfahren nach G.729A aus einem Rahmen des LSP-Codes in dem AMR-Verfahren erstellt werden.
  • 17 ist ein Diagramm, das bei einer Beschreibung von Konvertierungsverarbeitung, die durch den LSP-Codekonverter 82 gemäß der vierten Ausführungsform ausgeführt wird, von Nutzen ist.
  • Der LSP-Dequantisierer 82a dequantisiert LSP-Code I_LSP1(m) des dritten Teilrahmens in dem m-ten Rahmen des AMR-Verfahrens und generiert einen dequantisierten Wert lspm(i). Unter Verwendung des dequantisierten Wertes lspm(i) und eines dequantisierten Wertes lspm-1(m) des dritten Teilrahmens in dem (m-1)-ten Rahmen, der der vorherige Rahmen ist, sagt der LSP-Dequantisierer 82a einen dequantisierten Wert lspc(i) des ersten Teilrahmens in dem m-ten Rahmen durch Interpolation voraus. Der LSP-Quantisierer 82b quantisiert den dequantisierten Wert lspc(i) des ersten Teilrahmens in dem m-ten Rahmen in Übereinstimmung mit dem Verfahren nach G.729A und gibt den LSP-Code I_LSP2(n) des ersten Teilrahmens des n-ten Rahmens aus. Ferner quantisiert der LSP-Quantisierer 82b den dequantisierten Wert lspm(i) des dritten Teilrahmens in dem m-ten Rahmen in Übereinstimmung mit dem Verfahren nach G.729A und gibt den LSP-Code I_LSP2(n+1) des ersten Teilrahmens des (n+1)-ten Rahmens in dem Verfahren nach G.729A aus.
  • LSP-Dequantisierung
  • 18 ist ein Diagramm, das den Aufbau des LSP-Dequantisierers 82a zeigt.
  • Der LSP-Dequantisierer 82a hat 9-Bit- (512-Muster) Codebücher CB1, CB2, CB3 für jeden der kleinen Vektoren, wenn die 10-dimensionalen LSP-Parameter des AMR-Verfahrens in die kleinen Vektoren von ersten bis dritten Dimensionen, vierten bis sechsten Dimensionen und siebten bis zehnten Dimensionen unterteilt werden. Der LSP-Code I_LSP1(m) des AMR-Verfahrens wird in Codes I1, I2, I3 zerlegt, und die Codes werden zu der Restvektor-Kalkulationseinheit DBC eingegeben. Der Code I1 repräsentiert die Elementzahl (Index) des 3-dimensionalen Codebuchs der Niederfrequenz CB1, und die Codes I2, I3 repräsentieren auch die Elementzahlen (Indizes) des 3-dimensionalen Codebuchs der Mittelbereichsfrequenz CB2 bzw. des 4-dimensionalen Codebuchs der Hochfrequenz CB3.
  • Beim Versehen mit dem LSP-Code I_LSP1(m) = {I1, I2, I3} extrahiert eine Restvektor-Erstellungseinheit DBG Codevektoren entsprechend den Codes I1, I2, I3 aus den Codebüchern CB1, CB2, CB3 und ordnet die Codevektoren in der Reihenfolge der Codebücher CB1 – CB3 wie folgt an: r(i, 1) ∼ r(i, 3), r(i, 4) ∼ r(i, 6), r(i, 7) ∼ r(i, 10)um einen 10-dimensionalen Vektor r(i)(m) (i = 1, ... 10) zu erstellen. Da Vorhersage verwendet wird, wenn LSP-Parameter in dem AMR-Verfahren kodiert werden, ist r(i)(m) der Vektor eines Restbereiches. Entsprechend kann ein LSP-dequantisierter Wert lspm(i) eines m-ten Rahmens durch Addieren eines Restvektors r(i)(m) des vorliegenden Rahmens zu einem Vektor gefunden werden, der durch Multiplizieren eines Restvektors r(i)(m-1) des vorherigen Rahmens mit einer Konstante p(i) erhalten wird. D.h. eine Dequantisierungswert-Kalkulationseinheit RQC kalkuliert den LSP-dequantisierten Wert lspm(i) in Übereinstimmung mit der folgenden Gleichung: lspm(i) = r(i)(m-1)·p(i) + r(i)(m) (25)
  • Es sollte vermerkt werden, dass die Konstante p(i), die verwendet wird, um den Restvektor r(i)(m-1) zu multiplizieren, einen einsetzt, der für jeden Index i durch die Spezifikationen des AMR-Kodierungsverfahrens entschieden wurde.
  • Als Nächstes erhält unter Verwendung eines LSP-dequantisierten Wertes lspm-1(i), der in dem vorherigen (m-1)-ten Rahmen gefunden wurde, und lspm(i) des m-ten Rahmens ein Dequantisierungswertinterpolator RQI einen LSP-dequantisierten Wert lspc(i) des ersten Rahmens in dem m-ten Rahmen durch Interpolation. Obwohl ein beliebiges Interpolationsverfahren verwendet werden kann, wird auf dem Weg eines Beispiels das Verfahren verwendet, das durch die folgende Gleichung angezeigt wird:
    Figure 00580001
  • Aufgrund des vorangehenden kalkuliert der LSP-Dequantisierer 82a dequantisierte Werte lspm(i), lspc(i) der ersten und dritten Teilrahmen in dem m-ten Rahmen und gibt sie aus.
  • LSP-Quantisierung
  • Der LSP-Code I_LSP2(n) entsprechend dem ersten Teilrahmen des n-ten Rahmens in dem Kodierungsverfahren nach G.729A kann durch Quantisieren des LSP-Parameters lspc(i), der in Über einstimmung mit Gleichung (26) interpoliert wurde, durch das nachstehend dargelegte Verfahren gefunden werden. Ferner kann der LSP-Code I_LSP2(n+1) entsprechend dem ersten Teilrahmen des (n+1)-ten Rahmens in dem Kodierungsverfahren nach G.729A durch Quantisieren von lspm(i) durch ein ähnliches Verfahren gefunden werden.
  • Zuerst wird der LSP-dequantisierte Wert lspc(i) in einen LSF-Koeffizienten ω(i) durch die folgende Gleichung konvertiert: ω(i) = arccos[lspc(i)], (i = 1, ..., 10) (27)
  • Diesem folgt Quantisierung, unter Verwendung von 17 Bits, der Restvektoren, die durch Subtrahieren vorhergesagter Komponenten (vorhergesagte Komponenten, die aus Codebuchausgaben der vergangenen vier Rahmen erhalten werden) von den LSF-Koeffizienten ω(i) erhalten werden.
  • In Übereinstimmung mit der Kodierung nach G.729A werden drei Codebücher cb1 (zehndimensional und 7 Bits), cb2 (fünf Dimensionen und fünf Bits) und cb3 (fünf Dimensionen und fünf Bits) bereitgestellt. Vorhergesagte Komponenten l ^(n-1 ), l ^(n-2 ), l ^(n-3 ), l ^(n-4 ) werden von jeder der Codebuchausgaben der vergangenen vier Rahmen in Übereinstimmung mit den folgenden Gleichungen gefunden:
    Figure 00590001
    wobei L1(n-k) den Code (Index) von Codebuch cb1 in dem (n-k)-ten Rahmen darstellt und cb1[L1(n-k)] angenommen wird, ein Codevektor (Ausgabevektor) zu sein, die durch den Index L1(-k) von Codebuch cb1 in dem (n-k)-ten Rahmen angezeigt wird. Das gleiche trifft für L2(n-k) und L3(n-k) zu. Als Nächstes wird ein Restvektor li (i = 1, ..., 10) durch die folgende Gleichung gefunden:
    Figure 00600001
    wobei p(i, k) als ein Vorhersagekoeffizient bezeichnet wird und eine Konstante ist, die im voraus durch die Spezifikationen des Kodierungsverfahrens nach G.729A bestimmt wird. Der Restvektor li ist, was Vektorquantisierung unterzogen wird.
  • Vektorquantisierung wird wie folgt ausgeführt: zuerst wird Codebuch cb1 untersucht, um den Index (Code) L1 des Codevektors zu entscheiden, für den der mittlere Quadratfehler minimal ist. Als Nächstes wird der 10-dimensionale Codevektor entsprechend dem Index L1 von dem 10-dimensionalen Restvektor Ii subtrahiert, um einen neuen Zielvektor zu erstellen. Das Codebuch cb2 wird hinsichtlich der unteren fünf Dimensionen des neuen Zielvektors durchsucht, um den Index (Code) L2 des Codevektors zu entscheiden, für den der mittlere Quadratfehler minimal ist. Ähnlich wird das Codebuch cb3 hinsichtlich der höheren fünf Dimensionen des neuen Zielvektors durchsucht, um den Index (Code) L3 des Codevektors zu entscheiden, für den der mittlere Quadratfehler minimal ist. Der 17-Bit-Code, der durch Anordnen dieser erhaltenen Codes L1, L2, L3 als Bitsequenzen gebildet werden kann, wird als LSP-Code L_LSP2(n) in dem Kodierungsverfahren nach G.729A ausgegeben. Der LSP-Code I_LSP2(n+1) in dem Kodierungsverfahren nach G.729A kann durch genau das gleiche Verfahren mit Bezug auf den LSP-dequantisierten Wert lspm(i) erhalten werden.
  • 19 ist ein Diagramm, das den Aufbau des LSP-Quantisierers 82b zeigt. Die Restvektor-Kalkulationseinheit DBC kalkuliert die Restvektoren in Übereinstimmung mit Gleichungen (27) bis (29). Ein erstes Codebuch cb1 eines ersten Kodierers CD1 hat 128 Mengen (sieben Bits) von 10-dimensionalen Codevektoren. Eine Abstandskalkulationseinheit DSC1 kalkuliert 128 Mengen von Quadratfehlern (Euklidische Abstände) zwischen Restvektoren li (i = 1 – 10) und Codevektoren l(L1, i) (i = 1 – 10), und ein Indexdetektor IXD1 erfasst den Index L1 des Codevektors, für den der Fehler minimal ist unter den L1 = 1 – 128 Codevektoren, und gibt ihn aus. Ein Subtrahierer SBC subtrahiert die 10-dimensionalen Vektoren (L1, i) (i = 1 – 10) entsprechend dem Index L1 des ersten Codebuchs cb1 von den 10-dimensionalen Restvektoren li (i = 1 – 10) und erstellt einen neuen Zielvektor li'(i = 1 – 10). Ein zweiter Kodierer CD2 durchsucht das Codebuch cb2 hinsichtlich der unteren fünf Dimensionen li'(i = 1 – 5) des neuen Zielvektors, um den Index (Code) L2 des Codevektors l'(L2, i) (i = 1 – 5) zu entscheiden, für den der mittlere Quadratfehler minimal ist. Ähnlich durchsucht der dritte Kodierer CD3 das Codebuch cb3 hinsichtlich der höheren fünf Dimensionen li' (i = 6 – 10) des neuen Zielvektors, um den Index (Code) L3 des Codevektors l'(L3, i) (i = 6 – 10) zu entscheiden, für den der mittlere Quadratfehler minimal ist.
  • (b) Tonhöhennachlaufcodekonverter
  • Als Nächstes wird Tonhöhennachlaufcodekonvertierung beschrieben.
  • Bei den Kodierungsverfahren nach G.729A und AMR wird Tonhöhennachlauf in einem Drittel der Abtastungsgenauigkeit unter Verwendung eines Abtastungsinterpolationsfilters entschieden, wie in Verbindung mit der ersten Ausführungsform dargelegt wird. Aus diesem Grund existieren zwei Typen von Nachlauf, nämlich ganzzahliger Nachlauf und nicht-ganzzahliger Nachlauf. Die Beziehung zwischen dem Tonhöhennachlauf und Indizes in dem Verfahren nach G.729A wird in 7A und 7B veranschaulicht, und muss nicht erneut beschrieben werden, da es mit dem der ersten Ausführungsform identisch ist. Ferner ist die Beziehung zwischen Tonhöhennachlauf und Indizes in dem AMR-Verfahren, wie in 8A und 8B beschrieben, und muss nicht erneut beschrieben werden, da sie identisch mit dem der ersten Ausführungsform ist.
  • Entsprechend sind die Verfahren zum Quantisieren von Tonhöhennachlauf und die Zahlen von Quantisierungsbits in den Verfahren nach AMR und G.729A genau die gleichen hinsichtlich geraden Teilrahmen. Dies bedeutet, dass Tonhöhennachlaufindizes von geraden Teilrahmen in dem AMR-Verfahren zu Tonhöhennachlaufindizes von 0-ten Teilrahmen in zwei fortlaufenden Rahmen des Verfahrens nach G.729A in Übereinstimmung mit den folgenden Gleichungen konvertiert werden können I_LAG2(n, 0) = I_LAG1(m, 0) (30) I_LAG2(n+1, 0) = I_LAG1(m, 2) (31)
  • Hinsichtlich der ungeraden Teilrahmen besteht ein gemeinsamer Punkt darin, dass die Differenz zwischen dem ganzzahligen Nachlauf Told in dem vorherigen Teilrahmen und dem Tonhöhennachlauf in dem vorliegenden Teilrahmen quantisiert ist. Mit Bezug auf die Zahl (sechs) von Quantisierungsbits in dem AMR-Verfahren ist die Zahl kleiner als die (fünf) in dem Verfahren nach G.729A. Dies macht das Folgende sinnvoll:
    Zuerst werden der ganzzahlige Nachlauf Int(m, 1) und der nicht-ganzzahlige Nachlauf Frac(m, 1) aus dem Nachlaufcode I_LAG1(m, 1) des ersten Teilrahmens des m-ten Rahmens in dem AMR-Verfahren gefunden, und der Tonhöhennachlauf wird durch die folgende Gleichung gefunden: P = Int(m, 1) + Frac(m, 1)
  • Der ganzzahlige Nachlauf und der nicht-ganzzahlige Nachlauf entsprechend den Indizes (Nachlaufcodes) sind in einer eindeutigen Entsprechung. Falls es z.B. 28 Nachlaufcodes gibt, wird dann der ganzzahlige Nachlauf –1 sein, der nicht-ganzzahlige Nachlauf wird –1/3 sein, und ein Tonhöhennachlauf P wird –(1+1/3) sein, wie in 8B veranschaulicht wird.
  • Als Nächstes wird bestimmt, ob der gefundene Tonhöhennachlauf P in den 5-Bit-Tonhöhennachlaufbereich Told-(5+2/3) bis Told-(4+2/3) in den geraden Teilrahmen nach G.729A fällt, was in 7B gezeigt wird. Dieser Bereich wird nachstehend als [Told-(5+2/3), Told-(4+2/3)] ausgedrückt. Falls die entsprechende Beziehung zwischen einem mit AMR übereinstimmenden Tonhöhennachlauf und Indizes und die entsprechende Beziehung zwischen einem mit G.729A übereinstimmenden Tonhöhennachlauf und Indizes in den ungeraden Teilrahmen verglichen werden, wird herausgefunden, dass es eine Verschiebung von 15 Indizes gibt, wie vorher in Verbindung mit der ersten Ausführungsform beschrieben. Falls entsprechend der Tonhöhennachlauf P in den oben erwähnten Tonhöhennachlaufbereich fällt, wird eine Korrektur in Übereinstimmung mit den folgenden Gleichungen angewendet: I_LAG2(n, 1) = I_LAG1(m, 1) – 15 (32) I_LAG2(n+1, 1) = I_LAG1(m, 3) – 15 (33)
  • Als ein Ergebnis kann der Tonhöhennachlauf I_LAG1(m, 1) in dem AMR-Verfahren zu dem Tonhöhennachlauf I_LAG2(n, 1) in dem Verfahren nach G.729A konvertiert werden. Ähnlich kann der Tonhöhennachlauf I_LAG1(m, 3) in dem AMR-Verfahren zu dem Tonhöhennachlauf I_LAG2(n+1, 1) in dem Verfahren nach G.729A konvertiert werden.
  • Falls der Tonhöhennachlauf P nicht in den oben erwähnten Tonhöhennachlaufbereich fällt, wird der Tonhöhennachlauf dann abgeschnitten. D.h. falls der Tonhöhennachlauf P kleiner als Told-(5+2/3) ist, z.B. falls der Tonhöhennachlauf P gleich Told-7 ist, dann wird der Tonhöhennachlauf P auf Told-(5+2/3) abgeschnitten. Falls der Tonhöhennachlauf P größer als Told+(4+2/3) ist, z.B. falls der Tonhöhennachlauf P gleich Told+7 ist, dann wird der Tonhöhennachlauf P auf Told+(4+2/3) abgeschnitten.
  • Obwohl auf den ersten Blick erscheinen kann, dass ein derartiges Abschneiden des Tonhöhennachlaufs zu einer Abnahme der Sprachqualität führen wird, haben vorausgehende Experimente durch die Erfinder demonstriert, dass es nahezu keine Abnahme der Klangqualität gibt, selbst wenn derartige Verarbeitung zum Abschneiden angewendet wird. Es ist bekannt, dass in derartigen stimmhaften Segmenten wie "ah" und "ee" der Tonhöhennachlauf glatt variiert und die Schwankungen im Tonhöhennachlauf P in stimmhaften ungeraden Teilrahmen klein ist, die in den meisten Fällen in den Bereich von Told-(5+2/3), Told+(4+2/3) fallen. In schwankenden Segmenten, wie etwa ansteigenden oder fallenden Segmenten, überschreitet andererseits der Wert des Tonhöhennachlaufs P den oben erwähnten Bereich. In Segmenten jedoch, wo die Qualität der Sprache variiert, nimmt der Einfluss des adaptiven Codebuchs in der rekonstruierten Sprache, die aus einer periodischen Klangquelle abgeleitet wird, ab. Daher gibt es nahezu keinen Einfluss auf die Qualität von Klang, selbst wenn eine Verarbeitung zum Abschneiden ausgeführt wird. In Übereinstimmung mit dem oben beschriebenen Verfahren kann mit AMR übereinstimmender Tonhöhennachlaufcode zu mit G.729A übereinstimmenden Tonhöhennachlaufcode konvertiert werden.
  • (c) Konvertierung vom algebraischen Code
  • Als Nächstes wird die Konvertierung vom algebraischen Code beschrieben.
  • Obwohl sich die Rahmenlänge in dem AMR-Verfahren von der in dem G.729A-Verfahren unterscheidet, ist die Teilrahmenlänge die gleichen 5 ms (40 Abtastungen) und der Aufbau des algebraischen Codes ist in beiden Verfahren genau der gleiche. Entsprechend können die vier Impulspositionen und die Impulspolaritätsinformation, die Ergebnisse sind, die von der algebraischen Codebuchsuche in dem AMR-Verfahren ausgegeben werden, auf einer Basis eins zu eins durch die Ergebnisse ersetzt werden wie sie sind, die von der algebraischen Codebuchsuche in dem Verfahren nach G,729A ausgegeben werden. Die Konvertierungen des algebraischen Codes werden deshalb durch die folgenden Gleichungen angezeigt: I_CODE2(n, 0) = I_CODE1(m, 0) (34) I_CODE2(n,1) = I_CODE1(m, 1) (35) I_CODE2(n+1, 0) = I_CODE1(m, 2) (36) I_CODE2(n+1, 1) = I_CODE1(m, 3) (37)
  • (d) Konvertierung des Verstärkungscodes
  • Als Nächstes wird Konvertierung des Verstärkungscodes beschrieben.
  • Zuerst wird der Verstärkungscode des adaptiven Codebuchs I_GAINa(m, 0) des 0-ten Teilrahmens in dem m-ten Rahmen des AMR-Verfahrens zu dem Verstärkungsdequantisierer des adaptiven Codebuchs 85a1 eingegeben, um den Verstärkungsdequantisierungswert des adaptiven Codebuchs Ga zu erhalten. In Übereinstimmung mit dem Verfahren nach G.729A wird Vektorquantisierung verwendet, um die Verstärkung zu quantisieren. Der Verstärkungsdequantisierer des adaptiven Codebuchs 85a1 hat eine 4-Bit- (16-Muster) Verstärkungstabelle des adaptiven Codebuchs, die die gleiche wie die des AMR-Verfahrens ist, und verweist auf diese Tabelle, um den Verstärkungsdequantisie rungswert des adaptiven Codebuchs Ga auszugeben, der dem Code I_GAIN1a(m, 0) entspricht.
  • Als Nächstes wird der Verstärkungscode des adaptiven Codebuchs I_GAINc(m,0) des 0-ten Teilrahmens in dem m-ten Rahmen des AMR-Verfahrens zu dem Rauschcodebuch-Verstärkungsdequantisierer 85a2 eingegeben, um den Verstärkungsdequantisierungswert des algebraischen Codebuchs Gc zu erhalten. In dem AMR-Verfahren wird Zwischenrahmenvorhersage in der Quantisierung der algebraischen Codebuchverstärkung verwendet, die Verstärkung wird aus der logarithmischen Energie der algebraischen Codebuchverstärkung der vergangenen vier Teilrahmen vorhergesagt und die Korrekturkoeffizienten davon werden quantisiert. Um dies zu bewerkstelligen, findet der Rauschcodebuch-Verstärkungsdequantisierer 85a2 , der eine 5-Bit- (32-Muster) Korrekturkoeffiziententabelle hat, die die gleiche wie die des AMR-Verfahrens ist, einen Tabellenwert γc eines Korrekturkoeffizienten, der dem Code I_GAIN1c(m, 0) entspricht, und gibt den dequantisierten Wert Gc = (gc' × γc) der algebraischen Codebuchverstärkung aus. Es sollte vermerkt werden, dass das Verstärkungsvorhersageverfahren genau das gleiche wie das Vorhersageverfahren ist, das durch den mit AMR übereinstimmenden Decoder durchgeführt wird.
  • Als Nächstes werden die Verstärkungen Ga, Gc zu dem Verstärkungsquantisierer 85b eingegeben, um eine Konvertierung zu mit G.729A übereinstimmenden Verstärkungscode zu bewirken. Der Verstärkungsquantisierer 85b verwendet eine 7-Bit-Verstärkungsquantisierungstabelle, die die gleiche wie die des Verfahrens nach G.729A ist. Diese Quantisierungstabelle ist zweidimensional, das erste Element davon ist die adaptive Codebuchverstärkung Ga und das zweite Element ist der Korrekturkoeffizient γc, der der algebraischen Codebuchverstärkung entspricht. Entsprechend wird in dem Verfahren nach G.729A eine Zwischenrahmen-Vorhersagetabelle in der Quantisierung der algebraischen Codebuchverstärkung verwendet, und das Vorhersageverfahren ist das gleiche wie das des AMR-Verfahrens.
  • In der vierten Ausführungsform wird das Klangquellensignal auf der AMR-Seite unter Verwendung von dequantisierten Werten, die durch die Dequantisierer 82a85a2 erhalten werden, aus den Codes I_LAG1(m, 0), I_CODE1(m, 0), I_GAIN1a(m, 0), I_GAIN1c(m,0) des AMR-Verfahrens gefunden, und das Signal wird als Klangquellensignal für Verweiszwecke angenommen.
  • Als Nächstes wird der Tonhöhennachlauf aus dem Tonhöhennachlaufcode I_LAG2(n, 0) gefunden, der bereits zu dem Verfahren nach G.729A konvertiert ist, und die adaptive Codebuchausgabe entsprechend diesem Tonhöhennachlauf wird erhalten. Ferner wird die algebraische Codebuchausgabe aus dem konvertierten algebraischen Code I_CODE2(n, 0) erstellt. Danach werden Tabellenwerte eine Menge zu einer Zeit in der Reihenfolge der Indizes aus der Verstärkungsquantisierungstabelle für G.729A extrahiert, und die adaptive Codebuchverstärkung Ga und die algebraische Codebuchverstärkung Gc werden gefunden. Als Nächstes wird das Klangquellensignal (Klangquellensignal zum Testen), das vorgeherrscht hat, als die Konvertierung zu dem Verfahren nach G.729A durchgeführt wurde, aus der adaptiven Codebuchausgabe, algebraischen Codebuchausgabe, adaptiven Codebuchverstärkung und algebraischen Codebuchverstärkung erstellt, und die Fehlerleistung zwischen dem Klangquellensignal für den Verweis und dem Klangquellensignal zum Testen wird kalkuliert. Eine ähnliche Verarbeitung wird hinsichtlich der Verstärkungsquantisierungstabellenwerte, die durch alle Indizes angezeigt werden, ausgeführt und der Index, für den der kleinste Wert der Fehlerleistung erhalten wird, wird als der optimale Verstärkungsquantisierungscode angenommen.
  • Es werden nun die Details der Verarbeitungsprozedur beschrieben.
    • (1) Zuerst wird die Ausgabe des adaptiven Codebuchs pitch1(i) (i = 0, 1, ..., 39) entsprechend dem Tonhöhennachlaufcode I_LAG1 in dem AMR-Verfahren gefunden.
    • (2) Es wird das Klangquellensignal zum Verweis aus der folgenden Gleichung gefunden: ex1(i) = Ga·pitch1(i) + Gc·code(i)(i = 0, 1, ... 39)
    • (3) Es wird die Ausgabe des adaptiven Codebuchs pitch2(i) (i = 0, 1, ..., 39) entsprechend dem Tonhöhennachlaufcode I_LAG2(n, k) in dem Verfahren nach G.729A gefunden.
    • (4) Tabellenwerte Ga2(L), γc(L) entsprechend dem L-ten Verstärkungscode werden aus der Verstärkungsquantisierungstabelle extrahiert.
    • (5) Es wird eine Energiekomponente gc', die aus der algebraischen Codebuchverstärkung eines vergangenen Teilrahmens vorhergesagt wird, kalkuliert und Gc2(L) = gc' γc(L) wird erhalten.
    • (6) Das Klangquellensignal zum Testen wird aus der folgenden Gleichung gefunden: ex2(i, L) = Ga2(L)·pitch2(i) + Gc2(L)·code(i) (i = 0, 1, ... 39)Es sollte vermerkt werden, dass die algebraische Codebuchausgabe code(i) in sowohl dem AMR- als auch dem G.729A-Verfahren die gleiche ist.
    • (7) Das Quadrat des Fehlers wird aus der folgenden Gleichung gefunden: E(L) = [ex1(i) – ex2(i, L)]2 (i = 0, 1, ..., 39)
    • (8) Der Wert von E(L) wird hinsichtlich der Muster (L = 0 – 127) aller Indizes der Verstärkungsquantisierungstabelle kalkuliert, und das L, für das E(L) minimiert ist, wird als der optimale Verstärkungscode I_GAIN2(n,0) ausgegeben.
  • In der vorangehenden Beschreibung wird das Quadrat des Fehlers des Klangquellensignals als ein Bezug verwendet, wenn der optimale Verstärkungscode abgerufen wird. Es kann jedoch eine Anordnung übernommen werden, in der rekonstruierte Sprache aus dem Klangquellensignal gefunden wird und der Verstärkungscode in der Region der rekonstruierten Sprache abgerufen wird.
  • (e) Codeübertragungsverarbeitung
  • Da sich die Rahmenlängen in den Verfahren nach AMR und G.729A voneinander unterscheiden, werden zwei Rahmen von Kanaldaten in dem Verfahren nach G.729A aus einem Rahmen von Kanaldaten in dem AMR-Verfahren erhalten. Entsprechend gibt der Puffer 87 (16) die Codes I_LSP2(n), I_LAG2(n, 0), I_LAG2(n, 1), I_CODE2(n, 0), I_CODE2(n, 1), I_GAIN2(n, 0), I_GAIN2(n, 1) zu dem Codemultiplexer 86 ein. Der letztere multiplext diese eingegebenen Codes, um das Sprachsignal des n-ten Rahmens in dem Verfahren nach G.729A zu erstellen und sendet den Code zu dem Übertragungspfad als die Leitungsdaten.
  • Als Nächstes gibt der Puffer 87 die Codes I_LsP2(n+1), I_LAG2(n+1, 0), I_LAG2(n+1, 1), I_CODE2(n+1, 0), I_CODE2(n+1, 1), I_GAIN2(n+1, 0), I_GAIN2(n+1, 1) zu dem Codemultiplexer 86 ein. Der letztere multiplext diese eingegebenen Codes, um das Sprachsignal des (n+1)-ten Rahmens in dem Verfahren nach G.729A zu erstellen und sendet den Code zu dem Übertragungspfad als die Leitungsdaten.
  • (F) Fünfte Ausführungsform
  • Die vorangehenden Ausführungsformen behandeln Fälle, in denen es keinen Übertragungspfadfehler gibt. In Wirklichkeit tritt jedoch, falls drahtlose Kommunikation eingesetzt wird, wie wenn ein zellulares Telefon verwendet wird, ein Bitfehler oder Häufungsfehler wegen dem Einfluss einer Erscheinung auf, wie etwa Phasenlage, der Sprachcode ändert sich zu einem anderen von dem ursprünglichen und es gibt Fälle, wo der Sprachcode eines ganzen Rahmens verloren ist. Falls der Verkehr über das Internet stark ist, wächst Übertragungsverzögerung, der Sprachcode eines ganzen Rahmens kann verloren sein oder Rahmen können die Plätze im Sinne ihrer Reihenfolge ändern.
  • (a) Effekte des Übertragungspfadfehlers
  • 20 ist ein Diagramm, das bei einer Beschreibung der Effekte des Übertragungspfadfehlers von Nutzen ist. Komponenten in 20, die mit jenen identisch sind, die in 1 und 2 gezeigt werden, sind durch die gleichen Bezugszeichen bezeichnet. Diese Anordnung unterscheidet sich dadurch, dass sie einen Kombinator 95 besitzt, der die Hinzufügung des Übertragungspfadfehlers (Kanalfehlers) zu einem Übertragungssignal simuliert.
  • Eingegebene Sprache tritt in den Kodierer 61a des Kodierungsverfahrens 1 ein, und der Kodierer 61a gibt einen Sprachcode V1 des Kodierungsverfahrens 1 aus. Der Sprachcode V1 tritt in die Sprachcode-Konvertierungseinheit 80 durch den Übertragungspfad (Internet, etc.) 71 ein, der verdrahtet ist. Falls ein Kanalfehler eindringt, bevor der Sprachcode V1 in die Sprachcode-Konvertierungseinheit 80 eintritt, wird jedoch der Sprachcode V1 in einen Sprachcode V1' verzerrt, der sich wegen den Effekten eines derartigen Kanalfehlers von dem Sprachcode V1 unterscheidet. Der Sprachcode V1' tritt in den Codetrenner 81 ein, wo er in die Sprachcodes getrennt wird, nämlich den LSP-Code, Tonhöhennachlaufcode, algebraischen Code und Verstärkungscode. Die Parametercodes werden durch jeweilige der Codekonverter 82, 83, 84 und 85 zu Codes konvertiert, die für das Kodierungsverfahren 2 geeignet sind. Die Codes, die durch die Konvertierungen erhalten werden, werden durch den Codemultiplexer 86 multiplext, wonach ein Sprachcode V2, der mit dem Kodierungsverfahren 2 in Übereinstimmung ist, schließlich ausgegeben wird.
  • Falls ein Kanalfehler vor Eingabe des Sprachcodes V1 zu der Sprachcode-Konvertierungseinheit 80 eindringt, wird somit Konvertierung basierend auf dem fehlerhaften Sprachcode V1' ausgeführt, und als eine Folge ist der Sprachcode V2, der durch die Konvertierung erhalten wird, nicht notwendigerweise der optimale Code. Bei CELP wird des weiteren ein IIR-Filter als ein Sprachsynthesefilter verwendet. Falls der LSP-Code oder der Verstärkungscode etc. wegen den Effekten vom Kanalfehler nicht der optimale Code ist, schwingt deshalb das Filter häufig und erzeugt einen großen anomalen Klang. Ein anderes Problem ist, dass wegen den Eigenschaften eines IIR-Filters, sobald das Filter schwingt, die Vibration den folgenden Rahmen beeinträchtigt. Folglich ist es notwendig, den Einfluss zu reduzieren, den ein Kanalfehler auf die Sprachcode-Konvertierungskomponenten hat.
  • (b) Prinzipien der fünften Ausführungsform
  • 21 veranschaulicht die Prinzipien der fünften Ausführungsform. Hier werden Kodierungsverfahren basierend auf CELP in Übereinstimmung mit AMR und G.729A als die Kodierungsverfahren 1 und 2 verwendet.
  • In 21 wird eingegebene Sprache xin zu dem Kodierer 61a vom Kodierungsverfahren 1 eingegeben, sodass ein Sprachcode sp1 des Kodierungsverfahrens 1 erzeugt wird. Der Sprachcode sp1 wird zu der Sprachcode-Konvertierungseinheit 80 durch einen drahtlosen (Funk-) Kanal oder einen drahtgebundenen Kanal (das Internet) eingegeben. Falls ein Kanalfehler ERR eindringt, bevor der Sprachcode sp1 in die Sprachcode-Konvertierungseinheit 80 eintritt, wird der Sprachcode sp1 in einen Sprachcode sp' verzerrt, der den Kanalfehler enthält. Das Muster des Kanalfehlers ERR hängt von dem System ab, und es sind verschiedene Muster möglich, Beispiele von denen ein Zufallsbitfehler und ein Häufungsfehler sind. Falls kein Fehler bei der Eingabe eindringt, dann werden die Codec sp1' und sp1 identisch sein.
  • Der Sprachcode sp1' tritt in den Codetrenner 81 ein und wird in den LSP-Code LSP1, den Tonhöhennachlaufcode Lag1, den algebraischen Code PCB1 und den Verstärkungscode Gain1 getrennt. Der Sprachcode sp1' tritt weiter in einen Kanalfehlerdetektor 96 ein, der durch ein gut bekanntes Verfahren erfasst, ob ein Kanalfehler vorhanden ist oder nicht. Z.B. kann ein Kanalfehler durch Hinzufügen eines CRC-Codes zu dem Sprachcode sp1 im voraus oder durch Hinzufügen von Daten, die die Rahmensequenz anzeigen, zu dem Sprachcode sp1 im voraus erfasst werden.
  • Der LSP-Code LSP1 tritt in eine LSP-Korrektureinheit 82c ein, die den LSP-Code LSP1 zu einem LSP-Code LSP1' konvertiert, in dem die Effekte des Kanalfehlers reduziert wurden. Der Tonhöhennachlaufcode Lag1 tritt in eine Tonhöhennachlauf-Korrektureinheit 83c ein, die den Tonhöhennachlaufcode Lag1 zu einem Tonhöhennachlaufcode Lag1' konvertiert, in dem die Effekte des Kanalfehlers reduziert wurden. Der algebraische Code PCB1 tritt in eine Korrektureinheit des algebraischen Codes 84c ein, die den algebraischen Code PCB1 zu einem algebrai schen Code PCB1' konvertiert, in dem die Effekte des Kanalfehlers reduziert wurden. Der Verstärkungscode Gain1 tritt in eine Verstärkungscode-Korrektureinheit 85c ein, die den Verstärkungscode Gain1 zu einem Verstärkungscode Gain1' konvertiert, in dem die Effekte des Kanalfehlers reduziert wurden.
  • Als Nächstes wird der LSP-Code LSP1' zu dem LSP-Codekonverter 82 eingegeben und wird dadurch zu einem LSP-Code LSP2 des Kodierungsverfahrens 2 konvertiert, der Tonhöhennachlaufcode Lag1' wird zu dem Tonhöhennachlaufcodekonverter 83 eingegeben und wird dadurch zu einem Tonhöhennachlaufcode Lag2 des Kodierungsverfahrens 2 konvertiert, der algebraische Code PCB1' wird zu dem Konverter des algebraischen Codes 84 eingegeben und wird dadurch zu einem algebraischen Code PCB2 des Kodierungsverfahrens 2 konvertiert, und der Verstärkungscode Gain1' wird zu dem Verstärkungscodekonverter 85 eingegeben, und wird dadurch zu einem Verstärkungscode Gain2 des Kodierungsverfahrens 2 konvertiert.
  • Die Codes LSP2, Lag2, PCB2 und Gain2 werden durch den Codemultiplexer 86 multiplext, der einen Sprachcode sp2 des Kodierungsverfahrens 2 ausgibt.
  • Durch Annahme diese Anordnung ist es möglich, eine Abnahme der Sprachqualität nach Konvertierung wegen einem Kanalfehler, was ein Problem bei dem konventionellen Sprachcodekonverter ist, zu vermindern.
  • (c) Sprachcodekonverter gemäß der fünften Ausführungsform
  • 22 ist ein Blockdiagramm, das den Aufbau des Sprachcodekonverters der fünften Ausführungsform veranschaulicht. Dies veranschaulicht einen Fall, wo G.729A und AMR als die Kodierungsverfahren 1 bzw. 2 verwendet werden. Es sollte vermerkt werden, dass obwohl es acht AMR-Kodierungsmodi gibt, 22 einen Fall veranschaulicht, wo 7,95 kbps verwendet wird. In 22 wird ein Sprachcode sp1(n), der eine mit G.729A übereinstimmende Kodiererausgabe eines n-ten Rahmens ist, zu der Sprachcode-Konvertierungseinheit 80 eingegeben. Da die G.729A-Bitrate 8 kbps ist, wird spn1(n) durch eine Bitsequenz von 80 Bits dargestellt. Der Codetrenner 81 trennt den Sprachcode sp1(n) in den LSP-Code LSP1(n), Tonhöhennachlaufcode Lag1(n,j), algebraischen Code PCB1(n, j) und Verstärkungscode Gain1(n, j). Der Anhang j in den Klammern stellt die Teilrahmenzahl dar und nimmt Werte von 0 und 1 ein.
  • Falls ein Kanalfehler ERR eindringt, bevor der Sprachcode sp1(n) in die Sprachcode-Konvertierungseinheit 80 eintritt, wird der Sprachcode sp1(n) in einen Sprachcode sp1'(n) verzerrt, der den Kanalfehler enthält. Das Muster des Kanalfehlers ERR hängt von dem System ab, und es sind verschiedene Muster möglich, Beispiele von denen Zufallsbitfehler und Häufungsfehler sind. Falls ein Häufungsfehler auftritt, ist die Information eines ganzen Rahmens verloren und Sprache kann nicht richtig rekonstruiert werden. Falls ein Sprachcode eines gewissen Rahmens nicht innerhalb einer vorgeschriebenen Zeitperiode wegen Netzverstopfung ankommt, wird diese Situation ferner durch eine Annahme behandelt, dass es keinen Rahmen gibt. Als eine Folge kann die Information eines ganzen Rahmens verloren sein und Sprache kann nicht richtig rekonstruiert werden. Dies wird als "Verschwinden eines Rahmens" bezeichnet und macht Maßnahmen notwendig, gerade wie es ein Kanalfehler tut. Falls kein Fehler bei der Eingabe eindringt, dann werden die Codes sp1'(n) und sp1(n) genau die gleichen sein.
  • Das besondere Verfahren zum Bestimmen, ob ein Kanalfehler oder Verschwinden eines Rahmens aufgetreten ist oder nicht, unterscheidet sich abhängig von dem System. In dem Fall eines zellularen Telefonsystems ist es z.B. die übliche Praxis, ei nen Fehlererfassungscode oder Fehlerkorrekturcode dem Sprachcode hinzuzufügen. Der Kanalfehlerdetektor 96 ist zum Erfassen fähig, ob der Sprachcode des vorliegenden Rahmens einen Fehler enthält, basierend auf dem Fehlererfassungscode. Falls ferner die Gesamtheit eines Rahmens, der einen Sprachcode wert ist, innerhalb einer vorgeschriebenen Zeitperiode nicht empfangen werden kann, kann dieser Rahmen durch Annahme eines Verschwindens eines Rahmens behandelt werden.
  • Der LSP-Code LSP1(n) tritt in die LSP-Korrektureinheit 82c ein, die diesen Code zu einem LSP-Parameter lsp(i) konvertiert, in dem die Effekte eines Kanalfehlers reduziert wurden. Der Tonhöhennachlaufcode Lag1(n, j) tritt in die Tonhöhennachlauf-Korrektureinheit 83c ein, die diesen Code zu einem Tonhöhennachlaufcode Lag1'(n, j) konvertiert, in dem die Effekte des Kanalfehlers reduziert wurden. Der algebraische Code PCB1(n, j) tritt in die Korrektureinheit des algebraischen Codes 84c ein, die diesen Code zu einem algebraischen Code PCB1'(n, j) konvertiert, in dem die Effekte des Kanalfehlers reduziert wurden. Der Verstärkungscode Gain1(n, j) tritt in die Verstärkungscode-Korrektureinheit 85c ein, die diesen Code zu einer Tonhöhenverstärkung Ga(n, j) und algebraischen Codebuchverstärkung Gc(n, j) konvertiert, worin die Effekte des Kanalfehlers reduziert wurden.
  • Falls ein Kanalfehler oder Verschwinden eines Rahmens nicht aufgetreten ist, gibt die LSP-Korrektureinheit 82c einen LSP-Parameter lsp(i) aus, der zu dem der ersten Ausführungsform identisch ist, die Tonhöhennachlauf-Korrektureinheit 83c gibt einen Code, der genau der gleiche wie Lag1(n, j) ist, als Lag1'(n, j) aus, die Korrektureinheit des algebraischen Codes 84c gibt einen Code, der genau der gleiche wie PCB1(n, j) ist, als PCB1'(n, j) aus, und die Verstärkungscode-Korrektureinheit 85c gibt eine Tonhöhenverstärkung Ga(n, j) und eine algebrai sche Codebuchverstärkung Gc(n, j) aus, die zu jenen der ersten Ausführungsform identisch sind.
  • (d) LSP-Codekorrektur und LSP-Codekonvertierung
  • Es wird nun die LSP-Korrektureinheit 82c beschrieben.
  • Falls ein fehlerfreier LSP-Code LSP1(n) in die LSP-Korrektureinheit 82c eintritt, führt die letztere eine Verarbeitung ähnlich zu des LSP-Dequantisierers 82a der ersten Ausführungsform aus. D.h. die LSP-Korrektureinheit 82c teilt LSP1(n) in vier kleinere Codes L0, L1, L2 und L3. Der Code L1 repräsentiert eine Elementzahl des LSP-Codebuchs CB1, und die Codes L2, L3 repräsentieren Elementzahlen jeweils der LSP-Codebücher CB2, CB3. Das LSP-Codebuch CB1 hat 128 Mengen von 10-dimensionalen Vektoren, und die LSP-Codebücher CB2 und CB3 haben beide 32 Mengen von 5-dimensionalen Vektoren. Der Code L0 zeigt an, welcher von zwei Typen von MA-Vorhersagekoeffizienten (später beschrieben) zu verwenden sind. Ein Restvektor l (n) / i des n-ten Rahmens wird durch die folgende Gleichung gefunden:
    Figure 00760001
  • Als Nächstes wird ein LSF-Koeffizient ω(i) aus dem Restvektor l (n) / i und Restvektoren l (n-k) / i der letzten jüngsten vier Rahmen in Übereinstimmung mit der folgenden Gleichung gefunden:
    Figure 00760002
    wobei p(i, k) darstellt, welcher Koeffizient der zwei Typen von MA-Vorhersagekoeffizienten durch den Code L0 spezifiziert wurde. Der Restvektor l (n) / i wird in einem Puffer 82d der Rahmen halber von dem nächsten Rahmen weiter gehalten. Danach findet die LSP-Korrektureinheit 82c den LSP-Parameter lsp(i) aus dem LSP-Koeffizienten ω(i) unter Verwendung der folgenden Gleichung: lsp(i) = cos [ω(i)] (i = 1, ..., 10) (40)
  • Falls ein Kanalfehler oder Verschwinden eines Rahmens nicht aufgetreten ist, kann somit die Eingabe zu dem LSP-Codekonverter 82 durch Kalkulieren von LSP-Parametern erstellt werden, durch das oben beschriebene Verfahren, aus einem LSP-Code, der in dem vorliegenden Rahmen empfangen wird, und einem LSP-Code, der in den vergangenen vier Rahmen empfangen wird.
  • Die oben beschriebene Prozedur kann nicht verwendet werden, falls der richtige LSP-Code des vorliegenden Rahmens wegen Kanalfehler oder Verschwinden eines Rahmens nicht empfangen werden kann. In der fünften Ausführungsform verwendet deshalb, falls ein Kanalfehler oder Verschwinden eines Rahmens aufgetreten ist, die LSP-Korrektureinheit 82c die folgende Gleichung, um den Restvektor l (n) / i aus den vergangenen vier guten Rahmen von LSP-Code, die zuletzt empfangen wurden, zu erstellen:
    Figure 00770001
    wobei p(i, k) den MA-Vorhersagekoeffizienten des empfangenen letzten guten Rahmens darstellt.
  • Wie oben dargelegt, kann somit der Restvektor l (n) / i des vorliegenden Rahmens in Übereinstimmung mit Gleichung (41) in dieser Ausführungsform gefunden werden, selbst wenn der Sprach code des vorliegenden Rahmens wegen Kanalfehler oder Verschwinden eines Rahmens nicht empfangen werden kann.
  • Der LSP-Codekonverter 82 führt eine Verarbeitung ähnlich zu der des LSP-Quantisierers 82b der ersten Ausführungsform aus. D.h. der LSP-Parameter lsp(i) von der LSP-Korrektureinheit 82c wird zu dem LSP-Codekonverter 82 eingegeben, der dann fortfährt, den LSP-Code für AMR durch Ausführen von Dequantisierungsverarbeitung identisch zu der der ersten Ausführungsform zu erhalten.
  • (e) Tonhöhennachlaufkorrektur und Tonhöhennachlaufcodekonvertierung
  • Es wird nun die Tonhöhennachlauf-Korrektureinheit 83c beschrieben. Falls ein Kanalfehler und Verschwinden eines Rahmens nicht aufgetreten ist, gibt die Tonhöhennachlauf-Korrektureinheit 83c den empfangenen Nachlaufcode des vorliegenden Rahmens als Lag1'(n, j) aus. Falls ein Kanalfehler oder Verschwinden eines Rahmens aufgetreten ist, agiert die Tonhöhennachlauf-Korrektureinheit 83c so, um, als Lag1'(n, j), den letzten guten Rahmen des empfangenen Tonhöhennachlaufcodes auszugeben. Dieser Code wurde im Puffer 83c gespeichert. Es ist bekannt, dass Tonhöhennachlauf allgemein allmählich in stimmhaften Segmenten variiert. In einem stimmhaften Segment gibt es deshalb nahezu keine Abnahme in der Klangqualität, selbst wenn der Tonhöhennachlauf des vorangehenden Rahmens ersetzt wird, wie zuvor erwähnt. Es ist bekannt, dass der Tonhöhennachlauf einer großen Konvertierung in stimmlosen Segmenten unterzogen wird. Da der Beitrag in dem adaptiven Codebuch in stimmlosen Segmenten klein ist (Tonhöhenverstärkung ist gering), gibt es jedoch nahezu keine Abnahme in der Klangqualität, die durch das oben beschriebene Verfahren verursacht wird.
  • Der Tonhöhennachlauf-Codekonverter 82 führt die gleiche Tonhöhennachlauf-Codekonvertierung durch wie die der ersten Ausführungsform. Während die Rahmenlänge gemäß dem G.729A-Verfahren 10 ms ist, ist speziell die Rahmenlänge gemäß AMR 20 ms. Wenn der Tonhöhennachlaufcode konvertiert wird, ist es deshalb notwendig, dass zwei Rahmen wert an Tonhöhennachlaufcode gemäß G.729A als ein Rahmen wert an Tonhöhennachlaufcode gemäß AMR konvertiert werden. Es wird ein Fall betrachtet, wo Tonhöhennachlaufcodes der n-ten und (n+1)-ten Rahmen in dem G.729A-Verfahren zu Tonhöhennachlaufcode des m-ten Rahmen in dem AMR-Verfahren konvertiert werden. Ein Tonhöhennachlaufcode ist das Ergebnis einer Kombination eines ganzzahligen Nachlaufs und eines nicht-ganzzahligen in ein Wort. In geraden Teilrahmen sind die Verfahren zum Synthetisieren und von Tonhöhennachlaufcodes in den Verfahren nach G.729A und AMR genau die gleichen und die Zahlen von Quantisierungsbits sind die gleichen, d.h. acht. Dies bedeutet, dass der Tonhöhennachlaufcode auf die Art und Weise konvertiert werden kann, die durch die folgenden Gleichungen angezeigt wird: LAG2(m, 0) = LAG1'(n, 0) (42) LAG2(m, 2) = LAG1'(n+1, 0) (43)
  • Ferner wird Quantisierung der Differenz zwischen einem ganzzahligen Nachlauf des vorliegenden Rahmens und einem ganzzahligen Nachlauf des vorangehenden Teilrahmens gemeinsam für die ungeraden Teilrahmen durchgeführt. Da jedoch die Zahl von Quantisierungsbits für das AMR-Verfahren eine größer ist, kann die Konvertierung durchgeführt werden, wie durch die folgenden Gleichungen angezeigt wird: LAG2(m, 1) = LAG1'(n, 1) + 15 (44) LAG2(m, 3) = LAG1'(n+1, 1) + 15 (45)
  • (f) Korrektur des algebraischen Codes und Konvertierung des algebraischen Codes
  • Falls ein Kanalfehler und Verschwinden eines Rahmens nicht aufgetreten sind, gibt die Korrektureinheit des algebraischen Codes 84c den empfangenen algebraischen Codes des vorliegenden Rahmens als PCB1'(n, j) aus. Falls ein Kanalfehler oder Verschwinden eines Rahmens aufgetreten ist, agiert die Korrektureinheit des algebraischen Codes 84c so, um, als PCB1'(n, j), den letzten guten Rahmen des empfangenen algebraischen Codes auszugeben. Dieser Code wurde in dem Puffer 84d gespeichert.
  • Der algebraische Codekonverter 84 führt die gleiche algebraische Codekonvertierung wie die der ersten Ausführungsform durch. Obwohl sich die Rahmenlänge in dem Verfahren nach G.729A von der in dem AMR-Verfahren unterscheidet, ist speziell die Teilrahmenlänge die gleiche für beide, nämlich 5 ms (40 Abtastungen). Ferner ist der Aufbau des algebraischen Codes in beiden Verfahren genau der gleiche. Entsprechend können die Impulspositionen und die Impulspolaritätsinformation, die die Ergebnisse sind, die von der algebraischen Codebuchsuche in dem Verfahren nach G.729A ausgegeben werden, auf einer Basis eins zu eins wie sie sind durch die Ergebnisse ersetzt werden, die von der algebraischen Codebuchsuche in dem AMR-Verfahren ausgegeben werden. Die Konvertierungen des algebraischen Codes sind, wie durch die folgenden Gleichungen angezeigt: PCB2(m, 0) = PCB1'(n, 0) (46) PCB2(m, 1) = PCB1'(n, 1) (47) PCB2(m, 2) = PCB1'(n+1, 0) (48) PCB2(m, 3) = PCB1'(n+1, 1) (49)
  • (g) Verstärkungscodekorrektur und Verstärkungscodekonvertierung
  • Falls ein Kanalfehler und Verschwinden eines Rahmens nicht aufgetreten sind, findet die Verstärkungscode-Korrektureinheit 85c die Tonhöhenverstärkung Ga(n, j) und die algebraische Codebuchverstärkung Gc(n, j) aus dem empfangenen Verstärkungscode Gain1(n, j) des vorliegenden Rahmens auf eine Art und Weise, die der der ersten Ausführungsform ähnlich ist. In Übereinstimmung mit dem Verfahren nach G.729A wird jedoch die algebraische Codebuchverstärkung nicht quantisiert wie sie ist. Stattdessen wird Quantisierung mit der Teilnahme der Tonhöhenverstärkung Ga(n, j) und eines Korrekturkoeffizienten γc für die algebraische Codebuchverstärkung durchgeführt.
  • Wenn der Verstärkungscode Gain1(n, j) dazu eingegeben wird, erhält die Verstärkungscode-Korrektureinheit 85c entsprechend die Tonhöhenverstärkung Ga(n, j) und den Korrekturkoeffizienten γc entsprechend dem Verstärkungscode Gain1(n, j) aus der G.729A-Verstärkungsquantisierungstabelle. Unter Verwendung des Korrekturkoeffizienten γc und des Vorhersagewertes gc', der aus der logarithmischen Energie der algebraischen Codebuchverstärkung der vergangenen vier Teilrahmen vorhergesagt wird, findet die Verstärkungscode-Korrektureinheit 85c die algebraische Codebuchverstärkung Gc(n, j) in Übereinstimmung mit Gleichung (21).
  • Falls ein Kanalfehler oder Verschwinden eines Rahmens aufgetreten ist, kann der Verstärkungscode des vorliegenden Rahmens nicht verwendet werden. Entsprechend werden die Tonhöhenverstärkung Ga(n, j) und die algebraische Codebuchverstärkung Gc(n, j) durch Dämpfen der Verstärkung des unmittelbar vorangehenden Teilrahmens, der in Puffern 85d1, 85d2 gespeichert ist, gefunden, wie durch Gleichungen (50) bis (53) nachstehend angezeigt wird. Hier sind α, β Konstanten gleich 1 oder weniger. Die Tonhöhenverstärkung Ga(n, j) und die algebraische Codebuchverstärkung Gc(n, j) sind die Ausgaben der Verstärkungscode-Korrektureinheit 85c. Ga(n, 0) = α·Ga(n – 1) (50) Ga(n, 1) = α·Ga(n, 0) (51) Gc(n, 0) = β·Gc(n – 1, 1) (52) Gc(n, 1) = β·Gc(n, 0) (53)
  • Es werden nun Verstärkungskonverter 85b1', 85b2' beschrieben.
  • In dem AMR-Verfahren werden die Tonhöhenverstärkung und algebraische Codebuchverstärkung getrennt quantisiert. Die algebraische Codebuchverstärkung wird jedoch nicht direkt quantisiert. Stattdessen wird ein Korrekturkoeffizient für die algebraische Codebuchverstärkung quantisiert. Zuerst wird die Tonhöhenverstärkung Ga(n, 0) zu dem Tonhöhenverstärkungskonverter 85b1' eingegeben und wird skalarer Quantisierung unterzogen. Werte von 16 Typen (vier Bits), die gleichen wie jene des AMR-Verfahrens, wurden in der skalaren Quantisierungstabelle gespeichert. Das Quantisierungsverfahren enthält Kalkulieren des Quadrates des Fehlers zwischen der Tonhöhenverstärkung Ga(n, 0) und jedem Tabellenwert, Annehmen des Tabellenwertes, für den der kleinste Fehler erhalten wird, als den optimalen Wert und Annehmen dieses Index als die gain2a(m, a).
  • Der algebraische Codebuchverstärkungskonverter 85b2' quantisiert γc(n, 0) skalar. Werte von 32 Typen (fünf Bits), die gleichen wie jene des AMR-Verfahrens, wurden in dieser skalaren Quantisierungstabelle gespeichert. Das Quantisierungsverfahren enthält Kalkulieren des Quadrates des Fehlers zwischen γc(n, 0) und jedem Tabellenwert, Annehmen des Tabellenwertes, für den der kleinste Fehler erhalten wird, als den optimalen Wert und Annehmen dieses Index als die gain2c(m, 0).
  • Eine ähnliche Verarbeitung wird ausgeführt, um Gain2a(m,1) und Gain2c(m, 1) aus Gain1(n, 1) zu finden. Ferner werden Gain2a(m, 2) und Gain2c(m, 2) aus Gain1(n+1, 0) gefunden, und Gain2a(m, 3) und Gain2c(m, 3) werden aus Gain1(n+1, 1) gefunden.
  • (h) Codemultiplexierung
  • Der Codemultiplexer 86 behält konvertierten Code bei, bis die Verarbeitung von zwei Rahmen wert (ein Rahmen wert in dem AMR-Verfahren) an G.729A-Code abgeschlossen ist, verarbeitet zwei Rahmen des G.729A-Codes und gibt Sprachcode sp2(m) aus, wenn ein Rahmen wert an AMR-Code in seiner Gesamtheit vorbereitet wurde.
  • Wie oben beschrieben, ist diese Ausführungsform somit derart, dass falls ein Kanalfehler oder Verschwinden eines Rahmens auftritt, es möglich ist, die Effekte des Fehlers zu mindern, wenn G.729A-Sprachcode zu AMR-Code konvertiert wird. Als ein Ergebnis ist es möglich, ausgezeichnete Sprachqualität zu erreichen, in der eine Abnahme der Qualität vom Klang im Vergleich zu dem konventionellen Sprachcodekonverter vermindert wird.
  • In Übereinstimmung mit der vorliegenden Erfindung werden somit Codes einer Vielzahl von Komponenten, die notwendig sind, um ein Sprachsignal zu rekonstruieren, von einem Sprachcode getrennt basierend auf einem ersten Sprachkodierungsverfahren, der Code jeder Komponente wird dequantisiert und die dequantisierten Werte werden durch ein zweites Kodierungsverfahren quantisiert, um die Codekonvertierung zu erreichen. Als ein Ergebnis kann Verzögerung gegenüber der reduziert werden, die bei der konventionellen Tandemverbindung angetroffen wird, und eine Abnahme in der Klangqualität kann ebenso reduziert werden.
  • In Übereinstimmung mit der vorliegenden Erfindung wird in einem Fall, wo ein LSP-Code des ersten Anregungssignals dequantisiert wird und ein dequantisierter Wert LSP1(i) durch das zweite Kodierungsverfahren quantisiert wird, um die Codekonvertierung zu erreichen, wenn eine Konvertierung von LSP-Code durchgeführt wird, nicht nur ein erster Abstand (Fehler) zwischen dem dequantisierten Wert LSP1(i) und einem dequantisierten Wert LSPc3(i) von LSP-Code, der durch Konvertierung erhalten wird, sondern auch ein zweiter Abstand (Fehler) zwischen einem dequantisierten Wert eines Zwischen-LSP-Codes LSP0(i) des ersten Quantisierungsverfahrens und einem dequantisierten Wert eines Zwischen-LSP-Codes LSPc1(i) des zweiten Kodierungsverfahrens, der durch Interpolation kalkuliert wird, berücksichtigt und eingegeben, um die LSP-Code konvertierung zu erreichen. Als ein Ergebnis ist es möglich, eine ausgezeichnete Sprachcodekonvertierung mit geringem Konvertierungsfehler sogar in einem Fall durchzuführen, wo die Qualität der eingegebenen Sprache innerhalb des Rahmens variiert.
  • In Übereinstimmung mit der vorliegenden Erfindung werden ferner die ersten und zweiten Abstände gewichtet und ein dequantisierter Wert eines LPC-Koeffizienten LSP1(i) wird zu einem LPC-Code in dem zweiten Kodierungsverfahren auf eine derartige Art und Weise kodiert, dass die Summe der gewichteten ersten und zweiten Abstände minimiert sein wird. Dies macht es möglich, eine Sprachcodekonvertierung mit einem kleineren Konvertierungsfehler durchzuführen.
  • In Übereinstimmung mit der vorliegenden Erfindung werden ferner LPC-Koeffizienten durch Vektoren von Größe n ausgedrückt, die Vektoren von Größe n werden in eine Vielzahl von kleinen Vektoren (Vektoren geringer, mittlerer und hoher Frequenz) unterteilt, eine Vielzahl von Codekandidaten, für die die Summe der ersten und zweiten Abstände klein sein wird, wird für jeden kleinen Vektor kalkuliert, Codes werden einer zu einer Zeit aus der Vielzahl von Codekandidaten von jedem kleinen Vektor ausgewählt und als LPC-Codes von Größe n angenommen, und ein LPC-Code von Größe n wird basierend auf einer Kombination entschieden, für die die Summe der ersten und zweiten Abstände minimiert ist. Als ein Ergebnis kann eine Sprachcodekonvertierung durchgeführt werden, die die Rekonstruktion von Klang höherer Qualität möglich macht.
  • In Übereinstimmung mit der vorliegenden Erfindung ist es ferner möglich, ausgezeichnete rekonstruierte Sprache nach Konvertierung durch Minderung einer Abnahme in der Klangqualität, die durch ein Kanalfehler verursacht wird, was ein Problem bei dem konventionellen Sprachcodekonverter ist, vorzusehen. Insbesondere in dem Fall von CELP-Algorithmen, die in Sprachkodierung geringer Bitrate in den letzten Jahren weithin verwendet wurden, wird ein IIR-Filter als ein Sprachsynthesefilter verwendet, und als ein Ergebnis ist das System gegenüber dem Einfluss eines Kanalfehlers und großer anomaler Klänge, die durch Oszillation häufig erzeugt werden, empfänglich. Die Verbesserung, die durch die vorliegende Erfindung geboten wird, ist insbesondere bei einer Behandlung dieses Problems effektiv.
  • Es sollte vermerkt werden, dass obwohl die vorliegende Erfindung hinsichtlich Sprachsignalen und Sprachcodes beschrieben wurde, sie auf andere auf Klang bezogene Signale und Codes anwendbar ist, die als "akustische Signale" und "akustische Codes" bezeichnet werden können.
  • Da viele offensichtlich weit unterschiedliche Ausführungsformen der vorliegenden Erfindung durchgeführt werden können, ohne von ihrem Bereich abzuweichen, ist zu verstehen, dass die Erfindung nicht auf die spezifischen Ausführungsformen davon begrenzt ist, außer wie in den angefügten Ansprüchen definiert.

Claims (22)

  1. Ein Sprachcodierungsumwandlungsgerät, in dem ein aus einem ersten Sprachcodierungsverfahren erhaltener Sprachcode eingegeben wird zum Umwandeln dieses Sprachcodes in einen Sprachcode eines zweiten Sprachcodierungsverfahrens, wobei das Gerät umfasst: ein Codeseparierungsmittel (81) zum Separieren von dem auf dem ersten Sprachcodierungsverfahren beruhenden Sprachcode in Codes einer Mehrzahl von für eine Rekonstruktion eines Sprachsignals notwendiger Komponenten; ein Sprachumwandlungsmittel (82-85) zum Umwandeln der separierten Codes der Mehrzahl von Komponenten in Sprachcodes des zweiten Sprachcodierungsverfahrens; und Mittel (86) zum Multiplexen der von entsprechenden einen der Codeumwandlungsmittel ausgegebenen Codes und Ausgeben eines Sprachcodes, der auf dem zweiten Sprachcodierungsverfahren beruht, und wobei das Codeumwandlungsmittel einschließt: Dequantisierer (82, 83a, 84a, 85a) zum Dequantisieren der separierten Codes von jeder der Komponenten des ersten Sprachcodierungsverfahrens und Ausgeben dequantisierter Werte; und Quantisierer (82b, 83b, 84b, 85b, 85b1 , 85b2 ) zum Quantisieren jedes der quantisierten Werte, die von entsprechenden einen der Dequantisierer ausgegeben werden, durch das zweite Sprachcodierungsverfahren zum Erzeugen von Codes.
  2. Sprachcodierungsumwandlungsgerät gemäß Anspruch 1, dadurch gekennzeichnet, dass eine feste Anzahl von Abtastungen eines Sprachsignals angepasst sind als ein Rahmen zum Erhalten eines ersten LPC-Codes, der durch Quantisieren von linearen Vorhersagekoeffizienten (LPC-Koeffizienten) erhalten wird, die erhalten werden durch eine lineare Rahmen-für-Rahmen Vorhersageanalyse, oder LSP-Parameter, die aus diesen LPC-Koeffizienten gefunden werden; eines ersten Abstandsverzögerungscodes, der ein Ausgabesignal eines adaptiven Codebuches spezifiziert, das für ein Ausgeben eines periodischen Klang-Quellensignals dient; eines ersten Rauschcodes, der ein Ausgabesignal eines Rauschcodebuches spezifiziert, das zum Ausgeben eines rauschbehafteten Klang-Quellensignals dient; und eines ersten Verstärkungscodes, der durch Quantisieren einer adaptiven Codebuchverstärkung erhalten wird, die eine Amplitude des Ausgabesignals des adaptiven Codebuches darstellt, und einer Rauschcodebuchverstärkung, die eine Amplitude des ausgegebenen Signals des Rauschcodebuches darstellt; wobei ein Verfahren zum Codieren des Sprachsignals durch diese Codes das erste Sprachcodierungsverfahren ist und ein Verfahren zum Codieren des Sprachsignals durch einen zweiten LPC-Code, eines zweiten Abstandsverzögerungscodes, eines zweiten Rauschcodes und eines zweiten Verstärkungscodes, die durch Quantisieren gemäß eines Quantisierungsverfahrens verschieden von dem des ersten Sprachcodierungsverfahrens erhalten werden, das zweite Sprachcodierungsverfahren ist; und wobei das Codeumwandlungsmittel einschließt: ein LPC-Codeumwandlungsmittel (82, 82a, 82b) zum Dequantisieren des ersten LPC-Codes durch ein LPC-Dequantisierungsverfahren gemäß dem ersten Sprachcodierungsverfahren und Quantisieren der dequantisierten Werte von LPC-Koeffizienten unter Verwenden einer LPC-Quantisierungstabelle gemäß dem zweiten Sprachcodierungsverfahren zum Finden des zweiten LPC-Codes; ein Abstandsverzögerungsumwandlungsmittel (83, 83a, 83b) zum Umwandeln des ersten Abstandsverzögerungscodes in den zweiten Abstandsverzögerungscode durch eine Umwandlungsverarbeitung, die eine Differenz zwischen dem Abstandsverzögerungscode gemäß dem ersten Sprachcodierungsverfahren und dem Abstandsverzögerungscode gemäß dem zweiten Sprachcodierungsverfahren in Betracht zieht; ein Rauschcodeumwandlungsmittel (84, 84a, 84b) zum Umwandeln des ersten Rauschcodes in den zweiten Rauschcode durch Umwandlungsverarbeitung, die einen Unterschied zwischen dem Rauschcode gemäß dem ersten Sprachcodierungsverfahren und dem Rauschcode gemäß dem zweiten Sprachcodierungsverfahren in Betracht zieht; ein Verstärkungsdequantisierungsmittel (85a) zum Dequantisieren des ersten Verzögerungscodes durch ein Verstärkungsdequantisierungsverfahren gemäß dem ersten Sprachcodierungsverfahren, um dadurch einen Verstärkungsdequantisierungswert zu finden; und ein Verstärkungscodeumwandlungsmittel (85b) zum Quantisieren des verstärkungsdequantisierten Wertes unter Verwenden einer Verstärkungsquantisierungstabelle gemäß dem zweiten Sprachcodierungsverfahren zum Umwandeln des verstärkungsdequantisierten Wertes in dem zweite n Verstärkungscode.
  3. Gerät gemäß Anspruch 2, wobei das Verstärkungsdequantisierungsmittel (85a) einen dequantisierten Wert einer adaptiven Codebuchverstärkung (Ga) und einen dequantisierten Wert einer Rauschcodebuchverstärkung (Gc) durch Dequantisieren des ersten Verstärkungscodes durch das Verstärkungsdequantisierungsverfahren gemäß dem ersten Sprachcodierungsverfahren auffindet; und das Verstärkungscodeumwandlungsmittel (85b, 85b1 , 85b2 ) einen adaptiven Codebuchverstärkungscode und einen Rauschcodebuchverstärkungscode durch separates Quantisieren der dequantisierten Werte der adaptiven Codebuchverstärkung und Rauschcodebuchverstärkung unter Verwenden der Verstärkungsquantisierungstabelle gemäß dem zweiten Sprachcodierungsverfahren erzeugt und den zweiten Verstärkungscode aus diesen zwei Verstärkungscodes konstruiert.
  4. Gerät gemäß Anspruch 3, wobei das Verstärkungscodeumwandlungsmittel (85b) einschließt: ein erstes Verstärkungscodeumwandlungsmittel (85b1 ) zum Erzeugen des adaptiven Codebuchverstärkungscodes durch Quantisieren der dequantisierten Werte einer adaptiven Codebuchverstärkung unter Verwenden de r Verstärkungsquantisierungstabelle gemäß de zweiten Sprachcodierungsverfahren; und ein zweites Verstärkungscodeumwandlungsmittel (85b2 ) zum Erzeugen des Rauschcodebuchverstärkungscodes durch Quantisieren der dequantisierten Werte einer Rauschcodebuchverstärkung unter Verwenden der Verstärkungsquantisierungstabelle gemäß dem zweiten Sprachcodierungsverfahren.
  5. Gerät gemäß Anspruch 2, wobei eine Rahmenlänge gemäß dem ersten Sprachcodierungsverfahren die Hälfte der Rahmenlänge gemäß dem zweiten Sprachcodierungsverfahren ist, wobei ein Rahmen gemäß dem ersten Sprachcodierungsverfahren zwei Unterrahmen einschließt, ein Rahmen gemäß dem zweiten Sprachcodierungsverfahren schließt vier Unterrahmen ein, das erste Sprachcodierungsverfahren drückt einen Abstandverzögerungscode aus durch n0, n1 Bits Unterrahmen-für-Unterrahmen und das zweite Sprachcodierungsverfahren drückt einen Abstandsverzögerungscode aus durch n0, (n1+1), n0, (n1+1) Bits Unterrahmen-für-Unterrahmen, und das Abstandsverzögerungscodeumwandlungsmittel (83) wandelt den ersten Abstandsverzögerungscode in den zweiten Abstandsverzögerungscode um durch: Erstellen von vier aufeinanderfolgenden Unterrahmen, in denen ein Abstandsverzögerungscode ausgedrückt wird, aufeinanderfolgend durch die n0, n1, n0, n1 Bits, von zwei aufeinanderfolgenden Rahmen gemäß dem ersten Sprachcodierungsverfahren; Adaptieren der Abstandsverzögerungscodes des ersten und dritten Unterrahmens als Abstandsverzögerungscodes des ersten und dritten Unterrahmens gemäß dem zweiten Sprachcodierungsverfahren; und Adaptieren von Abstandsverzögerungscodes, die durch Hinzufügen eines konstanten Wertes zu den Abstandsverzögerungscodes der zweiten und vierten Unterrahmen erhalten werden, als Abstandsverzögerungscodes der zweiten und vierten Unterrahmen des zweiten Sprachcodierungsverfahrens.
  6. Gerät gemäß Anspruch 2, wobei eine Rahmenlänge gemäß dem ersten Sprachcodierungsverfahren die Hälfte de r Rahmenlänge gemäß dem zweiten Sprachcodierungsverfahren ist, wobei ein Rahmen gemäß dem ersten Sprachcodierungsverfahren zwei Unterrahmen einschließt, ein Rahmen gemäß dem zweiten Sprachcodierungsverfahren vier Unterrahmen einschließt, das erste Sprachcodierungsverfahren einen Rauschcode durch m1, ml Bits Unterrahmen-für-Unterrahmen ausdrückt und das zweite Sprachcodierungsverfahren einen Rauschcode durch m1, m1, m1, m1 Bits Unterrahmen-für-Unterrahmen ausdrückt, und das Rauschcodeumwandlungsmittel (84) den ersten Rauschcode in den zweiten Rauschcode umwandelt durch: Erstellen von vier aufeinanderfolgenden Unterrahmen, in denen ein Rauschcode ausgedrückt wird aufeinanderfolgend durch die m1, m1, m1, m1 Bits von zwei aufeinanderfolgenden Rahmen gemäß dem ersten Sprachcodierungsverfahren; und Adaptieren der Rauschcodes der ersten bis vierten Unterrahmen als Rauschcodes der ersten bis vierten Unterrahmen gemäß dem zweiten Sprachcodierungsverfahren.
  7. Gerät gemäß Anspruch 2, wobei das LPC-Codeumwandlungsmittel (82) einschließt: eine erste arithmetische Einheit (CPU, MEM, 104) zum Berechnen einer ersten Distanz zwischen einem dequantisierten Wert des ersten LPC-Codes und einem dequantisierten Wert des zweiten LPC-Codes, der gefunden wurde; einen Interpolator (CPU, MEM, 105) zum Interpolieren eines dequantisierten Wertes eines zweiten Zwischen-LPC-Codes unter Verwenden eines dequantisierten Wertes des zweiten LPC-Codes eines vorliegenden Rahmens und eines dequantisierten Wertes des zweiten LPC-Codes des vorherigen Rahmens; eine zweite arithmetische Einheit (CPU, MEM, 106) zum Berechnen einer zweiten Distanz zwischen einem dequantisierten Wert eines ersten Zwischen-LPC-Codes und eines dequantisierten Wertes des zweiten Zwischen-LPC-Codes, der durch die Interpolation gefunden worden ist; und einen Codierer (CPU, MEM, 107-112) zum Codieren dequantisierter Werte der LPC-Koeffizienten in die zweiten LPC-Codes, um die Summe der ersten und zweiten Distanzen zu minimieren.
  8. Gerät gemäß Anspruch 7, ferner umfassend Gewichtungsmittel zum Gewichten der ersten und zweiten Distanzen, wobei der Codierer die dequantisierten Werte der LPC-Koeffizienten in die zweiten LPC-Codes codiert, um die Summe der gewichteten ersten und zweiten Distanzen zu minimieren.
  9. Gerät gemäß Anspruch 8, wobei das LPC-Codeumwandlungsmittel (85) einschließt: ein Codekandidatenberechnungsmittel (CPU, MEM, 211, 213, 215), das, wenn LPC-Koeffizienten durch einen n-Ordnungsvektor ausgedrückt werden und der n-Ordnungsvektor in eine Mehrzahl von kleinen Vektoren geteilt wird, zum Berechnen einer Mehrzahl von Codekandidaten dient, für die die Summe der ersten und zweiten Distanzen klein ist, auf einer Pro-kleinen-Vektorgrundlage; und ein LPC-Codeentscheidungsmittel (CPU, MEM, 216217), das, wenn die Codes einer nach dem anderen aus der Mehrzahl von Codekandidaten für jeden kleinen Vektor selektiert wurden und adaptiert sind als ein n-Ordnungs-LPC-Code von LPC-Koeffizienten dequantisierten Werten, zum Entscheiden eines n-Ordnungs-LPC-Codes dient, für den die Summe der ersten und zweiten Distanzen minimiert wird und Adaptieren dieses LPC-Codes als den zweiten LPC-Code.
  10. Sprachcodierungsumwandlungsgerät gemäß Anspruch 1, dadurch gekennzeichnet, dass eine feste Anzahl von Abtastungen eines Sprachsignals als ein Rahmen adaptiert wird zum Erhalten eines ersten LPC-Codes, der durch Quantisieren lineare Vorhersagekoeffizienten (LPC-Koeffizienten) erhalten wird, die durch eine lineare Rahmen-für-Rahmen Vorhersageanalyse erhalten werden, oder LSP-Parameter, die aus diesem LPC-Koeffizienten gefunden wurden; eines ersten Abstandsverzögerungscodes, der ein Ausgabesignale eines adaptiven Codebuches spezifiziert, das zum Ausgeben eines periodischen Klang-Quellensignals dient; eines ersten Rauschcodes, der ein Ausgabesignals eines Rauschcodebuches spezifiziert, das zum Ausgeben eines rauschbehafteten Klang-Quellensignals dient; eines ersten adaptiven Codebuchverstärkungscodes, der durch Quantisieren adaptiver Codebuchverstärkung erhalten wird, die eine Amplitude des Ausgabesignals des adaptiven Codebuches darstellt; und eines ersten Rauschcodebuchverstärkungscodes, der durch Quantisieren von Rauschcodebuchverstärkung erhalten wird, die eine Amplitude des Ausgabesignals des Rauschcodebuches darstellt; wobei ein Verfahren zum Codieren des Sprachsignals durch diese Codes das erste Sprachcodierungsverfahren ist und ein Verfahren zum Codieren des Sprachsignals durch einen zweiten LPC-Code, einen zweiten Abstandsverzögerungscode, einen zweiten Rauschcode und einen zweiten Verstärkungscode, die durch Quantisieren gemäß einem Quantisierungsverfahren unterschiedlich von dem des ersten Sprachcodierungsverfahrens erhalten werden, das zweite Sprachcodierungsverfahren ist; und wobei das Codeumwandlungsmittel einschließt: ein LPC-Codeumwandlungsmittel (82, 82a, 82b) zum Dequantisieren des ersten LPC-Codes durch ein LPC-Dequantisierungsverfahren gemäß dem ersten Sprachcodierungsverfahren und Quantisieren der dequantisierten Werte von LPC-Koeffizienten unter Verwenden einer LPC-Quantisierungstabelle gemäß dem zweiten Sprachcodierungsverfahren zum Finden des zweiten LPC-Codes; ein Abstandsverzögerungsumwandlungsmittel (83, 83a, 83b) zum Umwandeln des ersten Abstandsverzögerungscodes in den zweiten Abstandsverzögerungscode durch Umwandlungsverarbeitung, die eine Differenz zwischen dem Abstandsverzögerungscode gemäß dem ersten Sprachcodierungsverfahren und dem Abstandsverzögerungscode gemäß dem zweiten Sprachcodierungsverfahren in Betracht zieht; ein Rauschcodeumwandlungsmittel (84, 84a, 84b) zum Umwandeln des ersten Rauschcodes in den zweiten Rauschcode durch eine Umwandlungsverarbeitung, die eine Differenz zwischen dem Rauschcode gemäß dem ersten Sprachcodierungsverfahren und dem Rauschcode gemäß dem zweiten Sprachcodierungsverfahren in Betracht zieht; und ein Verstärkungscodeumwandlungsmittel (85, 85a1 , 85a2 , 85b) zum Erzeugen des zweiten Verstärkungscodes durch kollektives Quantisieren, unter Verwenden einer Verstärkungsquantisierungstabelle gemäß dem zweiten Sprachcodierungsverfahren, einem dequantisierten Wert (Ga), der durch Dequantisieren des ersten adaptiven Codebuchverstärkungscodes durch ein Verstärkungsdequantisierungsverfahren gemäß dem ersten Sprachcodierungsverfahren erhalten wird, und einem dequantisierten Wert (Ga), der durch Dequantisieren des ersten Rauschcodebuchverstärkungscodes durch das Verstärkungsdequantisierungsverfahren gemäß dem ersten Sprachcodierungsverfahren erhalten wird.
  11. Gerät gemäß Anspruch 10, wobei das LPC-Codeumwandlungsmittel einschließt: eine erste arithmetische Einheit (CPU, MEM, 104) zum Berechnen einer ersten Distanz zwischen einem dequantisierten Wert des ersten LPC-Codes und einem dequantisierten Wert des zweiten LPC-Codes, der gefunden worden ist; einen Interpolator (CPU, MEM, 105) zum Interpolieren eines dequantisierten Wertes eines zweiten Zwischen-LPC-Codes unter Verwenden eines dequantisierten Wertes des zweiten LPC-Codes eines vorliegenden Rahmens und eines dequantisierten Wertes des zweiten LPC-Codes des vorherigen Rahmens; eine zweite arithmetische Einheit (CPU, MEM, 106) zum Berechnen einer zweiten Distanz zwischen einem dequantisierten Wert eines ersten Zwischen-LPC-Codes und eines dequantisierten Wertes des zweiten Zwischen-LPC-Codes, der durch die Interpolation gefunden worden ist; und einen Codierer (CPU, MEM, 107-112) zum Codieren dequantisierter Werte der LPC-Koeffizienten in die zweiten LPC-Codes, um so die Summe der ersten und zweiten Distanzen zu minimieren.
  12. Gerät gemäß Anspruch 11, ferner umfassend ein Gewichtungsmittel zum Gewichten der ersten und zweiten Distanzen, wobei der Codierer die dequantisierten Werte der LPC-Koeffizienten in den zweiten LPC-Code codiert, um so die Summe der gewichteten ersten und zweiten Distanzen zu minimieren.
  13. Gerät gemäß Anspruch 12, wobei das LPC-Codeumwandlungsmittel (85) einschließt: ein Codekandidatenberechnungsmittel (CPU, MEM, 211, 213, 215), das, wenn LPC-Koeffizienten oder LSP-Parameter durch einen n-Ordnungsvektor ausgedrückt werden und der n-Ordnungsvektor geteilt wird in eine Mehrzahl von kleinen Vektoren zum Berechnen einer Mehrzahl von Codekandidaten dient, für die die Summe der ersten und zweiten Distanzen klein ist, auf einer Pro-kleinen-Vektorgrundlage; und ein LPC-Codeentscheidungsmittel (CPU, MEM, 216-217), das, wenn Codes einer nach dem anderen aus der Mehrzahl von Codekandidaten für jeden kleinen Vektor ausgewählt werden und als ein n-Ordnungs-LPC-Code von LPC-Koeffizienten dequantisierten Werten adaptiert sind, für ein Entscheiden eines n-Ordnungs-LPC-Codes dient, für die die Summe der ersten und zweiten Distanzen minimiert wird, und Adaptieren dieses LPC-Codes als den zweiten LPC-Code.
  14. Gerät gemäß Anspruch 10, wobei eine Rahmenlänge gemäß dem ersten Sprachcodierungsverfahren zweimal die Rahmenlänge gemäß dem zweiten Sprachcodierungsverfahren ist, ein Rahmen gemäß dem ersten Sprachcodierungsverfahren vier Unterrahmen einschließt, ein Rahmen gemäß dem zweiten Sprachcodierungsverfahren zwei Unterrahmen einschließt, das erste Sprachcodierungsverfahren einen Abstandverzögerungscode ausdrückt durch n1, (n1+1), n0 (n1+1) Bits Unterrahmen-für-Unterrahmen und das zweite Sprachcodierungsverfahren einen Abstandsverzögerungscode ausdrückt durch n0, n1 Bits Unterrahmen-für-Unterrahmen, und das Abstandsverzögerungscodeumwandlungsmittel (83) den ersten Abstandsverzögerungscode in den zweiten Abstandsverzögerungscode umwandelt durch: Adaptieren von Abstandsverzögerungscodes der ersten und dritten Unterrahmen aus den Abstandsverzögerungscodes, die ausgedrückt werden durch die n0, (n1+1), n0 (n1+1) Bits in vier aufeinanderfolgenden Unterrahmen gemäß dem ersten Sprachcodierungsverfahren, als Abstandsverzögerungscodes der ersten Unterrahmen von aufeinanderfolgenden ersten und zweiten Rahmen gemäß dem zweiten Sprachcodierungsverfahren; und Adaptieren von Abstandsverzögerungscodes, die erhalten werden durch Subtrahieren eines konstanten Wertes von den Abstandsverzögerungscodes der zweiten und vierten Unterrahmen als Abstandsverzögerungscodes von zweiten Unterrahmen von aufeinanderfolgenden ersten und zweiten Rahmen gemäß dem zweiten Sprachcodierungsverfahren.
  15. Gerät gemäß Anspruch 10, wobei eine Rahmenlänge gemäß dem ersten Sprachcodierungsverfahren zweimal die Rahmenlänge gemäß dem zweiten Sprachcodierungsverfahren sind, ein Rahmen gemäß dem ersten Sprachcodierungsverfahren vier Unterrahmen einschließt, ein Rahmen gemäß dem zweiten Sprachcodierungsverfahren zwei Unterrahmen einschließt, das erste Sprachcodierungsverfahren jeden der Rauschcodes der vier Unterrahmen ausdrückt durch m1, m1, m1, m1 und das zweite Sprachcodierungsverfahren jeden der Rauschcodes der zwei Unterrahmen ausdrückt durch m1, m1, und das Rauschcodeumwandlungsmittel (84) den ersten Rauschcode in den zweiten Rauschcode umwandelt durch: Adaptieren des Rauschcodes der ersten und zweiten Unterrahmen gemäß dem ersten Sprachcodierungsverfahren als Rauschcodes der ersten und zweiten Unterrahmen des ersten Rahmens gemäß dem zweiten Sprachcodierungsverfahren; und Adaptieren der Rauschcodes der dritten und vierten Unterrahmen gemäß dem ersten Sprachcodierungsverfahren als Rauschcodes der ersten und zweiten Unterrahmen des zweiten Rahmens gemäß dem zweiten Sprachcodierungsverfahren.
  16. Sprachcodeumwandlungsgerät gemäß Anspruch 1, dadurch gekennzeichnet, dass das Gerät ferner umfasst: ein Codekorrekturmittel (82c, 83c, 84c, 85c) zum Eingeben der separierten Codes in das Codeumwandlungsmittel, wenn ein Übermittlungspfadfehler nicht aufgetreten ist, und Eingeben von Codes, die durch Anwenden einer Fehlerverbergungsverarbeitung auf die separierten Codes erhalten werden auf das Codeumwandlungsmittel, wenn ein Übermittlungspfadfehler aufgetreten ist.
  17. Sprachcodeumwandlungsgerät gemäß Anspruch 16, dadurch gekennzeichnet, dass eine feste Anzahl von Abtastungen eines Sprachsignals adaptiert sind als ein Rahmen zum Erhalten eines ersten LPC-Codes, der durch Quantisieren linear vorhergesagter Koeffizienten (LPC-Koeffizienten) erhalten wird, die erhalten werden durch eine lineare Rahmen-für-Rahmen Vorhersagungsanalyse, oder LSP-Parameter, die aus diesem LPC-Koeffizienten gefunden werden; einen ersten Abstandsverzögerungscode, der ein Ausgabesignal eines adaptiven Codebuches spezifiziert, das zum Ausgeben eines periodischen Klang-Quellensignals dient; eines ersten algebraischen Codes, der ein Ausgabesignal eines algebraischen Codebuches spezifiziert, das zum Ausgeben eines rauschbehafteten Klang-Quellensignals dient; und einen ersten Verstärkungscodes, der durch eine Abstandsverstärkung erhalten wird, die eine Amplitude des Ausgabesignals des adaptiven Codebuches darstellt, und einer algebraischen Codebuchverstärkung, die eine Amplitude des Ausgabesignals des algebraischen Codebuches darstellt; wobei ein Verfahren zum Codieren des Sprachsignals durch diese Codes das erste Sprachcodierungsverfahren und ein Verfahren zum Codieren des Sprachsignals durch einen zweiten LPC-Code, einen zweiten Abstandsverzögerungscode, einen zweiten algebraischen Code und einen zweiten Verstärkungscode darstellt, die erhalten werden durch Quantisieren gemäß eines Quantisierungsverfahrens unterschiedlich von dem des ersten Sprachcodierungsverfahrens, das zweite Sprachcodierungsverfahren ist.
  18. Gerät gemäß Anspruch 17, wobei, wenn ein Übermittlungspfadfehler in dem vorliegenden aufgetreten ist, das Fehlerkorrekturmittel (82c) einen LPC-Dequantisierungswert des vorliegenden Rahmens durch einen LPC-Dequantisierungswert eines vergangenen Rahmens abschätzt und das Codeumwandlungsmittel (82) den LPC-Code in dem vorliegenden Rahmen aus dem abgeschätzten LPC dequantisierten Wert findet, der auf dem zweiten akustischen Codierungsverfahren beruht.
  19. Gerät gemäß Anspruch 17, wobei, wenn ein Übermittlungspfadfehler in dem vorliegenden Rahmen aufgetreten ist, das Fehlerkorrekturmittel (83c) die Fehlerverbergungsverarbeitung durch Adaptieren eines vergangenen Abstandsverzögerungscodes als den Abstandsverzögerungscode des vorliegenden Rahmens ausführt, und das Codeumwandlungsmittel (83) aus dem vergangenen Abstandsverzögerungscode den Abstandsverzögerungscode in den vorliegenden Rahmen findet, der auf dem zweiten akustischen Codierungsverfahren beruht.
  20. Gerät gemäß Anspruch 17, wobei, wenn ein Übermittlungspfadfehler in dem vorliegenden Rahmen aufgetreten ist, das Fehlerkorrekturmittel (84c) die Fehlerverbergungsverarbeitung durch Adaptieren eines vergangenen algebraischen Codes als den algebraischen Code des vorliegenden Rahmens ausführt, und das Codeumwandlungsmittel (84) aus dem vergangenen algebraischen Code den algebraischen Code in dem vorliegenden Rahmen findet, der auf dem zweiten akustischen Codierungsverfahren beruht.
  21. Gerät gemäß Anspruch 17, wobei, wenn ein Übermittlungspfadfehler in dem vorliegenden Rahmen aufgetreten ist, das Fehlerkorrekturmittel (85c) einen Verstärkungscode des vorliegenden Rahmens durch einen vergangenen Verstärkungscode abschätzt, und das Codeumwandlungsmittel (85b1', 85b2') aus dem abgeschätzten Verstärkungscode den Verstärkungscode des vorliegenden Rahmens findet, der auf dem zweiten akustischen Codierungsverfahren beruht.
  22. Gerät gemäß Anspruch 17, wobei, wenn ein Übermittlungspfadfehler in dem vorliegenden Rahmen aufgetreten ist, das Fehlerkorrekturmittel (85c) einen Abstandsverstärkung Ga findet, die aus einem dequantisierten Wert einer vergangenen Abstandsverstärkung erhalten wird und eine algebraische Codebuchverstärkung Gc findet, die aus einem dequantisierten Wert einer vergangenen algebraischen Codebuchverstärkung erhalten wird, und das Codeumwandlungsmittel (85b1', 85b2') aus dieser Abstandsverstärkung Ga und algebraischen Codebuchverstärkung Gc den Verstärkungscode in dem vorliegenden Rahmen findet, der auf dem zweiten akustischen codierten Verfahren beruht.
DE60121405T 2000-10-30 2001-03-26 Transkodierer zur Vermeidung einer Kaskadenkodierung von Sprachsignalen Expired - Lifetime DE60121405T2 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2000033108 2000-10-30
JP2000330108 2000-10-30
JP2001075427A JP2002202799A (ja) 2000-10-30 2001-03-16 音声符号変換装置
JP2001075427 2001-03-16

Publications (2)

Publication Number Publication Date
DE60121405D1 DE60121405D1 (de) 2006-08-24
DE60121405T2 true DE60121405T2 (de) 2007-02-01

Family

ID=26603011

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60121405T Expired - Lifetime DE60121405T2 (de) 2000-10-30 2001-03-26 Transkodierer zur Vermeidung einer Kaskadenkodierung von Sprachsignalen

Country Status (4)

Country Link
US (2) US7016831B2 (de)
EP (1) EP1202251B1 (de)
JP (1) JP2002202799A (de)
DE (1) DE60121405T2 (de)

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002202799A (ja) * 2000-10-30 2002-07-19 Fujitsu Ltd 音声符号変換装置
JP2002229599A (ja) * 2001-02-02 2002-08-16 Nec Corp 音声符号列の変換装置および変換方法
US20030028386A1 (en) * 2001-04-02 2003-02-06 Zinser Richard L. Compressed domain universal transcoder
JP4149143B2 (ja) * 2001-06-13 2008-09-10 富士通株式会社 移動通信システムのシグナリング通信方法
JP4231987B2 (ja) 2001-06-15 2009-03-04 日本電気株式会社 音声符号化復号方式間の符号変換方法、その装置、そのプログラム及び記憶媒体
US7647223B2 (en) 2001-08-16 2010-01-12 Broadcom Corporation Robust composite quantization with sub-quantizers and inverse sub-quantizers using illegal space
US7617096B2 (en) * 2001-08-16 2009-11-10 Broadcom Corporation Robust quantization and inverse quantization using illegal space
US7610198B2 (en) * 2001-08-16 2009-10-27 Broadcom Corporation Robust quantization with efficient WMSE search of a sign-shape codebook using illegal space
KR100460109B1 (ko) * 2001-09-19 2004-12-03 엘지전자 주식회사 음성패킷 변환을 위한 lsp 파라미터 변환장치 및 방법
JP4108317B2 (ja) * 2001-11-13 2008-06-25 日本電気株式会社 符号変換方法及び装置とプログラム並びに記憶媒体
KR20040095205A (ko) * 2002-01-08 2004-11-12 딜리시움 네트웍스 피티와이 리미티드 Celp를 기반으로 하는 음성 코드간 변환코딩 방식
US6829579B2 (en) 2002-01-08 2004-12-07 Dilithium Networks, Inc. Transcoding method and system between CELP-based speech codes
JP4263412B2 (ja) * 2002-01-29 2009-05-13 富士通株式会社 音声符号変換方法
KR20040104508A (ko) * 2002-03-12 2004-12-10 딜리시움 네트웍스 피티와이 리미티드 오디오 변환부호화기에서 적응 코드북 피치 지연 연산을위한 방법
US8432893B2 (en) 2002-03-26 2013-04-30 Interdigital Technology Corporation RLAN wireless telecommunication system with RAN IP gateway and methods
JP4304360B2 (ja) * 2002-05-22 2009-07-29 日本電気株式会社 音声符号化復号方式間の符号変換方法および装置とその記憶媒体
JP2004061646A (ja) * 2002-07-25 2004-02-26 Fujitsu Ltd Tfo機能を有する音声符号化器および方法
JP2004069963A (ja) * 2002-08-06 2004-03-04 Fujitsu Ltd 音声符号変換装置及び音声符号化装置
AU2003267713A1 (en) * 2002-10-03 2004-04-23 Koninklijke Philips Electronics N.V. Encoding and decoding a media signal
JP2004151123A (ja) * 2002-10-23 2004-05-27 Nec Corp 符号変換方法、符号変換装置、プログラム及びその記憶媒体
US7023880B2 (en) 2002-10-28 2006-04-04 Qualcomm Incorporated Re-formatting variable-rate vocoder frames for inter-system transmissions
JP2004157381A (ja) * 2002-11-07 2004-06-03 Hitachi Kokusai Electric Inc 音声符号化装置及び方法
KR100499047B1 (ko) * 2002-11-25 2005-07-04 한국전자통신연구원 서로 다른 대역폭을 갖는 켈프 방식 코덱들 간의 상호부호화 장치 및 그 방법
EP1579427A4 (de) * 2003-01-09 2007-05-16 Dilithium Networks Pty Ltd Verfahren und vorrichtung zur sprachtranscodierung mit verbesserter qualität
CN100578616C (zh) * 2003-04-08 2010-01-06 日本电气株式会社 代码转换方法和设备
CA2522492A1 (en) 2003-04-22 2004-11-04 Nec Corporation Code conversion method and device, program, and recording medium
KR100554164B1 (ko) 2003-07-11 2006-02-22 학교법인연세대학교 서로 다른 celp 방식의 음성 코덱 간의 상호부호화장치 및 그 방법
US7433815B2 (en) * 2003-09-10 2008-10-07 Dilithium Networks Pty Ltd. Method and apparatus for voice transcoding between variable rate coders
JP4009781B2 (ja) * 2003-10-27 2007-11-21 カシオ計算機株式会社 音声処理装置及び音声符号化方法
FR2867649A1 (fr) * 2003-12-10 2005-09-16 France Telecom Procede de codage multiple optimise
JP4547965B2 (ja) * 2004-04-02 2010-09-22 カシオ計算機株式会社 音声符号化装置、方法及びプログラム
US20050258983A1 (en) * 2004-05-11 2005-11-24 Dilithium Holdings Pty Ltd. (An Australian Corporation) Method and apparatus for voice trans-rating in multi-rate voice coders for telecommunications
GB0416720D0 (en) 2004-07-27 2004-09-01 British Telecomm Method and system for voice over IP streaming optimisation
EP1785984A4 (de) * 2004-08-31 2008-08-06 Matsushita Electric Ind Co Ltd Audiocodierungsvorrichtung, audiodecodierungsvorrichtung, kommunikationsvorrichtung und audiocodierungsverfahren
WO2006062202A1 (ja) * 2004-12-10 2006-06-15 Matsushita Electric Industrial Co., Ltd. 広帯域符号化装置、広帯域lsp予測装置、帯域スケーラブル符号化装置及び広帯域符号化方法
CN101091393B (zh) * 2004-12-28 2012-03-07 日本电气株式会社 运动图像编码方法以及利用其的装置
FR2880724A1 (fr) * 2005-01-11 2006-07-14 France Telecom Procede et dispositif de codage optimise entre deux modeles de prediction a long terme
KR100703325B1 (ko) * 2005-01-14 2007-04-03 삼성전자주식회사 음성패킷 전송율 변환 장치 및 방법
JP2006227843A (ja) * 2005-02-16 2006-08-31 Sony Corp コンテンツ情報管理システム、コンテンツ情報管理装置及びコンテンツ情報管理方法、並びにコンピュータ・プログラム
MX2007012185A (es) 2005-04-01 2007-12-11 Qualcomm Inc Metodo y aparato para cuantificacion de vector de una representacion de envoltura espectral.
EP1875464B9 (de) 2005-04-22 2020-10-28 Qualcomm Incorporated Verfahren, speichermedium und vorrichtung zur verstärkungsfaktor-dämpfung
US20060262851A1 (en) * 2005-05-19 2006-11-23 Celtro Ltd. Method and system for efficient transmission of communication traffic
US7773882B2 (en) * 2005-05-26 2010-08-10 Telcordia Technologies, Inc. Optical code-routed networks
BRPI0520720A2 (pt) * 2005-11-30 2009-06-13 Ericsson Telefon Ab L M método para transcodificação de fala de um primeiro esquema de codificação de fala para um segundo esquema de codificação de fala, transcodificador de fala, e, sistema de telecomunicação
US20070136054A1 (en) * 2005-12-08 2007-06-14 Hyun Woo Kim Apparatus and method of searching for fixed codebook in speech codecs based on CELP
CA2633694A1 (en) 2005-12-21 2007-06-28 Nec Corporation Code conversion device, code conversion method used for the same, and program thereof
JPWO2007114290A1 (ja) * 2006-03-31 2009-08-20 パナソニック株式会社 ベクトル量子化装置、ベクトル逆量子化装置、ベクトル量子化方法及びベクトル逆量子化方法
US7805292B2 (en) * 2006-04-21 2010-09-28 Dilithium Holdings, Inc. Method and apparatus for audio transcoding
US20090240494A1 (en) * 2006-06-29 2009-09-24 Panasonic Corporation Voice encoding device and voice encoding method
US8335684B2 (en) * 2006-07-12 2012-12-18 Broadcom Corporation Interchangeable noise feedback coding and code excited linear prediction encoders
US8036886B2 (en) * 2006-12-22 2011-10-11 Digital Voice Systems, Inc. Estimation of pulsed speech model parameters
US8553757B2 (en) * 2007-02-14 2013-10-08 Microsoft Corporation Forward error correction for media transmission
CN101617363B (zh) * 2007-02-21 2012-09-05 艾利森电话股份有限公司 双端话音检测器
US7925783B2 (en) * 2007-05-23 2011-04-12 Microsoft Corporation Transparent envelope for XML messages
JP5434592B2 (ja) * 2007-06-27 2014-03-05 日本電気株式会社 オーディオ符号化方法、オーディオ復号方法、オーディオ符号化装置、オーディオ復号装置、プログラム、およびオーディオ符号化・復号システム
US7873513B2 (en) * 2007-07-06 2011-01-18 Mindspeed Technologies, Inc. Speech transcoding in GSM networks
WO2011045927A1 (ja) * 2009-10-14 2011-04-21 パナソニック株式会社 符号化装置、復号装置およびこれらの方法
KR101826331B1 (ko) * 2010-09-15 2018-03-22 삼성전자주식회사 고주파수 대역폭 확장을 위한 부호화/복호화 장치 및 방법
EP2657933B1 (de) 2010-12-29 2016-03-02 Samsung Electronics Co., Ltd Kodiervorrichtung und dekodiervorrichtung mit bandbreitenerweiterung
US9026434B2 (en) * 2011-04-11 2015-05-05 Samsung Electronic Co., Ltd. Frame erasure concealment for a multi rate speech and audio codec
RU2669139C1 (ru) * 2011-04-21 2018-10-08 Самсунг Электроникс Ко., Лтд. Устройство для квантования коэффициентов кодирования с линейным предсказанием, устройство кодирования звука, устройство для деквантования коэффициентов кодирования с линейным предсказанием, устройство декодирования звука, и электронное устройство для этого
CN105513602B (zh) * 2011-04-21 2019-08-06 三星电子株式会社 用于语音信号或音频信号的解码设备和方法及量化设备
EP2922054A1 (de) 2014-03-19 2015-09-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung, Verfahren und zugehöriges Computerprogramm zur Erzeugung eines Fehlerverschleierungssignals unter Verwendung einer adaptiven Rauschschätzung
EP2922055A1 (de) 2014-03-19 2015-09-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung, Verfahren und zugehöriges Computerprogramm zur Erzeugung eines Fehlerverschleierungssignals mit einzelnen Ersatz-LPC-Repräsentationen für individuelle Codebuchinformationen
EP2922056A1 (de) 2014-03-19 2015-09-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung, Verfahren und zugehöriges Computerprogramm zur Erzeugung eines Fehlerverschleierungssignals unter Verwendung von Leistungskompensation
CN110444217B (zh) * 2014-05-01 2022-10-21 日本电信电话株式会社 解码装置、解码方法、记录介质
US9953660B2 (en) * 2014-08-19 2018-04-24 Nuance Communications, Inc. System and method for reducing tandeming effects in a communication system
EP3182411A1 (de) 2015-12-14 2017-06-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und verfahren zur verarbeitung eines codierten audiosignals
JP6729299B2 (ja) * 2016-10-28 2020-07-22 富士通株式会社 ピッチ抽出装置及びピッチ抽出方法
JP2019165365A (ja) * 2018-03-20 2019-09-26 株式会社東芝 信号処理装置
US11270714B2 (en) 2020-01-08 2022-03-08 Digital Voice Systems, Inc. Speech coding using time-varying interpolation
US11990144B2 (en) 2021-07-28 2024-05-21 Digital Voice Systems, Inc. Reducing perceived effects of non-voice data in digital speech

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3102015B2 (ja) * 1990-05-28 2000-10-23 日本電気株式会社 音声復号化方法
US5764298A (en) * 1993-03-26 1998-06-09 British Telecommunications Public Limited Company Digital data transcoder with relaxed internal decoder/coder interface frame jitter requirements
JP3052274B2 (ja) * 1993-05-12 2000-06-12 エヌ・ティ・ティ移動通信網株式会社 Lsp量子化方法
US5541852A (en) * 1994-04-14 1996-07-30 Motorola, Inc. Device, method and system for variable bit-rate packet video communications
JPH08146997A (ja) * 1994-11-21 1996-06-07 Hitachi Ltd 符号変換装置および符号変換システム
US5699485A (en) * 1995-06-07 1997-12-16 Lucent Technologies Inc. Pitch delay modification during frame erasures
US5995923A (en) * 1997-06-26 1999-11-30 Nortel Networks Corporation Method and apparatus for improving the voice quality of tandemed vocoders
TW390082B (en) * 1998-05-26 2000-05-11 Koninkl Philips Electronics Nv Transmission system with adaptive channel encoder and decoder
US6185205B1 (en) * 1998-06-01 2001-02-06 Motorola, Inc. Method and apparatus for providing global communications interoperability
US6260009B1 (en) * 1999-02-12 2001-07-10 Qualcomm Incorporated CELP-based to CELP-based vocoder packet translation
US6463414B1 (en) * 1999-04-12 2002-10-08 Conexant Systems, Inc. Conference bridge processing of speech in a packet network environment
US6493386B1 (en) * 2000-02-02 2002-12-10 Mitsubishi Electric Research Laboratories, Inc. Object based bitstream transcoder
US6748020B1 (en) * 2000-10-25 2004-06-08 General Instrument Corporation Transcoder-multiplexer (transmux) software architecture
JP2002202799A (ja) * 2000-10-30 2002-07-19 Fujitsu Ltd 音声符号変換装置
US20030028386A1 (en) * 2001-04-02 2003-02-06 Zinser Richard L. Compressed domain universal transcoder
JP4518714B2 (ja) * 2001-08-31 2010-08-04 富士通株式会社 音声符号変換方法
JP4108317B2 (ja) * 2001-11-13 2008-06-25 日本電気株式会社 符号変換方法及び装置とプログラム並びに記憶媒体
US6829579B2 (en) * 2002-01-08 2004-12-07 Dilithium Networks, Inc. Transcoding method and system between CELP-based speech codes
JP4263412B2 (ja) * 2002-01-29 2009-05-13 富士通株式会社 音声符号変換方法
US7231345B2 (en) * 2002-07-24 2007-06-12 Nec Corporation Method and apparatus for transcoding between different speech encoding/decoding systems
JP2004069963A (ja) * 2002-08-06 2004-03-04 Fujitsu Ltd 音声符号変換装置及び音声符号化装置
US7433815B2 (en) * 2003-09-10 2008-10-07 Dilithium Networks Pty Ltd. Method and apparatus for voice transcoding between variable rate coders
US20060088093A1 (en) * 2004-10-26 2006-04-27 Nokia Corporation Packet loss compensation
EP1829027A1 (de) * 2004-12-15 2007-09-05 Telefonaktiebolaget LM Ericsson (publ) Verfahren und einrichtung zur codierung der modusänderung codierter datenströme

Also Published As

Publication number Publication date
EP1202251A3 (de) 2003-09-10
JP2002202799A (ja) 2002-07-19
US20060074644A1 (en) 2006-04-06
EP1202251A2 (de) 2002-05-02
US7016831B2 (en) 2006-03-21
US7222069B2 (en) 2007-05-22
DE60121405D1 (de) 2006-08-24
EP1202251B1 (de) 2006-07-12
US20020077812A1 (en) 2002-06-20

Similar Documents

Publication Publication Date Title
DE60121405T2 (de) Transkodierer zur Vermeidung einer Kaskadenkodierung von Sprachsignalen
DE60011051T2 (de) Celp-transkodierung
DE3856211T2 (de) Verfahren zur adaptiven Filterung von Sprach- und Audiosignalen
DE60120766T2 (de) Indizieren von impulspositionen und vorzeichen in algebraischen codebüchern zur codierung von breitbandsignalen
DE69625874T2 (de) Verfahren und Vorrichtung zur Wiedergabe von Sprachsignalen, zur Dekodierung, zur Sprachsynthese und tragbares Funkendgerät
DE69331079T2 (de) CELP-Vocoder
DE60006271T2 (de) Celp sprachkodierung mit variabler bitrate mittels phonetischer klassifizierung
DE69634645T2 (de) Verfahren und Vorrichtung zur Sprachkodierung
DE60117144T2 (de) Sprachübertragungssystem und verfahren zur behandlung verlorener datenrahmen
DE69928288T2 (de) Kodierung periodischer sprache
DE60029990T2 (de) Glättung des verstärkungsfaktors in breitbandsprach- und audio-signal dekodierer
DE60219351T2 (de) Signaländerungsverfahren zur effizienten kodierung von sprachsignalen
DE69910240T2 (de) Vorrichtung und verfahren zur wiederherstellung des hochfrequenzanteils eines überabgetasteten synthetisierten breitbandsignals
DE69029120T2 (de) Stimmenkodierer
DE69900786T2 (de) Sprachkodierung
DE69916321T2 (de) Kodierung eines verbesserungsmerkmals zur leistungsverbesserung in der kodierung von kommunikationssignalen
DE60024123T2 (de) Lpc-harmonischer sprachkodierer mit überrahmenformat
DE60124274T2 (de) Codebuchstruktur und suchverfahren für die sprachkodierung
DE69727895T2 (de) Verfahren und Vorrichtung zur Sprachkodierung
DE69618422T2 (de) Verfahren zur Sprachdekodierung und tragbares Endgerät
DE69132013T2 (de) Verfahren für sprachquantisierung und fehlerkorrektur
DE69608947T2 (de) Verfahren zur Analyse eines Audiofrequenzsignals durch lineare Prädiktion, und Anwendung auf ein Verfahren zur Kodierung und Dekodierung eines Audiofrequenzsignals
DE69023402T2 (de) Verfahren zur Sprachkodierung und -dekodierung.
DE69619054T2 (de) Verfahren und Vorrichtung zur Sprachkodierung
DE69934608T2 (de) Adaptive kompensation der spektralen verzerrung eines synthetisierten sprachresiduums

Legal Events

Date Code Title Description
8364 No opposition during term of opposition