PatentDe  


Dokumentenidentifikation DE69915830T2 10.02.2005
EP-Veröffentlichungsnummer 0001088205
Titel VERBESSERTE VERFAHREN ZUR RÜCKGEWINNUNG VERLORENER DATENRAHMEN FÜR EIN LPC-BASIERTES, PARAMETRISCHES SPRACHKODIERUNGSYSTEM.
Anmelder Comsat Corp., Bethesda, Md., US
Erfinder HO, Ian, Grant, Don Mills, CA;
BARANIECKI, Marion, Fairfax, US;
YELDENER, Suat, Germantown, US
Vertreter Meissner, Bolte & Partner GbR, 80538 München
DE-Aktenzeichen 69915830
Vertragsstaaten AT, BE, CH, CY, DE, DK, ES, FI, FR, GB, GR, IE, IT, LI, LU, MC, NL, PT, SE
Sprache des Dokument EN
EP-Anmeldetag 16.06.1999
EP-Aktenzeichen 999301633
WO-Anmeldetag 16.06.1999
PCT-Aktenzeichen PCT/US99/12804
WO-Veröffentlichungsnummer 0099066494
WO-Veröffentlichungsdatum 23.12.1999
EP-Offenlegungsdatum 04.04.2001
EP date of grant 24.03.2004
Veröffentlichungstag im Patentblatt 10.02.2005
IPC-Hauptklasse G10L 19/00

Beschreibung[de]
Hintergrund der Erfindung

Die Übertragnung von komprimierter Sprache über Paketvermittlungsnetze und Mobilfunknetze umfaßt zwei Hauptsysteme. Das Ursprungssprachsystem codiert das Sprachsignal auf Rahmen-für-Rahmen-Basis, paketiert die komprimierte Sprache zu Informationsbytes oder -paketen und sendet diese Pakete über das Netz. Wenn die Informationsbytes das Zielsprachsystem erreichen, werden sie zu Rahmen entpackt und decodiert. Der Dual-Rate-Sprachcodierer G.723.1, der in ITU-T Recommendation G723.1, "Dual Rate Speech Coder for Multimedia Communications Transmitting at 5.3 and 6.3 kbit/s", März 1996 (nachstehend "Dokument 1) beschrieben ist, wurde von der ITU-T 1996 ratifiziert und wird seither verwendet, um Sprachübertragung über Paketvermittlungs- sowie Mobilfunknetze hinzuzufügen. Bei einer mittleren Bewertung von 3,98 aus 5,0 (siehe A. R. Thryft, "Voice over IP Looms for Intranets in '98," Electronic Engineering Times, August 1997, Ausgabe 967, S. 79, 102; nachstehend "Dokument 2") ist die Nah-Fernübertragungsgüte des Standards G.723.1 ideal für Echtzeit Multimediaanwendungen über private und lokale Netze (LANs), wo Paketverluste minimal sind. Über Weitverkehrsnetze (WANs), globale Verkehrsnetze (GANs) und Mobilfunknetze kann die Überlastung jedoch schwerwiegend sein, und Paketverluste können in stark verminderter Sprache resultieren, wenn keine Maßnahmen ergriffen werden. Es ist daher notwendig, Techniken zu entwickeln, um verlorene Sprachrahmen am Empfänger zu rekonstruieren, um dadurch die Verzerrung zu minimieren und die Verständlichkeit der Ausgabe aufrechtzuerhalten.

Die folgende Erörterung des Dual-Rate-Sprachcodierers G.273.1 und seiner Fehlerverschleierung tragen zu einem vollständigen Verständnis der Erfindung bei.

Der Dual-Rate-Sprachcodierer G.723.1 codiert pulscodemodulierte 16-Bit-Sprache, die mit einer Rate von 8 kHz abgetastet wird, unter Anwendung einer linearen prädiktiven Analyse-durch-Synthese-Codierung. Die Erregung für den Hochrate-Codierer ist Multipuls Maximum-Likelihood-Quantisierung (MP-MLP), wogegen die Erregung für den Niedrigrate-Codierer Algebraic-Code-Excited Linear-Prediction (ACELP) ist. Der Codierer ist an einer Rahmengröße von 30 ms wirksam, was äquivalent einer Rahmenlänge von 240 Abtastwerten ist, und unterteilt jeden Rahmen in vier Unterrahmen mit jeweils 60 Abtastwerten. Für jeden 30-ms-Sprachrahmen wird ein Linear Prediction Coding- bzw. LPC-Filter zehnter Ordnung berechnet, und seine Koeffizienten werden in Form von Line Spectral Pair- bzw. LSP-Parametern quantisiert, um zu dem Decodierer übertragen zu werden. Eine adaptive Codelexikon-Tonhöhenverzögerung und Tonhöhenverstärkung werden dann für jeden Unterrahmen berechnet und zu dem Decodierer übertragen. Schließlich wird das Erregungssignal, bestehend aus der festgelegten Codelexikon-Verstärkung, den Pulspositionen, Pulsvorzeichen und dem Rasterindex, approximiert unter Anwendung von entweder MP-MLQ für den Hochrate-Codierer oder ACELP für den Niedrigrate-Codierer und zu dem Decodierer übertragen. Insgesamt besteht der von dem Codierer zu dem Decodierer gesendete resultierende Bitstrom aus den LSP-Parametern, den adaptiven Codelexikon-Verzögerungen, festen und adaptiven Codelexikon-Verstärkungen, Pulspositionen, Pulsvorzeichen und dem Rasterindex.

Am Decodierer werden die LSP-Parameter decodiert, und das LPC-Synthesefilter erzeugt eine rekonstruierte Sprache. Für jeden Unterrahmen werden die festen und adaptiven Codelexikon-Beiträge zu einem Tonhöhen-Nachfilter gesendet, dessen Ausgang in das LPC-Synthesefilter eingegeben wird Der Ausgang des Synthesefilters wird dann zu einer Formant-Nachfilter- und Verstärkungs-Skalierungseinheit gesendet, um den synthetisierten Ausgang zu erzeugen. Im Fall von indizierten Rahmenlöschungen ist eine Fehlerverschleierungs-Strategie vorgesehen, die im folgenden Abschnitt beschrieben wird 1 zeigt ein Blockbild des G.723.1 Decodierers.

Bei Vorhandensein von Paketverlusten umfaßt die derzeitige G.723.1 Fehlerverschleierung zwei Hauptschritte. Der erste Schritt ist eine LSP-Vektor-Wiederherstellung, und der zweite Schritt ist die Erregungs-Wiederherstellung. Im ersten Schritt wird der LSP-Vektor des fehlenden Rahmens wiederhergestellt durch Anlegen eines festen linearen Prädiktors an den vorher decodierten LSP-Vektor. Im zweiten Schritt wird die Erregung des fehlenden Rahmens wiederhergestellt, indem nur die am Decodierer verfügbare neueste Information genutzt wird Das wird erreicht, indem zuerst die stimmhafte/stimmlose Klassifizierfunktion des vorhergehenden Rahmens unter Anwendung einer Kreuzkorrelations-Maximierungsfunktion bestimmt und dann die Prädiktions- bzw. Vorhersageverstärkung für den besten Vektor getestet wird Wenn die Verstärkung mehr als 0,58 dB ist, wird der Rahmen als stimmhaft bezeichnet, andernfalls wird der Rahmen als stimmlos bezeichnet. Die Klassifizierfunktion gibt dann einen Wert 0 zurück, wenn der vorhergehende Rahmen stimmlos ist, oder gibt die geschätzte Tonhöhenverzögerung zurück, wenn der vorhergehende Rahmen stimmhaft ist. Im stimmlosen Fall wird dann die Erregung des fehlenden Rahmens unter Verwendung eines einheitlichen Zufallsgenerators erzeugt und mit dem Mittelwert der Verstärkungen für die Unterrahmen 2 und 3 des vorhergehenden Rahmens skaliert. Für den stimmhaften Fall dagegen wird der vorhergehende Rahmen um 2,5 dB gedämpft und mit einer periodischen Erregung regeneriert, die eine Periode hat, die gleich der geschätzten Tonhöhenverzögerung ist. Wenn Paketverluste für die nächsten zwei Rahmen weiterhin auftreten, wird die regenerierte Erregung um weitere 2,5 dB für jeden Rahmen gedämpft, aber nach drei interpolierten Rahmen wird der Ausgang vollständig still gemacht.

Die G.723.1 Fehlerverschleierungs-Strategie wurde getestet, indem verschiedene Sprachsegmente über ein Neu mit Paketverluststufen von 1%, 3%, 10% und 15% gesendet wurden. Für jede Stufe wurden sowohl einzelne als auch vielfache Paketverluste simuliert. Durch eine Serie von informellen Mithörtests wurde gezeigt, daß zwar die Gesamtausgabegüte für niedrigere Paketverluststufen sehr gut war, jedoch auf allen Stufen noch eine Reihe von Problemen vorhanden waren, die mit zunehmenden Paketverlusten schwerwiegender wurden.

Erstens klangen Teile des Ausgabesegments unnatürlich und enthielten viele störende, metallisch klingende Artefakte. Die unnatürliche Tongüte des Ausgangs kann der Wiederherstellung des LSP-Vektors zugeschrieben werden, die auf einem festen Prädiktor basiert, wie vorher beschrieben wurde. Da der LSP-Vektor des fehlenden Rahmens dadurch wieder hergestellt wird, daß an dem LSP-Vektor des vorhergehenden Rahmens ein fester Prädiktor angewandt wird, sind die spektralen Änderungen zwischen den vorhergehenden und wiederhergestellten Rahmen nicht gleichmäßig. Dadurch, daß keine gleichmäßigen spektralen Änderungen über fehlende Rahmen hinweg erzeugt werden, tritt eine unnatürlich klingende Ausgabegüte auf, wodurch bei hohem Paketverlustaufkommen die Unverständlichkeit zunimmt. Außerdem waren in der Ausgabe viele metallisch klingende Hochfrequenz-Artefakte zu hören. Diese metallisch klingenden Artefakte treten primär in stimmlosen Bereichen der Ausgabe auf und werden durch eine inkorrekte Stimmschätzung des vorhergehenden Rahmens während der Wiederherstellung der Erregung verursacht. Anders ausgedrückt: Da ein fehlender stimmoser Rahmen fälschlicherweise als stimmhaft klassifiziert werden kann, erzeugt der Übergang in den fehlenden Rahmen einen Hochfrequenz-Störimpuls oder metallisch klingenden Artefakt durch Anwendung der geschätzten Tonhöhenverzögerung, die für den vorhergehenden Rahmen berechnet wurde. Mit zunehmenden Paketverlusten wird dieses Problem noch schwerwiegender, da eine fehlerhafte Stimmschätzung eine stärkere Verzerrung erzeugt.

Ein weiteres Problem bei der Anwendung der G.723.1 Fehlerverschleierung war die Anwesenheit von hochenergetischen Nadelimpulsen in der Ausgabe. Diese hochenergetischen Nadelimpulse, die für das Ohr besonders unangenehm sind, werden durch eine falsche inkorrekte Schätzung der LPC-Koeffizienten während der Formant-Nachfilterung verursacht, und zwar aufgrund der schlechten Vorhersage des LSP- oder Verstärkungsparameters bei Anwendung der festen LSP-Prädiktion und Erregungs-Wiederherstellung gemäß G.723.1. Auch hier nimmt mit zunehmenden Paketverlusten die Zahl der hochenergetischen Nadelimpulse zu, was zu einer verstärkten Unannehmlichkeit und Verzerrung beim Hörer führt.

Schließlich trat "abgehackte" Sprache auf, was daraus resultierte, daß die Ausgabe vollkommen still gemacht wurde. Da die G.723.1 Fehlerverschleierung nicht mehr als drei aufeinanderfolgende fehlende Rahmen rekonstruiert, werden alle verbleibenden fehlenden Rahmen einfach still gemacht, was zu Funkstille-Intervallen in der Ausgabe oder "abgehackter" Sprache führt. Da eine größere Wahrscheinlichkeit besteht, daß in einem Netz mehr als drei aufeinanderfolgende Pakete verlorengehen, führt dies mit zunehmenden Paketverlusten zu einer Zunahme der "abgehackten" Sprache und somit zu verringerter Verständlichkeit und zu Verzerrung bei der Ausgabe.

Es wird auf EP-A-0 459 358 Bezug genommen, die einen Sprachdecodierer beschreibt, der zum Ziel hat, wiedergegebene Sprache hoher Güte bei nur geringer Verschlechterung der Tongüte zu erzielen. Zur Wiederherstellung eines verlorenen Rahmens interpoliert eine Interpolationsschaltung zwischen Parametern von vorherigen und künftigen ordnungsgemäßen Rahmen.

Zusammenfassung der Erfindung

Es ist eine Aufgabe der vorliegenden Erfindung, die vorstehenden Probleme zu beseitigen und eine Verbesserung der in Dokument 1 definierten Fehlerverschleierungs-Strategie zu erreichen. Diese und weitere Aufgaben werden gelöst durch eine verbesserte Technik der Wiederherstellung von verlorenen Rahmen unter Anwendung von linearer Interpolation, selektiver Energiedämpfung und Energieverringerung.

Gemäß der vorliegenden Erfindung wird ein Verfahren zum Rückgewinnen eines verlorenen Rahmens für ein System von dem Typ angegeben, bei dem Information als aufeinanderfolgende Rahmen von codierten Signalen übertragen und die Information aus den codierten Signalen an einem Empfänger rekonstruiert wird, wobei das Verfahren die folgenden Schritte aufweist:

Speichern von codierten Signalen von einem ersten Rahmen vor dem verlorenen Rahmen;

Speichern von codierten Signalen von einem zweiten Rahmen, der auf den verlorenen Rahmen folgt;

Interpolieren zwischen den codierten Signalen von dem ersten und dem zweiten Rahmen, um rückgewonnene codierte Signale für den verlorenen Rahmen zu erhalten;

Berechnen einer geschätzten Tonhöhenverzögerung und Vorhersageverstärkung für den ersten Rahmen; und

Klassifizieren des verlorenen Rahmens als stimmhaft und stimmlos auf der Basis der Vorhersageverstärkung und der geschätzten Tonhöhenverzögerung von dem ersten Rahmen.

Die lineare Interpolation der Sprachmodellparameter ist eine Technik, die dafür ausgelegt ist, spektrale Änderungen über Rahmenlöschungen hinweg zu glätten und dadurch jede unnatürlich klingende Sprache und metallisch klingende Artefakte aus der Ausgabe zu eliminieren. Die lineare Interpolation läuft wie folgt ab: 1) Am Decodierer wird ein Puffer eingeführt, um einen künftigen Sprachrahmen oder ein solches Sprachpaket zu speichern. Die vorhergehenden und die künftigen Informationen, die in dem Puffer gespeichert sind, werden genutzt, um die Sprachmodellparameter für den fehlenden Rahmen zu interpolieren, wodurch gleichmäßigere spektrale Änderungen über fehlende Rahmen hinweg generiert werden, als wenn einfach ein festgelegter Prädiktor verwendet wird wie bei der G.723.1 Fehlerverschleierung. 2) Die akustische Klassifizierung basiert dann sowohl auf dem geschätzten Tonhöhenwert als auch der Prädiktions- bzw. Vorhersageverstärkung für den vorhergehenden Rahmen im Gegensatz zu nur der Vorhersageverstärkung wie bei der G.723.1 Fehlerverschleierung; dadurch wird die Wahrscheinlichkeit der korrekten akustischen Schätzung für den fehlenden Rahmen verbessert. Durch Anwendung des ersten Teils der linearen Interpolationstechnik wird eine natürlicher klingende Sprache erzielt; durch Anwendung des zweiten Teils der linearen Interpolationstechnik werden nahezu alle unerwünschten metallisch klingenden Artefakte wirksam ausgeblendet.

Zur Beseitigung der Auswirkungen von hochenergetischen Nadelimpulsen wurde eine selektive Energiedämpfungstechnik entwickelt. Diese Technik vergleicht die Signalenergie für jeden synthetisierten Unterrahmen mit einem Grenzwert und dämpft alle Signalenergien für den gesamten Rahmen auf einen annehmbaren Pegel, wenn der Grenzwert überschritten wird. In Kombination mit der linearen Interpolation eliminiert diese selektive Energiedämpfungstechnik wirkungsvoll jedes Auftreten von hochenergetischen Nadelimpulsen bei der Ausgabe.

Schließlich wurde eine Energieverringerungstechnik entwickelt, um die Auswirkungen einer "abgehackten" Sprache zu eliminieren. Immer, wenn Vielfachpakete in mehr als einem Rahmen verlorengehen, wiederholt diese Technik einfach den vorhergehenden guten Rahmen für jeden fehlenden Rahmen, indem die Signalenergie des wiederholten Rahmens allmählich verringert wird Durch Anwendung dieser Technik wird die Energie des Ausgangssignals über Vielfachpakete allmählich vergleichmäßigt oder verringert, wodurch alle Funkstille-Intervalle oder ein "abgehackter" Spracheffekt, der bei der G.723.1 Fehlerverschleierung auftritt, eliminiert werden. Ein weiterer Vorteil der Energieverringerung ist die relativ kurze Rechenzeit, die zur Rekonstruktion von verlorenen Paketen benötigt wird Im Vergleich mit der G.723.1 Fehlerverschleierung ist die gesamte algorithmische Verzögerung erheblich geringer, da diese Technik nur die allmähliche Dämpfung der Signalenergien für wiederholte Rahmen umfaßt gegenüber der Durchführung der Wiederherstellung mit fester LSP-Vorhersage und Energiewiederherstellung bei G.723.1.

Kurze Beschreibung der Zeichnungen

Die Erfindung ergibt sich im einzelnen aus der nachstehenden Beschreibung in Verbindung mit den beigefügten Zeichnungen; diese zeigen in:

1 ein Blockbild, das die Operation des G.723.1 Decodierers zeigt;

2 ein Blockbild, das die Anwendung eines Zukunfts-, eines Bereit- und eines Kopienpuffers bei der Interpolationstechnik gemäß der vorliegenden Erfindung zeigt;

3a bis 3c Wellenformen, die die Eliminierung von hochenergetischen Nadelimpulsen durch die Fehlerverschleierungstechnik der vorliegenden Erfindung zeigen; und

4a bis 4c Wellenformen, die die Eliminierung der Tonunterdrückung am Ausgang durch die Fehlerverschleierungstechnik gemäß der vorliegenden Erfindung zeigen.

Genaue Beschreibung der Erfindung

Die vorliegende Erfindung umfaßt drei Techniken, die zur Eliminierung der oben erörterten Probleme angewandt werden, die sich aus der G.723.1 Fehlerverschleierung ergeben, und zwar unnatürlich klingende Sprache, metallisch klingende Artefakte, hochenergetische Nadelimpulse und "abgehackte" Sprache. Es ist zu beachten, daß die beschriebenen Fehlerverschleierungstechniken bei verschiedenen Typen von parametrischen Sprachcodierern auf der Basis der linearen prädiktiven Codierung bzw. LPC (z. B. APC, RELP, RPE-LPC, MPE-LPC, CELP, SELP, CELP-BB, LD-CELP und VSELP) sowie bei verschiedenen Paketvermittlungsnetzen (z. B. Internet, asynchroner Übertragungsmodus und Frame-Relay) und Mobilfunknetzen (z. B. satellitengestützte Mobilfunk- und digitale zellulare Netze) anwendbar sind Die Erfindung wird also im Zusammenhang mit dem G.723.1 MP-MLQ 6.3 Kbps Codierer über das Internet beschrieben, wobei die Beschreibung Terminologie verwendet, die zu diesem speziellen Sprachcodierer und -netz gehört, aber die Erfindung ist nicht darauf beschränkt, sondern ohne weiteres bei anderen parametrischen LPC-basierten Sprachcodierern (z. B. dem Niedrigrate-ACELP-Codierer sowie anderen ähnlichen Codierern) und bei verschiedenen Neuen anwendbar.

Lineare Interpolation

Die lineare Interpolation der Sprachmodellparameter wurde entwickelt, um spektrale Änderungen über eine einzelne Rahmenlöschung (d. h. einen fehlenden Rahmen zwischen zwei guten Sprachrahmen) auszugleichen und somit natürlicher klingende Ausgaben zu erzeugen, während gleichzeitig alle metallisch klingenden Artefakte aus der Ausgabe eliminiert werden. Die Einrichtung des linearen Interpolationssystems ist in 2 dargestellt. Die lineare Interpolation erfordert drei Puffer – den Zukunftspuffer, den Bereitpuffer und den Kopienpuffer, von denen jeder einer Rahmenlänge von 30 ms äquivalent ist. Diese Puffer werden am Empfänger eingesetzt, bevor die Decodierung und Synthese stattfindet. Bevor diese Technik erläutert wird, sollen zuerst die nachfolgenden Ausdrücke in bezug auf ihre Anwendung bei der linearen Interpolation definiert werden:

Vorhergehender Rahmen: Das ist der letzte gute Rahmen, der von dem Decodierer verarbeitet wurde, und wird in dem Kopienpuffer gespeichert.

Aktueller Rahmen: Das ist ein guter oder fehlender Rahmen, der aktuell vom Decodierer verarbeitet wird, und wird in dem Bereitpuffer gespeichert.

Künftiger Rahmen: Das ist ein guter oder fehlender Rahmen, der unmittelbar auf den aktuellen Rahmen folgt, und wird in dem Zukunftspuffer gespeichert.

Die lineare Interpolation ist ein Mehrschrittprozeß, der wie folgt abläuft:

  • 1. Der Bereitpuffer speichert den zu verarbeitenden aktuellen guten Rahmen, während der Zukunftspuffer gleichzeitig den künftigen Rahmen der codierten Sprachsequenz speichert. Eine Kopie der Sprachmodellparameter des aktuellen Rahmens wird erstellt und in dem Kopienpuffer gespeichert.
  • 2. Der Status des künftigen Rahmens, entweder gut oder fehlend, wird bestimmt. Wenn der künftige Rahmen gut ist, ist eine lineare Interpolation nicht notwendig, und das lineare Interpolationsflag wird auf 0 rückgesetzt. Wenn der zukünftige Rahmen fehlt, ist eine lineare Interpolation eventuell notwendig, und das lineare Interpolationsflag wird vorübergehend auf 1 gesetzt. (In einem Echtzeitsystem wird ein fehlender Rahmen entweder durch einen Empfängerzeitablauffehler oder einen zyklischen Blockprüfungsfehler bzw. CRC-Fehler detektiert. Diese Detektieralgorithmen für fehlende Rahmen sind jedoch kein Teil der Erfindung, sondern müssen für den richtigen Ablauf jeder Paketrekonstruktions-Strategie am Decodierer erkannt werden und eingebunden sein.)
  • 3. Der aktuelle Rahmen wird decodiert und synthetisiert. Eine Kopie des LPC-Synthesefilters des aktuellen Rahmens und der nachgefilterten Tonhöhenerregung wird erstellt.
  • 4. Der künftige Rahmen, der sich ursprünglich im Zukunftspuffer befindet, wird zu dem aktuellen Rahmen und wird in dem Bereitpuffer gespeichert. Der nächste Rahmen in der codierten Sprachsequenz kommt als der künftige Rahmen in dem Zukunftspuffer an.
  • 5. Der Wert des linearen Interpolationsflags wird geprüft. Wenn das Flag auf 0 gesetzt ist, erfolgt Rücksprung des Prozesses zu Schritt (1). Wenn das Flag auf 1 gesetzt ist, springt der Ablauf zu Schritt (6).
  • 6. Der Status des künftigen Rahmens wird bestimmt. Wenn der künftige Rahmen gut ist, wird die lineare Interpolation angewandt; das lineare Interpolationsflag bleibt auf 1 gesetzt, und der Prozeß springt zu Schritt (7). Wenn der künftige Rahmen fehlt, wird die Energieverringerung angewandt; das Energieverringerungsflag wird auf 1 gesetzt, und das lineare Interpolationsflag wird auf 0 rückgesetzt. (Zu beachten: Die Energieverringerungstechnik wird nur bei Mehrfachrahmenverlusten angewandt und später noch erläutert.)
  • 7. Die LSP-Wiederherstellung wird ausgeführt. Dabei werden die LSP-Vektoren zehnter Ordnung von den vorhergehenden und künftigen guten Rahmen, die in dem Kopien- bzw. dem Zukunftspuffer gespeichert sind, gemittelt, um den LSP-Vektor für den aktuellen Rahmen zu erhalten.
  • 8. Die Erregungs-Wiederherstellung wird ausgeführt. Dabei werden die festen Codelexikon-Verstärkungen von den vorhergehenden und künftigen Rahmen, die in dem Kopien- und dem Zukunftspuffer gespeichert sind, gemittelt, um die feste Codelexikon-Verstärkung für den fehlenden Rahmen zu erhalten. Alle verbleibenden Sprachmodellparameter werden von dem vorhergehenden Rahmen entnommen.
  • 9. Die Schätzung der Tonhöhenverzögerung und der Vorhersageverstärkung wird für den vorhergehenden Rahmen, der in dem Kopienpuffer gespeichert ist, mit dem identischen Prozeß gemäß der G.723.1 Fehlerverschleierung durchgeführt.
  • 10. Wenn die Vorhersageverstärkung kleiner als 0,58 dB ist, wird der Rahmen als stimmlos angenommen, und das Erregungssignal für den aktuellen Rahmen wird unter Verwendung eines Zufallsgenerators erzeugt und mit der vorher errechneten gemittelten festen Codelexikon-Verstärkung in Schritt (8) skaliert.
  • 11. Wenn die Vorhersageverstärkung größer als 0,58 dB ist und die geschätzte Tonhöhenverzögerung einen Grenzwert Pthresh überschreitet, wird der Rahmen als stimmhaft angenommen, und das Erregungssignal für den aktuellen Rahmen wird erzeugt, indem zuerst die vorhergehende Erregung für jeweils zwei Unterrahmen um 1,25 dB gedämpft und dann diese Erregung mit einer Periode gleich der geschätzten Tonhöhenverzögerung regeneriert wird. Andernfalls wird der aktuelle Rahmen als stimmlos angenommen, und die Erregung wird wie in Schritt (10) wiederhergestellt.
  • 12. Nach LSP- und Erregungs-Wiederherstellung wird der aktuelle Rahmen mit seinen neu interpolierten LSP- und Verstärkungsparametern decodiert und synthetisiert, und es erfolgt Rücksprung des Prozesses zu Schritt (13).
  • 13. Der künftige Rahmen, der sich ursprünglich in dem Zukunftspuffer befindet, wird zum aktuellen Rahmen und im Bereitpuffer gespeichert. Der nächste Rahmen in der codierten Sprachsequenz kommt in dem Zukunftspuffer als der künftige Rahmen an. Es erfolgt Rücksprung des Prozesses zu Schritt (1).

