DE69734837T2 - Sprachkodierer, sprachdekodierer, sprachkodierungsmethode und sprachdekodierungsmethode - Google Patents

Sprachkodierer, sprachdekodierer, sprachkodierungsmethode und sprachdekodierungsmethode Download PDF

Info

Publication number
DE69734837T2
DE69734837T2 DE69734837T DE69734837T DE69734837T2 DE 69734837 T2 DE69734837 T2 DE 69734837T2 DE 69734837 T DE69734837 T DE 69734837T DE 69734837 T DE69734837 T DE 69734837T DE 69734837 T2 DE69734837 T2 DE 69734837T2
Authority
DE
Germany
Prior art keywords
excitation
pulse
excitation signal
coding
unit
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
DE69734837T
Other languages
English (en)
Other versions
DE69734837D1 (de
Inventor
Hirohisa Chiyoda-ku TASAKI
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of DE69734837D1 publication Critical patent/DE69734837D1/de
Publication of DE69734837T2 publication Critical patent/DE69734837T2/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
    • G10L13/00Speech synthesis; Text to speech systems
    • 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/083Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being an excitation gain
    • 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/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation

Landscapes

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

Description

  • TECHNISCHES GEBIET
  • Diese Erfindung bezieht sich auf ein Verfahren und eine Vorrichtung zur Sprachcodierung und Sprachdecodierung, die eine Verdichtungscodierung für ein Sprachsignal in ein digitales Signal und eine Dehnungsdecodierung für das digitale Signal in das Sprachsignal durchführt. Zusätzlich bezieht sich diese Erfindung auf ein Verfahren und eine Vorrichtung zur Sprachcodierung/-decodierung, bei denen die Sprachcodierung und die Sprachdecodierung kombiniert sind.
  • STAND DER TECHNIK
  • Bei vielen herkömmlichen Sprachcodier-/-decodiervorrichtungen wird eine eingegebene Sprache in Spektrumumhüllungsinformationen und ein Erregungssignal aufgeteilt. Dann wird das Erregungssignal pro Rahmen codiert und das codierte Erregungssignal wird deco diert, um eine ausgegebene Sprache zu erzeugen.
  • Die Spektrumumhüllungsinformationen stellen eine allgemeine Zahl eines Amplituden(Leistungs)-Spektrums eines Sprachsignals dar. Das Erregungssignal ist eine Energiequelle zum Erzeugen von Sprache. In einem Sprachcodiervorgang und einer Sprachsynthese wird das Erregungssignal durch eine Form dargestellt, die ein periodisches Muster oder eine periodische Reihe von Impulsen darstellt, um angenähert gezeigt zu werden. Viele Verbesserungen wurden insbesondere für das Verfahren der Codierung/Decodierung des Erregungssignals durchgeführt, um die Qualität des Codierens/Decodierens zu erhöhen. Eine Sprachcodier-/-decodiervorrichtung, die "celp" (codeerregtes linear vorhersagendes Codieren) anwendet, ist bekannt als die typischste Sprachcodier-/-decodiervorrichtung.
  • 13 zeigt die Gesamtkonfiguration der herkömmlichen Sprachcodier-/-decodiervorrichtung, die celp anwendet. In 13 sind eine Codiereinheit 1, eine Decodiereinheit 2, eine Multiplexeinheit 3, eine Trenneinheit, 4, Eingangssprache 5, Code 6 und Ausgangssprache 7 gezeigt. Die Codiereinheit 1 ist zusammengesetzt aus einer Linearvorhersage-Analysiereinheit 8, einer Linearvorhersagekoeffizienten-Codiereinheit 9, einer Codiereinheit 10 für adaptive Erregung, einer Codiereinheit 11 für stochastische Erregung und einer Verstärkungscodiereinheit 12. Die Decodiereinheit 2 ist zusammengesetzt aus einer Linearvorhersagekoeffizienten-Decodiereinheit 13, einem Synthesefilter 14, einer Decodiereinheit 15 für adaptive Erregung, einer Decodiereinheit 16 für stochastische Erregung und einer Verstärkungsdecodiereinheit 17.
  • Ein Sprachstück von etwa 5 bis 50 ms Länge ist in der herkömmlichen Sprachcodier-/-decodiervorrichtung als ein Rahmen definiert. Die Sprache in dem Rahmen ist in Spektrumumhüllungsinformationen und ein Erregungssignal in der zu codierenden Reihenfolge geteilt.
  • Die Arbeitsweise der herkömmlichen Sprachcodier-/-decodiervorrichtung wird nun beschrieben. Zuerst analysiert in der Codiereinheit 1 die Linearvorhersage-Analysiereinheit 8 die Eingangssprache 5 und zieht einen Linearvorhersagekoeffizienten heraus, der die Spektrumumhüllungsinformationen der Sprache darstellt. Die Linearvorhersagekoeffizienten-Codiereinheit 9 codiert den Linearvorhersagekoeffizienten und gibt den codierten Code zu der Multiplexeinheit 3 als einen codierten Linearvorhersagekoeffizienten 18 für die Codierung des Erregungssignals aus.
  • Unter Bezugnahme auf die 20, 21 und 22 wird nun die Codierung des Erregungssignals erläutert. Wie in 20 gezeigt ist, sind mehrere alte Erregungssignale (d.h. S alte Erregungssignale) als adaptive Erregungen 113 entsprechend adaptiven Erregungscodes 111 in einem adaptiven Erregungscodebuch 110 der Codiereinheit 110 für adaptive Erregung gespeichert. Ein Zeitserienvektor 114 wird erzeugt durch periodisches Wiederholen der adaptiven Erregung 113, d.h., des alten Erregungssignals, entsprechend jedem Code 111 für adaptive Erregung. Dann wird ein vorübergehendes synthetisches Signal 116 erzeugt durch Multiplizieren jedes Zeitserienvektors 114 mit einer zweckmäßigen Verstärkung "g" und Filtern des multiplizierten Zeitserienvektors 114 durch Verwendung eines Synthesefilters 115, in welchem der codierte Linearvorhersagekoeffizient 18 verwendet wird. Ein Fehlersignal 118 wird erhalten auf der Grundlage einer Diffe renz zwischen dem vorübergehenden synthetischen Signal 116 und der Eingangssprache 5, um den Abstand zwischen dem vorübergehenden synthetischen Signal 116 und der Eingangssprache 5 zu berechnen. Dieser Vorgang wird S-mal wiederholt durch Verwendung jeder adaptiven Erregung 113. Dann wird der Code 111 für adaptive Erregung ausgewählt, der den Abstand am kürzesten macht. Der Zeitserienvektor 114 entsprechend dem ausgewählten Code 111 für adaptive Erregung wird als die adaptive Erregung 113 ausgegeben, und eines der Fehlersignale 118 entsprechend dem ausgewählten Code 111 für adaptive Erregung wird ebenfalls ausgegeben.
  • Wie in 21 gezeigt ist, werden mehrere stochastische Erregungen 133 (d.h., T stochastische Erregungen) entsprechend Codes 131 für stochastische Erregung in einem Codebuch 130 für stochastische Erregung der Codiereinheit 11 für stochastische Erregung gespeichert. Ein vorübergehendes synthetisches Signal 136 wird erzeugt durch Multiplizieren jeder stochastischen Erregung 133 mit der zweckmäßigen Verstärkung "g" und Filtern der multiplizierten stochastischen Erregung 133 durch Verwendung eines Synthesefilters 135, in welchem der codierte Linearvorhersagekoeffizient 18 verwendet wird. Der Abstand zwischen dem vorübergehenden synthetischen Signal 136 und dem Fehlersignal 118 wird berechnet. Dieser Vorgang wird T-mal wiederholt durch Verwendung jeder stochastischen Erregung 133. Dann wird der Code 131 für stochastische Erregung, der den Abstand am kürzesten macht, ausgewählt, und die stochastische Erregung 133 entsprechend dem ausgewählten Code 131 wird ebenfalls ausgegeben.
  • Wie in 22 gezeigt ist, sind mehrere Verstär kungsgruppen (d.h., U Verstärkungsgruppen) entsprechend Verstärkungscodes 151 in einem Verstärkungscodebuch 150 der Verstärkungscodiereinheit 12 gespeichert. Ein Verstärkungsvektor 154 (g1, g2) entsprechend jedem Verstärkungscode 151 wird erzeugt. Ein vorübergehendes synthetisches Signal 156 wird erzeugt durch Multiplizieren der adaptiven Erregung 113 (Zeitserienvektor 114) mit dem Element g1 jedes Verstärkungsvektors 154 durch Verwendung einer Multiplikationsvorrichtung 166, Multiplizieren der stochastischen Erregung 133 mit dem Element g2 jedes Verstärkungsvektors 154 durch Verwendung einer Multiplikationsvorrichtung 167, Addieren der multiplizierten Werte durch Verwendung eines Addierers 968 und Filtern des addierten Wertes durch Verwendung eines Synthesefilters, in welchem der codierte Linearvorhersagekoeffizient 18 verwendet wird. Der Abstand zwischen dem vorübergehenden synthetischen Signal 156 und der Eingangssprache 5 wird berechnet. Dieser Vorgang wird U-mal wiederholt durch Verwendung jeder Verstärkung. Dann wird der Verstärkungscode 151, der den Abstand am kürzesten macht, ausgewählt. Ein Erregungssignal 163 wird erzeugt durch Multiplizieren der adaptiven Erregung 113 mit dem Element g1 des Verstärkungsvektors 154 entsprechend dem ausgewählten Verstärkungscode 151, Multiplizieren der stochastischen Erregung 133 mit dem Element g2 des Verstärkungsvektors 154 entsprechend dem ausgewählten Verstärkungscode 151, und Addieren der multiplizierten Werte. Die Codiereinheit 10 für adaptive Erregung aktualisiert das Codebuch 110 für adaptive Erregung durch Verwendung des Erregungssignals 163.
  • Die Multiplexeinheit 3 führt eine Multiplexverarbeitung des codierten Linearvorhersagekoeffizienten 18, des adaptiven Erregungscodes 111, des stochastischen Erregungscodes 131 und des Verstärkungscodes 151 durch und gibt den Multiplexwert als den Code 6 aus. Die Trenneinheit 4 trennt den Code 6 in den codierten Linearvorhersagekoeffizienten 18, den adaptiven Erregungscode 111, den stochastischen Erregungscode 131 und den Verstärkungscode 151.
  • In der Decodiereinheit 2 decodiert die Linearvorhersagekoeffizienten-Decodiereinheit 13 einen Linearvorhersagekoeffizienten aus dem codierten Linearvorhersagekoeffizienten 18 und setzt den decodierten Koeffizienten als einen Koeffizienten des Synthesefilters 14. Die adaptive Erregungsdecodiereinheit 15 speichert alte Erregungssignale in einem adaptiven Erregungscodebuch und gibt einen Zeitserienvektor 128 aus, der gebildet ist durch periodisches Wiederholen mehrerer alter Erregungssignale entsprechend einem adaptiven Erregungscode. Die stochastische Erregungsdecodiereinheit 16 speichert mehrere stochastische Erregungen in einem stochastischen Erregungscodebuch und gibt einen Zeitserienvektor 148 entsprechend einem stochastischen Erregungscode aus. Die Verstärkungsdecodiereinheit 17 speichert mehrere Verstärkungsgruppen in einem Verstärkungscodebuch und gibt einen Verstärkungsvektor 168 entsprechend einem Verstärkungscode aus. In der Decodiereinheit 2 wird ein Erregungssignal 198 erzeugt durch Multiplizieren des Zeitserienvektors 128 mit dem Element g1 des Verstärkungsvektors, Multiplizieren des Zeitserienvektors 148 mit dem Element g2 des Verstärkungsvektors und Addieren der multiplizierten Werte. Dieses Erregungssignal 198 wird gefiltert durch Verwendung des Synthesefilters 14, um die Ausgangssprache 7 zu bilden. Dann wird das adaptive Erregungscodebuch in der adaptiven Erregungsdecodiereinheit 15 aktualisiert durch Verwendung des erzeugten Erregungssignals 198.
  • Eine celp anwendende Sprachcodier-/-decodiervorrichtung, bei der eine Impulserregung für die Codierung einer stochastischen Erregung verwendet wird, um hauptsächlich den Berechnungsaufwand und den Speicheraufwand zu reduzieren, ist offenbart in einem Artikel von Akitoshi Kataoka, Shinji Hayashi, Takehiro Moriya, Syoko Kurihara und Kazunori Mano mit dem Titel "Basic Algorithm of Conjugate-Structure Algebraic CELP (CS-ACELP) Speech Coder" in NTT R & D, Band 45 (April 1996), Seiten 325–330. (Dieser Artikel wird nachfolgend als "Artikel 1" bezeichnet).
  • 14 zeigt die Konfiguration der stochastischen Erregungscodiereinheit 11, die in der herkömmlichen Sprachcodier-/-decodiervorrichtung, die in Artikel 1 offenbart ist, verwendet wird. Die gesamte Ausbildung der Sprachcodier-/-decodiervorrichtung ist dieselbe wie in 13. In 14 sind der codierte Linearvorhersagekoeffizient 18, ein stochastischer Erregungscode 19, der dem stochastischen Erregungscode 131 entspricht, ein Codierzielsignal 20, das dem Fehlersignal 118 entspricht, eine Impulsantwort-Berechnungseinheit 21, eine Impulspositions-Sucheinheit 22 und ein Impulspositions-Codebuch 23 gezeigt. Das Codierzielsignal 20 entspricht dem Fehlersignal 118, wie in 21 gezeigt ist, gebildet durch Multiplizieren (des Zeitserienvektors 114) der adaptiven Erregung 113 mit einer angemessenen Verstärkung, Filtern des multiplizierten Vektors durch Verwendung des Synthesefilters 115 und Subtrahieren des gefilterten Signals von der Eingangssprache 5.
  • 15 ist das Impulspositions-Codebuch 23, das im Artikel 1 verwendet wird und Beispiele für den Bereich und die Anzahl von Bits eines Impulspositions codes 230 zeigt.
  • Im Artikel 1 ist die Länge des Erregungssignal-Codierrahmens aus 40 Abtastungen zusammengesetzt, und die stochastische Erregung ist aus vier Impulsen zusammengesetzt. Wie in 15 gezeigt ist, sind die Impulspositionen des Impulses Nummer 1 bis zum Impuls Nummer 3 auf acht Positionen beschränkt. Da acht Impulspositionen 0 bis 7 vorhanden sind, kann des der Impulspositionen durch 3 Bits codiert werden. Die Impulspositionen des Impulses Nummer 4 sind auf sechzehn Impulspositionen beschränkt. Da sechzehn Impulspositionen 0 bis 15 vorhanden sind, kann jede der Impulspositionen durch 4 Bits codiert werden. Die die vier Impulspositionen anzeigenden Impulspositionscodes werden ein Codewort von 13 Bits = 3 + 3 + 3 + 4. Aufgrund der Beschränkung der Impulspositionen wird der Rechenaufwand verringert unter Unterdrückung der Verschlechterung der Codiercharakteristik, da die Anzahl von Bits zum Codieren und die Anzahl von Kombinationen herabgesetzt werden.
  • Bezug nehmend auf die 23, 24 und 25 wird nun die Arbeitsweise der stochastischen Erregungscodiereinheit 11 in der vorgenannten herkömmlichen Sprachcodier-/-decodiervorrichtung beschrieben.
  • Die Impulsantwort-Berechnungseinheit 21 erzeugt ein Impulssignal 210, wie in 25 gezeigt ist, in einer Impulssignal-Erzeugungseinheit 218. Eine Impulsantwort 214 für das Impulssignal 210 wird durch Verwendung eines Synthesefilters 211 berechnet, dessen Filterkoeffizient der codierte Linearvorhersagekoeffizient 18 ist.
  • Eine Wahrnehmungsgewichtungseinheit 212 führt einen Wahrnehmungsgewichtungsvorgang für die Impulsantwort 214 durch und gibt eine wahrnehmungsmäßig gewichtete Impulsantwort 215 aus. Die Impulspositions-Sucheinheit 22 liest eine Impulsposition (ex. [14, 16, 2, 434] in 15), die in dem Impulspositions-Codebuch 23 gespeichert ist, nacheinander aus. Die Impulsposition entspricht einem in 15 gezeigten Impulspositionscode 230 (ex [5, 3, 0, 14] in 23). Eine vorübergehende Impulserregung 172 wird erzeugt durch Setzen von Impulsen mit einer festen Amplitude und einem angemessenen Vorzeichen auf der Grundlage von Vorzeicheninformationen 231 (ex. [0, 0, 1, 1]:1 zeigt positiv, 0 zeigt negativ an) an den gelesenen Impulspositionen ([25, 16, 2, 34]) einer spezifischen Nummer (vier). Ein vorübergehendes synthetisches Signal 174 wird erzeugt durch konvolutionelles Berechnen der vorübergehenden Impulserregung 172 und der Impulsantwort 215. Dann wird der Abstand zwischen dem vorübergehenden synthetischen Signal 174 und dem Codierzielsignal 20 berechnet. Diese Berechnung wird 8192mal (8 × 8 × 8 × 16) für alle Kombinationen der Impulspositionen durchgeführt. Einer der Impulspositionscodes (230 (ex. [5, 3, 0, 14]), der den Abstand am kürzesten macht, wird mit den Vorzeicheninformationen 231 (ex. [0, 0, 1, 1]) für jeden Impuls kombiniert. Dann wird der kombinierte Wert als der stochastische Erregungscode 19 ausgegeben, der dem stochastischen Erregungscode 131 in 13 entspricht. Die vorübergehende Impulserregung 172 (die der stochastischen Erregung 133 in 13 entspricht) entsprechend dem ausgewählten Impulspositionscode 230 wird zu der Verstärkungscodiereinheit 12 in der Codiereinheit 1 ausgegeben.
  • Im Artikel 1 werden die vorübergehende Impulserregung 172 und das vorübergehende synthetische Signal 174 nicht tatsächlich erzeugt, sondern eine Korrelationsfunktion zwischen einer Impulsantwort und dem Codierzielsignal 20 und eine gegenseitige Korrelationsfunktion zwischen Impulsantworten werden vorher berechnet für den Zweck der Herabsetzung des Rechenaufwandes bei der Impulspositions-Sucheinheit 22. Die Berechnung zum Erhalten des Abstands wird durchgeführt, indem einfach diese berechneten Ergebnisse der Korrelationsfunktionen addiert werden.
  • Das Abstandsberechnungsverfahren wird nun erläutert. Den kürzesten Abstand zu erhalten ist äquivalent dem größten D in dem folgenden Ausdruck (1) zu erhalten. Der kürzeste Abstand wird gesucht, indem die Berechnung von D für alle Kombinationen von Impulspositionen durchgeführt wird.
    Figure 00100001
    C = Σ kg(k)d(m(k)) (2) E = Σ kΣ ig(k)g(i)ϕ(m(k), m(i)) (3)
  • m(k):
    Impulsposition des k-ten Impulses
    g(k):
    Impulsamplitude des k-ten Impulses
    d(x):
    Korrelation zwischen Impulsantwort und Eingangssprache, wenn ein Impuls an der Impulsposition x gesetzt ist
    ϕ(x, y):
    Korrelation zwischen einer Impulsantwort, wenn ein Impuls an der Impulsposition x gesetzt ist, und einer Impulsantwort, wenn ein Impuls an der Impulsposition y gesetzt ist.
  • In der Impulspositions-Sucheinheit 22 nach Artikel 1 werden die Ausdrücke (2) und (3) vereinfacht durch Definition, dass g(k) dasselbe Vorzeichen (positiv oder negativ) wie d(m(k)) hat und der Absolutwert von g(k) gleich 1 ist. Dann werden die vereinfachten Ausdrücke (2) und (3) wie folgt: C = Σ kd'(m(k)) (4) E = Σ kΣ iϕ'(m(k), m(i)) (5) d'(m(k)) = |d(m(k))| (6) φ'(m(k), m(i)) = sign[g(k)]sign[g(i)]ϕ(m(k), m(i)) (7)
  • Wenn d' und ϕ' vor dem Beginn der Berechnung von D für alle Impulspositionskombinationen berechnet werden, wird D erhalten, indem nur eine kleine Rechenmenge durchgeführt wird, die das einfache Addieren durch die Ausdrücke (4) und (5) ist. 16 ist eine Illustration, die die in der Impulspositions-Sucheinheit 22 erzeugte vorübergehende Impulserregung 172 erläutert. Ein Vorzeichen eines Impulses ist definiert in Abhängigkeit davon, ob die in (a) von 16 gezeigte Korrelation d(x) positiv oder negativ ist. Die Amplitude des Impulses ist so fixiert, dass sie 1 ist. In dem Fall, dass d(m(k)) positiv ist, wird ein Impuls, dessen Amplitude gleich (+1) ist, an der Impulsposition m(k) gesetzt. In dem Fall, dass d(m(k)) negativ ist, wird ein Impuls, dessen Amplitude gleich (–1) ist, an der Impulsposition m(k) gesetzt. (b) von 16 zeigt die vorübergehende Impulserregung 172 entsprechend d(x) in (a) von 16.
  • Die Impulserregung, in der eine Hochgeschwindigkeitssuche durchgeführt werden kann durch Beschränkung der Impulspositionen, wird bezeichnet als "algebraischen Code anwendendes Erregungssignal". Diese Impulserregung wird nachfolgend als "algebraische Erregung" bezeichnet. Eine Sprachcodier-/-decodiervorrichtung, die den algebraischen Code für die Verbesserung der Sprachcodiercharakteristik anwendet, ist offenbart in einem Artikel von Kazunori Ozawa, Shinichi Taumi und Toshiyuki Nomura mit dem Titel "MP-CELP speech coding based on Multi-Pulse Vector Quantizsation and Fast Search", dargestellt in Thesen durch das Institute of Electronics, Information and Communication Engineers, Band J79-A, Nr. 10 (Oktober 1996), Seiten 1655–1663. (Dieser Artikel wird nachfolgend als "Artikel 2" bezeichnet)
  • 17 zeigt die gesamte Ausbildung dieser herkömmlichen Sprachcodier-/-decodiervorrichtung. In 17 sind eine Modusidentifizierungseinheit 24, eine erste Impulserregungs-Codiereinheit 25, eine erste Verstärkungscodiereinheit 26, eine zweite Impulserregungs-Codiereinheit 27, eine zweite Verstärkungscodiereinheit 28, eine erste Impulserregungs-Decodiereinheit 29, eine erste Verstärkungsdecodiereinheit 30, eine zweite Impulserregungs-Decodiereinheit 31 und eine zweite Verstärkungsdecodiereinheit 32 gezeigt.
  • Bezugszahlen in 17, die entsprechend 13 angegeben sind, sind weggelassen.
  • Im Vergleich zu 13 werden Operationen von neu hinzugefügten Konfigurationen in der Sprachcodier-/-decodiervorrichtung nachfolgend beschrieben.
  • Die Modusidentifizierungseinheit 24 identifiziert einen Modus zum Erregungssignalcodieren auf der Grundlage einer Durchschnittstonlage-Vorhersageverstärkung, die die Rate der Periodizität ist, und gibt das Identifizierungsergebnis als Modusinformationen aus. Wenn die Tonlagenperiodizität hoch ist, wird eine Erregungssignalcodierung durchgeführt durch Verwendung des ersten Erregungssignal-Codiermodus bedeutend die adaptive Erregungscodiereinheit 10, die erste Impulserregungs-Codiereinheit 25 und die erste Verstärkungscodiereinheit 26. Wenn die Tonlagenperiodizität niedrig ist, wird die Erregungssignalcodierung durchgeführt durch Verwendung des zweiten Erregungssignal-Codiermodus, bedeutend die zweite Impulserregungs-Codiereinheit 27 und die zweite Verstärkungscodiereinheit 28.
  • Die erste Impulserregungs-Codiereinheit 25 erzeugt eine vorübergehende Impulserregung entsprechend jedem Impulserregungscode. Dann werden die vorübergehende Impulserregung und eine adaptive Erregung, die von der adaptiven Erregungscodiereinheit 10 ausgegeben wurde, mit einer angemessenen Verstärkung multipliziert. Die multiplizierten Signale werden gefiltert durch Verwendung eines Synthesefilters, in welchem ein von der Linearvorhersagekoeffizienten-Codiereinheit 9 ausgegebener Linearvorhersagekoeffizient verwendet wird, um ein vorübergehendes synthetisches Signal zu erzeugen. Ein Abstand zwischen dem vorübergehenden synthetischen Signal und der Eingangssprache 5 wird berechnet und Impulserregungscodekandidaten werden gesucht in der Reihenfolge des Abstands von dem kürzesten zu dem weitesten. Eine vorübergehende Impulserregung entsprechend jedem Impulserregungscodekandidaten wird ausgegeben.
  • Die erste Verstärkungscodiereinheit 26 erzeugt einen Verstärkungsvektor entsprechend jedem Verstärkungscode. Dann werden die adaptive Erregung und die vorübergehende Impulserregung mit jedem Element jedes Verstärkungsvektors multipliziert, und die multiplizierten Signale werden addiert. Das addierte Signal wird gefiltert durch Verwendung eines Synthesefilters, in welchem ein von der Linearvorhersagekoeffizienten-Codiereinheit 9 ausgegebener Linearvorhersagekoeffizient verwendet wird, um ein vorübergehendes synthetisches Signal zu erzeugen. Ein Abstand zwischen dem vorübergehenden synthetischen Signal und der Eingangssprache 5 wird berechnet. Der vorübergehende Impulserregungscode und der Verstärkungscode, die den Abstand am kürzesten machen, werden ausgewählt. Der ausgewählte Verstärkungscode und ein Impulserregungscode entsprechend der ausgewählten vorübergehenden Impulserregung werden ausgegeben.
  • Die zweite Impulserregungs-Codiereinheit 27 erzeugt eine vorübergehende Impulserregung entsprechend jedem Impulserregungscode. Ann wird die vorübergehende Impulserregung mit einer angemessenen Verstärkung multipliziert. Die multiplizierte vorübergehende Impulserregung wird durch Verwendung des Synthesefilters gefiltert, in welchem ein von der Linearvorhersagekoeffizienten-Codiereinheit 9 ausgegebener Linearvorhersagekoeffizient verwendet wird, um ein vorübergehendes synthetisches Signal zu erzeugen. Ein Abstand zwischen dem vorübergehenden synthetischen Signal und der Eingangssprache 5 wird berechnet. Der Impulserregungscode, der den Abstand am kürzesten macht, wird ausgewählt. Zusätzlich werden Impulserregungscodekandidaten in der Reihenfolge vom kürzesten zum weitesten Abstand gesucht. Eine vorübergehende Impulserregung entsprechen jedem Impulserregungscodekandidaten wird ausgegeben.
  • Die zweite Verstärkungscodiereinheit 28 erzeugt einen vorübergehenden Verstärkungswert entsprechend jedem Verstärkungscode. Dann wird die vorübergehende Impulserregung mit jedem Verstärkungswert multipliziert. Das multiplizierte Signal wird gefiltert durch Verwendung des Synthesefilters, in welchem ein von der Linearvorhersagekoeffizienten-Codiereinheit 9 ausgegebener Linearvorhersagekoeffizient verwendet wird, um ein vorübergehendes synthetisches Signal zu erzeugen. Ein Abstand zwischen dem vorübergehenden synthetischen Signal und der Eingangssprache 5 wird berechnet. Eine vorübergehende Impulserregung und ein Verstärkungscode, die den Abstand am kürzesten machen, werden ausgewählt. Der ausgewählte Verstärkungscode und ein Impulserregungscode entsprechend der ausgewählten vorübergehenden Impulserregung werden ausgegeben.
  • Die Multiplexeinheit 3, die in dem Fall des ersten Erregungssignal-Codiermodus verwendet wird, führt eine Multiplexverarbeitung mit einem Linearvorhersagekoeffizientencode, Modusinformationen, einem adaptiven Erregungscode, einem Impulserregungscode und einem Verstärkungscode durch und gibt den Multiplexwert als den Code 6 aus. In dem Fall der Verwendung des zweiten Erregungssignal-Codiermodus führt die Multiplexeinheit 3 eine Multiplexverarbeitung mit dem Linearvorhersagekoeffizientencode, den Modusinformationen, dem Impulserregungscode und dem Verstärkungscode und gibt den Multiplexwert als den Code 6 aus.
  • Die Trenneinheit 4 trennt, wenn die Modusinformationen in dem ersten Erregungssignal-Codiermodus sind, den Code 6 in den Linearvorhersagekoeffizientencode, die Modusinformationen, den adaptiven Erregungscode, den Impulserregungscode und den Verstärkungscode. Wenn die Modusinformationen in dem zweiten Erregungssignal-Codiermodus sind, trennt die Trenneinheit 4 den Code 6 in den Linearvorhersagekoeffizientencode, die Modusinformationen, den Impulserregungscode und den Verstärkungscode.
  • Für den Fall, dass die Modusinformationen in dem ersten Erregungssignal-Codiermodus sind, gibt die erste Impulserregungs-Decodiereinheit 29 eine Impulserregung entsprechend dem Impulserregungscode aus, und die erste Verstärkungsdecodiereinheit 30 gibt einen Verstärkungsvektor entsprechend dem Verstärkungscode aus. Ein Erregungssignal wird in der Decodiereinheit 2 erzeugt durch Multiplizieren eines Ausgangssignals der adaptiven Erregungsdecodiereinheit 15 mit einem Element des Verstärkungsvektors, Multiplizieren der Impulserregung mit dem anderen Element des Verstärkungsvektors und Addieren der multiplizierten Werte. Dieses Erregungssignal gefiltert durch Verwendung des Synthesefilters 14, um die Ausgangssprache 7 zu bilden.
  • Für den Fall, dass die Modusinformationen in dem zweiten Erregungssignal-Codiermodus sind, gibt die zweite Impulserregungs-Decodiereinheit 31 eine Impulserregung entsprechend dem Impulserregungscode aus, und die zweite Verstärkungsdecodiereinheit 32 gibt einen Verstärkungswert entsprechend dem Verstärkungscode aus. Ein Erregungssignal wird in der Decodiereinheit 2 erzeugt durch Multiplizieren der Impulserregung mit dem Verstärkungswert. Dieses Erregungssignal wird durch Verwendung des Synthesefilters 14 gefiltert, um die Ausgangssprache 7 zu bilden.
  • 18 zeigt die Ausbildung der ersten Impulserregungs-Codiereinheit 25 oder der zweiten Impulserregungs-Codiereinheit 27 in der vorbeschriebenen Sprachcodier-/-decodiervorrichtung. In 18 sind ein codierter Linearvorhersagekoeffizient 33, ein Impulserregungscodekandidat 34, ein Codierzielsignal 35, eine Impulsantwort-Berechnungseinheit 36, eine Impulspositionskandidaten-Sucheinheit 37, eine Impulsamplitudenkandidaten-Sucheinheit 38 und ein Impulsamplituden-Codebuch 39 gezeigt.
  • Das Codierzielsignal 35 zeigt in der ersten Impulserregungs-Codiereinheit 25 ein Signal an, das durch Multiplizieren einer adaptiven Erregung mit einer geeigneten Verstärkung und Subtrahieren des multiplizierten Signals von der Eingangssprache 5 erhalten wurde. Das Codierzielsignal 35 zeigt in der zweiten Impulserregungs-Codiereinheit 27 die Eingangssprache 5 selbst an. Das Impulspositions-Codebuch 23 ist dasselbe wie das in den 14 und 15 gezeigte.
  • Die Impulsantwort-Berechnungseinheit 36 berechnet eine Impulsantwort eines Synthesefilters, dessen Filterkoeffizient der codierte Linearvorhersagekoeffizient 33 ist, und führt einen Wahrnehmungsgewichtungsprozess für die Impulsantwort durch. Wenn der in der adaptiven Erregungscodeeinheit 10 erhaltene adaptive Erregungscode, der eine Tonlagen-Periodenlänge ist, kürzer als eine (Sub)Rahmenlänge ist, die eine Basiseinheit für die Erregungssignalcodierung ist, wird die vorgenannte Impulsantwort durch ein Tonlagenfilter gefiltert.
  • Die Impulspositionskandidaten-Sucheinheit 37 liest eine in dem Impulspositions-Codebuch 23 gespeicherte Impulsposition aufeinander folgend aus und erzeugt eine vorübergehende Impulserregung durch Setzen eines Impulses, der eine feste Amplitude und ein geeignetes Vorzeichen hat, an den gelesenen Impulspositionen einer spezifischen Nummer. Ein vorübergehendes synthe tisches Signal wird erzeugt durch konvolutionelles Berechnen der vorübergehenden Impulserregung und der Impulsantwort. Dann wird ein Abstand zwischen dem vorübergehenden synthetischen Signal und dem Codierzielsignal 35 berechnet. Einige Kombinationen von Impulspositionskandidaten werden in der Reihenfolge vom kürzesten zum weitesten Abstand gesucht und ausgegeben. Jedoch werden ähnlich wie beim Artikel 1 das vorübergehende Erregungssignal und das vorübergehende synthetische Signal nicht tatsächlich erzeugt, sondern eine Korrelationsfunktion zwischen einer Impulsantwort und dem Codierzielsignal 35 sowie eine gegenseitige Korrelationsfunktion zwischen Impulsantworten werden vorher berechnet. Die Berechnung zum Erhalten des Abstands wird durch einfaches Addieren dieser berechneten Ergebnisse der Korrelationsfunktionen durchgeführt. Die Impulsamplitudenkandidaten-Sucheinheit 38 liest aufeinander folgend einen Impulsamplitudenvektor in dem Impulsamplituden-Codebuch 39, berechnet D in dem Ausdruck (1) durch Verwendung jedes der Impulspositionskandidaten und dieses Impulsamplitudenvektors. Dann werden einige Kombinationen des Impulspositionskandidaten und des Impulsamplitudenkandidaten in der Reihenfolge des Wertes von D von groß nach klein ausgewählt und als die Impulserregungskandidaten 34 ausgegeben.
  • 19 ist eine Illustration, die eine in der Impulspositionskandidaten-Sucheinheit 37 erzeugte vorübergehende Impulserregung und eine vorübergehende Impulserregung, zu der in der Impulsamplitudenkandidaten-Sucheinheit 38 eine Impulsamplitude addiert ist, erläutert. (a) und (b) von 19 sind dieselben wie (a) und (b) von 16. (c) von 19 zeigt ein Ergebnis einer Amplitude, die in der Impulsamplitudenkandidaten-Sucheinheit 38 durch Verwendung eines Impulsamplitudenvektors addiert ist.
  • Eine herkömmliche Sprachcodier-/-decodiervorrichtung, in der die Codierinformationsmenge der algebraischen Erregung wirksam reduziert ist, ist offenbart in einem Artikel von Hiroyuki Ehara, Kouji Yoshida und Toshio Yagi mit dem Titel "A Study on Phase Adaptive Pulse-Search in CELP Coding" in Japan Acoustic Association Theses, Band 1 (September 1996), Seiten 273–274. (Dieser Artikel wird nachfolgend als "Artikel 3" bezeichnet) Im Artikel 3 wird eine algebraische Erregung erzeugt, um Tonlagenperioden zu bilden, indem ein die Tonlagenperiodenlänge anzeigender adaptiver Erregungscode verwendet wird. Dann wird die Informationsmenge für die Impulsposition reduziert durch Wegnehmen einer selten ausgewählten Impulsposition in Abhängigkeit von dem Umstand, dass, wenn eine Zeitnacheilung (Phase) der algebraischen Erregung adaptiert wird auf der Grundlage von Spitzenpositionsinformationen einer Tonlagen-Wellenform einer adaptiven Erregung, Impulspositionen der algebraischen Erregung nicht gleichförmig ausgewählt werden.
  • Eine herkömmliche Sprachcodier-/-decodiervorrichtung, in der die erforderliche Informationsmenge für ein Erregungssignal dadurch reduziert ist, dass das aus mehreren Impulsen zusammengesetzte Erregungssignal Tonlagenperioden bildet, ist offenbart in einem Artikel von Kazunori Ozawa und Suguru Kouseki mit dem Titel "4.8kb/s Multi-pulse Excited Speech Coder" in Japan Acoustic Association Theses, Band 1 (September 1985), Seiten 203–204 (Dieser Artikel wird nachfolgend als "Artikel 4" bezeichnet).
  • Im Artikel 4 wird ein Rahmen pro Tonlagenperiode in Subrahmen geteilt, ein Erregungssignal jedes Subrah mens wird durch Impulse einer spezifischen Nummer dargestellt, und ein Subrahmen in dem Rahmen wird ausgewählt. Ein Erregungssignal des gesamten Rahmens wird erzeugt, um die Impulserregung des Tonlagen – periodisch wiederholten ausgewählten Subrahmens zu bilden. Dann wird einer der Subrahmen, der das beste synthetische Signal als den gesamten Rahmen erzeugt, als eine ausgewählte Periode ausgewählt, und die Impulsinformationen der ausgewählten Periode werden codiert. Die Anzahl von Impulsen in einem Rahmen wird auf vier festgelegt, um die Informationsmenge der Erregungssignalcodierung in jedem Rahmen festzulegen.
  • Eine herkömmliche Sprachcodier-/-decodiervorrichtung, bei der die Qualität der Darstellung der Erregung verbessert ist, indem der Impulserregung Charakteristiken der Phase und der Erregungssignalwelle gegeben werden, ist offenbart in einem Artikel von Shigeru Hosoi, Yoshio Sato und Tadayoshi Maikino mit dem Titel "A Study on Source of Pulse Excitation Coding", dargestellt in den Thesen A-254 von dem Institute of Electronics, Information and Communication Engineers, (März 1992), (Dieser Artikel wird nachfolgend als "Artikel 5" bezeichnet), und in einem Artikel von Tadashi Yamaura und Shinya Takahashi mit dem Titel "Improving the Quality of CELP Coder at Low bit Rates", dargestellt in den Thesen durch Japan Acoustic Association, Band 1 (Oktober, November 1994), Seiten 263, 264 (Dieser Artikel wird nachfolgend als "Artikel 6" bezeichnet).
  • In Artikel 5 wird eine feste Erregungssignalwellencharakteristik zu einer Impulserregung addiert. Dies ist beschrieben als "Impulswellenform" im Artikel 5. Ein Erregungssignal der Länge eines (Sub)Rahmens wird erzeugt durch Wiederholen der Erregungssignalwelle mit einer (Tonlagen)-Periode von langer vorhersagender Verzögerung. Eine Erregungssignalverstärkung und eine Erregungssignalwellen-Kopfposition, die eine Verzerrung zwischen einem synthetischen Signal auf der Grundlage des erzeugten Erregungssignals und einer Eingangssprache auf einen minimalen Wert bringen, werden gesucht, und das Suchergebnis wird codiert.
  • Im Artikel 6 und in der EP-A-0 709 827 wird eine quantisierte Phasenamplitudencharakteristik zu einer adaptiven Erregung und einer Impulserregung addiert. Ein Filterkoeffizient zum Addieren der in einem Phasenamplitudencharakteristik-Codebuch gespeicherten Phasenamplitudencharakteristik wird nacheinander ausgelesen. Die Filterung zum Addieren der Phasenamplitudencharakteristik und zum Synthetisieren wird für das Erregungssignal mit einer Rahmenlänge durchgeführt, das erhalten wird durch Addieren der Impulserregung und adaptive Erregung, die mit einer Nacheilungs(Tonlagen)-Periode der adaptiven Erregung wiederholt wird. Dann werden ein Phasenamplitudencharakteristikcode, ein adaptiver Erregungscode und ein Impulserregungscode für den Phasenamplitudencharakteristik-Filterkoeffizienten und das Erregungssignal, die den Abstand zwischen dem erhaltenen synthetischen Signal und der Eingangssprache am kürzesten machen, ausgegeben.
  • Eine herkömmliche Sprachcodier-/-decodiervorrichtung, in der die zwischen Sprachtönen durchgeführt Codierqualität verbessert ist durch Verwendung eines stochastischen Codebuchs, das teilweise ein aus einer Reihe von Impulsen bestehendes Erregungssignal enthält, ist offenbart in einem Artikel von Gao Yang, H. Leich und R. Boite mit dem Titel "A Very High-Quality Celp Coder at the Rate of 2400 bps" in EUROSPEECH '91, Seiten 829–932 (Dieser Artikel wird nachfolgend als "Artikel 7" bezeichnet).
  • Im Artikel 7 ist ein Erregungssignal-Codebuch zusammengesetzt aus einer Reihe von Impulsen, die mit einer Tonlagenperiode (Nacheilungslänge der adaptiven Erregung) wiederholt werden, eine Reihe von Impulsen, die mit einer halben Tonlagenperiode wiederholt werden, und einem Rauschen, dessen größter Teil auf null gebracht wird (schwach).
  • Die in den vorgenannten Artikeln 1 bis 7 offenbarten herkömmlichen Sprachcodier-/-decodiervorrichtungen haben die folgenden Probleme.
  • In der Sprachcodier-/-decodiervorrichtung nach Artikel 1 wird ein vorübergehendes Erregungssignal erzeugt durch Setzen eines Impulses, der eine feste Amplitude und ein geeignetes Vorzeichen hat, und die Suche der Impulsposition wird durchgeführt. Daher hat in dem Fall, in dem jedem Impuls für den Zweck der Verbesserung eine unabhängige Verstärkung (Amplitude) gegeben wird, eine Annäherung, um die feste Amplitude zu erhalten, eine enorme Wirkung auf das Suchergebnis. Folglich besteht das Problem, dass die geeignetste Impulsposition nicht gefunden werden kann.
  • Um die Wirkung der Annäherung zu unterdrücken, wird das Verfahren des Behaltens mehrerer Impulspositionskandidaten im Artikel 2 angewendet. Das Verfahren wird durchgeführt durch Auswahl der geeignetsten Impulsposition auf der Grundlage einer Kombination jedes Impulspositionskandidaten mit einem Impulsamplitudenkandidaten. Jedoch besteht das Problem, dass der Rechenaufwand erhöht ist.
  • Bei der im Artikel 2 offenbarten Sprachcodier-/-decodiervorrichtung hängt die Bestimmung, welcher Modus von dem ersten Erregungssignal-Codiermodus, der die Codierung durch Addieren der, adaptiven Erregung und der algebraischen Erregung durchführt, und dem zweiten Erregungssignal-Codiermodus, der die Codierung nur unter Verwendung der algebraischen Erregung durchführt, zu verwenden ist, von der Rate der Tonlagenperiodizität ab. Jedoch gibt es den Fall, dass die Verwendung der adaptiven Erregung wünschenswert ist, obgleich die Tonlagenperiodizität gering ist, oder die Verwendung nur der algebraischen Erregung zum Codieren wünschenswert ist, obgleich die Tonlagenperiodizität hoch ist. D.h., es existiert das Problem, dass die Modusidentifizierung zum Erhalten der besten Codiercharakteristik nicht durchgeführt werden kann.
  • Als ein Beispiel für den Fall, dass die Verwendung der adaptiven Erregung wünschenswert ist, obgleich die Tonlagenperiodizität gering ist, gibt es den Fall, dass es schwierig ist, ein Erregungssignal zufrieden stellend darzustellen, wenn die Tonlagenperiode kurz ist und die Anzahl von Impulsen, die die algebraische Erregung haben, klein ist. Je geringer die Menge der Erregungssignal-Codierinformationen wird oder je geringer die Anzahl von Impulsen wird, desto stärker wird diese Tendenz. Als ein Beispiel für den Fall, dass nur die Verwendung der algebraischen Erregung für die Codierung wünschenswert ist, obgleich die Tonlagenperiodizität hoch ist, gibt es den Fall, dass es möglich ist, ein Erregungssignal zufrieden stellend darzustellen, selbst wenn die Tonlagenperiode lang ist und die Anzahl von Impulsen der algebraischen Erregung klein ist. Wie aus diesen Beispielen bekannt ist, ist es erforderlich, die Schwelle zum Bestimmen des Modus in Abhängigkeit von der Tonlagen periode und de Anzahl von Impulsen adaptiv zu ändern. Jedoch besteht bei der Sprachcodier-/-decodiervorrichtung nach Artikel 2 das Problem, das die Bestimmung des Modus zum Erhalten der besten Codiercharakteristik nicht durchgeführt werden kann, da sie nicht adaptiv verarbeitet werden kann.
  • In der im Artikel 3 offenbarten Sprachcodier-/-decodiervorrichtung bildet die algebraische Erregung Tonlagenperioden. Jedoch ist es erforderlich, sowohl die adaptive Erregung als auch die algebraische Erregung bestimmt zu verwenden, da die Tonlagenperiode auf einem adaptiven Erregungscode basiert. Folglich besteht das Problem, dass die Sprachcodiercharakteristik in dem Teil verschlechtert wird, in welchem die adaptive Erregung, die eine schlechte Codiercharakteristik hat, angewendet wird. Wenn beispielsweise die Erregungssignal-Tonlagenperiodizität des gegenwärtigen Rahmens hoch ist, aber ein Erregungssignal des vorhergehenden Rahmens dem Erregungssignal des gegenwärtigen Rahmens nicht ähnelt, ist es wünschenswert, dass die algebraische Erregung Tonlagenperioden bildet, obgleich die Effizienz der adaptiven Erregung schlecht ist.
  • Selbst wenn die Codierung für den vorgenannten Teil durchgeführt wird durch Verwendung des zweiten Erregungssignal-Codiermodus, der das Erregungssignal durch Verwendung nur der algebraischen Erregung codiert, wie in Artikel 2 gezeigt ist, existiert das Problem der schlechten Codiercharakteristik noch immer, da die algebraische Erregung nicht gemacht ist, um Tonlagenperioden zu bilden. Das Verfahren der getrennten Codierung der Tonlagenperiode kann ein Weg sein, dass die algebraische Erregung im Artikel 2 Tonlagenperioden bildet. Jedoch besteht das Problem dass die Qualität verschlechtert wird, da die zum Codieren der Tonlagenperiode benötigte Informationsmenge groß und die Anzahl von Impulsen klein sind.
  • In der im Artikel 3 offenbarten Sprachcodier-/-decodiervorrichtung wird die Informationsmenge für die Impulsposition reduziert, indem eine selten ausgewählte Impulsposition weggenommen wird. Jedoch gibt es, wenn die Tonlagenperiode kurz ist, nutzlose Informationen in den Codierinformationen, da eine Impulsposition, die niemals benutzt wird, existiert.
  • In der in Artikel 4 offenbarten Sprachcodier-/-decodiervorrichtung werden Impulsinformationen eines Subrahmens, dessen Tonlagen-Periodenlänge einen Rahmen darstellen, codiert, und die Impulserregung bildet Tonlagenperioden. Jedoch gibt es auch nutzlose Informationen in den Codierinformationen, ähnlich wie in dem Fall es Artikels 3, da ein Verfahren zum Codieren von Impulspositionen für einen weiten Codierbereich immer verwendet wird, selbst wenn die Tonlagenperiode kurz ist und der Codierbereich für Impulspositionen klein ist.
  • In der im Artikel 5 offenbarten Sprachcodier-/-decodiervorrichtung wird ein Erregungssignal der (Sub)Rahmenlänge erzeugt durch Wiederholen einer festen Erregungssignalwelle mit einer Tonlagenperiode. Eine Erregungssignalverstärkung und eine Erregungssignalwellen-Kopfposition, die die Verzerrung eines synthetischen Signals auf der Grundlage des erzeugten Erregungssignals und einer Eingangssprache minimal machen, werden gesucht. Jedoch ist die zum Berechnen des Abstands an jeder Kopfposition der Erregungssignalwelle erforderliche Rechenmenge groß. Gemäß einigen Bedingungen kann sie das Einhundertfache der Be rechnungsmenge im Artikel 1 sein. Daher ist es erforderlich, die Anzahl von Kombinationen von Erregungssignalpositionen klein zu halten (gleich oder weniger als einhundert), wie im Artikel 5 offenbart ist, um die Verarbeitung innerhalb einer praktischen Zeit durchzuführen. D.h., wenn die Anzahl von Erregungssignalkombinationen, durch die eine Erregungssignalposition von jeder Tonlagen-Periodenlänge getrennt bestimmt werden kann, groß ist (gleich oder mehr als zehntausend), besteht das Problem, dass es unmöglich ist, die Verarbeitung innerhalb der praktischen Zeit durchzuführen.
  • In der im Artikel 6 offenbarten Sprachcodier-/-decodiervorrichtung wird eine quantisierte Phasenamplitudencharakteristik zu der adaptiven Erregung und der Impulserregung addiert. Ähnlich dem Fall in Artikel 5 ist jedoch die Abstandsberechnungsmenge an einer Erregungssignalposition groß. Daher nimmt, wenn die Anzahl von Kombinationen von Impulspositionen groß wird, die Suchberechnungsmenge proportional zu. Folglich besteht das Problem, dass es unmöglich ist, die Verarbeitung innerhalb der praktischen Zeit durchzuführen.
  • In der im Artikel 7 offenbarten Sprachcodier-/-decodiervorrichtung wird die zwischen Sprachtönen durchgeführte Codierqualität verbessert durch Verwendung des stochastischen Codebuchs, das teilweise ein aus einer Reihe von Impulsen gebildetes Erregungssignal enthält. Jedoch ist es nur möglich, eine Reihe von Impulsen, die mit einer Tonlagenperiode wiederholt werden, eine Reihe von Impulsen mit einer halben Tonlagenperiode und ein schwaches Rauschen darzustellen. Da nur spezifische Erregungssignale dargestellt werden können, besteht das Problem, dass die Codiercha rakteristik verschlechtert wird in Abhängigkeit von der Eingangssprache. Zusätzlich ist es erforderlich, dass die Anzahl von Codes dieselbe wie die Anzahl von Erregungssignalabtastungen ist, d.h., die Anzahl von Impulskopfpositionen in der Reihe von periodischen Impulserregungen. D.h., es besteht das Problem, dass ein Teil nicht eine Reihe von Impulserregungen in einem Codebuch kleiner Größe sein kann.
  • Es ist das Ziel der vorliegenden Erfindung, eine Sprachcodiervorrichtung, eine Sprachcodier-/-decodiervorrichtung und ein Sprachcodierverfahren vorzusehen, bei denen die Codiercharakteristik zu der Zeit einer Eingangssprache, die in Spektrumumhüllungsinformationen und ein Erregungssignal geteilt ist, um eine Codierung pro Rahmen durchzuführen, stark verbessert ist.
  • OFFENBARUNG DER ERFINDUNG
  • Dieses Problem wird gelöst durch die Sprachcodiervorrichtung nach Anspruch 1, die Sprachcodier-/-decodiervorrichtung nach Anspruch 2 und das Sprachcodierverfahren nach Anspruch 3.
  • Eine Sprachcodiervorrichtung gemäß der vorliegenden Erfindung trennt eine Eingangssprache in Spektrumumhüllungsinformationen und ein Erregungssignal und codiert das Erregungssignal bei jedem Rahmen. Die Sprachcodiervorrichtung weist auf:
    eine Impulsantwort-Berechnungseinheit (21) zum Berechnen einer Impulsantwort eines Synthesefilters auf der Grundlage der Spektrumumhüllungsinformationen,
    ein Phasenadditionsfilter (42), um der Impulsantwort eine spezifische Erregungssignal-Phasencharakteristik zu geben, und
    eine Erregungssignal-Codiereinheit (22, 12) zum Codieren des Erregungssignals in mehrere Impulserregungspositionen und mehrere Erregungssignalverstärkungen, indem die Impulsantwort verwendet wird, zu der die spezifische Erregungssignal-Phasencharakteristik hinzugefügt wurde.
  • Eine Sprachcodiervorrichtung gemäß der vorliegenden Erfindung hat eine Codiereinheit (1) zum Trennen einer Eingangssprache in Spektrumumhüllungsinformationen und ein Erregungssignal und zum Codieren des Erregungssignals bei jedem Rahmen, sowie eine Decodiereinheit (2) zum Erzeugen einer Ausgangssprache durch Decodieren eines codierten Erregungssignals. Die Codiereinheit (1) der Sprachcodier-/-decodiervorrichtung weist auf:
    eine Impulsantwort-Berechnungseinheit (21) zum Berechnen einer Impulsantwort eines Synthesefilters auf der Grundlage der Spektrumumhüllungsinformationen;
    ein Phasenadditionsfilter (42), um der Impulsantwort eine spezifische Erregungssignal-Phasencharakteristik zu geben, und
    eine Erregungssignal-Codiereinheit (22, 12) zum Codieren des Erregungssignals in mehrere Impulserregungspositionen und mehrere Erregungssignalverstärkungen, basierend auf der Impulsantwort, zu der die spezifische Erregungssignal-Phasencharakteristik hinzugefügt wurde. Die Decodiereinheit (2) der Sprachcodier-/-decodiervorrichtung weist auf:
    eine Erregungssignal-Decodiereinheit (16, 17) zum Erzeugen eines Erregungssignals durch Decodieren der mehreren Impulserregungspositionen und der mehreren Erregungssignalverstärkungen.
  • Gemäß der vorliegenden weist ein Sprachcodierverfahren zum Trennen einer Eingangssprache in Spektrumum hüllungsinformationen und ein Erregungssignal und zum Codieren des Erregungssignals bei jedem Rahmen die Schritte auf:
    Berechnen einer Impulsantwort eines Synthesefilters auf der Grundlage der Spektrumumhüllungsinformationen,
    Hinzufügen einer spezifischen Erregungssignal-Phasencharakteristik zu der Impulsantwort, und Codieren des Erregungssignals in mehrere Impulserregungspositionen und mehrere Erregungssignalverstärkungen durch Verwenden der Impulsantwort, zu der die spezifische Erregungssignal-Phasencharakteristik hinzugefügt wurde.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockschaltbild, das eine Sprachcodier-/-decodiervorrichtung und eine stochastische Erregungscodiereinheit in einer Sprachcodier-/-decodiervorrichtung gemäß einem ersten Ausführungsbeispiel zeigt;
  • 2 illustriert Linien zum Erläutern einer vorübergehenden Verstärkung, die in einer vorübergehenden Verstärkungsberechnungseinheit in 1 berechnet wurde, und einer vorübergehenden Impulserregung, die in einer Impulspositionssuche in 1 erzeugt wurde;
  • 3 ist ein Blockschaltbild, das eine stochastische Erregungscodiereinheit in einer Sprachcodier-/-decodiervorrichtung gemäß einem zweiten Ausführungsbeispiel, das ein Ausführungsbeispiel der vorliegenden Erfindung ist, zeigt;
  • 4 ist ein Blockschaltbild, das eine stochastische Erregungsdecodiereinheit in der Sprachcodier-/-decodiervorrichtung gemäß dem Ausführungsbeispiel der vorliegenden Erfindung ist, zeigt;
  • 5 ist ein Blockschaltbild, das eine stochastische Erregungscodiereinheit in einer Sprachcodier-/-decodiervorrichtung gemäß einem dritten Ausführungsbeispiel zeigt;
  • 6 ist ein Blockschaltbild, das eine stochastische Erregungsdecodiereinheit in der Sprachcodier-/-decodiervorrichtung gemäß dem dritten Ausführungsbeispiel zeigt;
  • 7 zeigt einige Beispiele des ersten Impulspositions-Codebuchs des n-ten Impulspositions-Codebuchs, die in der Sprachcodier-/-decodiervorrichtung nach den 5 und 6 verwendet werden;
  • 8 zeigt einige Beispiele eines Impulspositions-Codebuchs das in einer Sprachcodier-/-decodiervorrichtung gemäß einem vierten Ausführungsbeispiel verwendet wird;
  • 9 ist ein Blockschaltbild, das eine Gesamtkonfiguration einer Sprachcodier-/-decodiervorrichtung gemäß dem fünften Ausführungsbeispiel zeigt;
  • 10 ist ein Blockschaltbild, das eine stochastische Erregungsdecodiereinheit in einer Sprachcodier-/-decodiervorrichtung ge mäß dem sechsten Ausführungsbeispiel zeigt;
  • 11 illustriert Linien zum Erläutern der Konfigurationen des ersten stochastischen Erregungscodebuchs und des zweiten stochastischen Erregungscodebuchs, die in der stochastischen Erregungscodiereinheit in der Sprachcodier-/-decodiervorrichtung gemäß dem sechsten Ausführungsbeispiel verwendet werden;
  • 12 illustriert Linien zum Erläutern der Konfigurationen des ersten stochastischen Erregungscodebuchs und des zweiten stochastischen Erregungscodebuchs, die in einer stochastischen Erregungscodiereinheit in einer Sprachcodierungs-/-decodierungsvorrichtung gemäß dem siebenten Ausführungsbeispiel verwendet werden;
  • 13 ist ein Blockschaltbild, das eine Gesamtkonfiguration einer herkömmlichen "celp"-Sprachcodier-/-decodiervorrichtung zeigt;
  • 14 ist ein Blockschaltbild, das eine Konfiguration einer in einer herkömmlichen Sprachcodier-/-decodiervorrichtung verwendeten stochastischen Erregungscodiereinheit zeigt;
  • 15 zeigt eine Konfiguration eines herkömmlichen Impulspositions-Codebuchs;
  • 16 illustriert Linien zum Erläutern einer in einer herkömmlichen Impulspositions-Such einheit erzeugten vorübergehenden Impulserregung;
  • 17 ist ein Blockschaltbild, das eine Gesamtkonfiguration einer herkömmlichen Sprachcodier-/-decodiervorrichtung zeigt;
  • 18 ist ein Blockschaltbild, das eine Konfiguration der ersten Impulserregungs-Codiereinheit und der zweiten Impulserregungs-Codiereinheit in einer herkömmlichen Sprachcodier-/-decodiervorrichtung zeigt;
  • 19 illustriert Linien zum Erläutern einer vorübergehenden Impulserregung, die in einer Impulspositionskandidaten-Sucheinheit erzeugt wurde und einer vorübergehenden Impulserregung, zu der eine Impulsamplitude in einer Impulsamplitudenkandidaten-Sucheinheit hinzugefügt ist, in einer herkömmlichen Sprachcodier-/-decodiervorrichtung;
  • 20 zeigt die Arbeitsweise einer herkömmlichen adaptiven Erregungscodiereinheit;
  • 21 zeigt die Arbeitsweise einer herkömmlichen stochastischen Erregungscodiereinheit;
  • 22 zeigt die Arbeitsweise einer herkömmlichen Verstärkungserregungssignal-Codiereinheit;
  • 23 zeigt die Arbeitsweise einer herkömmlichen stochastischen Erregungscodiereinheit;
  • 24 zeigt die Arbeitsweise einer herkömmlichen Impulsantwort-Berechnungseinheit;
  • 25 zeigt ein herkömmliches Impulssignal und eine Impulsantwort;
  • 26 zeigt die Arbeitsweise einer stochastischen Erregungscodiereinheit gemäß dem Ausführungsbeispiel 1;
  • 27 illustriert einen Weg der Berechnung einer vorübergehenden Verstärkung gemäß dem Ausführungsbeispiel;
  • 28 zeigt die Arbeitsweise eines Teils einer Verstärkungserregungssignal-Codiereinheit gemäß dem Ausführungsbeispiel 1; und
  • 29 illustriert einen Tonlage-Synchronisationsvorgang gemäß dem Ausführungsbeispiel 3.
  • BESTE ART DER AUSFÜHRUNG DER ERFINDUNG
  • Mit Bezug auf die Zeichnungen werden Ausführungsbeispiele einer Sprachcodier-/-decodiervorrichtung wie folgt erläutert. Hierin stellen die Ausführungsbeispiele 1, 3 bis 7 keine Ausführungsbeispiele der Erfindung dar, aber sie sind hilfreich für das Verständnis bestimmter Aspekte der Erfindung. Das Ausführungsbeispiel 2 stellt ein Ausführungsbeispiel der Erfindung dar.
  • Ausführungsbeispiel 1
  • 1 zeigt eine Konfiguration einer Sprachcodier-/-decodiervorrichtung gemäß dem Ausführungsbeispiel 1.
  • 1 zeigt die Gesamtkonfiguration der Sprachcodier-/-decodiervorrichtung und eine stochastische Erregungscodiereinheit 11. Die Bezugszahlen in 1 sind entsprechend denjenigen in den 13 und 14 angegeben.
  • In 1 sind eine vorübergehende Verstärkungsberechnungseinheit 40 und eine Impulspositions-Sucheinheit 41, die neu hinzugefügt sind, gezeigt. Die vorübergehende Verstärkungsberechnungseinheit 40 berechnet die Korrelation zwischen einer von einer Impulsantwort-Berechnungseinheit 21 ausgegebenen Impulsantwort 215 und einem Codierzielsignal 20, das ein in 20 gezeigtes Fehlersignal 118 anzeigt. Eine vorübergehende Verstärkung wird auf der Grundlage der Korrelation berechnet. Eine vorübergehende Verstärkung 216 zeigt einen Verstärkungswert für einen Impuls an, der an einer Impulsposition auf der Grundlage eines Impulspositions-Codebuchs 23 gesetzt ist.
  • Wie in 26 gezeigt ist, liest die Impulspositions-Sucheinheit 41 nacheinander Impulspositionen, die in dem Impulspositions-Codebuch 23 gespeichert sind, entsprechend jedem in 15 gezeigten Impulspositionscode 230. Dann erzeugt die Impulspositions-Sucheinheit 41 eine vorübergehende Impulserregung 172a durch Setzen eines Impulses, der eine vorübergehende Verstärkung 216 hat, an jeder der gelesenen Impulspositionen mit einer spezifischen Nummer. Ein vorübergehendes synthetisches Signal 174 wird erzeugt durch konvolutionelles Berechnen der vorübergehenden Impulserregung 172a und der Impulsantwort 215. Dann wird ein Abstand zwischen dem vorübergehenden synthetischen Signal 174 und dem Codierzielsignal 20 berechnet. Diese Berechnung 8192mal (8 × 8 × 8 × 16) für alle Kombinationen der Impulspositionen durchgeführt. Einer der Impulspositionscodes 230, der den Abstand am kürzesten macht, wird zu einer Multiplexeinheit 3 als ein stochastischer Erregungscode 19 ausgegeben. Die vorübergehende Impulserregung 172a entsprechend dem Ausgangsimpuls-Positionscode 230 wird zu einer Verstärkungscodiereinheit 12 in einer Codiereinheit 1 ausgegeben.
  • 2 zeigt die in der Berechnungseinheit 40 für die vorübergehende Verstärkung berechnete vorübergehende Verstärkung 216 und die in der Impulspositions-Sucheinheit 41 erzeugte vorübergehende Impulserregung 172a. Die in (a) von 2 gezeigte vorübergehende Verstärkung 216a wird an jeder Impulsposition berechnet unter der Voraussetzung, dass nicht vier Impulse, sondern ein Impuls als die Impulserregung gesetzt ist. Der folgende Ausdruck (8) ist ein Beispiel für die Berechnung. a(x) = d(x)/ϕ(x, x) (8)worin d(x) die Korrelation zwischen einer Impulsantwort und einer Eingangssprache, wenn ein Impuls an einer Impulsposition x gesetzt ist, anzeigt. ϕ(x, y) zeigt die Korrelation zwischen einer Impulsantwort, wenn ein Impuls an einer Impulsposition x gesetzt ist, und einer Impulsantwort, wenn ein Impuls an einer Impulsposition y gesetzt ist, an.
  • Der geeignetste Verstärkungswert, wenn ein Impuls an der Impulsposition x gesetzt ist, wird durch den Ausdruck (8) berechnet. Die Berechnungseinheit 40 für die vorübergehende Verstärkung berechnet eine vorübergehende Verstärkung an jeder Impulsposition von 40 Abtastungen (0 bis 39) und gibt die berechnete vorü bergehende Verstärkung zu der Impulspositions-Sucheinheit 41 aus. Wenn die vorübergehende Impulserregung 172a erzeugt wird durch Setzen eines Impulses an einer Impulsposition {m(k), k = 1, ..., 4} in der Impulspositions-Sucheinheit 41, wie in (b) von 2 gezeigt ist, wird jedem Impuls eine Verstärkung {a(m(k)), k = 1, ..., 4} gegeben durch Verwenden der in (a) von 2 gezeigten vorübergehenden Verstärkung 216.
  • Das Abstandsberechnungsverfahren in der Impulspositions-Sucheinheit 41, durch das eine vorübergehende Verstärkung a(x) wie vorstehend beschrieben berechnet wird, wird nun erläutert. Dieses Abstandsberechnungsverfahren ist ähnlich dem Verfahren des Artikels 1 in dem Punkt, dass eine Suche mittels der Berechnung D für alle Kombinationen der Impulspositionen durchgeführt wird in Abhängigkeit davon, dass der kürzeste Abstand gleich dem größten D in dem Ausdruck (1) erhalten wird. Jedoch wird im Ausführungsbeispiel 1 g(k) in den Ausdrücken (2) und (3) eingesetzt für a(m(k)), das im Ausdruck (8) definiert ist, um die Berechnung zu vereinfachen. Die vereinfachten Ausdrücke entsprechen den Ausdrücken (2) und (3) sind wie folgt: C = Σ kd'(m(k)) (9) E = Σ kΣ iϕ'(m(k), m(i)) (10)worin d'(m(k)) = a(m(k))d(m(k)) (11) φ'(m(k), m(i)) = a(m(k))a(m(i))ϕ(m(k), m(i)) (12)
  • m(k):
    Impulsposition des k-ten Impulses
  • Wenn demgemäß die Berechnungen von d' und ϕ' beendet sind, bevor die Berechnung von D für alle Kombinationen von Impulspositionen begonnen wird, wird D erhalten durch eine kleine Rechenmenge, die eine in den Ausdrücken (9) und (10) angegebene einfache Addition ist.
  • Wenn die Impulspositionssuche durchgeführt wird durch Verwendung der vorübergehenden Verstärkung 216, wie vorstehend festgestellt wird, ist es erforderlich, eine Konfiguration vorzusehen, bei der eine unabhängige Verstärkung zu jedem Impuls in der Verstärkungscodiereinheit 12 hinzugefügt wird.
  • 28 zeigt ein Beispiel für ein Verstärkungscodebuch 150 der Verstärkungscodeeinheit 12 in dem Fall von vier gesetzten Impulsen. Eine Verstärkungssucheinheit 160 gibt eine adaptive Erregung 113 von einer adaptiven Erregungscodiereinheit 10 und die vorübergehende Impulserregung 172a von der stochastischen Erregungscodiereinheit 11 ein. Ein vorübergehendes Erregungssignal 199 wird erzeugt durch Multiplizieren der adaptiven Erregung 113 mit einer Verstärkung g1 in dem Verstärkungscodebuch 150, Multiplizieren der vier Impulse in der vorübergehenden Impulserregung 172a durch Verstärkungen g21, bis g24, und Addieren des multiplizierten Signals. Dann werden Operationen ähnlich denjenigen nach einem Prozess des in 22 gezeigten Synthesefilters 155 durchgeführt, um einen Gaincode 151 zu erhalten, der den kürzesten Abstand bildet.
  • Wie vorstehend festgestellt ist, wird eine vorübergehende Verstärkung für jede der Impulspositionen be rechnet, bevor die Impulspositionen bestimmt sind, und die Impulspositionen werden bestimmt durch Erzeugen der vorübergehenden Impulserregungen 172a, deren Impulsamplituden unterschiedlich sind, auf der Grundlage der vorübergehenden Verstärkungen, in der Sprachcodier-/-decodiervorrichtung gemäß dem Ausführungsbeispiel 1. Demgemäß wird, wenn die unabhängige Verstärkung schließlich zu jedem Impuls addiert wird, die Annäherungsgenauigkeit der Verstärkung bei der Impulspositionssuche erhöht in der Verstärkungscodiereinheit 12. Daher wird es einfach, die geeignetste Impulsposition zu finden, und folglich wird die Codiercharakteristik verbessert. Es ist schwierig, die geeignete Impulsposition im Stand der Technik zu bestimmen, da Amplituden der Impulse festgelegt sind. Zusätzlich kann gemäß dem Ausführungsbeispiel 1 die ergänzende Berechnungsmenge bei der Suche von Impulspositionen geringer als die beim Stand der Technik sein.
  • Ausführungsbeispiel 2
  • Gemäß Ausführungsbeispiel 2 der vorliegenden Erfindung zeigt 3 eine Ausbildung der stochastischen Erregungscodiereinheit 11, die in der Sprachcodier-/-decodiervorrichtung nach 13 gezeigt ist. Die Bezugszahlen in 3 sind entsprechend denen in 14 angegeben. 4 zeigt eine stochastische Erregungsdecodiereinheit 16 des Ausführungsbeispiels 2, die in der Sprachcodier-/-decodiervorrichtung nach 13 gezeigt ist.
  • In den 3 und 4 sind Phasenadditionsfilter 42 und 48, ein stochastischer Erregungscode 43, eine stochastische Erregung 44, eine Impulspositions-Decodiereinheit 46 und ein Impulspositions-Codebuch 47, das dieselbe Ausbildung wie das Impulspositions-Codebuch 23 in der Codiereinheit 1 hat, gezeigt.
  • Das Phasenadditionsfilter 42 in der Codiereinheit 1 führt eine Filterung durch, um der Impulsantwort 215 eine Phasencharakteristik zu geben, die leicht eine spezifische Phasenbeziehung erzeugt, ausgegeben von der Impulsantwort-Berechnungseinheit 21. D.h., die Phasenverschiebung wird für jede Frequenz durchgeführt, und eine Impulsantwort 215a nahe der realen Positionsbeziehung wird ausgegeben. Die Impulspositions-Decodiereinheit 46 in einer Decodiereinheit 2 liest Impulspositionsdaten in dem Impulspositions-Codebuch 47 auf der Grundlage der stochastischen Erregung 43. Mehrere Impulse mit Vorzeichen, die durch den stochastischen Erregungscode 43 definiert sind, werden gesetzt auf der Grundlage der Impulspositionsdaten, und die gesetzten Impulse werden als eine stochastische Erregung ausgegeben. Das Phasenadditionsfilter 48 führt eine Filterung durch, um der stochastischen Erregung eine Phasencharakteristik zu geben, und ein durch das Filtern erzeugtes Signal wird als die stochastische Erregung 44 ausgegeben.
  • Es ist annehmbar, eine feste Impulswellenform hinzuzufügen, ähnlich wie im Artikel 5, als die Phasencharakteristik für das Erregungssignal, oder eine quantisierte Phasenamplitudencharakteristik zu verwenden, die in der japanischen Patentanmeldung 6-264832 offenbart ist. Als Phasencharakteristik für das Erregungssignal ist auch annehmbar, einen Teil eines alten Erregungssignals aufzunehmen, um den Durchschnitt von Teilen des alten Erregungssignals zu bilden, oder durch die Berechnungsvorrichtung 40 für die vorübergehende Verstärkung im Ausführungsbeispiel 1 zu behandeln.
  • Wie vorstehend festgestellt ist, codiert die Codiereinheit in der Sprachcodier-/-decodiervorrichtung gemäß dem Ausführungsbeispiel 2 das Erregungssignal in mehrere Impulserregungspositionen und Erregungssignalverstärkungen, durch Verwendung der Impulsantwort, der die Phasencharakteristik für das Erregungssignal gegeben ist. Dann wird die Erregungssignal-Phasencharakteristik in der Decodiereinheit in der Sprachcodier-/-decodiervorrichtung gemäß Ausführungsbeispiel 2 zu dem Erregungssignal hinzugefügt. Demgemäß ist es möglich, die Phasencharakteristik zu dem Erregungssignal hinzuzufügen, ohne den Rechenaufwand zum Erhalten des Abstands bei jeder Erregungssignalpositionskombination zu erhöhen. Selbst wenn die Anzahl der Impulspositionskombinationen zunimmt, ist es möglich, die Codierung/Decodierung für das Erregungssignal, dem die Phasencharakteristik gegeben ist, durchzuführen, solange wie die Berechnungsmenge praktisch realisiert ist. Daher wird die Codierqualität verbessert, weil die Qualität der Darstellung von Erregungssignalen erhöht ist.
  • Ausführungsbeispiel 3
  • 5 zeigt die stochastische Erregungscodiereinheit 11 in der in 13 gezeigten Sprachcodier-/-decodiervorrichtung gemäß dem Ausführungsbeispiel 3. Die Bezugszahlen in 5 sind entsprechend den in den 3 und 4 angegebenen. 6 zeigt die stochastische Erregungsdecodiereinheit 16. Die Gesamtkonfiguration der Sprachcodier-/-decodiervorrichtung gemäß dem Ausführungsbeispiel 3 ist dieselbe wie in 13.
  • In den 5 und 6 sind Tonlagenperioden 49 und 53, eine Impulspositions-Sucheinheit 50, erste Impulspositions-Codebücher 51 und 55, n-te Impulspositions-Codebücher 52 und 56 sowie eine Impulspositions-Decodiereinheit 54 gezeigt.
  • In der stochastischen Erregungscodiereinheit 11 wird ein Impulspositions-Codebuch aus N Impulspositions-Codebüchern (das erste Impulspositions-Codebuch 51 bis N-te Impulspositions-Codebuch 52) ausgewählt auf der Grundlage der Tonlagenperiode 49. Es ist annehmbar, eine Wiederholungsperiode für die adaptive Erregung als die Tonlagenperiode zu verwenden oder eine durch andere Analyse berechnete Tonlagenperiode zu verwenden. Jedoch ist es in dem Fall der durch die Verwendung einer anderen Analyse berechneten Tonlagenperiode erforderlich, die Tonlagenperiode zu codieren und die codierte Tonlagenperiode zu der stochastischen Erregungsdecodiereinheit 16 in der Decodiereinheit 2 zu liefern.
  • Die Impulspositions-Sucheinheit 50 liest nacheinander eine Impulsposition, die in dem ausgewählten Impulspositions-Codebuch entsprechend jedem Impulspositionscode gespeichert ist, setzt einen Impuls mit einer spezifischen Amplitude und einem geeigneten Vorzeichen an jeder von Impulspositionen der gelesenen spezifischen Nummer, und erzeugt eine vorübergehende Impulserregung, indem ein Tonlagen-Synchronisationsprozess auf der Grundlage des Wertes der Tonlagenperiode 49 durchgeführt wird. Dann wird ein vorübergehendes synthetisches Signal erzeugt durch konvolutionelles Berechnen der vorübergehenden Impulserregung und der Impulsantwort. Der Abstand zwischen dem vorübergehenden synthetischen Signal und dem Codierzielsignal 20 wird berechnet. Einer der Impulspositionscodes, der den Abstand am kürzesten macht, wird als der stochastische Erregungscode 19 ausgegeben. Zusätzlich wird eine vorübergehende Impulserregung entsprechend dem Impulspositionscode zu der Verstärkungscodiereinheit 12 in der Codiereinheit 1 ausgegeben.
  • In der stochastischen Erregungsdecodiereinheit 16 wird ein Impulspositions-Codebuch aus N Impulspositions-Codebüchern (das erste Impulspositions-Codebuch 51 bis N-te Impulspositions-Codebuch 52) ausgewählt auf der Grundlage der Tonlagenperiode 53. Die Impulspositions-Decodiereinheit 46 liest Impulspositionsdaten in dem ausgewählten Impulspositions-Codebuch auf der Grundlage des stochastischen Erregungscodes 43, setzt mehrere Impulse mit von dem stochastischen Erregungscode 43 ernannten Vorzeichen auf der Grundlage der Impulspositionsdaten und gibt die Daten als die stochastische Erregung 44 aus nach Durchführung eines Tonlagen-Synchronisationsprozesses auf der Grundlage des Wertes der Tonlagenperiode 53.
  • 7 zeigt das erste Impulspositions-Codebuch 51 bis N-te Impulspositions-Codebuch 52, die in dem Fall verwendet werden, dass die Rahmenlänge des Erregungssignals zum Codieren achtzig Abtastungen beträgt.
    • (a) in 7 ist das erste Impulspositions-Codebuch, das verwendet wird, wenn die Tonlagenperiode p größer als 48 ist, wie in (a) von 29 gezeigt ist. Die stochastische Erregung von achtzig Abtastungen ist aus vier Impulsen zusammengesetzt, und kein Tonlagen-Synchronisationsprozess wird durchgeführt. Die Informationsmenge für jede Impulsposition beträgt insgesamt 17 Bits, d.h., 4 Bit, 4 Bits, 4 Bits und 5 Bits von oben nach unten.
    • (b) in 7 ist das Impulspositions-Codebuch, das verwendet wird, wenn die Tonlagenperiode p größer als 32 und gleich oder kleiner als 48 ist, wie in (b) von 29 gezeigt ist. Die stochastische Erregung von höchstens 48 Abtastungen ist aus drei Impulsen zusammengesetzt. Die stochastische Erregung von achtzig Abtastungen wird erzeugt, indem der Tonlagen-Synchronisationsprozess einmal durchgeführt wird. Die stochastische Erregung von achtzig Abtastungen kann aus höchstens sechs Impulsen zusammengesetzt sein, durch Verwendung dieses Codebuchs. Die Informationsmenge für jede Impulsposition beträgt insgesamt 12 Bits, d.h., 4 Bits, 4 Bits und 4 Bits von oben nach unten. Wenn es erforderlich ist, zusätzlich die Tonlagenperiode zu codieren und die Tonlagenperiode mit 5 Bits codiert ist, kann sie insgesamt 17 Bits betragen.
    • (c) von 7 ist das dritte Impulspositions-Codebuch, das verwendet wird, wenn die Tonlagenperiode p gleich oder kleiner als 32 ist, wie in (c) von 29 gezeigt ist. Die stochastische Erregung von höchstens zweiunddreißig Abtastungen ist aus vier Impulsen zusammengesetzt. Die stochastische Erregung von achtzig Abtastungen wird erzeugt, indem der Tonlagen-Synchronisationsprozess dreimal durchgeführt wird. Die stochastische Erregung von achtzig Abtastungen kann aus sechzehn Impulsen zusammengesetzt sein in dem Fall, dass die Tonlagenperiode gleich 20 ist, durch Verwendung dieses Codebuchs. Die Informationsmenge für jede Impulsposition beträgt insgesamt 12 Bits, d.h. 3 Bits, 3 Bits, 3 Bits und 3 Bits von oben nach unten. Wenn es erforderlich ist, die Tonlagenperiode zusätzlich zu codieren und die Tonlagenperiode mit 5 Bits codiert ist, kann sie insgesamt 17 Bits betragen.
  • In 7 ist die Anzahl von Impulsen unter der Voraussetzung definiert, dass die Tonlagenperiode codiert ist durch Verwendung eines anderen Verfahrens. Wenn jedoch eine Wiederholungsperiode der adaptiven Erregung als die Tonlageperiode verwendet wird, ist es möglich, die Anzahl von Impulsen in (b) und (c) von 7 weiter zu erhöhen. Dieser Fall, der anzeigt, dass die Wiederholungsperiode als die Tonlageperiode verwendet wird, hängt von der Rahmenlänge und der Gesamtbitzahl ab. Verglichen mit dem herkömmlichen Fall von (a) in 7 wird die Anzahl von erforderlichen Bits für einen Puls herabgesetzt, da der Impulsbereich auf etwa die Länge der Tonlagenperiode beschränkt werden kann. Folglich ist es möglich, die Anzahl von Impulsen für den Fall zu erhöhen, dass die Gesamtbitzahl festgelegt ist. Die Konfiguration zum Codieren der Tonlagenperiode durch ein anderes Verfahren ist wirksam, wenn das Erregungssignal codiert wird durch Verwendung nur der algebraischen Erregung, wie der in 17 erläuterte zweite Erregungssignal-Codiermodus.
  • Wie vorstehend festgestellt ist, wird in der Codiereinheit der Sprachcodier-/-decodiervorrichtung gemäß dem Ausführungsbeispiel 3 die Anzahl von Erregungssignalimpulsen erhöht durch Beschränkung der Erregungssignalpositionskandidaten auf den Bereich innerhalb der Tonlageperiode, wenn die Tonlageperiode gleich oder kleiner als ein spezifischer Wert ist. Folglich wird die Codierqualität verbessert, da die Qualität der Darstellung von Erregungssignalen erhöht wird. Es ist auch möglich, die Tonlagenperiode durch ein anderes Verfahren zu codieren ohne starke Erhöhung der Anzahl von Impulsen. Selbst der Teil, bei dem die Codiercharakteristiken mit Verwendung der a daptiven Erregung schlecht sind, kann codiert werden durch Verwendung der Tonlagen-periodischen algebraischen Erregung. Daher wird die Codierqualität verbessert.
  • Ausführungsbeispiel 4
  • 8 zeigt ein Impulspositions-Codebuch, das in der Sprachcodier-/-decodiervorrichtung gemäß dem Ausführungsbeispiel 4 verwendet wird. Die Gesamtkonfiguration der Sprachcodier-/-decodiervorrichtung nach Ausführungsbeispiel 4 ist dieselbe wie in 13, die stochastische Erregungscodiereinheit 11 ist dieselbe wie in 5, die stochastische Erregungsdecodiereinheit 16 ist dieselbe wie in 6 und das anfängliche Impulspositions-Codebuch ist dasselbe wie in 7.
  • Wenn die Tonlagenperiode p gleich oder geringer als 32 ist, wird das dritte Impulspositions-Codebuch, das in (c) von 7 gezeigt ist, in der stochastischen Erregungscodiereinheit 11 und der stochastischen Erregungsdecodiereinheit 16 ausgewählt. Bei diesem Ausführungsbeispiel 4 wird das in (a) von 8 gezeigte dritte Impulspositions-Codebuch verwendet, wenn die Tonlagenperiode gleich 32 ist.
  • Wenn jedoch die Tonlagenperiode geringer als 32 ist, wird die Impulsposition gleich oder größer als der Tonlagenperiodenlänge nicht ausgewählt. Der Teil dieser nicht gewählten Impulsposition wird verwendet, nachdem sie als eine Impulsposition geringer als die Tonlageperiodenlänge wieder definiert ist. (b) von 8 zeigt ein Impulspositions-Codebuch, bei dem eine Impulserregungsposition 300, die nicht ausgewählt ist, wenn die Tonlagenperiode p gleich 20 ist, zurückgesetzt wurde, um eine Impulserregungsposition 310 zu sein, die geringer als die Tonlageperiodenlänge ist. D.h., alle Impulserregungspositionen 300, die gleich oder größer als 20 in dem dritten Impulspositions-Codebuch von (c) in 7 sind, werden zurückgesetzt, um die Impulserregungsposition 310 weniger als 20 zu sein, wie in (b) von 8 gezeigt ist. Es kann verschiedene Verfahren zum Zurücksetzen geben, solang wie keine weitere identische Impulsposition zurückgesetzt wird für eine Impulsposition in einer Impulsnummer. In 8 wird ein Verfahren zum Ersetzen zu einer Impulserregungsposition 311, die der nächsten Impulsnummer zugewiesen ist, angewendet, wie durch die Pfeile gezeigt ist.
  • Wie vorstehend festgestellt ist, wird der Code, der eine Impulserregungsposition anzeigt, die größer als die Tonlagenperiode ist, zurückgesetzt, um eine Impulserregungsposition innerhalb der Tonlagenperiode anzuzeigen. Wenn der Code für eine nicht verwendete Impulsposition ausgeschlossen wird, werden alle Codierinformationen wirksam. Folglich wird die Codierqualität verbessert.
  • Ausführungsbeispiel 5
  • 9, die entsprechend 13 gekennzeichnet ist, zeigt die Sprachcodier-/-decodiervorrichtung gemäß dem Ausführungsbeispiel 5. In 9 sind eine Impulserregungs-Codiereinheit 57, eine Impulsverstärkungs-Codiereinheit 58, eine Auswahleinheit 59, keine Impulserregungs-Decodiereinheit 60, eine Impulsverstärkungs-Decodiereinheit 61 und eine Steuereinheit 330 gezeigt.
  • Verglichen mit 13 werden die neu hinzugefügten Operationen nachfolgend beschrieben. Die Impulserregungs-Codiereinheit 57 erzeugt eine vorübergehende Impulserregung entsprechend jedem Impulserregungscode. Dann wird die vorübergehende Impulserregung mit einer geeigneten Verstärkung multipliziert. Die multiplizierte vorübergehende Impulserregung wird gefiltert durch Verwendung eines Synthesefilters, in welchem ein von einer Linearvorhersagekoeffizienten-Codiereinheit 9 ausgegebener Linearvorhersagekoeffizient angewendet wird, um ein synthetisches Signal zu erzeugen. Ein Abstand zwischen dem gegenwärtigen synthetischen Signal und einer Eingangssprache 5 wird berechnet, und einer der Impulserregungscodes, der den Abstand am kürzesten macht, wird ausgewählt. Einige Impulserregungscodes, die einen längeren Abstand zu dem kürzesten Abstand haben, werden in der Reihenfolge vom kürzesten zum weitesten Abstand gesucht als Impulserregungscodekandidaten. Vorübergehende Impulserregungen entsprechend jedem der Impulserregungscodekandidaten werden ausgegeben.
  • Die Impulsverstärkungs-Codiereinheit 58 erzeugt einen vorübergehenden Impulsverstärkungsvektor entsprechend jedem Verstärkungscode. Dann wird jeder Impuls der vorübergehenden Impulserregung mit jedem Element jedes Impulsverstärkungsvektors multipliziert. Die multiplizierte vorübergehende Impulserregung wird durch Verwendung des Synthesefilters gefiltert, in welchem der von der Linearvorhersagekoeffizienten-Codiereinheit 9 ausgegebene Linearvorhersagekoeffizient angewendet wird, um ein synthetisches Signal zu erzeugen. Ein Abstand zwischen dem vorübergehenden synthetischen Signal und der Eingangssprache 5 wird berechnet. Eine der vorübergehenden Impulserregungen und einer der Verstärkungscodes, die den Abstand am kürzesten machen, werden ausgewählt. Dann werden ein Im pulserregungscode entsprechend dem ausgewählten Verstärkungscode und die ausgewählte vorübergehende Impulserregung ausgegeben.
  • Die Auswahleinheit 59 vergleicht den in der Verstärkungscodiereinheit 12 erhaltenen kürzesten Abstand mit dem in der Impulsverstärkungs-Codiereinheit 58 erhaltenen kürzesten Abstand und wählt denjenigen aus, der den kürzesten bildet. Abhängig von dieser Auswahl wird ein Modus aus einem ersten Erregungssignal-Codiermodus, der aus der adaptiven Erregungscodiereinheit 10, der stochastischen Erregungscodiereinheit 11 und der Verstärkungscodiereinheit 12 zusammengesetzt ist, und einem zweiten Modus, der aus der Impulserregungs-Codiereinheit 57 und der Impulsverstärkungs-Codiereinheit 58 zusammengesetzt ist, für die Verwendung geschaltet.
  • Die Multiplexeinheit 3 führt in dem Fall der Verwendung des ersten Erregungssignal-Codiermodus eine Multiplexverarbeitung eines Codes des Linearvorhersagekoeffizienten, von Auswahlinformationen, eines adaptiven Erregungscodes, eines stochastischen Erregungscodes und eines Verstärkungscodes durch und gibt einen Multiplexcode 6 aus. In dem Fall der Verwendung des zweiten Erregungssignal-Codiermodus führt die Multiplexeinheit 3 eine Multiplexverarbeitung des Codes des Linearvorhersagekoeffizienten, der Auswahlinformationen, eines Impulserregungscodes und eines Impulsverstärkungscodes durch und gibt den Multiplexcode 6 aus.
  • Wenn die Auswahlinformationen in dem ersten Erregungssignal-Codiermodus sind, trennt eine Trenneinheit 4 den Code 6 in den Code des Linearvorhersagekoeffizienten, die Auswahlinformationen, den adaptiven Erregungscode, den stochastischen Erregungscode und den Verstärkungscode. Wenn die Auswahlinformationen in dem zweiten Erregungssignal-Codiermodus sind, trennt die Trenneinheit 4 den Code 6 in den Code des Linearvorhersagekoeffizienten, die Auswahlinformationen, den Impulserregungscode und den Impulsverstärkungscode.
  • Wenn die Auswahlinformationen in dem ersten Erregungssignal-Codiermodus sind, gibt eine adaptive Erregungsdecodiereinheit 15 einen Zeitserienvektor aus, gebildet durch periodisches Wiederholen eines alten Erregungssignals, auf der Grundlage des adaptiven Erregungscodes. Die stochastische Erregungsdecodiereinheit 16 gibt einen Zeitserienvektor auf der Grundlage des stochastischen Erregungscodes aus, und eine Verstärkungsdecodiereinheit 17 gibt einen Verstärkungsvektor auf der Grundlage des Verstärkungscodes aus. Ein Erregungssignal wird in der Decodiereinheit 2 erzeugt durch Multiplizieren der zwei Zeitserienvektoren mit jedem Element des Verstärkungsvektors und Addieren dieser multiplizierten Werte. Das Erregungssignal wird gefiltert durch Verwendung eines Synthesefilters 14, um eine Ausgangssprache 7 zu sein.
  • Wenn die Auswahlinformationen in dem zweiten Erregungssignal-Codiermodus sind, gibt die Impulserregungs-Decodiereinheit 60 eine Impulserregung entsprechend dem Impulserregungscode aus. Die Impulsverstärkungs-Decodiereinheit 61 gibt einen Impulsverstärkungsvektor entsprechend dem Verstärkungscode aus. Ein Erregungssignal wird in der Decodiereinheit 2 erzeugt durch Multiplizieren jedes Impulses der Impulserregung mit jedem Element des Impulsverstärkungsvektors. Dieses Erregungssignal wird gefiltert durch Verwendung des Synthesefilters 14, um die Ausgangs sprache 7 zu sein. Abhängig von der Auswahlinformation schaltet die Steuereinheit 330 das Ausgangssignal auf der Grundlage des ersten Erregungssignal-Codiermodus zu dem Ausgangssignal auf der Grundlage des zweiten Erregungssignal-Codiermodus.
  • Wie vorstehend festgestellt ist, wird bei diesem Ausführungsbeispiel 5 die Erregungssignalcodierung durchgeführt durch Verwendung sowohl des ersten Erregungssignal-Codiermodus, bei dem das Erregungssignal durch mehrere Impulserregungspositionen und Erregungssignalverstärkungen codiert ist, als auch des zweiten Erregungssignal-Codiermodus, der unterschiedlich gegenüber dem ersten Modus ist. Andererseits wird bei dem in 17 gezeigten herkömmlichen Fall nur einer der beiden Moden verarbeitet. Dann wird im Ausführungsbeispiel 5 einer der Erregungssignal-Codiermoden, der die kleinere Codierverzerrung anführt, ausgewählt. Folglich wird der Modus, der die beste Codiercharakteristik angeführt, ausgewählt, um die Codierqualität zu verbessern. Es ist auch annehmbar, die Konfigurationen der stochastischen Erregungscodiereinheit 11 und der Impulserregungs-Codiereinheit 57, die in den Ausführungsbeispielen 1 bis 4 beschrieben sind, für die diejenigen im Ausführungsbeispiel 5 anzuwenden.
  • Ausführungsbeispiel 6
  • 10 zeigt die Ausbildung der stochastischen Erregungscodiereinheit 11 der Sprachcodier-/-decodiervorrichtung gemäß dem Ausführungsbeispiel 6. Die Bezugszahlen in 10 sind entsprechend denjenigen in 5 angegeben. Die Gesamtkonfiguration der Sprachcodier-/-decodiervorrichtung ist ähnlich der in 9 oder 13. In 10 sind eine stochastische Erregungssucheinheit 62, ein erstes stochastisches Erregungscodebuch 63 und ein zweites stochastisches Erregungscodebuch 64 gezeigt.
  • Das erste stochastische Erregungscodebuch 63 und das zweite stochastische Erregungscodebuch 64 aktualisieren jedes Codewort auf der Grundlage der eingegebenen Tonlagenperiode 49. Die stochastische Erregungssucheinheit 62 liest einen Zeitserienvektor in dem ersten stochastischen Erregungscodebuch 63 und einen Zeitserienvektor in dem zweiten stochastischen Erregungscodebuch 64 auf der Grundlage jedes stochastischen Erregungscodes. Eine vorübergehende stochastische Erregung wird erzeugt durch Addieren dieser zwei Zeitserienvektoren. Dann wird eine geeignete Verstärkung mit dieser vorübergehenden stochastischen Erregung und einer von der adaptiven Erregungscodiereinheit 10 ausgegebenen adaptiven Erregung multipliziert und die multiplizierten Werte werden addiert. Das addierte Signal wird durch Verwendung des Synthesefilters gefiltert, in welchem der codierte Linearvorhersagekoeffizient angewendet wird, um ein vorübergehendes synthetisches Signal zu erzeugen. Der Abstand zwischen diesem vorübergehenden synthetischen Signal und der Eingangssprache 5 wird berechnet. Einer der stochastischen Erregungscodes, der den Abstand am kürzesten macht, wird ausgewählt. Eine vorübergehende stochastische Erregung entsprechend dem ausgewählten stochastischen Erregungscode wird als eine stochastische Erregung ausgegeben.
  • 11 zeigt die Konfigurationen des ersten stochastischen Erregungscodebuchs 63 und des zweiten stochastischen Erregungscodebuchs 64. In 11 zeigt L eine Rahmenlänge, die zum Codieren eines Erregungssignals verwendet wird, an, p zeigt die Tonla genperiode 49 an und N die Größe jedes stochastischen Erregungscodebuchs. Codewörter 340 für 0 bis (L/2 – 1) zeigen eine Reihe von Impulsen an, die mit der Tonlagenperiode P wiederholt werden. Codewörter 350 für (L/2) bis N zeigen Erregungssignal-Wellenformen. Die Kopfpositionen der Impulsserien in dem ersten stochastischen Erregungscodebuch 63, die in (a) von 11 gezeigt sind, sind abwechselnd verschieden von denjenigen in dem zweiten stochastischen Erregungscodebuch 64, die in (b) von 11 gezeigt sind. Die Kopfimpulspositionen sind niemals dieselben Positionen. In 11 sind erlernte Rauschsignale in den Codewörtern nach der Nummer (L/2) gespeichert. Es ist auch annehmbar, nicht gelerntes Rauschen, ein anderes Signal als die Serie von Impulsen, die mit der Tonlagenperiode wiederholt werden, und andere für das Codewort nach der Nummer (L/2) anzuwenden. Die Codebücher, die dieselbe Konfiguration wie das erste stochastische Erregungscodebuch 63 und das zweite stochastische Erregungscodebuch 64 haben, sind in der stochastischen Erregungsdecodiereinheit 16 in der Decodiereinheit 2 vorgesehen. Die stochastische Erregungsdecodiereinheit 16 liest ein Codewort entsprechend dem stochastischen Erregungscode, addiert die Werte der Codewörter und gibt das addierte Signal als eine stochastische Erregung aus.
  • Wie vorstehend festgestellt ist, enthält die Sprachcodier-/-decodiervorrichtung gemäß dem Ausführungsbeispiel die mehreren Erregungssignal-Codebücher, von denen jedes zusammengesetzt ist aus mehreren Codewörtern, die Erregungssignal-Positionsinformationen anzeigen, und mehreren Codewörtern, die Erregungssignal-Wellenformen anzeigen. Jede Erregungssignal-Positionsinformation, die von dem Codewort in jedem der mehreren Erregungssignal-Codewörtern angezeigt wird, ist verschieden von den anderen. Dann wird das Erregungssignal codiert oder decodiert durch Verwendung dieser mehreren Erregungssignal-Codebücher. Daher ist es möglich, ein periodisches Erregungssignal darzustellen, das nicht eine Serie von Impulsen der Tonlagenperiode ist, oder das nicht eine Serie von Impulsen mit einer halben Tonlagenperiode ist. Folglich ist die Codiercharakteristik verbessert, ohne zu sehr von der Eingangssprache abzuhängen. Zusätzlich ist, da die Erregungssignal-Positionsinformationen in jedem Erregungssignal-Codebuch einander unterschiedlich sind, die Anzahl von Codewörtern zur Anzeige der Erregungssignal-Positionsinformationen herabgesetzt. Daher ist die Codiercharakteristik verbessert in dem Fall, dass die Codebuchgröße N kürzer als die Rahmenlänge ist und die Menge der Codewörter, die eine Erregungssignal-Wellenform anzeigen, zu klein ist. Mit anderen Worten, es ist sogar möglich, einen Teil eines kleinen Codebuchs als ein Codewort zu definieren, das Erregungssignal-Positionsinformationen anzeigt, um die Codiercharakteristik zu verbessern.
  • Eine vorübergehende stochastische Erregung wird bei diesem Ausführungsbeispiel 6 erzeugt durch Addieren von zwei Zeitserienvektoren. Es ist auch annehmbar, eine Konfiguration zu haben, bei der jeder der zwei Zeitserienvektoren jeweils als ein unabhängiges stochastisches Erregungssignal mit einer Verstärkung multipliziert wird. In diesem Fall kann, obgleich die Menge der Verstärkungscodierinformationen erhöht ist, die Codiercharakteristik verbessert werden, ohne eine große Zunahme der Informationsmenge zu haben, da die Vektorquantisierung für alle Verstärkungen gleichzeitig durchgeführt wird.
  • Ausführungsbeispiel 7
  • 12 zeigt das erste stochastische Erregungscodebuch 63 und das zweite stochastische Erregungscodebuch 64, die in der stochastischen Erregungscodiereinheit 11 der Sprachcodier-/-decodiervorrichtung gemäß dem Ausführungsbeispiel 7 verwendet werden. Die Gesamtkonfiguration der Sprachcodier-/-decodiervorrichtung ist dieselbe wie in 9 oder 13, und die der stochastischen Erregungscodiereinheit 11 ist dieselbe wie in 10.
  • Die Codewörter für 0 bis (p/2 – 1) zeigen Serien von Impulsen an, die mit der Tonlagenperiode p wiederholt werden. Der Unterschied zwischen 11 und 12 besteht darin, dass die Anzahl der Codewörter, die aus Serien von Impulsen zusammengesetzt sind, in 12 geringer als in 11 ist, da die Kopfposition der Impulsserien innerhalb der Tonlagenperiodenlänge beschränkt ist. Wenn die Tonlagenperiode p länger als die Rahmenlänge L ist, ist die Konfiguration nach 12 dieselbe wie in 11. Die Kopfimpulspositionen der Impulsserien des ersten stochastischen Erregungscodebuchs 63, die in (a) von 12 gezeigt sind, und des zweiten stochastischen Erregungscodebuchs 64, die in (b) von 12 gezeigt sind, kommen abwechselnd, und folglich stimmen die Kopfimpulspositionen niemals überein. In 12 sind erlernte Rauschsignale in den Codewörtern nach der Nummer (p/2) gespeichert. Es ist auch annehmbar, nicht erlerntes Rauschen, ein anderes Signal als eine Serie von Impulsen, die mit der Tonlagenperiode wiederholt wird, und andere für das Codewort nach der Nummer (p/2) anzuwenden.
  • Wie vorstehend festgestellt ist, enthält die Sprachcodier-/-decodiervorrichtung gemäß Ausführungsbei spiel 7 die mehreren Erregungssignal-Codebücher, von denen jedes zusammengesetzt ist aus mehreren Codewörtern, die Erregungssignal-Positionsinformationen anzeigen und mehreren Codewörtern, die Erregungssignal-Wellenformen anzeigen. Jede Erregungssignal-Positionsinformation, die durch das Codewort in jedem der mehreren Erregungssignal-Codebücher angezeigt wird, unterscheidet von den jeweils anderen. Dann wird, wenn das Erregungssignal durch Verwendung dieser mehreren Erregungssignal-Codebücher codiert wird, die Anzahl von Codewörtern, die Erregungssignal-Positionsinformationen in dem Erregungssignal-Codebuch anzeigen, gesteuert auf der Grundlage einer Tonlagenperiode. Zusätzlich zu den Wirkungen des Ausführungsbeispiels 6 wird weiterhin die Anzahl von Codewörtern, die die Erregungssignal-Positionsinformationen anzeigen, herabgesetzt. Daher hat die Sprachcodier-/-decodiervorrichtung die Wirkung, dass die Codiercharakteristik verbessert, wenn die Codebuchgröße N kürzer als die Rahmenlänge ist und die Codewörter, die Erregungssignalwellenformen anzeigen, sehr wenige sind. Mit anderen Worten, es ist sogar möglich, einen Teil des kleinen Codebuchs als eine Codewort anzeigende Erregungssignal-Positionsinformation zu definieren, um die Codiercharakteristik zu verbessern.
  • Wenn das Erregungssignal einer Tonlagenperiodenlänge codiert wird durch Adaptieren einer zeitweisen Nacheilung (Phase) einer algebraischen Erregung, auf der Grundlage der Spitzenpositionsinformationen für eine Tonlagen-Wellenform der adaptiven Erregung, wie in der Sprachcodier-/-decodiervorrichtung im Artikel 4 offenbart ist, wird die Erregungssignalcodierung realisiert durch Verwendung eines stochastischen Erregungscodebuchs, das teilweise das folgende Codewort hat. Das Codewort hat Impulse um den Charakteristik punkt der Spitzenposition in dem Codebuch herum. Die Impulse sollten in dem Bereich einer Tonlagelänge oder in dem Bereich einer Länge der Tonlagenperiode, die mit einer Konstanten gleich oder geringer als 1 multipliziert ist, gehalten werden.
  • Gewerbliche Anwendbarkeit
  • Gemäß der vorliegenden Erfindung wird ein Erregungssignal in mehrere Impulserregungspositionen und Erregungssignalverstärkungen codiert durch Verwendung einer Impulsantwort, der die Phasencharakteristik für das Erregungssignal gegeben ist. Daher ist es möglich, selbst wenn die Anzahl der Erregungssignal-Positionskombinationen zunimmt, eine Codierung/Decodierung für das Erregungssignal durchzuführen, dem die Phasencharakteristik gegeben ist, solange wie der Rechenaufwand praktisch gehalten wird. Demgemäß können eine Sprachcodiervorrichtung und eine Sprachcodier-/-decodiervorrichtung, bei denen die Codierqualität verbessert ist, da die Qualität der Darstellung von Erregungssignal erhöht ist, realisiert werden.
  • Die Anzahl von Erregungssignalimpulsen kann erhöht werden durch Beschränken von Erregungssignal-Positionskandidaten auf die Tonlagenperiode, wenn die Tonlagenperiode gleich einem oder kleiner als ein spezifischer Wert ist. Folglich können eine Sprachcodiervorrichtung, eine Sprachdecodiervorrichtung und eine Sprachcodier-/-decodiervorrichtung, bei denen die Codierqualität verbessert ist, da die Qualität der Darstellung von Erregungssignalen erhöht ist, realisiert werden.
  • Ein Code, der eine Impulserregungsposition anzeigt, die größer als die Tonlagenperiode ist, kann zurück gesetzt werden, um eine Impulserregungsposition innerhalb der Tonlagenperiode anzuzeigen. Da ein Code für eine nicht benutzte Impulsposition ausgeschlossen wird, werden alle Codierinformationen wirksam. Folglich können die Sprachcodiervorrichtung, die Sprachdecodiervorrichtung und die Sprachcodier-/-decodiervorrichtung, bei denen die Codierqualität verbessert ist, realisiert werden.
  • Die Erregungssignalcodierung kann durchgeführt werden durch Verwendung sowohl der ersten Erregungssignal-Codiereinheit, in der ein Erregungssignal durch mehrere Impulserregungsposition und Erregungssignalverstärkungen codiert wird, als auch der zweiten Erregungssignal-Codiereinheit, die sich von der ersten Einheit unterscheidet. Dann wird eine der Erregungssignal-Codiereinheiten, die die kleinere Codierverzerrung anführt, ausgewählt. Folglich wird der Modus, der die beste Codiercharakteristik anführt, ausgewählt. Die Sprachcodiervorrichtung und die Sprachcodier-/-decodiervorrichtung, bei denen die Codierqualität verbessert ist, können realisiert werden.
  • Mehrere Erregungssignal-Codebücher, von denen jedes aus mehreren Codewörtern, die Erregungssignal-Positionsinformationen anzeigen, und mehreren Codewörtern, die Erregungssignal-Wellenformen anzeigen, zusammengesetzt ist, können enthalten sein. Jede Erregungssignal-Positionsinformation, die durch das Codewort in jedem der mehreren Erregungssignal-Codebüchern angezeigt ist, unterscheidet sich von der jeweils anderen. Dann wird das Erregungssignal codiert oder decodiert durch Verwendung dieser mehreren Erregungssignal-Codebücher. Daher ist es möglich, ein periodisches Erregungssignal darzustellen, das nicht eine Reihe von Impulsen der Tonlagenperiode ist oder das nicht eine Reihe von Impulsen mit der halben Tonlagenperiode ist. Folglich können die Sprachcodiervorrichtung, die Sprachdecodiervorrichtung und die Sprachcodier-/-decodiervorrichtung, bei denen die Codiercharakteristik verbessert ist, ohne zu stark von der Eingangssprache abzuhängen, realisiert werden.
  • Zusätzlich wird, da die Erregungssignal-Positionsinformationen in jedem Erregungssignal-Codebuch einander unterschiedlich sind, die Anzahl von Codewörtern für die Anzeige der Erregungssignal-Positionsinformationen herabgesetzt. Daher wird in dem Fall, dass die Codebuchgröße N kürzer als die Rahmenlänge ist und die Menge der eine Erregungssignal-Wellenform anzeigenden Codewörter zu klein, die Codiercharakteristik verbessert. Mit anderen Worten, es ist sogar möglich, einen Teil eines kleinen Codebuchs als ein Codewort anzeigende Erregungssignal-Positionsinformationen zu definieren, um die Codiercharakteristik zu verbessern. Demgemäß können die Sprachcodiervorrichtung, Sprachdecodiervorrichtung und Sprach-/-decodiervorrichtung, bei denen Codiercharakteristik wie vorstehend verbessert ist, realisiert werden.
  • Weiterhin kann die Anzahl von Codewörtern, die Erregungssignal-Positionsinformationen in dem Erregungssignal-Codebuch anzeigen, auf der Grundlage einer Tonlagenperiode gesteuert werden, und ein Erregungssignal wird codiert durch Verwendung des Erregungssignal-Codebuchs. D.h., die Anzahl von Codewörtern, die Erregungssignal-Positionsinformationen anzeigen, wird weiter herabgesetzt.
  • Die vorbeschriebenen Erfindungen können als ein Verfahren zur Sprachcodierung/-decodierung verwendet werden.

Claims (3)

  1. Sprachcodiervorrichtung, die eine Eingangssprache in Spektrumumhüllungsinformationen und ein Erregungssignal trennt und das Erregungssignal bei jedem Rahmen codiert, welche Sprachcodiervorrichtung aufweist: eine Impulsantwort-Berechnungseinheit (21) zum Berechnen einer Impulsantwort eines Synthesefilters auf der Grundlage der Spektrumumhüllungsinformationen; ein Phasenadditionsfilter (42), um der Impulsantwort eine spezifische Erregungssignal-Phasencharakteristik zu geben; und eine Erregungssignal-Codiereinheit (22, 12) zum Codieren des Erregungssignals in mehrere Impulserregungspositionen und mehrere Erregungssignalverstärkungen, indem die Impulsantwort verwendet wird, zu der die spezifische Erregungssignal-Phasencharakteristik hinzugefügt wurde.
  2. Sprachcodier-/-decodiervorrichtung, die eine Codiereinheit (1) zum Trennen einer Eingangssprache in Spektrumumhüllungsinformationen und ein Erregungssignal und zum Codieren des Erregungssignals bei jedem Rahmen sowie eine Decodiereinheit (2) zum Erzeugen einer Ausgangssprache durch Decodieren eines codierten Erregungssignals aufweist, wobei die Codiereinheit (1) der Sprachcodier-/-decodiervorrichtung aufweist: eine Impulsantwort-Berechnungseinheit (21) zum Berechnen einer Impulsantwort eines Synthesefilters auf der Grundlage der Spektrumumhüllungsinformationen; ein Phasenadditionsfilter (42), um der Impulsantwort eine spezifische Erregungssignal-Phasencharakteristik zu geben; und eine Erregungssignal-Codiereinheit (22, 12) zum Codieren des Erregungssignals in mehrere Impulserregungspositionen und mehrere Erregungssignalverstärkungen, basierend auf der Impulsantwort, zu der die spezifische Erregungssignal-Phasencharakteristik hinzugefügt wurde, und die Decodiereinheit (2) der Sprachcodier-/-decodiervorrichtung aufweist: eine Erregungssignal-Decodiereinheit (16, 17) zum Erzeugen eines Erregungssignals durch Decodieren der mehreren Impulserregungspositionen und der mehreren Erregungssignalverstärkungen.
  3. Sprachcodierverfahren zum Trennen einer Eingangssprache in Spektrumumhüllungsinformationen und ein Erregungssignal sowie zum Codieren des Erregungssignals bei jedem Rahmen, welches Sprachcodierverfahren die Schritte aufweist: Berechnen einer Impulsantwort eines Synthesefilters auf der Grundlage der Spektrumumhüllungsinformationen; Hinzufügen einer spezifischen Erregungssignal-Phasencharakteristik zu der Impulsantwort; und Codieren des Erregungssignals in mehrere Impulserregungspositionen und mehrere Erregungssignalverstärkungen durch Verwenden der Impulsantwort, zu der die spezifische Erregungssignal-Phasencharakteristik hinzugefügt wurde.
DE69734837T 1997-03-12 1997-09-24 Sprachkodierer, sprachdekodierer, sprachkodierungsmethode und sprachdekodierungsmethode Expired - Lifetime DE69734837T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP5721497 1997-03-12
JP5721497 1997-03-12
PCT/JP1997/003366 WO1998040877A1 (en) 1997-03-12 1997-09-24 Voice encoder, voice decoder, voice encoder/decoder, voice encoding method, voice decoding method and voice encoding/decoding method

Publications (2)

Publication Number Publication Date
DE69734837D1 DE69734837D1 (de) 2006-01-12
DE69734837T2 true DE69734837T2 (de) 2006-08-24

Family

ID=13049285

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69734837T Expired - Lifetime DE69734837T2 (de) 1997-03-12 1997-09-24 Sprachkodierer, sprachdekodierer, sprachkodierungsmethode und sprachdekodierungsmethode

Country Status (10)

Country Link
US (1) US6408268B1 (de)
EP (1) EP1008982B1 (de)
JP (1) JP3523649B2 (de)
KR (1) KR100350340B1 (de)
CN (1) CN1252679C (de)
AU (1) AU733052B2 (de)
CA (1) CA2283187A1 (de)
DE (1) DE69734837T2 (de)
NO (1) NO994405L (de)
WO (1) WO1998040877A1 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3824810B2 (ja) * 1998-09-01 2006-09-20 富士通株式会社 音声符号化方法、音声符号化装置、及び音声復号装置
USRE43209E1 (en) 1999-11-08 2012-02-21 Mitsubishi Denki Kabushiki Kaisha Speech coding apparatus and speech decoding apparatus
JP3594854B2 (ja) 1999-11-08 2004-12-02 三菱電機株式会社 音声符号化装置及び音声復号化装置
JP3404024B2 (ja) 2001-02-27 2003-05-06 三菱電機株式会社 音声符号化方法および音声符号化装置
JP3582589B2 (ja) * 2001-03-07 2004-10-27 日本電気株式会社 音声符号化装置及び音声復号化装置
FI119955B (fi) * 2001-06-21 2009-05-15 Nokia Corp Menetelmä, kooderi ja laite puheenkoodaukseen synteesi-analyysi puhekoodereissa
JP4304360B2 (ja) * 2002-05-22 2009-07-29 日本電気株式会社 音声符号化復号方式間の符号変換方法および装置とその記憶媒体
KR100651712B1 (ko) * 2003-07-10 2006-11-30 학교법인연세대학교 광대역 음성 부호화기 및 그 방법과 광대역 음성 복호화기및 그 방법
US7996234B2 (en) * 2003-08-26 2011-08-09 Akikaze Technologies, Llc Method and apparatus for adaptive variable bit rate audio encoding
KR100589446B1 (ko) * 2004-06-29 2006-06-14 학교법인연세대학교 음원의 위치정보를 포함하는 오디오 부호화/복호화 방법및 장치
EP2099025A4 (de) * 2006-12-14 2010-12-22 Panasonic Corp Audiocodierungseinrichtung und audiocodierungsverfahren
EP2118888A4 (de) * 2007-01-05 2010-04-21 Lg Electronics Inc Verfahren und vorrichtung zum verarbeiten eines audiosignals
JP4660496B2 (ja) * 2007-02-23 2011-03-30 三菱電機株式会社 音声符号化装置及び音声符号化方法
MX2009009229A (es) * 2007-03-02 2009-09-08 Panasonic Corp Dispositivo de codificacion y metodo de codificacion.
GB2466671B (en) * 2009-01-06 2013-03-27 Skype Speech encoding
GB2466675B (en) 2009-01-06 2013-03-06 Skype Speech coding
GB2466669B (en) * 2009-01-06 2013-03-06 Skype Speech coding
GB2466673B (en) * 2009-01-06 2012-11-07 Skype Quantization
GB2466670B (en) * 2009-01-06 2012-11-14 Skype Speech encoding
GB2466674B (en) * 2009-01-06 2013-11-13 Skype Speech coding
GB2466672B (en) * 2009-01-06 2013-03-13 Skype Speech coding
JP4907677B2 (ja) * 2009-01-29 2012-04-04 三菱電機株式会社 音声符号化装置及び音声符号化方法
US8452606B2 (en) * 2009-09-29 2013-05-28 Skype Speech encoding using multiple bit rates
CN111123272B (zh) * 2018-10-31 2022-02-22 无锡祥生医疗科技股份有限公司 单极系统的戈莱码编码激励方法和解码方法
US11777763B2 (en) * 2020-03-20 2023-10-03 Nantworks, LLC Selecting a signal phase in a communication system

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61134000A (ja) * 1984-12-05 1986-06-21 株式会社日立製作所 音声分析合成方式
JPH0782360B2 (ja) * 1989-10-02 1995-09-06 日本電信電話株式会社 音声分析合成方法
US5754976A (en) * 1990-02-23 1998-05-19 Universite De Sherbrooke Algebraic codebook with signal-selected pulse amplitude/position combinations for fast coding of speech
JP3074703B2 (ja) * 1990-06-27 2000-08-07 ソニー株式会社 マルチパルス符号化装置
JPH05273999A (ja) 1992-03-30 1993-10-22 Hitachi Ltd 音声符号化方法
US5457783A (en) * 1992-08-07 1995-10-10 Pacific Communication Sciences, Inc. Adaptive speech coder having code excited linear prediction
JPH08123494A (ja) * 1994-10-28 1996-05-17 Mitsubishi Electric Corp 音声符号化装置、音声復号化装置、音声符号化復号化方法およびこれらに使用可能な位相振幅特性導出装置
JPH08179796A (ja) * 1994-12-21 1996-07-12 Sony Corp 音声符号化方法

Also Published As

Publication number Publication date
NO994405L (no) 1999-09-13
AU733052B2 (en) 2001-05-03
CN1252679C (zh) 2006-04-19
CN1249035A (zh) 2000-03-29
KR100350340B1 (ko) 2002-08-28
JP3523649B2 (ja) 2004-04-26
EP1008982B1 (de) 2005-12-07
DE69734837D1 (de) 2006-01-12
US6408268B1 (en) 2002-06-18
EP1008982A1 (de) 2000-06-14
AU4319697A (en) 1998-09-29
WO1998040877A1 (en) 1998-09-17
NO994405D0 (no) 1999-09-10
KR20000076153A (ko) 2000-12-26
CA2283187A1 (en) 1998-09-17
EP1008982A4 (de) 2003-01-08

Similar Documents

Publication Publication Date Title
DE69734837T2 (de) Sprachkodierer, sprachdekodierer, sprachkodierungsmethode und sprachdekodierungsmethode
DE69029120T2 (de) Stimmenkodierer
DE69836624T2 (de) Audiokodierer und -dekodierer
DE19609170B4 (de) Verfahren zur Durchführung einer "Tiefe-Zuerst"-Suche in einem Codebuch zur Codierung eines Geräusch- bzw. Klangsignales, Vorrichtung zur Durchführung dieses Verfahrens sowie zellulares Kommunikationssystem mit einer derartigen Vorrichtung
DE69613360T2 (de) Linear-prädiktiver analyse-durch-synthese sprachkodierer
DE19604273C2 (de) Verfahren und Vorrichtung zum Durchführen einer Suche in einem Kodebuch im Hinblick auf das Kodieren eines Klangsignales, Zellkommunikationssystem, Zellnetzwerkelement und mobile Zell-Sender-/Empfänger-Einheit
DE69032168T2 (de) Dynamisches codebuch zur wirksamen sprachcodierung unter anwendung von algebraischen coden
DE69530442T2 (de) Vorrichtung zur Sprachkodierung
DE69129329T2 (de) Sprachkodierungsystem
DE69932460T2 (de) Sprachkodierer/dekodierer
DE69227650T2 (de) Digitaler Sprachkodierer
DE69420431T2 (de) Sprachkodierungssystem
DE4492048C2 (de) Vektorquantisierungs-Verfahren
DE69012419T2 (de) Verfahren zum Einrichten von Anregungsimpulsen in einem linearen Pradiktionssprachcodierer.
DE69329569T2 (de) Digitale Kodierung von Sprachsignalen
DE69832358T2 (de) Verfahren zur Sprachkodierung und -dekodierung
DE69526017T2 (de) Vorrichtung zur Vektorquantisierung
DE69033510T3 (de) Numerischer sprachcodierer mit verbesserter langzeitvorhersage durch subabtastauflösung
DE69521622T2 (de) System und verfahren zur sprachverarbeitung mittels multipuls-analyse
DE69610915T2 (de) Verfahren zur quantisierung des verstärkungsfaktors für die linear-prädiktive sprachkodierung mittels analyse-durch-synthese
DE3237613A1 (de) Spracherkennungs-verfahren und -vorrichtung fuer kontinuierliche sprache
DE19722705A1 (de) Verfahren zur Abschätzung der Verstärkung zur Sprachkodierung
DE4491015C2 (de) Verfahren zum Erzeugen eines Spektralrauschbewertungsfilters zur Verwendung in einem Sprachcoder
DE69017842T2 (de) Verfahren und Einrichtung zur Codierung von Prädiktionsfiltern in Vocodern mit sehr niedriger Datenrate.
DE68923771T2 (de) Sprachübertragungssystem unter Anwendung von Mehrimpulsanregung.

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)