DE10124421C1 - Verfahren zur Schätzung eines Codecparameters - Google Patents
Verfahren zur Schätzung eines CodecparametersInfo
- Publication number
- DE10124421C1 DE10124421C1 DE10124421A DE10124421A DE10124421C1 DE 10124421 C1 DE10124421 C1 DE 10124421C1 DE 10124421 A DE10124421 A DE 10124421A DE 10124421 A DE10124421 A DE 10124421A DE 10124421 C1 DE10124421 C1 DE 10124421C1
- Authority
- DE
- Germany
- Prior art keywords
- parameter
- frame
- time
- determined
- interpolation
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000005540 biological transmission Effects 0.000 claims abstract description 17
- 230000003595 spectral effect Effects 0.000 description 27
- 238000013139 quantization Methods 0.000 description 7
- 238000013213 extrapolation Methods 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 230000003321 amplification Effects 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000001755 vocal effect Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/005—Correction of errors induced by the transmission channel, if related to the coding algorithm
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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/06—Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zur Schätzung eines Codecparameters. Es ist insbesondere anwendbar zur Schätzung von Filterkoeffizienten in all ihren bekannten Darstellungsformen, von Verstärkungsfaktoren und von Sprachgrundfrequenzwerten, wie sie beispielsweise bei der Codierung von Sprache auftreten. Für die Schätzung werden extrapolative und interpolative Maßnahmen sowie die lineare Prädiktion in Kombination verwendet.
Description
Die Erfindung betrifft ein Verfahren zur Schätzung eines im
Zuge einer Sprachcodierung auftretenden Parameters,
insbesondere eines Filterkoeffizienten, eines
Verstärkungsfaktors, oder einer Sprachgrundfrequenz.
In digitalen Kommunikationssystemen wie dem Internet oder
Mobilfunksystemen wie beispielsweise GSM oder UMTS werden
Quellcodierverfahren, beispielsweise Sprach-, Audio-, Bild-
oder Videocodierverfahren eingesetzt, um die zu übertragende
Bitrate zu senken. Die Quellcodierverfahren liefern
üblicherweise einen Bitstrom, der in Rahmen aufgeteilt ist.
Im Falle der Sprachübertragung im GSM-System repräsentiert
ein Rahmen sprachcodierter Bits 20 ms des Sprachsignals. Die
Bits innerhalb eines Rahmens repräsentieren unter anderem
einen bestimmten Satz an Parametern. Diese Parameter
beschreiben beispielsweise die spektrale Einhüllende des
Sprachsignals, die Sprachgrundfrequenz, oder eine
Signalenergie beziehungsweise Verstärkung.
Ein Rahmen ist wiederum vielfach in Subrahmen aufgeteilt, so
daß manche Parameter einmal pro Rahmen, andere einmal pro
Subrahmen übertragen werden.
Im Falle des US-TDMA Enhanced Fullrate (EFR) Sprachcodecs
mit 7.4 kbps enthält ein 20 ms-Rahmen 148 bit. Ein Rahmen
besteht hier aus vier Subrahmen. Die Parameter sind hier im
einzelnen:
- - Die 10 Koeffizienten eines Filters, welches die spektrale Einhüllende des Sprachsignals im Bereich des aktuellen Rahmens repräsentiert, werden mit 26 Bit pro Rahmen quantisiert. Diese Koeffizienten werden auch Spektralkoeffizienten oder Spektralparameter genannt.
- - Mittels 4 × 7 bit werden vier Subrahmen eines Anregungssignals für dieses Filter quantisiert.
- - Mittels 2 × 8 bit und 2 × 5 bit werden vier Werte einer Sprachgrundfrequenz repräsentiert.
- - Mittels 4 × 7 bit werden vier Verstärkungsfaktorpaare pro Rahmen vektorquantisiert.
Zusammenfassend läßt sich also sagen, daß die Bits innerhalb
eines Rahmens im allgemeinen einen bestimmten Satz an
Parametern repräsentieren, welcher abhängig vom jeweils
verwendeten Quellcodierverfahren ist.
Dem digitalisierten Signal innerhalb eines Rahmens wurde auf
der Sendeseite durch die sogenannte Quellcodierung Redundanz
entzogen. Auf der Empfangsseite wird dies durch die
Quelldecodierung, etwa die Sprachdecodierung, weitgehend
rückgängig gemacht.
Es kann nun passieren, daß einzelne oder auch mehrere
aufeinanderfolgende Rahmen verlorengehen oder von einer
Netzkomponente als unbrauchbar gekennzeichnet werden. Diese
Rahmen, sogenannte "bad frames", können oder sollen dann
nicht genutzt werden. Der Quelldecodierer, beispielsweise der
Sprachdecodierer, muß auf der Empfangsseite Maßnahmen
ergreifen, daß ein solcher Rahmenverlust nach Möglichkeit
nicht hörbar beziehungsweise im Falle von Bild- oder
Videoübertragungen nicht sichtbar wird. Eine Methode zur
Kompensation von Paketverlusten ist beispielsweise aus EP 070 308 A1
bekannt, eine Methode zur Generierung eines
linearen Prediktionskoeffizienten bei Verlust eines Rahmens
oder eines Pakets aus EP 0673 016 A2.
Im allgemeinen liegt auf der Empfangsseite ein Indikator vor,
der anzeigt, ob ein Rahmen fehlerfrei empfangen wurde, der
sogenannte bad frame indicator (BFI). BFI = 0 bedeutet im
folgenden, daß man davon ausgeht, daß der empfangene Rahmen
korrekt ist, während BFI = 1 auf einen Fehler hindeutet,
beispielsweise daß kein Rahmen rechtzeitig empfangen wurde
oder ein gestörter Rahmen empfangen wurde. Natürlich können
Bit
fehler, das heißt die Umkehrung einzelner Bits, innerhalb ei
nes Rahmens je nach Systemgegebenheiten auftreten. Diese sol
len aber im weiteren entweder keine differenzierte Behandlung
auf der Empfangsseite erfahren, oder der entsprechende Rahmen
wird mit BFI = 1 gekennzeichnet.
Bisher wird im Falle BFI = 1 aus der Vergangenheit des schon
decodierten Sprachsignals beispielsweise durch Korrelations
bildung der gegenwärtige Sprachsignalrahmen geschätzt. Alter
nativ sind Verfahren bekannt, die aus der Vergangenheit der
Sprachcodecparameter die Parameter des aktuellen Rahmens
schätzen, und dann den Decodierer in ähnlicher Weise arbeiten
lassen, als wären diese geschätzten Parameterwerte korrekt.
Hierbei handelt es sich in der Regel um extrapolative Verfah
ren, die nur auf die schon empfangenen Bits oder Parameter
werte zurückgreifen.
Bei der Sprachübertragung über das Internet, beispielsweise
Voice over IP (VoIP), oder bei der Sprachübertragung über das
Internet in Verbindung mit einem Mobilkommunikationssystem
(wie beispielsweise GSM oder UMTS) ist empfangsseitig ein
Pufferspeicher (Buffer) erforderlich, da empfangene Pakete
nicht in einem festen Zeitraster eintreffen, sondern mit un
terschiedlichen Verzögerungszeiten ankommen (delay jitter).
Ein solcher Pufferspeicher kann gegebenenfalls mehrere Rahmen
an Länge umfassen, wodurch zu häufige Rahmenverluste auf Ko
sten einer erhöhten Übertragungsverzögerung verhindert werden
können. Es tritt jedoch auch häufig der Fall ein, daß mehrere
aufeinanderfolgende Rahmen verlorengehen, aber der darauffol
gende Rahmen korrekt empfangen ist. In solchen Fällen ist bei
der Verwendung eines Pufferspeichers eine Interpolation der
Sprachcodecparameter der verlorengegangenen Rahmen anstelle
einer konventionellen Extrapolation vorteilhaft, da sie im
Allgemeinen genauer ist. Eine einfache Lösung wäre eine li
neare Interpolation auf der Basis der Parameterwerte des
letzten decodierten Rahmens (Zeitpunkt t = n - 1) und der Parame
terwerte des korrekt empfangenen Rahmens (Zeitpunkt t = m < n)
über alle m - n dazwischenliegenden verlorengegangenen Rahmen
(Zeitpunkte t = n, n + 1, . . ., m - 1). Ein Pufferspeicher und damit
eine Parameterinterpolation kann auch bei Streaming-
Anwendungen realisiert werden, da sie in der Regel nicht sen
sitiv bezüglich der Verzögerungszeit sind.
Nachteilig wirkt sich jedoch dabei aus, daß es Parameter
gibt, die nicht einfach interpoliert werden können. Dazu zäh
len oftmals die Verstärkungsfaktoren, die Sprachgrundfre
quenzwerte oder auch die Spektralparameter V_i(t) eines
Sprachrahmens zum Zeitpunkt t, weil sie differentiell codiert
sind. Ein Spektralparameter V_i(t) eines Sprachrahmens ist im
Falle einer Sprachcodierung beispielsweise der Filterkoeffi
zient des zeitabhängigen, digitalen Filters, mit dessen Hilfe
der Vokaltrakt modelliert wird:
Sprache wird beispielsweise mittels des LPC-Prinzips (Linear Predictive Coding) codiert. Stimmhafte Laute werden in diesem Falle über eine periodische Folge von Impulsen generiert, stimmlose Laute beispielsweise mittels eines Zufallsrau schens-Generators (Random Noise Generator). Plosivlaute wer den mit Hilfe einer Veränderung der Verstärkung, und der Stimmtrakt mit Hilfe eines zeitlich variierenden digitalen Filters simuliert. Die Koeffizienten dieses variierenden di gitalen Filters erhält man mit Hilfe der linearen Prädiktion, also einer Vorhersage des folgenden Wertes auf der Basis von vorhergehenden Werten.
Sprache wird beispielsweise mittels des LPC-Prinzips (Linear Predictive Coding) codiert. Stimmhafte Laute werden in diesem Falle über eine periodische Folge von Impulsen generiert, stimmlose Laute beispielsweise mittels eines Zufallsrau schens-Generators (Random Noise Generator). Plosivlaute wer den mit Hilfe einer Veränderung der Verstärkung, und der Stimmtrakt mit Hilfe eines zeitlich variierenden digitalen Filters simuliert. Die Koeffizienten dieses variierenden di gitalen Filters erhält man mit Hilfe der linearen Prädiktion, also einer Vorhersage des folgenden Wertes auf der Basis von vorhergehenden Werten.
Unter differentieller oder prädiktiver Codierung versteht man
eine Codierung eines Parameters zu einem Zeitpunkt n, bei der
auch Werte des Parameters zu vor dem Zeitpunkt n liegenden
Zeiten miteinbezogen werden.
Ein Parameter im Sinne der nachfolgenden Ausführungen kann
beispielsweise ein Verstärkungsfaktor, eine Sprachgrundfre
quenz oder ein Spektralparameter sein. Übliche Darstellungs
formen von Spektralparametern sind beispielsweise die Filter
koeffizienten selbst (in sogenannter direkter Form), Autokor
relationskoeffizienten, Reflexionskoeffizienten oder soge
nannte Log-area-Ratios. Eine State-of-the-Art-Darstellung
sind beispielsweise die ISF (imittance spectral frequencies),
LSF (line spectral frequencies) beziehungsweise LSP (line
spectral pairs). Der Einfachheit halber wird ein Parameter im
folgenden ohne Beschränkung der Allgemeinheit als Spektral
koeffizient angenommen.
Eine differentielle Codierung und Decodierung des Parameters
V_i(t) kann beispielsweise in folgender Weise erfolgen:
Sendeseitig wird ein Differenzsignal X_i(t = n) bestimmt gemäß:
X_i(n) = V_i(n) - a_i.Q[X_i(n - 1)], i = 1, 2, . . ., 10, (1)
wobei V_i(n) der zu codierende Parameter ist, a_i ein Prädik
tionskoeffizient, und Q[X_i(n - 1)] das quantisierte Differenz
signal, das für die Codierung von V_i(n - 1) im vorangegangenen
Rahmen bestimmt worden ist. Zur Quantisierung wird oftmals
eine sogenannte Vektorquantisierung verwendet. Darunter ver
steht man die gemeinsame Quantisierung mehrerer X_i(n) für
bestimmte Werte von i. Eine Vektorquantisierung kann auch die
gemeinsame Quantisierung zweier oder mehrerer unterschiedli
cher, in einem Sprachcodierverfahren auftretenden Parameter
typen bedeuten. Im beschriebenen Fall könnte eine Vektor
quantisierung folgendermaßen aussehen: i = 1, 2,3, und i = 4, 5, 6
und i = 7, 8, 9, 10. Das quantisierte Differenzsignal Q[X_i(n)],
i = 1, 2, . . ., 10 wird also durch eine Anzahl von Bits repräsen
tiert, beispielsweise 26 Bit pro Rahmen, und übertragen.
Aus Gleichung (1) ist ersichtlich, daß eine derartige Codie
rung zu einer Datenkompression führt: Der Speicheraufwand für
die Differenzwerte X_i, welche die Differenz von beinahe
gleich großen Zahlen darstellen, ist geringer als für die
Werte von V_i.
Empfangsseitig wird ein quantisierter Wert W_i(n) des Spek
tralparameters V_i(n) aus dem aktuell empfangenen Differenz
signalwert Q[X_i(n)] und dem zuvor empfangenen Q[X_i(n - 1)]
rekonstruiert:
W_i(n) = a_i.Q[X_i(n - 1)] + Q[X_i(n)], i = 1, 2, . . ., 10 (2)
Die hier beschriebene Form der Parameterdecodierung ist üb
lich in vielen gegenwärtig benutzten Codierverfahren, unter
anderem beispielsweise im AMR- und EFR-Sprachcodierer (adap
tive multi-rate beziehungsweise enhanced full-rate). Prinzi
piell sind natürlich auch höhere Ordnungen der Prädiktion
vorstellbar. Üblicherweise werden die in den Gleichungen (1),
(2) genannten Vorschriften für den um den Mittelwert gemin
derten Parameterwert durchgeführt. Der Mittelwert wird zum
Schluß als Addition einer Konstanten wieder hinzugefügt.
Eine prädiktive Codierung, wie sie oben beispielhaft darge
stellt ist, weist für eine interpolative Bestimmung der Spek
tralkoeffizienten fehlender Rahmen Nachteile auf:
Bei einer prädiktiven Quantisierung erster Ordnung (siehe Gleichungen (1) und (2)) ist es für eine interpolative Be stimmung des quantisierten Parameterwertes W_i(n) erforder lich, daß zwei aufeinanderfolgende Werte des quantisierten Differenzsignales {Q[X_i(m)], Q[X_i(m + 1)]} empfangen werden, was gerade bei paketvermittelten Übertragungsweisen oft nicht der Fall ist. Dieser Sachverhalt wird im folgenden etwas ge nauer beleuchtet; dazu wird das quantisierte Differenzsignal Q[X_i(n)] im folgenden als Größe Y_i(n) bezeichnet:
Es gilt also:
Bei einer prädiktiven Quantisierung erster Ordnung (siehe Gleichungen (1) und (2)) ist es für eine interpolative Be stimmung des quantisierten Parameterwertes W_i(n) erforder lich, daß zwei aufeinanderfolgende Werte des quantisierten Differenzsignales {Q[X_i(m)], Q[X_i(m + 1)]} empfangen werden, was gerade bei paketvermittelten Übertragungsweisen oft nicht der Fall ist. Dieser Sachverhalt wird im folgenden etwas ge nauer beleuchtet; dazu wird das quantisierte Differenzsignal Q[X_i(n)] im folgenden als Größe Y_i(n) bezeichnet:
Es gilt also:
W_i(n) = a_i.Y_i(n - 1) + Y_i(n), i = 1, 2, . . ., 10. (3)
Es sei im folgenden angenommen, daß der letzte, bereits gemäß
Gleichung (3) decodierte Rahmen zum Zeitpunkt t = n - 1 ge
hört, und daß aktuell der Rahmen t = n decodiert werden
soll, aber BFI(n) = 1 gilt, also ein "schlechter" Rahmen
vorliegt. Es sei nun der Rahmen t = m < n der erste Rahmen
nach t = n - 1, für den BFI = 0 gilt. Die Spektralkoeffizien
ten aller anderen m - n dazwischenliegenden Rahmen mit BFI = 1
sollen nun interpoliert werden. Der Spektralkoeffizient
W_i(n - 1) bildet nun die untere (das heißt in der Vergangen
heit liegende) Stützstelle der Interpolation. Der Spektral
koeffizient W_i(m) sollte normalerweise die obere (das heißt
in der Zukunft liegende) Stützstelle der Interpolation bil
den. Er kann bei prädiktiver Codierung jedoch nicht berechnet
werden, da für Gleichung (3) zwar die Größe Y_i(m) empfangen
wurde, Y_i(m - 1) aber nach Voraussetzung fehlt. Erst nach zwei
aufeinanderfolgenden korrekt empfangenen Rahmen m und m + 1
könnte ein Spektralkoeffizient W_i(m + 1) = a_i.Y_i(m) +
Y_i(m + 1) berechnet werden und empfangsseitig als Stützstelle
zu einer Interpolation dienen. Dies verlangt jedoch prinzipi
ell eine zusätzliche Verzögerung von einem Rahmen, was zumin
dest für bidirektionale Sprachübertragung ein erhebliches
Problem darstellt, beziehungsweise zwei aufeinanderfolgende
Rahmen mit BFI = 0, was insbesondere bei paketvermittelten
Übertragungsmodi nicht immer gegeben ist.
Bei Prädiktion L-ter Ordnung verschärft sich das Problem bei
den oben genannten Aspekten entsprechend: Die differentielle
Decodierung nach Gleichung (2) erfordert L + 1 aufeinanderfol
gende Größen oder Differenzsignale Y_i(t), das heißt zur In
terpolation der Spektralkoeffizienten vorangegangener Rahmen
mit BFI = 1 muß eine Anzahl von L + 1 aufeinanderfolgenden kor
rekten Rahmen empfangen werden, um im letzten dieser Rahmen
wieder einen völlig fehlerfreien Satz von Spektralkoeffizien
ten und damit eine obere Stützstelle zur Interpolation zu er
halten.
Auch wenn in gängigen Sprachcodierverfahren aus dem Grunde
der Fehlerfortpflanzung oftmals eine lineare Prädiktion mit
L = 1 gewählt ist, so läßt sich zusammenfassend sagen, daß doch
zwei aufeinanderfolgende korrekte Rahmen empfangen werden
müssen, bevor man wieder einen korrekten Spektralkoeffizien
ten W_i(m + 1) erhält. Dies ist statistisch gesehen natürlich
weniger wahrscheinlich, als der Empfang eines korrekten Rah
mens. Diese Tatsache resultiert in der Regel in höheren Verzögerungszeiten,
was für echtzeit-sensitive Applikationen
nicht tolerierbar ist.
Der vorliegenden Erfindung liegt daher die Aufgabe zugrunde,
ein Verfahren anzugeben, mit dem sich Codecparameter emp
fangsseitig bestimmen lassen, auch wenn die zugrundeliegenden
Daten in einzelnen oder mehreren aufeinanderfolgenden Zeitbe
reichen fehlen.
Diese Aufgabe wird durch die unabhängigen Ansprüche 1 und 2
gelöst. Weiterbildungen ergeben sich aus den abhängigen An
sprüchen.
Die Erfindung betrifft ein Verfahren zur empfangsseitigen
Schätzung eines zeitlich variablen Parameters zu einem n-ten
Zeitpunkt. Der Parameter wurde sendeseitig prädiktiv codiert
und wird empfangsseitig in Abhängigkeit von mindestens zwei
Größen interpolativ ermittelt. Eine Stützstelle der Interpo
lation, die erste Größe, bildet ein früherer Wert des Parame
ters, der bereits decodiert wurde, eine zweite Stützstelle
der Interpolation, die zweite Größe, wird durch extrapolative
Maßnahmen ermittelt.
Die interpolative Ermittlung des Parameters kann mittels be
kannter Interpolationsmaßnahmen, beispielsweise mittels li
nearer Interpolation zwischen erster und zweiter Größe erfol
gen. Bei einer Ausführungsvariante wird zur Interpolation
auch eine gewichtete Summation verwendet.
Der Vorteil dieses Verfahrens liegt darin, daß eine Interpo
lation zur Ermittlung des Parameters durchgeführt werden
kann, sobald die zweite Größe bekannt ist.
Die Erfindung betrifft ferner ein Verfahren zur empfangssei
tigen Schätzung eines einem n-ten Rahmen zugeordneten
Codecparameters. Der Codecparameter ist sendeseitig prädiktiv
codiert und wird empfangsseitig als Funktion von zumindest
zwei Signalen mittels einer Interpolation bestimmt. Eine
Stützstelle der Interpolation wird durch den zuvor decodier
ten Parameter des (n - 1)-ten Rahmens gebildet, eine weitere
Stützstelle wird durch den Parameter des m-ten Rahmens mit m
< n gebildet, welcher durch extrapolative Maßnahmen ermittelt
wurde.
Eine Weiterbildung besteht darin, daß eine Interpolation dann
erfolgt, sobald die Daten eines korrekten Rahmens vorliegen.
Dies hat den Vorteil einer kurzen Verzögerungszeit bei
gleichzeitigem Einsatz einer interpolativen Maßnahme zur Pa
rameterschätzung.
Eine andere Weiterbildung sieht vor, daß die Qualität des
Empfangs durch eine Indikatorgröße angezeigt wird. Diese In
dikatorgröße kann z. B. der "bad frame"-Indicator BFI sein.
Die Erfindung wird im Folgenden anhand einiger Ausführungs
beispiele genauer erläutert.
Im weiteren zeigt
Fig. 1 die Simulationsergebnisse einer GSM-Vollratenkanal-
Übertragung, wobei die Ergebnisse verschiedener Ex
trapolationsmethoden dargestellt sind.
In einer möglichen Ausführungsform werden die differentiell
codierten Parameter einem Vorgehen unterzogen, welches aus
zwei Schritten besteht: Zunächst werden die Parameter der
Rahmen, bei denen ein schlechter Empfang, BFI = 1, vorliegt,
extrapolativ geschätzt. Auf dieser Grundlage kann nun der er
ste wieder korrekt empfangene Rahmen decodiert werden. Er
bildet dann die Basis für eine interpolative Neuschätzung der
Parameter der davorliegenden Rahmen mit BFI = 1.
Bei jedem empfangenen Rahmen mit BFI = 1, also einem nicht
fehlerfrei vorliegenden Rahmen, ist es vorgesehen, zunächst
eine konventionelle Extrapolation der Parameter vorzunehmen.
Dies umfaßt (zumindest im letzten Rahmen mit BFI = 1 vor einem
Rahmen mit BFI = 0) bei differentiell codierten Parametern eine
Berechnung des guantisierten Differenzsignals oder der Größe
Y "im Nachhinein". Dieses konventionelle Vorgehen sieht im
eingangs angegebenen Beispiel vor, daß nach der extrapolati
ven Bestimmung von W_i(n) im Rahmen t = n nach Gleichung (3)
die Größe Y_i(n) bestimmt wird durch Umstellung von Gleichung
(3):
Y_i(n) = W_i(n) - a_i.Y_i(n - 1), i = 1, 2, . . ., 10, (4)
Damit liegt zum Zeitpunkt t = n + 1 wieder ein Differenzsignal
des vorangegangenen Rahmens vor, also Y_i(n), so daß jeder
zeit wieder mittels Gleichung (3) decodiert werden kann.
Durch das (vorläufige) extrapolative Vorgehen kann also eine
obere Stützstelle W_i(m) bestimmt werden, wenn denn nur für
den Rahmen m BFI(m) = 0 gilt. Kein weiterer korrekter Rahmen
ist erforderlich. Die Interpolation der m - n zurückliegenden
Rahmen kann direkt zum Zeitpunkt t = m erfolgen.
Wegen des Gedächtnisses der differentiellen Codierung ist
die Stützstelle W_i(m) mit Fehlern behaftet. Dieser Fehler
verschwindet vollständig nur beim Empfang von L aufeinander
folgenden Rahmen mit BFI = 0. Eigene, zum Testen dieses Ver
fahrens durchgeführte Simulationen zeigen jedoch, daß W_i(m)
als obere Stützstelle verwendet werden kann, um eine gegen
über dem Stand der Technik wesentlich verbesserte Approxima
tion der Parameter zu ermöglichen. Der wesentliche Vorteil
dieses Verfahrens ist, dass ein Fehlerburst, das heißt eine
Folge von m - n bad frames, durch Abwarten eines einzigen kor
rekten Rahmens interpoliert werden kann, und zwar auch, wenn
differentiell codierte Parameter vorhanden sind. Keine zu
sätzliche Verzögerung ist nötig; außerdem wird der stati
stisch seltenere Fall von L aufeinanderfolgenden Rahmen mit
BFI = 0 nicht vorausgesetzt.
In einem ersten Ausführungsbeispiel werden nun differentiell,
mit einer Prädiktion erster Ordnung, also L = 1, codierte Para
meter betrachtet:
Dazu werden folgende Annahmen getroffen:
Dazu werden folgende Annahmen getroffen:
- - Der Spektralkoeffizient W_i(n - 1) sei bereits decodiert,
- - Y_i(n - 1) liege entweder empfangen [BFI(n - 1) = 0] oder nach Gleichung (4) rekonstruiert vor [BFI(n - 1) = 1].
- - Als Resultat des nachfolgend genannten rekursiven Algorith mus' liegen auch Y_i(n), . . ., Y_i(n + K - 1) vor.
- - Der aktuelle Zeitpunkt sei t = n + K, zu diesem Zeitpunkt solle der Spektralkoeffizient W_i(n) bestimmt werden.
Das heißt also, daß eine Zeitverzögerung von K Rahmen zur In
terpolation erlaubt ist.
Das Vorgehen erfolgt nun in zwei Schritten:
- a) Operationen am Rahmen n + K:
Falls BFI(n + K) = 0: Berechne W_i(n + K) nach Gleichung (3).
Falls BFI(n + K) = 1: Berechne eine vorläufige extrapolierte Version W_i(n + K) mit einem beliebigen extrapolativen Verfah ren. - b) Decodiere den Rahmen n:
Falls BFI(n) = 0: Berechne W_i(n) nach Gleichung (3).
Falls BFI(n) = 1: Berechne m < n, wobei m der erste Rahmen mit BFI(m) = 0 nach dem Rahmen n ist.
Falls m < n + K: Berechne mit einem beliebigen Extrapolations verfahren W_i(n).
Falls m < = n + K: Dann liegt für Rahmen m als korrekt empfangener Rahmen ja bereits ein vorläufig extrapolativ be stimmter Spektralkoeffizientwert W_i(m) vor. Er bildet die obere (oder zukünftige) Stützstelle für eine Interpolation des Parameters W_i(n). Die untere (oder zurückliegende) Stützstelle sei der Spektralkoeffizient W_i(n - 1).
Man kann nun zum Beispiel eine lineare Interpolation durch
führen. Dies geschieht unter Berücksichtigung der zeitlichen
Abstände des Rahmens n zu den Stützstellen durch:
W_i(n) = [W_i(n - 1) - W_i(m)].(m - n)/(m - n + 1) + W_i(m).
Die obere Stützstelle W_i(m) ist bereits vorläufig extrapola
tiv bestimmt, die untere Stützstelle W_i(n - 1) bereits endgül
tig decodiert.
In Fig. 1 ist eine Simulation einer GSM-Vollratenkanal-
Übertragung mit diversen C/I-Verhältnissen (carrier-to-
interferer-ratio), welche die Kanalqualität beschreiben, zu
sehen. Für die Kurven ist die spektrale Verzerrung (spectral
distortion, SD), ein übliches Qualitätsmaß für die Codierung
beziehungsweise Übertragung von Spektralkoeffizienten gegen
das C/I-Verhältnis aufgetragen. Je höher die SD ist, umso
schlechter ist die empfangsseitige Sprachqualität.
Kurve 1 zeigt eine Extrapolation, wie sie in bisherigen Deco
dierungsmethoden verwendet wird. Die Kurven 2 bis 5 zeigen
die Ergebnisse für das obige Ausführungsbeispiel in Abhängig
keit von der Größe K, welche die maximal erlaubte Zeitverzö
gerung in Rahmen angibt. Dabei weist Kurve 2 eine Verzögerung
um einen Rahmen (K = 1), Kurve 3 eine Verzögerung um zwei Rah
men (K = 2), Kurve 4 eine Verzögerung um drei Rahmen (K = 3) und
Kurve 5 eine Verzögerung von vier Rahmen (K = 4) auf.
Man sieht, daß schon mit einer Verzögerung von einem einzigen
Rahmen (K = 1) ein enormer Gewinn zu erzielen ist, mehr als K = 2
zukünftige Rahmen bringen keinen großen zusätzlichen Gewinn.
Diese Simulationsergebnisse sind äußerst vorteilhaft für die
Übertragung echtzeitsensitiver Applikationen, da hier ja nur
eine geringe Verzögerung erlaubt ist. Bei sehr niedrigen C/I-
Verhältnissen sieht man jedoch leichte Unterschiede für die
verschiedenen Verzögerungswerte (K = 1, 2, 3, 4). Die Ursache
hierfür ist, daß bei einem derart schlechten C/I-Verhältnis
häufig mehrere aufeinanderfolgende Rahmen "bad frames" sind.
Neben den oben erläuterten Beispielen liegt eine Vielzahl
weiterer Ausführungsvarianten im Rahmen der Erfindung, die
hier nicht weiter beschrieben werden. Sie lassen sich aber
anhand der vorausgegangenen Ausführungen vom Fachmann ohne
großen Aufwand in die Praxis umsetzen.
Claims (4)
1. Verfahren zur empfangsseitigen Schätzung des Wertes eines
zeitlich variablen Parameters zu einem n-ten Zeitpunkt,
wobei der Parameter sendeseitig prädiktiv codiert ist,
bei dem der Parameter empfangsseitig als Funktion von min destens zwei Größen bestimmt wird,
dadurch gekennzeichnet, daß
der Parameter empfangsseitig interpolativ ermittelt wird,
wobei ein Wert des decodierten Parameters, der einem frühe ren als dem n-ten Zeitpunkt zugeordnet ist, die erste Größe darstellt, welche eine Stützstelle der Interpolation bil det, und
eine durch extrapolative Maßnahmen ermittelte zweite Größe, die einem Zeitpunkt nach dem n-ten Zeitpunkt zugeordnet ist, eine weitere Stützstelle der Interpolation bildet.
wobei der Parameter sendeseitig prädiktiv codiert ist,
bei dem der Parameter empfangsseitig als Funktion von min destens zwei Größen bestimmt wird,
dadurch gekennzeichnet, daß
der Parameter empfangsseitig interpolativ ermittelt wird,
wobei ein Wert des decodierten Parameters, der einem frühe ren als dem n-ten Zeitpunkt zugeordnet ist, die erste Größe darstellt, welche eine Stützstelle der Interpolation bil det, und
eine durch extrapolative Maßnahmen ermittelte zweite Größe, die einem Zeitpunkt nach dem n-ten Zeitpunkt zugeordnet ist, eine weitere Stützstelle der Interpolation bildet.
2. Verfahren zur empfangsseitigen Schätzung eines einem n-ten
Rahmen zugeordneten Codecparameters,
bei dem der Codecparameter sendeseitig prädiktiv codiert ist,
bei dem der Codecparameter empfangsseitig als Funktion von mindestens zwei Größen bestimmt wird,
dadurch gekennzeichnet, daß
der Codecparameter interpolativ ermittelt wird, wobei der zuvor decodierte Codecparameter des (n - 1)-ten Rahmens eine Stützstelle der Interpolation und die erste Größe bildet,
und ein durch extrapolative Maßnahmen ermittelter Parameter eines m-ten Rahmens, wobei m < n ist, eine andere Stütz stelle der Interpolation und die zweite Größe bildet.
bei dem der Codecparameter sendeseitig prädiktiv codiert ist,
bei dem der Codecparameter empfangsseitig als Funktion von mindestens zwei Größen bestimmt wird,
dadurch gekennzeichnet, daß
der Codecparameter interpolativ ermittelt wird, wobei der zuvor decodierte Codecparameter des (n - 1)-ten Rahmens eine Stützstelle der Interpolation und die erste Größe bildet,
und ein durch extrapolative Maßnahmen ermittelter Parameter eines m-ten Rahmens, wobei m < n ist, eine andere Stütz stelle der Interpolation und die zweite Größe bildet.
3. Verfahren nach einem der vorangegangenen Ansprüche, bei
dem eine Interpolation durchgeführt wird, sobald die Daten zu
nur einem korrekten Rahmen empfangen werden.
4. Verfahren nach einem der vorhergehenden Ansprüche, bei
dem die Qualität des Empfangs durch eine Indikatorgröße ange
zeigt wird.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10124421A DE10124421C1 (de) | 2001-05-18 | 2001-05-18 | Verfahren zur Schätzung eines Codecparameters |
PCT/DE2002/001546 WO2002095733A1 (de) | 2001-05-18 | 2002-04-26 | Verfahren zur schätzung eines codecparameters |
EP02729881A EP1390946B1 (de) | 2001-05-18 | 2002-04-26 | Verfahren zur schätzung eines codecparameters |
DE50201242T DE50201242D1 (de) | 2001-05-18 | 2002-04-26 | Verfahren zur schätzung eines codecparameters |
US10/478,080 US20040138878A1 (en) | 2001-05-18 | 2002-04-26 | Method for estimating a codec parameter |
CNB028101332A CN1244905C (zh) | 2001-05-18 | 2002-04-26 | 评估编解码参数的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10124421A DE10124421C1 (de) | 2001-05-18 | 2001-05-18 | Verfahren zur Schätzung eines Codecparameters |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10124421C1 true DE10124421C1 (de) | 2002-10-17 |
Family
ID=7685380
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10124421A Expired - Fee Related DE10124421C1 (de) | 2001-05-18 | 2001-05-18 | Verfahren zur Schätzung eines Codecparameters |
DE50201242T Expired - Lifetime DE50201242D1 (de) | 2001-05-18 | 2002-04-26 | Verfahren zur schätzung eines codecparameters |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE50201242T Expired - Lifetime DE50201242D1 (de) | 2001-05-18 | 2002-04-26 | Verfahren zur schätzung eines codecparameters |
Country Status (5)
Country | Link |
---|---|
US (1) | US20040138878A1 (de) |
EP (1) | EP1390946B1 (de) |
CN (1) | CN1244905C (de) |
DE (2) | DE10124421C1 (de) |
WO (1) | WO2002095733A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004097795A2 (en) * | 2003-04-30 | 2004-11-11 | Coding Technologies Ab | Adaptive voice enhancement for low bit rate audio coding |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5233986B2 (ja) * | 2007-03-12 | 2013-07-10 | 富士通株式会社 | 音声波形補間装置および方法 |
CN103219998B (zh) * | 2013-03-27 | 2016-01-20 | 哈尔滨工业大学 | 一种多通道压缩感知框架下的混合参数估计方法 |
US11582462B1 (en) | 2021-07-14 | 2023-02-14 | Meta Platforms, Inc. | Constraint-modified selection of video encoding configurations |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0673016A2 (de) * | 1994-03-14 | 1995-09-20 | AT&T Corp. | Erzeugung von linearen Prädiktionskoeffizienten bei Ausfall von Datenrahmen oder Verlust von Datenpaketen |
EP0707308A1 (de) * | 1994-10-14 | 1996-04-17 | AT&T Corp. | Kompensationsverfahren bei Rahmenauslöschung oder Paketverlust |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3102015B2 (ja) * | 1990-05-28 | 2000-10-23 | 日本電気株式会社 | 音声復号化方法 |
US5615298A (en) * | 1994-03-14 | 1997-03-25 | Lucent Technologies Inc. | Excitation signal synthesis during frame erasure or packet loss |
US5574825A (en) * | 1994-03-14 | 1996-11-12 | Lucent Technologies Inc. | Linear prediction coefficient generation during frame erasure or packet loss |
US6351730B2 (en) * | 1998-03-30 | 2002-02-26 | Lucent Technologies Inc. | Low-complexity, low-delay, scalable and embedded speech and audio coding with adaptive frame loss concealment |
US7117156B1 (en) * | 1999-04-19 | 2006-10-03 | At&T Corp. | Method and apparatus for performing packet loss or frame erasure concealment |
-
2001
- 2001-05-18 DE DE10124421A patent/DE10124421C1/de not_active Expired - Fee Related
-
2002
- 2002-04-26 WO PCT/DE2002/001546 patent/WO2002095733A1/de active IP Right Grant
- 2002-04-26 EP EP02729881A patent/EP1390946B1/de not_active Expired - Lifetime
- 2002-04-26 DE DE50201242T patent/DE50201242D1/de not_active Expired - Lifetime
- 2002-04-26 US US10/478,080 patent/US20040138878A1/en not_active Abandoned
- 2002-04-26 CN CNB028101332A patent/CN1244905C/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0673016A2 (de) * | 1994-03-14 | 1995-09-20 | AT&T Corp. | Erzeugung von linearen Prädiktionskoeffizienten bei Ausfall von Datenrahmen oder Verlust von Datenpaketen |
EP0707308A1 (de) * | 1994-10-14 | 1996-04-17 | AT&T Corp. | Kompensationsverfahren bei Rahmenauslöschung oder Paketverlust |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004097795A2 (en) * | 2003-04-30 | 2004-11-11 | Coding Technologies Ab | Adaptive voice enhancement for low bit rate audio coding |
WO2004097795A3 (en) * | 2003-04-30 | 2005-01-13 | Coding Tech Ab | Adaptive voice enhancement for low bit rate audio coding |
Also Published As
Publication number | Publication date |
---|---|
CN1244905C (zh) | 2006-03-08 |
EP1390946B1 (de) | 2004-10-06 |
CN1509468A (zh) | 2004-06-30 |
US20040138878A1 (en) | 2004-07-15 |
DE50201242D1 (de) | 2004-11-11 |
EP1390946A1 (de) | 2004-02-25 |
WO2002095733A1 (de) | 2002-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60125219T2 (de) | Spektralmerkmal ersatz für die verschleierung von rahmenfehlern in einem sprachdekoder | |
DE69911169T2 (de) | Verfahren zur dekodierung eines audiosignals mit korrektur von übertragungsfehlern | |
DE60132217T2 (de) | Übertragungsfehler-verdeckung in einem audiosignal | |
DE69132013T2 (de) | Verfahren für sprachquantisierung und fehlerkorrektur | |
DE60117471T2 (de) | Breitband-signalübertragungssystem | |
DE60121405T2 (de) | Transkodierer zur Vermeidung einer Kaskadenkodierung von Sprachsignalen | |
DE60117144T2 (de) | Sprachübertragungssystem und verfahren zur behandlung verlorener datenrahmen | |
DE60316396T2 (de) | Interoperable Sprachkodierung | |
DE60214814T2 (de) | Verfahren und Vorrichtung zur Beseitigung von Diskontinuitäten eines adaptiv gefilterten Signals | |
DE69718307T2 (de) | Verfahren und zusammenstellung zur wiederherstellung eines empfangenen sprachsignals | |
DE69317958T2 (de) | Kodierer von Audiosignalen mit niedriger Verzögerung, unter Verwendung von Analyse-durch-Synthese-Techniken | |
DE60220485T2 (de) | Verfahren und Vorrichtung zur Verschleierung von Rahmenausfall von prädiktionskodierter Sprache unter Verwendung von Extrapolation der Wellenform | |
DE69330022T2 (de) | Sprachdekoder | |
DE69328064T2 (de) | Zeit-Frequenzinterpolation mit Anwendung zur Sprachkodierung mit niedriger Rate | |
DE69329569T2 (de) | Digitale Kodierung von Sprachsignalen | |
DE60122751T2 (de) | Verfahren und vorrichtung für die objektive bewertung der sprachqualität ohne referenzsignal | |
EP0978172B1 (de) | Verfahren zum verschleiern von fehlern in einem audiodatenstrom | |
DE69033510T2 (de) | Numerischer sprachkodierer mit verbesserter langzeitvorhersage durch subabtastauflösung | |
EP2385521A1 (de) | Steganographie in digitalen Signal-Codierern | |
DE102008042579A1 (de) | Verfahren zur Fehlerverdeckung bei fehlerhafter Übertragung von Sprachdaten | |
EP1953739A2 (de) | Verfahren und Vorrichtung zur Geräuschunterdrückung | |
DE602004007550T2 (de) | Verbesserte frequenzbereichs-fehlerverbergung | |
DE69902480T2 (de) | Verfahren zur quantisierung der parameter eines sprachkodierers | |
DE68917584T2 (de) | Zur Sprachqualitätsverbesserung geeignetes Kodiergerät unter Anwendung einer Doppelanlage zur Pulserzeugung. | |
DE3884839T2 (de) | Codierung von akustischen Wellenformen. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8100 | Publication of patent without earlier publication of application | ||
D1 | Grant (no unexamined application published) patent law 81 | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |