DE69329569T2 - Digitale Kodierung von Sprachsignalen - Google Patents
Digitale Kodierung von SprachsignalenInfo
- Publication number
- DE69329569T2 DE69329569T2 DE69329569T DE69329569T DE69329569T2 DE 69329569 T2 DE69329569 T2 DE 69329569T2 DE 69329569 T DE69329569 T DE 69329569T DE 69329569 T DE69329569 T DE 69329569T DE 69329569 T2 DE69329569 T2 DE 69329569T2
- Authority
- DE
- Germany
- Prior art keywords
- signal
- excitation
- prediction parameters
- partial
- coding
- 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 - Lifetime
Links
- 230000005284 excitation Effects 0.000 claims description 114
- 230000015572 biosynthetic process Effects 0.000 claims description 46
- 238000003786 synthesis reaction Methods 0.000 claims description 43
- 238000000034 method Methods 0.000 claims description 32
- 238000004458 analytical method Methods 0.000 claims description 26
- 238000001914 filtration Methods 0.000 claims description 8
- 239000013598 vector Substances 0.000 claims description 8
- 238000013139 quantization Methods 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 3
- 230000000694 effects Effects 0.000 claims description 2
- 238000001228 spectrum Methods 0.000 claims 6
- 230000005540 biological transmission Effects 0.000 description 5
- 238000001308 synthesis method Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000002194 synthesizing effect Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000010998 test method 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/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/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
- Die Erfindung betrifft ein Verfahren und eine Vorrichtung zur digitalen Codierung von Sprachsignalen bei niedrigen Übertragungsraten.
- In den letzten Jahren sind bei der digitalen Codierung eines Sprachsignals bei niedrigen Übertragungsraten mit dem Analyse/Synthese-Verfahren gute Ergebnisse erzielt worden. In Codierern, die auf derartigen Analyse/Synthese-Verfahren basieren, wird der Decoderbetrieb bereits im Codierer simuliert, und das durch jede Parameterkombination bereitgestellte Syntheseergebnis analysiert. Die Parameter, die das Sprachsignal repräsentieren, werden gemäß derjenigen der auswählbaren Kombinationen ausgewählt, die im Vergleich zum ursprünglichen Sprachsignal das beste Decodierergebnis liefert. Bei dem Analyse/Synthese-Verfahren werden die zu verwendenden Syntheseparameter folglich basierend auf dem aufgebauten Sprachsignal bestimmt. Ein derartiges Verfahren wird auch als abgeschlossenes System Verfahren bezeichnet, da das Syntheseergebnis die Auswahl der Syntheseparameter direkt steuert.
- Bei der Sprachcodierung kann die Suche in einem abgeschlossene System nur für die kritischsten Parameter verwendet werden, und zwar aufgrund der Komplexität der Suche, zum Beispiel um das Erregungssignal in Codierern unter Verwendung des linearen Vorhersagemodels (LPG-Modell) zu codieren. Diese Sprachcodierungsverfahren bei niedriger Übertragungsrate umfassen MPEC (Multi-Pulse Excitation Coding) und CELP (Code Excitation Linear Prediction). Die Realisierung sowohl von MPEC als auch von CELP erfordert einen erheblichen Rechenaufwand und verursacht einen hohen Leistungsverbrauch, weshalb diese in der Praxis schwierig zu realisieren und zu verwenden sind.
- Mit Hilfe einiger Vereinfachungen ist es in letzter Zeit möglich geworden unter Verwendung von digitalen Signalprozessoren Analyse/Synthese-Verfahren in Echtzeit zu realisieren, jedoch ist aufgrund von Problemen in bezug auf die oben genannte Rechenlast und den Leistungs- und Speicherverbrauch eine übermäßige Verwendung unpraktisch und in vielen Anwendungen unmöglich. Analyse/Synthese-Verfahren sind zum Beispiel in der US 4,472,832 und US 4,817,157 erklärt.
- Für eine effiziente Codierung des Erregungssignals sind auch LPG (Linear Predictive Coding)-Verfahren verwendet worden, die auf einem offenen System basieren, bei dem ein Teil der Abtastwerte direkt aus dem vom Decoder zu übertragenden gefilterten Analysesignal (Differenzsignal) ausgewählt werden. Dieses Verfahren erzielt typischerweise ein schlechteres Ergebnis als das Rückkopplungsverfahren, da bei diesen Verfahren das Syntheseergebnis überhaupt nicht geprüft wird, und die Erregungsabtastwerte nicht auf Basis der Abtastsignalwertkombination ausgewählt werden, die das beste aufgebaute Signal liefert, wie dies bei den oben genannten abgeschlossenen System Codierern der Fall ist. Um eine niedrige Übertragungsrate zu erzielen muß die Anzahl der Abtastwerte reduziert oder ausgewählt werden. Dies kann zum Beispiel durch Reduktion der Abtastfrequenz des umgekehrt gefilterten Signals erfolgen. Ein derartiges Verfahren ist zum Beispiel in der US 4,752,956 erklärt.
- Das Problem liegt darin eine gute Sprachqualität zu erzielen, und zwar unter Verwendung von Verfahren, bei denen das Erregungssignal direkt von den Differenzsignalabtastwerten ausgewählt wird. Wenn die Erregung nur auf der Basis des Differenzsignals ausgewählt wird, und das aktuelle Syntheseergebnis nicht zur Steuerung der Bildung der Erregung verwendet wird, dann wird das Sprachsignal während der Codierung leicht verzerrt und seine Qualität verschlechtert.
- Der Stand der Technik wird im folgenden unter Bezugnahme auf die beigefügte Fig. 1 beschrieben, in der ein Ausführungsbeispiel einer bereits bekannten Lösung gezeigt ist.
- Fig. 1 zeigt ein Blockdiagramm eines bereits bekannten Analyse/Synthese - Codiersystems vom CELP - Typ. Die in Frage kommende Codierung ist ein CELP- Codierung. In dem Codierer wird die Suche nach dem Erregungssignal durch Synthese realisiert, indem alle möglichen Erregungsalternativen getestet werden, die in einem sogenannten Codebuch 100 enthalten sind, und indem Sprachsignalrahmen korrespondierend zu den Alternativen (in Blöcken von etwa 10-30 ms) in einem Synthesefilter 102 aufgebaut werden. Das aufgebaute Sprachsignal wird mit dem zu codierenden Sprachsignal 103 in den Differenzmitteln 104 verglichen, die ein Signal erzeugen, das den Fehler repräsentiert. Das Fehlersignal kann weiter verarbeitet werden, wobei in dem Gewichtungsblock 105 einige Merkmale des menschlichen Hörvermögens im Fehlersignal berücksichtigt werden. Der Fehlerberechnungsblock 106 berechnet das Syntheseergebnis, das erhalten wird, indem jeder der im Codebuch enthaltenen möglichen Erregungsvektoren verwendet wird. Folglich erhält man Information über die Qualität, die durch die Verwendung jeder getesteten Erregung bereitgestellt wird. Der Erregungsvektor, der den minimalsten Fehler liefert, wird ausgewählt, um über die Steuerlogik 101 an den Decoder übertragen zu werden. An den Decoder wird die Adresse der Codebuch-Speicherstelle übertragen, an der das beste in dem Codebuch enthaltene Erregungssignal gefunden wurde.
- Das bei der MPEC-Codierung verwendete Erregungssignal wird durch ein korrespondierendes Testverfahren gefunden. Das Verfahren testet unterschiedliche Pulspositionen und -amplituden und bildet daraus ein korrespondierendes Sprachsignal. Das gebildete Sprachsignal wird dann mit dem zu codierenden Sprachsignal verglichen. Im Gegensatz zu dem oben genannten Codierer vom CELP-Typ überprüft das MPEC- Verfahren bei der Synthese des Sprachsignals nicht die Qualität von zuvor gebildeten in dem Codebuch gespeicherten Vektoren, sondern der Erregungsvektor wird gebildet, indem unterschiedliche Pulspositionen nacheinander getestet werden. Dann überträgt man an den Decoder die Position und Amplitude einzelner Erregungsimpulse, die zur Bildung der Erregung ausgewählt wurden.
- Aufgabe der Erfindung ist die Bereitstellung eines Verfahrens zur digitalen Codierung eines Sprachsignals, bei dem die oben genannten Nachteile und Probleme beseitigt werden. Um dies zu erreichen ist die Erfindung dadurch gekennzeichnet, daß das Erregungssignal mit Hilfe verschiedener Codierungsblöcke gebildet wird, wobei in jedem Block i Abtastwerte von dem Signal ausgewählt werden, das von dem Analysefilter Ki geliefert wird, um als Teilerregung in dem Abtastauswahlblock verwendet zu werden; jeder Codierungsblock mit Hilfe eines Synthesefilters ein Sprachsignal korrespondierend zu der ausgewählten Erregung erzeugt; der Betrieb der Codierungsblöcke gesteuert wird, indem die im vorangegangen Codierungsblock erhaltene Teilerregung von dem zu codierenden Sprachsignal subtrahiert wird, bevor es zur Weiterverarbeitung an den nächsten Codierungsblock geliefert wird; und das in jedem Codierungsblock enhaltene Syntheseergebnis zur Steuerung der Bildung der Gesamterregung verwendet wird.
- Die Erfindung ist gekennzeichnet durch einen Sprachcodierer, der lineare Prediktion verwendet, bei dem das Signal, das als Erregung verwendet wird, codiert wird, so daß ein Sprachsignal korrespondierend zur gebildeten Teilerregung gebildet wird, und zwar in Verbindung mit der Optimierung der Erregungsabtastwerte, wobei die Optimierung der Gesamterregung durch die Syntheseergebnisse der Teilerregungen gesteuert wird. Der Sprachcodierer gemäß der Erfindung enthält N-Codierungsblöcke, die die Codierung durchführen. In jedem Codierungsblock wird zur Verwendung als Teilerregung ein Satz von unterschiedlichen Signalabtastwerten ausgewählt, und zwar mit Hilfe eines Algorithmus, der weiter unten beschrieben wird, und an den Decoder (Analyseschritt) übertragen, und mit Hilfe der ausgewählten Erregungsimpulse ein dazu korrespondierendes Sprachsignal gebildet, um zur Steuerung der Auswahl der Gesamterregung (Syntheseschritt) verwendet zu werden. Das Verfahren unterscheidet sich von den Analyse/Synthese-Verfahren dadurch, daß die Sprachsignalsynthese nicht alle Gesamterregungsalternativen verwendet, aber für jede Teilerregung.
- Im folgenden wird unter Bezugnahme auf die beigefügten Figuren die Erfindung genauer beschrieben. Es zeigen:
- Fig. 1 ein Blockdiagramm eines bereits bekannten Analyse/Synthese Codierverfahrens vom CELP-Typ;
- Fig. 2 einen Codierungsblock des Codierers gemäß der Erfindung;
- Fig. 3 einen Codierer gemäß der Erfindung;
- Fig. 4 einen Decoder gemäß der Erfindung; und
- Fig. 5 ein alternatives Ausführungsbeispiel des Codierers gemäß der Erfindung.
- Fig. 1 wurde bereits oben beschrieben. Die Lösung gemäß der Erfindung wird im folgenden unter Bezugnahme auf die Fig. 2-5 beschrieben, in denen Ausführungsbeispiele der erfindungsgemäßen Lösung gezeigt sind.
- Fig. 2 zeigt einen Codierungsblock des Codierers gemäß der Erfindung. Das Verfahren basiert auf einer Sprachsignalcodierung in Codierungsblöcken 207, wobei innerhalb jedes Codierungsblocks 207 das Sprachsignal 200 analysegefiltert 201 wird, Teilerregungsabtastwerte ausgewählt werden 202, und ein Sprachsignal durch das Synthesefilter 203 gebildet wird. Sowohl die Analysefilterung 201 als auch die Synthesefilterung 203 basieren auf einem linearen Filterungsmodell, für das optimale Koeffizienten a (1), ..., a (M) 206 aus dem Sprachsignal s (n) 200 berechnet werden.
- Der Analyse-Teil führt mit dem Sprachsignal eine inverse Filterung durch, wodurch man ein Differenzsignal oder das optimale Erregungssignal erhält, das zur Synthese des Sprachsignals in dem Synthesefilter des Decoders benötigt wird. Da die Übertragung aller Abtastwerte des Differenzsignals eine hohe Übertragungskapazität erfordern würde, reduziert das Verfahren innerhalb jedes Sprachcodierungsblocks 207 im Abtastwertauswahlblock 202 die Anzahl der Abtastwerte, die an den Decoder übertragen werden, indem in jedem N Sprachcodierungsblock Ki (i = 1, 2, ..., N) Impulse ausgewählt werden, die an den Decoder zu übertragen sind, und die als Teilerregung 205 verwendet werden. Das Sprachsignal 204, das mit Hilfe der Ki Erregungsimpulse gebildet ist, die innerhalb jedes Codierungsblocks 207 ausgewählt werden, wird mit dem Synthesefilter 203 in jedem Codierungsblock 207 aufgebaut, wodurch man den Sprachsignalbereich erhält, der durch jede Teilerregung 205 gebildet wird.
- Das Analysefilter 201 A(z) hat die Form:
- A(z) = 1 - j=1 Σ M a(j) z-j
- und das Synthesefilter 203 S(z) die Form:
- S(z) = 1 / A(z).
- Die Analyse- und Synthesefilter 201, 203 können auch eine Langzeitfilterung umfassen, die die Periodizität von stimmhaften Lauten im Sprachsignal modelliert.
- Gemäß der Erfindung wird ein Sprachcodierer durch Codierungsblöcke 207 gebildet, wobei das durch den Codierungsblock 207 gebildete und vom Synthesefilter 203 jedes Codierungsblocks 207 erhaltene Sprachsignal 204 vom Eingangssprachsignal subtrahiert wird, bevor es an den nächsten Codierungsblock 207 geliefert wird. Wenn das Sprachsignal mit Hilfe der Codierungsblöcke 207 codiert wird, ist es möglich den Codierungsvorgang in zwei Teile zu gliedern. Einerseits enthält das Codierungsverfahren in jedem Sprachblock einen internen Algorithmus, der das Differenzsignal direkt verarbeitet und folglich direkt auf dem Signal arbeitet, das durch das Analysefilter geliefert wird, und der von diesem Signal in jedem Codierungsblock 207 i im ganzen Ki Erregungsimpulse auswählt, die als Teilerregung 205 verwendet werden. Andererseits umfaßt die Codierung die Bildung eines Sprachsignals 204 in dem Synthesefilter, das mit der Teilerregung 205 korrespondiert und zur Steuerung der Optimierung der Gesamterregung verwendet wird.
- Fig. 3 zeigt einen Sprachcodierer gemäß der Erfindung. Das zu codierende Sprachsignal 300 wird LPC analysiert, in dem LPC - Analysator 301 wird also ein lineares Modell berechnet, und zwar separat für jeden Sprachrahmen mit Abtastwerten und einer Länge von ungefähr 10-30 ms. Die linearen Vorhersagekoeffizienten können mit irgendeinem bereits bekannten Verfahren berechnet werden. Die Vorhersagekoeffizienten werden im Quantisierungsblock 302 quantisiert und das Quantisierungsergebnis 317 wird im Block 303 geeignet codiert und dann an den Multiplexer 318 geliefert, um weiter an den Decoder übertragen zu werden. Die quantisierten Koeffizienten werden an jeden Codierungsblock 304, 311, 313, ..., 315 geliefert, um als Filterkoeffizienten von ihren Analyse- und Synthesefiltern verwendet zu werden.
- Gemäß der Erfindung wird das zu codierende Sprachsignal 300 an jeden der N Sprachcodierungsblöcke 304, 311, 313, ..., 315 geliefert, wobei die Auswirkung jeder Teilerregung von dem Signal in den Differenzmitteln 305, 312, 314, ..., 316 subtrahiert wird. Die Erregungspulsstellen und -amplituden, die durch die Teilerregungen definiert und von jedem Codierungsblock 304, 311, 313, ..., 315 erhalten werden, werden dann an den Block 306 übertragen, um die Quantisierung und Codierung für den Kanal durchzuführen, und die codierten Abbildungen der Pulspositionen b (1), ..., b (L) 309 und der Amplituden d (1), ..., d (L) 310 der Gesamterregung zu bilden, die dann an den Multiplexer 318 geliefert werden.
- Die Synthesefilter 203 aller Codierungsblöcke verwenden als Erregungen unlogarithmisch quantisierte Pulspositionen und -amplituden, so daß der Teilerregungs- Synthesevorgang im Codierer mit dem Synthesevorgang im Decodierer korrespondiert, der diese quantisierte Erregung verwendet. Zur Vereinfachung der Figuren zeigen diese nicht wie die quantisierten Erregungsparameter an die Codierungsblöcke geliefert werden, in denen sie zur Bildung der quantisierten Teilerregung verwendet werden, die an das Synthesefilter übertragen wird.
- Wenn der Ausgang des Codierungsblocks 315, der die letzte Teilerregung liefert, vom Signal subtrahiert wird, das vom vorangegangenen Block geliefert wird, erhält man von den Differenzmitteln 316 den Modellfehler der gesamten Codierung. Falls erwünscht, ist es auch möglich dieses Signal im Vektorquantisierungsblock 307 zu quantisieren und zu codieren, und das codierte quantisierte Ergebnis 308 weiter an den Multiplexer 318 zu übertragen.
- Fig. 4 zeigt einen Decoder gemäß der Erfindung. Der Decoder Demultiplexer 409 stellt die codierten Parameter bereit, die an die Decodierblöcke 403, 404, 405 geliefert werden. Es wird ein Erregungssignal gebildet und an das Synthesefilter 407 geliefert, und zwar in Übereinstimmung mit den Pulspositionen und -amplituden 402 vom Decodierungsblock 405. Optional ist es ferner möglich, in den Summenmitteln 406 zu der Erregung eine weitere Erregung zu addieren, die vom Vektordecodierblock 404 zur Verfügung gestellt wird, falls das System auch den gesamten Vorhersagefehler 401 der Codierungsmodellierung überträgt. Die übertragenen Vorhersagekoeffizienten 400 werden im Block 403 decodiert und im Synthesefilter 407 verwendet. Das gebildete Sprachsignal 408 wird am Ausgang des Synthesefilters 407 erhalten.
- Bei dem Codierer gemäß der Erfindung kann der unten beschriebene Algorithmus in dem Suchblock 202 verwendet werden, um die Erregung innerhalb jedes Blocks mit Abtastwerten auszuwählen, wobei jeder Codierungsblock i (i = 1, 2, ... N) als Teilerregungen diejenigen von dem Analysefilter 201 bereitgestellten Ki Abtastwerte auswählt, deren absoluten Werte während des zu codierenden Eingangsrahmens am größten sind. Mit anderen Worten, wenn der Ausdruck
- e(n&sub1;) + e(n&sub2;) + e(n&sub3;) + ... + e(nKi)
- maximiert wird, so daß die Abstände n&sub1; - n&sub2; , n&sub1; - n&sub3; , n&sub2; - n&sub3; , ... etc. zwischen den Impulsen mindestens N Abtastwerte betragen (also die Anzahl der im Codierer verwendeten Codierungsblöcke). In dem zu maximierenden Ausdruck ist der Faktor e(k) (k = 1, 2, ..., ) der Ausgang vom Analysefilter 201, also das Differenzsignal der linearen Modellierung. Von dieser Sequenz mit Abtastwerten werden mit dem oben genannten Algorithmus KI Pulse ausgewählt, um als Teilerregung verwendet zu werden. Die Gesamterregung ist gleich die Summe der Teilerregungen.
- Der Algorithmus für die Suche der Erregungsimpulse kann verbessert werden, wobei eine Filterung vom Tiefpaß-Typ hinzugefügt wird, und das Differenzsignal gefiltert wird, bevor der zu maximierende Ausdruck berechnet wird. Mit der Frequenzantwort des verwendeten Tiefpaßfilters wird die durchschnittliche Verteilung der Sprache in unterschiedlichen Frequenzen überwacht.
- Fig. 5 zeigt ein alternatives Ausführungsbeispiel des Sprachcodierers gemäß der Erfindung. Dieses alternative Ausführungsbeispiel unterscheidet sich von dem in Fig. 3 gezeigten dadurch, daß für das zu codierende Signal mehrere Filterkoeffizienten berechnet werden. In diesem Ausführungsbeispiel wird jede Teilerregung in einem Filter kombiniert, das eine unterschiedliche Frequenzantwort liefert, wobei jeder Codierungsblock 504, 508, 512, ... Analyse-Synthesefilter enthält, die Koeffizienten verwenden, die berechnet werden, um mit dem Signal zu korrespondieren, das an dem jeweiligen Codierungsblock 504, 508, 512 anliegt.
- Folglich bildet jede Teilerregung über ein unterschiedliches Synthesefilter seinen Anteil am Sprachsignal. Korrespondierend dazu verwendet der Decoder N parallele Synthesefilter, von denen jedes eine korrespondierende decodierte Teilerregung empfängt. Das gebildete Sprachsignal wird als Summe der Signale erhalten, die durch die Teilerregungen gebildet werden.
- Durch die Verwendung der Erfindung vermeidet man den in einem abgeschlossenen System erforderlichen übermäßigen Rechenaufwand und den hohen Leistungsverbrauch. Darüber hinaus weist dieses Verfahren einen unerheblichen Speicherverbrauch auf. In einem Codierer gemäß der Erfindung kann man vergleichsweise einfache Erregungsauswahlalgorithmen verwenden, wie die oben Beschriebenen, und immer noch eine gute Sprachqualität erzielen, ohne daß man Verfahren einsetzen muß, die einen komplexen und aufwendigen Berechnungsschritt für alle möglichen Gesamterregungen verwenden.
- Aufgrund des Vorangegangenen ist es für einen Fachmann auf diesem Gebiet offensichtlich, daß verschiedenen Modifikationen vorgenommen werden können, ohne den Schutzbereich der Erfindung zu verlassen.
Claims (12)
1. Digitales Sprachcodierungsverfahren mit:
einem ersten Codierungszyklus, bei dem ein erster Satz von Vorhersageparametern a(i)
korrespondierend zu einem Kurzzeitspektrum eines Eingangssignals abgeleitet wird,
zur Bildung eines ersten Erregungssignals das Eingangssignal gemäß dem Satz von
Vorhersageparametern a(i) invers gefiltert wird,
durch Auswahl von Erregungsimpulsen (205)(Ki) des Erregungssignals gemäß einem
vorbestimmten Kriterium ein erstes Teilerregungssignal gebildet wird,
zur Bildung eines ersten Ausgangssignals das erste Teilerregungssignal gemäß dem
Satz von Vorhersageparametern a(i) synthesegefiltert wird, und
zur Bildung eines ersten Differenzsignals das erste Ausgangssignal vom Eingangssignal
subtrahiert wird;
einem zweiten Codierungszyklus, bei dem zur Bildung eines zweiten Erregungssignals
das erste Differenzsignal gemäß dem Satz von Vorhersageparametern a(i) invers gefiltert
wird,
durch Auswahl von Erregungsimpulsen (205)(Ki) des zweiten Erregungssignals gemäß
dem vorbestimmten Kriterium ein zweites Teilerregungssignals gebildet wird,
zur Bildung eines zweiten Ausgangssignals das zweite Teilerregungssignal gemäß dem
Satz von Vorhersageparametern a(i) synthesegefiltert wird; sowie
einem Schritt zur Bildung eines Gesamterregungssignals aus dem ersten und zweiten
Teilerregungssignal, die jeweils während des ersten und zweiten Codierungszyklus
erzeugt worden sind.
2. Digitales Sprachcodierungsverfahren mit:
einem ersten Codierungszyklus, bei dem ein erster Satz von Vorhersageparametern
a(1,i) korrespondierend zu einem Kurzzeitspektrum eines Eingangssignals abgeleitet
wird,
zur Bildung eines ersten Erregungssignals das Eingangssignal gemäß dem Satz von
Vorhersageparametern a(1,i) invers gefiltert wird,
durch Auswahl von Erregungsimpulsen (205)(Ki) des ersten Erregungssignals gemäß
einem vorbestimmten Kriterium ein erstes Teilerregungssignal gebildet wird,
zur Bildung eines ersten Ausgangssignals das erste Teilerregungssignal gemäß dem
ersten Satz von Vorhersageparametern a(1,i) synthesegefiltert wird, und
zur Bildung eines ersten Differenzsignals das erste Ausgangssignal vom Eingangssignal
subtrahiert wird;
einem zweiten Codierungszyklus,
bei dem ein zweiter Satz von Vorhersageparametern a(2,i) korrespondierend zum
Kurzzeitspektrum des ersten Differenzsignals gebildet wird,
zur Bildung eines zweiten Erregungssignals das erste Differenzsignal gemäß dem
zweiten Satz von Vorhersageparametern a(2,i) invers gefiltert wird,
durch Auswahl von Erregungsimpulsen (205)(Ki) des zweiten Erregungssignals gemäß
dem vorbestimmten Kriterium ein zweites Teilerregungssignal gebildet wird, und
zur Bildung eines zweiten Ausgangssignals das zweite Teilerregungssignal gemäß dem
zweiten Satz von Vorhersageparametern a(2,i) synthesegefiltert wird; sowie
einem Schritt zur Bildung eines Gesamterregungssignals aus dem ersten und zweiten
Teilerregungssignal, die jeweils während des ersten und zweiten Codierungszyklus
erzeugt worden sind.
3. Verfahren nach Anspruch 1 oder 2, wobei das vorbestimmte Kriterium derart ist,
daß die Erregungsimpulse (205) ausgewählt werden, um die Summe ihrer absoluten
Werte zu maximieren, und sie mit einen Abstand von N Abtastwerten voneinander
getrennt sind, wobei N die Anzahl der Codierungszyklen ist.
4. Verfahren nach irgendeinem der vorangegangenen Ansprüche, mit einem
weiteren Schritt, um vor der Auswahl der Erregungsimpulse (205), das erste und zweite
Erregungssignal gemäß der durchschnittlichen Frequenzverteilung der Sprache zu filtern.
5. Verfahren nach irgendeinem der vorangegangenen Ansprüche, wobei die
Vorhersageparameter (a(i); a(1,i); a(2,i)) berechnet werden, um das ursprüngliche
Sprachsignal zu ersetzen und mit jedem Signal individuell zu korrespondieren, das an die
unterschiedlichen Codierungsblöcke (207) geliefert wird, wobei von dem Signal das durch
die Teilerregungen (205) erzeugte aufgebaute Sprachsignal (204) subtrahiert wird, und
jede Teilerregung (205) mit Synthesefiltern in Verbindung steht, die unterschiedliches
Frequenzverhalten aufweisen können.
6. Codierer mit:
einem Kurzzeitanalysator (301) zum Empfang eines ersten Eingangssignals (200; 300)
und zur Ableitung von Parametern, die für das Kurzzeitspektrum des ersten Signals
(200, 300) charakterisierend sind, um einen ersten Satz von Vorhersageparametern a(i)
zu bilden;
einem ersten Codierungsblock (207, 304) zur Bildung eines ersten Satzes von
Teilerregungssignalen aus dem ersten Eingangssignal, und eines ersten
Ausgangssignals (204) gemäß dem Satz von Vorhersageparametern a(i);
Subtraktionsmitteln (305, 311, 314, ...,316) zur Subtraktion des ersten Ausgangssignals
(204) von dem ersten Eingangssignal (200; 300), um ein Differenzsignal abzuleiten;
einem zweiten Codierungsblock (207, 311, 313, ...,315), der mit den Subtraktionsmitteln
(305, 312, 314, ..., 316) gekoppelt ist, um das Differenzsignal als ein zweites
Eingangssignal zu empfangen, und zur Ableitung eines weiteren Satzes von
Teilerregungssignalen (205); und
Puffermitteln (306) zum Empfang der Sätze von Teilerregungssignalen und weiterer, um
ein Gesamterregungssignal (309, 310) zu bilden, wobei der erste und der zweite
Codierungsblock folgendes enthalten:
ein Analysefilter (201) zur Bildung von Erregungssignalen, die mit einem Eingangssignal
korrespondieren, gemäß dem Satz von Vorhersageparametern a(i);
Auswahlmittel (202) zur Auswahl eines Satzes von Teilerregungssignalen (205) aus dem
Erregungssignal gemäß einem vorbestimmten Kriterium; und
ein Synthesefilter (203) zur Bildung eines Ausgangssignals (204), das mit dem Satz von
Teilerregungssignalen (205) korrespondiert, gemäß dem Satz von
Vorhersageparametern a(i).
7. Codierer mit:
einem ersten Kurzzeitanalysator (501) zum Empfang eines ersten Eingangssignals
(200, 500) und zur Ableitung von Parametern, die für das Kurzzeitspektrum des ersten
Signals (200, 500) charakterisierend sind, um einen ersten Satz von
Vorhersageparametern a(1,i) zu bilden;
einem ersten Codierungsblock (207, 504) zur Bildung eines ersten Satzes von
Teilerregungssignalen aus dem ersten Eingangssignal, und eines ersten
Ausgangssignals (204) gemäß dem ersten Satz von Vorhersageparametern a(1,i);
Subtraktionsmitteln (513, 514, ..., 516) zur Subtraktion des ersten Ausgangssignals (204)
von dem ersten Eingangssignal (200, 500), um ein Differenzsignal abzuleiten;
einem zweiten Kurzzeitanalysator (505, 509, ..., 526) zum Empfang des Differenzsignals
und zur Ableitung von Parametern, die für das Kurzzeitspektrum des Differenzsignals
charakterisierend sind, um einen zweiten Satz von Vorhersageparametern a(2,i) zu
bilden;
einem zweiten Codierungsblock (207, 508, 512, ..., 515), der mit den Subtraktionsmitteln
(513, 514, ..., 516) gekoppelt ist, um das Differenzsignal als zweites Eingangssignal zu
empfangen und um ein weiteres Ausgangssignal (204), das mit einem weiteren Satz von
Teilerregungssignalen (205) korrespondiert, gemäß dem zweiten Satz von
Vorhersageparametern a(2,i) abzuleiten;
Puffermitteln (519) zum Empfang der Sätze von Teilerregungssignalen und weiterer, um
ein Gesamterregungssignal (520, 521) zu bilden, wobei der erste und der zweite
Codierungsblock folgendes enthalten:
ein Analysefilter (201) zur Bildung von Erregungssignalen, die mit einem Eingangssignal
korrespondieren, gemäß dem Satz von Vorhersageparametern a(j,i);
Auswahlmittel (202) zur Auswahl eines Satzes von Teilerregungssignalen (205) aus dem
Erregungssignal gemäß einem vorbestimmten Kriterium; und
ein Synthesefilter (203) zur Bildung eines Ausgangssignals (204), das mit dem Satz von
Teilerregungssignalen (205) korrespondiert, gemäß dem Satz von
Vorhersageparametern a(j,i).
8. Codierer nach Anspruch 6 oder 7, wobei das Eingangssignal (200, 300, 500) ein
Sprachsignal ist.
9. Codierer nach Anspruch 8, wobei der Kurzzeitanalysator
(301, 501, 505, 509, ..., 526) ein LPC-Analysator ist, und ferner folgendes enthalten ist:
Quantisierer (302, 306, 502, 506, 510, ..., 527, 519),
ein Kanalcodierungsblock (303, 503, 507, 511, ..., 528),
ein Vektorquantisierer (307, 517), und
ein Multiplexer (318, 521), wobei
der Quantisierer (302, 502, 506, 510, ..., 527) die Vorhersagekoeffizienten quantisiert und
das quantisierte Ergebnis (317, 522, 523, 524, ..., 525) an den Multiplexer (318, 521) liefert,
um weiter an einen Decodierer übertragen zu werden, und die quantisierten Koeffizienten
an jeden Codierungsblock (304, 311, 313, ..., 315, 504, 508, 512, ..., 515) liefert, um als
jeweilige Filterkoeffizienten in ihren Analyse- und Synthesfiltern verwendet zu werden;
das zu codierende Sprachsignal (300, 500) an jeden Codierungsblock
(304, 311, 313, ..., 315, 504, 508, 512, ..., 515) geliefert wird, so daß die Wirkung jeder
Teilerregung in den Differenzmitteln (305, 312, 314, ..., 316, 513, 514, ..., 516) davon
subtrahiert wird;
die Pulspositionen und -amplituden der durch die Teilerregung definierten und von jedem
Codierungsblock (304, 311, 313, 315, 504, 508, 512, ..., 515) erhaltenen Erregungsimpulse an
den Quantisierer (306, 519) geliefert werden; und
der Quantisierer die an den Multiplexer (318, 521) zu liefernde codierte Abbildung der
Pulspositionen (309, 520) und der Pulsamplituden (310, 321) der Gesamterregung bildet.
10. Codierer nach Anspruch 9, wobei das Signal von den Differenzmitteln (316, 516) in
dem Vektorquantisierungsblock (307, 517) codiert und weiter an einen Decoder (308, 518)
übertragen wird.
11. Codierer nach irgendeinem der Ansprüche 6 bis 10, wobei das Analysefilter (201)
A(z) folgende Form aufweist:
A(z) = 1 - j=1 Σ M a(j) z-j; und
das Synthesefilter (203) S(z) die Form
S(z) = 1 / A(z).
12. Codierer nach irgendeinem der Ansprüche 6 bis 11, wobei das Analysefilter (201)
und das Synthesefilter (203) ferner jeweilige Filter enthalten, die die Periodizität von
stimmhaften Lauten im Eingangssignal (200) modellieren.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI922128A FI95085C (fi) | 1992-05-11 | 1992-05-11 | Menetelmä puhesignaalin digitaaliseksi koodaamiseksi sekä puhekooderi menetelmän suorittamiseksi |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69329569D1 DE69329569D1 (de) | 2000-11-23 |
DE69329569T2 true DE69329569T2 (de) | 2001-05-31 |
Family
ID=8535271
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69329569T Expired - Lifetime DE69329569T2 (de) | 1992-05-11 | 1993-05-07 | Digitale Kodierung von Sprachsignalen |
Country Status (5)
Country | Link |
---|---|
US (1) | US5579433A (de) |
EP (1) | EP0570171B1 (de) |
JP (1) | JPH06161498A (de) |
DE (1) | DE69329569T2 (de) |
FI (1) | FI95085C (de) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI95085C (fi) * | 1992-05-11 | 1995-12-11 | Nokia Mobile Phones Ltd | Menetelmä puhesignaalin digitaaliseksi koodaamiseksi sekä puhekooderi menetelmän suorittamiseksi |
FI98163C (fi) * | 1994-02-08 | 1997-04-25 | Nokia Mobile Phones Ltd | Koodausjärjestelmä parametriseen puheenkoodaukseen |
FI96650C (fi) * | 1994-07-11 | 1996-07-25 | Nokia Telecommunications Oy | Menetelmä ja laitteisto puheen välittämiseksi tietoliikennejärjestelmässä |
US5761633A (en) * | 1994-08-30 | 1998-06-02 | Samsung Electronics Co., Ltd. | Method of encoding and decoding speech signals |
FR2729244B1 (fr) * | 1995-01-06 | 1997-03-28 | Matra Communication | Procede de codage de parole a analyse par synthese |
JP3680380B2 (ja) * | 1995-10-26 | 2005-08-10 | ソニー株式会社 | 音声符号化方法及び装置 |
TW317051B (de) * | 1996-02-15 | 1997-10-01 | Philips Electronics Nv | |
JP3364825B2 (ja) * | 1996-05-29 | 2003-01-08 | 三菱電機株式会社 | 音声符号化装置および音声符号化復号化装置 |
ZA974703B (en) * | 1996-05-30 | 1997-12-30 | Bayer Ag | Substituted sulfonylamino(thio)carbonyl compounds. |
JP3878254B2 (ja) * | 1996-06-21 | 2007-02-07 | 株式会社リコー | 音声圧縮符号化方法および音声圧縮符号化装置 |
JP3255022B2 (ja) | 1996-07-01 | 2002-02-12 | 日本電気株式会社 | 適応変換符号化方式および適応変換復号方式 |
CA2213909C (en) * | 1996-08-26 | 2002-01-22 | Nec Corporation | High quality speech coder at low bit rates |
DE19641619C1 (de) * | 1996-10-09 | 1997-06-26 | Nokia Mobile Phones Ltd | Verfahren zur Synthese eines Rahmens eines Sprachsignals |
US5960389A (en) * | 1996-11-15 | 1999-09-28 | Nokia Mobile Phones Limited | Methods for generating comfort noise during discontinuous transmission |
FI964975A (fi) * | 1996-12-12 | 1998-06-13 | Nokia Mobile Phones Ltd | Menetelmä ja laite puheen koodaamiseksi |
KR100447152B1 (ko) * | 1996-12-31 | 2004-11-03 | 엘지전자 주식회사 | 디코더필터의연산처리방법 |
FI114248B (fi) * | 1997-03-14 | 2004-09-15 | Nokia Corp | Menetelmä ja laite audiokoodaukseen ja audiodekoodaukseen |
FI113903B (fi) | 1997-05-07 | 2004-06-30 | Nokia Corp | Puheen koodaus |
FI973873A (fi) | 1997-10-02 | 1999-04-03 | Nokia Mobile Phones Ltd | Puhekoodaus |
US5999897A (en) * | 1997-11-14 | 1999-12-07 | Comsat Corporation | Method and apparatus for pitch estimation using perception based analysis by synthesis |
FI980132A (fi) | 1998-01-21 | 1999-07-22 | Nokia Mobile Phones Ltd | Adaptoituva jälkisuodatin |
US6311154B1 (en) | 1998-12-30 | 2001-10-30 | Nokia Mobile Phones Limited | Adaptive windows for analysis-by-synthesis CELP-type speech coding |
US7972783B2 (en) * | 2003-11-24 | 2011-07-05 | Branhaven LLC | Method and markers for determining the genotype of horned/polled cattle |
CA3160488C (en) * | 2010-07-02 | 2023-09-05 | Dolby International Ab | Audio decoding with selective post filtering |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL8500843A (nl) * | 1985-03-22 | 1986-10-16 | Koninkl Philips Electronics Nv | Multipuls-excitatie lineair-predictieve spraakcoder. |
US4771465A (en) * | 1986-09-11 | 1988-09-13 | American Telephone And Telegraph Company, At&T Bell Laboratories | Digital speech sinusoidal vocoder with transmission of only subset of harmonics |
JP2586043B2 (ja) * | 1987-05-14 | 1997-02-26 | 日本電気株式会社 | マルチパルス符号化装置 |
JP3033060B2 (ja) * | 1988-12-22 | 2000-04-17 | 国際電信電話株式会社 | 音声予測符号化・復号化方式 |
DE69029120T2 (de) * | 1989-04-25 | 1997-04-30 | Toshiba Kawasaki Kk | Stimmenkodierer |
JPH0332228A (ja) * | 1989-06-29 | 1991-02-12 | Fujitsu Ltd | ゲイン―シェイプ・ベクトル量子化方式 |
US5097508A (en) * | 1989-08-31 | 1992-03-17 | Codex Corporation | Digital speech coder having improved long term lag parameter determination |
JP2626223B2 (ja) * | 1990-09-26 | 1997-07-02 | 日本電気株式会社 | 音声符号化装置 |
US5271089A (en) * | 1990-11-02 | 1993-12-14 | Nec Corporation | Speech parameter encoding method capable of transmitting a spectrum parameter at a reduced number of bits |
FI95085C (fi) * | 1992-05-11 | 1995-12-11 | Nokia Mobile Phones Ltd | Menetelmä puhesignaalin digitaaliseksi koodaamiseksi sekä puhekooderi menetelmän suorittamiseksi |
-
1992
- 1992-05-11 FI FI922128A patent/FI95085C/fi active
-
1993
- 1993-05-07 US US08/060,427 patent/US5579433A/en not_active Expired - Lifetime
- 1993-05-07 DE DE69329569T patent/DE69329569T2/de not_active Expired - Lifetime
- 1993-05-07 EP EP93303572A patent/EP0570171B1/de not_active Expired - Lifetime
- 1993-05-11 JP JP5109388A patent/JPH06161498A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
FI95085B (fi) | 1995-08-31 |
EP0570171A1 (de) | 1993-11-18 |
FI922128A (fi) | 1993-11-12 |
DE69329569D1 (de) | 2000-11-23 |
FI95085C (fi) | 1995-12-11 |
FI922128A0 (fi) | 1992-05-11 |
US5579433A (en) | 1996-11-26 |
JPH06161498A (ja) | 1994-06-07 |
EP0570171B1 (de) | 2000-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69329569T2 (de) | Digitale Kodierung von Sprachsignalen | |
DE4492048C2 (de) | Vektorquantisierungs-Verfahren | |
DE69029120T2 (de) | Stimmenkodierer | |
DE69029232T2 (de) | System und Methode zur Sprachkodierung | |
DE19647298C2 (de) | Kodiersystem | |
DE19604273C2 (de) | Verfahren und Vorrichtung zum Durchführen einer Suche in einem Kodebuch im Hinblick auf das Kodieren eines Klangsignales, Zellkommunikationssystem, Zellnetzwerkelement und mobile Zell-Sender-/Empfänger-Einheit | |
DE69309557T2 (de) | Verfahren und Vorrichtung zur Sprachkodierung | |
DE69227401T2 (de) | Verfahren zum Kodieren und Dekodieren von Sprachsignalen | |
DE69836624T2 (de) | Audiokodierer und -dekodierer | |
DE69837822T2 (de) | Verfahren und Vorrichtung zur Dekodierung von Sprachsignalen | |
DE3244476C2 (de) | ||
DE60201766T2 (de) | Verbesserung der Periodizität der CELP-Anregung für die Sprachkodierung und -dekodierung | |
DE69932460T2 (de) | Sprachkodierer/dekodierer | |
DE69636209T2 (de) | Vorrichtung zur Sprachkodierung | |
DE69314389T2 (de) | Zweimoden langzeitprädiktion in sprechkodierung | |
DE69528685T2 (de) | Vorrichtung zur Vektorquantifizierung | |
DE69929069T2 (de) | Verfahren und vorrchtung zur celp kodierung und dekodierung | |
DE69223335T2 (de) | Sprachkodiersystem | |
DE69033510T3 (de) | Numerischer sprachcodierer mit verbesserter langzeitvorhersage durch subabtastauflösung | |
DE69610915T2 (de) | Verfahren zur quantisierung des verstärkungsfaktors für die linear-prädiktive sprachkodierung mittels analyse-durch-synthese | |
DE69615870T2 (de) | Sprachkodierer mit aus aktuellen und vorhergehenden Rahmen extrahierten Merkmalen | |
DE69017842T2 (de) | Verfahren und Einrichtung zur Codierung von Prädiktionsfiltern in Vocodern mit sehr niedriger Datenrate. | |
DE4491015C2 (de) | Verfahren zum Erzeugen eines Spektralrauschbewertungsfilters zur Verwendung in einem Sprachcoder | |
DE69324732T2 (de) | Selektive Anwendung von Sprachkodierungstechniken | |
DE69611607T2 (de) | Quantisierung einer aufgeteilten vorhersagematrix mit spektralparametern zur wirksamen sprachkodierung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: QUALCOMM,INC.(N. D. GES. D. STAATES DELAWARE),, US |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: QUALCOMM INCORPORATED (N.D. GES. D. STAATES DE, US |