DE69727256T2 - Sprachkodierer hoher Qualität mit niedriger Bitrate - Google Patents

Sprachkodierer hoher Qualität mit niedriger Bitrate Download PDF

Info

Publication number
DE69727256T2
DE69727256T2 DE69727256T DE69727256T DE69727256T2 DE 69727256 T2 DE69727256 T2 DE 69727256T2 DE 69727256 T DE69727256 T DE 69727256T DE 69727256 T DE69727256 T DE 69727256T DE 69727256 T2 DE69727256 T2 DE 69727256T2
Authority
DE
Germany
Prior art keywords
quantizer
excitation
pulse
signal
gain
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
DE69727256T
Other languages
English (en)
Other versions
DE69727256D1 (de
Inventor
Kazunori Minato-ku Ozawa
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP26112196A external-priority patent/JP3360545B2/ja
Priority claimed from JP30714396A external-priority patent/JP3471542B2/ja
Application filed by NEC Corp filed Critical NEC Corp
Application granted granted Critical
Publication of DE69727256D1 publication Critical patent/DE69727256D1/de
Publication of DE69727256T2 publication Critical patent/DE69727256T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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
    • G10L2019/0001Codebooks
    • G10L2019/0004Design or structure of the codebook
    • G10L2019/0005Multi-stage vector quantisation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/06Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being correlation coefficients

Description

  • Die vorliegende Erfindung betrifft einen Sprachcodierer zum qualitativ hochwertigen Codieren von Sprachsignalen bei niedrigen Bitraten.
  • Systeme zum qualitativ hochwertigen Codieren von Sprachsignalen sind auf dem Fachgebiet wohlbekannt und beispielsweise in W. Schroeder und B. Atal. "Code-Excited Linear Prediction: High Quality Speech at Very Low Bit Rates", Proc. ICASSP, S. 937–940, 1985 (Literaturdokument 1) und Kleijn u. a. "Improved Speech Quality and Effective Vector Quantization in SELP", Proc. ICASSP, S. 155–158, 1988 (Literaturdokument 2) beschrieben. Bei diesen Systemen aus dem Stand der Technik werden auf der Sendeseite spektrale Merkmale eines Sprachsignals darstellende Spektralparameter für jeden Rahmen (beispielsweise mit 20 ms) unter Verwendung der linearen Voraussage (LPC) aus dem Sprachsignal gewonnen. Der Rahmen wird in mehrere Unterrahmen (beispielsweise mit 5 ms) unterteilt, und adaptive Codebuchparameter (also Verzögerungsparameter, die der Tonhöhenperiode und einem Verstärkungsparameter entsprechen) werden für jeden Unterrahmen auf der Grundlage eines vorhergehenden Erregungssignals gewonnen. Das Unterrahmen-Sprachsignal wird dann unter Verwendung des adaptiven Codebuchs einer Tonhöhenvoraussage unterzogen. Das einer Tonhöhenvoraussage unterzogene Erregungssignal wird durch Auswählen eines optimalen Erregungsvektors aus einem Erregungscodebuch (oder Vektorquantisierungs-Codebuch), das aus verschiedenen vorbestimmten Typen von Rauschsignalen besteht, und durch Auswählen einer optimalen Verstärkung quantisiert. Der optimale Erregungscodevektor wird so ausgewählt, daß die Fehlerleistung zwischen einem aus ausgewählten Rauschsignalen synthetisierten Signal und einem Fehlersignal minimiert wird. Ein Multiplexer kombiniert einen den Typ des ausgewählten Codevektors und eine Verstärkung darstellenden Index, die Spektralparameter und die adaptiven Codebuchparameter und überträgt die multiplexierten Daten zur Empfangsseite, um sie zu demultiplexieren.
  • Bei dem vorstehenden Prozeß aus dem Stand der Technik tritt das Problem auf, daß die Auswahl des optimalen Erregungscodevektors aus dem Erregungscodebuch einen hohen Rechenaufwand erfordert. Dies liegt daran, daß bei den in den Literaturdokumenten 1 und 2 dargestellten Verfahren der optimale Erregungscodevektor ausgewählt wird, indem in bezug auf jeden von mehreren in dem Codebuch gespeicherten Codevektoren eine Filterung oder eine Faltung ausgeführt wird, indem also die Filterung oder die Faltung wiederholend eine Anzahl von Malen entsprechend der Anzahl der gespeicherten Codevektoren ausgeführt wird. Mit einer Bitanzahl B und einem Grad N eines Codebuchs sollte die Filterung oder die Faltung beispielsweise N × K × 2a × 8000/N Mal je Sekunde ausgeführt werden, wobei K die Filterungs- oder Impulsantwortlänge bei der Filterung oder der Faltung ist. Wenn B = 10, N = 40 und K = 40 ist, beträgt der erforderliche Rechenaufwand beispielsweise 81920000 Mal je Sekunde, was tatsächlich sehr hoch ist.
  • Zum Verringern des Rechenaufwands, der für die Wiedergewinnung aus dem Erregungscodebuch erforderlich ist, wurden verschiedene Systeme vorgeschlagen. Zu den vorgeschlagenen Systemen gehört ein ACELP (Algebraic Code Excited Linear Prediction system), das beispielsweise in C. Laflamme u. a. "16 kbps Wide-Band Speech Coding Technique Based on Algebraic Celp", Proc. ICASSP, S. 13–16, 1991 (Literaturdokument 3) beschrieben ist. In diesem System wird ein Erregungssignal durch mehrere Impulse dargestellt, und die Position jedes Impulses wird durch eine vorbestimmte Anzahl von Bits, die übertragen werden, dargestellt. Weil die Amplitude jedes Impulses entweder "+1,0" oder "–1,0" ist, kann der Rechenaufwand für die Impulswiedergewinnung stark verringert werden. Ein anderes Beispiel für Mehrfachpuls-Sprachcodierung ist in der WO-A-95/30222 beschrieben.
  • Dieses im Literaturdokument 3 beschriebene System aus dem Stand der Technik weist jedoch das Problem auf, daß die Klangqualität nicht ausreichend ist, wenngleich es möglich ist, eine große Verringerung des Rechenaufwands zu erhalten. Dies ist darauf zurückzuführen, daß jeder Impuls, unabhängig von seiner Position, stets die absolute Amplitude "1,0" aufweist und nur entweder eine positive oder eine negative Polarität hat. Dies bedeutet, daß eine sehr grobe Amplitudenquantisierung vorgenommen wird und daß die Klangqualität daher verschlechtert ist.
  • Weiterhin wird bei den in den Literaturdokumenten 1 bis 3 beschriebenen Systemen das Wiedergewinnen aus dem Erregungscodebuch oder von Impulsen unter der Annahme ausgeführt, daß das Sprachsignal mit einer festen Verstärkung multipliziert ist. Daher nimmt die Leistungsfähigkeit ab, wenn die Größe des Erregungscodebuchs durch Verringern der Bitrate verkleinert wird, oder wenn die Anzahl der Impulse gering ist.
  • Eine Aufgabe des vorliegenden Systems gemäß Patentanspruch 1 betrifft daher ein Sprachcodiersystem, das die vorstehenden Probleme lösen kann und das bei einem verringerten Rechenaufwand selbst bei einer niedrigen Bitrate weniger anfällig für eine Verschlechterung der Klangqualität ist.
  • Diese Aufgabe wird mit den Merkmalen des Patentanspruchs gelöst.
  • Andere Aufgaben und Merkmale werden anhand der folgenden Beschreibung mit Bezug auf die anliegende Zeichnung klar werden.
  • Es zeigen:
  • 1 ein Blockdiagramm, in dem eine erste Ausführungsform des Sprachcodierers gemäß der vorliegenden Erfindung dargestellt ist,
  • 2 ein Flußdiagramm zum Erklären der Arbeitsweise des Erregungsquantisierers 350,
  • 3 ein Blockdiagramm, in dem eine zweite Ausführungsform der vorliegenden Erfindung dargestellt ist,
  • 4 ein Blockdiagramm, in dem eine dritte Ausführungsform der vorliegenden Erfindung dargestellt ist,
  • 5 ein Blockdiagramm, in dem eine vierte Ausführungsform der vorliegenden Erfindung dargestellt ist,
  • 6 ein Blockdiagramm, in dem eine fünfte Ausführungsform der vorliegenden Erfindung dargestellt ist,
  • 7 ein Blockdiagramm, in dem eine sechste Ausführungsform des Sprachcodierers gemäß der vorliegenden Erfindung dargestellt ist,
  • 8 ein Blockdiagramm, in dem der Aufbau des Erregungsquantisierers 350 dargestellt ist,
  • 9 ein Blockdiagramm, in dem eine siebte Ausführungsform der vorliegenden Erfindung dargestellt ist,
  • 10 den Aufbau des Erregungsquantisierers 450,
  • 11 ein Blockdiagramm, in dem eine achte Ausführungsform der vorliegenden Erfindung dargestellt ist,
  • 12 den Aufbau des Erregungsquantisierers 550,
  • 13 ein Blockdiagramm, in dem eine neunte Ausführungsform der vorliegenden Erfindung dargestellt ist,
  • 14 den Aufbau des Erregungsquantisierers 390,
  • 15 ein Blockdiagramm, in dem eine zehnte Ausführungsform der vorliegenden Erfindung dargestellt ist,
  • 16 ein Blockdiagramm, in dem der Aufbau des Erregungsquantisierers 600 dargestellt ist,
  • 17 ein Blockdiagramm, in dem eine elfte Ausführungsform der vorliegenden Erfindung dargestellt ist,
  • 18 ein Blockdiagramm, in dem der Aufbau des Erregungsquantisierers 650 dargestellt ist,
  • 19 ein Blockdiagramm, in dem eine zwölfte Ausführungsform der vorliegenden Erfindung dargestellt ist,
  • 20 ein Blockdiagramm, in dem der Aufbau des Erregungsquantisierers dargestellt ist,
  • 21 ein Blockdiagramm, in dem eine dreizehnte Ausführungsform der vorliegenden Erfindung dargestellt ist,
  • 22 ein Blockdiagramm, in dem der Aufbau des Erregungsquantisierers 850 dargestellt ist, und
  • 23 ein Blockdiagramm, in dem eine vierzehnte Ausführungsform der vorliegenden Erfindung dargestellt ist.
  • Ausführungsformen der vorliegenden Erfindung werden nun mit Bezug auf die Zeichnung beschrieben.
  • 1 ist ein Blockdiagramm, in dem eine erste Ausführungsform des Sprachcodierers gemäß der vorliegenden Erfindung dargestellt ist.
  • Mit Bezug auf die Figur sei bemerkt, daß eine Rahmenschaltung 110 ein von einem Eingangsanschluß 100 eingegebenes Sprachsignal in Rahmen (beispielsweise mit 10 ms) unterteilt und eine Unterrahmenschaltung 120 jeden Rahmen des Sprachsignals weiter in mehrere kürzere Unterrahmen (beispielsweise mit 5 ms) unterteilt.
  • Ein Spektralparametercomputer 200 berechnet Spektralparameter einer vorbestimmten Ordnung P (beispielsweise P = 10) durch Abschneiden des Sprachsignals mit einem Fenster, das länger als die Unterrahmenlänge ist (beispielsweise 24 ms) in bezug auf wenigstens einen Unterrahmen des Sprachsignals. Die Spektralparameter können in einem wohlbekannten Prozeß einer LPC-Analyse, einer Burg-Analyse usw. berechnet werden. Im vorliegenden Fall wird angenommen, daß die Burg-Analyse verwendet wird. Die Burg-Analyse ist detailliert in Nakamizo "Signal Analysis and System Identification", veröffentlicht von Corona Co., Ltd., 1988, S. 82–87 (Literaturdokument 4) beschrieben und wird in der Beschreibung nicht ausgeführt.
  • Der Spektralparametercomputer 200 wandelt auch lineare Voraussageparameter αi (i = 1, ..., 10), die durch den Burg-Prozeß erhalten wurden, in LSP-Parameter um, die zur Quantisierung oder Interpolation geeignet sind. Die Umwandlung der linearen Voraussageparameter in die LSP-Parameter ist in Sugamura u. a. "Speech Compression by Linear Spectrum Pair (LSP) Speech Analysis Synthesis System", J64-A, 1981, S. 599–606 (Literaturdokument 5) beschrieben. Beispielsweise wandelt der Spektralparametercomputer 200 die im zweiten Unterrahmen durch den Burg-Prozeß erhaltenen linearen Voraussageparameter in LSP-Parameter um, erhält die LSP-Parameter des ersten Unterrahmens durch lineare Interpolation, wandelt die LSP-Parameter des ersten Unterrahmens invers um, wodurch lineare Voraussageparameter erhalten werden, und gibt die linearen Voraussageparameter αil (i = 1, ..., 10, l = 1, ..., 2) des ersten und des zweiten Unterrahmens an eine Wahrnehmungsgewichtungseinrichtung 230 aus, während er die LSP-Parameter des zweiten Unterrahmens an einen Spektralparameterquantisierer 210 ausgibt.
  • Der Spektralparameterquantisierer 210 quantisiert LSP-Parameter der vorbestimmten Unterrahmen wirksam unter Verwendung eines Codebuchs 220 und gibt quantisierte LSP-Parameter aus, wodurch eine durch
    Figure 00060001
    gegebene Verzerrung minimiert wird, wobei LSP(i) die LSP-Parameter des i-ten Unterrahmens vor der Quantisierung sind, QLSP(i)j der im Codebuch 220 gespeicherte Codevektor des jten Unterrahmens ist und W(i) ein Gewichtungskoeffizient ist.
  • In der folgenden Beschreibung wird angenommen, daß die Vektorquantisierung für die Quantisierung verwendet wird und daß die LSP-Parameter des zweiten Unterrahmens quantisiert sind. Die LSP-Parameter können durch einen beliebigen wohlbekannten Prozeß quantisierte Vektoren sein. Spezielle Beispiele des Prozesses sind in der offengelegten japanischen Patentveröffentlichung 4-171500 (japanische Patentveröffentlichung 2-297600) (Literaturdokument 6), in der offengelegten japanischen Patentveröffentlichung 4-363000 (japanische Patentanmeldung 3-261925) (Literaturdokument 7), in der offengelegten japanischen Patentveröffentlichung 5-6199 (japanische Patentanmeldung 3-155049) (Literaturdokument 8), und in T. Nomura u. a. "LSP Coding Using VQ-SVQ with Interpolation in 4.075 kbps M-LCELP Speech Coder", Proc. Mobile Multimedia Communications, B.2.5, 1993 (Literaturdokument 9) offenbart, wobei diese Prozesse in der Beschreibung nicht dargelegt sind.
  • Der Spektralparameterquantisierer 210 stellt auch die LSP-Parameter des ersten Unterrahmens anhand der quantisierten LSP-Parameter des zweiten Unterrahmens wieder her. Im vorliegenden Fall werden die LSP-Parameter des ersten Unterrahmens durch lineare Interpolation zwischen den quantisierten LSP-Parametern des zweiten Unterrahmens des vorliegenden Rahmens und den quantisierten LSP-Parametern des zweiten Unterrahmens des unmittelbar vorhergehenden Rahmens wiederhergestellt. Hierbei werden die LSP-Parameter des ersten Unterrahmens durch die lineare Interpolation wiederhergestellt, nachdem ein Codevektor ausgewählt wurde, der die Fehlerleistung zwischen den nicht quantisierten und den quantisierten LSP-Parametern minimiert.
  • Der Spektralparameterquantisierer 210 wandelt die wiederhergestellten LSP-Parameter des ersten Unterrahmens und die quantisierten LSP-Parameter des zweiten Unterrahmens in die linearen Voraussageparameter αil (i = 1, ..., 10, l = 1, ..., 2) für jeden Unterrahmen um und gibt das Ergebnis der Umwandlung an einen Impulsantwortcomputer 310 aus, während ein Index, der den Codevektor der quantisierten LSP-Parameter des zweiten Unterrahmens darstellt, an einen Multiplexer 400 ausgegeben wird.
  • Die Wahrnehmungsgewichtungseinrichtung 230 empfängt die nicht quantisierten Linearvoraussageparameter αi (i = 1, ..., P) aller Unterrahmen vom Spektralparametercomputer 200, nimmt nach dem Literaturdokument 1 eine Wahrnehmungsgewichtung des Unterrahmen-Sprachsignals vor und gibt ein auf diese Weise erhaltenes wahrnehmungsgewichtetes Signal aus.
  • Ein Antwortsignalcomputer 240 empfängt die Linearvoraussageparameter αi aller Unterrahmen und auch die Linearvoraussagekoeffizienten αi' aller Unterrahmen, die durch Quantisierung und Interpolation wiederhergestellt wurden, vom Spektralparametercomputer 200 und vom Spektralparameterquantisierer 210, berechnet ein einem Eingangssignal d(n) = 0 für jeden Unterrahmen entsprechendes Antwortsignal unter Verwendung gespeicherter Filterspeicherdaten und gibt das berechnete Antwortsignal an einen Subtrahierer 235 aus. Das Antwortsignal xz(n) wird folgendermaßen ausgedrückt:
  • Figure 00080001
  • Wenn n – 1 ≤ 0 ist, gilt: y(n – i) = p(N + (n – i)) (3) xz(n – i) = sw(N + (n – i)) (4)wobei N die Unterrahmenlänge ist, γ ein Gewichtungskoeffizient zum Steuern der Ordnung der Wahrnehmungsgewichtung ist und den in der nachstehenden Gleichung (6) dargestellten Wert aufweist, sw(n) das Ausgangssignal des Gewichtungssignalcomputers 230 ist und p(n) ein Filterausgangssignal im Nenner des ersten Terms der rechten Seite von Gleichung (6) ist.
  • Der Subtrahierer 235 subtrahiert das Antwortsignal von dem im Erwärmungssinne gewichteten Signal für einen Unterrahmen und gibt die Differenz xw'(n) an eine adaptive Codebuchschaltung 300 aus. x'w(n) = xw(n) – xz(n) (5)
  • Die Impulsantwort-Berechnungseinrichtung 310 berechnet die Impulsantwort hw(n) des Wahrnehmungsgewichtungsfilters und führt die folgende z-Transformation für eine vorbestimmte Anzahl L von Punkten aus:
    Figure 00090001
    und gibt das Ergebnis an die adaptive Codebuchschaltung 300 und auch an einen Erregungsquantisierer 350 aus.
  • Die adaptive Codebuchschaltung 300 empfängt das vorhergehende Erregungssignal v(n) von der Gewichtungssignal-Berechnungseinrichtung 360, das Ausgangssignal x'w(n) vom Subtrahierer 235 und die wahrnehmungsgewichtete Impulsantwort hw(n) von der Impulsantwort-Berechnungseinrichtung 310, und sie bestimmt eine der Tonhöhe entsprechende Verzögerung T, um die Verzerrung zu minimieren:
    Figure 00090002
    yw(n – T) = v(n – T) * hw(n) (8)stellt ein Tonhöhenvoraussagesignal dar, und das Symbol * stellt eine Faltung dar. Es wird auch die Verstärkung β als
    Figure 00090003
    erhalten.
  • Zum Verbessern der Verzögerungsextraktionsgenauigkeit für die Sprache von Frauen und Kindern kann die Verzögerung in Form dezimaler Abtastwerte an Stelle ganzzahliger Abtastwerte erhalten werden. In Hinblick auf einen spezifischen Prozeß kann beispielsweise auf P. Kroon u. a. "Pitch predictors with high temporal resolution", Proc. ICASSP, 1990, S. 661–664 (Literaturdokument 10) Bezug genommen werden.
  • Die adaptive Codebuchschaltung 300 führt die folgende Tonhöhenvoraussage aus: xw(n) = x'w(n) – βv(n – T) * hw(n) (10)und gibt das Voraussagefehlersignal zw(n) an den Erregungsquantisierer 350 aus.
  • Der Erregungsquantisierer 350 liefert Daten von M Impulsen. Der Arbeitsgang im Erregungsquantisierer 350 ist im Flußdiagramm aus 2 dargestellt.
  • Der Arbeitsgang weist zwei Stufen auf, wobei eine einige von mehreren Impulsen betrifft und die andere die restlichen Impulse betrifft. In zwei Stufen werden verschiedene Verstärkungen für die Multiplikation zur Impulspositions-Wiedergewinnung festgelegt.
  • Das Erregungssignal c(n) wird folgendermaßen ausgedrückt:
    Figure 00100001
    wobei M1 die Anzahl der Erststufenimpulse ist, M2 die Anzahl der Zweitstufenimpulse ist, sign(k) die Polarität eines k-ten Impulses ist, G1 die Verstärkung der Erststufenimpulse ist, G2 die Verstärkung der Zweitstufenimpulse ist und M1 + M2 = M ist.
  • Mit Bezug auf 2 sei bemerkt, daß in einem ersten Schritt zw(n) und hw(n) eingegeben werden und daß eine erste und eine zweite Korrelationsfunktion d(n) und ϕ als
    Figure 00110001
    berechnet werden.
  • In einem folgenden Schritt werden die Positionen der M1 (M1 ≤ M) von Null verschiedenen Amplitudenimpulse (oder ersten Impulse) unter Verwendung der vorstehenden zwei Korrelationsfunktionen berechnet. Hierzu werden vorbestimmte Positionen als Kandidaten für eine optimale Position jedes Impulses nach dem Literaturdokument 3 abgerufen.
  • In 2 sind Beispiele von Kandidaten für jede Impulsposition, wobei die Unterrahmenlänge N = 40 ist und die Anzahl der Impulse M1 = 5 ist, wie in der folgenden Tabelle 1 dargestellt, angegeben:
  • Figure 00110002
  • Für jeden Impuls wird jeder Positionskandidat geprüft, um eine optimale Position auszuwählen, welche eine Gleichung
    Figure 00110003
    maximiert, wobei
    Figure 00110004
    Figure 00120001
    M1 Impulspositionen ausgegeben werden.
  • Daraufhin wird die Korrelationsfunktion d(n) unter Verwendung der berechneten Positionen von M1 Impulsen mit der Amplitude als Polarität folgendermaßen korrigiert:
    Figure 00120002
    n = 0, ..., N – 1 (18)
  • Als nächstes werden unter Verwendung von d'(n) und ϕ die Positionen der M2 Impulse berechnet. In diesem Schritt kann d'(n) für d(n) in Gleichung (15) eingesetzt werden, und die Anzahl der Impulse kann auf M2 gelegt werden.
  • Die Polaritäten und Positionen von insgesamt M Impulsen werden auf diese Weise erhalten und an einen Verstärkungsquantisierer 365 ausgegeben. Die Impulspositionen werden jeweils mit einer vorbestimmten Anzahl von Bits quantisiert, und die Impulspositionen darstellende Indizes werden an den Multiplexer 400 ausgegeben. Die Impulspolaritäten werden auch an den Multiplexer 400 ausgegeben.
  • Der Verstärkungsquantisierer 365 liest die Verstärkungscodevektoren aus einem Verstärkungscodebuch 355 aus, wählt einen Verstärkungscodevektor, der die folgende Gleichung minimiert und wählt schließlich eine Kombination eines Amplitudencodevektors und eines Verstärkungscodevektors, wodurch die Verzerrung minimiert wird.
  • Es wird nun angenommen, daß drei verschiedene Erregungsverstärkungen G1 bis G3, die durch adaptive Codebuchverstärkungen und Impulse dargestellt sind, gleichzeitig vektorquantisiert werden.
  • Figure 00130001
  • Mit βt', G1t' und G2t' sind die t-ten Elemente von im Verstärkungscodebuch 355 gespeicherten dreidimensionalen Verstärkungscodevektoren bezeichnet. Der Verstärkungsquantisierer 365 wählt einen Verstärkungscodevektor, der die Verzerrung Dt minimiert, durch Ausführen der vorstehenden Berechnung mit jedem Verstärkungscodevektor und gibt den Index des ausgewählten Verstärkungscodevektors an den Multiplexer 400 aus.
  • Der Gewichtungssignalcomputer 360 empfängt jeden Index, liest den entsprechenden Codevektor aus und erhält ein als
    Figure 00130002
    gegebenes Treibererregungssignal V(n). V(n) wird an die adaptive Codebuchschaltung 300 ausgegeben.
  • Der Gewichtungssignalcomputer 360 berechnet dann das Antwortsignal sw(n) für jeden Unterrahmen anhand der Ausgabeparameter des Spektralparametercomputers 200 und des Spektralparameterquantisierers 210 unter Verwendung der folgenden Gleichung und gibt das berechnete Antwortsignal an den Antwortsignalcomputer 240 aus.
  • Figure 00130003
  • 3 ist ein Blockdiagramm, in dem eine zweite Ausführungsform der vorliegenden Erfindung dargestellt ist. Diese Ausführungsform weist einen Erregungsquantisierer 450 auf, dessen Arbeitsweise von derjenigen in der in 1 dargestellten Ausführungsform verschieden ist. Insbesondere quantisiert der Tonquellenquantisierer 450 Impulsamplituden unter Verwendung eines Amplitudencodebuchs 451.
  • Im Erregungsquantisierer 450 werden nach Erhalten der Positionen der M1 Impulse Q (Q ≥ 1) Amplitudencodevektor-Kandidaten ausgegeben, um eine Gleichung C2j /Ej (22)
    Figure 00140001
    zu maximieren, wobei gkj' der j-te Amplitudencodevektor des k-ten Impulses ist.
  • Daraufhin wird die Korrelationsfunktion in bezug auf jeden der ausgewählten Q Amplitudencodevektoren unter Verwendung einer Gleichung
    Figure 00140002
    korrigiert.
  • Daraufhin werden für jede korrigierte Korrelationsfunktion d'(n) die Amplitudencodevektoren im Amplitudencodebuch 451 in bezug auf die restlichen M2 Impulse abgerufen, und es wird ein Impuls ausgesucht, der die folgende Gleichung maximiert. C2i /Ei (26)
  • Figure 00150001
  • Der vorstehende Prozeß wird für die Q korrigierten Funktionen d'(n) wiederholt ausgeführt, und es wird eine Kombination ausgewählt, die den durch D = C2j /Ej + C2i /Ei (29)gegebenen akkumulierten Wert maximiert.
  • Der Erregungsquantisierer 450 gibt den Index, der den ausgewählten Amplitudencodevektor darstellt, an den Multiplexer 400 aus. Er gibt auch Positionsdaten und Amplitudencodevektordaten an einen Verstärkungsquantisierer 460 aus.
  • Der Verstärkungsquantisierer 460 wählt einen Verstärkungscodevektor aus, der die folgende Gleichung von dem Verstärkungscodebuch 355 minimiert.
  • Figure 00150002
  • Während in dieser Ausführungsform das Amplitudencodebuch 451 verwendet wurde, ist es stattdessen möglich, ein Polaritätscodebuch zu verwenden, das die Impulspolaritäten aufweist.
  • 4 ist ein Blockdiagramm, in dem eine dritte Ausführungsform der vorliegenden Erfindung dargestellt ist. Gemäß dieser Ausführungsform werden ein erster Erregungsquantisierer 500 und ein zweiter Erregungsquantisierer 510 verwendet. Im ersten Erregungsquantisierer 500 weist der Arbeitsgang ebenso wie beim vorstehenden Erregungsquantisierer 350, der in 1 dargestellt ist, zwei Stufen auf, von denen eine einige der Impulse betrifft und die andere die restlichen Impulse betrifft, wobei unterschiedliche Verstärkungen zur Multiplikation für die Impulspositionswiedergewinnung festgelegt werden. Die zwei Stufen, in denen der Arbeitsgang ausgeführt wird, sind in keiner Weise einschränkend, und es ist möglich, eine beliebige Anzahl von Stufen bereitzustellen. Das Impulspositions-Wiedergewinnungsverfahren gleicht demjenigen beim in 1 dargestellten Erregungsquantisierer 350. Das Erregungssignal c1(n) ist in diesem Fall als
    Figure 00160001
    gegeben.
  • Nach der Impulspositionswiedergewinnung wird eine Verzerrung D1 infolge einer ersten Erregung als
    Figure 00160002
    berechnet.
  • Die vorstehende Gleichung kann durch eine Gleichung
    Figure 00160003
    ersetzt werden. Für Cj, Ci, Ej und Ei werden die Werte nach der Impulspositionswiedergewinnung verwendet.
  • Im zweiten Erregungsquantisierer 510 weist der Arbeitsgang eine einzige Stufe auf, und es wird für alle M (M > (M1 + M2)) Impulse eine einzige Verstärkung zur Multiplikation festgelegt. Ein zweites Erregungssignal c2(n) ist als
    Figure 00170001
    gegeben, wobei G die Verstärkung für alle M Impulse ist.
  • Eine Verzerrung D2 infolge der zweiten Erregung wird als
    Figure 00170002
    oder als
    Figure 00170003
    berechnet. Cl und El sind nach der Impulspositionswiedergewinnung im zweiten Erregungsquantisierer 510 verwendete Werte.
  • Eine Beurteilungsschaltung 520 vergleicht das erste Erregungssignal c1(n) und das zweite Erregungssignal c2(n) und die davon abhängigen Verzerrungen D1 und D2 und gibt das Erregungssignal mit der kleineren Verzerrung an einen Verstärkungsquantisierer 530 aus. Die Beurteilungsschaltung 520 gibt auch einen Beurteilungscode an den Verstärkungsquantisierer 530 und auch an den Multiplexer 400 aus und gibt Codes, die die Positionen und Polaritäten der Erregungssignalimpulse mit einer kleineren Verzerrung darstellen, an den Multiplexer 400 aus.
  • Der Verstärkungsquantisierer 530, der den Beurteilungscode empfängt, führt den gleichen Arbeitsgang wie im in 1 dargestellten vorstehenden Verstärkungsquantisierer 365 aus, wenn das erste Erregungssignal verwendet wird. Wenn die zweite Erregung verwendet wird, liest er zweidimensionale Verstärkungscodevektoren vom Verstärkungscodevektor 540 und sucht einen Codevektor, der eine Gleichung
    Figure 00180001
    minimiert. Er gibt den Index des gewählten Verstärkungscodevektors an den Multiplexer 400 aus.
  • 5 ist ein Blockdiagramm, in dem eine vierte Ausführungsform der vorliegenden Erfindung dargestellt ist. Gemäß dieser Ausführungsform wird ein erster Erregungsquantisierer 600 und ein zweiter Erregungsquantisierer 610 verwendet, deren Arbeitsweisen von denen im Fall der in 4 dargestellten Ausführungsform verschieden sind.
  • Der erste Erregungsquantisierer 600 quantisiert ebenso wie der in 3 dargestellte Erregungsquantisierer 450 die Impulsamplituden unter Verwendung des Amplitudencodebuchs 451.
  • Nachdem die Positionen der M1 Impulse bestimmt worden sind, wählt er Q (Q ≥ 1) Amplitudencodevektor-Kandidaten zum Maximieren einer Gleichung C2j /Ej (38)
    Figure 00180002
    wobei gkj' nach der folgenden Gleichung der j-te Amplitudencodevektor des k-ten Impulses ist.
  • Figure 00180003
  • Daraufhin ruft er mit Bezug auf jede der Q korrigierten Korrelationsfunktionen d'(n) die Amplitudencodevektoren im Amplitudencodebuch 451 für die restlichen M2 Impulse ab und wählt einen Amplitudencodevektor, der eine Gleichung C2i /Ei (42)maximiert, wobei
    Figure 00190001
    ist.
  • Er führt den vorstehenden Prozeß für die Q korrigierten Korrelationsfunktionen d'(n) wiederholt aus, um eine Kombination auszuwählen, die einen durch D = C2j /Ej + C2i /Ei (45)gegebenen akkumulierten Wert maximiert.
  • Er erhält auch das durch
    Figure 00190002
    gegebene erste Erregungssignal.
  • Er berechnet weiterhin die Verzerrung D1 infolge der ersten Erregung unter Verwendung einer Gleichung:
    Figure 00190003
    und gibt die Verzerrung D1 an die Beurteilungsschaltung 520 aus.
  • Der zweite Erregungsquantisierer 610 sucht einen Amplitudencodevektor, der eine Gleichung C2l /El (48)maximiert, wobei gilt:
  • Figure 00200001
  • Er erhält auch das durch
    Figure 00200002
    gegebene zweite Erregungssignal.
  • Er berechnet weiterhin die Verzerrung D2 infolge des zweiten Erregungssignals unter Verwendung einer Gleichung
    Figure 00200003
    und gibt die Verzerrung D2 an die Beurteilungsschaltung 520 aus.
  • Alternativ kann die Verzerrung D2 als
    Figure 00200004
    erhalten werden, wobei Cl und El Korrelationswerte nach der Bestimmung der zweiten Erregungssignal-Impulspositionen sind.
  • Die Beurteilungsschaltung 520 vergleicht das erste und das zweite Erregungssignal c1'(n) und c2'(n) und auch die darauf zurückzuführenden Verzerrungen D1' und D2' und gibt das Erregungssignal mit der kleineren Verzerrung an den Verstärkungsquantisierer 530 aus, während ein Beurteilungscode an den Verstärkungsquantisierer 530 und den Multiplexer 400 ausgegeben wird.
  • 6 ist ein Blockdiagramm, in dem eine fünfte Ausführungsform der vorliegenden Erfindung dargestellt ist. Diese Ausführungsform beruht auf der dritten Ausführungsform, es ist jedoch auch möglich, ein ähnliches System bereitzustellen, das auf der vierten Ausführungsform beruht. Die Ausführungsform weist eine Modusbeurteilungsschaltung 900 auf, welche das Wahrnehmungsgewichtungssignal jedes Rahmens von der Wahrnehmungsgewichtungsschaltung 230 empfängt und Modusdaten an einen Erregungsquantisierer 600 ausgibt. Die Modusbeurteilungsschaltung 900 beurteilt den Modus unter Verwendung einer Merkmalsgröße des vorliegenden Rahmens. Die Merkmalsgröße kann eine rahmengemittelte Tonhöhen-Voraussageverstärkung sein. Die Tonhöhen-Voraussageverstärkung kann als
    Figure 00210001
    berechnet werden, wobei L die Anzahl der Unterrahmen in dem Rahmen ist, Pi die Sprachleistung in einem i-ten Unterrahmen ist und Ei die Tonhöhen-vorausgesagte Fehlerleistung ist.
  • Figure 00210002
  • Hierbei ist T eine optimale Verzögerung, die die Voraussageverstärkung maximiert.
  • Die Modusbeurteilungsschaltung 900 richtet mehrere verschiedene Modi durch Vergleichen der rahmengemittelten Tonhöhen-Voraussageverstärkung G mit jeweiligen vorbestimmten Schwellenwerten ein. Die Anzahl der verschiedenen Modi kann beispielsweise vier sein. Die Modusbeurteilungs-Schaltungsanordnung 900 gibt die Modusdaten an den Multiplexer 400 sowie an den Erregungsquantisierer 700 aus.
  • Wenn ein vorbestimmter Modus durch die empfangenen Modusdaten dargestellt wird, führt der Erregungsquantisierer 700 den gleichen Arbeitsgang wie im in 4 dargestellten ersten Erregungsquantisierer 500 aus und gibt das erste Erregungssignal an einen Verstärkungsquantisierer 750 aus, während die Impulspositionen und Polaritäten darstellende Codes an den Multiplexer 400 ausgegebenen werden. Wenn der vorbestimmte Modus nicht dargestellt wird, führt er den gleichen Arbeitsgang wie in dem in 4 dargestellten zweiten Erregungsquantisierer 510 aus und gibt die zweite Erregung an den Verstärkungsquantisierer 750 aus, während er die Impulspositionen und Polaritäten darstellende Codes an den Multiplexer 400 ausgibt.
  • Wenn der vorbestimmte Modus dargestellt wird, führt der Verstärkungsquantisierer 750 den gleichen Arbeitsgang wie im Verstärkungsquantisierer 365 aus. Andernfalls führt er den gleichen Arbeitsgang wie im in 1 dargestellten Verstärkungsquantisierer 530 aus.
  • Die vorstehend beschriebenen Ausführungsformen können auf verschiedene Arten modifiziert werden. Beispielsweise kann ein zum Quantisieren der Amplituden mehrerer Impulse verwendetes Codebuch vorab durch Untersuchen des Sprachsignals gespeichert werden. Ein Verfahren zum Speichern eines Codebuchs durch die Sprachsignaluntersuchung ist beispielsweise in Linde u. a. "An Algorithm for Vector Quantization Design", IEEE Trans. Commun., S. 84–95, Januar 1980 beschrieben.
  • An Stelle des Amplitudencodebuchs kann ein Polaritätscodebuch bereitgestellt werden, in dem Impulspolaritäts kombinationen, deren Anzahl der Anzahl der Bits und der Anzahl der Impulse entspricht, vorbereitet werden.
  • Es ist möglich, die Positionen einer beliebigen Anzahl von Impulsen mit Verstärkungsänderungen zu erhalten und adaptive Codebuchschaltungen oder Verstärkungscodebücher unter Verwendung von Modusdaten umzuschalten.
  • Es ist für die Impulsamplitudenquantisierung möglich, dafür zu sorgen, daß vorläufig mehrere Amplitudencodevektoren aus dem Amplitudencodebuch 351 für jede der mehreren Impulsgruppen mit jeweils L Impulsen ausgewählt werden und dann die Impulsamplitudenquantisierung unter Verwendung der ausgewählten Codevektoren zugelassen wird. Diese Anordnung ermöglicht das Verringern des für die Impulsamplitudenquantisierung erforderlichen Rechenaufwands.
  • Als ein Beispiel der Amplitudencodevektor-Auswahl werden mehrere Amplitudencodevektoren vorläufig ausgewählt und in der Reihenfolge, in der Gleichung (57) oder (58) maximiert wird, an den Erregungsquantisierer ausgegeben.
  • Figure 00230001
  • Wie vorstehend beschrieben wurde, werden gemäß der vorliegenden Erfindung die Positionen von M Impulsen mit von Null verschiedener Amplitude mit einer anderen Verstärkung für jede Impulsgruppe mit einer Anzahl kleiner als M abgerufen. Es ist auf diese Weise möglich, die Genauigkeit der Erregung zu erhöhen und die Leistungsfähigkeit im Vergleich zu Sprachcodierern aus dem Stand der Technik zu verbessern.
  • Die vorliegende Erfindung umfaßt einen ersten Erregungsquantisierer zum Abrufen der Positionen von Impulsen mit von Null verschiedener Amplitude, der ein Erregungssignal des eingegebenen Sprachsignals mit einer anderen Verstärkung für jede Gruppe der Impulse mit einer kleineren Anzahl von M erzeugt, und einen zweiten Erregungsquantisierer zum Abrufen der Positionen einer vorbestimmten Anzahl von Impulsen unter Verwendung der Spektralparameter, wobei für beide die Verzerrung beurteilt wird, um die bessere auszuwählen, und die bessere Erregung entsprechend der Merkmalszeitänderung des Sprachsignals verwendet wird, um die Eigenschaften zu verbessern.
  • Zusätzlich kann gemäß der vorliegenden Erfindung über einen Modus der eingegebenen Sprache entschieden werden, indem daraus eine Merkmalsgröße entnommen wird, und der erste und der zweite Erregungsquantisierer können geschaltet werden, um die Impulspositionen entsprechend dem festgelegten Modus zu erhalten. Es ist auf diese Weise möglich, mit einem geringeren Rechenaufwand stets eine gute Erregung zu verwenden, die zeitlichen Änderungen der Merkmalsgröße des Sprachsignals entspricht. Die Leistungsfähigkeit kann auf diese Weise im Vergleich zu den Sprachcodierern aus dem Stand der Technik verbessert werden.
  • 7 ist ein Blockdiagramm, in dem eine sechste Ausführungsform des Sprachcodierers gemäß der vorliegenden Erfindung dargestellt ist.
  • Mit Bezug auf die Figur sei bemerkt, daß eine Rahmenschaltung 110 ein von einem Eingangsanschluß 100 eingegebenes Sprachsignal in Rahmen (beispielsweise mit 10 ms) unterteilt und eine Unterrahmenschaltung 120 jeden Rahmen des Sprachsignals weiter in mehrere kürzere Unterrahmen (beispielsweise mit 5 ms) unterteilt.
  • Ein Spektralparametercomputer 200 berechnet Spektralparameter einer vorbestimmten Ordnung P (beispielsweise P = 10) durch Abschneiden des Sprachsignals mit einem Fenster, das länger als die Unterrahmenlänge ist (beispielsweise 24 ms) in bezug auf wenigstens einen Unterrahmen des Sprachsignals. Die Spektralparameter können in einem wohl bekannten Prozeß einer LPC-Analyse, einer Burg-Analyse usw. berechnet werden. Der Spektralparametercomputer 200 wandelt auch lineare Voraussageparameter αi (i = 1, ..., 10), die durch den Burg-Prozeß erhalten wurden, in LSP-Parameter um, die zur Quantisierung oder Interpolation geeignet sind. Beispielsweise wandelt der Spektralparametercomputer 200 die im zweiten Unterrahmen durch den Burg-Prozeß erhaltenen linearen Voraussageparameter in LSP-Parameter um, erhält die LSP-Parameter des ersten Unterrahmens durch lineare Interpolation, wandelt die LSP-Parameter des ersten Unterrahmens invers um, wodurch lineare Voraussageparameter erhalten werden, und gibt die linearen Voraussageparameter αil (i = 1, ..., 10, l = 1, ..., 2) des ersten und des zweiten Unterrahmens an eine Wahrnehmungsgewichtungseinrichtung 230 aus, während er die LSP-Parameter des zweiten Unterrahmens an einen Spektralparameterquantisierer 210 ausgibt.
  • Der Spektralparameterquantisierer 210 quantisiert wirksam LSP-Parameter der vorbestimmten Unterrahmen unter Verwendung eines Codebuchs 220 und gibt quantisierte LSP-Parameter aus, welche eine durch Gleichung (1) gegebene Verzerrung minimieren.
  • In der folgenden Beschreibung wird auch angenommen, daß die Vektorquantisierung als die Quantisierung verwendet wird und daß die LSP-Parameter des zweiten Unterrahmens quantisiert werden, wie vorstehend beschrieben wurde.
  • Der Spektralparameterquantisierer 210 stellt auch die LSP-Parameter des ersten Unterrahmens anhand der quantisierten LSP-Parameter des zweiten Unterrahmens wieder her. Im vorliegenden Fall werden die LSP-Parameter des ersten Unterrahmens durch lineare Interpolation zwischen den quantisierten LSP-Parametern des zweiten Unterrahmens des vorliegenden Rahmens und den quantisierten LSP-Parametern des zweiten Unterrahmens des unmittelbar vorhergehenden Rahmens wiederhergestellt. Hierbei werden die LSP-Parameter des ersten Unterrahmens durch die lineare Interpolation wiederhergestellt, nachdem ein Codevektor ausgewählt wurde, der die Fehlerleistung zwischen den nicht quantisierten und den quantisierten LSP-Parametern minimiert.
  • Der Spektralparameterquantisierer 210 wandelt die wiederhergestellten LSP-Parameter des ersten Unterrahmens und die quantisierten LSP-Parameter des zweiten Unterrahmens in die linearen Voraussageparameter αil (i = 1, ..., 10, l = 1, ..., 2) für jeden Unterrahmen um und gibt das Ergebnis der Umwandlung an einen Impulsantwortcomputer 310 aus, während ein Index, der den Codevektor der quantisierten LSP-Parameter des zweiten Unterrahmens darstellt, an einen Multiplexer 400 ausgegeben wird.
  • Die Wahrnehmungsgewichtungseinrichtung 230 empfängt die nicht quantisierten Linearvoraussageparameter αi (i = 1, ..., P) aller Unterrahmen vom Spektralparametercomputer 200, nimmt nach dem Literaturdokument 1 eine Wahrnehmungsgewichtung des Unterrahmen-Sprachsignals vor und gibt ein auf diese Weise erhaltenes wahrnehmungsgewichtetes Signal aus.
  • Ein Antwortsignalcomputer 240 empfängt die Linearvoraussageparameter αi aller Unterrahmen und auch die Linearvoraussagekoeffizienten αi' aller Unterrahmen, die durch Quantisierung und Interpolation wiederhergestellt wurden, vom Spektralparametercomputer 200 und vom Spektralparameterquantisierer 210, berechnet ein einem Eingangssignal d(n) = 0 für jeden Unterrahmen entsprechendes Antwortsignal unter Verwendung gespeicherter Filterspeicherdaten und gibt das berechnete Antwortsignal an einen Subtrahierer 235 aus. Das Antwortsignal xz(n) wird durch Gleichung (2) ausgedrückt. Wenn n – 1 ≤ 0 ist, werden die Gleichungen (3) und (4) verwendet.
  • Der Subtrahierer 235 subtrahiert das Antwortsignal von dem im Erwärmungssinne gewichteten Signal für einen Unterrahmen und gibt die Differenz xw'(n) an eine adaptive Codebuchschaltung 300 aus.
  • Die Impulsantwort-Berechnungseinrichtung 310 berechnet die Impulsantwort hw(n) des Wahrnehmungsgewichtungsfilters und führt die z-Transformationsgleichung (6) für eine vor bestimmte Anzahl L von Punkten aus und gibt das Ergebnis an die adaptive Codebuchschaltung 300 und auch an einen Erregungsquantisierer 350 aus.
  • Die adaptive Codebuchschaltung 300 empfängt das vorhergehende Erregungssignal v(n) von der Gewichtungssignal-Berechnungseinrichtung 360, das Ausgangssignal x'w(n) vom Subtrahierer 235 und die wahrnehmungsgewichtete Impulsantwort hw(n) von der Impulsantwort-Berechnungseinrichtung 310 und bestimmt eine der Tonhöhe entsprechende Verzögerung T, um die durch Gleichung (7) ausgedrückte Verzerrung zu minimieren. Sie erhält auch die Verstärkung β durch Gleichung (9).
  • Zum Verbessern der Verzögerungsextraktionsgenauigkeit für die Sprache von Frauen und Kindern kann die Verzögerung in Form dezimaler Abtastwerte an Stelle ganzzahliger Abtastwerte erhalten werden.
  • Die adaptive Codebuchschaltung 300 führt die Tonhöhenvoraussage nach Gleichung (10) aus und gibt das Voraussagefehlersignal zw(n) an den Erregungsquantisierer 350 aus.
  • Der Erregungsquantisierer 350 liefert Daten von M Impulsen. Der Arbeitsgang im Erregungsquantisierer 350 ist im Flußdiagramm aus 2 dargestellt.
  • 8 ist ein Blockdiagramm, in dem der Aufbau des Erregungsquantisierers 350 dargestellt ist.
  • Ein Detektor 351 zum Erfassen der Position des absoluten Maximums erfaßt eine Abtastposition, welche eine vorbestimmte Bedingung in Bezug auf ein Tonhöhenvoraussagesignal yw(n) erfüllt. Gemäß dieser Ausführungsform besteht die vorbestimmte Bedingung darin, daß "die absolute Amplitude maximal ist", und der Detektor 351 zum Erfassen der Position des absoluten Maximums erfaßt eine Abtastposition, welche diese Bedingung erfüllt und gibt die Daten zur erfaßten Abtastposition an eine Positionswiedergewinnungsbereichs-Festlegeeinrichtung 352 aus.
  • Die Positionswiedergewinnungsbereichs-Festlegeeinrichtung 352 legt einen Wiedergewinnungsbereich jeder Abtastposition fest, nachdem die Position des eingegebenen Impulses um eine vorbestimmte Anzahl L von Abtastwerten in die Zukunft oder in die Vergangenheit verschoben wurde.
  • Als ein Beispiel, in dem fünf Impulse in einem 5-ms-Unterrahmen (40 Abtastwerte) zu erhalten sind, sind bei einer Position D der eingegebenen Abtastwerte die in den Wiedergewinnungsbereichen dieser Impulse enthaltenen Positionskandidaten:
    Erster Impuls: D – L, D – L + 5, ...
    Zweiter Impuls: D – L + 1, D – L + 6, ...
    Dritter Impuls: D – L + 2, L + 7, ...
    Vierter Impuls: D – L + 3, L + 8, ...
    Fünfter Impuls: D – L + 4, L + 9, ...
  • Daraufhin werden zw(n) und hw(n) eingegeben, und ein erster und ein zweiter Korrelationscomputer 353 und 354 berechnen eine erste bzw. eine zweite Korrelationsfunktion d(n) bzw. ϕ unter Verwendung der Gleichungen (12) und (13).
  • Eine Impulspolaritäts-Festlegeeinrichtung 355 gewinnt die Polarität der ersten Korrelationsfunktion d(n) für alle Impulspositionskandidaten in dem von der Positionswiedergewinnungsbereichs-Festlegeeinrichtung 352 festgelegten Wiedergewinnungsbereich.
  • Eine Impulspositions-Wiedergewinnungseinrichtung 356 führt einen Arbeitsgang anhand der folgenden Gleichung mit Bezug auf die vorstehenden Positionskandidatenkombinationen aus und wählt eine Position, welche die gleiche Gleichung (14) maximiert, als eine optimale Position.
  • Falls die Anzahl der Impulse M ist, werden die Gleichungen (15) und (16) verwendet. Die verwendeten Impulspolaritäten wurden vorläufig von der Impulspolaritäts-Festlegeeinrichtung 355 gewonnen. Beim vorstehenden Arbeitsgang werden Polaritäts- und Positionsdaten der M Impulse an einen Verstärkungsquantisierer 365 ausgegeben.
  • Jede Impulsposition wird mit einer vorbestimmten Anzahl von Bits quantisiert, um einen entsprechenden Index zu erzeugen, der an den Multiplexer 400 ausgegeben wird. Die Impulspolaritätsdaten werden auch an den Multiplexer 400 ausgegeben.
  • Der Verstärkungsquantisierer 365 liest die Verstärkungscodevektoren aus einem Verstärkungscodebuch 355 aus, wählt einen Verstärkungscodevektor, der die folgende Gleichung minimiert, und wählt schließlich eine Kombination eines Amplitudencodevektors und eines Verstärkungscodevektors, wodurch die Verzerrung minimiert wird.
  • Es wird nun angenommen, daß drei verschiedene Erregungsverstärkungen G', die durch eine adaptive Codebuchverstärkung β' und Impulse dargestellt sind, gleichzeitig vektorquantisiert werden.
  • Figure 00290001
  • Mit βt', und Gt' sind die t-ten Elemente der im Verstärkungscodebuch 367 gespeicherten dreidimensionalen Verstärkungscodevektoren bezeichnet. Der Verstärkungsquantisierer 365 wählt einen Verstärkungscodevektor, der die Verzerrung Dt minimiert, durch Ausführen der vorstehenden Berechnung mit jedem Verstärkungscodevektor und gibt den Index des ausgewählten Verstärkungscodevektors an den Multiplexer 400 aus.
  • Der Gewichtungssignalcomputer 360 empfängt jeden Index, liest den entsprechenden Codevektor aus und erhält ein als
    Figure 00290002
    gegebenes Treibererregungssignal V(n). V(n) wird an die adaptive Codebuchschaltung 300 ausgegeben.
  • Der Gewichtungssignalcomputer 360 berechnet dann das Antwortsignal sw(n) für jeden Unterrahmen anhand der Ausgabeparameter des Spektralparametercomputers 200 und des Spektralparameterquantisierers 210 unter Verwendung der folgenden Gleichung und gibt das berechnete Antwortsignal an den Antwortsignalcomputer 240 aus.
  • 9 ist ein Blockdiagramm, in dem eine siebte Ausführungsform der vorliegenden Erfindung dargestellt ist. Diese Ausführungsform weist einen Erregungsquantisierer 450 auf, dessen Arbeitsweise von derjenigen bei der in 7 dargestellten Ausführungsform verschieden ist.
  • 10 zeigt den Aufbau des Erregungsquantisierers 450. Der Erregungsquantisierer 450 empfängt eine adaptive Codebuchverzögerung T sowie das Voraussagesignal yw(n), das Voraussagefehlersignal zw(n) und die wahrnehmungsgewichtete Impulsantwort hw(n).
  • Die Berechnungseinrichtung 451 zum Berechnen der Position des absoluten Maximums empfängt der Tonhöhenperiode entsprechende Verzögerungszeitdaten T, erfaßt eine Abtastposition, die dem maximalen Absolutwert des Tonhöhen-Voraussagesignals yw(n) in einem Bereich vom Anfang des Unterrahmens bis zu einer Abtastposition nach der Verzögerungszeit T entspricht und gibt die erfaßten Abtastpositionsdaten an die Positionswiedergewinnungsbereichs-Festlegeeinrichtung 352 aus.
  • 11 ist ein Blockdiagramm, in dem eine achte Ausführungsform der vorliegenden Erfindung dargestellt ist. Bei dieser Ausführungsform wird ein Erregungsquantisierer 550 verwendet, dessen Arbeitsweise von derjenigen des in 9 dargestellten Erregungsquantisierers 450 verschieden ist. 12 zeigt den Aufbau des Erregungsquantisierers 550.
  • Eine Positionswiedergewinnungsbereichs-Festlegeeinrichtung 552 legt Positionskandidaten von Impulsen durch die Verzögerung anhand der Positionen der Verzögerungszeit T fest, welche durch Verschieben von Positionen eingegebener Abtastwerte um eine vorbestimmte Anzahl L von Abtastwerten in die Zukunft oder in die Vergangenheit erhalten werden.
  • Bei einem Beispiel, in dem fünf Impulse in einem 5-ms-Unterrahmen (40 Abtastwerte) zu erhalten sind, sind Positionskandidaten der Impulse bei einer Position D des eingegebenen Abtastwerts:
    Erster Impuls: D – L, D – L + T, ...
    Zweiter Impuls: D – L + 1, D – L + T, ...
    Dritter Impuls: D – L + 2, D – L + T, ...
    Vierter Impuls: D – L + 3, D – L + T, ...
    Fünfter Impuls: D – L + 4, D – L + T, ...
  • 13 ist ein Blockdiagramm, in dem eine neunte Ausführungsform der vorliegenden Erfindung dargestellt ist. Diese Ausführungsform ist eine Modifikation der sechsten Ausführungsform, die durch Hinzufügen eines Amplitudencodebuchs erhalten wurde. Die siebte und die achte Ausführungsform können ebenso durch Hinzufügen eines Amplitudencodebuchs modifiziert werden.
  • Der Unterschied von 13 gegenüber 7 besteht in einem Erregungsquantisierer 390 und einem Amplitudencodebuch 395. 14 zeigt den Aufbau des Erregungsquantisierers 390. Gemäß dieser Ausführungsform wird eine Impulsamplitudenquantisierung unter Verwendung des Amplitudencodebuchs 395 vorgenommen.
  • In der Impulspositions-Wiedergewinnungseinrichtung 356 wählt ein Amplitudenquantisierer 397 nach dem Bestimmen der Positionen von M Impulsen einen Amplitudencodevektor, der die Gleichungen (22), (23) und die folgende Gleichung (61) maximiert, anhand des Amplitudencodebuchs 395 und gibt den Index des gewählten Amplitudencodevektors aus.
  • Figure 00310001
  • Hierbei ist gkj' der j-te Amplitudencodevektor des k-ten Impulses.
  • Der Impulspositionsquantisierer 390 gibt einen Index aus, der den ausgewählten Amplitudencodevektor darstellt, und er gibt auch die Positionsdaten und die Amplitudencodevektor-Daten an den Verstärkungsquantisierer 365 aus.
  • Wenngleich gemäß dieser Ausführungsform das Amplitudencodebuch verwendet wird, ist es möglich, stattdessen ein Polaritätscodebuch zu verwenden, das die Polaritäten von Impulsen für die Wiedergewinnung zeigt.
  • 15 ist ein Blockdiagramm einer zehnten Ausführungsform der vorliegenden Erfindung. Gemäß dieser Ausführungsform wird ein Erregungsquantisierer 600 verwendet, dessen Arbeitsweise von derjenigen des in 7 dargestellten Erregungsquantisierers 350 verschieden ist. Der Aufbau des Erregungsquantisierers 600 wird nun mit Bezug auf 16 beschrieben.
  • 16 ist ein Blockdiagramm, in dem der Aufbau des Erregungsquantisierers 600 dargestellt ist. Eine Positionswiedergewinnungsbereichs-Festlegeeinrichtung 652 verschiebt eine durch die Ausgangsdaten des Detektors 351 zum Bestimmen der Position des absoluten Maximums dargestellte Position um mehrere (beispielsweise Q) verschiedene Verschiebungsbeträge, legt Wiedergewinnungsbereiche und Impulspositionssätze für jeden Impuls in Bezug auf die jeweiligen verschobenen Positionen fest und gibt die Impulspositionssätze an eine Impulspolaritäts-Festlegeeinrichtung 655 und eine Impulswiedergewinnungseinrichtung 650 aus.
  • Die Impulspolaritäts-Festlegeeinrichtung 655 gewinnt Polaritätsdaten für alle von der Positionswiedergewinnungseinrichtung 652 empfangenen mehreren Positionskandidaten und gibt die gewonnenen Polaritätsdaten an die Impulspositions-Wiedergewinnungseinrichtung 656 aus.
  • Die Impulspositions-Wiedergewinnungseinrichtung 656 sucht eine Gleichung (14) maximierende Position in Bezug auf jeden von mehreren Positionskandidaten unter Verwendung der ersten und der zweiten Korrelationsfunktion und der Polarität. Die Impulspositions-Wiedergewinnungseinrichtung 656 wählt die Position aus, die Gleichung (14) maximiert, indem der vorstehende Arbeitsgang, entsprechend der Anzahl der verschiedenen Verschiebungsbeträge Q Mal ausgeführt wird und gibt Positions- und Verschiebungsbetragsdaten der Impulse aus, während auch die Verschiebungsbetragsdaten an den Multiplexer 400 ausgegeben werden.
  • 17 ist ein Blockdiagramm, in dem eine elfte Ausführungsform der vorliegenden Erfindung dargestellt ist. Bei dieser Ausführungsform wird ein Erregungsquantisierer 650 verwendet, dessen Arbeitsweise von derjenigen des Erregungsquantisierers 650 in 7 verschieden ist. Der Aufbau des Erregungsquantisierers 650 wird nun mit Bezug auf 18 beschrieben.
  • 18 ist ein Blockdiagramm, in dem der Aufbau des Erregungsquantisierers 650 dargestellt ist.
  • Eine Positionswiedergewinnungsbereichs-Festlegeeinrichtung 652 legt Positionen jedes Impulses in bezug auf Positionen fest, welche erhalten werden, indem eine durch die Ausgangsdaten des Detektors 451 zum Bestimmen der Position des absoluten Maximums dargestellte Position um mehrere (beispielsweise Q) Verschiebungsbeträge verschoben wird, und gibt Impulspositionssätze in der Anzahl der Verschiebungsbeträge an eine Impulspolaritäts-Festlegeeinrichtung 655 und eine Impulspositions-Wiedergewinnungseinrichtung 656 aus.
  • Die Impulspolaritäts-Festlegeeinrichtung 655 gewinnt Polaritätsdaten für jeden der mehreren von der Positionswiedergewinnungseinrichtung 652 ausgegebenen Positionskandidaten und gibt die gewonnenen Polaritätsdaten an die Impulspositions-Wiedergewinnungseinrichtung 656 aus.
  • Die Impulspositions-Wiedergewinnungseinrichtung 656 sucht unter Verwendung der ersten und der zweiten Korrelationsfunktion und der Polarität nach einer Position, die Gleichung (14) maximiert. Die Impulspositions-Wiedergewinnungseinrichtung 656 wählt schließlich die Position, die Gleichung (14) maximiert, auf Q verschiedene Arten durch Q-maliges Ausführen des vorstehenden Arbeitsgangs entsprechend der Anzahl der verschiedenen Verschiebungsbeträge und gibt Impulspositions- und Verschiebungsbetragsdaten aus, während auch die Verschiebungsbetragsdaten an den Multiplexer 400 ausgegeben werden.
  • 19 ist ein Blockdiagramm, in dem eine zwölfte Ausführungsform der vorliegenden Erfindung dargestellt ist. Bei dieser Ausführungsform wird ein Erregungsquantisierer 750 verwendet, dessen Arbeitsweise von derjenigen des Erregungsquantisierers 350 in 11 verschieden ist. Der Aufbau des Erregungsquantisierers 750 wird nun mit Bezug auf 20 beschrieben.
  • 20 ist ein Blockdiagramm, in dem der Aufbau des Erregungsquantisierers dargestellt ist.
  • Eine Positionswiedergewinnungsbereichs-Festlegeeinrichtung 752 legt Positionen für jeden Impuls fest, indem sie Positionen um eine Verzögerungszeit T verzögert, welche erhalten werden, indem sie eine durch die Ausgangsdaten des Detektors 451 zum Bestimmen der Position des absoluten Maximums dargestellte Position um mehrere (beispielsweise Q) Verschiebungsbeträge verschiebt. Die Positionswiedergewinnungsbereichs-Festlegeeinrichtung 752 gibt auf diese Weise Positionssätze jedes Impulses in einer Anzahl, die der Anzahl der verschiedenen Verschiebungsbeträge entspricht, an eine Impulspolaritäts-Festlegeeinrichtung 655 und eine Impulspositions-Wiedergewinnungseinrichtung 656 aus.
  • Die Impulspolaritäts-Festlegeeinrichtung 655 gewinnt Polaritätsdaten von jedem der mehreren Positionskandidaten von der Positionswiedergewinnungseinrichtung 652 und gibt die gewonnenen Polaritätsdaten an die Impulspositions-Wiedergewinnungseinrichtung 656 aus.
  • Die Impulspositions-Wiedergewinnungseinrichtung 656 sucht unter Verwendung der ersten und der zweiten Korrelationsfunktion und der Polarität nach einer Position, die Gleichung (14) maximiert. Die Impulspositions-Wiedergewinnungseinrichtung 656 wählt die Position, die Gleichung (14) maximiert, durch Q-maliges Ausführen des vorstehenden Arbeitsgangs entsprechend der Anzahl der verschiedenen Verschiebungsbeträge und gibt Impulspositions- und Verschiebungsbetragsdaten an den Verstärkungsquantisierer 365 aus, während die Verschiebungsbetragsdaten an den Multiplexer 400 ausgegeben werden.
  • 21 ist ein Blockdiagramm, in dem eine dreizehnte Ausführungsform der vorliegenden Erfindung dargestellt ist. Diese Ausführungsform wird als eine Modifikation der fünften Ausführungsform durch Hinzufügen eines Amplitudencodebuchs zur Impulsamplitudenquantisierung erhalten, es ist jedoch ebenso möglich, Modifikationen der elften und der zwölften Ausführungsform zu erhalten.
  • Diese Ausführungsform verwendet einen Erregungsquantisierer 850, dessen Arbeitsweise von derjenigen des in 13 dargestellten Erregungsquantisierers 390 verschieden ist. Der Aufbau des Erregungsquantisierers 850 wird nun mit Bezug auf 22 beschrieben.
  • 22 ist ein Blockdiagramm, in dem der Aufbau des Erregungsquantisierers 850 dargestellt ist.
  • Eine Positionswiedergewinnungsbereichs-Festlegeeinrichtung 652 legt Positionen jedes Impulses mit Bezug auf Positionen fest, welche erhalten werden, indem eine Position, die durch die Ausgangsdaten des Detektors 351 zum Erfassen der Position des absoluten Maximums dargestellt wird, um mehrere verschiedene (beispielsweise Q) Verschiebungsbeträge verschoben wird, und sie gibt Impulspositionssätze, deren Anzahl der Anzahl der verschiedenen Verschiebungsbeträge entspricht, an eine Impulspolaritäts-Festlegeeinrichtung 655 und eine Impulspositions-Wiedergewinnungseinrichtung 656 aus.
  • Die Impulspolaritäts-Festlegeeinrichtung 655 gewinnt Polaritätsdaten von jedem von mehreren Positionskandidaten der Positionswiedergewinnungseinrichtung 652 und gibt die gewonnenen Polaritätsdaten an die Impulspositions-Wiedergewinnungseinrichtung 656 aus.
  • Die Impulspositions-Wiedergewinnungseinrichtung 656 sucht mit Bezug auf jeden von mehreren Positionskandidaten unter Verwendung der ersten und der zweiten Korrelationsfunktion und der Polarität nach einer Position zum Maximieren von Gleichung (14). Die Impulspositions-Wiedergewinnungs einrichtung 656 wählt die Position, die Gleichung (14) maximiert, durch Q-maliges Ausführen des vorstehenden Arbeitsgangs entsprechend der Anzahl der verschiedenen Verschiebungsbeträge und gibt Impulspositions- und Verschiebungsbetragsdaten an den Verstärkungsquantisierer 365 aus, während auch die Verschiebungsbetragsdaten an den Multiplexer 400 ausgegeben werden. Die Arbeitsweise eines Amplitudenquantisierers 397 gleicht derjenigen des in 14 dargestellten.
  • 23 ist ein Blockdiagramm, in dem eine vierzehnte Ausführungsform der vorliegenden Erfindung dargestellt ist. Diese Ausführungsform beruht auf der ersten Ausführungsform, es ist jedoch möglich, sie auf der Grundlage anderer Ausführungsformen zu modifizieren.
  • Eine Modusbeurteilungsschaltung 900 empfängt das wahrnehmungsgewichtete Signal in Einheiten von Rahmen von der Wahrnehmungsgewichtungsschaltung 230 und gibt Modusdaten an eine adaptive Codebuchschaltung 950, einen Erregungsquantisierer 960 und einen Verstärkungsquantisierer 965 sowie an den Multiplexer 400 aus. Als Modusdaten wird eine Merkmalsgröße des vorliegenden Rahmens verwendet. Als Merkmalsgröße wird die rahmengemittelte Tonhöhen-Voraussageverstärkung verwendet. Die Tonhöhen-Voraussageverstärkung kann unter Verwendung einer Gleichung
    Figure 00360001
    berechnet werden, wobei L die Anzahl der in dem Rahmen enthaltenen Unterrahmen ist und Pi und Ei die Sprachleistung bzw. die Tonhöhen-Voraussage-Fehlerleistung in einem i-ten Rahmen sind, welche jeweils als
    Figure 00360002
    und
    Figure 00370001
    gegeben sind, wobei T die der maximalen Voraussageverstärkung entsprechende optimale Verzögerung ist.
  • Die Modusbeurteilungsschaltung 900 beurteilt mehrere (beispielsweise R) verschiedene Modi durch Vergleichen der rahmengemittelten Tonhöhen-Voraussageverstärkung G mit entsprechenden Schwellenwerten. Die Anzahl R der verschiedenen Modi kann 4 sein.
  • Wenn die ausgegebenen Modusdaten einen vorbestimmten Modus darstellen, empfängt die adaptive Codebuchschaltung 950 diese Daten, führt den gleichen Arbeitsgang wie im in 7 dargestellten adaptiven Codebuch 300 aus und gibt ein Verzögerungssignal, ein adaptives Codebuchvoraussagesignal und ein Voraussagefehlersignal aus. Mit anderen Worten gibt sie direkt ihr Eingangssignal vom Subtrahierer 235 aus.
  • Gleichzeitig, also im vorstehenden vorbestimmten Modus, führt der Erregungsquantisierer 960 den gleichen Arbeitsgang wie in dem in 7 dargestellten Erregungsquantisierer 350 aus.
  • Der Verstärkungsquantisierer 965 schaltet mehrere Verstärkungscodebücher 3671 bis 367R , die für jeden Modus vorgesehen sind und entsprechend den empfangenen Modusdaten zur Verstärkungsquantisierung zu verwenden sind.
  • Die vorstehenden Ausführungsformen sind in keiner Weise einschränkend, und es sind verschiedene Änderungen und Modifikationen möglich. Beispielsweise kann ein Codebuch zur Amplitudenquantisierung mehrerer Impulse unter Verwendung eines Sprachsignals vorläufig untersucht und gespeichert werden. Ein Codebuchuntersuchungsverfahren ist beispielsweise in Linde u. a. "An algorithm for Vector Quantization Design", IEEE Trans. Commun., S. 84–95, Januar 1980 beschrieben.
  • Als eine Alternative für das Amplitudencodebuch kann ein Polaritätscodebuch verwendet werden, in dem Impulspolaritätskombinationen, deren Anzahl der Anzahl der Bits und der Impulse entspricht, gespeichert sind.
  • Wie vorstehend beschrieben wurde, erhält gemäß der vorliegenden Erfindung der Erregungsquantisierer eine Position, die eine vorbestimmte Bedingung in bezug auf ein im adaptiven Codebuch erhaltenes Tonhöhen-Voraussagesignal erfüllt, legt mehrere Impulspositions-Wiedergewinnungsbereiche für ein Erregungssignal bildende jeweilige Impulse fest und durchsucht diese Impulspositions-Wiedergewinnungsbereiche nach der besten Position. Es ist auf diese Weise auch möglich, ein zufriedenstellendes Erregungssignal bereitzustellen, das eine Tonhöhenwellenform darstellt, indem die Impulspositions-Wiedergewinnungsbereiche mit der Tonhöhenwellenform synchronisiert werden. Auf diese Weise kann mit einer verringerten Bitrate verglichen mit dem System aus dem Stand der Technik eine zufriedenstellende Tonqualität erhalten werden.
  • Zusätzlich kann gemäß der vorliegenden Erfindung der Erregungsquantisierer den vorstehenden Prozeß in einem vorbestimmten von mehreren verschiedenen Modi, welche anhand einer von der eingegebenen Sprache gewonnenen Merkmalsgröße beurteilt werden, ausgeführt werden. Es ist auf diese Weise möglich, die Tonqualität für Positionen der den Modi entsprechenden Sprache, worin die Periodizität der Sprache stark ist, zu verbessern.
  • Änderungen des Aufbaus werden Fachleuten einfallen, und es können verschiedene offensichtlich verschiedene Modifikationen und Ausführungsformen vorgenommen werden, ohne vom Schutzumfang der vorliegenden Erfindung abzuweichen. Der in der vorstehenden Beschreibung und der anliegenden Zeichnung dargelegte Gegenstand dient nur der Erläuterung. Es ist daher vorgesehen, daß die vorstehende Beschreibung als erläuternd und nicht als einschränkend angesehen wird.

Claims (1)

  1. Sprachcodierer, der aufweist: einen Spektralparameterrechner (200) zur Gewinnung von Spektralparametern aus einem Eingangssprachsignal und zur Quantisierung der so gewonnenen Spektralparameter, einen Impulsantwortrechner (310) zur Berechnung von Impulsantworten, die den Spektralparametern entsprechen, einen ersten Korrelationsrechner zur Berechnung von Korrelationen zwischen dem Eingangssignal und der Impulsantwort, einen zweiten Korrelationsrechner zur Berechnung von Korrelationen zwischen den Impulsantworten, einen ersten Impulsdatenrechner zur Berechnung der Positionen von ersten M1 Impulsen, mit M1 ≥ 2, aus den Ausgangssignalen der ersten und zweiten Korrelationsrechner, einen dritten Korrelationsrechner zum Korrigieren des Ausgangssignals des ersten Korrelationsrechners unter Verwendung des Ausgangssignals des ersten M1-Impulsdatenrechners, und einen zweiten Impulsdatenrechner zur gemeinsamen Berechnung der Positionen von zweiten M2 Impulsen, mit M2 ≥ 2, aus dem Ausgangssignal des dritten und der zweiten Korrelationsrechners, wobei die Impulsdatenberechnung erfolgt, indem die Korrelationskorrektur und die Impulsdatenberechnung so oft wie vorgegeben iterativ ausgeführt wird.
DE69727256T 1996-08-26 1997-08-26 Sprachkodierer hoher Qualität mit niedriger Bitrate Expired - Lifetime DE69727256T2 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP26112196A JP3360545B2 (ja) 1996-08-26 1996-08-26 音声符号化装置
JP26112196 1996-08-26
JP30714396 1996-10-31
JP30714396A JP3471542B2 (ja) 1996-10-31 1996-10-31 音声符号化装置

Publications (2)

Publication Number Publication Date
DE69727256D1 DE69727256D1 (de) 2004-02-19
DE69727256T2 true DE69727256T2 (de) 2004-10-14

Family

ID=26544914

Family Applications (3)

Application Number Title Priority Date Filing Date
DE69732384T Expired - Lifetime DE69732384D1 (de) 1996-08-26 1997-08-26 Sprachkodierer hoher Qualität mit niedriger Bitrate
DE69727256T Expired - Lifetime DE69727256T2 (de) 1996-08-26 1997-08-26 Sprachkodierer hoher Qualität mit niedriger Bitrate
DE69725945T Expired - Lifetime DE69725945T2 (de) 1996-08-26 1997-08-26 Sprachkodierer mit niedriger Bitrate

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE69732384T Expired - Lifetime DE69732384D1 (de) 1996-08-26 1997-08-26 Sprachkodierer hoher Qualität mit niedriger Bitrate

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE69725945T Expired - Lifetime DE69725945T2 (de) 1996-08-26 1997-08-26 Sprachkodierer mit niedriger Bitrate

Country Status (4)

Country Link
US (1) US5963896A (de)
EP (3) EP0834863B1 (de)
CA (1) CA2213909C (de)
DE (3) DE69732384D1 (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0883107B9 (de) 1996-11-07 2005-01-26 Matsushita Electric Industrial Co., Ltd Schallquellengenerator, sprachkodierer und sprachdekodierer
EP1734512B1 (de) * 1997-10-22 2015-09-09 Godo Kaisha IP Bridge 1 CELP Kodierer und Verfahren für die CELP Kodierung
JP3998330B2 (ja) * 1998-06-08 2007-10-24 沖電気工業株式会社 符号化装置
CA2300077C (en) * 1998-06-09 2007-09-04 Matsushita Electric Industrial Co., Ltd. Speech coding apparatus and speech decoding apparatus
US6480822B2 (en) * 1998-08-24 2002-11-12 Conexant Systems, Inc. Low complexity random codebook structure
US6714907B2 (en) * 1998-08-24 2004-03-30 Mindspeed Technologies, Inc. Codebook structure and search for speech coding
US6556966B1 (en) * 1998-08-24 2003-04-29 Conexant Systems, Inc. Codebook structure for changeable pulse multimode speech coding
JP3824810B2 (ja) * 1998-09-01 2006-09-20 富士通株式会社 音声符号化方法、音声符号化装置、及び音声復号装置
WO2003071522A1 (fr) * 2002-02-20 2003-08-28 Matsushita Electric Industrial Co., Ltd. Procede de production de vecteur de source sonore fixe et table de codage de source sonore fixe
US7412012B2 (en) * 2003-07-08 2008-08-12 Nokia Corporation Pattern sequence synchronization
DE602004005414D1 (de) * 2004-02-10 2007-05-03 Gamesa Eolica S A Soc Uniperso Prüfstand für Windkraftanlagen
US7831421B2 (en) 2005-05-31 2010-11-09 Microsoft Corporation Robust decoder
US8036886B2 (en) * 2006-12-22 2011-10-11 Digital Voice Systems, Inc. Estimation of pulsed speech model parameters
JP4871894B2 (ja) * 2007-03-02 2012-02-08 パナソニック株式会社 符号化装置、復号装置、符号化方法および復号方法
BRPI0808202A8 (pt) * 2007-03-02 2016-11-22 Panasonic Corp Dispositivo de codificação e método de codificação.
US11270714B2 (en) 2020-01-08 2022-03-08 Digital Voice Systems, Inc. Speech coding using time-varying interpolation

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4022974A (en) * 1976-06-03 1977-05-10 Bell Telephone Laboratories, Incorporated Adaptive linear prediction speech synthesizer
CA1229681A (en) * 1984-03-06 1987-11-24 Kazunori Ozawa Method and apparatus for speech-band signal coding
EP0443548B1 (de) * 1990-02-22 2003-07-23 Nec Corporation Sprachcodierer
JP3114197B2 (ja) * 1990-11-02 2000-12-04 日本電気株式会社 音声パラメータ符号化方法
JP3151874B2 (ja) * 1991-02-26 2001-04-03 日本電気株式会社 音声パラメータ符号化方式および装置
JP2776050B2 (ja) * 1991-02-26 1998-07-16 日本電気株式会社 音声符号化方式
JP3143956B2 (ja) * 1991-06-27 2001-03-07 日本電気株式会社 音声パラメータ符号化方式
CA2084323C (en) * 1991-12-03 1996-12-03 Tetsu Taguchi Speech signal encoding system capable of transmitting a speech signal at a low bit rate
FI95085C (fi) * 1992-05-11 1995-12-11 Nokia Mobile Phones Ltd Menetelmä puhesignaalin digitaaliseksi koodaamiseksi sekä puhekooderi menetelmän suorittamiseksi
EP0577488B9 (de) * 1992-06-29 2007-10-03 Nippon Telegraph And Telephone Corporation Verfahren und Vorrichtung zur Sprachkodierung
CA2102080C (en) * 1992-12-14 1998-07-28 Willem Bastiaan Kleijn Time shifting for generalized analysis-by-synthesis coding
JP2746039B2 (ja) * 1993-01-22 1998-04-28 日本電気株式会社 音声符号化方式
US5598504A (en) * 1993-03-15 1997-01-28 Nec Corporation Speech coding system to reduce distortion through signal overlap
JP2658816B2 (ja) * 1993-08-26 1997-09-30 日本電気株式会社 音声のピッチ符号化装置
US5568588A (en) * 1994-04-29 1996-10-22 Audiocodes Ltd. Multi-pulse analysis speech processing System and method
CA2154911C (en) * 1994-08-02 2001-01-02 Kazunori Ozawa Speech coding device
JP3179291B2 (ja) * 1994-08-11 2001-06-25 日本電気株式会社 音声符号化装置
US5751903A (en) * 1994-12-19 1998-05-12 Hughes Electronics Low rate multi-mode CELP codec that encodes line SPECTRAL frequencies utilizing an offset
JPH08272395A (ja) * 1995-03-31 1996-10-18 Nec Corp 音声符号化装置
US5774837A (en) * 1995-09-13 1998-06-30 Voxware, Inc. Speech coding system and method using voicing probability determination

Also Published As

Publication number Publication date
DE69732384D1 (de) 2005-03-03
US5963896A (en) 1999-10-05
EP1162603A1 (de) 2001-12-12
DE69725945T2 (de) 2004-05-13
EP1162603B1 (de) 2004-01-14
EP1162604A1 (de) 2001-12-12
DE69727256D1 (de) 2004-02-19
EP0834863A2 (de) 1998-04-08
EP1162604B1 (de) 2005-01-26
CA2213909C (en) 2002-01-22
DE69725945D1 (de) 2003-12-11
EP0834863A3 (de) 1999-07-21
CA2213909A1 (en) 1998-02-26
EP0834863B1 (de) 2003-11-05

Similar Documents

Publication Publication Date Title
DE69636209T2 (de) Vorrichtung zur Sprachkodierung
DE69828725T2 (de) Sprachcodier- und -decodiersystem
DE69727256T2 (de) Sprachkodierer hoher Qualität mit niedriger Bitrate
DE69839407T2 (de) Verfahren und Vorrichtung zum Generieren von Vektoren für die Sprachdekodierung
DE69932460T2 (de) Sprachkodierer/dekodierer
DE69634179T2 (de) Verfahren und Vorrichtung zur Sprachkodierung und -dekodierung
DE69915400T2 (de) Vorrichtung zur Kodierung und Dekodierung von Audiosignalen
DE69814517T2 (de) Sprachkodierung
DE69736446T2 (de) Audio Dekodierverfahren und -vorrichtung
DE19647298C2 (de) Kodiersystem
DE60006271T2 (de) Celp sprachkodierung mit variabler bitrate mittels phonetischer klassifizierung
DE60308567T2 (de) Dekodierungsgerät, Kodierungsgerät, Dekodierungsverfahren und Kodierungsverfahren
DE69729527T2 (de) Verfahren und Vorrichtung zur Kodierung von Sprachsignalen
DE69727895T2 (de) Verfahren und Vorrichtung zur Sprachkodierung
DE60133757T2 (de) Verfahren und vorrichtung zur kodierung von stimmloser sprache
DE69921066T2 (de) Verfahren und Vorrichtung zur Sprachkodierung
DE60309651T2 (de) Verfahren zur Sprachkodierung mittels verallgemeinerter Analyse durch Synthese und Sprachkodierer zur Durchführung dieses Verfahrens
DE60028500T2 (de) Sprachdekodierung
DE4491015C2 (de) Verfahren zum Erzeugen eines Spektralrauschbewertungsfilters zur Verwendung in einem Sprachcoder
DE69830816T2 (de) Mehrstufige Audiodekodierung
DE69630177T2 (de) Sprachkodierer mit der Fähigkeit zur wesentlichen Vergrösserung der Codebuchgrösse ohne aber die Zahl der übertragenen Bits zu vergrössern
DE60016305T2 (de) Verfahren zum Betrieb eines Sprachkodierers
DE60126334T2 (de) Sprachkodierungssystem und sprachkodierungsverfahren
DE10004862B4 (de) Ein schnelles Suchverfahren für LSP-Quantisierung
DE69820515T2 (de) Vorrichtung zur Sprachcodierung unter Verwendung eines Mehrimpulsanregungssignals

Legal Events

Date Code Title Description
8364 No opposition during term of opposition