DE19647298C2 - Kodiersystem - Google Patents

Kodiersystem

Info

Publication number
DE19647298C2
DE19647298C2 DE19647298A DE19647298A DE19647298C2 DE 19647298 C2 DE19647298 C2 DE 19647298C2 DE 19647298 A DE19647298 A DE 19647298A DE 19647298 A DE19647298 A DE 19647298A DE 19647298 C2 DE19647298 C2 DE 19647298C2
Authority
DE
Germany
Prior art keywords
excitation
speech
group
samples
pulse
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
DE19647298A
Other languages
English (en)
Other versions
DE19647298A1 (de
Inventor
Mei Yong
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.)
National Semiconductor Corp
Original Assignee
National Semiconductor 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 National Semiconductor Corp filed Critical National Semiconductor Corp
Publication of DE19647298A1 publication Critical patent/DE19647298A1/de
Application granted granted Critical
Publication of DE19647298C2 publication Critical patent/DE19647298C2/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/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS 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

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

Die vorliegende Erfindung betrifft ein Verfahren zum Kodieren und Dekodieren von Sprache (oder anderen akustischen Signalen) gemäß dem Oberbegriff des Anspruchs 1 sowie Vorrichtungen zur Durchführung des Verfahrens. Kodierte Sprachabtastwerte können dabei zwischengspeichert oder sofort übertragen und danach wieder dekodiert werden.
Ein digitales Sprachkodiersystem ist Teil eines Sprachkommunikationssystems, welches typischerweise einen Analog-Digital-Umsetzer, einen digitalen Sprachkodierer, einen Datenspeicher oder einen Übertra­ gungsmechanismus, einen digitalen Sprachdekoder und einen Digital-Ana­ log-Umsetzer umfaßt. Der Analog-Digital-Umsetzer tastet eine analoge Eingangssprachwellenform ab und setzt die analogen Abtastwerte in einen entsprechenden Datenstrom digitaler Eingangssprachabtastwerte um. Der Kodierer wendet eine Kodierung auf den digitalen Eingangsdatenstrom an, um ihn in einen kleineren Datenstrom zu komprimieren, die der digitalen Eingangssprachabtastwerte approximiert. Der komprimierte digitale Sprachdatenstrom wird in dem Speichermechanismus gespeichert oder unmit­ telbar über eine Übertragungsstrecke zu einer entfernten Stelle übertra­ gen.
Der Dekoder, der sich am Ort des Speichermechanismus oder an der entfernten Stelle befindet, dekomprimiert den komprimierten digitalen Datenstrom, um einen Datenstrom digitaler Ausgangssprachabtastwerte zu erzeugen. Der Digital-Analog-Umsetzer setzt dann den dekomprimierten digitalen Ausgangsdatenstrom in eine entsprechende analoge Ausgangs­ sprachwellenform um, die die analoge Eingangssprachwellenform approxi­ miert. Der Kodierer und der Dekodierer bilden ein Sprachkodiersystem, das üblicherweise als ein Kodierer/Dekoder oder Kodek bezeichnet wird.
Sprache wird als ein Ergebnis akustischer Erregung des mensch­ lichen Stimmtrakts erzeugt. In dem bekannten Modell der linearen prädik­ tiven Kodierung ("LPC") wird die Stimmtraktfunktion durch ein zeitvaria­ bles rekursives lineares Filter angenähert, das üblicherweise als For­ mantensynthesefilter bezeichnet wird, gewonnen aus der direkten Analyse von Sprachwellenformabtastwerten unter Anwendung der LPC-Technik. Die Stimmritzenerregung des Stimmtraktes erfolgt, wenn Luft über die Stimm­ bänder streicht. Die Stimmritzenerregungssignale sind zwar nicht so einfach wie die Stimmtraktfunktion repräsentierbar, können jedoch gene­ rell durch eine gewichtete Summe von zwei Arten von Erregungssignalen repräsentiert werden: Ein quasi-periodisches Erregungssignal und ein rauschähnliches Erregungssignal. Das quasi-periodische Erregungssignal wird typischerweise durch eine Verkettung vieler kurzer Wellenformseg­ mente angenähert, wobei innerhalb jedes Segments die Wellenform periodisch mit einer konstanten Periode ist, die als mittlere Tonhöhenperi­ ode bezeichnet wird. Das rauschähnliches Signal wird durch eine Serie von nicht-periodischen Impulse oder durch weißes Rauschen angenähert.
Die Tonhöhenperiode und die Charakteristiken des Formantensyn­ thesefilters ändern sich mit der Zeit kontinuierlich. Um die Datenrate herabzusetzen, die erforderlich ist, um die komprimierte Sprachinforma­ ion zu übertragen, werden die Tonhöhendaten und die Formantenfiltercha­ rakteristiken periodisch aufgefrischt. Dies erfolgt typischerweise in Intervallen von 10 bis 30 Millisekunden.
Der Telecommunication Standardizsation Sector der Internatio­ nal Telecommunication Union ("ITU") ist im Begriff, ein digitales Dop­ pelratensprachkodiersystem für Multimedia-Kommunikationen zu standardi­ sieren. "Dual Rate Speech Coder for Multimedia Communications Transmit­ ting at 5.3 & 6.3 kbits/s", Entwurf G.723, Telecommunication Standardi­ zation Sector von ITU, 7. Juli 1995, 37 Seiten (nachstehend als "Spezi­ fikation G.723 vom Juli 1995" bezeichnet) präsentiert eine Beschreibung dieses standardisierten ITU-Sprachkodiersystems (nachstehend das "Ko­ diersystem nach G.723"). Bei Anwendung linearer prädiktiver Kodierung in Kombination mit einer Analyse-durch-Synthese-Technik erzeugt der digita­ le Sprachkodierer in dem Kodiersystem nach G.723 einen komprimierten di­ gitalen Sprachdatenstrom mit einer Datenrate von 5,3 oder 6,3 Kilobit/­ Sekunde ("Kbps"), ausgehend von einem nicht-komprimierten digitalen Ein­ gangssprachdatenstrom mit einer Datenrate von 128 Kbps. Die komprimierte 5,3-Kbps oder 6,3-Kbps-Datenrate wird von dem Anwender selektiv einge­ stellt.
Nach Dekompression des komprimierten Datenstromes ist das di­ gitale Sprachsignal, das mittels des Kodiersystems nach G.723 erzeugt ist, von ausgezeichneter Kommunikationsqualität. Ein hoher Rechenaufwand ist jedoch erforderlich, um das Kodiersystem nach G.723 zu realisieren. Insbesondere benötigt das Kodiersystem nach G.723 typischerweise etwa zwanzig Millionen Befehle pro Sekunde der Verarbeitungsleistung, gelie­ fert von einem zugeordneten digitalen Signalprozessor. Ein großer Anteil der Kodiersystemprozeßfähigkeit nach G.723 wird verwendet, um Energie­ fehlerminimierung während der Erzeugung von Codebuch-Erregungsinformation zu realisieren.
Aus der DE 43 15 315 A1 ist ein Verfahren bekannt, bei dem jeweils zwei im Sinne eines Fehlerkriteriums beste Anregungsvektoren eines adaptiven Codebuches mit sämtlichen Anregungsvektoren eines festen Codebuches verknüpft werden. Die Ähnlichkeit eines Ausgangswertes zum ursprünglichen Sprachabtastwert wird hier anhand eines vorgegebenen Fehlerkriteriums bestimmt. Auch bei den aus US 5 307 441 und GB 2 173 679 A bekannten Verfahren werden Impulspositionen und -amplituden iterativ so ausgewählt, daß der Fehler zwischen den Eingangsabtastwerten und regenerierten Ausgangswerten minimiert wird.
Bei Software, die auf einem Allgemeinzweckrechner, wie einem Arbeitsplatzrechner, läuft, ist es schwierig, die Datenverarbeitungsfähigkeit zu erreichen, die für das Kodiersystem nach G.723 erforderlich ist. Ein digitales Sprachkodiersystem, das eine Kommunikationsqualität erreicht, die mit jener des Kodiersystems nach G.723 vergleichbar ist, jedoch eine erheblich verringerte Rechenleistung benötigt, ist wünschenswert.
Aufgabe der vorliegenden Erfindung ist es, ein Verfahren gemäß dem Oberbegriff des Anspruchs 1 zu schaffen, welches eine verringerte Rechenleistung benötigt.
Diese Aufgabe wird durch die kennzeichnenden Merkmale des Patentanspruchs 1 gelöst; die Patentansprüche 5 bzw. 7 definieren Vorrichtungen zum Ausführen des Verfahrens.
Weitere bevorzugte Ausgestaltungen der Erfindung sind den Unteransprüchen zu entnehmen.
Bevor ein Ausführungsbeispiel des Gegenstandes der Erfindung im Detail erläutert wird, soll zunächst eine kurze Zusammenfassung der Erfindung wiedergegeben werden.
Bei dem Sprachkodiersystem wird eine schnelle Erregungskodierung verwendet, um die Anzahl von Rechenschritten herabzusetzen und damit die Rechenleistung, die benötigt wird, um digitale Abtastwerte eines Eingangssprachsignals zum Erzeugen eines komprimierten digitalen Sprachdatenstromes zu erzeugen, der nachfolgend dekomprimiert wird, um digitale Ausgangssprachabtastwerte zu synthetisieren. Im einzelnen benötigt das Sprachkodiersystem der Erfindung erheblich weniger Rechenleistung als das Sprachkodiersystem nach G.723, um identische Sprachkompres­ sions-/Dekompressionsaufgaben zu erfüllen. Von Bedeutung ist, daß die Kommunikationsqualität, die mit dem hier vorgestellten Kodiersystem erreicht wird, mit jenem vergleichbar ist, das mit dem Kodiersystem gemäß G.723 erzielbar ist. Infolgedessen ist das vorliegende Sprachkodiersystem besonders für Anwendungen beispielsweise als Arbeitsplatzrechner geeignet.
Das Kodiersystem gemäß der Erfindung enthält einen digitalen Sprachkodierer und einen digitalen Sprachdekoder. Beim Komprimieren der digitalen Eingangssprachabtastwerte erzeugt der Kodierer den abgehenden digitalen Sprachdatenstrom entsprechend dem Format, das in der Spezifikation G.723 vom Juli 1995 vorgeschrieben ist. Das Kodiersystem kann deshalb mit dem Kodiersystem nach G.723 zusammenarbeiten. Kurz gesagt, ist das Kodiersystem gemäß der Erfindung eine attraktive Alternative zu dem Kodiersystem gemäß G.723.
Das Kodieren mit schneller Erregung gemäß der Erfindung wird durch eine Erregungssucheinheit in dem Kodierer geschaffen. Die Suchein­ heit, die gelegentlich als eine feste Codebuch-Sucheinheit bezeichnet wird, bestimmt die Erregungsinformation, die eine nicht-periodische Gruppe von Erregungsimpulsen definiert. Die optimale Position jedes Im­ pulses in der nicht-periodischen Impulsgruppe wird aus einem entspre­ chenden Satz von Impulspositionen gewählt, die in dem Kodierer gespei­ chert sind. Jeder Impuls ist mit positivem oder negativem Vorzeichen wählbar.
Die Sucheinheit bestimmt die optimalen Positionen der Impulse durch Maximieren der Korrelation zwischen (a) einer Zielgruppe von kon­ sekutiven gefilterten Versionen der digitalen Eingangssprachabtastwerte, die dem Kodierer für Kompression zugeführt werden und (b) einer entspre­ chenden Gruppe von konsekutiven synthetisierten digitalen Sprachabtast­ werten. Die synthetisierte Abtastwertgruppe hängt von den Impulspositio­ nen ab, die in dem entsprechenden Satz von Impulspositionen, abgespei­ chert in dem Kodierer, verfügbar sind, sowie von den Vorzeichen der Im­ pulse an jenen Positionen. Die Ausführung einer Korrelationsmaximierung speziell in der unten beschriebenen Weise verlangt viel weniger Berech­ nungen als die Energiefehlerminimiertechnik, die für das Erzielen ähnli­ cher Resultate in dem Kodiersystem nach G.723 angewandt wird.
Die Korrelationsmaximierung gemäß der vorliegenden Erfindung arbeitet mit einer Maximierkorrelation C wie folgt:
wobei n eine Abtastwertzahl sowohl in der Zielabtastwertgruppe als auch in der entsprechenden synthetisierten Abtastwertgruppe ist, tB(n) die Zielabtastwertgruppe ist, q(n) die entsprechende synthetisierte Abtastwertgruppe ist, und nG die Gesamtzahl von Abtastwerten in jeder Gruppe von tB(n) und q(n) ist.
Die Maximierungskorrelation C, wie in Gleichung (A) wiederge­ geben, wird vorzugsweise ausgeführt, indem man die Sucheinheit mit einem inversen Filter, einer Impulspositiontabelle und einem Selektor ausstat­ tet. Das inverse Filter filtert die Zielabtastwertgruppe invers, um eine entsprechende invers gefilterte Gruppe von konsekutiven digitalen Sprachabtastwerten zu erzeugen. Die Impulspositionstabelle speichert die Sätze von Impulspositionen. Der Selektor wählt die Position jedes Impulses entsprechend der Impulsposition aus, die den Absolutwert der invers gefilterten Abtastwertgruppe maximiert.
Im einzelnen ist die Maximierkorrelation C gemäß Gleichung (A) äquivalent der Maximimierkorrelation C gemäß nachstehender Beziehung B:
wobei j eine laufende ganze Zahl, M die Gesamtzahl von Impulsen in der nicht-periodischen Erregungabtastwertgruppe, mj die Position des j-sten Impulses in dem entsprechenden Satz von Impulspositionen und |f(mj)| der Absolutwert eines Abtastwertes in der invers gefilterten Abtastwertgrup­ pe sind.
Die Maximierkorrelation C entsprechend Gleichung (B) umfaßt das wiederholte Ausführen von drei Operationen, bis alle Impulspositio­ nen bestimmt sind. Zuerst wird eine Suche für den Wert der Abtastwert­ zahl n ausgeführt, welche einen maximalen Absolutwert von f(mj) ergibt. Zweitens wird jede Impulsposition mj auf den so lokalisierten Wert der Abtastwertzahl n gesetzt. Schließlich wird die Impulsposition mj dagegen gesperrt, erneut ausgewählt zu werden. Die vorstehenden Schritte erfor­ dern relativ wenig Rechenaufwand. Auf diese Weise ergibt die Erfindung eine erhebliche Verbesserung gegenüber dem Stand der Technik.
Fig. 1 ist ein Blockdiagramm eines Sprachkompressions-/Dekom­ pressionssystems mit einem Sprachkodierer gemäß der Erfindung.
Fig. 2 ist ein Blockdiagramm eines digitalen Sprachdekoders, verwendet in dem Kodierer des Sprachkompressions-/Dekompressionssystems der Fig. 1.
Fig. 3 ist ein Blockdiagramm eines digitalen Sprachkodierers, konfiguriert gemäß der Erfindung für die Verwendung in dem Kodierer, der in dem Sprachkompressions-/Dekompressionssystem der Fig. 1 enthalten ist.
Fig. 4, 5 und 6 sind jeweils Blockdiagramme einer Sprachanaly­ se- und Vorverarbeitungseinheit, eines Referenzunterrahmengenerators und einer Erregungskodiereinheit, die in dem Kodierer nach Fig. 3 verwendet werden.
Fig. 7, 8 bzw. 9 sind Blockdiagramme einer adaptiven Codebuch­ sucheinheit, einer festen Codebuchsucheinheit bzw. eines Erregungsgene­ rators, verwendet in der Erregungskodiereinheit der Fig. 6.
In den Zeichnungen und in der Beschreibung der bevorzugten Ausführungsformen werden gleiche Bezugszeichen für gleiche oder äquiva­ lente Gegenstände verwendet.
Der vorliegende Sprachkodierer, gebildet mit einem digitalen Sprachkodierer und einem digitalen Sprachdekoder, komprimiert ein Sprachsignal unter Verwendung eines linearen prädiktiven Kodiermodells zum Etablieren von numerischen Werten für Parameter, die ein Formanten­ synthesefilter charakterisieren, das sich den Filtercharakteristiken des menschlichen Vokaltraktes annähert. Eine Codebuchsuchmethode, basierend auf Analyse durch Syntheseerregung, wird verwendet, um Stimmritzenerre­ gungssignale für das Formantensynthesefilter zu erzeugen. Auf der Ko­ dierseite bestimmt der Kodierer kodierte Repräsentationen der Stimmrit­ zenerregungssignale und der Formantensynthesefilterparameter. Diese ko­ dierten Repräsentationen werden gespeichert oder sofort zu dem Dekoder übertragen. Auf der Dekodierseite verwendet der Dekoder die kodierten Repräsentationen der Stimmritzenerregungssignale und der Formantensyn­ thesefilterparameter, um dekodierte Sprachwellenformabtastwerte zu er­ zeugen.
Fig. 1 zeigt ein Sprachkompressions-/Dekompressionssystem, das für die Übertragung von Sprache repräsentierenden Daten (oder anderen Audiosignalen) der digitalen Sprachkodiertechniken gemäß der Erfindung geeignet ist. Das Kompressions-/Dekompressionssystem der Fig. 1 besteht aus einem Analog-Digital-Umsetzer 10, einem digitalen Sprachkodierer 12, einem Block 14, der entweder eine digitale Speichereinheit oder einen digitalen Kommunikationskanal repräsentiert, einem digitalen Sprachdeko­ der 16 und einem Digital-Analog-Umsetzer 16. Die Kommunikation von Sprach- oder anderer Audioinformation über das Kompressions-/Dekompres­ sionssystem der Fig. 1 beginnt mit einem Audio-Elektro-Wandler (nicht dargestellt), wie einem Mikrophon, das Eingangssprachschall in analoge Eingangsspannungswellenform x(t) umsetzt, wobei "t" die Zeit repräsen­ tiert.
Der Analog-Digital-Umsetzer 10 setzt das analoge Eingangs­ sprachspannungssignal x(t) in digitale Sprachspannungsabtastwerte x(n) um, wobei "n" die Nummer des Abtastwertes repräsentiert. Der Analog-Di­ gital-Umsetzer 10 erzeugt digitale Sprachabtastwerte x(n) durch gleich­ förmige Abtastung von analogem Sprachsignal x(t) mit einer Rate von 8000 Abtastwerten pro Sekunde und nachfolgendem Quantisieren jedes Abtastwer­ tes in einen ganzzahligen Pegel, der von -215 bis 215 - 1 reicht. Jeder Qantisierpegel wird durch eine 16-bit-Einheit definiert. Die Serien von 16-bit-Zahlen, die als unkomprimierte Eingangssprachwellenform- Abtastwerte bezeichnet werden, bilden demgemäß die digitalen Sprachab­ tastwerte x(n). Da 8000 Eingangsabtastwerte in jeder Sekunde mit 16 bit in jedem Abtastwert erzeugt werden, beträgt die Datentransferrate für nicht-komprimierte Eingangssprachwellenform-Abtastwerte x(n) 128 Kbps.
Der Kodierer 12 komprimiert digital die Eingangssprachwellen­ form-Abtastwerte x(n) gemäß den Lehren der vorliegenden Erfindung, um einen komprimierten Digitaldatenstrom xc zu erzeugen, der analoge Ein­ gangssprachwellenform x(t) mit einer viel niedrigeren Datentransferrate als unkomprimierte Sprachwellenform-Abtastwerte x(n) repräsentiert. Der komprimierte Sprachdatenstrom xc enthält zwei primäre Typen von Informa­ tion: (a) quantisierte Linienspektralpaardaten ("LSP"), welche das For­ mantensynthesefilter charakterisieren, und (b) Daten, die verwendet werden, um das Formantensynthesefilter zu erregen. Der komprimierte Sprach­ datenstrom xc wird in einer Weise erzeugt, die der Spezifikation G.723 vom Juli 1995 entspricht. Die Datentransferrate für den komprimierten Datenstrom xc wird selektiv durch den Benutzer auf 5,3 Kbps oder 6,3 Kbps gesetzt.
Der Sprachdekoder 12 arbeitet auf einer Rahmenzeitlagebasis. Jeweils 240 aufeinanderfolgende unkomprimierte Eingangswellenform-Ab­ tastwerte x(n) entsprechend 30 Millisekunden Sprache (oder anderem Schall) bilden einen Sprachrahmen. Wie weiter unten diskutiert, wird je­ der 240-Abtastwert-Sprachrahmen in vier 60-Abtastwert-Unterrahmen un­ terteilt. Die LSP-Information, die das Formantensynthesefilter charakte­ risiert, wird alle 240-Abtastwert-Rahmen aufgefrischt, während die In­ formation, die für die Definition von Signalen verwendet wird, die das Formantensynthesefilter erregt, alle 60-Abtastwert-Unterrahmen aufge­ frischt wird.
Der komprimierte Sprachdatenstrom xc wird entweder für nach­ folgende Dekompression gespeichert oder wird auf einem digitialen Kommu­ nikationskanal zu einer anderen Stelle für nachfolgende Dekompression übertragen. Der Block 14 in Fig. 1 repräsentiert eine Speichereinheit, die den komprimierten Datenstrom xc wie auch den digitalen Kanal für die Übertragung des Datenstroms xc repräsentiert. Die Speichereinheit/der Digitalkanal 14 liefern einen komprimierten Sprachdigitaldatenstrom yc, der, wenn es keine Speicher- oder Übertragungsfehler gibt, identisch mit dem komprimierten Datenstrom xc ist. Der komprimierte Sprachdatenstrom yc entspricht demgemäß ebenfalls der Spezifikation G.723 vom Juli 1995. Die Datentransferrate für den komprimierten Datenstrom yc ist dieselbe (5,3 oder 6,3 Kbps) wie für den komprimierten Datenstrom xc.
Der Dekoder 16 dekomprimiert den komprimierten Sprachdaten­ strom yc gemäß einer entsprechenden Dekodierprozedur, um einen dekompri­ mierten Datenstrom y(n) zu erzeugen, der aus digitalen Ausgangssprach­ wellenform-Abtastwerten besteht. Diese Abtastwerte x(n) werden in dem­ selben Format wie die digitalen Eingangssprachabtastwerte x(n) zur Ver­ fügung gestellt. Das heißt, der Ausgangssprachdatenstrom y(n) besteht aus 16-bit-Abtastwerten, die mit 8000 Abtastwerten pro Sekunde bereitgestellt werden, was in einer ausgehenden Datentransferrate von 128 Kbps resultiert. Weil etwas Information unvermeidlich in dem Kompressions-/- Dekompressionsprozeß verlorengeht, unterscheiden sich die Ausgangs­ sprachwellenform-Abtastwerte y(n) etwas von den Eingangssprachwellen­ form-Abtastwerten x(n).
Der Digital-Analog-Umsetzer 18 setzt die digitalen Ausgangsab­ tastwerte x(n) der Sprachwellenform in ein analoges Ausgangssignal y(t) der Sprachspannung um. Schließlich setzt ein elektroakustischer Wandler (nicht dargestellt), wie ein Lautsprecher, das analoge Ausgangssprachsi­ gnal y(t) in den Ausgangsschall um.
Der Sprachkodierer gemäß der Erfindung besteht aus dem Kodie­ rer 12 und dem Dekoder 16. Einige Komponenten des Kodierers 12 und des Dekoders 16 arbeiten vorzugsweise in der Weise, wie sie in der Spezifi­ kation G.723 vom Juli 1995 spezifiziert ist. Soweit hier nicht im ein­ zelnen darauf eingegangen wird, wird der Leser zwecks näherer Informa­ tion auf diese Spezifikation verwiesen.
Um zu verstehen, wie die Techniken der Erfindung auf den Ko­ dierer 12 angewandt werden, ist es hilfreich, zunächst den Dekoder 16 in größeren Einzelheiten zu betrachten. In einer typischen Ausführungsform ist der Dekoder 16 in derselben Weise konfiguriert und arbeitet in der­ selben Weise wie der digitale Sprachdekoder in der G.723-Kodiereinrich­ tung. Alternativ kann der Dekoder 16 eine vereinfachte Version des G.723-Digital-Sprachdekoders sein. In beiden Fällen ist die vorliegende Kodiereinheit kompatibel mit der Kodiereinheit des Kodierers nach G.723.
Fig. 2 zeigt die grundsätzliche interne Anordnung des digitalen Sprachdekoders 16, wenn er in derselben Weise konfiguriert wird und arbeitet wie der digitale Sprachdekoder der Spezifikation G.723. Der Dekoder 16 in Fig. 2 besteht aus einem Bitverteiler 20, einem Formantenfiltergenerator 22, einem Erregungsgenerator 24, einem Formantensynthesefilter 26, einem Nachprozessor 28 und einem Ausgangspuffer 30.
Der komprimierte digitale Sprachdatenstrom yc wird dem Bitver­ teiler 20 zugeführt. Der komprimierte Sprachdatenstrom yc enthält LSP und Erregungsinformation, welche komprimierte Sprachrahmen repräsentieren. Immer dann, wenn der Bitverteiler 20 einen Block von Bits entspre­ chend einem komprimierten 240-Abtastwert-Sprachrahmen empfängt, verteilt der Verteiler 20 den Block zum Erzeugen eines LSP-Code PD, eines Satzes ACD von adaptiven Codebuch-Erregungsparametern und eines Satzes FCD von festliegenden Codebuch-Erregungsparametern. Der LSP-Code PD, der Satz von adaptiven Erregungsparametern ACD und der Satz von festliegenden Er­ regungsparametern FCD werden verwendet, um unkomprimierte Sprachrahmen mit 240 Abtastwerten pro Rahmen zu synthetisieren.
Der LSP-Code PD ist 24 bit breit. Für jeden Sprachrahmen mit 240 Abtastwerten setzt der Formantenfiltergenerator 22 den LSP-Code PD in vier quantisierte Vorhersagekoeffizientenvektoren DI um, worin i ei­ ne ganze, von 0 bis 3 laufende Zahl ist. Ein quantisierter Vorhersageko­ effizientenvektor DI wird für jeden 60-Abtastwert-Unterrahmen i des laufenden Rahmens erzeugt. Der erste bis vierte 60-Abtastwert-Unterrah­ men ist durch Werte von 0, 1, 2 bzw. 3 für i indiziert.
Jeder Vorhersagekoeffizientenvektor DI besteht aus zehn quan­ tisierten Vorhersagekoeffizienten {aij}, wobei j eine von 1 bis 10 laufende ganze Zahl ist. Für jeden Unterrahmen i etablieren die numeri­ schen Werte der zehn Vorhersagekoeffizienten {aij} die Filtercharakte­ ristiken des Formantensynthesefilters 26 in der unten beschriebenen Wei­ se.
Der Formantenfiltergenerator 22 ist mit einem LSP-Dekoder 32 und einem LSP-Interpolator 34 aufgebaut. Der LSP-Dekoder 32 dekodiert den LSP-Code PD, um einen quantisierten LSP-Vektor D zu erzeugen, be­ stehend aus zehn quantisierten LSP-Termen {j}, wobei j von 1 bis 10 läuft. Für jeden Unterrahmen i des laufenden Rahmens interpoliert der LSP-Interpolator 34 linear zwischen dem quantisierten LSP-Vektor D des laufenden Sprachrahmens und dem quantisierten LSP-Vektor D des vorher­ gehenden Sprachrahmens zum Erzeugen eines interpolierten LSP-Vektors Di, bestehend aus zehn quantisierten LSP-Termen {ij}, wobei j wie­ derum von 1 bis 10 läuft. Demgemäß werden vier interpolierte LSP-Vekto­ ren Di in jedem Rahme erzeugt, wobei i von 0 bis 3 läuft. Zusätzlich setzt der LSP-Interpolator 34 die vier interpolierten LSP-Vektoren Di in jeweils vier quantisierte Vorhersagekoeffizientenvektoren Di um, welche weich zeitvariable Charakteristiken für das Formantensynthesefil­ ter 26 etablieren.
Die Erregungsparametersätze ACD und FCD werden dem Erregungs­ generator 24 zugeführt, um vier zusammengesetzte 60-Abtastwert-Spracher­ regungsunterrahmen eF(n) in jedem 240-Abtastwert-Sprachrahmen zu erzeu­ gen, wobei n von 0 (dem ersten Abtastwert) bis 59 (dem letzten Abtast­ wert) in jedem zusammengesetzten Erregungsunterrahmen eF(n) variiert. Der adaptive Erregungsparametersatz ACD besteht aus Tonhöheninformation, welche die periodischen Charakteristiken der vier Spracherregungsunter­ rahmen eF(n) in dem Rahmen definiert. Der feste Erregungsparametersatz FCD wird mit Impulslokalisieramplitude- und Vorzeicheninformation gebil­ det, welche Impulse definiert, die die nicht-periodischen Komponenten der vier Erregungsunterrahmen eF(n) charakterisieren.
Der Erregungsgenerator 24 besteht aus einem adaptiven Code­ buch-Dekoder 36, einem festen Codebuch-Dekoder 38, einem Addierer 40 und einem Tonhöhennachfilter 42. Unter Verwendung der adaptiven Erregungspa­ rameter ACD als eine Adresse für ein adaptives Erregungscodebuch deko­ diert der adaptive Codebuch-Dekoder 36 den Parametersatz ACD zum Erzeu­ gen von vier 60 Abtastwerte enthaltenden adaptiven Erregungsunterrahmen uD(n) in jedem Sprachrahmen, wobei n von 0 bis 59 in jedem adaptiven Er­ regungsunterrahmen uD(n) variiert. Das adaptive Erregungscodebuch ist adaptiv in dem Sinne, daß die Eingaben in dem Codebuch von Unterrahmen zu Unterrahmen variieren, abhängig von den Werten der Abtastwerte, die vorhergehende adaptive Erregungsunterrahmen uD(n) bilden. Unter Verwen­ dung des festliegenden Erregungsparameters FCD als Adresse zu einem fe­ sten Erregungscodebuch dekodiert der feste Codebuch-Dekoder 38 Parame­ tersatz FCD zum Erzeugen von vier 60 Abtastwerte enthaltenden festen Er­ regungsunterrahmen vD(n) in jedem Rahmen, wobei n sich in ähnlicher Wei­ se von 0 bis 59 in jedem festen Erregungsunterrahmen vD(n) ändert.
Die adaptiven Erregungsunterrahmen uD(n) liefern die schließlichen periodischen Charakteristiken für die zusammengesetzten Erregungsunterrahmen eF(n), während die festen Erregungsunterrahmen vD(n) die nicht-periodischen Impulscharakteristiken liefern. Durch Sum­ mieren jedes adaptiven Erregungsunterrahmens uD(n) und des entsprechenden festen Erregungsunterrahmens vD(n) auf einer Abtastwert-um-Abtast­ wert-Basis erzeugt der Addierer 40 einen zusammengesetzten 60 Abtastwer­ te umfassenden dekodierten Erregungssprachunterrahmen eD(n) gemäß
eD(n) = uD(n) + vD(n), n = 0, 1, . . . 59 (1)
Das Tonhöhennachfilter 42 erzeugt 60 Abtastwerte umfassende Erregungsunterrahmen eF(n), wobei n von 0 bis 59 in jedem Unterrahmen eF(n) läuft, durch Filtern dekodierter Erregungsunterrahmen eD(n) zwecks Verbesserung der Kommunikationsqualität der Ausgangssprachabtastwerte y(n). Die Höhe der Rechenleistung, die für die vorliegende Kodiereinheit benötigt wird, kann verringert werden, indem man das Tonhöhennachfilter 42 wegläßt. Dabei wird die Kompatibilität der Kodiereinheit mit der Ko­ diereinheit nach G.723 nicht beeinträchtigt.
Das Formantensynthesefilter 26 ist ein zeitvariables rekursi­ ves lineares Filter, dem der Vorhersagekoeffizientenvektor Di und die zusammengesetzten Erregungsunterrahmen eF(n) (oder eD(n) für jeden Un­ terrahmen i zugeführt werden. Die zehn quantisierten Vorhersagekoeffi­ zienten {ij} jedes Vorhersagekoeffizientenvektors Di, wobei j wie­ derum von 1 bis 10 in jedem Unterrahmen i läuft, werden bei der Charak­ terisierung des Formantensynthesefilters 26 so verwendet, daß der menschliche Stimmtrakt moduliert wird. Erregungsunterrahmen eF(n) (oder eD(n)) modulieren die Stimmritzenerregung, die erzeugt wird, wenn Luft durch die menschlischen Stimmbänder strömt.
Unter Verwendung der Vorhersagevektoren Di wird das Forman­ tensynthesefilter 26 für jeden Unterrahmen i durch die folgende Z-Trans­ formation i(z) für ein rekursives Filter zehnter Ordnung definiert:
Das Formantensynthesefilter 26 filtert einlaufende zusammenge­ setzte Spracherregungsunterrahmen eF(n) (oder eD(n)) entsprechend dem Synthesefilter, das durch Gleichung (2) repräsentiert wird zum Erzeugen von dekomprimierten 240 Abtastwerte umfassenden synthetisierten digitalen Sprachrahmen ys(n), wobei n sich von 0 bis 239 für jeden syntheti­ sierten Sprachrahmen ys(n) ändert. Vier aufeinanderfolgende Erregungsun­ terrahmen eF(n) werden verwendet, um jeden synthetisierten Sprachrahmen ys(n) zu erzeugen, wobei die zehn Vorhersagekoeffizienten {ij} alle 60 Abtastwert-Unterrahmen i aufgefrischt werden.
In Gleichungsform wird der synthetische Sprachrahmen ys(n) durch die Beziehung gegeben:
worin eG(n) eine Verkettung von vier aufeinanderfolgender Unterrahmen eF(n) (oder eD(n)) in jedem Sprachrahmen von 240 Abtastwerten ist. Auf diese Weise approximieren synthetisierte Sprachwellenform-Abtastwerte ys(n) die ursprünglichen unkomprimierten Eingangssprachwellenform-Ab­ tastwerte x(n).
Infolge der Kompression, die auf die Eingangssprachabtastwerte x(n) angewandt wird, unterscheiden sich die synthetisierten Ausgangs­ sprachabtastwerte ys(n) typischerweise von den Eingangsabtastwerten x(n). Die Differenz führt zu einer gewissen Perzeptionsstörung, wenn die synthetisierten Abtastwerte ys(n) in Ausgangssprachschall für Personen, die zuhören, umgesetzt werden. Die Perzeptionsstörung wird durch den Nachprozessor 28 verringert, der weitere synthetisierte 240 Abtastwerte umfassende digitale Sprachrahmen yP(n) in Reaktion auf synthetisierte Sprachrahmen ys(n) und die vier Vorhersagekoeffizientenvektoren Di für jeden Rahmen erzeugt, wobei n von 0 bis 239 für jeden nachverarbeiteten Sprachrahmen yP(n) läuft. Der Nachprozessor 28 besteht aus einem Forman­ tennachfilter 46 und einer Verstärkungsskaliereinheit 48.
Das Formantennachfilter 46 filtert dekomprimierte Sprachrahmen yS(n) zum Erzeugen von 240 Abtastwerte umfassenden gefilterten digitalen synthetisierten Sprachrahmen yF(n), wobei n von 0 bis 239 für jeden ge­ filterten Rahmen yF(n) läuft. Das Nachfilter 46 ist ein konventionelles lineares Filter, das auto-regressiv ist und einen laufenden Mittelwert aufweist, dessen Filtercharakteristiken von den zehn Koeffizienten {ij} jedes Vorhersagekoffizientenvektors Di abhängen, wobei j wie­ derum von 1 bis 10 für jeden Unterrahmen i läuft.
In Reaktion auf die gefilterten Sprachrahmen yS(n) skaliert die Verstärkungsskaliereinheit 48 den Verstärkungsfaktor der gefilterten Sprachrahmen yF(n), um dekomprimierte Sprachrahmen yP(n) zu erzeugen. Die Verstärkungsskaliereinheit 48 egalisiert die mittlere Energie jedes dekomprimierten Sprachrahmens yP(n) auf jene der gefilterten Sprachrah­ men ys(n).
Der Nachprozessor 28 kann weggelassen werden, um die Höhe der in der vorliegenden Kodiereinheit benötigten Rechenleistung zu verrin­ gern. Wie bei dem Weglassen des Tonhöhennachfilters 42 beeinträchtigt das Weglassen des Nachprozessors 28 nicht die Kompatibilität der Kodier­ einheit mit der nach Spezifikation G.723.
Der Ausgangspuffer 30 speichert jeden dekomprimierten Aus­ gangsprachrahmen yP(n) (oder ys(n)) für nachfolgende Übertragung zum Di­ gital-Analog-Umsetzer 18 als dekomprimierten Ausgangssprachdatenstrom y(n). Dies beendet die Dekodieroperation.
Die Dekoderkomponenten 32, 34, 36 und 38, welche entsprechende Komponenten in dem digitalen Sprachkodierer 12 duplizieren, arbeiten vorzugsweise in der Weise, wie sie in den Paragraphen 3.2-3.5 der Spe­ zifikation G.723 vom Juli 1995 beschrieben ist. Weitere Details der be­ vorzugten Implementierung der Dekoderkomponenten 42, 26, 46 und 48 sind in den Paragraphen 3.6-3.9 der Spezifikation G.723 wiedergegeben, wor­ auf der Leser verwiesen wird.
Unter Berücksichtigung des Vorstehenden kann die Wirkungsweise des digitalen Sprachkodierers 12 ohne weiteres verstanden werden. Der Kodierer 12 verwendet lineare Vorhersagekodierung (wiederum "LPC") und ein Analyse-durch-Synthese-Verfahren zum Erzeugen des komprimierten di­ gitalen Sprachdatenstroms xc, der bei Fehlen von Speicher- oder Übertra­ gungsfehlern identisch mit dem komprimierten digitalen Sprachdatenstrom yc ist, der dem Dekoder 16 zugeführt wird. Die LPC- und Analyse-durch- Synthese-Techniken, die in dem Kodierer 12 eingesetzt werden, umfassen grundsätzlich:
  • a) Analysieren digitaler Eingangssprachabtastwerte x(n) zum Erzeugen eines Satzes von quantisierten Vorhersagekoeffizienten, welche die numerischen Charakteristiken eines Formantensynthesefilters entspre­ chend dem Formantensynthesefilter 26 etablieren,
  • b) Etablieren von Werten für das Bestimmen der Erregungskompo­ nenten des komprimierten Datenstroms xc entsprechend der Information, die in Erregungscodebüchern abgespeichert ist, welche Erregungscodebü­ cher duplizieren, die im Dekoder 16 enthalten sind,
  • c) Vergleichen von Parametern, welche Eingangssprachabtastwer­ te x(n) mit entsprechenden angenäherten Parametern repräsentieren, er­ zeugt durch Anwenden der Erregungskomponenten von komprimiertem Daten­ strom xc auf das Formantensynthesefilter im Kodierer 12, und
  • d) Wählen von Erregungsparameterwerten, die die Differenz in einem perzeptionell gewichteten Sinn zwischen den Parametern, die die aktuellen Eingangssprachabtastwerte x(n) repräsentieren, und den Parame­ tern, welche synthetisierte Sprachabtastwerte repräsentieren, minimie­ ren. Da der Kodierer 12 ein Formantensynthesefilter erzeugt, das das Formantenfilter 26 im Dekoder 16 nachahmt, werden bestimmte Komponenten des Dekoders 16 im wesentlichen im Kodierer 12 dupliziert.
Eine Darstellung des digitalen Sprachkodierers 12 ist in Fig. 3 gezeigt. Der Kodierer 12 ist mit einem Eingangsrahmenpuffer 50, einer Sprachanalyse- und Vorverarbeitungseinheit 52, einem Referenzunterrah­ mengenerator 54, einer Erregungskodiereinheit 56 und einem Bitsammler 58 ausgebildet. Das Formantensynthesefilter im Kodierer 12 ist mit anderen Filtern im Kodierer 12 kombiniert und erscheint, anders als das Synthesefilter 26 im Dekoder 16, nicht explizit in irgendeinem der Blockdiagramme.
Der Eingangspuffer 50 speichert digitale Sprachabtastwerte x(n), die von dem Analog-Digital-Umsetzer 10 kommen. Wenn ein Rahmen von 240 Abtastwerten des Eingangssprachdatenstroms x(n) akkumuliert worden ist, liefert der Puffer 50 Eingangsabtastwerte x(n) in Form eines digi­ talen Eingangssprachrahmens xB(n) mit 240 Abtastwerten.
Die Sprachanalyse- und -vorverarbeitungseinheit 52 analysiert jeden einlaufenden Sprachrahmen xB(n) und führt bestimmte Vorarbeitungs­ schritte an dem Sprachrahmen xB(n) aus. Im einzelnen führt die Analyse- Vorverarbeitungseinheit 52 die folgenden Operationen bei Empfang des Eingangssprachrahmens xB(n) aus:
  • a) Entfernen jeglicher Gleichkomponenten von dem Sprachrahmen xB(n) zum Erzeugen eines gleichwertefreien Eingangssprachrahmens xF(n) mit 240 Abtastwerten,
  • b) Ausführen einer LPC-Analyse des gleichwertefreien Eingangs­ sprachrahmens xF(n) zum Extrahieren eines unquantisierten Vorhersageko­ effizientenvektors AE, der bei der Ableitung verschiedener Filterparame­ ter, die im Kodierer 12 verwendet werden, eingesetzt wird,
  • c) Umsetzen des unquantisierten Vorhersagevektors AE in einen unquantisierten LSP-Vektor PU,
  • d) Quantisieren des LSP-Vektors PU und nachfolgendes Umsetzen des quantisierten LSP-Vektors in einen LSP-Code PE, eine Zahl mit 24 bit,
  • e) Berechnen von Parameterwerten für ein perzeptionswichten­ des Formantenfilter, basierend auf dem Vorhersagevektor AE, der im Schritt b. extrahiert wurde,
  • f) Filtern der gleichwertefreien Eingangssprachrahmen xF(n) unter Verwendung des perzeptionswichtenden Formantenfilters zum Erzeugen eines perzeptionsgewichteten Sprachrahmens xP(n) mit 240 Abtastwerten,
  • g) Extrahieren der Tonhöhenperioden T1 und T2 offener Schlei­ fe, wobei Ti die abgeschätzte mittlere Tonhöhenperiode für den ersten halben Rahmen (die ersten 120 Abtastwerte) jedes Sprachrahmens ist und T2 die abgeschätzte mittlere Tonhöhenperiode für den zweiten Halbrahmen (die letzten 120 Abtastwerte) jedes Sprachrahmens ist,
  • h) Berechnen von Parameterwerten für ein Harmonischenrausch­ formungsfilter unter Verwendung der Tonhöhenperioden T1 und T2, die im Schritt g. extrahiert wurden,
  • i) Anlegen der gleichwertefreien Sprachrahmen xF(n) an eine Kaskade des perzeptionswichtenden Filters und des Harmonischenrausch­ formungsfilters zum Erzeugen eines perzeptionsgewichteten Sprachrahmens xW(n) mit 240 Abtastwerten,
  • j) Aufbauen eines kombinierten Filters, bestehend aus einer Kaskade des Formantensynthesefilters, des perzeptionswichtenden Filters und des Harmonischenrauschformungsfilters, und
  • k) Anlegen eines Impulssignals an die Filterkombination aus Formantensynthesefilter, Perzeptionswichtungsfilter und Harmonischen­ rauschformungsfilter und für jeden 60 Abtastwerte umfassenden Unterrah­ men des gleichwertefreien Sprachrahmens xF(n) Halten der ersten 60 Ab­ tastwerte zur Bildung eines Impulsreaktionsunterrahmens h(n).
Beim Ausführen der vorgenannten Operationen erzeugt die Ein­ heit 52 die folgenden Ausgangssignale, wie in Fig. 3 angegeben: (a) Ton­ höhenperiodensignale T1 und T2 der offenen Schleife, (b) LSP-Code PE, (c) perzeptionsgewichtete Sprachrahmen xW(n), (d) einen Satz SF von Pa­ rameterwerten, verwendet zum Charakterisieren der oben beschriebenen Filterkombination, und (e) Impulsreaktionsunterrahmen h(n). Die Tonhö­ henperioden T1 und T2, der LSP-Code PE und der gewichtete Sprachrahmen xW(n) werden einmal alle 240-Abtastwert-Sprachrahmen berechnet. Die Kom­ binationsfilterparameter SF und die Impulsreaktion h(n) werden einmal alle 60-Abtastwert-Unterrahmen berechnet. Bei Fehlen von Speicher- oder Übertragungsfehlern in der/dem Speichereinheit/Digitalkanal 14 ist der LSP-Code PD, der dem Dekoder 16 zugeführt wird, identisch mit dem LSP- Code PE. der vom Kodierer 12 erzeugt wird.
Der Referenzunterrahmengenerator 54 erzeugt 60-Abtastwerte Re­ ferenz- (oder Soll-) -unterrahmen tA(n) in Reaktion auf gewichtete Sprachrahmen xW(n), die kombinierten Filterparameterswerte SF und zusam­ mengesetzte 60-Abtastwert-Erregerunterrahmen eE(n). Beim Erzeugen von Referenzunterrahmen tA(n) führt der Unterrahmengenerator 54 die folgen­ den Operationen aus:
  • a) Unterteilen jedes gewichteten Sprachrahmens xW(n) in vier 60-Abtastwert-Unterrahmen,
  • b) Für jeden Unterrahmen Berechnen eines 60-Abtastwert-Null- Eingangs-Reaktion- ("ZIR") -unterrahmens r(n) des kombinierten oben de­ finierten Filters durch Einspeisen von Nullabtastwerten (d. h. Eingangs­ signalen des Wertes null) in das kombinierte Filter und Halten der er­ sten 60 gefilterten Ausgangsabtastwerte,
  • c) Für jeden Unterrahmen Erzeugen von Referenzunterrahmen tA(n) durch Substrahieren entsprechender ZIR-Unterrahmen r(n) von dem entsprechenden Viertel des gewichteten Sprachrahmens xW(n) auf einer Ba­ sis Abtastwert-um-Abtastwert, und
  • d) Für jeden Unterrahmen Anwenden des zusammengesetzten Erre­ gungsunterrahmens eE(n) an das kombinierte Filter und Speichern der Re­ sultate, um so das kombinierte Filter aufzufrischen.
Die Tonhöhenperioden T1 und T2, die Impulsreaktionsunterrahmen h(n) und die Referenzunterrahmen tA(n) werden der Erregungskodiereinheit 56 zugeführt. In Reaktion darauf erzeugt die Kodiereinheit 56 einen Satz ACE von adaptiven Codebucherregungsparametern für jeden Sprachrahmen von 240 Abtastwerten und einen Satz FCE von festen Codebucherregungsparame­ tern für jeden Rahmen. Bei Fehlen von Speicher- oder Übertragungsfehlern im Block 14 sind die Codebucherregungsparameter ACE bzw. FCD, die Erre­ gungsgenerator 24 im Dekoder 16 zugeführt werden, jeweils gleich wie die Codebucherregungsparameter ACE bzw. FCE, bereitgestellt von der Erre­ gungskodiereinheit 56 im Kodierer 12. Die Kodiereinheit 56 erzeugt auch zusammengesetzte Erregungsunterrahmen eE(n).
Der Bitsammler 58 kombiniert den LSP-Code PE und die Erre­ gungsparametersätze ACE und FCE zum Erzeugen des komprimierten digitalen Sprachdatenstroms xc. Als ein Ergebnis der vorstehenden Operationen wird der Datenstrom xc mit entweder 5,3 Kbps oder 6,3 Kbps erzeugt, je nach der gewünschten Anwendung.
Der komprimierte Datenstrom xc wird nun dem Speichereinheit-/- Kommunikationskanal 14 für die Übertragung zum Dekoder 16 als kompri­ mierter Bitstrom yc zugeführt. Da LSP-Code PE und Erregungsparametersät­ ze ACE und FCE zur Bildung des Datenstroms xc kombiniert werden, ist der Datenstrom yc identisch mit dem Datenstrom xc unter der Voraussetzung, daß keine Speicher- oder Übertragungsfehler im Block 14 auftreten.
Fig. 4 ist eine detailliertere Darstellung der Sprachanalyse- und -vorverarbeitungseinheit 52. Die Einheit 52 wird mit einem Hoch­ paßfilter 60, einem LPC-Analyseabschnitt 62, einem LSP-Quantisierer 64, einem LSP-Dekoder 66, einem quantisierten LSP-Interpolator 68, einem un­ quantisierten LSP-Interpolator 70, einem Perzeptionswichtungsfilter 72, einem Tonhöhenabschätzer 74, einem Harmonischen-Rauschformungsfilter 76 und einem Impulsreaktionsrechner 78 aufgebaut. Die Komponenten 60, 66, 68, 72, 74, 76 und 78 arbeiten vorzugsweise so, wie in den Paragraphen 2.3 und 2.5-2.12 der Spezifikation G.723 vom Juli 1995 beschrieben.
Das Hochpaßfilter 60 entfernt die Gleichkomponenten aus dem Eingangssprachrahmen xB(n) zum Erzeugen von gleichkomponentenfreien ge­ filterten Sprachrahmen xF(n), wobei n von 0 bis 239 für jeden Eingangs­ sprachrahmen xB(n) und jeden gefilterten Sprachrahmen xF(n) variiert. Das Filter 60 hat die folgende z-Transformation H(z):
Der LPC-Analyseabschnitt 62 führt eine lineare vorhersagende Kodieranalyse jedes gefilterten Sprachrahmens xF(n) aus, um den Vektor AE von zehn unquantisierten Vorhersagekoeffizienten {aj} für den letzten Unterrahmen des gefilterten Sprachrahmens xF(n) zu erzeugen, wo­ bei j von 1 bis 10 läuft.
Eine LPC-Analyse zehnter Ordnung wird angewandt, bei der ein Fenster von 180 Abtastwerten auf die letzten xF(n) Unterrahmen zentriert ist. Ein Hamming-Fenster wird auf die 180 Abtastwerte angewandt. Die zehn unquantisierten Koeffizienten {aj} des Vorhersagekoeffizienten­ vektors AE werden aus dem gefensterten Signal berechnet.
Der LPC-Analyseabschnitt 62 setzt dann die unquantisierte Vor­ hersagekoeffizienten {aj} in einen unquantisierte LSP-Vektor PU um, bestehend aus zehn Termen {Pj}, wobei j von 1 bis 10 läuft. Der un­ quantisierte LSP-Vektor PU wird dem LSP-Quantisierer 64 und dem unquan­ tisierten LSP-Interpolator 70 zugeführt.
Bei Empfang des LSP-Vektors PU quantisiert der LSP-Quantisie­ rer 64 die zehn unquantisierten Terme {Pj} und setzt die quantisier­ ten LSP-Daten in LSP-Code PE um. Die LSP-Quantisierung erfolgt einmal alle 240-Abtastwert-Sprachrahmen. Der LSP-Code PE wird dem LSP-Dekoder 66 und dem Bitsammler 58 zugeführt.
Der LSP-Dekoder 66 und der quantisierte LSP-Interpolator 68 arbeiten ebenso wie der LSP-Dekoder 32 bzw. LSP-Interpolator 34 im Dekoder 16. Im einzelnen setzen die Komponenten 66 und 68 den LSP-Code PE in vier quantisierte Vorhersagekoeffizientenvektor {Ei} um, einen für jeden Unterrahmen i des laufenden Rahmens. Die ganze Zahl i läuft wieder von 0 bis 3. Jeder Vorhersagekoeffizientenvektor Ei besteht aus zehn quantisierten Vorhersagekoeffizienten {ij}, wobei j von 1 bis 10 läuft.
Bei der Erzeugung jedes quantisierten Vorhersagevektors Ei dekodiert der LSP-Dekoder 66 zunächst den LSP-Code PE, um einen quanti­ sierten LSP-Vektor E bestehend aus zehn quantisierten LSP-Termen {j} für j von 1 bis 10 laufend zu erzeugen. Für jeden Un­ ternahmen i des laufenden Sprachrahmens interpoliert der quantisierte LSP-Interpolator 68 linear zwischen dem quantisierten LSP-Vektor E des laufenden Rahmens und dem quantisierten LSP-Vektor E des vorhergehenden Rahmens, um einen interpolierten LSP-Vektor PEi mit zehn quantisierten LSP-Termen {ij} zu erzeugen, wobei j wiederum von 1 bis 10 läuft. Vier interpolierte LSP-Vektoren Ei werden dadurch für jeden Rahmen er­ zeugt, wobei i von 0 bis 3 läuft. Der Interpolator 68 setzt dann die vier LSP-Vektoren Ei in jeweils vier quantisierte Vorhersagekoeffizien­ tenvektoren Ei um.
Das Formantensynthesefilter im Kodierer 12 wird gemäß Glei­ chung (2) (oben) definiert, wobei die quantisierten Vorhersagekoeffizienten {ij} verwendet werden. Infolge der linearen Interpolation verändern sich die Charakteristiken des Synthesefilters des Kodierers weich von Unterrahmen zu Unterrahmen.
Der LSP-Interpolator 70 setzt den unquantisierten LSP-Vektor PU in vier unquantisierte Vorhersagekoeffizientenvektoren AEi um, wobei i von 0 bis 3 läuft. Ein unquantisierter Vorhersagekoeffizientenvektor AEi wird für jeden Unterrahmen i des laufenden Rahmens erzeugt. Jeder Vorhersagekoeffizientenvektor AEi besteht aus zehn unquantisierten Vorhersagekoeffizienten {aij}, wobei j von 1 bis 10 läuft.
Beim Erzeugen der vier unquantisierten Vorhersagekoeffizien­ tenvektor AEi interpoliert der LSP-Interpolator 70 linear zwischen dem unquantisierten LSP-Vektor PU des laufenden Rahmens und dem unquanti­ sierten LSP-Vektor PU des vorhergehenden Rahmens, um vier interpolierte LSP-Vektoren PEi, einen für jeden Unterrahmen 1, zu erzeugen. Die ganze Zahl i läuft von 0 bis 3. Jeder interpolierte LSP-Vektor PEi besteht aus zehn unquantisierten LSP-Termen {Pij}, wobei j von 1 bis 10 läuft. Der Interpolator 10 setzt dann die vier interpolierten LSP-Vektoren PEi jeweils in vier unquantisierte Vorhersagekoeffizientenvektoren AEi um.
Unter Verwendung der unquantisierten Vorhersagekoeffizien­ ten {aij} filtert das Perzeptionswichtungsfilter 72 jeden gleichwer­ tefreien Sprachrahmen xF(n), um einen perzeptionsgewichteten Sprachrah­ men xP(n) von 240 Abtastwerten zu erzeugen, wobei n von 0 bis 239 läuft. Das Perzeptionswichtungsfilter 72 hat die folgende z-Transformation Wi(z) für jeden Unterrahmen i in dem perzeptionsgewichteten Sprachrahmen xP(n):
worin γ1 eine Konstante gleich 0,9 ist und γ2 eine Konstante gleich 0,5. Unquantisierte Vorhersagekoeffizienten {aij} werden bei jedem Unter­ rahmen i aufgefrischt, indem für den vollständigen Rahmen perzeptionsge­ wichtete Sprachrahmen xP(n) erzeugt werden.
Der Tonhöhenabschätzer 74 unterteilt jeden perzeptionsgewich­ teten Sprachrahmen xP(n) in einen ersten Halbrahmen (die ersten 120 Ab­ tastwerte) und einen zweiten Halbrahmen (die letzten 120 Abtastwerte). Unter Verwendung der 120 Abtastwerte in dem ersten Halbrahmen berechnet der Tonhöhenabschätzer 74 einen Schätzwert für die Tonhöhenperiode T1 der offenen Schleife. Der Abschätzer 74 schätzt in ähnlicher Weise die Tonhöhenperiode T2 der offenen Schleife unter Verwendung der 120 Abtast­ werte für den zweiten Halbrahmen ab. Die Tonhöhenperioden T1 und T2 wer­ den erzeugt durch Minimieren der Energie des Offenschleifenvorhersage­ fehlers in jedem perzeptionsgewichteten Sprachrahmen xP(n).
Das Harmonischenrauschformungsfilter 76 wendet Harmonischen­ rauschformung auf jeden perzeptionsgewichteten Sprachrahmen xP(n) an, um einen gewichteten Sprachrahmen xP(n) mit 240 Abtastwerten für n gleich 0, 1, . . . 239 zu erzeugen. Das Harmonischenrauschformungsfilter 76 hat die folgende z-Transformation Pi(z) für jeden Unterrahmen i im gewichte­ ten Sprachrahmen xW(n):
worin Li die Tonhöhennacheilung der offenen Schleife ist und βi ein Rauschformungskoeffizient ist. Die Tonhöhennacheilung Li der offenen Schleife und der Rauschformungskoeffizient βi werden bei jedem Unterrah­ men i bei der Erzeugung des gewichteten Sprachrahmens xW(n) aufge­ frischt. Die Parameter Li und βi werden aus dem entsprechenden Viertel des perzeptionsgewichteten Sprachrahmens xP(n) berechnet.
Das Perzeptionswichtungsfilter 72 und Harmonischenrauschfor­ mungsfilter 76 arbeiten zusammen, um die Kommunikationsqualität der Sprache, repräsentiert durch den komprimierten Datenstrom xc, zu verbes­ sern. Im einzelnen machen die Filter 72 und 76 mit Vorteil von der nicht gleichförmigen Empfindlichkeit des menschlichen Ohres gegenüber Rauschen in unterschiedlichen Frequenzbereichen Gebrauch. Die Filter 72 und 76 reduzieren die Energie von quantisiertem Rauschen in Frequenzbereichen, wo die Sprachenergie niedrig ist, während mehr Rauschen in Frequenzbe­ reichen zugelassen wird, wo die Sprachenergie hoch ist. Für das menschliche Ohr ist die Nettowirkung, daß die Sprache, repräsentiert durch den komprimierten Datenstrom xc, als ähnlicher der Sprache empfun­ den wird, die durch die Eingangssprachwellenformabtastwerte x(n) und demgemäß durch das analoge Eingangssprachsignal x(t) repräsentiert wird.
Das Perzeptionswichtungsfilter 72, das Harmonischenrauschfor­ mungsfilter 76 und das Formantensynthesefilter des Kodierers bilden ge­ meinsam das oben erwähnte kombinierte Filter. Für jeden Unterrahmen i berechnet der Impulsreaktionsrechner 78 die Reaktion h(n) des kombinier­ ten Filters auf ein Impulseingangssignal ii(n), gegeben als:
Das kombinierte Filter hat die folgende z-Transformation Si(z) für jeden Unterrahmen i des Impulsreaktionsunterrahmens h(n):
Si(z) = i(z)Wi(z)Pi(z), 0 ≦ i ≦ 3 (9)
wobei die Transformationskomponenten i(z), i(z) und Pi(z) durch die Gleichungen (2), (6) bzw. (7) gegeben sind. Die numerischen Parameter des kombinierten Filters werden bei jedem Unterrahmen i in dem Impulsre­ aktionsrechner 78 aufgefrischt.
In Fig. 4 werden Referenzsymbole Wi(z) und Pi(z) aus Bequem­ lichkeitsgründen für die Angabe der Signale verwendet, welche die Filte­ rungscharakteristiken der Filter 72 und 76 transportieren. Diese Signale und die vier quantisierten Vorhersagevektoren Ei bilden gemeinsam den kombinierten Filterparametersatz SF für jeden Sprachrahmen.
Der Referenzunterrahmengenerator 54 ist in Fig. 5 wiedergege­ ben. Der Unterrahmengenerator 54 besteht aus einem Nulleingangsreak­ tionsgenerator 82, einem Subtrahierer 84 und einem Speicherauffrischab­ schnitt 86. Die Komponenten 82, 84 und 86 werden vorzugsweise wie in den Paragraphen 2.13 und 2.19 der Spezifikation G.723 vom Juli 1995 imple­ mentiert.
Die Reaktion eines Filters kann in einen Nulleingangsreak­ tionsabschnitt ("ZIR") und einen Nullzustandsreaktionsabschnitt ("ZSR") unterteilt werden. Der ZIR-Abschnitt ist die Reaktion, die auftritt, wenn Eingangsabtastwerte von null Wert dem Filter zugeführt werden. Der ZIR-Abschnitt ändert sich mit dem Inhalt des Speichers des Filters (hier frühere Sprachinformation). Der ZSR-Abschnitt ist die Reaktion, die auf­ tritt, wenn das Filter erregt wird, jedoch keinen Speicher hat. Die Sum­ me von ZIR- und ZSR-Abschnitten bildet die vollständige Reaktion des Filters.
Für jeden Unterrahmen i erzeugt der ZIR-Generator 82 einen Nulleingangsreaktionsunterrahmen r(n) mit 60 Abtastwerten des kombinier­ ten Formantensynthese/Perzeptionswichtungs/Harmonischenrauschfor­ mungsfilters repräsentiert durch die z-Transformation Si(z) der Gleichung (9), wobei n zwischen 0 und 59 variiert. Der Subtrahierer 84 substrahiert jeden ZIR-Unterrahmen r(n) von dem entsprechenden Viertel des gewichteten Sprachrahmens xW(n) auf Basis Abtastwert-zu-Abtastwert, um einen Referenzunterrahmen tA(n) mit 60 Abtastwerten gemäß der Beziehung zu erzeugen:
tA(n) = xW(60i + n) - r(n) (10)
Da die volle Reaktion des kombinierten Filters für jeden Unterrahmen i die Summe von ZIR- und ZSR-Abschnitten für jeden Unterrahmen i ist, ist der Referenzunterrahmen tA(n) ein Soll-ZSR-Unternahmen des kombinierten Filters.
Nachdem der Soll-ZSR-Unterrahmen tA(n) für jeden Unterrahmen berechnet worden ist und bevor zu dem nächsten Unterrahmen übergegangen wird, frischt der Speicherauffrischabschnitt 86 die Speicher der Kompo­ nentenfilter in dem kombinierten Si(z)-Filter auf. Der Auffrischab­ schnitt 86 erfüllt die Aufgabe durch Eingeben zusammengesetzter Erre­ gungsunterrahmen eE(n) mit 60 Abtastwerten in das kombinierte Filter und liefert dann die so berechnete Speicherinformation sM(n) der Filterreak­ tion an den ZIR-Generator 82 für den nächsten Unterrahmen.
Die Erregungskodiereinheit 56 rechnet jeden zusammengesetzten Erregungsunterrahmen eE(n) mit 60 Abtastwerten als die Summe eines adap­ tiven Erregungsunterrahmens uE(n) mit 60 Abtastwerten und eines festen Erregungsunterrahmens vE(n) mit 60 Abtastwerten in einer weiter unten in Verbindung mit Fig. 9 zu beschreibenden Weise. Adaptive Erregungsunter­ rahmen uE(n) stehen in Beziehung mit der Periodizität der Eingangs­ sprachwellenform-Abtastwerte x(n), während die festen Erregungsunterrah­ men vE(n) in Beziehung mit den nicht-periodischen Bestandteilen der Ein­ gangssprachabtastwerte x(n) stehen. Die Kodiereinheit 56, wie in Fig. 6 gezeigt, besteht aus einer adaptiven Codebuchsucheinheit 90, einer fe­ sten Codebuchsucheinheit 92, einem Erregungsparametersammler 94 und ei­ nem Erregungsgenerator 96.
Impulsreaktionsunterrahmen h(n), Soll-ZSR-Unterrahmen tA(n) und Erregungsunterrahmen eE(n) werden der adaptiven Codebuchsucheinheit 90 zugeführt. Bei Empfang dieser Information verwendet die adaptive Codebuchsucheinheit 90 die Tonhöhenperioden T1 und T2 der offenen Schleife bei Durchsicht der Codebücher in der Sucheinheit 90, um für jeden Unter­ rahmen i eine optimale Tonhöhenperiode li bei geschlossener Schleife und einen optimalen ganzzahligen Index ki eines Tonhöhenkoeffizientenvek­ tors, wobei i von 0 bis 3 läuft, zu finden. Für jeden Unterrahmen i wer­ den die optimalen Tonhöhenperioden li der geschlossenen Schleife und die entsprechenden optimalen Tonhöhenkoeffizienten ki später verwendet, um entsprechende adaptive Erregungsunterrahmen uE(n) zu erzeugen. Die Su­ cheinheit 90 berechnet auch weitere Referenzunterrahmen tB(n) mit 60 Ab­ tastwerten, wobei sich n von 0 bis 59 für jeden Referenzunterrahmen tB(n) ändert.
Die feste Codebuchsucheinheit 92 verarbeitet Referenzunterrah­ men tB(n), um einen Satz FE von Parameterwerten zu erzeugen, die feste Erregungsunterrahmen vE(n) für jeden Sprachrahmen repräsentieren. Im­ pulsreaktionsunterrahmen h(n) werden ebenfalls bei der Erzeugung des fe­ sten Erregungsparametersatzes FE ausgewertet.
Der Erregungsparametersammler 94 speichert zeitweilig ki, li und FE. Zu einem passenden Zeitpunkt gibt der Parametersammler 94 die gespeicherten Parameter in Form von Parametersätzen ACE und FCE aus. Für jeden Sprachrahmen ist der Parametersatz ACE eine Kombination von vier optimalen Tonhöhenperioden li und vier optimalen Tonhöhenkoeffizienten­ indizes ki, wobei i von 0 bis 3 läuft. Der Parametersatz FCE ist der gespeicherte Wert des Parametersatzes FCE. Die Parametersätze ACE und FCE werden dem Bitsammler 58 zugeführt.
Der Erregungsgenerator 96 setzt den adaptiven Erregungsparame­ tersatz ACE in adaptive Erregungsunterrahmen uE(n) um (nicht dargestellt in Fig. 6), wobei n gleich 0, 1, . . . 59 für jeden Unterrahmen uE(n) ist. Der feste Erregungsparametersatz FCE wird in ähnlicher Weise umgesetzt durch den Erregungsgenerator 96 in feste Erregungsunterrahmen vE(n) (ebenfalls nicht in Fig. 6 gezeigt), wobei n in ähnlicher Weise gleich 0, 1, . . . 59 für jeden Unterrahmen vE(n) ist. Der Erregungsgenerator 96 kombiniert jedes Paar von einander entsprechenden Unterrahmen uE(n) und vE(n), um zusammengesetzte Erregungsunterrahmen eE(n) wie unten be­ schrieben zu erzeugen. Zusätzlich zu ihrer Rückkopplung zu der adaptiven Codebuchsucheinheit 90 werden die Erregungsunterrahmen eE(n) dem Spei­ cherauffrischabschnitt 86 im Referenzunterrahmengenerator 54 zugeführt.
Die interne Konfiguration der adaptiven Codebuchsucheinheit 90 ist in Fig. 7 gezeigt. Die Sucheinheit 90 enthält drei Codebücher: ein adaptives Erregungscodebuch 102, ein ausgewähltes adaptives Erregungsco­ debuch 104 und ein Tonhöhenkoeffizientencodebuch 106. Die übrigen Kompo­ nenten der Sucheinheit 90 sind ein Tonhöhenkoeffizientenskalierer 108, ein Nullzustandsreaktionsfilter 110, ein Subtrahierer 112, ein Fehlerge­ nerator 114 und ein adaptiver Erregungsselektor 116.
Das adaptive Erregungscodebuch 102 speichert die N unmittelbar vorhergehenden eE(n) Abtastwerte. Das heißt, wenn man den Zeitindex für den ersten Abtastwert des laufenden Sprachunterrahmens durch einen Null­ wert für n repräsentiert werden läßt, enthält das adaptive Erregungsco­ debuch 102 Erregungsabtastwerte e(-N), e(-N + 1), . . . e(-1). Die Zahl N von Erregungsabtastwerten e(n), gespeichert im adaptiven Erregungscode­ buch 102, wird auf einen Wert gesetzt, der die maximale Tonhöhenperiode übersteigt. Wie durch Sprachforschung festgestellt, ist N typischerweise 145 bis 150 und vorzugsweise 145. Die Erregungsabtastwerte e(-N) - e(-1) werden aus den drei unmittelbar vorhergehenden Erregungsunterrahmen eE(n) für n von 0 bis 59 in jedem jener eE(n) Unterrahmen laufend gehal­ ten. Das Referenzsymbol e(n) in Fig. 7 wird verwendet, um e(n) Abtast­ werte zu bezeichnen, die aus dem Codebuch 102 ausgelesen wurden, wobei n von 0 bis 63 läuft.
Das selektive adaptive Erregungscodebuch 104 enthält mehrere, typischerweise 2 bis 4, Kandidaten für adaptive Erregungsvektoren el(n), erzeugt aus e(n) Abtastwerten, die in dem adaptiven Erregungscodebuch 102 gespeichert sind. Jeder Kandidat für einen adaptiven Erregungsvektor el enthält 64 Abtastwerte el(0), el(1), . . . . el(63) und ist deshalb ge­ ringfügig breiter als der Erregungsunterrahmen eE(n). Eine ganzzahlige Tonhöhenperiode l wird jedem Kandidaten für einen adaptiven Erregungs­ vektor el(n) zugeordnet. Spezifisch ist jeder Kandidat für einen Vektor el(n) gegeben als:
el(0) = e(-2 - l)
el(1) = e(-1 - l)
el(n) = e([nmodl] - l), 2 ≦ n ≦ 63 (11)
worin "mod" die Modulusoperation ist, bei der n mod l der Rest (falls vorhanden) ist, der auftritt, wenn n durch l dividiert wird.
Kandidaten für adaptive Erregungsvektoren el(n) werden ent­ sprechend ihrer ganzzahligen Tonhöhenperioden l bestimmt. Wenn die vor­ liegende Kodiereinheit mit der 6,3-Kbps-Rate betrieben wird, sind Kandidatenwerten für Tonhöhenperiode l in der Tabelle 1 wiedergegeben als eine Funktion von Unterrahmenzahl i unter der Voraussetzung, daß die angegebene Bedingung erfüllt ist.
Tabelle 1
Wenn die in Tabelle 1 für jeden Unterrahmen i angegebene Be­ dingung nicht erfüllt ist, wenn die Kodiereinheit mit der 6,3-Kbps-Rate betrieben wird, sind die Kandidatenwerten für die ganzzahlige Tonhöhen­ periode l in Tabelle 2 als eine Funktion der Unterrahmennummer i abhän­ gig von der angegebenen Bedingung aufgelistet:
Tabelle 2
In Tabelle 2 besteht jede Bedingung aus einer Bedingung A und - für die Unterrahmen 1 und 3 - einer Bedingung B. Wenn die Bedingung B vorliegt, müssen beide Bedingungen A und B erfüllt werden, um die Kandi­ datenwerte für die Tonhöhenperiode l zu bestimmen.
Ein Vergleich der Tabellen 1 und 2 zeigt, daß die Kandidaten­ werte der Tonhöhenperiode l für den Unterrahmen 0 in Tabelle 2 dieselben sind wie in Tabelle 1. Für den Unterrahmen 0 in den Tabellen 1 und 2 be­ einflußt das Erfüllen der entsprechenden Bedingung T1 < 58 oder T2 < 57 nicht die Auswahl der Tonhöhenperiodenkandidaten. In gleicher Weise sind die Kandidatenwerte der Tonhöhenperiode l für den Unterrahmen 2 in Tabelle 2 dieselben wie in Tabelle 1. Das Erfüllen der Bedingung T2 < 58 bzw. T2 < 57 für den Unterrahmen 2 in Tabellen 1 und 2 beeinflußt nicht die Auswahl der Tonhöhenperiodenkandiaten. Wie unten diskutiert, wird jedoch der optimale Tonhöhenkoeffizientenindex ki für jeden Unterrahmen i aus einer von zwei unterschiedlichen Tabellen von Tonhöhenkoeffizien­ tenindizes ausgewählt, unabhängig davon, ob Tabelle 1 oder Tabelle 2 an­ gewandt wird. Die für jeden der Unterrahmen vorgeschriebenen Bedingungen einschließlich Unterrahmen 0 und 2 beeinflussen demgemäß die Bestimmung der Tonhöhenkoeffizientenindizes ki für alle vier Unterrahmen.
Die für jeden der Unterrahmen vorgeschriebenen Bedingungen ein­ schließlich Unterrahmen 0 und 2 beeinflussen demgemäß die Bestimmung der Tonhöhenkoeffizientenindizes ki für alle vier Unterrahmen.
Wenn die vorliegende Kodiereinheit mit der 5,3-Kbps-Rate be­ trieben wird, werden die Kandidatenwerte für die ganzzahlige Tonhöhenpe­ riode l als eine Funktion des Unterrahmens i aus Tabelle 2 abgehängig nur von den Tabellen B bestimmt (d. h. die Bedingung, welche l0 mit T1 für den Unterrahmen 1 in Beziehung setzt, und die Bedingung, die l2 mit T2 für den Unterrahmen 3 in Beziehung setzt). Die Bedingungen A in Ta­ belle 2 werden nicht bei der Bestimmung der Tonhöhenperiodenkandidaten benutzt, wenn die Kodiereinheit mit der 5,3-Kbps-Rate betrieben wird.
In Tabellen 1 und 2 sind T1 und T2 die Offenschleifen-Tonhö­ henperioden, vorgesehen für das ausgewählte adaptive Erregungscodebuch 104 aus der Sprachanalyse- und Vorverarbeitungseinheit 52 für den ersten und den zweiten Halbrahmen. Der Ausdruck l0, verwendet für Unterrahmen 1, ist die optimale Geschlossenschleifen-Tonhöhenperiode des Unterrah­ mens 0. Der Ausdruck l2, verwendet für den Unterrahmen 3, ist die opti­ male Geschlossenschleifen-Tonhöhenperiode des Unterrahmens 2. Die opti­ malen Geschlossenschleifen-Tonhöhenperioden l0 und l2 werden während der Unterrahmen 0 bzw. 2 jedes Rahmens in der weiter unten beschriebenen Weise berechnet und stehen demgemäß für die Verwendung in den Unterrah­ men 1 bzw. 3 zur Verfügung.
Wie in Tabellen 1 und 2 gezeigt, sind die Kandidatenwerte für die Tonhöhenperioden l für den ersten und den dritten Unterrahmen je­ weils generell um die Offenschleifen-Tonhöhenperioden T1 bzw. T2 zen­ triert. Die Kandidatenwerte der Tonhöhenperiode l für den zweiten und vierten Unterrahmen sind jeweils um optimale Geschlossenschleifen-Tonhö­ henperioden l0 bzw. l2 der unmittelbar vorhergehenden (ersten bzw. drit­ ten) Unterrahmen zentriert. Es ist wichtig, daß die Tonhöhenperiodenkan­ didaten in Tabelle 2 einen Untersatz jener in Tabelle 1 für die Unter­ rahmen 1 und 3 sind.
Der Dekoder gemäß G.723 verwendet die Tabelle 1 sowohl für die 5,3-Kbps- als auch für die 6,3-Kbps-Datenraten. Der Rechenaufwand, der für das Erzeugen des komprimierten Sprachdatenstroms xc ist, hängt von der Anzahl der Tonhöhenperiodenkandidaten l ab, die überprüft werden müssen. Die Tabelle 2 beschränkt die Anzahl von Tonhöhenperiodenkandida­ ten mehr als Tabelle 1. Demgemäß wird weniger Rechenaufwand benötigt, wenn die Tabelle 2 verwendet wird. Da Tabelle 2 immer für die 5,3 Kbps- Rate bei der vorliegenden Kodiereinheit verwendet wird und auch unver­ meidlich während eines Teils der Sprachverarbeitung bei der 6,3 Kbps-Ra­ te in der Kodiereinheit gemäß der Erfindung verwendet wird, erfordern die Berechnungen, welche die Tonhöhenperiodenkandidaten in der vorlie­ genden Kodiereinheit einbeziehen, weniger, typischerweise 20% weniger, Rechenleistung als in der Kodiereinheit nach G.723.
Das Tonhöhenkoeffizienten-Codebuch 106 enthält zwei Tabellen (oder Untercodebücher) von vorgewählten Tonhöhenkoeffizientenvektoren Bk, wobei k ein ganzzahliger Tonhöhenkoeffizientenindex ist. Jeder Ton­ höhenkoeffizientenvektor Bk enthält fünf Tonhöhenkoeffizienten bk0, bk1, . . . bk4.
Eine der Tabellen von Tonhöhenkoeffizientenvektoren Bk enthält 85 Einträge. Die andere Tabelle von Tonhöhenkoeffizientenvektoren Bk enthält 170 Einträge. Der Tonhöhenkoeffizientenindex k läuft demgemäß von 0 bis 84 für die Gruppe mit 85 Einträgen und von 0 bis 169 für Grup­ pe mit 170 Einträgen. Die Tabelle mit 85 Einträgen wird verwendet, wenn die Kandidatenwerte der Tonhöhenperiode l aus Tabelle 1 ausgewählt wer­ den, d. h. wenn die erfindungsgemäße Kodiereinheit mit der 6,3-Kbps-Rate betrieben wird, wobei die in Tabelle 1 angegebenen Bedingungen erfüllt sind. Die 170-Einträge-Tabelle wird verwendet, wenn die Kandidatenwerte der Tonhöhenperiode l aus Tabelle 2 ausgewählt werden, d. h. wenn (a) die Kodiereinheit mit der 5,3-Kbps-Rate betrieben wird, und (b) die Kodier­ einheit mit der 6,3-Kbps-Rate betrieben wird, wobei die in Tabelle 2 an­ gegebenen Bedingungen erfüllt sind.
Die Komponenten 108-116 der adaptiven Codebuchsucheinheit 90 verwenden Codebücher 102-106 in der folgenden Weise. Für jeden Tonhö­ henkoeffizientenindex k und für jeden adaptiven Erregungsvektorkandida­ ten el(n), wobei n von 0 bis 63 läuft, was einem ganzzahligen Tonhöhen­ periodenkandidaten l entspricht, erzeugt der Tonhöhenkoeffizientenska­ lierer 108 einen kandidatenskalierten Unterrahmen dlk(n), für den n von 0 bis 59 variiert. Jeder kandidatenskalierte Unterrahmen dlk(n) wird be­ rechnet als:
Die Koeffizienten bk0 bis bk4 sind die Koeffizienten des Tonhöhenkoeffi­ zientenvektors Bk, bereitgestellt von der Tabelle mit 85 Einträgen oder 170 Einträgen in dem Tonhöhenkoeffizientencodebuch 106, abhängig davon, ob die Kandidatenwerte der Tonhöhenperiode l aus Tabelle 1 und Tabelle 2 bestimmt werden. Da es entweder 85 oder 170 Werte des Tonhöhenkoeffi­ zientenindex k gibt und da es mehrere adaptive Erregungsvektorkandidaten el für jeden Unterrahmen i gibt, so daß es mehrere entsprechende Tonhö­ henperiodenkandidaten l für jeden Unterrahmen i gibt, wird eine relativ große Zahl (über einhundert) von kandidatenskalierten Unterrahmen dlk(n) für jeden Unterrahmen i berechnet.
Das ZSR-Filter 110 liefert die Nullzustandsreaktion für das kombinierte Formantensynthese-/Perzeptionswichtungs-/Harmonischenrausch­ formungsfilter, repräsentiert durch die z-Transformation si(z) der Gleichung (9). Bei Verwendung des Impulsreaktionsunterrahmens h(n), bereitgestellt von der Sprachanalyse- und Vorverarbeitungseinheit 52, filtert das ZSR-Filter 110 jeden skalierten Unterrahmen dlk(n) zum Erzeugen eines entsprechenden gefilterten, 60 Abtastwerte umfassen­ den Unterrahmenkandidatens glk(n), wobei n von 0 bis 59 läuft. Jeder gefilterte Unterrahmen glk(n) ist gegeben als:
Jeder gefilterte Unterrahmen glk(n), als adaptiver Erregungs- ZSR-Unterrahmenkandidat bezeichnet, ist der ZSR-Unterrahmen des kombi­ nierten Filters, erregt durch den adaptiven Erregungsunterrahmen, wel­ cher der Tonhöhenperiode l und dem Tonhöhenkoeffizientenindex k zugeord­ net ist. Als solcher ist jeder adaptive Erregungs-ZSR-Unterrahmenkandi­ dat glk(n) etwa die periodische Komponente des ZSR-Unterrahmens des kombinierten Filters für die betreffenden l- und k-Werte. Insoweit, als jeder Unterrahmen i mehrere Tonhöhenperiodenkandidaten l und entweder 85 oder 170 Zahlen für den Tonhöhenkoeffizientenindex k hat, wird eine relativ große Zahl von adaptiven Erregungs-ZSR-Unterrahmenkandidaten glk(n) für jeden Unterrahmen 1 berechnet.
Der Subtrahierer 112 subtrahiert jeden adaptiven Erregungs- ZSR-Unterrahmenkandidaten glk(n) vom Soll-ZSR-Unterrahmen tA(n) auf Ba­ sis Abtast-für-Abtastwert zum Erzeugen eines entsprechenden Differenzun­ terrahmenkandidaten wlk(n) mit 60 Abtastwerten als:
wlk(n) = tA(n) - glk(n), n = 0, 1, . . . 59 (14)
Wie bei den Unterrahmen dlk(n) und glk(n) wird eine relativ große Zahl von Differenzunterrahmen wlk(n) für jeden Unterrahmen i berechnet.
Bei Empfang jedes Differenzunterrahmenkandidaten wlk(n) be­ rechnet der Fehlergenerator 114 den entsprechenden quadrierten Fehler (oder die Energie) Elk entsprechend der Beziehung:
Die Berechnung des quadrierten Fehlers Elk wird für jeden adaptiven Er­ regungsvektorkandidaten el(n) ausgeführt, der in dem ausgewählten adap­ tiven Erregungscodebuch 104 gespeichert ist, und für jeden Tonhöhenkoef­ fizientenvektor Bk, der entweder in der Tabelle mit 85 Einträgen des Tonhöhenkoeffizientencodebuchs 106 oder in der 170-Einträge-Tabelle des Koeffizientencodebuch 106 gespeichert ist, abhängig von der Datentrans­ ferrate, und für die 6,3-Kbps-Rate der Tonhöhenbedingungen, die in den Tabellen 1 und 2 gegeben sind.
Die berechneten Werten des quadrierten Fehlers Elk werden dem adaptiven Erregungsselektor 116 zugeführt. Die zugeordneten Werte der ganzzahligen Tonhöhenperiode l und Tonhöhenkoeffizientenindex k werden ebenfalls von den Codebüchern 102 und 106 dem Erregungsselektor 116 für jeden Unterrahmen i zugeführt, wobei i sich von 0 bis 3 ändert. In Reaktion darauf wählt der Selektor 116 optimale Tonhöhenperioden li der ge­ schlossenen Schleife und Tonhöhenkoeffizientenindex ki für jeden Unter­ rahmen i derart, daß der quadrierte Fehler (oder die Energie) Elk den Minimalwert aller quadrierten Fehlerterme Elk hat, berechnet für den be­ treffenden Unterrahmen i. Die optimale Tonhöhenperiode li und der opti­ male Tonhöhenkoeffizientenindex ki werden als Ausgänge von dem Selektor 116 bereitgestellt.
Aus den Differenzunterrahmenkandidaten wlk(n), die dem Selek­ tor 16 zugeführt werden, wird der optimale Differenzunterrahmen wlk(n) entsprechend der ausgewählten Tonhöhenperiode li und ausgewählten Tonhö­ henindexkoeffizienten ki für jeden Unterrahmen von dem Selektor 116 als weiterer Referenzunterrahmen tB(n) bereitgestellt. Indem noch einmal kurz auf die adaptiven Erregungs-ZSR-Unterrahmenkandidaten glk(n) einge­ gangen wird, ist der Unterrahmen glk(n) entsprechend dem optimalen Dif­ ferenzunterrahmen wlk und demgemäß dem Referenzunterrahmen tB(n) der op­ timale adaptive Erregungsunterrahmen. Wie oben erwähnt, ist jeder ZSR- Unterrahmen glk etwa ein periodischer ZSR-Unterrahmen des kombinierten Filters für zugeordnete Tonhöhenperiode l und Tonhöhenkoeffizientenindex k. Ein vollständiger Unterrahmen kann als Summe eines periodischen An­ teils und eines nicht-periodischen Anteils angenähert werden. Der Refe­ renzunterrahmen tB(n), hier als feststehender Erregungs-ZSR-Soll-Unter­ rahmen bezeichnet, wird demgemäß zu etwa dem optimalen nicht-periodi­ schen ZSR-Unterrrahmen des kombinierten Filters.
Wie im einzelnen unten erörtert, durchmustert der Erregungsge­ nerator 96 jeden adaptiven Erregungsunterrahmen uE(n) basierend auf dem adaptiven Erregungsparametersatz ACE, der die Parameter li und ki ent­ hält, wobei i wieder von 0 bis 3 variiert. Durch Erzeugen der Parameter li und ki liefert die adaptive Codebuchsucheinheit 90 Information in demselben Format wie die adaptive Codebuchsucheinheit in der Kodierein­ heit gemäß G.723, wodurch es der hier in Rede stehenden Kodiereinheit ermöglicht wird, mit der Kodiereinheit nach G.723 zusammenzuarbeiten. Es ist von Wichtigkeit, daß die Sucheinheit 90 in der vorliegenden Kodier­ einheit die li- und ki-Information unter weniger Rechenleistung bestimmt als in der adaptiven Suchcodebucheinheit, die bei G.723 verwendet wird, um solche Information zu erzeugen.
Die feste Codebuchsucheinheit 92 verwendet eine Maximierkorre­ lationstechnik für die Erzeugung des festen Codebuchparametersatzes FCE. Die Korrelationstechnik benötigt weniger Rechenleistung, typischerweise 90% weniger, als die Energiefehlerminimiertechnik, die bei der Kodier­ einheit nach G.723 eingesetzt wird, um Information für das Berechnen ei­ nes festen Erregungsunterrahmens zu erzeugen, der dem Unterrahmen vE(n) entspricht. Die in der Sucheinheit 92 der vorliegenden Kodiereinheit verwendete Korrelationstechnik liefert im wesentlichen optimale Charak­ teristiken für feste Erregungsunterrahmen vE(n). Die durch die Suchein­ heit 92 gelieferte Information ist auch in demselben Format wie die In­ formation, die verwendet wird, um feste Erregungsunterrahmen in der Ko­ diereinheit gemäß G.723 zu erzeugen, um so zu ermöglichen, daß die er­ findungsgemäße Kodiereinheit mit der Kodiereinheit nach G.723 zusammen­ arbeiten kann.
Jeder feste Erregungsunterrahmen vE(n) enthält M Erregungsim­ pulse (von null verschiedene Werte), wobei M eine vorbestimmte ganze Zahl ist. Wenn die erfindungsgemäße Kodiereinheit mit der 6,3 Kbps-Rate betrieben wird, beträgt die Anzahl M von Impulsen 6 für jeden geradzah­ ligen Unterrahmen (0 und 2) und 5 für die ungeradzahligen Unterrahmen 1 und 3. Die Anzahl M von Impulsen beträgt 4 für alle Unterrahmen, wenn die Kodiereinheit mit der 5,3-Kbps-Rate betrieben wird. Jeder feste Er­ regungsunterrahmen vE(n) enthält demgemäß fünf oder sechs Impulse bei der 6,3-Kbps-Rate bzw. vier Impulse bei der 5,3-Kbps-Rate.
In Gleichungsform ist jeder feste Erregungsunterrahmen vE(n) gegeben durch:
worin G der quantisierte Verstärkungsfaktor des festen Erregungsunter­ rahmens vE(n) ist, mj die ganzzahlige Position des j-sten Erregungsimpulses in dem festen Erregungsunterrahmen vE(n) repräsentiert, sj das Vorzeichen (+1 für positives Vorzeichen und -1 für negatives Vorzeichen) des j-sten Impulses repräsentiert und δ(n - mj) ei­ ne Dirac-Deltafunktion ist, gegeben durch:
Jede ganzzahlige Impulsposition mj wird aus einem Satz Kj von vordefi­ nierten ganzzahligen Impulspositionen ausgewählt. Diese Kj-Positionen werden in der Spezifikation G.723 vom Juli 1995 sowohl für die 5,3-Kbps- als auch für die 6,3-Kbps-Datenraten als j-Bereiche von 1 bis M defi­ niert.
Die feste Codebuchsucheinheit 92 verwendet die Maximierkorre­ lationstechnik gemäß der Erfindung zum Bestimmen von Impulspositionen mj und Impulsvorzeichen sj für jeden optimalen festliegenden Erregungsun­ terrahmen vE(n), wobei j von 1 bis M reicht. Abweichend von der Kodier­ einheit gemäß G.723, wo die Kriterien für das Auswählen fester Erre­ gungsparameter auf der Minimierung der Energie des Fehlers zwischen ei­ nem festen Soll-Erregungs-ZSR-Unterrahmen und einem normalisierten fe­ sten synthetisierten Erregungsunterrahmen basieren, basieren die Krite­ rien für das Auswählen der festen Erregungsparameter in der Sucheinheit 92 auf der Maximierung der Korrelation zwischen jeweils dem festen Soll- Erregungs-ZSR-Unterrahmen tB(n) und einem entsprechenden synthetisier­ ten, 60 Abtastwerte umfassenden normalisierten festen Erregungsunterrah­ men, hier als q(n) bezeichnet, wobei n von 0 bis 59 läuft.
Die Korrelation C zwischen dem Sollunterrahmen tB(n) und dem entsprechenden normalisierten synthetisierten ZSR-Unterrahmen q(n) wird numerisch berechnet als:
Der normalisierte feste Erregungs-ZSR-Unterrahmen q(n) hängt von den Positionen mj und den Vorzeichen sj der Erregungsimpulse ab, die verfügbar sind, um feste Erregungsunterrahmen vE(n) für j gleich 0, 1, . . . M zu bilden. Die feste Codebuchsucheinheit 92 wählt Impulspositionen mj und Impulsvorzeichen sj derart aus, daß die Korrelation C in Gleichung (18) einen Maximalwert für jeden Unterrahmen i bewirkt.
In Übereinstimmung mit der Lehre der vorliegenden Erfindung wird die Form der Gleichung (18) modifiziert, um die Korrelationsberech­ nungen zu vereinfachen. Als erstes wird eine normalisierte Version c(n) des festen Erregungsunterrahmens vE(n) ohne Verstärkungsabstufung wie folgt definiert:
Der normalisierte synthetisierte feste Erregungsunterrahmen q(n) wird berechnet durch Ausführen einer linearen Faltung zwischen dem normali­ sierten festen Erregungsunterrahmen c(n) und dem entsprechenden Impuls­ reaktionsunterrahmen h(n) des kombinierten Filter wie nachstehend wie­ dergegeben:
Für jeden 60 Abtastwerte umfassenden Unterrahmen bildet demgemäß der normalisierte feste Erregungs-ZSR-Unterrahmen q(n) einen ZSR-Unterrah­ men, erzeugt durch Zuführen eines Erregungsunterrahmens in das kombi­ nierte Filter, wie durch seinen Impulsreaktionsunterrahmen h(n) reprä­ sentiert.
Bei Substitution des normalisierten festen Erregungs-ZSR-Un­ terrahmens q(n) der Gleichung (20) in Gleichung (18) kann die Korrela­ tion C ausgedrückt werden als:
worin f(n) ein invers gefilterter Unterrahmen für n von 0 bis 59 ist. Der invers gefilterte Unterrahmen wird berechnet durch inverse Filterung des festen Soll-Erregungs-ZSR-Unterrahmens tB(n) entsprechend der Bezie­ hung:
Die Substitution eines normalisierten festen Erregungsunter­ rahmens c(n) der Gleichung (19) in Gleichung (21) führt zu dem folgenden Ausdruck für die Korrelation C:
Eine weitere Vereinfachung der Gleichung 23 bringt das Wählen des Vorzeichens sj des Impulses an jeder Stelle mj als gleich mit dem Vorzeichen des entsprechenden invers gefilterten Abtastwertes f(mj) mit sich. Die Korrelation C wird dann ausgedrückt als:
worin |f(mj)| der Absolutwert des gefilterten Abtastwertes f(mj) ist.
Das Maximieren der Korrelation C in Gleichung (24) ist äquiva­ lent der Maximierung jedes einzelnen Terms des Summationsausdrucks in Gleichung (24). Der Maximalwert maxC der Korrelation C ist dann gegeben als:
Infolgedessen können die optimalen Impulspositionen mj, wobei j von 1 bis M läuft, für jeden Unterrahmen i durch Wählen jeder Impuls­ stelle mj aus dem entsprechenden Satz kj von vordefinierten Stellen ge­ funden werden, derart, daß die invers gefilterte Abtastwertgröße |f(mj)| für die betreffende Imp 10574 00070 552 001000280000000200012000285911046300040 0002019647298 00004 10455ulsposition mj maximiert wird.
Die feste Codebuchsucheinheit 92 implementiert die vorstehende Technik für das Maximieren der Korrelation zwischen dem Soll-Unterrahmen tB(n) und dem entsprechenden normalisierten synthetischen Unterrahmen q(n). Die interne Konfiguration der Sucheinheit 92 ist in Fig. 8 ge­ zeigt. Die Sucheinheit 92 besteht aus einer Impulspositionstabelle 122, einem inversen Filter 124, einem festen Erregungsselektor 126 und einer quantisierten Verstärkungsfaktortabelle 128.
Die Impulspositionstabelle 122 speichert die Sätze Kj der Im­ pulspositionen mj, wobei j von 1 bis M reicht, für jede der beiden Da­ tentransferraten. Da M 5 oder 6 ist, wenn die Kodiereinheit mit der 6,3-Kbps-Rate betrieben wird, enthält die Positionstabelle 122 sechs Im­ pulspositionssätze K1, K2, . . . K6 für die 6,3-Kbps-Rate. Die Positions­ tabelle 122 enthält vier Impulspositionssätze K1, K2, K3 und K4 für die 5,3-Kbps-Rate, wobei die Impulspositionssätze K1-K4 für die 5,3-Kbps- Rate sich verschiedendlich von den Impulspositionssätze K1-K4 für die 6,3-Kbps-Rate unterscheiden.
Der Impulsreaktionsunterrahmen h(n) und der entsprechende Soll-ZSR-Unterrahmen tB(n) werden dem inversenen Filter 124 für jeden Unterrahmen i zugeführt. Unter Verwendung des Impulsreaktionsunterrah­ mens h(n) für die Definition der Charakteristiken des inversen Filters filtert das Filter 124 invers den entsprechenden Referenzunterrahmen tB(n) zum Erzeugen eines 60 Abtastwerte umfassenden invers gefilterten Unterrahmens f(n) entsprechend der obigen Gleichung (22).
Bei Empfang des invers gefilterten Unterrahmens f(n) bestimmt der feste Erregungsselektor 126 den optimalen Satz von M Impulsstellen mj, ausgewählt aus der Impulspositionstabelle 122, durch Ausführen der folgenden Operationen für jeden Wert der ganzen Zahl j im Bereich von 1 bis M:
  • a) Suchen nach dem Wert von n, der den maximalen Absolutwert des gefilterten Abtastwertes f(n) ergibt. Die Impulsposition mj wird auf diesen Wert von n gesetzt unter der Voraussetzung, daß er eine der Im­ pulsstellen in dem Impulspositionssatz Kj ist. Die Suchoperation wird mathematisch ausgedrückt als:
    mj = argmax[|f(n)|], n ⊃ Kj (26)
  • b) Nachdem n so gefunden wurde und die Impulsposition mj so gesetzt ist, daß sie gleich n ist, wird der gefilterte Abtastwert f(mj) auf einen negativen Wert, typischerweise -1, gesetzt, um zu verhindern, daß die Impulsposition mj erneut gewählt wird.
Wenn die vorstehenden Operationen für jeden Wert von j von 1 bis M ausgeführt sind, sind die Impulspositionen mj aller M Impulse für den festen Erregungsunterrahmen vE(n) etabliert worden. Die Operationen a und b in Kombination mit der inversen Filterung, bewirkt durch Filter 124, maximieren die Korrelation zwischen dem Soll-ZSR-Unterrahmen tB(n) und dem normalisierten synthetisierten ZSR-Unterrahmen q(n) bei der Be­ stimmung der Impulsstellen für jeden Unterrahmen i. Die Rechenleistung, die für die Ausführung dieser Korrelation benötigt wird, ist, wie oben angegeben, kleiner als jene, die in dem Kodiersystem nach G.723 verwen­ det wird, um die Impulsstellen zu bestimmen.
Der feste Erregungsselektor 126 bestimmt die Impulsvorzeichen sj jedes Impulses als das Vorzeichen des gefilterten Abtastwertes f(mj) entsprechend der Beziehung:
sj = sign[f(mj)], j = 1, 2, . . . M (27)
Der Erregungsselektor 126 bestimmt die unquantisierte Erre­ gungsverstärkung G durch eine Berechnungsprozedur, bei der die Gleichung (19) zunächst verwendet wird, um eine optimale Version c(n) des normali­ sierten festen Erregungsunterrahmens c(n) zu berechnen, wo die Impulspo­ sitionen mj und Impulsvorzeichen sj die optimale Impulsstellen und Vorzeichen sind, wie oben für j von 1 bis M bestimmt worden ist. Eine optimale Version q(n) des normalisierten festen Erregungs-ZSR-Unterrah­ mens q(n) wird dann aus Gleichung (20) berechnet, indem der optimale Unterrahmen c(n) für den Unterrahmen c(n) substituiert wird. Schließlich wird der unquantisierte Verstärkungsfaktor G entsprechend der Beziehung berechnet:
Unter Verwendung quantisierter Verstärkungspegel GL, gelie­ fert aus der quantisierten Verstärkungstabelle 128, quantisiert der Er­ regungsselektor 126 den Verstärkungsfaktor G zum Erzeugen der festen Er­ regungsverstärkung G unter Anwendung einer Suchtechnik des nächsten Nachbarn. Die Verstärkungstabelle 128 enthält dieselben Verstärkungspe­ gel GL wie in dem skalaren Quantisierverstärkungsfaktor-Codebuch, der in dem Kodiersystem nach G.723 verwendet wird. Schließlich wird die Kombi­ nation von Parametern mj, sj und G für jeden Unterrahmen i, wobei i von 0 bis 3 läuft und j von 1 bis M in jedem Unterrahmen i, von dem Erre­ gungsselektor 126 als fester Erregungsparametersatz FE geliefert.
Der Erregungsgenerator 96, wie in Fig. 9 gezeigt, besteht aus einem adaptiven Codebuch-Dekoder 132, einem festen Codebuch-Dekoder 134 und einem Addierer 136. Die Dekoder 132 und 134 arbeiten vorzugsweise in der Weise, wie sie in den Paragraphen 2.18 und 2.17 der Spezifikation G.723 vom Juli 1995 beschrieben sind.
Der adaptive Codebuch-Parametersatz ACE, der die optimale Pe­ riode li der geschlossenen Schleife und den optimalen Tonhöhenkoeffi­ zientenindex ki für jeden Unterrahmen i enthält, wird von dem Erregungs­ parametersammler 94 dem adaptiven Codebuch-Dekoder 132 zugeführt. Unter Verwendung des Parametersatzes ACE als eine Adresse zu einem adaptiven Erregungscodebuch, das Tonhöhenperioden und Tonhöhenkoeffizienteninfor­ mation enthält, dekodiert der Dekoder 132 den Parametersatz ACE zum Aufbau adaptiver Erregungsunterrahmen uE(n).
Der feste Erregungsparametersatz FCE, der die Impulspositionen mj, die Impulsvorzeichen sj und die quantisierte Verstärkung G für jeden Unterrahmen i enthält, wobei j von 1 bis M in jedem Unterrahmen i geht, wird vom Parametersammler 94 dem festen Codebuch-Dekoder 134 zugeführt. Unter Verwendung des Parametersatzes FCE als eine Adresse zu einem fe­ sten Erregungscodebuch, das Impulsstellen- und Impulsvorzeicheninforma­ tion enthält, dekodiert der Dekoder 134 den Parametersatz FCE zum Aufbau fester Erregungsunterrahmen vE(n) entsprechend Gleichung (16).
Für jeden Unterrahmen i des laufenden Sprachrahmens summiert der Addierer 136 jedes Paar von entsprechenden Erregungsunterrahmen uE(n) und vE(n) auf Basis von Abtastwert-um-Abtastwert, um zusammenge­ setzte Erregungsunterrahmen eE(n) zu erzeugen gemäß:
eE(n) = uE(n) + vE(n), n = 0, 1, . . . 59 (29)
Der Erregungsunterrahmen eE(n) wird nun rückgekoppelt zu der adaptiven Codebuchsucheinheit 90, wie oben erwähnt, um das adaptive Er­ regungscodebuch 102 aufzufrischen. Der Erregungsunterrahmen eE(n) wird außerdem dem Speicherauffrischabschnitt 86 im Unterrahmengenerator 54 zugeführt, um den Speicher des kombinierten Filters entsprechend Glei­ chung (9) aufzufrischen.
In der vorbeschriebenen Weise schafft die vorliegende Erfin­ dung ein Sprachkodiersystem, das mit dem Kodiersystem nach G.723 zusam­ menwirken kann, deutlich weniger Rechenleistung als das Kodiersystem nach G.723 benötigt und einen komprimierten digitalen Datenstrom xc schafft, der recht gut das analoge Spracheingangssignal x(t) nachahmt. Die Einsparungen an Rechenleistung betragen etwa 40%.
Für Fachleute sind Abwandlungen im Rahmen der Patentansprüche möglich. Beispielsweise kann das vorliegende Kodiersystem mit der Version des Sprachkodiersystems nach G.723 gemäß der Spezifikation vom Juli 1995 zusammenarbeiten. Die endgültige Normspezifikation für das Kodiersystem nach G.723 kann sich jedoch von dem Entwurf vom Juli 1995 unterscheiden. Es wird angenommen, daß die Prinzipien der Erfindung auch anwendbar sind, um die Menge an Rechenleistung zu verringern, die in einem digitalen Sprachkodiersystem benötigt wird, das mit dem endgültigen Sprachkodiersystem nach G.723 zusammenarbeitet.
Ferner können die Techniken der vorliegenden Erfindung verwendet werden, um Rechenleistung in Sprachkodiersystemen einzusparen, die nicht mit dem Kodiersystem nach G.723 zusammenarbeiten können sollen. In diesem Fall kann die Anzahl nF von Abtastwerten in jedem Rahmen sich von 240 unterscheiden. Die Anzahl nG von Abtastwerten in jedem Unterrahmen kann von 60 abweichen. Die Hierarchie diskreter Sätze von Abtastwerten kann in einer oder mehreren unterschiedlich großen Gruppen von Abtast­ werten, die keine Rahmen und Unterrahmen als ein Viertelrahmen sind, ar­ rangiert werden.
Die Maximierung der Korrelation C könnte durch andere Techni­ ken als die in Fig. 8 dargestellten gemäß den Gleichungen (22) bis (26) implementiert werden. Auch könnte die Korrelation C direkt aus Gleichung (18) unter Anwendung der Gleichungen (19) und (20) für die Definition entsprechender normalisierter synthetisierter Unterrahmen q(n) maximiert werden. Verschiedene Modifikationen und Anwendungsmöglichkeiten stehen demgemäß für Fachleute offen.

Claims (16)

1. Verfahren zum Kodieren und Dekodieren von Sprache, wobei über eine zu einem digitalen Sprachkodierer (12) gehörende Sucheinheit Erregungsinformation bestimmt wird, welche eine nicht-periodische, aus Erregungsimpulsen mit wahlweise positivem oder negativem Vorzeichen be­ stehende Erregungsgruppe definiert, wobei die Impulsposition jedes Erre­ gungsimpulses aus einem entsprechenden Satz von Impulspositionen, die in dem Sprachkodierer (12) gespeichert sind, ausgewählt und variiert wird, dadurch gekennzeichnet,
daß eine Zielgruppe von zeitlich aufeinanderfolgenden gefilter­ ten Versionen von digitalen Eingangssprachabtastwerten, die in dem Sprachkodierer (12) zu einem komprimierten digitalen Sprachdatenstrom komprimiert werden, erzeugt, und
die Korrelation zwischen der Zielgruppe und einer entsprechen­ den, durch Dekomprimierung eines komprimierten digitalen Sprachdaten­ stroms synthetisierten Gruppe von zeitlich aufeinanderfolgenden syntheti­ sierten, digitalen Sprachabtastwerten durch die Variation der Impulsposi­ tionen und Impulsvorzeichen maximiert wird.
2. Verfahren nach Anspruch 1, gekennzeichnet durch Maximieren der durch
gegebenen Korrelation, wobei n eine Abtastwertzahl sowohl in der Zielgruppe als auch in der entsprechenden synthetisierten Gruppe, tB(n) die Zielgruppe, q(n) die entsprechende synthetisierte Gruppe und nG die Gesamtzahl von Abtastwerten in jedem von tB(n) und q(n) ist.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das Maximieren der Korrelation umfaßt:
  • - inverses Filtern der Zielgruppe zum Erzeugen einer entsprechend invers gefilterten Gruppe von zeitlich aufeinanderfolgenden invers gefilterten digitalen Sprachabtastwerten und
  • - Auswählen der Position jedes Impulses aus dem entsprechenden Satz von Impulspositionen derart, daß der Absolutwert der invers gefilterten Abtastwertgruppe maximiert wird.
4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß der Schritt des Bestimmens umfaßt:
  • - Suchen nach dem Wert der Abtastwertzahl n, welche den maximalen Absolutwert von f(mj) ergibt, wobei mj die Position des j-ten Impulses in der nicht-periodischen Erregungsgruppe ist und f(mj) ein Abtastwert in der invers gefilterten Zielgruppe ist;
  • - Setzen der Impulspostionen mj auf den so lokalisierten Wert der Abtastwertzahl n;
  • - Verhindern des erneuten Auswählens der Impulsposition mj, immer dann, wenn mindestens zwei Impulspositionen mj auszuwählen sind; und
  • - Wiederholen des Suchens, Setzens und Verhinderns, bis alle Impulspositionen mj bestimmt worden sind.
5. Vorrichtung zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 4, gekennzeichnet durch einen Sprachkodierer (12) mit einer Sucheinheit für das Bestimmen von Erregungsinformation, die eine nicht- periodische, aus Erregungsimpulsen mit wahlweise positivem oder negativem Vorzeichen bestehende Erregungsgruppe definiert, wobei die Impulsposition jedes Eingangsimpulses aus einem entsprechenden Satz von Impulspositionen, die in dem Sprachkodierer (12) speicherbar sind, auswählbar und variierbar ist, wobei die Sucheinheit zum Bestimmen der Positionen der Impulse durch Maximieren der Korrelation zwischen (a) einer Zielgruppe von zeitlich aufeinanderfolgenden gefilterten Versionen von digitalen, dem Sprachkodierer (12) zwecks Kompression zuführbaren Eingangssprachabtastwerten und (b) einer entsprechenden synthetisierten Gruppe von zeitlich aufeinanderfolgenden synthetisierten digitalen Sprachabtastwerten ausgestaltet ist, wobei die synthetisierte Abtastwertgruppe von den Impulspositionen, die in den entsprechenden Sätzen von Impulspositionen, die in dem Sprachkodierer (12) speicherbar sind, und von den Vorzeichen der Impulse an den betreffenden Impulspositionen abhängt.
6. Vorrichtung nach Anspruch 5, dadurch gekennzeichnet, daß die Sucheinheit umfaßt:
  • - ein inverses Filter (124) für das inverse Filtern der Zielgruppe zum Erzeugen einer entsprechenden invers gefilterten Gruppe von zeitlich aufeinanderfolgenden invers gefilterten digitalen Sprachabtastwerten;
  • - eine Impulspositionstabelle (122), die die Sätze von Impulspositionen speichert; und
  • - einen Selektor (126) zum Auswählen der Postion jedes Impulses aus dem entsprechenden Satz von Impulspositionen derart, daß der Absolutwert der invers gefilterten Abtastwertgruppe maximiert wird.
7. Elektronische Vorrichtung zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß ein Sprachkodierer (12) zum Erzeugen eines komprimierten abgehenden digitalen Sprachdatenstroms durch Komprimieren digitaler Eingangssprachabtastwerte eines Eingangssprachsignals vorgesehen ist, der Sprachkodierer (12) Verarbeitungsschaltkreise (20, 22, 24) für das Erzeugen von
  • a) Filterparametern, welche numerische Werte von Charakteristiken für ein Formantensynthesefilter (26) in dem Sprachkodierer (12) bestimmen, und
  • b) ersten Zielgruppen von zeitlich aufeinanderfolgenden gefilterten Versionen der digitalen Eingangssprachabtastwerte umfaßt und eine Erregungskodierschaltung für das Auswählen von Erregungsinformation, die zusammengesetzten Erregungsgruppen von zeitlich aufeinanderfolgenden Erregungsabtastwerten zugeordnet wird, zum Erregen mindestens des Formantensynthesefilters (26) aufweist, jede zusammengesetzte Erregungsabtastwertgruppe (a) eine periodische Erregungsgruppe von zeitlich aufeinanderfolgenden periodischen Erregungsabtastwerten, die eine spezifizierte Wiederholungsperiode aufweisen, und (b) eine korrespondierende nicht- periodische Erregungsgruppe von Erregungsimpulsen umfaßt, deren jeweilige Positionen aus einem entsprechenden Satz von Impuspositionen, die in dem Sprachkodierer (12) speicherbar sind, ausgewählt wird, wobei jeder Impuls wahlweise ein positives oder negatives Vorzeichen aufweist, die Erregungskodierschaltung
  • - eine erste Sucheinheit für (a) das Auswählen erster Erregungsinformation, welche jede periodische Erregungsabtastgruppe definiert, und (b) das Umsetzen jeder ersten Zielgruppe in eine entsprechende zweite Zielgruppe von zeitlich aufeinanderfolgenden gefilterten Versionen der digitalen Eingangssprachabtastwerte; und
  • - eine zweite Sucheinheit für das Auswählen zweiter Erregungsinformation umfaßt, welche jede nicht-periodische Erregungsimpulsgruppe entsprechend einer Prozedur definiert, die das Bestimmen der Positionen der Impulse in jeder nicht-periodischen Erregungsimpulsgruppe durch Maximieren der Korrelation zwischen der entsprechenden zweiten Zielgruppe und einer entsprechenden synthetisierten Gruppe von zeitlich aufeinanderfolgenden synthetisierten digitalen Sprachabtastwertgruppen umfaßt, wobei jede synthetisierte Abtastwertgruppe von den Impulspositionen abhängt, die in dem Satz von Impulspositonen für die entsprechende nicht-periodische Erregungsimpulsgruppe verfügbar sind, sowie von den Vorzeichen der Impulse an den entsprechenden Impulspositionen.
8. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, daß die periodischen Erregungsabtastwerte in jeder periodischen Erregungsabtastwertgruppe den zusammengesetzten Erregungs­ abtastwertgruppen in der zusammengesetzten Erregungsabtastwertgruppe entsprechen, welche jene periodische Erregungsabtastwertgruppe enthält, und daß die Erregungsimpulse in jeder nicht-periodischen Erregungsimpulsgruppe jeweils dem Teil der zusammengesetzten Erregungsabtastwerte in der zusammengesetzten Erregungsabtastwertgruppe entsprechen, welche die nicht- periodische Erregungsimpulsgruppe enthält.
9. Vorrichtung nach Anspruch 8, dadurch gekennzeichnet, daß jede erste Zielgruppe im wesentlichen eine Zielnullzustandsreaktion von zumindest dem Formantensynthesefilter (26) ist, erregt durch zumindest die periodische Erregungsabtastwertgruppe, und daß jede zweite Zielgruppe im wesentlichen eine nicht-periodische Zielnullzustandsreaktion von zumindest dem Formantensynthesefilter ist, erregt durch die nicht-periodische Erregungsimpulsgruppe.
10. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, daß die zweite Sucheinheit umfaßt:
  • - ein inverses Filter (124) für das inverse Filtern jeder zweiten Zielgruppe zum Erzeugen einer entsprechenden invers gefilterten Gruppe von zeitlich aufeinanderfolgenden digitalen Sprachabtastwerten,
  • - eine Impulspositionstabelle (122), die die Sätze von Impulspositionen speichert; und
  • - einen Selektor (126) zum Auswählen der Position jedes Impulses aus dem entsprechenden Satz von Impulspositionen derart, daß der Absolutwert der invers gefilterten Abtastwertgruppe maximiert wird.
11. Vorrichtung nach Anspruch 7 zur Durchführung des Verfahrens nach Anspruch 4, gekennzeichnet durch die invers gefilterte Abtastwertgruppe
wobei n die Abtastwertzahl, nG die Gesamtzahl von Abtastwerten in der zweiten Zielgruppe, tB(n) die zweite Zielgruppe und h(n) eine Gruppe von zeitlich aufeinanderfolgenden Abtastwerten ist, welche eine Impulsreaktion auf zumindest das Formantensynthesefilter konstituieren.
12. Vorrichtung nach Anspruch 7, gekennzeichnet durch einen Sprachdekoder (16) zum Dekomprimieren eines komprimierten einlaufenden digitalen Sprachdatenstroms, der im Idealfall identisch ist mit dem komprimierten abgehenden digitalen Sprachdatenstrom, um so digitale abgehende Sprachabtastwerte zu synthetisieren, welche die digitalen Eingangssprachabtastwerte approximieren.
13. Vorrichtung nach Anspruch 12, dadurch gekennzeichnet, daß der Sprachdekoder (16) zum Dekodieren des einlaufenden digitalen Sprachdatenstroms, zum Erzeugen von (a) Erregungsinformation, durch welche ein Formantensynthesefilter (26) in dem Sprachdekoder (16) erregbar ist, und von (b) Filterparametern, die die numerischen Werte von Charakteristiken für das Formantensynthesefilter des Sprachdekoders (16) bestimmen, ausgestaltet ist.
14. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, daß der Sprachkodierer (12) auf einer Rahmenzeitlagebasis arbeitet, bei der jeder aufeinanderfolgende Satz von ausgewählten Zahlen von digitalen Eingangssprachabtastwerten einen Eingangssprachrahmen bildet, auf den Verarbeitungsschaltkreise (52) eine lineare voraussagende Kodieranalyse zum Bestimmen eines Linienspektralpaarcodes für den betreffenden Eingangssprachrahmen ausüben, wobei jede zusammengesetzte Erregungsabtastwertgruppe einem spezifizierten Teil jedes Eingangssprachrahmens entspricht.
15. Vorrichtung nach Anspruch 14, dadurch gekennzeichnet, daß die Verarbeitungsschaltung umfaßt:
  • - einen Eingangspuffer (50) für das Umsetzen der digitalen Eingangssprachabtastwerte in die Eingangssprachrahmen;
  • - eine Sprachanalyse- und Vorverarbeitungseinheit (52) für das Erzeugen des Linienspektralpaarcodes und für das Bereitstellen von perzeptionell gewichteten Sprachrahmen für die Erregungskodierschaltung (56); und
  • - einen Bitsammler (58) für die Verkettung des Linienspektralpaarcodes und Parametern, welche die Erregungsinformation charakterisieren, um den abgehenden digitalen Sprachdatenstrom zu erzeugen.
16. Vorrichtung nach Anspruch 15, dadurch gekennzeichnet, daß jeder Eingangssprachrahmen 240 digitale Eingangssprachabtastwerte und jede zusammengesetzte Erregungsabtastwertgruppe 60 Erregungsabtastwerte enthält.
DE19647298A 1995-11-17 1996-11-15 Kodiersystem Expired - Fee Related DE19647298C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/560,082 US5867814A (en) 1995-11-17 1995-11-17 Speech coder that utilizes correlation maximization to achieve fast excitation coding, and associated coding method

Publications (2)

Publication Number Publication Date
DE19647298A1 DE19647298A1 (de) 1997-05-22
DE19647298C2 true DE19647298C2 (de) 2001-06-07

Family

ID=24236294

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19647298A Expired - Fee Related DE19647298C2 (de) 1995-11-17 1996-11-15 Kodiersystem

Country Status (3)

Country Link
US (1) US5867814A (de)
KR (1) KR100304682B1 (de)
DE (1) DE19647298C2 (de)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW317051B (de) * 1996-02-15 1997-10-01 Philips Electronics Nv
US7788092B2 (en) * 1996-09-25 2010-08-31 Qualcomm Incorporated Method and apparatus for detecting bad data packets received by a mobile telephone using decoded speech parameters
US6205130B1 (en) * 1996-09-25 2001-03-20 Qualcomm Incorporated Method and apparatus for detecting bad data packets received by a mobile telephone using decoded speech parameters
JP3206497B2 (ja) * 1997-06-16 2001-09-10 日本電気株式会社 インデックスによる信号生成型適応符号帳
JP3166697B2 (ja) * 1998-01-14 2001-05-14 日本電気株式会社 音声符号化・復号装置及びシステム
JP3273599B2 (ja) * 1998-06-19 2002-04-08 沖電気工業株式会社 音声符号化レート選択器と音声符号化装置
US6330531B1 (en) 1998-08-24 2001-12-11 Conexant Systems, Inc. Comb codebook structure
US7072832B1 (en) * 1998-08-24 2006-07-04 Mindspeed Technologies, Inc. System for speech encoding having an adaptive encoding arrangement
US6980948B2 (en) * 2000-09-15 2005-12-27 Mindspeed Technologies, Inc. System of dynamic pulse position tracks for pulse-like excitation in speech coding
JP2002162998A (ja) * 2000-11-28 2002-06-07 Fujitsu Ltd パケット修復処理を伴なう音声符号化方法
JP3404016B2 (ja) * 2000-12-26 2003-05-06 三菱電機株式会社 音声符号化装置及び音声符号化方法
US7512535B2 (en) * 2001-10-03 2009-03-31 Broadcom Corporation Adaptive postfiltering methods and systems for decoding speech
US7194141B1 (en) * 2002-03-20 2007-03-20 Ess Technology, Inc. Image resolution conversion using pixel dropping
JP2004151123A (ja) * 2002-10-23 2004-05-27 Nec Corp 符号変換方法、符号変換装置、プログラム及びその記憶媒体
KR100463418B1 (ko) * 2002-11-11 2004-12-23 한국전자통신연구원 Celp 음성 부호화기에서 사용되는 가변적인 고정코드북 검색방법 및 장치
KR100503414B1 (ko) * 2002-11-14 2005-07-22 한국전자통신연구원 고정 코드북의 집중 검색 방법 및 장치
CN101124626B (zh) * 2004-09-17 2011-07-06 皇家飞利浦电子股份有限公司 用于最小化感知失真的组合音频编码
US8447592B2 (en) * 2005-09-13 2013-05-21 Nuance Communications, Inc. Methods and apparatus for formant-based voice systems
ATE548727T1 (de) * 2007-03-02 2012-03-15 Ericsson Telefon Ab L M Nachfilter für geschichtete codecs
US8566106B2 (en) * 2007-09-11 2013-10-22 Voiceage Corporation Method and device for fast algebraic codebook search in speech and audio coding
CN101599272B (zh) * 2008-12-30 2011-06-08 华为技术有限公司 基音搜索方法及装置
GB2466671B (en) * 2009-01-06 2013-03-27 Skype Speech encoding
GB2466674B (en) * 2009-01-06 2013-11-13 Skype Speech coding
GB2466670B (en) * 2009-01-06 2012-11-14 Skype Speech encoding
GB2466673B (en) 2009-01-06 2012-11-07 Skype Quantization
GB2466672B (en) * 2009-01-06 2013-03-13 Skype Speech coding
GB2466675B (en) 2009-01-06 2013-03-06 Skype Speech coding
GB2466669B (en) * 2009-01-06 2013-03-06 Skype Speech coding
US8452606B2 (en) 2009-09-29 2013-05-28 Skype Speech encoding using multiple bit rates
US9123334B2 (en) 2009-12-14 2015-09-01 Panasonic Intellectual Property Management Co., Ltd. Vector quantization of algebraic codebook with high-pass characteristic for polarity selection
HRP20240674T1 (hr) 2014-04-17 2024-08-16 Voiceage Evs Llc Postupci, koder i dekoder za linearno prediktivno kodiranje i dekodiranje zvučnih signala pri prijelazu između okvira koji imaju različitu brzinu uzorkovanja
EP3306609A1 (de) * 2016-10-04 2018-04-11 Fraunhofer Gesellschaft zur Förderung der Angewand Vorrichtung und verfahren zur bestimmung von neigungsinformationen

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2173679A (en) * 1985-04-03 1986-10-15 British Telecomm Speech coding
US5307441A (en) * 1989-11-29 1994-04-26 Comsat Corporation Wear-toll quality 4.8 kbps speech codec
DE4315315A1 (de) * 1993-05-07 1994-11-10 Ant Nachrichtentech Verfahren zur Vektorquantisierung insbesondere von Sprachsignalen

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2626223B2 (ja) * 1990-09-26 1997-07-02 日本電気株式会社 音声符号化装置
FI98104C (fi) * 1991-05-20 1997-04-10 Nokia Mobile Phones Ltd Menetelmä herätevektorin generoimiseksi ja digitaalinen puhekooderi
US5550543A (en) * 1994-10-14 1996-08-27 Lucent Technologies Inc. Frame erasure or packet loss compensation method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2173679A (en) * 1985-04-03 1986-10-15 British Telecomm Speech coding
US5307441A (en) * 1989-11-29 1994-04-26 Comsat Corporation Wear-toll quality 4.8 kbps speech codec
DE4315315A1 (de) * 1993-05-07 1994-11-10 Ant Nachrichtentech Verfahren zur Vektorquantisierung insbesondere von Sprachsignalen

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Dual Rate Speech Coder for Multimedia-Communica- tions Transmitting at 5.3 & 6.3 kbits/s", Entwurf G. 723, Telecommunication Standardization Sector von ITU, 7. Juli 1995 (37 Seiten) *

Also Published As

Publication number Publication date
KR100304682B1 (ko) 2001-11-22
KR970031376A (ko) 1997-06-26
US5867814A (en) 1999-02-02
DE19647298A1 (de) 1997-05-22

Similar Documents

Publication Publication Date Title
DE19647298C2 (de) Kodiersystem
DE69309557T2 (de) Verfahren und Vorrichtung zur Sprachkodierung
DE69029232T2 (de) System und Methode zur Sprachkodierung
DE69023402T2 (de) Verfahren zur Sprachkodierung und -dekodierung.
DE69331079T2 (de) CELP-Vocoder
DE69900786T2 (de) Sprachkodierung
DE60011051T2 (de) Celp-transkodierung
DE69420431T2 (de) Sprachkodierungssystem
DE69530442T2 (de) Vorrichtung zur Sprachkodierung
DE69527410T2 (de) CELP-Koder und -Dekoder und Verfahren dazu
DE69029120T2 (de) Stimmenkodierer
DE60121405T2 (de) Transkodierer zur Vermeidung einer Kaskadenkodierung von Sprachsignalen
DE69910239T2 (de) Verfahren und vorrichtung zur adaptiven bandbreitenabhängigen grundfrequenzsuche für die kodierung breitbandiger signale
DE69928288T2 (de) Kodierung periodischer sprache
DE3853916T2 (de) Digitaler-sprachkodierer mit verbesserter vertoranregungsquelle.
DE69625874T2 (de) Verfahren und Vorrichtung zur Wiedergabe von Sprachsignalen, zur Dekodierung, zur Sprachsynthese und tragbares Funkendgerät
DE2945414C2 (de) Sprachsignal-Voraussageprozessor und Verfahren zur Verarbeitung eines Sprachleistungssignals
DE69932460T2 (de) Sprachkodierer/dekodierer
DE69521164T2 (de) System zum Kodieren und Dekodieren von Signalen
DE69916321T2 (de) Kodierung eines verbesserungsmerkmals zur leistungsverbesserung in der kodierung von kommunikationssignalen
DE69329569T2 (de) Digitale Kodierung von Sprachsignalen
DE69524890T2 (de) Parametrische Sprachkodierung
DE29825254U1 (de) Sprachcodierer und Sprachdecodierer
DE69121411T2 (de) Methode und gerät zur codierung von analogen signalen
DE69033510T2 (de) Numerischer sprachkodierer mit verbesserter langzeitvorhersage durch subabtastauflösung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
R082 Change of representative
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20130601