Die lineare Interpolation bietet mindestens zwei wichtige Vorteile gegenüber der G.723.1 Fehlerverschleierung. Der erste Vorteil ergibt sich in Schritt (7) während der LSP-Rückgewinnung. Da in Schritt (7) die lineare Interpolation die LSP-Parameter des fehlenden Rahmens auf der Basis der vorhergehenden und künftigen Rahmen bestimmt, erhält man eine bessere Schätzung für die LSP-Parameter des fehlenden Rahmens, was gleichmäßigere spektrale Änderungen über den fehlenden Rahmen hinweg erlaubt, als wenn einfach eine feste LSP-Vorhersage angewandt wird, wie das bei der G.723.1 Fehlerverschleierung der Fall ist. Infolgedessen wird eine natürlicher klingende verständliche Sprache generiert, wodurch der Komfort für den Hörer gesteigert wird.

Der zweite Vorteil der linearen Interpolation tritt in den Schritten (8) bis (11) während der Erregungsrückgewinnung auf. Da in Schritt (8) die lineare Interpolation die Vestärkungsparameter des fehlenden Rahmens durch Mittelung der festen Codelexikon-Verstärkungen zwischen den vorhergehenden und künftigen Rahmen generiert, ergibt sich erstens eine bessere Schätzung der Verstärkung des fehlenden Rahmens im Gegensatz zu der Technik, die bei den G.723.1 Fehlerverschleierung beschrieben wird. Diese interpolierte Verstärkung, die dann in Schritt (10) für stimmlose Rahmen angewandt wird, erzeugt somit gleichmäßigere, angenehmer klingende Verstärkungsübergänge über Rahmenlöschungen hinweg. Zweitens basiert in Schritt (11) die Sprachklassifizierung sowohl auf der Vorhersageverstärkung als auch der geschätzten Tonhöhenverzögerung im Gegensatz zu der Vorhersageverstärkung alleine, wie das bei der G.723.1 Fehlerverschleierung der Fall ist. Dabei werden Rahmen, deren Vorhersageverstärkung größer als 0,58 dB ist, ebenfalls mit einer Grenz-Tonhöhenverzögerung Pthresh verglichen. Da stimmlose Rahmen hauptsächlich aus HF-Spektren bestehen, ergibt sich bei denjenigen Rahmen, die niedrig geschätzte Tonhöhenverzögerungen und somit hoch geschätzte Tonhöhenfrequenzen haben, dadurch eine größere Wahrscheinlichkeit, daß sie stimmlos sind Rahmen, deren geschätzte Tonhöhenverzögerungen Pthresh unterschreiten, werden somit als stimmlos angenommen, und diejenigen, deren geschätzte Tonhöhenverzögerungen Pthresh überschreiten, werden als stimmhaft angenommen. Durch selektives Bestimmen einer Stimmklassifizierung eines Rahmens auf der Basis sowohl der Vorhersageverstärkung als auch der geschätzten Tonhöhenverzögerung ergibt sich somit insgesamt, daß die Technik der vorliegenden Erfindung wirkungsvoll jegliches Auftreten von hochfrequenten metallisch klingenden Artefakten, die im Ausgang auftreten, ausblendet. Infolgedessen werden die Verständlichkeit und der Komfort für den Hörer verbessert.

Selektive Energiedämpfung

Die selektive Energiedämpfung wurde entwickelt, um Fälle von hochenergetischen Nadelimpulsen zu eliminieren, die man bei Anwendung der G.723.1 Fehlerverschleierung hört. Unter Bezugnahme auf 1 werden diese hochenergetischen Nadelimpulse durch fehlerhafte Schätzung der LPC-Koeffizienten während der Formant-Nachfilterung verursacht, und zwar infolge einer schlechten Vorhersage der LSP- oder Verstärkungsparameter durch die G.723.1 Fehlerverschleierung. Um bessere Schätzwerte für die LSP- und Verstärkungsparameter eines fehlenden Rahmens zu ermöglichen, wurde die lineare Interpolation entwickelt, wie oben beschrieben wurde. Außerdem wird die Signalenergie für jeden synthetisierten Unterrahmen nach der Formant-Nachfilterung mit einer Grenzenergie Sthresh verglichen. Wenn die Signalenergie für irgendeinen der vier Unterrahmen Sthresh überschreitet, werden die Signalenergien für alle verbleibenden Unterrahmen auf einen akzeptablen Energiepegel Smax gedämpft. Diese selektive Energiedämpfungstechnik in Kombination mit der linearen Interpolation eliminiert wirksam alle Fälle von hochenergetischen Nadelimpulsen, ohne der Ausgabe eine merkliche Verschlechterung hinzuzufügen. Insgesamt werden die Verständlichkeit der Sprache und speziell der Komfort für den Hörer verbessert. 3b zeigt die Anwesenheit eines hochenergetischen Nadelimpulses infolge der G.723.1 Fehlerverschleierung, 3c zeigt die Eliminierung des hochenergetischen Nadelimpulses durch die selektive Energiedämpfung und lineare Interpolation.

Energieverringerung

