DE69229364T2 - Einrichtung und Verfahren zur Sprachkodierung - Google Patents

Einrichtung und Verfahren zur Sprachkodierung

Info

Publication number
DE69229364T2
DE69229364T2 DE69229364T DE69229364T DE69229364T2 DE 69229364 T2 DE69229364 T2 DE 69229364T2 DE 69229364 T DE69229364 T DE 69229364T DE 69229364 T DE69229364 T DE 69229364T DE 69229364 T2 DE69229364 T2 DE 69229364T2
Authority
DE
Germany
Prior art keywords
signal
gain
excitation
code table
code vector
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 - Fee Related
Application number
DE69229364T
Other languages
English (en)
Other versions
DE69229364D1 (de
Inventor
Toshiki Miyano
Kazunori Ozawa
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Application granted granted Critical
Publication of DE69229364D1 publication Critical patent/DE69229364D1/de
Publication of DE69229364T2 publication Critical patent/DE69229364T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/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/12Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
    • 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
    • G10L2019/0001Codebooks
    • G10L2019/0002Codebook adaptations
    • 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
    • G10L2019/0001Codebooks
    • G10L2019/0013Codebook search algorithms
    • G10L2019/0014Selection criteria for distances
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/06Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being correlation coefficients

Landscapes

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

Description

    EINRICHTUNG UND VERFAHREN ZUR SPRACHKODIERUNG
  • Diese Erfindung betrifft ein Verfahren zur Sprachkodierung und eine Einrichtung zur Kodierung eines Sprachsignals mit hoher Qualität mittels eines vergleichsweise kleinen Berechnungsaufwands bei einer niedrigen Bitrate, insbesondere bei etwa 8 kb/s oder weniger.
  • Ein CELP-Sprachkodierungsverfahren ist als ein Verfahren zur Kodierung eines Sprachsignals mit hoher Effizienz und einer Bitrate von 8 kb/s oder weniger bekannt. Ein derartiges CELP-Verfahren verwendet einen linearen prädiktiven Analysator, welcher eine Kurzzeit-Korrelation eines Sprachsignals repräsentiert, eine adaptive Kodetabelle, die eine Langzeit- Prädiktion eines Sprachsignals repräsentiert, eine Anregungskodetabelle, die ein Anregungssignal repräsentiert, und eine Verstärkungsfaktorkodetabelle, die Verstärkungsfaktoren der adaptiven Kodetabelle und der Anregungskodetabelle repräsentiert.
  • Es ist bereits bekannt, daß mit einem derartigen CELP- Verfahren ein besserer Anregungskodevektor zum Erhalten einer verbesserten Tonqualität herausgesucht werden kann, indem dann, wenn die Anregungskodetabelle zu durchsuchen ist, simultane optimale Verstärkungsfaktoren als der Verstärkungsfaktor des adaptiven Kodevektors und als der Verstärkungsfaktor des Anregungskodevektors verwendet werden. Ein solches Kodierungsverfahren, welches dann, wenn die Anregungskodetabelle zu durchsuchen ist, simultane optimale Verstärkungsfaktoren als den Verstärkungsfaktor des adaptiven Kodevektors und als den Verstärkungsfaktor des Anregungskodevektors verwendet, ist beispielsweise in Ira A. Gerson and Mark A. Jasiuk; "VECTOR SUM EXCITED LINEAR PREDICTION (VSELP) SPEECH CODING AT 8 KBPS", Proc. ICASSSP, '90 S9.3, pp.461-464, 1990 (Literatur 1) und in M. Tomohiko and M. Johnson, "Pitch Orthogonal CELP Speech Coder", Lecture Thesis Collection I of '90 Autumnal Research Publication Meeting, Acoustical Society of Japan (Literatur 2) offenbart.
  • Unterdessen ist als ein Sprachkodierungsverfahren, welcher ein Sprachsignal mit hoher Effizienz bei einer Bitrate von 8 kb/s oder darunter kodiert, ein solches CELP-Verfahren, welches einen linearen prädiktiven Analysator, der eine Kurzzeit-Korrelation eines Sprachsignals repräsentiert, eine adaptive Kodetabelle, die eine Langzeit-Prädiktion eines Sprachsignals repräsentiert, eine Anregungskodetabelle, die ein Anregungssignal repräsentiert, und eine Verstärkungsfaktorkodetabelle, die Verstärkungsfaktoren der adaptiven Kodetabelle und der Anregungskodetabelle repräsentiert, wie hierin vorstehend beschrieben, verwendet, in Manfred R. Schroeder and Bishnu S. Atal "CODE-EXCITED LINEAR PREDICTION (CELP): HIGH-QUALITY SPEECH AT VERY LOW BIT RATES", Proc. ICASSP, pp. 937-940, 1985 (Literatur 3) offenbart.
  • Bei den in Literatur 1 und in Literatur 2 offenbarten herkömmlichen Sprachkodierungsverfahren weist die Anregungskodetabelle eine spezifische algebraische Struktur auf, und demzufolge können simultane optimale Verstärkungsfaktoren des adaptiven Kodevektors und des Anregungskodevektors mit einem vergleichsweise kleinen Berechnungsaufwand berechnet werden. Eine Anregungskodetabelle, welche keine solche spezifische algebraische Struktur aufweist, weist jedoch einen Nachteil dahingehend auf, daß ein großer Berechnungsaufwand zur Berechnung simultaner optimaler Verstärkungsfaktoren erforderlich ist.
  • Ferner sind in dem in der Literatur 3 offenbarten herkömmlichen Sprachkodierungsverfahren die Verstärkungsfaktoren nicht normiert, und demzufolge eine Streuung der Verstärkungsfaktoren groß, was die Quantisierungscharakteristik der Sprachkodierungseinrichtung verschlechtert.
  • Eine Aufgabe der vorliegenden Erfindung besteht in der Bereitstellung einer Sprachkodierungseinrichtung, welche ein Sprachsignal mit einer Bitrate von 8 kb/s oder darunter mit einem relativ kleinen Berechnungsaufwand kodieren kann, um eine gute Tonqualität zu erhalten.
  • Zur Lösung der Aufgabe wird eine Sprachkodierungseinrichtung gemäß Anspruch 1 bereitgestellt.
  • In der Sprachkodierungseinrichtung wird die adaptive Kodetabelle nach einem adaptiven Kodevektor durchsucht, welcher den nachstehenden Fehler:
  • C = {xw'(n) - βSad(n)}² (1)
  • für
  • &beta; = < xw', xw'> /< xw', Sad> (2)
  • minimiert, wobei xw' ein Signal ist, das durch Subtraktion eines Einflußssignals von einem wahrnehmungsgewichteten Eingangssignal subtrahiert wird, Sad ein wahrnehmungsgewichtetes synthetisiertes Signal eines adaptiven Kodevektors ad mit einer Verzögerung d ist, &beta; ein optimaler Verstärkungsfaktor des adaptiven Kodevektors ist, N eine Länge eines Unterrahmens, und < #, #> ein inneres Produkt ist.
  • Anschließend wird die Anregungskodetabelle nach einem Anregungskodevektor durchsucht, welcher für den selektierten adaptiven Kodevektor ad den nachstehenden Fehler D:
  • D = {xa(n) - &gamma;Sci'(n)}2 (3)
  • für
  • &gamma; = < xa, xa> /< xa, Sci'> (4)
  • xa(n) = xw'(n) - &beta;Sad(n) (5)
  • minimiert, wobei Sci' ein wahrnehmungsgewichtetes synthetisiertes Signal eines Anregungskodevektors ci mit dem Index i orthogonalisert in Bezug auf das wahrnehmungsgewichtete Signal des selektierten adaptiven Kodevektor ist, und &gamma; ein optimaler Verstärkungsfaktor des Anregungskodevektors ist.
  • Obwohl ein Verfahren zur Orthogonalisierung eines wahrnehmungsgewichteten synthetisierten Signals eines Anregungskodevektors ci mit einem Index i in Bezug auf ein wahrnehmungsgewichtetes Signal eines selektierten adaptiven Kodevektor zum Finden simultaner optimaler Verstärkungsfaktoren beispielsweise aus der vorstehend erwähnten Literatur 1 bereits bekannt ist, erfordert das Verfahren einen sehr hohen Berechnungsaufwand. Daher wird ein derartiger Berechnungsaufwand durch die Berechnung eines Anregungskodevektors D in der nachstehenden Weise reduziert.
  • Zuerst wird die Gleichung (4) in die Gleichung (3) eingesetzt.
  • D = < xa, xa> - < xa, Sci'> ²/< Sci', Sci'> (6)
  • Dann wird die nachstehende Gleichung (7) in die Gleichung (6) eingesetzt, und damit, da xa und Sad orthogonal zueinander sind, die Gleichung (8) erhalten:
  • Sci' = Sci - Sad · < Sad, Sci> /< Sad, Sad> (7)
  • D = < xa, xa> - (xa, Sci> ²/
  • {< Sci, Sci> - < Sad, Sci> ²/< sad, Sad> } (8)
  • Zum Schluß wird die Verstärkungsfaktorkodetabelle nach einem Verstärkungsfaktorkodevektor durchsucht, welcher für den selektierten adaptiven Kodevektor und den Anregungskodevektor den nachstehenden Fehler E:
  • E = {xw'(n) - &beta;jSad(n) - &gamma;jSci(n)}² (9)
  • minimiert, wobei (&beta;j, &gamma;j) ein Verstärkungsfaktorkodevektor mit einem Index j ist.
  • Die Verstärkungsfaktorkodetabelle kann bezüglich des Signals eine zweidimensionale Kodetabelle sein, die aus Verstärkungsfaktoren der adaptiven Kodetabelle und Verstärkungsfaktoren der Anregungskodetabelle besteht oder andererseits aus zwei Kodetabellen bestehen kann, die eine aus den Verstärkungsfaktoren der adaptiven Kodetabelle bestehende eindimensionale Verstärkungsfaktorkodetabelle und eine weitere aus den Verstärkungsfaktoren der Anregungskodetabelle bestehende eindimensionale Verstärkungsfaktorkodetabelle umfassen.
  • Somit ist das Sprachkodierungsverfahren dadurch gekennzeichnet, daß dann, wenn die Anregungskodetabelle unter Verwendung eines optimalen Verstärkungsfaktors als Verstärkungsfaktoren eines adaptiven Kodevektors und eines Anregungskodevektors zu durchsuchen ist, die Gleichung (7) nicht direkt berechnet wird, sondern die Gleichung (8) auf der Basis einer Korrelationsberechnung verwendet wird.
  • Wenn nun die Länge eines Unterrahmens N ist und die Anregungskodetabelle eine Größe von B aufweist, erfordert dann die Gleichung (7) das N·2B-fache an Berechnungsoperationen, da Sad mit < Sad, Scj> /< Sad, Sad> multipliziert wird, während die Gleichung (8) ein N-faches der Berechnungsoperationen für die Berechnung von < Sad, Scj> ²/< Sad, Sad> erfordert. Demzufolge können die Berechnungsoperationen um den Faktor N(2B - 1) reduziert werden. Dabei kann eine ähnlich hohe Tonqualität erzielt werden.
  • In einem Beispiel eines Sprachkodierungsverfahrens wird die adaptive Kodetabelle nach einem adaptiven Kodevektor abgesucht, welcher den nachstehenden Fehler C:
  • C = {xw'(n) - &beta;Sad(n)}² (10)
  • für
  • &beta; = < xw', xw'> /< xw', Sad> (11)
  • minimiert, wobei xw' ein Signal ist, das durch Subtraktion eines Einflußssignals von einem wahrnehmungsgewichteten Eingangssignal erhalten wird, Sad ein wahrnehmungsgewichtetes synthetisiertes Signal eines adaptiven Kodevektors ad mit einer Verzögerung d ist, &beta; ein optimaler Verstärkungsfaktor des adaptiven Kodevektors ist, N eine Länge eines Unterrahmens (beispielsweise 5 ms), und < #, #> einen inneres Produkt ist.
  • Anschließend wird die Anregungskodetabelle nach einem Anregungskodevektor durchsucht, welcher für den selektierten adaptiven Kodevektor ad den nachstehenden Fehler D:
  • D = {xa (n) - &gamma;Sci(n)}² (12)
  • für
  • &gamma; = < xa, xa> /< xa, Sci> (13)
  • xa(n) = xw'(n) - &beta;Sad(n) (14)
  • minimiert, wobei Sci ein wahrnehmungsgewichtetes synthetisiertes Signal eines Anregungskodevektors ci mit dem Index i ist, und &gamma; ein optimaler Verstärkungsfaktor des Anregungskodevektors ist. Sci kann ein wahrnehmungsgewichtetes synthetisiertes Signal eines Anregungskodevektors ci mit einem Index i sein der in Bezug auf ein wahrnehmungsgewichtetes synthetisiertes Signal des selektierten adaptiven Kodevektors orthogonalisiert ist.
  • Zum Schluß wird die Verstärkungsfaktorkodetabelle nach einem Verstärkungsfaktorkodevektor durchsucht, welcher für den selektierten adaptiven Kodevektor und den Anregungskodevektor den nachstehenden Fehler E der Gleichung (15) minimiert. Die Verstärkungsfaktorkodetabelle muß nicht eine zweidimensionale Kodetabelle sein. Beispielsweise kann die Ver stärkungsfaktorkodetabelle aus zwei Kodetabellen bestehen, die eine eindimensionale Verstärkungsfaktorkodetabelle für die Quantisierung von Verstärkungsfaktoren der adaptiven Kodetabelle und eine weitere eindimensionale Verstärkungsfaktorkodetabelle für die Quantisierung von Verstärkungsfaktoren der Anregungskodetabelle umfassen.
  • E = {xw'(n) - &beta;jSad(n) - &gamma;jSci(n)}² (15)
  • für
  • &beta;j = G1j · XRMS/ARMS - &gamma;j · < Sad, Sci> /< Sad, Sad> (16)
  • &gamma;j =G2j · XRMS/CRMS (17)
  • ARMS = (< Sad, Sad> /N)1/2 (18)
  • CRMS = {(< Sci, Sci> - < Sad, Sci> ²/< Sad, Sad> )/N})1/2 (19)
  • wobei XRMS ein quantisierter Mittelwert RMS eines gewichteten Sprachsignals für einen Rahmen (von beispielsweise 20 ms) ist, und (G1j, G2,j) ein Verstärkungsfaktorkodevektor mit einem Index j ist.
  • Obwohl XRMS ein quantisierter Mittelwert RMS eines gewichteten Sprachsignals für nur einen Rahmen ist, kann ein Wert, der durch Interpolation (beispielsweise logarithmische Interpolation) in jeden Unterrahmen unter Verwendung eines quantisierten Mittelwertes RMS eines gewichteten Sprachsignals eines vorhergehenden Rahmens erhalten wird, stattdessen verwendet werden.
  • Das Sprachkodierungsverfahren ist somit dadurch gekennzeichnet, daß normierte Verstärkungsfaktoren für ein Kodetabelle verwendet werden. Da eine Streuung der Verstärkungsfaktoren durch die Normierung verringert wird, hat die Verstärkungsfaktorkodetabelle mit den normierten Verstärkungsfaktoren als Kodevektoren eine überlegene Quantisierungscharakteristik, und demzufolge kann eine codierte Sprache mit hoher Qualität erzielt werden.
  • Die vorstehenden und weitere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden aus der nachstehen den Beschreibung und den beigefügten Ansprüchen in Verbindung mit den beigefügten Zeichnungen ersichtlich, in welchen gleiche Teile oder Elemente mit gleichen Bezugszeichen bezeichnet sind.
  • Fig. 1 ist ein Blockschaltbild, das einen Kodierer darstellt, welcher zur Umsetzung eines erfindungsgemäßen Sprachkodierungsverfahrens in die Praxis verwendet wird;
  • Fig. 2 ist ein Blockschaltbild, das einen Dekodierer darstellt, welcher zur Umsetzung des erfindungsgemäßen Sprachkodierungsverfahrens in die Praxis verwendet wird;
  • Fig. 3 ist ein Blockschaltbild, das einen weiteren Kodierer darstellt, welcher zur Umsetzung eines Beispiels des Sprachkodierungsverfahrens in die Praxis verwendet wird;
  • Fig. 4 ist ein Blockschaltbild, das einen weiteren Dekodierer darstellt, welcher zur Umsetzung eines Beispiels eines Sprachkodierungsverfahrens in die Praxis verwendet wird;
  • Fig. 5 ist ein Blockschaltbild, das eine Verstärkungsfaktorberechnungsschaltung des in Fig. 4 gezeigten Dekoders darstellt.
  • In Fig. 1 ist zunächst ein Kodierer dargestellt, welcher zur Umsetzung des erfindungsgemäßen Sprachkodierungsverfahrens in die Praxis verwendet wird. Der Kodierer empfängt ein Eingangssprachsignal über einen Eingangsanschluß 100. Das Eingangssprachsignal wird einem Linearprädiktor 110, einer Adaptivkodetabellensuchschaltung 130 und einer Verstärkungsfaktorkodetabellensuchschaltung 220 zugeführt. Der Linearprädiktor 110 führt eine lineare prädiktive Analyse des in Rahmen mit einer festen Länge (von beispielsweise 20 ms) unterteilten Rahmens durch und gibt einen Spektralparameter an ein gewichtendes Synthesefilter 150, die Adaptivkodetabellensuchschaltung 130 und die Verstärkungsfaktorkodetabellensuchschaltung 220 aus. Dann wird die nachstehende Verarbeitung für jeden von Unterrahmen (beispielsweise 5 ms) durchgeführt, in welche jeder Rahmen weiter unterteilt wird.
  • Insbesondere werden adaptive Kodevektoren ad mit Verzögerung d von der adaptiven Kodetabelle 120 an die Adaptivkodetabellensuchschaltung 130 ausgegeben, bei welcher eine Suche nach einem adaptiven Kodevektor durchgeführt wird. Aus der Adaptivkodetabellensuchschaltung 130 wird eine selektierte Verzögerung d an einen Multiplexer 230 ausgegeben; der adaptive Kodevektor ad mit der selektierten Verzögerung an die Verstärkungsfaktorkodetabellensuchschaltung 220 ausgegeben; ein gewichtetes Synthesesignal Sad des adaptiven Kodevektors ad mit der selektierten Verzögerung an eine Kreuzkorrelationsschaltung 160 ausgegeben; eine Autokorrelation < Sad, Sad> des gewichteten Synthesesignals Sad des adaptiven Kodevektor ad an eine Orthogonalisierungsautokorrelationsschaltung 190 ausgegeben; und ein Signal xa, das dadurch erhalten wird indem von dem Eingangssprachsignal ein Signal subtrahiert wird, das durch Multiplikation des gewichteten Synthesesignals Sad des adaptiven Kodevektors ad mit der selektierten Verzögerung d mit einem optimalen Verstärkungsfaktor &beta; erhalten wird, an eine weitere Kreuzkorrelationsschaltung 180 ausgegeben.
  • Eine Anregungskodetabelle 140 gibt Anregungskodevektoren ci mit den Indizes i an das gewichtende Synthesefilter 150 und an eine (Keuzkorrelation)²/(Autokorrelation)-Maximalwert- Suchschaltung 200 aus. Das gewichtende Synthesefilter 150 synthetisiert gewichtend die Anregungskodevektoren ci und gibt diese an die Kreuzkorrelationsschaltung 160, eine Autokorrelationsschaltung 170 und die Kreuzkorrelationsschaltung 180 aus. Die Kreuzkorrelationsschaltung 160 berechnet eine Kreuzkorrelationen zwischen den gewichteten Synthesesignalen Sad des adaptiven Kodevektors ad und gewichteten Synthesesignalen Sc; des Anregungskodevektors ci und gibt diese an die Orthogonalisierungsautokorrelationsschaltung 190 aus. Die Autokorrelationsschaltung 170 berechnet Autokorrelationen des gewichteten Synthesesignals Sci der Anregungskodevektoren ci und gibt dieses an die Orthogonalisierungsautokorrelationsschaltung 190 aus. Die Kreuzkorrelationsschaltung 180 berechnet Kreuzkorrelationen zwischen dem Signal xa und dem gewich teten Synthesesignal Sci des Anregungskodevektors ci und gibt diese an die (Keuzkorrelation)²/(Autokorrelation)-Maximalwert-Suchschaltung 200 aus.
  • Die Orthogonalisierungsautokorrelationsschaltung 190 berechnet Autokorrelationen gewichteter Synthesesignale Sci' der Anregungskodevektoren ci, welche in Bezug auf das gewichtete Synthesesignal Sad des adaptiven Kodevektors ad orthogonalisiert werden, und gibt diese an die (Keuzkorrelation)²/Autokorrelation)-Maximalwert-Suchschaltung 200 aus. Die (Keuzkorrelation)²/(Autokorelation)-Maximalwert-Suchschaltung 200 sucht nach einem Index i, für welchen die (Kreuzkorrelation zwischen dem Signal xa und dem gewichteten Synthesesignal Sci' des Anregungskodevektors ci, orthogonalisiert in Bezug auf das gewichtete Synthesesignal Sad des adaptiven Kodevektors ad)²/(Autokorrelation des gewichteten Synthesesignals Sci' des Anregungskodevektors ci, orthogonalisiert in Bezug auf das gewichtete Synthesesignal Sad des adaptiven Kodevektors ad) einen Maximalwert präsentiert, und der so herausgesuchte Index i wird an den Multiplexer 230 ausgegeben, während der Anregungskodevektor ci an die Verstärkungsfaktorkodetabellensuchschaltung 220 ausgegeben wird. Die Verstärkungsfaktorkodevektoren mit Indizes j werden von einer Verstärkungsfaktorkodetabellensuchschaltung 220 ausgegeben. Die Verstärkungsfaktorkodetabellensuchschaltung 220 sucht nach einem Verstärkungsfaktorkodevektor und gibt den Index j des selektierten Verstärkungsfaktorkodevektors an den Multiplexer 230 aus.
  • In Fig. 2 ist nun ein Dekodierer dargestellt, welcher zur Umsetzung des erfindungsgemäßen Sprachkodierverfahrens in die Praxis verwendet wird. Der Dekoder enthält einen Demultiplexer 240, aus welchem eine Verzögerung d für eine adaptive Kodetabelle an eine adaptive Kodetabelle 250 ausgegeben wird; ein Spektralparameter an ein Synthesefilter 310 ausgegeben wird; ein Index i für eine Anregungskodetabelle an eine Anregungskodetabelle 260 ausgegeben wird; und ein Index j für eine Verstärkungsfaktorkodetabelle an eine Verstärkungsfaktor kodetabelle 270 ausgegeben wird. Ein adaptiver Kodevektor ad mit der Verzögerung d wird von der adaptive Kodetabelle 250 ausgegeben, ein Anregungskodevektor ci mit dem Index i wird von der Anregungskodetabelle 260 ausgegeben; und Verstärkungsfaktorkodevektoren (&beta;j, &gamma;j) werden von der Verstärkungsfaktorkodetabelle 270 ausgegeben. Der adaptive Kodevektor ad und der Verstärkungsfaktorkodevektor &beta;j werden von einem Multiplizierer 280 multipliziert, während der Anregungskodevektor ci und der Verstärkungsfaktorkodevektor &gamma;j von einem weiteren Multiplizierer 290 multipliziert werden, und die zwei Produkte von einem Addierer 300 addiert werden. Die so erhaltene Summe wird an die adaptive Kodetabelle 250 und das Synthesefilter 310 ausgegeben. Das Synthesefilter 310 synthetisiert ad · &beta;j + ci · &gamma;j und gibt es über einen Ausgangsanschluß 320 aus.
  • Die Verstärkungsfaktorkodetabelle kann nur eine zweidimensionale Kodetabelle sein, die aus Verstärkungsfaktoren für eine adaptive Kodetabelle und Verstärkungsfaktoren für eine Anregungskodetabelle besteht, oder kann aus zwei Kodetabellen mit einer eindimensionalen Verstärkungsfaktorkodetabelle bestehend aus Verstärkungsfaktoren für eine adaptive Kodetabelle und einer weiteren eindimensionalen Verstärkungsfaktorkodetabelle bestehend aus Verstärkungsfaktoren für eine Anregungskodetabelle bestehen.
  • Wenn < xa, Sci> der hierin vorstehend gegebenen Gleichung (8) durch die Kreuzkorrelationsschaltung 180 zu berechnen ist, kann dieses alternativ gemäß nachstehender Gleichung berechnet werden, um den Berechnungsaufwand zu reduzieren:
  • < xa, Sci> = p(k) ci(k) (20)
  • für
  • p(k) = xa(n) h(n - k) (21)
  • wobei h eine Impulsantwort des gewichtenden Synthesefilters ist.
  • Wenn < Sad, Sci> der Gleichung durch die Kreuzkorrelationsschaltung 160 zu berechnen ist, kann dieses alternativ gemäß nachstehender Gleichung berechnet werden, um den Berechnungsaufwand zu reduzieren:
  • < Sad, Sci> = q(k) ci (k) (22)
  • für
  • q(k) = Sad(n) h(n - k) (23)
  • Andererseits kann, wenn < Sci, Sci> von Gleichung (8) durch die Autokorrelationsschaltung 170 zu berechnen ist, diese angenähert anhand der nachstehenden Gleichung berechnet werden, um den Berechnungsaufwand zu reduzieren:
  • < Sci, Sci> = u(0) &nu;(0) + 2 u(m) &nu;(m) (24)
  • für
  • u(m) = h(n) h(n + m) (25)
  • &nu;(m) = c(n) c(n + m) (26)
  • Unterdessen kann zur Verbesserung des Verhaltens eine Kombination einer Verzögerung und einer Anregung, welche den Fehler zwischen einem gewichteten Eingangssignal und einem gewichteten Synthesesignal minimiert, gefunden werden, nachdem mehrere Kandidaten für jede Verzögerung aus der adaptiven Kodetabelle gefunden und dann Anregungskodevektoren der Anregungskodetabelle in Bezug auf die einzelnen Kandidaten orthogonalisiert werden. In diesem Falle kann, wenn < Sad, Sci> von Gleichung (8) durch die Kreuzkorrelationsschaltung 160 zu berechnen ist, dieses anderweitig mittels der nachstehenden Gleichung (27) berechnet werden, um dem Berechnungsaufwand zu verringern. In diesem Falle wird jedoch anstelle der Eingabe von Sad in die Kreuzkorrelationsschaltung 160, xa und ein optimaler Verstärkungsfaktor &beta; eines adaptiven Kodevektors von der Adaptivkodetabellensuchschaltung 130 eingegeben und < xa, Sci> von der Kreuzkorrelationsschaltung 180 in die Kreuzkorrelationsschaltung 160 eingegeben.
  • < Sad, Sci> = (< xw', Sci> - < xa, Sci> )/&beta; (27)
  • Die Berechnung von < Sad, Sci> gemäß der vorstehenden Gleichung (27) erübrigt die Notwendigkeit der Berechnung eines inneren Produktes, welche anderenfalls jedesmal dann durchgeführt wird, wenn sich die adaptive Kodetabelle ändert, und demzufolge kann die Gesamtanzahl von Berechnungen reduziert werden.
  • Ferner muß für eine weitere Verbesserung des Verhaltens eine Kombination einer Verzögerung der adaptiven Kodetabelle nicht eigens für jeden Unterrahmen ermittelt werden, sondern kann andererseits so ermittelt werden, daß mehrere Kandidaten für jeden Unterrahmen gefunden werden, und dann eine akkumulierte Fehlerpotenz für den Gesamtrahmen gefunden wird, worauf eine Kombination einer Verzögerung der adaptiven Kodetabelle und einer Anregung der Anregungskodetabelle, welche die akkumulierte Fehlerpotenz minimiert, gefunden wird.
  • In Fig. 3 ist nun ein weiterer Kodierer dargestellt, welcher dazu verwendet wird, ein Beispiel des Sprachkodierungsverfahrens in die Praxis umzusetzen. Der Kodierer empfängt ein Eingangssprachsignal über einen Eingangsanschluß 400. Das Eingangssprachsignal wird einem Gewichtungsfilter 405 und einem linearen prädiktiven Analysator 420 zugeführt. Der lineare prädiktive Analysator 420 führt eine lineare prädiktive Analyse durch und gibt einen Spektralparameter an das Gewichtungsfilter 405, an eine Einflußsignalsubtraktionsschaltung 415, ein gewichtendes Synthesefilter 540, an eine Adaptivkodetabellensuchschaltung 460, an eine Anregungskodetabellensuchschaltung 480 und an einen Multiplexer 560 aus.
  • Das Gewichtungsfilter 405 führt eine Wahrnehmungsgewichtung des Sprachsignals aus und gibt dieses an eine Unterrahmenunterteilungsschaltung 410 und an eine Autokorrelationsschaltung 430 aus. Die Unterrahmenunterteilungsschaltung 410 unterteilt das wahrnehmenungsgewichtete Sprachsignal aus dem Gewichtungsfilter 405 in Unterrahmen vorbestimmter Länge (beispielsweise 5 ms) und gibt das gewichtete Sprachsignal der Unterrahmen an die Einflußsignalsubtraktionsschaltung 415 aus, bei welcher ein Einflußsignal von einem vorhergehenden Unterrahmen von dem gewichteten Sprachsignal subtrahiert wird. Die Einflußsignalsubtraktionsschaltung 415 gibt somit das gewichtete Sprachsignal, von welchem das Einflußsignal subtrahiert worden ist, an die Adaptivkodetabellensuchschaltung 460 und an einen Subtrahierer 545 aus. Unterdessen werden adaptive Kodevektoren ad mit Verzögerungen d aus der adaptiven Kodetabelle 450 an die Adaptivkodetabellensuchschaltung 460 ausgegeben, von welcher die adaptive Kodetabelle 450 nach einem adaptiven Kodevektor durchsucht wird. Von der Adaptivkodetabellensuchschaltung 460 wird eine selektierte Verzögerung d an den Multiplexer 560 ausgegeben; der adaptive Kodevektor ad mit der selektierten Verzögerung d an einen Multiplizierer 532 ausgegeben, ein gewichtetes Synthesesignal Sad des adaptiven Kodevektors ad mit der selektierten Verzögerung d an eine Autokorrelationsschaltung 490 und an eine Kreuzkorrelationsschaltung 500 ausgegeben; und ein Signal xa, das erhalten wird, indem von dem gewichteten Sprachsignal ein Signal subtrahiert wird, das durch Multiplikation des gewichteten Synthesesignals Sad des adaptiven Kodevektors ad mit der selektierten Verzögerung d mit einem optimalen Verstärkungsfaktor &beta; erhalten wird, an die Anregungskodetabellensuchschaltung 480 ausgegeben.
  • Die Anregungskodetabellensuchschaltung 480 durchsucht die Anregungskodetabelle 470 und gibt einen Index eines selektierten Anregungskodevektors an den Multiplexer 560, den selektierten Anregungskodevektor an einen Multiplexer 524, und ein gewichtetes Synthesesignal des selektierten Anregungskodevektors an die Kreuzkorrelationsschaltung 500 und an eine Autokorrelationsschaltung 510 aus. In diesem Falle kann eine Suche nach der Orthogonalisierung des Anregungskodevektors in Bezug auf den adaptiven Kodevektor durchgeführt werden.
  • Die Autokorrelationsschaltung 430 berechnet eine Autokorrelation des gewichteten Sprachsignals der Rahmenlänge und gibt diese an einen Quantisierer 440 für den Mittelwert des Eingangssprachsignals aus. Der Quantisierer 440 für den Mittelwert RMS des Eingangssprachsignals berechnet einen Mittelwert RMS des gewichteten Sprachsignals der Rahmenlänge aus der Autokorrelation der gewichteten Sprachsignals und führt daran eine Quantisierung nach dem u-Gesetz durch, und gibt dann den Index an den Multiplexer 560 und den quantisierten Mittelwert RMS des Eingangssprachsignals an ein Verstärkungsfaktorberechnungsschaltung 520 aus. Die Autokorrelationsschaltung 490 berechnet eine Autokorrelation des gewichteten Synthesesignals des adaptiven Kodevektors und gibt diese an die Verstärkungsfaktorberechnungsschaltung 520 aus. Die Kreuzkorrelationsschaltung 500 berechnet eine Kreuzkorrelation zwischen dem gewichteten Synthesesignal des adaptiven Kodevektors und dem gewichteten Synthesesignal des Anregungskodevektors und gibt diese an die Verstärkungsfaktorberechnungsschaltung 520 aus. Die Autokorrelationsschaltung 510 berechnet eine Autokorrelation des gewichteten Synthesesignal des Anregungskodevektors und gibt diese an die Verstärkungsfaktorberechnungsschaltung 520 aus.
  • Die Verstärkungsfaktorkodevektoren mit den Indizes j werden von einer Verstärkungsfaktorkodetabelle 530 an die Verstärkungsfaktorberechnungsschaltung 520 ausgegeben, bei welcher die Verstärkungsfaktoren berechnet werden. Somit wird ein Verstärkungsfaktor des adaptiven Kodevektors von der Verstärkungsfaktorberechnungsschaltung 520 an den Multiplizierer 522 ausgegeben, während ein weiterer Verstärkungsfaktor des Anregungskodevektors an den Multiplizierer 524 ausgegeben wird. Der Multiplizierer 522 multipliziert den adaptiven Kodevektor aus der Adaptivkodetabellensuchschaltung 460 mit dem Verstärkungsfaktor des adaptiven Kodevektors, während der Multiplizierer 524 den Anregungskodevektor aus der Anregungskodetabellensuchschaltung 480 mit dem Verstärkungsfaktor des Anregungskodevektors multipliziert, und die zwei Produkte werden von einem Addierer 526 addiert und die so erhaltene Summe an das gewichtende Synthesefilter 540 ausgegeben. Das gewichtende Synthesefilter 540 synthetisiert gewichtend das Summensignal aus dem Addierer 526 und gibt das Synthesesignal an den Subtrahierer 545 aus. Der Subtrahierer 545 subtrahiert das Ausgangssignal des gewichtenden Synthesefilter 540 von dem Sprachsignal mit der Unterrahmenlänge aus der Einflußsignalsubtraktionsschaltung 415 und gibt das Differenzsignal an eine Berechnungsschaltung 550 für einen quadrierten Fehler aus. Die Berechnungsschaltung 550 für einen quadrierten Fehler sucht einen Verstärkungsfaktorkodevektor, welcher den quadrierten Fehler minimiert und einen Index des Verstärkungsfaktorkodevektors an den Multiplexer 560 ausgibt.
  • Wenn ein Verstärkungsfaktor durch die Verstärkungsfaktorberechnungsschaltung 520 anstelle der Verwendung eines quantisierten Mittelwertes des Eingangssprachsignals selbst zu berechnen ist, kann ein anderer Wert verwendet werden, welcher durch Interpolation (beispielsweise eine logarithmische Interpolation) in jedem Unterrahmen unter Verwendung eines quantisierten Mittelwertes RMS jedes Eingangssprachsignals eines vorhergehenden Rahmens und eines weiteren quantisierten Mittelwertes RMS des Eingangssprachsignals eines aktuellen Rahmens erzielt wird.
  • In Fig. 4 ist nun ein weiterer Dekoder dargestellt, welcher dazu verwendet wird, ein Beispiel des Sprachkodierungsverfahrens in die Praxis umzusetzen. Der Dekoder enthält einen Demultiplexer 570, aus welchem ein Index eines Mittelwertes RMS des Eingangssprachsignals an einen Dekoder 580 für den Mittelwert RMS des Eingangssprachsignals ausgegeben wird; eine Verzögerung eines adaptiven Kodevektors an eine adaptive Kodetabelle 590 ausgegeben wird; ein Index zu einem Anregungskodevektor an eine Anregungskodetabelle 600 ausgegeben wird; ein Index zu einem Verstärkungsfaktorkodevektor an eine Verstärkungsfaktorkodetabelle 610 ausgegeben wird, und ein Spektralparameter an ein gewichtendes Synthesefilter 520, ein weiteres gewichtendes Synthesefilter 630 und ein Synthesefilter 710 ausgegeben wird.
  • Der Mittelwert RMS des Eingangssprachsignals wird aus dem Dekoder 580 für den Mittelwert des Eingangssprachsignals 580 an eine Verstärkungsfaktorberechnungsschaltung 670 ausgegeben. Der adaptive Kodevektor wird von der adaptiven Kodetabelle 590 an das Synthesefilter 620 und an einen Multiplizierer 680 ausgegeben. Der Anregungskodevektor wird von der Anregungskodetabelle 600 an das gewichtende Synthesefilter 630 und an einen Multiplizierer 690 ausgegeben. Der Verstärkungsfaktorkodevektor wird von der Verstärkungsfaktorkodetabelle 610 an die Verstärkungsfaktorberechnungsschaltung 670 ausgegeben. Das gewichtete Synthesesignal des adaptiven Kodevektors wird von dem gewichtenden Synthesefilter 620 an die Autokorrelationsschaltung 640 und an eine Kreuzkorrelationsschaltung 650 ausgegeben, während das gewichtete Signal des Anregungskodevektors von dem gewichtenden Synthesefilter 630 an eine weitere Autokorrelationsschaltung 680 und an die Kreuzkorrelationsschaltung 650 ausgegeben wird.
  • Die Autokorrelationsschaltung 640 berechnet eine Autokorrelation des gewichteten Synthesesignals des adaptiven Kodevektors und gibt diese an die Verstärkungsfaktorberechnungsschaltung 670 aus. Die Kreuzkorrelationsschaltung 650 berechnet eine Kreuzkorrelation zwischen dem gewichteten Synthesesignal des adaptiven Kodevektors und dem gewichteten Synthesesignal des Anregungskodevektors und gibt diese an die Verstärkungsfaktorberechnungsschaltung 670 aus. Die Autokorrelationsschaltung 660 berechnet eine Autokorrelation des gewichteten Synthesesignals des Anregungskodevektors und gibt diese an die Verstärkungsfaktorberechnungsschaltung 670 aus.
  • Die Verstärkungsfaktorberechnungsschaltung 670 berechnet einen Verstärkungsfaktor des adaptiven Kodevektors und einen Verstärkungsfaktor des Anregungskodevektors unter Verwendung der hierin vorstehend angegebenen Gleichungen (16) bis (19) und gibt den Verstärkungsfaktor des adaptiven Kodevektors an den Multiplizierer 680 und den Verstärkungsfaktor des Anregungskodevektors an den Multiplizierer 690 aus. Der Multiplizierer 680 multipliziert den adaptiven Kodevektor aus der adaptiven Kodetabelle 590 mit dem Verstärkungsfaktor des adaptiven Kodevektors, während der Multiplizierer 690 den Anregungskodevektor aus der Anregungskodetabelle 600 mit dem Verstärkungsfaktor des Anregungskodevektors multipliziert, und die zwei Produkte von einem Addierer 700 addiert und an das Synthesefilter 710 ausgegeben werden. Das Synthesefilter 710 synthetisiert ein solches Signal und gibt es über einen Ausgangsanschluß 720 aus.
  • Wenn ein Verstärkungsfaktor von der Verstärkungsfaktorberechnungsschaltung 670 anstelle der Verwendung eines quantisierten Mittelwertes RMS des Eingangssprachsignals selbst zu berechnen ist, kann ein anderer Wert verwendet werden, welcher durch Interpolation (beispielsweise logarithmische Interpolation) in jedem Unterrahmen unter Verwendung eines quantisierten Mittelwertes RMS des Eingangssprachsignals eines vorhergehenden Rahmens und eines weiteren quantisierten Mittelwertes RMS des Eingangssprachsignals eines aktuellen Rahmens erzielt wird.
  • In Fig. 5 ist nun die Verstärkungsfaktorberechnungsschaltung 670 detaillierter dargestellt. Die Verstärkungsfaktorberechnungsschaltung 670 empfängt einen quantisierten Mittelwert RMS des Eingangssprachsignals (hierin nachstehend als XRMS bezeichnet) über einen Eingangsanschluß 730. Der quantisierte Mittelwert XRMS des Eingangssprachsignals wird einem Paar von Dividierern 850 und 870 zugeführt. Eine Autokorrelation < Sa, Sa> eines gewichteten Synthesesignals eines adaptiven Kodevektors wird über einen anderen Eingangsanschluß 740 empfangen und einem Multiplizierer 790 und einem weiteren Dividierer 800 zugeführt. Eine Kreuzkorrelation < Sa, Sc> zwischen dem gewichteten Synthesesignal des adaptiven Kodevektors und einem gewichteten Synthesesignal eines Anregungskodevektors wird über einen weiteren Eingangsanschluß 750 emp fangen und dem Dividierer 800 und einem Multiplizierer 810 zugeführt. Eine Autokorrelation < Sc, Sc> des gewichteten Synthesesignals des Anregungskodevektors wird über noch einen weiteren Eingangsanschluß 760 empfangen und an einen Subtrahierer 820 übertragen. Eine erste Komponente G&sub1; ein Verstärkungsfaktorkodevektors wird über noch einen weiteren Eingangsanschluß 770 empfangen und an einen Multiplizierer 890 übertragen. Eine zweite Komponente G&sub2; ein Verstärkungsfaktorkodevektors wird über noch einen weiteren Eingangsanschluß 780 empfangen und an einen Multiplizierer 880 übertragen.
  • Der Multiplizierer 790 multipliziert die Autokorrelation < Sa, Sa> mit 1/N und gibt das Produkt an eine Wurzelberechnungsschaltung 840 aus, welche somit eine Wurzel von < Sa, Sa> /N berechnet und diese an den Dividierer ausgibt. Hier ist N ein Länge eines Unterrahmens (beispielsweise 40 Abtastwerte). Der Dividierer 850 dividiert den quantisierten Mittelwert XRMS des Eingangssprachsignals durch (< Sa, Sa> /N)1/2 und gibt den Quotienten an den Multiplizierer 890 aus, bei welchem XRMS/ (< Sa, Sa> /N)1/2 mit der ersten Komponente G&sub1; des Verstärkungsfaktorkodevektors multipliziert wird. Das Produkt bei dem Multiplizierer 890 wird an den Subtrahierer 900 ausgegeben.
  • Der Dividierer 800 dividiert die Kreuzkorrelation < Sa, Sc> durch die Autokorrelation < Sa, Sa> und gibt den Quotienten an die Multiplizierer 810 und 890 aus. Der Multiplizierer 810 multipliziert den Quotienten < Sa, Sc> /< Sa, Sa> mit der Kreuzkorrelation < Sa, Sc> und gibt das Produkt an den Subtrahierer 820 aus. Der Subtrahierer 820 subtrahiert < Sa, Sc> ²/< Sa, Sa> von der Autokorrelation < Sc, Sc> und gibt die Differenz an den Multiplizierer 830 aus, bei welchem die Differenz mit 1/N multipliziert wird. Das Produkt wird von dem Multiplizierer 830 an die Wurzelberechnungsschaltung 860 ausgegeben. Die Wurzelberechnungsschaltung 860 berechnet eine Wurzel des Ausgangssignals des Multiplizierers 830 und gibt dieses an den Dividierer 870 aus. Der Dividierer 870 dividiert den quantisierten Mittelwert XRMS des Eingangssprach signals aus dem Eingangsanschluß 730 durch
  • {(< Sc, Sc> - < Sa, Sc> ²/< Sa, Sa> )/N}1/2
  • und gibt den Quotienten an den Multiplizierer 800 aus. Der Multiplizierer 880 multipliziert den Quotienten mit der zweiten Komponente G&sub2; des Verstärkungsfaktorkodevektors und gibt das Produkt an den Multiplizierer 910 und an einen Ausgangsanschluß 930 aus. Der Multiplizierer 910 multipliziert das Ausgangssignal des Multiplizierers 880, d. h.,
  • G&sub2; · XRMS/{< Sc, Sc> - < Sa, Sa> ²/< Sa, Sa> )/N}1/2
  • mit < Sa, Sc> /Sa, Sa> und gibt das Produkt an den Subtrahierer 900 aus. Der Subtrahierer 900 subtrahiert das Produkt aus dem Multiplizierer 910 von G&sub1; · XRMS /(< Sa, Sa> /N)1/2 und gibt die Differenz an einen weiteren Ausgangsanschluß 920 aus.
  • Die vorstehend beschriebene Verstärkungsfaktorkodetabelle muß nicht notwendigerweise eine zweidimensionale Kodetabelle sein. Die Kodetabelle kann beispielsweise aus zwei Kodetabellen mit einer eindimensionalen Verstärkungsfaktorkodetabelle bestehend aus Verstärkungsfaktoren für eine adaptive Kodetabelle und einer weiteren eindimensionalen Verstärkungsfaktorkodetabelle bestehend aus Verstärkungsfaktoren für eine Anregungskodetabelle bestehen.
  • Die Anregungskodetabelle kann von einem Zufallszahlensignal gebildet werden, wie es in der vorstehend erwähnten Literatur 3 beschrieben ist, oder kann andererseits durch ein Vorauslernen unter Verwendung von Trainingsdaten gebildet werden.
  • Nachdem nun die Erfindung vollständig beschrieben wurde, wird es für einen Fachmann auf diesem Gebiet offensichtlich sein, daß viele Änderungen und Modifikationen daran vorgenommen werden können, ohne von dem Schutzumfang der Erfindung abzuweichen, wie er in den beigefügten Ansprüchen beschrieben ist.

Claims (1)

1. Sprachkodierungseinrichtung zum Kodieren eines Eingangssprachsignals in eine kodierte Sprachfolge, mit:
einem linearen prädiktiven Analysator (110) zum Empfangen eines in Rahmen unterteilten Eingangssprachsignals mit einem festen Intervall und Finden eines Spektralparameters des Eingangssprachsignals;
einer adaptiven Kodetabelle (120), die adaptive Kodevektoren repräsentiert;
einer Adaptivkodetabellensuchschaltung (130) zum Durchsuchen der adaptiven Kodetabelle auf der Basis des Spektralparameters und des Eingangssprachsignals, um einen adaptiven Kodevektor (ad) zu selektieren und um den adaptiven Kodevektor, eine Verzögerung (d), die dem selektierten adaptiven Kodevektor entspricht, ein zweites Synthesesignal (Sad), das aus dem selektierten adaptiven Kodevektor und dem Spektralparameter synthetisiert wird, und ein Differenzsignal (xa) zwischen dem Eingangssprachsignal und dem zweiten Synthesesignal (Sad) auszugeben;
einer Anregungskodetabelle (140), die Anregungskodevektoren (Ci) repräsentiert;
einer Einrichtung (150) zum Erzeugen erster Synthesesignale (Sci) durch Verwendung jedes von den Anregungskodevektoren (Ci) und des Spektralparameters;
einer ersten Kreuzkorrelationsschaltung (160) zum Berechnen einer ersten Kreuzkorrelation zwischen dem zweiten Synthesesignal (Sad) und jedem von den ersten Synthesesignalen (Sci);
einer Autokorrelationsschaltung (170) zum Berechnen der Autokorrelation von jedem von den ersten Synthesesignalen (Sci);
einer zweiten Kreuzkorrelationsschaltung (180) zum Berechnen einer zweiten Kreuzkorrelation zwischen jedem von den ersten Synthesesignalen (Sci) und dem Differenzsignal (xa);
einer Orthogonalisierungsautokorrelationsschaltung (190) zum Berechnen einer orthogonalisierten Autokorrelation von jedem von den ersten Synthesesignalen (Sci)unter Verwendung der ersten Kreuzkorrelation und der Autokorrelation;
einer Suchschaltung (200) zum Berechnen eines normierten Wertes für jeden von den Anregungskodevektoren (Ci) und zum Ermitteln eines Anregungskodevektorindexes (i) der einem Maximum von den normierten Werten entspricht, wobei die normierten Werte durch Verwendung der orthogonalisierten Korrelation und der zweiten Kreuzkorrelation erhalten werden;
einer Verstärkungsfaktorkodetabelle (210), die Verstärkungsfaktorkodevektoren repräsentiert;
einer Verstärkungsfaktorkodesuchschaltung (220) zum Durchsuchen der Verstärkungsfaktorkodetabelle auf der Basis des Eingangssprachsignals, des Spektralparameters, des selektierten adaptiven Kodevektors (ad) und des Anregungskodevektorindexes (i) und zum Ausgeben eines Verstärkungsfaktorkodevektorindexes (j); und
einem Multiplexer (220) zum Multiplexieren der selektierten Verzögerung (d), des Spektralparameters, des Verstärkungsfaktorkodevektorindexes (j) und des Anregungskodevektorindexes (i) und zum Ausgeben einer sich ergebenden Folge als die kodierte Sprachfolge.
DE69229364T 1991-02-26 1992-02-25 Einrichtung und Verfahren zur Sprachkodierung Expired - Fee Related DE69229364T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3103263A JP2776050B2 (ja) 1991-02-26 1991-02-26 音声符号化方式

Publications (2)

Publication Number Publication Date
DE69229364D1 DE69229364D1 (de) 1999-07-15
DE69229364T2 true DE69229364T2 (de) 1999-11-04

Family

ID=14349551

Family Applications (2)

Application Number Title Priority Date Filing Date
DE69232892T Expired - Fee Related DE69232892T2 (de) 1991-02-26 1992-02-25 Sprachkodierungssystem
DE69229364T Expired - Fee Related DE69229364T2 (de) 1991-02-26 1992-02-25 Einrichtung und Verfahren zur Sprachkodierung

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE69232892T Expired - Fee Related DE69232892T2 (de) 1991-02-26 1992-02-25 Sprachkodierungssystem

Country Status (5)

Country Link
US (1) US5485581A (de)
EP (2) EP0501420B1 (de)
JP (1) JP2776050B2 (de)
CA (1) CA2061803C (de)
DE (2) DE69232892T2 (de)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06186998A (ja) * 1992-12-15 1994-07-08 Nec Corp 音声符号化装置のコードブック探索方式
JP3099852B2 (ja) * 1993-01-07 2000-10-16 日本電信電話株式会社 励振信号の利得量子化方法
JP2591430B2 (ja) * 1993-06-30 1997-03-19 日本電気株式会社 ベクトル量子化装置
JP3024468B2 (ja) * 1993-12-10 2000-03-21 日本電気株式会社 音声復号装置
EP0657874B1 (de) * 1993-12-10 2001-03-14 Nec Corporation Stimmkodierer und Verfahren zum Suchen von Kodebüchern
JP3179291B2 (ja) * 1994-08-11 2001-06-25 日本電気株式会社 音声符号化装置
JP3328080B2 (ja) * 1994-11-22 2002-09-24 沖電気工業株式会社 コード励振線形予測復号器
JP3303580B2 (ja) * 1995-02-23 2002-07-22 日本電気株式会社 音声符号化装置
JPH08272395A (ja) * 1995-03-31 1996-10-18 Nec Corp 音声符号化装置
JPH08292797A (ja) * 1995-04-20 1996-11-05 Nec Corp 音声符号化装置
SE504397C2 (sv) * 1995-05-03 1997-01-27 Ericsson Telefon Ab L M Metod för förstärkningskvantisering vid linjärprediktiv talkodning med kodboksexcitering
JP3308764B2 (ja) * 1995-05-31 2002-07-29 日本電気株式会社 音声符号化装置
US6111681A (en) * 1996-02-23 2000-08-29 Ciena Corporation WDM optical communication systems with wavelength-stabilized optical selectors
US5673129A (en) * 1996-02-23 1997-09-30 Ciena Corporation WDM optical communication systems with wavelength stabilized optical selectors
US5943152A (en) * 1996-02-23 1999-08-24 Ciena Corporation Laser wavelength control device
JP3157116B2 (ja) * 1996-03-29 2001-04-16 三菱電機株式会社 音声符号化伝送システム
CA2213909C (en) * 1996-08-26 2002-01-22 Nec Corporation High quality speech coder at low bit rates
JP3593839B2 (ja) 1997-03-28 2004-11-24 ソニー株式会社 ベクトルサーチ方法
CA2233896C (en) * 1997-04-09 2002-11-19 Kazunori Ozawa Signal coding system
DE19729494C2 (de) * 1997-07-10 1999-11-04 Grundig Ag Verfahren und Anordnung zur Codierung und/oder Decodierung von Sprachsignalen, insbesondere für digitale Diktiergeräte
CN1494055A (zh) * 1997-12-24 2004-05-05 ������������ʽ���� 声音编码方法和声音译码方法以及声音编码装置和声音译码装置
JP4800285B2 (ja) * 1997-12-24 2011-10-26 三菱電機株式会社 音声復号化方法及び音声復号化装置
KR100510399B1 (ko) 1998-02-17 2005-08-30 모토로라 인코포레이티드 고정 코드북내의 최적 벡터의 고속 결정 방법 및 장치
JP3553356B2 (ja) * 1998-02-23 2004-08-11 パイオニア株式会社 線形予測パラメータのコードブック設計方法及び線形予測パラメータ符号化装置並びにコードブック設計プログラムが記録された記録媒体
TW439368B (en) * 1998-05-14 2001-06-07 Koninkl Philips Electronics Nv Transmission system using an improved signal encoder and decoder
US6260010B1 (en) 1998-08-24 2001-07-10 Conexant Systems, Inc. Speech encoder using gain normalization that combines open and closed loop gains
SE519563C2 (sv) * 1998-09-16 2003-03-11 Ericsson Telefon Ab L M Förfarande och kodare för linjär prediktiv analys-genom- synteskodning
SE9901001D0 (en) * 1999-03-19 1999-03-19 Ericsson Telefon Ab L M Method, devices and system for generating background noise in a telecommunications system
US20030028386A1 (en) * 2001-04-02 2003-02-06 Zinser Richard L. Compressed domain universal transcoder
US6789059B2 (en) * 2001-06-06 2004-09-07 Qualcomm Incorporated Reducing memory requirements of a codebook vector search
US7337110B2 (en) * 2002-08-26 2008-02-26 Motorola, Inc. Structured VSELP codebook for low complexity search
JP2009539132A (ja) * 2006-05-30 2009-11-12 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ オーディオ信号の線形予測符号化
US8112271B2 (en) 2006-08-08 2012-02-07 Panasonic Corporation Audio encoding device and audio encoding method

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1229681A (en) * 1984-03-06 1987-11-24 Kazunori Ozawa Method and apparatus for speech-band signal coding
US4910781A (en) * 1987-06-26 1990-03-20 At&T Bell Laboratories Code excited linear predictive vocoder using virtual searching
US4817157A (en) * 1988-01-07 1989-03-28 Motorola, Inc. Digital speech coder having improved vector excitation source
IL94119A (en) * 1989-06-23 1996-06-18 Motorola Inc Digital voice recorder
US4980916A (en) * 1989-10-26 1990-12-25 General Electric Company Method for improving speech quality in code excited linear predictive speech coding
EP0443548B1 (de) * 1990-02-22 2003-07-23 Nec Corporation Sprachcodierer
JPH0451199A (ja) * 1990-06-18 1992-02-19 Fujitsu Ltd 音声符号化・復号化方式

Also Published As

Publication number Publication date
EP0898267A3 (de) 1999-03-03
EP0501420A3 (en) 1993-05-12
DE69232892D1 (de) 2003-02-13
EP0898267A2 (de) 1999-02-24
EP0501420B1 (de) 1999-06-09
DE69232892T2 (de) 2003-05-15
JP2776050B2 (ja) 1998-07-16
JPH04270400A (ja) 1992-09-25
CA2061803C (en) 1996-10-29
DE69229364D1 (de) 1999-07-15
EP0501420A2 (de) 1992-09-02
CA2061803A1 (en) 1992-08-27
US5485581A (en) 1996-01-16
EP0898267B1 (de) 2003-01-08

Similar Documents

Publication Publication Date Title
DE69229364T2 (de) Einrichtung und Verfahren zur Sprachkodierung
DE69420431T2 (de) Sprachkodierungssystem
DE68907629T2 (de) Vektorquantisierung für eine Anordnung zur harmonischen Sprachcodierung.
DE69023402T2 (de) Verfahren zur Sprachkodierung und -dekodierung.
DE69518452T2 (de) Verfahren für die Transformationskodierung akustischer Signale
DE69309557T2 (de) Verfahren und Vorrichtung zur Sprachkodierung
DE69214969T2 (de) Verfahren und Vorrichtung zur Erzeugung von Hilfsinformationen zur Ausführung einer Suche in einem Kodebuch mit geringer Dichte
DE69529356T2 (de) Wellenforminterpolation mittels Zerlegung in Rauschen und periodische Signalanteile
DE69227401T2 (de) Verfahren zum Kodieren und Dekodieren von Sprachsignalen
EP0443548B1 (de) Sprachcodierer
DE69322313T2 (de) C.E.L.P. - Vocoder
DE69916321T2 (de) Kodierung eines verbesserungsmerkmals zur leistungsverbesserung in der kodierung von kommunikationssignalen
DE69634179T2 (de) Verfahren und Vorrichtung zur Sprachkodierung und -dekodierung
DE69609099T2 (de) Verfahren zur Modifikation von LPC-Koeffizienten von akustischen Signalen
DE69328410T2 (de) Auf interpolation basierende, zeitveränderliche spektralanalyse für sprachkodierung
DE69223335T2 (de) Sprachkodiersystem
DE69029232T2 (de) System und Methode zur Sprachkodierung
DE69718234T2 (de) Sprachkodierer
DE69900786T2 (de) Sprachkodierung
DE60126149T2 (de) Verfahren, einrichtung und programm zum codieren und decodieren eines akustischen parameters und verfahren, einrichtung und programm zum codieren und decodieren von klängen
DE69426860T2 (de) Sprachcodierer und Verfahren zum Suchen von Codebüchern
DE69610915T2 (de) Verfahren zur quantisierung des verstärkungsfaktors für die linear-prädiktive sprachkodierung mittels analyse-durch-synthese
DE69523498T2 (de) Verminderung der Rechenkomplexität bei Ausfall von Datenrahmen oder Verlust von Datenpaketen
DE69411407T2 (de) Vorrichtung zum Kodieren von Sprachspektrumparametern mit der kleinstmöglichen Bitzahl
DE69228858T2 (de) Methode zur Sprachkodierung und Sprachkodierer

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee