Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SPEECH CODEC
Document Type and Number:
WIPO Patent Application WO/1994/007313
Kind Code:
A1
Abstract:
A process for coding speech signals to be transmitted by an emitter over a limited transmission capacity (BBR) channel to a receiver with speech coder and channel coder is characterized in that the speech coder and the channel coder have each two different modes. In the first mode, the speech signal is coded by the speech coder with a lower bit rate (B1) than in a second mode (B0), in the first mode the bit rate difference (B0-B1) with respect to the bit rate (B0) of the second mode is made available for the channel coder, and this additional bit rate difference is used by the channel coder for transmitting supplementary redundance information. An improved quality of speech transmission is thus obtained, useful for example for mobile radiotelephones.

Inventors:
MUELLER JOERG-MARTIN (DE)
Application Number:
PCT/DE1993/000839
Publication Date:
March 31, 1994
Filing Date:
September 11, 1993
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ANT NACHRICHTENTECH (DE)
MUELLER JOERG MARTIN (DE)
International Classes:
G10L19/06; G10L19/18; H04B14/04; (IPC1-7): H04B14/04; G10L9/14
Domestic Patent References:
WO1989012292A11989-12-14
Foreign References:
US5060269A1991-10-22
Other References:
TANIGUCHI: "Combined Source and Channel Coding Based on Multimode Coding", ICASSP 90, SPEECH PROCESSING 1, vol. 1, April 1990 (1990-04-01), NY,USA, pages 477 - 480, XP000146509
Download PDF:
Claims:
Patentansprüche
1. Verfahren für die Codierung von Sprachsignalen zur Übertragung von einem Sender über einen Kanal mit begrenzter Übertragungskapazität (BBR) zu einem Empfänger, mit Sprachencoder und Kanalencoder, dadurch gekennzeichnet, daß der Sprachencoder und der Kanalencoder jeweils zwei verschiedene Modi aufweisen, daß in einem ersten Modus das Sprachsignal durch den Sprachencoder mit kleinerer Bitrate (Bl) als in einem zweiten Modus (BO) codiert wird, daß in dem ersten Modus die Differenzbitrate (B0B1) zur Bitrate (BO) des zweiten Modus dem Kanalencoder zur Verfügung gestellt wird und daß durch den Kanalencoder diese zusätzliche Differenzbitrate zur Übertragung von weiterer Redundanzinformation ausgenutzt wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß festgestellt wird, ob das Sprachsignal stimmhaft ist, und daß bei stimmhaftem Sprachsignal auf Modus eins geschaltet wird.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß festgestellt wird, wie hoch die Empfangsqualität am Ort des Empfängers ist, daß ein Signal als ein Maß für die Empfangsqualität erzeugt wird und daß in Abhängigkeit dieses Signales bei einer bestimmten minderen Empfangsqualität und schlechter im Modus eins gearbeitet wird.
4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß ein Rückkanal vom Empfänger zum Sender vorgesehen ist, vermittels dem die Empfangsqualität zum Sprachencoder des Senders übertragen wird.
5. Verfahren nach Anspruch 2 oder 3, dadurch gekennzeichnet, daß die Schwelle der Empfangsqualität, deren Übertritt eine Umschaltung auf den anderen Modus bewirkt, variabel ist.
6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß im Modus eins mit Differenzcodierung gearbeitet wird, in dem nur die Differenz zwischen dem letzten und dem aktuellen Sprachparameter der Pitchanalyse ermittelt, codiert und übertragen wird.
7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß der Sprachencoder nach einer der CELP oder RELP PrädiktionsMethoden arbeitet.
Description:
Beschreibung

Sprachcodec

Die Erfindung bezieht sich auf ein Verfahren für die Codierung von Sprachsignalen gemäß Oberbegriff des Anspruches 1. Solche Sprachcodierverfahren sind bekannt, beispielsweise durch die deutsche Patentschrift 38 34 871.

Allen Sprachcodierungsverfahren ist gemeinsam eine Prädiktionsanalyse des Eingangssignals (Linear Prediction Coder, LPC). Dabei wird das Sprachsignal am Eingang des Encoders im Rahmen einer bestimmten Dauer von z.B. 20-30 ms unterteilt. Jeder Sprachrahmen wird im Encoder einer linearen Prädiktionsanalyse unterworfen, welche lineare Abhängigkeiten im Sprachsignal entfernt. Die lineare Prädiktion wird mit Hilfe von FIR-Filtern (Finite Impulse Response) durchgeführt. Die Koeffizienten dieser Filter werden in jedem Rahmen neu ermittelt, d.h. es handelt sich hier um adaptive Filter. Bei den bekannten CELP-Verfahren (Code-Excited-Linear- Prediction) und SELP (Stochastically-Excited-Linear- Prediction) werden zwei Arten linearer Prädiktion eingesetzt, die lineare Kurzzeitprädiktion und die lineare Langzeitprädiktion. Die Filterkoeffizienten des Kurzzeitprädiktors werden einmal pro Sprachrahmen ermittelt, während die Koeffizienten des Langzeitprädiktors dagegen typischerweise viermal pro Sprachrahmen ermittelt werden. Bei der Analyse-durch-Synthese-Methode wird in Rückkopplungsschleifen das sogenannte Residuum, das Fehlersignal der LPC-Analyse, mit verschiedenen Varianten erzeugt und weiterverarbeitet. Beispielsweise wird beim CELP- Verfahren das Residuum durch eine gaußverteilte Zufallsfolge erzeugt, wobei ein Codebuch, das die Zufallsvektoren enthält,

durchsucht und derjenige Vektor ausgewählt wird, der den kleinsten Fehler im synthetisierten Sprachsignal erzeugt. Zu übertragen sind dann nur die Adressen der ausgewählten Vektoren im Codebuch.

Bei der Sprachübertragung wird allgemein eine gute Sprachqualität gefordert, dies sowohl bei fehlerfreien als auch bei gestörten Kanälen. Um den Kanalstörungen entgegenzuwirken, wird bei digitalen Sprachübertragungen den Bits aus dem Sprachencoder eine Redundanz R hinzugefügt, dies wird Kanalcodierung genannt, um auf der Empfangsseite Übertragungsfehler korrigieren zu können. Da die Kanalkapazität eine vorgegebene und nicht veränderbare Systemgröße ist, können bei bestimmten Kanalstörungen Übertragungsfehler nicht mehr korrigiert werden, weshalb die Qualität bzw. Verständlichkeit des empfangenen Sprachsignals darunter leidet.

Der vorliegenden Erfindung lag die Aufgabe zugrunde, ein Sprachcodierverfahren der eingangs genannten Art anzugeben, welches in der Lage ist, die Qualität bzw. Verständlichkeit der über einen Kanal übertragenen Sprache sowohl bei störungsfreiem als auch bei gestörtem Kanal zu erhöhen, d.h. sowohl die Sprachqualität bei fehlerfreier Übertragung als auch die Robustheit des Sprachübertragungssystems zu steigern.

Diese Aufgabe wurde gelöst durch die Merkmale des Hauptanspruches. Vorteilhafte Ausgestaltungen ergeben sich durch die Unteransprüche.

Die Erfindung geht aus von der Erkenntnis, daß ein Sprachsignal in drei Klassen eingeteilt werden kann:

1. stimmlos

2. stimmhaft

3. Übergänge zwischen stimmlos und stimmhaft bzw. umgekehrt.

In den Fällen 1 und 3 sind die Koeffizienten des Langzeitprädiktors sehr starken Schwankungen unterworfen, so daß die mehrmalige Neuberechnung pro Sprachrahmen aus Gründen der Sprachqualität unbedingt erforderlich ist. Dieser Betriebsfall wird im folgenden mit Mode 0 bezeichnet. Im stimmhaften Fall dagegen (im folgenden mit Mode 1 bezeichnet) schwanken die Parameter nur sehr wenig, so daß ohne Verschlechterung der Sprachqualität hierfür weniger Bits zu übertragen sind, d.h. eine unter Umständen wesentlich kleinere Bitrate benötigt wird. Beispielsweise kann durch die Differenzcodierung ein viertel bis drei achtel der Sprachencoder-Bitrate eingespart werden. Diese eingesparte Bitrate wird erfindungsgemäß der Kanalkodierung zur Verfügung gestellt. Wenn also diese kleinere Bitrate zur Codierung der stimmhaften Sprachabschnitte verwendet wird, so kann dies statistisch gesehen für etwa 45 bis 50 % der gesamten Sprachübertragung erfolgen, wodurch die Sprachqualität des Sprachcodecs bei fehlerfreiem Kanal nicht verschlechtert wird, die Qualität bei gestörtem Kanal jedoch wesentlich erhöht wird.

Darüberhinaus wird bei dem erfindungsgemäßen Verfahren zusätzlich vorgeschlagen, den Mode 1 unabhängig von der Statistik des Spracheingangssignals zu erzwingen, wenn die KanalStörungen ein gewisses Maß übertreffen und damit die Verständlichkeit sehr stark dezimiert werden würde. Durch das erfindungsgemäße Verfahren wird die Robustheit und damit die Qualität bzw. Verständlichkeit bei gestörtem bzw. stark gestörtem Kanal wesentlich erhöht. Wenn ein Maß für die Höhe der Störung als Signal vorhanden ist, so kann mit Hilfe dessen die Empfangsqualität bereits im Sender gesteuert werden. Dies ist beispielsweise bei Verfügbarkeit eines Rückkanals möglich, über den ein entsprechendes Signal als Maß für die Güte des Empfangssignals vom Empfänger zum Sender rückübertragen wird.

Es folgt nun die Beschreibung der Erfindung anhand der

Figuren.

Figur 1 und die Figur 2 zeigen Blockschaltbilder für Sprach- und Kanalencoder bzw. -decoder mit variabler Bitrate.

Figur 3 demonstriert ein Funkübertragungssystem mit Rückkanal, und in

Figur 4 ist die Struktur eines Sprachencoders mit variabler

Bitrate detaillierter gezeichnet.

In Figur 5 schließlich ist ein Ablaufdiagramm eines

Differenzcodierungsentscheiders dargestellt.

Die Figuren sind Ausführungsbeispiele im Hinblick auf die

Anwendung des Verfahrens im Mobilfunk. Hierbei ist die

Kanalkapazität BBR beim GSM-Full-Rate-System 22,8 kBit/sec. und beim GSM-Half-Rate-System 11,4 kBit/sec. (GSM steht für

Group Speciale Mobile) .

Gemäß dem erfindungsgemäßen Verfahren wird die Kanalcodierung auf Sende- und Empfangsseite an die Bitrate des Sprachcodecs angepaßt. Der Modus, in dem der Sprachencoder arbeitet, wird mit einem sogenannten Modebit signalisiert. Dieses Modebit muß auf der Empfangsseite im Kanaldecoder rekonstruiert werden. Die Figuren 1 und 2 geben einen Überblick über Sende- und Empfangsteil. Gemäß Figur 1 wird die Bitrate des Encoderteils von zwei Blöcken gesteuert. Das ist zum einen der Stimmhaft/Stimmlos-Entscheider SH/SL, welcher das Spracheingangssignal s(n) statistisch auswertet. Als Ergebnis wird dem Sprachencoder SE mitgeteilt, ob ein Sprachrahmen stimmhaft oder stimmlos ist. Bei stimmhaften Sprachabschnitten wird der Encoder in den Mode 1 versetzt, in dem Differenzcodierung der Pitchanalyseparameter verwendet wird. Diese Differenzcodierung der Pitchanalyseparameter kann auch unabhängig von der Statistik des Eingangssignales erzwungen werden durch entsprechende Einstellung der hierfür relevanten Parameter im Block Außensteuerung AS. Damit kann der Prozentsatz der mit Mode 1, also Differenzcodierung, übertragenen Sprachrahmen erhöht und eine optimale Einstellung zwischen Sprachqualität und Robustheit des Kanals erreicht

werden. Praktisch benutzt das erfindungsgemäße Verfahren zwei Kanalencoder KEO und KE1, welche die vom Sprachencoder erzeugten codierten Sprachparameter und das Modebit im Mode 0 mit der Bitrate BO und im Mode 1 mit der Bitrate Bl, wobei B0 größer Bl ist, codieren. Der Empfänger gemäß Bild 2 enthält eine Baueinheit zur Modebestimmung, welche das zu decodierende Kanalsignal im Mode 0 auf den Kanaldecoder KDO und im Mode 1 auf den Kanaldecoder KD1 umschaltet. Die Ausgangssignale der beiden Kanaldecoder werden durch den anschließenden nachfolgenden Sprachdecoder SD zum Ausgangssprachsignal s(n) decodiert.

Die Figur 3 zeigt ein Funkübertragungssystem mit Rückkanal, wobei die Bausteine gemäß Figur 1 und 2 vereinfacht enthalten sind. Die Empfangsqualität wird an dem Modulatorausgang des Empfängers festgestellt und zum Sender übertragen. Die Empfangsqualitätsignale wirken direkt auf eine Außensteuerung AS, durch welche der Sprachencoder SE in den Modus mit Differenzcodierung umschaltbar ist. Bei schlechter Empfangsqualität kann dabei der Prozentsatz an deltacodierten Sprachrahmen (Mode 1) erhöht werden. Damit verschlechtert sich zwar die Sprachqualität leicht, die Robustheit gegenüber Übertragungsfehlern und damit die Qualität beim Empfänger wird jedoch verbessert. Bei Verbesserung der Empfangsqualität wird der Anteil an Mode-1-Sprachrahmen auf den Normalanteil zurückgefahren, und die Sprachqualität wird entsprechend besser. Es ist somit möglich, den Sprachcodec in einfacher Weise dynamisch an die Kanalverhältnisse anzupassen. In Figur 4 ist ein Teil der Blockstruktur des Sprachencoders dargestellt. Die Blöcke Anregungsanalyse und LPC-Analyse (LPC steht für Linear Predictive Coded) sind wie in bekannten CELP- Verfahren (siehe Literaturstelle 1) ausgeführt. Die Ermittlung der Langzeitprädiktionsparameter erfolgt nach der ebenfalls bekannten Closed-Loop-Methode (Literaturstelle 2). Die Parameter der LPC-Analyse werden beispielsweise einmal pro Sprachrahmen (z.B. 20 ms) und die Langzeitprädiktionsanalyse N su b Ma - L ( Z - B - alle 5 ms) pro Rahmen ermittelt. Ein

Sprachabschnitt, für den die Langzeitprädiktions-Parameter ermittelt werden, wird als Sprachunterrahmen bezeichnet. Bei der "Closed Loop"-Methode kann der Langzeitprädiktor als ein adaptives Codebuch dargestellt werden. Das Codebuch besteht dabei aus z.B. 256 Signalen

N a(n,P) n = 0 1, P = 0 255

N sub

die aus Anregungssignalen von zurückliegenden Sprachunterrahmen gebildet werden. Durch Skalierung dieses Signales a * a(n,P)

und anschließender LPC-Synthesefilterung ergibt sich das Vorhersagesignal

N s L (n) n = 0... -1

N sub

Die Fehlerenergie zwischen Vorhersagesignal und Sprachsignal s(n) dient als Maß für die Güte der Prädiktion

N 1

Nsub

E = Σ (s(n) - s L (n))- n=0

Im folgenden werden nur die Funktionsblöcke beschrieben, die für den Sprachcodec mit variabler Bitrate relevant sind.

- Stimmhaft/Stimmlos-Entscheider:

Ermittlung, ob der betrachtete Sprachrahmen mit

N Sprachabtastwerten (s(n), n = 0, N - 1) stimmhaft oder stimmlos ist.

Eine Ausführungsform dieses Entscheiders ist eine "Open loop"-Pitchanalyse, die in drei Schritten durchgeführt wird:

1) Berechnung der Autokorrelationsfunktion

N-l R(i) = Σ s(n)s(n-i), i = 20,83 (1) N=0

2) Berechnung des "Open Loop" - Prädiktionsgewinns G 0 L

3) Entscheidung auf stimmlos (SH=0), wenn

G OL < T G

Entscheidung auf stimmhaft (SH=1) , wenn

G OL ≥ T G

T G ist eine Schwelle, die im Modul "Außensteuerung" fest oder bei Verwendung eines Rückkanals dynamisch eingestellt wird.

Wenn auf stimmhaft (SH=1) entschieden wurde, wird zusätzlich die optimale "Open Loop"-Pitchperiode P SH ausgegeben.

"Closed Loop" - Pitchanalyse-Einheit. Diese Einheit ermittelt folgende Parameter:

1) P op t : optimale Pitchperiode

2) α 0 t: optimaler Skalierungsfaktor für den adaptiven Codebuchvektor

3) E opt : minimale Fehlerenergie des "Closed Loop"- Pitchprädiktors

4) P : Optimale Delta-Pitchperiode, die unter der Bedingung berechnet wurde, daß eine Deltacodierung zur Pitchperiode des letzten Sprachunterrahmens mit einer vorgegebenen Anzahl von Bits möglich ist.

5) α * : Optimaler Delta-Skalierungsfaktor für den adaptiven Codebuchvektor, der unter der Bedingung berechnet wurde, daß eine Deltacodierung zum Wert des Skalierungsfaktors des letzten Sprachunterrahmens mit einer vorgegebenen Anzahl von Bits möglich ist

6) E Λ : Fehlerenergie des "Closed Loop"-Pitchprädiktors, wenn die Pitchperiode und der Skalierungsfaktor zu den entsprechenden Werten des letzten Sprachunterrahmens mit einer vorgegebenen Anzahl von Bits differenzcodiert werden.

7) P SH : Pitchperiode aus dem "Stimmhaft/Stimmlos"- Entscheider. Im stimmhaften Fall legt dieser Wert im ersten Sprachunterrahmen die Deltaumgebung für den "Closed Loop"-Pitch fest.

Außensteuerungs-Einheit. Hier sind die Parameter

T s (i) i = l...N sub und

T G definiert, mittels denen eine Differenzcodierung erzwungen werden kann. Diese Parameter sind entweder fest eingestellt oder können durch Auswertung der RückkanalInformation zeitlich variiert werden.

Eine mögliche feste Einstellung von T s (i) ist (N suj -,=4):

T s (l) = 0.95 T s (2) = 0.9 T s (3) = 0.85 T s (4) = 0.8

Differenzcodierungs-Entscheider

Ein detailliertes Ablaufdiagramm dieser Einheit als

Funktion der beschriebenen Parameter ist in Figur 5 dargestellt:

- Ist SH=1 (stimmhaft), dann werden die

Langzeitprädiktionsparameter so berechnet, daß eine Differenzcodierung mit einer vorgegebenen Anzahl von Bits möglich ist.

- Ist SH=0 (stimmlos), dann kann über die Außensteuerungs- para eter T(i) eine Differenzcodierung erzwungen werden. Solange die Bedingung

E • T(i) > E opt

erfüllt ist, wird eine Deltacodierung durchgeführt. Wird diese Bedingung verletzt, dann wird das Mode-Bit auf Null gesetzt (Mode=0), und der betreffende Sprachrahmen wird ohne Deltacodierung übertragen.

- Langzeitparameter-Codierung

Diese Einheit führt, falls "Mode = 1" entschieden wurde, eine Differenzcodierung der Langzeitparameter durch.

Die Differenzcodierung wird angewandt auf die Pitchperiode und auf den Skalierungsfaktor, indem die Differenz zwischen dem aktuellen und dem zuletzt berechneten

Parameter codiert und übertragen wird.

Folgendes Zahlenbeispiel soll die Bitraten-Einsparung dokumentieren (N SU k=4):

Mode Anz. Bits für Pitch Anz. Bits für Skalierung Anz. Bits gesamt

0 8,8,8,8 4,4,4,4 48

1 8,5,5,5 4,3,3,3 36

Beträgt die Rahmendauer 20 mεec, so ist die Bitrate zur Übertragung der Langzeitprädiktionsparameter in Mode 0 2,4 kbit/sec und in Mode 1 1,8 kbit/sec. Bei Übertragung in Mode 1 kann für den ersten Parameter eines Sprachunter¬ rahmens keine Differenzcodierung durchgeführt werden, weshalb an dieser Stelle keine Bitrate eingespart werden kann.

Literatur

[1] Atal, Remde: Code-Excited Linear Prediction (CELP): High

Quality Speech at very low Bitrates. Proc. ICASSP 85, S. 937-

940

[2] Singhai, Atal: Improving Performance of Multi-Pulse LPC

Coders at Low Bitrates, Proc. ICASSP 88, S. 155-158