Die Energieverringerung wurde entwickelt; um die Auswirkungen einer "abgehackten" Sprache zu eliminieren, die durch die G.723.1 Fehlerverschleierung erzeugt werden. Wie erläutert wurde, resultiert "abgehackte" Sprache, wenn die G.723.1 Fehlerverschleierung die Ausgabe nach Rekonstruktion von drei fehlenden Rahmen vollständig still macht. Infolgedessen werden bei der Ausgabe Stummintervalle erzeugt, wodurch die Verständlichkeit verringert und eine "abgehackte" Sprache erzeugt wird Zur Beseitigung dieses Problems wurde die Mehrschritt-Energieverringerungstechnik entwickelt. Unter Bezugnahme auf 2 wirkt diese Technik wie folgt:

  • 1. Der Bereitpuffer speichert den aktuellen guten Rahmen zur Verarbeitung, während der Zukunftspuffer den künftigen Rahmen der codierten Sprachsequenz speichert. Es wird eine Kopie der Sprachmodellparameter des aktuellen Rahmens erstellt und in dem Kopienspeicher gespeichert.
  • 2. Der Status des künftigen Rahmens, gut oder fehlend, wird bestimmt. Wenn der künftige Rahmen gut ist, ist keine lineare Interpolation notwendig; das lineare Interpolationsflag wird auf 0 rückgesetzt. Wenn der künftige Rahmen fehlt, ist die lineare Interpolation eventuell notwendig, das lineare Interpolationsflag wird vorübergehend auf 1 gesetzt.
  • 3. Der aktuelle Rahmen wird decodiert und synthetisiert. Eine Kopie des LPC-Synthesefilters und der nachgefilterten Tonhöhenerregung des aktuellen Rahmens wird erstellt.
  • 4. Der künftige Rahmen, der sich ursprünglich im Zukunftspuffer befindet, wird zum aktuellen Rahmen und in dem Bereitpuffer gespeichert. Der nächste Rahmen in der codierten Sprachsequenz kommt als der künftige Rahmen in dem Zukunftspuffer an.
  • 5. Der Wert des linearen Interpolationsflags wird geprüft. Wenn das Flag auf 0 gesetzt ist, erfolgt Rücksprung des Ablaufs zu Schritt (1). Wenn das Flag auf 1 gesetzt ist, springt der Ablauf zu Schritt (6).
  • 6. Der Status des künftigen Rahmens wird bestimmt. Wenn der künftige Rahmen gut ist, wird die lineare Interpolation gemäß der Beschreibung im Unterabschnitt 3.1 angewandt. Wenn der künftige Rahmen fehlt, wird die Energieverringerung angewandt; das Energieverringerungsflag wird auf 1 gesetzt, das lineare Interpolationsflag wird auf 0 rückgesetzt, und der Prozeß springt zu Schritt (7).
  • 7. Die Kopie der nachgefilterten Tonhöhenerregung des vorhergehenden Rahmens aus Schritt (3) wird um (0,5 × Wert des Energieverringerungsflags) db gedämpft.
  • 8. Die Kopie des LPC-Synthesefilters des vorhergehenden Rahmens aus Schritt (3) wird genutzt, um den aktuellen Rahmen unter Nutzung der gedämpften Erregung in Schritt (7) zu synthetisieren.
  • 9. Der künftige Rahmen, der sich ursprünglich im Zukunftspuffer befand, wird zum aktuellen Rahmen und wird in dem Bereitpuffer gespeichert. Der nächste Rahmen in der codierten Sprachsequenz kommt als der künftige Rahmen in dem Zukunftspuffer an.
  • 10. Der aktuelle Rahmen wird unter Anwendung der Schritte (7) bis (9) synthetisiert, dann erfolgt Sprung zu Schritt (11).
  • 11. Der Status des künftigen Rahmens wird bestimmt. Wenn der künftige Rahmen gut ist, wird keine weitere Energieverringerung angewandt; das Energieverringerungsflag wird auf 0 rückgesetzt, und der Ablauf springt zu Schritt (12). Wenn der künftige Rahmen fehlt, wird eine weitere Energieverringerung angewandt; das Energieverringerungsflag wird um 1 inkrementiert, und der Prozeß springt zu Schritt (11).
  • 12. Der künftige Rahmen, der ursprünglich in dem Zukunftspuffer war, wird zum aktuellen Rahmen und in dem Bereitpuffer gespeichert. Der nächste Rahmen der codierten Sprachsequenz kommt in dem Zukunftspuffer als der künftige Rahmen an. Es erfolgt Rücksprung des Prozesses zu Schritt (1).

Durch Anwendung dieser Technik wird die Energie des Ausgangssignals über eine Vielzahl von Paketverlusten hinweg allmählich verringert und beseitigt dadurch die Wirkungen von "abgehackter" Sprache infolge von kompletter Ausgabestille. 4b zeigt die Anwesenheit von kompletter Ausgabestille infolge der G.723.1 Fehlerverschleierung; 4c zeigt die Eliminierung der Ausgabestille infolge der Energieverringerung. Wie 4c zeigt, wird der Ausgang über eine Vielzahl von Paketverlusten hinweg allmählich verringert, wodurch alle Segmente reiner Stille aus der Ausgabe eliminiert werden und für den Hörer eine größere Verständlichkeit erzeugt wird.

Wie oben erörtert wird, besteht einer der klaren Vorteile der Energieverringerung gegenüber der G.723.1 Fehlerverschleierung – abgesehen von der verbesserten Verständlichkeit der Ausgabe – darin, daß relativ weniger Rechenzeit benötigt wird Da die Energieverringerung nur das LMP-Synthesefilter des vorhergehenden Rahmens wiederholt und die nachgefilterte Tonhöhenverstärkung des vorhergehenden Rahmens dämpft, ist die algorithmische Gesamtverzögerung erheblich geringer im Vergleich mit der Durchführung einer vollständigen LSP- und Erregungs-Rückgewinnung, wie das bei der G.723.1 Fehlerverschleierung der Fall ist. Diese Vorgehensweise minimiert die Gesamtverzögerung, so daß der Anwender ein robusteres Echtzeit-Nachrichtenübertragungssystem erhält.

Verbesserte Resultate der Erfindung

Die drei Fehlerverschleierungstechniken wurden in bezug auf verschiedene Lautsprecher in identischen Paketverluststufen getestet, wobei die G.723.1 Fehlerverschleierung angewandt wurde. Eine Serie von informellen Hörtests zeigte, daß bei allen Paketverluststufen die Güte des ausgegebenen Sprachsegments auf die folgende Weise signifikant verbessert wurde: Erstens wurde eine natürlicher klingende Sprache und ein wirksames Ausblenden aller metallisch klingenden Artefakte erreicht aufgrund von gleichmäßigeren spektralen Übergängen über fehlende Rahmen hinweg auf der Basis der linearen Interpolation und der verbesserten Stimmmklassifizierung.

Zweitens wurden alle hochenergetischen Nadelimpulse durch die selektive Energiedämpfung und lineare Interpolation eliminiert. Schließlich wurden alle Fälle von "abgehackter" Sprache durch die Energieverringerung eliminiert. Es ist wichtig zu erkennen, daß mit zunehmenden Netzüberlastungsstufen auch die Paketverlustmenge größer wird. Um also eine Echtzeit-Sprachverständlichkeit aufrechtzuerhalten, ist es wichtig, Techniken zu entwickeln, um Rahmenlöschungen erfolgreich zu maskieren, während gleichzeitig das Maß der Verschlechterung am Ausgang minimiert wird Die von den Autoren entwickelten Strategien stellen Techniken dar, die eine verbesserte Sprachausgabegüte ergeben, bei Anwesenheit von Rahmenlöschungen im Vergleich mit den in Dokument 1 beschriebenen Techniken robuster sind und auf einfache Weise bei jedem parametrischen LPC-basierten Sprachcodierer über jedes Paketvermittlungs- oder Mobilfunknetz anwendbar sind.

Es versteht sich, daß zahlreiche Änderungen und Modifikationen an den oben beschriebenen speziellen Ausführungsformen vorgenommen werden können, ohne vom Umfang der Erfindung gemäß der Definition in den anhängenden Ansprüchen abzuweichen.


Anspruch[de]
  1. Verfahren zum Rückgewinnen eines verlorenen Rahmens für ein System von dem Typ, bei dem Information als aufeinanderfolgende Rahmen von codierten Signalen übertragen und die Information aus den codierten Signalen an einem Empfänger rekonstruiert wird, wobei das Verfahren die folgenden Schritte aufweist:

    Speichern von codierten Signalen von einem ersten Rahmen vor dem verlorenen Rahmen;

    Speichern von codierten Signalen von einem zweiten Rahmen, der auf den verlorenen Rahmen folgt;

    Interpolieren zwischen den codierten Signalen von dem ersten und dem zweiten Rahmen, um rückgewonnene codierte Signale für den verlorenen Rahmen zu erhalten;

    Berechnen einer geschätzten Tonhöhenverzögerung und Vorhersageverstärkung für den ersten Rahmen,

    gekennzeichnet durch

    Klassifizieren des verlorenen Rahmen als stimmhaft und stimmlos auf der Basis der Vorhersageverstärkung und der geschätzten Tonhöhenverzögerung von dem ersten Rahmen.
  2. Verfahren nach Anspruch 1, wobei die codierten Signale eine Vielzahl Line Spectral Pair-Parametern (LSP-Parametern) aufweisen, die jedem Rahmen entsprechen, und der Interpolationsschritt das Interpolieren zwischen LSP-Parametern des ersten Rahmens und den LSP-Parametern des zweiten Rahmens aufweist.
  3. Verfahren nach Anspruch 1, wobei jeder Rahmen eine Vielzahl von Unterrahmen aufweist, wobei das Verfahren den Schrit aufweist: Vergleichen einer Signalenergie für jeden Unterrahmen eines bestimmten Rahmens mit einem Grenzwert und Dämpfen von Signalenergien für sämtliche Unterrahmen in dem bestimmten Rahmen, wenn die Signalenergie in irgendeinem Unterrahmen den Grenzwert überschreitet.
  4. Verfahren nach Anspruch 1, wobei bei Verlust von einer Vielzahl von aufeinanderfolgenden Rahmen das Verfahren den Schritt aufweist: Wiederholen der codierten Signale für einen Rahmen, der der Vielzahl von aufeinanderfolgenden Rahmen unmittelbar vorausgeht, unter gleichzeitigem allmählichem Verringern der Signalenergie für jeden rückgewonnenen Rahmen.
  5. Verfahren nach Anspruch 2, wobei die codierten Signale die LSP-Parameter, feste Codelexikon-Verstärkungen und weitere Erregungssignale aufweisen, wobei das Verfahren aufweist: Interpolieren der festen Codelexikon-Verstärkung des verlorenen Rahmens aus den festen Codelexikon-Verstärkungen des ersten und des zweiten Rahmens und Annehmen der weiteren Erregungssignale von dem ersten Rahmen als die weiteren Erregungssignale des verlorenen Rahmens.
Es folgen 3 Blatt Zeichnungen






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

Patent Zeichnungen (PDF)

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com