DE3789476T2 - Digitaler Vocoder. - Google Patents

Digitaler Vocoder.

Info

Publication number
DE3789476T2
DE3789476T2 DE3789476T DE3789476T DE3789476T2 DE 3789476 T2 DE3789476 T2 DE 3789476T2 DE 3789476 T DE3789476 T DE 3789476T DE 3789476 T DE3789476 T DE 3789476T DE 3789476 T2 DE3789476 T2 DE 3789476T2
Authority
DE
Germany
Prior art keywords
harmonic
frame
speech
fundamental frequency
frequency
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE3789476T
Other languages
English (en)
Other versions
DE3789476D1 (de
Inventor
Edward Charles Bronson
Walter Thornley Hartwell
Willem Bastiaan Kleijn
Dimitrios Panos Prezas
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
American Telephone and Telegraph Co Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by American Telephone and Telegraph Co Inc filed Critical American Telephone and Telegraph Co Inc
Publication of DE3789476D1 publication Critical patent/DE3789476D1/de
Application granted granted Critical
Publication of DE3789476T2 publication Critical patent/DE3789476T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/90Pitch determination of speech signals
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech 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 spectral analysis, e.g. transform vocoders or subband vocoders
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/093Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters using sinusoidal excitation models

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Electrophonic Musical Instruments (AREA)

Description

    Technisches Gebiet
  • Unsere Erfindung betrifft Sprachverarbeitungssysteme und insbesondere digitale Sprachcodier- und -decodieranordnungen, die auf die Reproduktion von Sprache unter Benutzung eines Sinus-Modells für den stimmhaften Sprachanteil und eines erregten prädiktiven Filter-Modells für den stimmlosen Sprachanteil gerichtet sind.
  • Problem
  • Bei digitalen Sprachkommunikationssystemen mit einem Sprachspeicher und Sprachausgabeeinrichtungen ist es oft wünschenswert, eine Signalkomprimierung anzuwenden, um die für das Speichern und/oder übertragen benötigte Bitrate zu verringern. Ein bekanntes digitales Sprachcodierschema zur Ausführung der Signalkomprimierung ist in dem Artikel mit dem Titel "Magnitude-Only Reconstruction Using a Sinusoidal Speech Model", Proceedings of IEEE International 'Conference on Acoustics, Speech, and Signal Processing, 1984, Bd. 2, S. 27.6.1-27.6.4 (San Diego, U.S.A.). beschrieben. Dieser Artikel offenbart den Einsatz eines Sinus-Sprachmodells zum Codieren und Decodieren stimmhafter als auch stimmloser Sprachanteile. Die Sprachwellenform wird in dem Synthesizer- Teil eines Vocoders reproduziert, indem die Sprachwellenform als Summe von Sinuswellen nachgebildet wird. Die Summe der Sinuswellen umfaßt die Sprachgrundwelle und die Sprachoberwellen und wird ausgedrückt durch
  • s(n)=Σai(n)sin[Φi(n)] (1)
  • Die Terme ai(n) und Φi(n) entsprechen der zeitveränderlichen Amplitude bzw. der zeitveränderlichen Phase der Sinuskomponenten der Sprachwellenform zu jedem betrachteten Zeitpunkt. Die Sprachverarbeitungsfunktion wird dadurch ausgeführt, daß die Amplituden und die Phasen in dem Analysator-Teil bestimmt werden, und diese Werte zu einem Synthesizer-Teil übertragen werden, der unter Anwendung der Gleichung 1 die Sprachwellenform rekonstruiert.
  • Der McAulay-Artikel offenbart ferner, daß die Amplituden und Phasen dadurch bestimmt werden, daß eine schnelle Fourier-Spektrumsanalyse zu festen Zeitperioden, die gewöhnlich Rahmen genannt werden, durchgeführt wird. Grund- und Oberwellenfrequenzen erscheinen als Spitzen in dem schnellen Fourier-Spektrum und werden dadurch bestimmt, daß man die Spitzen heraussucht, um die Frequenzen und Amplituden der Grundwelle sowie der Oberwellen zu bestimmen.
  • Ein Problem bei der Methode nach McAulay liegt darin, daß die Grundfrequenz, alle Oberwellenfrequenzen sowie alle Amplituden von einem Analysator zu einem Synthesizer übertragen werden, was zu einer Übertragung mit einer hohen Bitrate führt. Ein weiteres Problem besteht darin, daß die Frequenzen und Amplituden einzig und allein unmittelbar aus den sich ergebenden Spektralspitzen bestimmt werden. Die angewandte schnelle Fourier-Transformation stellt diese Spitzen zwar recht genau dar, allerdings ist dies mit einem großen Rechenaufwand verbunden.
  • Ein weiteres Problem bei dieser Methode liegt in dem Versuch, nicht nur die stimmhaften Sprachanteile, sondern auch die stimmlosen Sprachanteile unter Benutzung der Sinuswellen-Codiertechnik nachzubilden. Die Unterschiede zwischen den stimmhaften und stimmlosen Bereichen ergeben sich aus der aus der Spektralanalyse gewonnenen Spektralenergie, die in den Grenzrahmen zwischen diesen Bereichen unzusammenhängend ist, wodurch es schwierig wird, relevante Spitzen in dem Spektrum zu bestimmen.
  • V.R. Viswanathan und andere Teilnehmer an der ICASSP 82, Veranstaltungen der IEEE International Conference on Acoustics, Speech and Signal Processing, Paris, 3ter-5ter Mai 1982, Bd. 1, S. 610-613, offenbaren ein Verarbeitungssystem, wie es in dem Oberbegriff des Anspruchs 1 angegeben ist. Neben der Energie, den LPC-Parametern, den Grundton- und Sprachinformationen werden Informationen über Abweichungen der Amplituden und Oberwellen gegenüber denen, die durch das LPC-Modell gegeben sind, übertragen.
  • Zusammenfassung der Erfindung
  • Gemäß der Erfindung wird ein Verarbeitungssystem, wie es in Anspruch 1 umschrieben ist, geschaffen, und ein entsprechendes Synthese-Verfahren nach Anspruch 3 verfügbar gemacht.
  • Bei einer Ausführungsform stellt der Analysator die Grundfrequenz oder den Grundton (pitch) ein, der von einem Grundfrequenz-Detektor unter Benutzung der Informationen über die Oberwellen der Grundfrequenz, die aus einer Spektralanalyse gewonnen werden, erfaßt wird. Die Einstellung der Grundfrequenz korrigiert die Anfangsschätzung der Grundfrequenz gegenüber Ungenauigkeiten aufgrund des Betriebs des Grundfrequenz-Detektors und hinsichtlich von Problemen, die mit der Tatsache zusammenhängen, daß die Grundfrequenz unter Verwendung ganzzahliger Vielfacher der Abtastperiode berechnet wird. Außerdem wird durch die Grundfrequenz- Einstellung die Grundfrequenz so eingestellt, daß ihr Wert, wenn er zur Herleitung der verschiedenen Oberwellen geeignet multipliziert wird, dem Mittelwert des tatsächlichen Werts der aus der Spektralanalyse ermittelten Oberwellen entspricht. Deshalb reduziert die Grundfrequenz-Einstellung die Anzahl der Bits, die erforderlich sind, um die Versatzinformation, die die Oberwellen bestimmt, vom Analysator zum Synthesizer zu übertragen.
  • Ist die Grundfrequenz erst einmal eingestellt, wird der eingestellte und geeignet multiplizierte Grundfrequenzwert als Startpunkt verwendet, um den Ort jeder Oberwelle in dem Spektrum erneut zu berechnen und den Versatz der lokalisierten Oberwelle gegenüber dem theoretischen Wert der Oberwelle zu bestimmen, der durch Multiplizieren des eingestellten Grundfrequenzwertes mit der geeigneten Zahl der gewünschten Oberwelle bestimmt wird.
  • Die Erfindung sieht eine weitere Verbesserung dadurch vor, daß der Synthesizer Sprache aus der übertragenen Information reproduziert, indem er die obenerwähnten Techniken zur sinusförmigen Nachbildung des stimmhaften Sprachanteils sowie eine Mehrimpuls- oder Rauscherregungs- Modellierung für den stimmlosen Sprachanteil verwendet.
  • Ausführlicher dargestellt werden die Amplituden der Oberwellen im Synthesizer dadurch bestimmt, daß die aus den ursprünglichen Abtastpunkten gewonnene Gesamtrahmenenergie und die LPC (linear predictive coding)- Codierungskoeffizienten verwendet werden. Die Oberwellenamplituden werden dadurch berechnet, daß man die nicht normierte Energieverteilung aus jeder Oberwelle erhält, indem man die LPC-Koeffizienten verwendet und anschließend die Amplitude der Oberwellen dadurch ableitet, daß man die Gesamtenergie als Normierungsfaktor für eine arithmetische Operation verwendet. Diese Technik ermöglicht es, daß der Analysator lediglich die LPC-Koeffizienten sowie die Gesamtenergie aber nicht die Amplituden jeder Oberwelle übertragen muß.
  • Vorteilhafterweise spricht der Synthesizer auf die Grundfrequenz und jede Oberwellenfrequenz, die in der Mitte des Rahmens auftreten zur Interpolation von Sprachrahmen zu Sprachrahmen an, um kontinuierliche Frequenzen über jeden Rahmen zu erzeugen. In ähnlicher Weise werden die Amplituden der Grundwelle und der Oberwellen erzeugt.
  • Die Probleme, die beim Übergang von einem stimmhaften zu einem stimmlosen Rahmen und umgekehrt auftreten, werden auf folgende Weise behandelt. Beim Übergang von einem stimmlosen Rahmen zu einem stimmhaften Rahmen wird angenommen, daß die Frequenz der Grundwelle und jeder Oberwelle vom Beginn des Rahmens bis zur Rahmenmitte konstant ist. Die Frequenzen werden beim Übergang von einem stimmhaften zu einem stimmlosen Rahmen auf ähnliche Weise berechnet. Eine gewöhnliche Interpolation wird zur Berechnung der Frequenzen des verbleibenden Rahmens ausgeführt. Es wird angenommen, daß die Amplituden der Grund- und Oberwellen zu Beginn des stimmhaften Rahmens bei Null beginnen und für die erste Rahmenhälfte interpoliert werden. Die Amplituden werden beim Übergang von einem stimmhaften zu einem stimmlosen Rahmen auf ähnliche Weise berechnet.
  • Zusätzlich kann die Anzahl von Oberwellen für jeden stimmhaften Rahmen von Rahmen zu Rahmen variieren Infolgedessen können mehr oder weniger Oberwellen in einem stimmhaften Rahmen als in einem angrenzenden stimmhaften Rahmen sein. Dieses Problem wird unter der Annahme gelöst, daß die Frequenzen der Oberwellen, die keine Entsprechung in dem benachbarten Rahmen haben, von der Mitte dieses Rahmens bis zur Grenze des benachbarten Rahmens konstant sind, und daß die Amplituden der Oberwellen dieses Rahmens an der Grenze zwischen dem Rahmen und dem benachbarten Rahmen Null sind. Dadurch kann eine Interpolation auf eine gewöhnliche Art und Weise ausgeführt werden.
  • Außerdem, wenn ein Übergang von einem stimmhaften zu einem stimmlosen Rahmen erfolgt, wird ein stimmloses LPC- Filter mit den LPC-Koeffizienten des vorhergehenden stimmhaften Rahmens initialisiert. Dadurch kann das stimmlose Filter die Sprache für den stimmlosen Bereichs noch genauer synthetisieren. Somit bilden die LPC-Koeffizienten des stimmhaften Rahmens den Vokaltrakt für die vorangehende Zeitperiode genau nach.
  • Kurze Beschreibung der Zeichnungen
  • Es zeigen:
  • Fig. 1 in Blockschaltbildform einen Sprachanalysator gemäß der Erfindung,
  • Fig. 2 in Blockschaltbildform einen Sprachsynthesizer nach der Erfindung,
  • Fig. 3 ein eine Information enthaltenes Paket zur Nachbildung der Sprache während stimmhafter Bereiche,
  • Fig. 4 ein eine Information enthaltendes Paket zur Nachbildung von Sprache während stimmloser Bereiche unter Verwendung einer Rauscherregung,
  • Fig. 5 ein eine Information enthaltenes Paket zur Nachbildung von Sprache während stimmloser Bereiche unter Verwendung einer Impulserregung,
  • Fig. 6 in graphischer Darstellung die Interpolation, die vom Synthesizer nach Fig. 2 für die Grund- und Oberwellenfrequenzen ausgeführt wird,
  • Fig. 7 in graphischer Darstellung die Interpolation, die von dem Synthesizer nach Fig. 2 für die Amplituden der Grund- und Oberwellenfrequenzen ausgeführt wird,
  • Fig. 8 die Realisierung eines digitalen Signalprozessors nach Fig. 1 und 2,
  • Fig. 9 bis 13 in Flußdiagrammform ein Programm zur Steuerung des digitalen Signalprozessors nach Fig. 8, nach dem die Analysatorschaltung der Fig. 1 verwirklicht werden kann, und
  • Fig. 14 bis 19 in Flußdiagrammform ein Programm zur Steuerung der Ausführung des digitalen Signalprozessors nach Fig. 8, nach der der Synthesizer der Fig. 2 implementiert werden kann.
  • Detaillierte Beschreibung
  • Die Fig. 1 und 2 zeigen einen beispielhaften Sprachanalysator bzw. einen Sprachsynthesizer, die den Kern dieser Erfindung bilden. Der Sprachanalysator 100 nach Fig. 1 spricht auf über einen Übertragungsweg 120 empfangene analoge Sprachsignale an und codiert diese Signale zur Übertragung über einen Kanal 139 zum Synthesizer 200 nach Fig. 2 mit einer niedrigen Bitrate. Der Kanal 139 kann vorteilhafterweise ein Kommunikations-Übertragungsweg oder ein Speicher sein, so daß eine Sprachsynthese für verschiedene Anwendungen bereitgestellt werden kann, die eine synthetisierte Sprache zu einem späteren Zeitpunkt benötigen. Eine derartige Anwendung ist die Sprachausgabe eines digitalen Computers. Der Analysator 100 digitalisiert und quantisiert die analoge Sprachinformation unter Verwendung eines Analog-zu-Digital-Wandlers 101 und einer Rahmensegmentierungseinrichtung 102. Eine LPC- Berechnungseinrichtung 111 spricht auf die digitalisierten und quantisierten Abtastwerte an und erzeugt LPC (linear predictive coding)-Koeffizienten, die den menschlichen Vokaltrakt nachbilden sowie das Restsignal. Die Bildung der letztgenannten Koeffizienten und des Signals können durch die Anordnung, die in der US-PS 3 740 476 offenbart und wie diese Anmeldung demselben Anmeldungsberechtigten übertragen worden ist, oder durch andere allgemein bekannte Anordnungen ausgeführt werden. Der Analysator 100 codiert die über den Übertragungsweg 120 empfangenen Sprachsignale unter Anwendung einer der folgenden Analysetechniken: Sinus-Analyse, Mehrimpuls-Analyse oder Rauscherregungs-Analyse. Zunächst stellt der Rahmensegmentierungs-Block 102 die Sprachabtastwerte in Rahmen zusammen, die vorteilhafterweise 160 Abtastwerte umfassen. Die LPC-Berechnungseinrichtung 111 spricht auf jeden Rahmen an und berechnet das Restsignal und überträgt es über einen Pfad 122 zu einem Grundfrequenzdetektor 109. Der letztgenannte Detektor spricht auf das Restsignal und die Sprachabtastwerte an und entscheidet, ob der Rahmen stimmhaft oder stimmlos ist. Ein stimmhafter Rahmen ist ein Rahmen, innerhalb dessen eine Grundfrequenz, üblicherweise Grundton genannt, ermittelt wird. Wenn der Grundfrequenzdetektor 109 feststellt, daß der Rahmen stimmhaft ist, dann führen die Blöcke 103 bis 108 eine Sinus-Codierung des Rahmens aus. Wenn allerdings eine Entscheidung getroffen wird, daß der Rahmen stimmlos ist, dann bestimmt ein Rausch/Mehrimpuls-Entscheidungblock 112, ob eine Rauscherregung oder eine Mehrimpulserregung von dem Synthesizer 200 verwendet werden soll, um das Filter anzuregen, das durch die LPC-Koeffizienten, die vom LPC- Berechnungseinrichtungs-Block 111 berechnet werden, definiert wird. Wenn eine Rauscherregung verwendet werden soll, dann wird dieses Ergebnis über einen Parametercodierblock 113 und einen Sender 114 zum Synthesizer 200 übertragen. Wenn jedoch eine Mehrimpulserregung verwendet werden soll, ermittelt ein Block 110 die Orte und Amplituden einer Impulsfolge und überträgt diese Information über Pfade 128 und 129 zum Parametercodierblock 113 zur nachfolgenden Übertragung an den Synthesizer 200 der Fig. 2.
  • Wenn ein Übertragungskanal zwischen dem Analysator 100 und dem Synthesizer 200 implementiert ist, der Pakete verwendet, dann ist ein für einen stimmhaften Rahmen übertragenes Paket in Fig. 3 dargestellt, ein Paket, das für einen stimmlosen Rahmen, der eine Erregung mittels weißen Rauschens verwendet, übertragen wird, in Fig. 4 dargestellt, und ein Paket, das für einen stimmlosen Rahmen, der eine Mehrimpulserregung verwendet, übertragen wird, in Fig. 5 dargestellt.
  • Wir betrachten nunmehr die Arbeitsweise des Analysators 100 ausführlicher. Wenn der Grundfrequenzdetektor 109 über einen Pfad 130 einmal signalisiert hat, daß der Rahmen stimmlos ist, spricht der Rausch/Mehrimpuls- Entscheidungsblock 112 auf dieses Signal an und bestimmt, ob eine Rausch- oder Mehrimpulserregung verwendet werden soll. Wenn eine Mehrimpulserregung verwendet wird, wird das diesen Umstand anzeigende Signal zum Mehrimpuls-Analysatorblock 110 übertragen. Der Mehrimpuls-Analysator 110 spricht auf das Signal auf dem Pfad 124 sowie auf einen Satz von Impulsen an, die vom Grundfrequenzdetektor 109 über Pfade 125 und 126 übertragen werden. Der Mehrimpuls-Analysator 110 sendet die Orte der ausgewählten Impulse zusammen mit der Amplitude der ausgewählten Impulse zum Parametercodierer 113. Dieser Codierer spricht ferner auf die von der LPC- Berechnungseinrichtung 111 und über den Pfad 123 empfangenen LPC-Koeffizienten an und bildet das in Fig. 5 dargestellte Paket.
  • Wenn der Rausch/Mehrimpuls-Entscheidungsblock 112 bestimmt, daß eine Rauscherregung zu verwenden ist, dann weist er auf diesen Umstand unter Senden eines Signals über den Pfad 124 an den Parametercodierblock 113 hin. Dieser Codierer spricht auf dieses Signal an und bildet das in Fig.
  • 4 dargestellte Paket, indem die LPC-Koeffizienten des Blocks 111 und die Verstärkung verwendet werden, die aus dem Restsignal durch den Block 115 berechnet werden.
  • Wir betrachten nunmehr die Arbeitsweise des Analysators 100 während eines stimmhaften Rahmens ausführlicher. Die Energie-Berechnungseinrichtung 103 spricht auf die digitalisierte Sprache sn eines Rahmens an, der von der Rahmensegmentierungseinrichtung 102 empfangen wird und berechnet die Gesamtenergie der Sprache innerhalb eines Rahmens mit vorteilhafterweise 160 Sprachabtastwerten, wie dies durch die folgende Gleichung gegeben ist:
  • Deer Energiewert wird vom Synthesizer 200 verwendet, um die Amplituden der Grund- und Oberwellen in Verbindung mit den LPC-Koeffizienten zu bestimmen.
  • Der Hamming-Fensterblock 104 spricht auf das über den Pfad 121 übertragene Sprachsignal an und führt die Fensteroperation (windowing operation) aus, wie dies durch die folgende Gleichung gegeben ist:
  • Die Aufgabe der Fensteroperation ist die, Zusammenhanglosigkeiten an den Endpunkten eines Rahmens bei der Vorbereitung zur Berechnung der schnellen Fourier- Transformation, FFT, zu eliminieren. Nachdem die Fensteroperation ausgeführt worden ist, fügt der Block 105 eine Null an die resultierenden Abtastwerte des Blocks 104 an, woraus sich vorteilhafterweise eine neue Folge von 1024 Datenpunkten ergibt, wie dies in der folgenden Gleichung definiert ist:
  • Als nächstes führt der Block 105 die schnelle Fourier- Transformation aus, die eine schnelle Ausführung der diskreten Fourier-Transformation darstellt, die durch die folgende Gleichung definiert ist:
  • Nach der Ausführung der FFT-Berechnungen gewinnt der Block 105 das Spektrum S dadurch, daß die Größe der Datenpunkte für jede komplexe Frequenz berechnet wird, der sich aus der nach Gleichung 5 ausgeführten Berechnung ergibt; diese Operation wird durch die folgende Gleichung definiert:
  • Eine Grundfrequenz-Einstelleinrichtung 107 spricht auf die vom Grundfrequenzdetektor 109 berechnete Grundfrequenz und auf das vom Block 105 berechnete Spektrum an und berechnet eine geschätzte Grundfrequenz, die eine genauere Angabe der Grundfrequenz ist als der vom Grundfrequenzdetektor 109 eingestellte Wert. Außerdem stellen die ganzzahligen Vielfachen der Grundfrequenz Werte dar, um die sich die Oberwellenfrequenzen relativ gleichmäßig verteilen. Diese Einstellung ist aus drei Gründen wünschenswert. Der erste Grund ist der, daß, obwohl die erste Spitze des vom Block 105 berechneten Spektrums die Stelle der Grundfrequenz anzeigen soll, dieses Signal in Wirklichkeit aufgrund von Einflüssen des Vokaltrakts und des Tiefpaßfilters in dem Analog-zu-Digital-Wandler 101 normalerweise versetzt ist. Der zweite Grund ist der, daß die Frequenz-Auflösung des Grundfrequenzdetektors durch die Abtastrate des Analog-zu-Digital-Wandlers begrenzt ist und somit keine präzise Grundfrequenz definiert, wenn die entsprechende Grundfrequenzperiode zwischen zwei Abtastpunkte fällt. Dieser Effekt, nämlich keine korrekte Grundfrequenz zu haben, wird durch die Grundfrequenzeinstelleinrichtung 107 ausgeglichen. Die größte Auswirkung zeigt sich bei den Berechnungen, die von einem Oberwellenlokalisierer 106 und einer Oberwellenversatz-Berechnungseinrichtung 108 ausgeführt werden. Der Oberwellenlokalisierer 106 benutzt die von der Grundfrequenzeinstelleinrichtung 107 bestimmte Grundfrequenz zur Erzeugung eines Startpunkts für die Analyse des durch den Spektralgrößenblock 105 erzeugten Spektrums, um die Stelle der verschiedenen Oberwellen zu ermitteln.
  • Der dritte Grund ist der, daß die Oberwellenversatz- Berechnungseinrichtung 108 die aus dem Grundfrequenzwert berechnete theoretische Oberwellenfrequenz sowie die vom Lokaiisierer 106 ermittelte Oberwellenfrequenz benützt, um Versätze zu bestimmen, die zum Synthesizer 200 übertragen werden. Wenn die Grundfrequenz nicht richtig ist, wird jeder Versatz durch eine große Zahl ausgedrückt, für die zu viele Bits zum Synthesizer 200 übertragen werden müßten. Dadurch, daß die Oberwellenversätze um den Null-Oberwellenversatz verteilt sind, wird die Anzahl von Bits, die zur Übertragung der Oberwellenversätze zum Synthesizer 200 notwendig sind, auf einer minimalen Anzahl gehalten.
  • Der Grundfrequenz-Einstellblock 107 arbeitet in folgender Weise. Da die Spitze in dem vom FFT- Spektralgrößenblock 105 berechneten Spektrum, die der Grundfrequenz entspricht, aus den vorhergehend erwähnten Gründen verschwimmen kann, sucht die Grundfrequenz- Einstelleinrichtung 107 zunächst das Spektrum ab, indem der Anfangsschätzwert für Grundfrequenz auf
  • th&sub1; = 2p&sub0; (7)
  • gesetzt wird, wobei p&sub0; die vom Grundfrequenzdetektor 109 bestimmte Grundfrequenz und th&sub1; die theoretische zweite Oberwelle ist. Die Suche um diesen Punkt in dem Spektrum, die durch th&sub1; bestimmt wird, erfolgt innerhalb des Frequenzbereichs f, der als
  • definiert ist. Innerhalb dieses Bereichs berechnet die Grundfrequenz-Einstelleinrichtung 107 die Steigungen des Spektrums auf beiden Seiten der theoretischen Oberwellenfrequenz und sucht dann diesen Bereich in Richtung positiver Steigungen ab, bis die erste Spektralspitze in dem Suchbereich lokalisiert wird. Die Frequenz, bei der diese Spitze pk&sub1; auftritt, wird anschließend verwendet, um den Schätzwert für die Grundfrequenz in dem Rahmen einzustellen. Zu diesem Zeitpunkt wird der neue Grundfrequenzschätzwert p&sub1;
  • Dieser neue Grundfrequenzschätzwert p&sub1; wird anschließend verwendet, um die theoretische Frequenz der dritten Oberwelle th&sub2; = 3p&sub1; zu berechnen. Diese Suchprozedur wird für jede theoretische Oberwellenfrequenz thi < 3.600 Hz wiederholt. Für Frequenzen über 3.600 Hz läßt die Tiefpaßfilterung Einzelheiten des Spektrums verschwimmen. Wenn die Suchprozedur keine spektrale Spitze in dem Suchbereich findet, erfolgt keine Einstellung, und die Suche wird für die nächste Spitze unter Benutzung des vorhergehend eingestellten Spitzenwerts fortgesetzt. Jede Spitze wird als pki bezeichnet, wobei i die ite Oberwelle oder Oberwellenzahl darstellt. Die Gleichung für den iten Grundfrequenzschätzwert pi ist
  • Der Suchbereich für den iten Grundfrequenzschätzwert ist durch die Gleichung
  • (i + 1/2) pIN &le; f &le; (+ 3/2) pIn, i > 0 (11)
  • festgelegt.
  • Nachdem die Grundfrequenz-Einstelleinrichtung 107 den Grundfrequenzschätzwert bestimmt hat, wird dieser an den Parametercodierer 113 zur nachfolgenden Übertragung an den Synthesizer 200 sowie an den Oberwellenlokalisierer 106 über einen Pfad 133 übertragen. Dieser Lokalisierer spricht auf das durch die Gleichung 6 definierte Spektrum an und ermittelt die Oberwellenspitzen innerhalb des Spektrums genau, indem der zuletzt eingestellte Grundfrequenzwert pF als Startpunkt zur Suche in dem Spektrum in einem Bereich verwendet wird, der durch
  • (i + 1/2) pF &le; f &le; (i + 3/2) pF, 1 &le; i &le; h (12)
  • definiert ist, wobei h die Anzahl der Oberwellenfrequenzen in dem gegenwärtigen Rahmen ist. Jede auf diese Weise lokalisierte Spitze wird mit pki bezeichnet, wobei i die ite Oberwelle oder Oberwellenzahl darstellt. Die Oberwellen- Berechnungseinrichtung 108 spricht auf die pki-Werte an und berechnet den Oberwellenversatz aus der theoretischen Oberwellenfrequenz tsi, wobei der Versatz mit hoi bezeichnet ist. Der Versatz ist durch
  • definiert, wobei fr die Frequenz zwischen aufeinanderfolgenden Spektraldatenpunkten ist, die sich auf Grund der Größe des berechneten Spektrums S ergibt. Die Oberwellen-Berechnungseinrichtung 108 sendet anschließend diese Versätze über einen Pfad 137 an den Parametercodierer 113 für eine nachfolgende Übertragung zum Synthesizer 200.
  • Der in Fig. 2 dargestellte Synthesizer 200 spricht auf die Vokaltrakt-Modellparameter und die Erregungs- oder Sinusinformation, die über den Kanal 139 empfangen werden, an und erzeugt eine getreue Nachbildung der ursprünglichen analogen Sprache, die vom Analysator 100 in Fig. 1 codiert worden ist. Der Synthesizer 200 arbeitet in der folgenden Weise. Wenn der Rahmen stimmhaft ist, führen die Blöcke 212, 213 und 214 die Sinussynthese aus, um das ursprüngliche Sprachsignal gemäß Gleichung 1 wiederherzustellen , wobei anschließend diese rekonstruierte Sprachinformation über eine Auswahleinrichtung 206 zu einem Digital-zu-Analog-Wandler 208 übertragen wird, der die empfangene digitale Information in ein analoges Signal umsetzt.
  • Nach dem Empfang eines in Fig. 3 dargestellten stimmhaften Informationspakets überträgt ein Kanaldecodierer 201 die Grundfrequenz- und die Oberwellenfrequenzversatz- Information zu einer Oberwellenfrequenz- Berechnungseinrichtung 212 über Pfade 221 beziehungsweise 222, die Sprachrahmenenergie eo und die LPC-Koeffizienten über Pfade 220 beziehungsweise 216 zu einer Oberwellenamplituden-Berechnungseinrichtung 213 und das stimmhafte/stimmlose-V/U-Signal zur Oberwellenfrequenz- Berechnungseinrichtung 212 und zur Auswahleinrichtung 206. Ist das V/U-Signal gleich "1", so weist es daraufhin, daß der Rahmen stimmhaft ist. Die Oberwellenfrequenz- Berechnungseinrichtung 212 spricht auf das V/U-Signal, das gleich "1" ist, an und berechnet die Oberwellenfrequenzen unter Ansprechen auf die eingestellte Grundfrequenz und die Oberwellenfrequenz-Versatzinformation, die über die Pfade 221 beziehungsweise 222 empfangen werden. Die letztgenannte Berechnungseinrichtung übermittelt anschließend die Oberwellenfrequenzinformation zu den Blöcken 213 und 214.
  • Die Oberwellenamplituden-Berechnungseinrichtung 213 spricht auf die Oberwellenfrequenzinformation der Berechnungseinrichtung 212, die über den Pfad 220 empfangenen Rahmenenergieinformation sowie die über den Pfad 260 empfangenen LPC-Koeffizienten an und berechnet die Amplituden der Oberwellenfrequenzen. Ein Sinus-Generator 214 spricht auf die von der Berechnungseinrichtung 212 über einen Pfad 223 empfangene Frequenzinformation an und erzeugt die Oberwellenphaseninformation, wobei er anschließend diese Phaseninformation sowie die über einen Pfad 224 von der Berechnungseinrichtung 213 empfangene Amplitudeninformation benutzt, um die durch die Gleichung 1 angegebenen Berechnungen auszuführen.
  • Wenn der Kanaldecodierer 201 ein Rauscherregungspaket, wie z. B. in Fig. 4 dargestellt, empfängt, überträgt er ein Signal über einen Pfad 227, das bewirkt, daß die Auswahleinrichtung 205 den Ausgang des Weißen-Rausch- Generators 203 auswählt und ein Signal über den Pfad 215, das bewirkt, daß die Auswahleinrichtung 206 den Ausgang eines Synthesefilters 207 auswählt. Außerdem überträgt der Kanaldecodierer 201 die Verstärkung zum Weißen-Rausch- Generator 203 über einen Pfad 211. Das Synthesefilter 207 spricht auf die vom Kanaldecodierer 201 über den Pfad 216 empfangenen LPC-Koeffizienten sowie auf das über die Auswahleinrichtung 205 empfangene Ausgangssignal des Weißen- Rausch-Generators 203 an und erzeugt digitale Sprachabtastwerte zu.
  • Wenn der Kanaldecodierer 201 über den Kanal 139 ein Impulserregungspaket, wie in Fig. 5 dargestellt, empfängt, überträgt er den Ort und die relativen Impulsamplituden bezüglich der Amplitude des größten Impulses über einen Pfad 210 zum Impulsgenerator 204 und die Impulsamplituden über einen Pfad 230. Außerdem konditioniert der Kanaldecodierer 201 die Auswahleinrichtung 205 über den Pfad 227, um das Ausgangssignal des Impulsgenerators 204 auszuwählen, welches zum Synthesefilter 207 übermittelt, wird. Das Synthesefilter 207 und der Digital-zu-Analog-Wandler 208 reproduzieren anschließend die Sprache durch die Auswahleinrichtung 206, die über den Pfad 215 durch den Decodierer 201 konditioniert wird. Der Wandler 208 weist an seinem Ausgang ein unabhängiges Tiefpaßfilter auf.
  • Wir betrachten nunmehr ausführlicher die Funktionen der Blöcke 212, 213 und 214 bei der Ausführung der Sinussynthese stimmhafter Rahmen. Die Oberwellenfrequenz- Berechnungseinrichtung 212 spricht auf die über den Pfad 221 empfangene eingestellte Grundfrequenz pF an und bestimmt unter Verwendung der über den Pfad 222 empfangenen Oberwellenversätze die Oberwellenfrequenzen. Die theoretische Oberwellenfrequenz tsi ist als die Ordnung der Oberwelle, die mit der eingestellten Grundfrequenz multipliziert wird, definiert. Jede Oberwellenfrequenz hfi ist so eingestellt, daß sie in einen Spektralpunkt fällt, nachdem sie durch einen geeigneten Oberwellenversatz ausgeglichen worden ist. Die folgende Gleichung definiert die i-te Oberwellenfrequenz für jede Oberwelle
  • hfi = tsi + hoi fr, 1 &le; i &le; h (14)
  • wobei fr die spektrale Auflösung ist.
  • Die Gleichung 14 erzeugt einen Wert für jede Oberwellenfrequenz. Es wird angenommen, daß dieser Wert der Mitte eines Sprachrahmens entspricht, der synthetisiert wird. Die übrigen Pro-Abtastwert-Frequenzen eines jeden Sprachabtastwerts in einem Rahmen erhält man durch lineares Interpolieren zwischen den Frequenzen benachbarter stimmhafter Rahmen oder vorbestimmte Grenzbedingungen für benachbarte stimmlose Rahmen. Diese Interpolation wird im Sinusgenerator 214 ausgeführt und ist in den nachstehenden Abschnitten beschrieben.
  • Die Oberwellenamplituden-Berechnungseinrichtung 213 spricht auf die von der Berechnungseinrichtung 212 berechneten Frequenzen, auf die über den Pfad 216 empfangenen LPC-Koeffizienten und auf die über den Pfad 220 empfangene Rahmenenergie an und berechnet die Amplituden der Grund- und Oberwellen. Die LPC-Reflexionskoeffizienten eines jeden stimmhaften Rahmens definieren ein akustisches Röhrenmodell, das den Vokaltrakt während eines jeden Rahmens darstellt. Die relativen Oberwellenamplituden können aus dieser Information ermittelt werden. Da jedoch die LPC-Koeffizienten die Struktur des Vokaltraktes nachbilden, enthalten sie bezüglich des Energiebetrags bei jeder Oberwellenfrequenz nicht genügend Information. Diese Information wird unter Benutzung der über den Pfad 220 empfangenen Rahmenenergie gebildet. Die Berechnungseinrichtung 213 berechnet für jeden Rahmen die Oberwellenamplitude, der ähnlich den Oberwellenfrequenzberechnungen annimmt, daß diese Amplitude in der Mitte des Rahmens liegt. Eine lineare Interpolation wird benutzt, um die übrigen Amplituden des ganzen Rahmens zu bestimmen, indem die Amplitudeninformation aus benachbarten stimmhaften Rahmen oder vorbestimmte Grenzbedingungen für benachbarte stimmlose Rahmen verwendet wird.
  • Diese Amplituden können aufgefunden werden, wenn erkannt wird, daß der Vokaltrakt unter Verwendung eines Allpaß-Filtermodells beschrieben werden kann,
  • G(z)= 1/A(z) (15)
  • mit
  • und per Definition der Koeffizient a&sub0; gleich 1 ist. Die Koeffizienten am mit &le; m &le; 10, die zur Beschreibung des Allpaß-Filters notwendig sind, können aus den über den Pfad 216 empfangenen Reflexionskoeffizienten ermittelt werden, indem die rekursive Aufwärtsprozedur (recursive step-up procedure) verwendet wird, die in Markel, J.D., and Gray, Jr., A.H., Linear Prediction of Speech, Springer-Verlag, New York, 1976, beschrieben ist. Das in den Gleichungen 15 und 16 beschriebene Filter wird verwendet, um die Amplituden der Oberwellenkomponenten für jeden Rahmen in folgender Weise zu berechnen. Wir bezeichnen die zu berechnenden Oberwellenamplituden mit hai mit 0 &le; i &le; h, wobei h die maximale Anzahl der Oberwellen in dem gegenwärtigen Rahmen ist. Ein nicht normierter Oberwellenverteilungswert hei mit 0 &le; i &le; h kann für jede Oberwellenfrequenz hfi durch
  • erhalten werden, wobei sr die Abtastrate ist.
  • Die nicht normierte Gesamtenergie aller Oberwellen E kann erhalten werden durch:
  • Bei der Annahme, daß
  • für eine Rahmengröße von 160 Punkten gilt, kann die ite normierte Oberwellenamplitude hai durch
  • berechnet werden, wobei eo die durch die Gleichung 2 definierte und vom Analysator 100 berechnete übertragene Sprachrahmenenergie ist.
  • Wir betrachten nunmehr, wie der Sinusgenerator 214 die von den Berechnungseinrichtungen 212 und 213 empfangenen Informationen verwendet, um die in Gleichung 1 angegebenen Berechnungen auszuführen. Für einen gegebenen Rahmen erzeugen die Berechnungseinrichtungen 212 und 213 eine einzelne Frequenz und eine einzelne Amplitude für jede Oberwelle in dem Rahmen für den Generator 214. Der Generator 214 wandelt die Frequenzinformationen in eine Phaseninformation um und führt eine lineare Interpolation mit den Frequenzen und Amplituden aus, damit man Frequenzen und Amplituden für jeden Abtastpunkt des Gesamtrahmens erhält.
  • Die lineare Interpolation wird auf die folgende Art und Weise ausgeführt. Fig. 6 zeigt fünf Sprachrahmen und die lineare Interpolation, die für die Grundfrequenz, die auch als die 0te Oberwelle betrachtet wird, ausgeführt wird. Für die anderen Oberwellenfrequenzen gibt es eine ähnliche Darstellung. Ganz allgemein gibt es drei Grenzbedingungen, die für einen Sprachrahmen existieren können. Erstens kann der Sprachrahmen einen vorhergehenden stimmlosen Rahmen und einen nachfolgenden stimmhaften Rahmen aufweisen, zweitens kann der Sprachrahmen von anderen stimmhaften Rahmen umgeben sein, oder drittens kann der stimmhafte Rahmen einen vorhergehenden stimmhaften Sprachrahmen und einen nachfolgenden stimmlosen Rahmen aufweisen. Wie in Fig. 6 dargestellt, stellt der Rahmen c, Punkt 601 bis 603, die erste Bedingung dar; und es wird angenommen, daß die Frequenz hfic zu Beginn des Rahmens, der mit 601 festgelegt ist, konstant ist. Der hochgestellte Index c bezieht sich auf die Tatsache, daß dies der c-Rahmen ist. Der Rahmen b, der auf den Rahmen c folgt und durch die Punkte 603 bis 605 festgelegt ist, stellt den zweiten Fall dar; die lineare Interpolation wird zwischen den Punkten 602 und 604 unter Verwendung der Frequenzen hfic und hfib ausgeführt, die in dem Punkt 602 bzw. 604 auftreten. Die dritte Bedingung wird durch den Rahmen a dargestellt, der sich von dem Punkt 605 zum Punkt 607 erstreckt, und der dem Rahmen a folgende Rahmen ist ein durch die Punkte 607 bis 608 festgelegter stimmloser Rahmen. In diesem Fall ist die Frequenz hfia bis zum Punkt 607 konstant.
  • Fig. 7 erläutert die Interpolation der Amplituden. Für aufeinanderfolgende stimmhafte Rahmen, die z. B. durch die Punkte 702 bis 704 und die Punkte 704 bis 706 festgelegt sind, stimmt die Interpolation mit der überein, die bezüglich der Frequenzen ausgeführt wird. Wenn jedoch der vorhergehende Rahmen stimmlos ist, wie dies z. B. durch die Beziehung des Rahmens 700 bis 701 mit dem Rahmen 701 bis 703 dargestellt ist, wird angenommen, daß die Oberwellen zu Beginn des Rahmens die Amplitude 0 haben, wie dies in Punkt 701 dargestellt ist. Wenn auf einen Sprachrahmen ein stimmloser Rahmen folgt, wie dies z. B. durch den Rahmen a von 705 bis 707 und einen Rahmen 707 bis 708 dargestellt ist, dann wird gleichermaßen angenommen, daß die Oberwellen am Endpunkt, z. B. bei 707, die Amplitude 0 haben und die lineare Interpolation wird ausgeführt.
  • Der Generator 214 führt die oben beschriebene Interpolation unter Verwendung der folgenden Gleichungen aus. Die Pro-Abtastwert-Phasen des n-ten Abtastwertes, wobei On,i die Pro-Abtastwert-Phase der i-ten Oberwelle ist, ist durch
  • definiert, wobei sr die Ausgangsabtastrate ist. Es ist lediglich notwendig, die Pro-Abtastwert-Frequenzen Wn,i zu kennen, um die Phasen zu berechnen, und diese Pro-Abtastwert- Frequenzen werden unter Ausführung der Interpolation gefunden. Die lineare Interpolation der Frequenzen für einen stimmhaften Rahmen mit benachbarten stimmhaften Rahmen, wie z. B. dem Rahmen b nach Fig. 6, wird definiert durch
  • wobei hmin die minimale Anzahl von Oberwellen in beiden benachbarten Rahmen ist. Der Übergang von einem stimmlosen zu einem stimmhaften Rahmen, z. B. zum Rahmen c, erfolgt unter Bestimmung der Pro-Abtastwert-Oberwellenfrequenz durch
  • Der Übergang von einem stimmhaften Rahmen zu einem stimmlosen Rahmen, wie z. B. vom Rahmen a, erfolgt unter Bestimmung der Pro-Abtastwert-Oberwellenfrequenzen durch
  • Wenn hmin die minimale Anzahl der Oberwellen in einem der beiden benachbarten Rahmen darstellt, wird für den Fall, für den der Rahmen b mehr Oberwellen als der Rahmen c aufweist, die Gleichung 23 verwendet, um die Pro-Abtastwert- Oberwellenfrequenzen für die Oberwellen, die größer als hmin sind, zu berechnen. Wenn der Rahmen b mehr Oberwellen als der Rahmen a aufweist, wird die Gleichung 24 verwendet, um die Pro-Abtastwert-Oberwellenfrequenz für die Oberwellen zu berechnen, die größer als hmin sind.
  • Die Pro-Abtastwert-Amplituden, An,i können in ähnlicher Weise aus hai ermittelt werden und sind für den stimmhaften Rahmen b durch
  • definiert.
  • Wenn ein Rahmen der Beginn eines stimmhaften Bereichs ist, wie z. B. der Beginn des Rahmens c, wird die Pro- Abtastwert-Oberwellenamplitude bestimmt durch
  • wobei h die Anzahl der Oberwellen in dem Rahmen c ist. Wenn ein Rahmen, z. B. der Rahmen a am Ende eines stimmhaften Bereichs liegt, werden die Pro-Abtastwert-Amplituden bestimmt durch
  • wobei h die Anzahl der Oberwellen des Rahmens a ist. Für diesen Fall, für den ein Rahmen, z. B. der Rahmen b, mehr Oberwellen als der vorhergehende stimmhafte Rahmen, z. B. der Rahmen c, hat, werden die Gleichungen 27 und 28 verwendet, um die Oberwellenamplituden für die Oberwellen zu berechnen, die größer als hmin sind. Wenn der Rahmen b mehr Oberwellen als der Rahmen a hat, wird die Gleichung 29 verwendet, um die Oberwellenamplitude für die Oberwellen zu berechnen, die größer als hmin sind.
  • Die Energie-Berechnungseinrichtung 103 ist durch einen Prozessor 803 nach Fig. 8 verwirklicht, der die Blöcke 901 bis 904 der Fig. 9 ausführt. Der Block 901 setzt vorteilhafterweise die Anzahl der Abtastwerte pro Rahmen auf 160. Die Blöcke 902 und 903 fahren anschließend damit fort, die Quadratsumme jedes digitalen Abtastwertes sa zu bilden. Nachdem die Summe gebildet worden ist, bildet der Block 904 die Quadratwurzel dieser Summe, die die ursprüngliche Sprachrahmenenergie eo ergibt. Diese Energie wird danach zum Parametercodierer 113 und zu einem Block 1001 übertragen.
  • Der Hamming-Fensterblock 104 nach Fig. 1 ist durch den Prozessor 803 realisiert, der die Blöcke 1001 und 1002 nach Fig. 9 ausführt. Die Blöcke führen die allgemein bekannte Hamming-Fenster-Operation durch.
  • Der FFT-Spektralgrößenblock 105 wird unter Ausführung der Blöcke 1003 bis 1023 der Fig. 9 und 10 verwirklicht. Die Blöcke 1003 bis 1005 führen die Auffülloperation, wie sie in Gleichung 4 definiert ist, aus. Die Auffülloperation füllt den Realteil Rc und den Imaginärteil Ic des Punktes c in einem Feld mit Nullen auf, das vorteilhafterweise 1024 Datenpunkte sowohl für den Imaginär- als auch für den Realteil enthält. Die Blöcke 1006 bis 1013 führen eine Daten- Ausrichtungsoperation aus, die in der Technik allgemein bekannt ist. Die Operation wird gewöhnlich Bitwechselfunktion genannt, weil die Reihenfolge der Datenpunkte auf eine Weise neu geordnet wird, die sicherstellt, daß die Ergebnisse der FFT-Analyse in einer richtigen Frequenzbereichsreihenfolge erzeugt werden.
  • Die Blöcke 1014 bis 1021 nach den Fig. 9 und 10 stellen die Realisierung der schnellen Fourier-Transformation dar, mit der die diskrete Fourier-Transformation, wie in Gleichung 5 definiert, berechnet wird. Nachdem die schnelle Fourier- Analyse durch die letztgenannten Blöcke ausgeführt worden ist, führen die Blöcke 1022 und 1023 die notwendigen Quadrier- und Wurzeloperationen aus, um die erhaltenen Spektralgrößendaten zu erzeugen, wie dies durch Gleichung 6 definiert ist.
  • Die Grundfrequenz-Einstelleinrichtung 107 wird durch die Blöcke 1101 bis 1132 nach den Fig. 10, 11 und 12 realisiert. Der Block 1101 nach Fig. 10 initialisiert die verschiedenen zur Ausführung der Grundfrequenz- Einstelloperation erforderlichen Variablen. Der Block 1102 legt die Anzahl von Iterationen fest, die beim Einstellen der Grundfrequenz auszuführen sind, indem nach jeder Oberwellenspitze gesucht wird. Eine Ausnahme besteht dann, wenn die theoretische Frequenz th die maximal zulässige Frequenz mxf überschreitet. Dann wird die durch den Block 1102 gesteuerte "Laufschleife" (for loop), durch den Entscheidungsblock 1104 beendet. Die theoretische Frequenz wird für jede Iteration durch den Block 1103 eingestellt. Die Gleichung 10 legt die Prozedur fest, die zum Einstellen der Grundfrequenz benutzt wird, und die Gleichung 11 bestimmt den Suchbereich für jede Spitze. Der Block 1108 wird verwendet, um den Index m der Spektralgrößendaten Sm zu ermitteln, der den Anfangsdatenpunkt festlegt, mit dem die Suche beginnt. Der Block 1108 berechnet ferner die Steigungen um diesen Datenpunkt, welche als obere Steigung us und untere Steigung ls bezeichnet werden. Die obere und untere Steigung werden verwendet, um eine von fünf verschiedenen Bedingungen bezüglich der Steigungen der Spektralgrößendaten um den bezeichneten Datenpunkt herum zu bestimmen. Die Bedingungen sind eine lokale Spitze, eine positive Steigung, eine negative Steigung, ein lokales Minimum, oder ein flacher Bereich des Spektrums. Diese Bedingungen werden in den Blöcken 1111, 1114, 1109 und 1110 nach den Fig. 10 und 11 überprüft. Wird von den Blöcken 1110 und 1109 erkannt, daß die Steigung ein Minimum oder ein flacher Bereich der Kurve ist, dann wird Block 1107 nach Fig. 11 ausgeführt, der die eingestellte Grundfrequenz Pi auf den zuletzt bestimmten Grundfrequenzwert setzt. Wird ein Minimum oder ein flacher Kurvenbereich nicht aufgefunden, dann wird der Entscheidungsblock 1111 ausgeführt. Wird eine Spitze durch den Entscheidungsblock 1111 festgestellt, dann wird die Frequenz des Datenabtastwertes in der Spitze durch Block 1112 ermittelt.
  • Wird erkannt, daß die Steigungen der Spektralgrößendaten um den bezeichneten Punkt herum eine Spitze, eine positive Steigung oder eine negative Steigung darstellen, wird die Grundfrequenz durch die Blöcke 1128 bis 1132 eingestellt. Diese Einstellung wird gemäß der Gleichung 10 ausgeführt. Der Block 1128 setzt das Spitze-lokalisiert- Flag und initialisiert die Variablen nm und dn, die den Zähler beziehungsweise den Nenner der Gleichung 10 darstellen. Danach führen die Blöcke 1129 bis 1132 die Berechnung der Gleichung 10 aus. Man beachte, daß der Entscheidungsblock 1131 bestimmt, ob eine Spitze für eine besondere Oberwelle lokalisiert worden ist. Wenn keine Spitze lokalisiert wurde, wird die Schleife einfach fortgesetzt und die durch Block 1131 spezifizierten Berechnungen werden nicht ausgeführt. Nachdem alle Spitzen verarbeitet worden sind, wird der Block 1132 ausgeführt, und er erzeugt eine eingestellte Grundfrequenz, die die Grenzfrequenz darstellt, die für die gegenwärtig lokalisierte Spitze eingestellt ist.
  • Wird erkannt, daß die Steigung des Spektraldatenpunkts positiv oder negativ ist, dann werden die Blöcke 1113 bis 1127 nach Fig. 11 ausgeführt. Zuerst berechnet der Block 1113 den Frequenzwert des Anfangsabtastpunktes psf, der von den Blöcken 1119 und 1123 sowie den Blöcken 1122 und 1124 verwendet wird, um sicherzustellen, daß die Suche nicht über den durch Gleichung 11 spezifizierten Punkt hinausgeht. Das Feststellen, ob die Steigung positiv oder negativ ist, wird durch den Entscheidungsblock 1114 getroffen. Wenn der Spektraldatenpunkt in einer negativen Steigung liegt, dann werden die Blöcke 1115 bis 1125 ausgeführt. Es ist die Aufgabe dieser Blöcke, die Spektraldatenpunkte abzusuchen, bis eine Spitze gefunden wird, oder das Ende des Suchbereichs überschritten wird, der durch die Blöcke 1119 und 1123 spezifiziert ist. Der Entscheidungsblock 1125 wird verwendet, um festzustellen, ob eine Spitze innerhalb des Suchbereichs gefunden worden ist. Wenn eine positive Steigung durch den Block 1114 festgestellt wird, werden die Blöcke 1116 bis 1126 und Funktionen ausgeführt, die denen ähnlich sind, die für den Fall einer negativen Steigung durch die Blöcke 1115 bis 1125 ausgeführt werden. Nach der Ausführung der Blöcke 1113 bis 1126, werden die Blöcke 1127 bis 1132 in derselben Weise, wie vorhergehend beschrieben, ausgeführt. Nachdem alle im Spektrum vorhandenen Spitzen überprüft worden sind, wird der letzte Grundfrequenzwert von Block 1106 nach Fig. 12 gemäß der Gleichung 10 gleich dem akkumulierten eingestellten Grundfrequenzwert gesetzt.
  • Der Oberwellenlokalisierer 106 wird durch die Blöcke 1201 bis 1222 der Fig. 12 und 13 ausgeführt. Der Block 1201 erfüllt die Anfangsbedingungen, die zur Lokalisierung der Oberwellenfrequenzen notwendig sind. Der Block 1202 steuert die Ausführung der Blöcke 1203 bis 1222 derart, daß all die Spitzen, die durch die Variable harm spezifiziert werden, lokalisiert werden. Der Block 1203 ermittelt für jede Oberwelle den Index, der verwendet wird, um den theoretischen Oberwellen-Spektraldatenpunkt, die obere Steigung und die untere Steigung zu ermitteln. Wenn die Steigung auf ein Minimum, einen flachen Bereich oder eine Spitze hinweist, die durch die jeweiligen Entscheidungsblöcke 1204 bis 1206 ermittelt werden, wird der Block 1222 ausgeführt, der den Oberwellenversatz gleich Null setzt. Wenn die Steigung positiv oder negativ ist, werden die Blöcke 1207 bis 1221 ausgeführt. Die Blöcke 1207 bis 1220 führen Funktionen aus, die denen ähnlich sind, die durch die vorhergehend beschriebenen Operationen der Blöcke 1113 bis 1126 ausgeführt werden. Sind die Blöcke 1208 bis 1120 erst einmal ausgeführt worden, dann wird der Oberwellenversatz hoq durch den Block 1221 gleich der Indexzahl r gesetzt.
  • Die Fig. 14 bis 19 zeigen ausführlich die vom Prozessor 803 zur Verwirklichung des Synthesizers 200 nach Fig. 2 ausgeführten Schritte. Die Oberwellenfrequenz- Berechnungseinrichtung 212 der Fig. 2 wird durch die Blöcke 1301, 1302 und 1303 der Fig. 14 verwirklicht. Der Block 1301 initialisiert die Parameter, die für diese Operation verwendet werden. Die Grundfrequenz des iten Rahmens hf&sub0;i wird gleich der übertragenen Grundfrequenz PF gesetzt. Unter Verwendung dieses Anfangswertes berechnet der Block 1303 jede Oberwellenfrequenz, indem zunächst die theoretische Frequenz der Oberwelle durch Multiplizieren der Grundfrequenz mit der Oberwellenzahl berechnet werden. Danach erhält man den Index der theoretischen Oberwelle, so daß die Frequenz auf einen Spektraldatenpunkt fällt, und dieser Index wird zum übertragenen Oberwellenversatz hot addiert. Ist der Index des Spektraldatenpunkts einmal ermittelt worden, wird der Index mit der Frequenzauflösung fr multipliziert, um die ite Rahmen-Oberwellenfrequenz hft¹ zu berechnen. Diese Prozedur wird von Block 1302 solange wiederholt, bis alle Oberwellen berechnet worden sind.
  • Die Oberwellenamplituden-Berechnungseinrichtung 213 ist durch den Prozessor 803 nach Fig. 8 realisiert, der die Blöcke 1401 bis 1417 der Fig. 14 und 15 ausführt. Die Blöcke 1401 bis 1407 implementieren die Aufwärtsprozedur, um die LPC-Reflexionskoeffizienten in Koeffizienten umzuwandeln, die für die Allpaß-Filterbeschreibung des Vokaltraktes verwendet werden, die durch Gleichung 16 gegeben ist. Die Blöcke 1408 bis 1412 berechnen die nicht normierte Oberwellenenergie für jede Oberwelle, wie dies in Gleichung 17 definiert ist. Die Blöcke 1413 bis 1415 werden verwendet, um die nicht normierte Gesamtenergie E zu berechnen, die durch Gleichung 18 definiert ist. Die Blöcke 1416 und 1417 berechnen die ite genormte Rahmen-Oberwellenamplitude habi, die durch Gleichung 20 definiert ist.
  • Die Blöcke 1501 bis 1521 und die Blöcke 1601 bis 1614 der Fig. 15 bis 18 stellen die Operationen dar, die vom Prozessor 803 zur Interpolation der Frequenz und der Amplituden für jede Oberwelle ausgeführt werden, wie dies in Fig. 6 und 7 gezeigt ist. Diese Operationen werden durch den ersten Teil des Rahmens, der von den Blöcken 1501 bis 1521 verarbeitet wird, und durch den zweiten Teil des Rahmens, der durch die Blöcke 1601 bis 1614 verarbeitet wird, ausgeführt. Wie in Fig. 6 erläutert ist, erstreckt sich die erste Hälfte des Rahmens c von Punkt 601 bis zu 602 und die zweite Hälfte des Rahmens c von Punkt 602 bis zu Punkt 603. Die durch diese Blöcke ausgeführte Operation besteht darin, zunächst festzustellen, ob der vorhergehende Rahmen stimmhaft oder stimmlos war.
  • Insbesondere setzt der Block 1501 nach Fig. 15 die Anfangswerte. Der Entscheidungsblock 1502 trifft die Entscheidung, ob der vorhergehende Rahmen stimmhaft oder stimmlos war. Wenn der vorhergehende Rahmen stimmlos war, werden die Blöcke 1504 bis 1510 ausgeführt. Die Blöcke 1504 und 1507 der Fig. 17 initialisieren den ersten Datenpunkt der Oberwellenfrequenzen und Amplituden jeder Oberwelle zu Beginn des Rahmens auf hfic für die Phasen und auf a0,ic = 0 für die Amplituden. Dies entspricht den Darstellungen in den Fig. 6 und 7. Nachdem die Anfangswerte der ersten Datenpunkte des Rahmens gesetzt worden sind, werden die übrigen Werte eines vorhergehenden stimmlosen Rahmens durch die Ausführung der Blöcke 1508 bis 1510 gesetzt. Für den Fall, daß die Oberwellenfrequenz betroffen ist, werden die Frequenzen gleich der Mittenfrequenz gesetzt, wie dies in Fig. 6 dargestellt ist. Für den Fall, daß die Oberwellenamplituden betroffen sind, wird jeder Datenpunkt gleich der linearen Näherung gesetzt, die zu Beginn des Rahmens bei Null startet und zur Mittelpunktsamplitude läuft, wie dies für den Rahmen c nach Fig. 7 dargestellt ist.
  • Wenn vom Block 1502 die Entscheidung getroffen wird, daß der vorhergehende Rahmen stimmhaft war, wird der Entscheidungsblock 1503 der Fig. 16 ausgeführt. Der Entscheidungsblock 1503 stellt fest, ob der vorhergehende Rahmen mehr oder weniger Oberwellen als der gegenwärtige Rahmen hat. Die Anzahl der Oberwellen wird durch die Variable sh angezeigt. In Abhängigkeit davon, welcher Rahmen die meisten Oberwellen hat, wird entschieden, ob der Block 1505 oder 1506 ausgeführt wird. Die Variable hmin wird gleich der letzten Oberwellenzahl eines der beiden Rahmen gesetzt. Nachdem entweder der Block 1505 oder 1506 ausgeführt worden ist, werden die Blöcke 1511 und 1512 ausgeführt. Die letztgenannten Blöcke legen den Anfangspunkt des gegenwärtigen Rahmens fest, indem der letzte Punkt des vorhergehenden Rahmens sowohl für die Frequenz als auch für die Amplitude berechnet wird. Nachdem die Operation für alle Oberwelle ausgeführt worden ist, berechnen die Blöcke 1513 bis 1515 jeden der Pro-Abtastwerte sowohl für die Frequenzen als auch für die Amplituden aller Oberwellen, wie durch Gleichung 22 bzw. durch Gleichung 26 definiert ist.
  • Nachdem für alle Oberwellen, die durch die Variable hmin definiert sind, die Pro-Abtastwert-Frequenzen- und Amplituden berechnet worden sind, werden die Blöcke 1516 bis 1521 berechnet, um der Tatsache Rechnung zu tragen, daß der gegenwärtige Rahmen mehr Oberwellen als der vorhergehende Rahmen haben kann. Wenn der gegenwärtige Rahmen mehr Oberwellen als der vorhergehende Rahmen hat, übermittelt der Entscheidungsblock 1516 ein Steuersignal zu Block 1517. Sobald in dem gegenwärtigen Rahmen mehr Oberwellen sind als in dem vorhergehenden Rahmen, werden die Blöcke 1517 bis 1521 ausgeführt und ihre Operation stimmt mit der der Blöcke 1504 bis 1510 überein, wie dies vorhergehend beschrieben worden ist.
  • Die Berechnung der Pro-Abtastwerte für die Frequenz und die Amplituden jeder Oberwelle der zweiten Rahmenhälfte ist durch die Blöcke 1601 bis 1614 dargestellt. In Block 1601 wird die Entscheidung getroffen, ob der nächste Rahmen stimmhaft oder stimmlos ist. Wenn der nächste Rahmen stimmlos ist, werden die Blöcke 1603 bis 1607 ausgeführt. Man beachte, daß es nicht notwendig ist, Anfangswerte zu ermitteln, wie dies durch die Blöcke 1504 und 1507 erfolgt ist, da der erste Punkt der Mittelpunkt des Rahmens sowohl für die Frequenz als auch für die Amplituden ist. Die Blöcke 1603 bis 1607 führen Funktionen aus, die denen ähnlich sind, die von den Blöcken 1508 bis 1510 ausgeführt werden. Wenn der nächste Rahmen ein stimmhafter Rahmen ist, dann wird der Entscheidungsblock 1602 sowie der Block 1604 oder 1605 ausgeführt. Die Ausführung dieser Blöcke ist der Ausführung ähnlich, die für die Blöcke 1503, 1505 und 1506 vorhergehend beschrieben worden ist. Die Blöcke 1608 bis 1611 arbeiten in ähnlicher Weise wie die Blöcke 1513 bis 1516, wie dies vorhergehend beschrieben worden ist. Die Blöcke 1612 bis 1614 arbeiten in einer ähnlichen Weise wie die Blöcke 1519 bis 1521, wie dies vorhergehend beschrieben worden ist.
  • Die vom Generator 214 ausgeführte Schlußoperation ist die tatsächliche Sinuskonstruktion der Sprache unter Verwendung der Pro-Abtastwert der Frequenzen und Amplituden, die, wie zuvor beschrieben, für jede Oberwelle berechnet werden. Die Blöcke 1701 bis 1707 nach Fig. 19 verwenden die vorher berechnete Frequenzinformation, um die Phase der Oberwellen aus den Frequenzen zu berechnen und danach die in Gleichung 1 definierte Berechnung auszuführen. Die Blöcke 1702 und 1703 ermitteln den Anfangssprachabtastwert für den Start des Rahmens. Nachdem dieser Anfangspunkt ermittelt worden ist, wird der Rest der Sprachabtastwerte für den Rahmen durch die Blöcke 1704 bis 1707 berechnet. Das Ausgangssignal dieser Blöcke wird danach zum Digital-zu- Analog-Wandler 208 übertragen.

Claims (9)

1. Verarbeitungssystem zum Kodieren von stimmhaften Anteilen menschlicher Sprache mit
einer Segmentiereinrichtung (102) zum Zerlegen der Sprache in eine Vielzahl von Sprachrahmen, die je eine vorbestimmte Anzahl von in gleichmäßigen Abständen angeordneten Abtastwerten der Sprachaugenblicksamplituden aufweisen,
einem Rechner (111) zum Berechnen eines Satzes von Sprachparametersignalen, die für jeden Rahmen einen Vokaltrakt definieren,
einem Energierechner (103) zum Berechnen der Rahmenenergie pro Rahmen der Sprachabtastwerte,
einem Analysator (104, 105) zur Durchführung einer Spektralanalyse mit den Sprachabtastwerten eines jeden Rahmens, um ein Spektrum mit Spektralabtastwerten für jeden Rahmen zu erzeugen,
einem Grundfrequenzdetektor (109) zum Erfassen des Grundfrequenzsignals eines jeden Rahmens aus dem Spektrum, das jedem Rahmen entspricht,
einem Oberwellenlokalisierer (106) zum Ermitteln der Oberwellenfrequenzsignale eines jeden Rahmens aus den Spektralabtastwerten, und
einem Sender (113, 114) zum Senden kodierter Darstellungen der Rahmenenergie, des Satzes von Sprachparametern und der Grundfrequenz, dadurch gekennzeichnet, daß
eine Grundfrequenz-Einstelleinrichtung (107) derart ausgebildet ist, daß sie auf die erfaßte Grundfrequenz und die Spektralabtastwerte anspricht, um das erfaßte Grundfrequenzsignal so einzustellen, daß die Oberwellenfrequenzsignale gleichmäßig um ganzzahlige Vielfache des eingestellten Grundfrequenzsignals verteilt sind, indem sie Spitzen in den das Grundfrequenzsignal darstellenden Spektralabtastwerten analysiert, wobei die Grundfrequenz-Einstelleinrichtung das erfaßte Grundfrequenzsignal als Ausgangspunkt für die Analyse verwendet
daß ein Oberwellenrechner (108) zum Bestimmen von Frequenzversatzsignalen, die die Frequenzdifferenz zwischen jedem der Oberwellenfrequenzsignale und den ganzzahligen Vielfachen des eingestellten Grundfrequenzsignals für jeden Rahmen darstellen, ausgebildet ist,
daß der Oberwellenlokalisierer zum Verwenden der eingestellten Grundfrequenz ausgebildet ist, um die Oberwellenfrequenzsignale zu bestimmen, und
daß der Sender zum Senden von kodierten Darstellungen der Frequenzversatzsignale für eine nachfolgende Sprachsynthese ausgebildet ist.
2. System nach Anspruch 1, bei dem der Oberwellenlokalisierer eine Einrichtung (1201-1222) zum Suchen der Spektralabtastwerte enthält, um die Oberwellenfrequenzsignale zu bestimmen, wobei die Einrichtung (1201-1222) Vielfache des eingestellten Grundfrequenzsignals als Startpunkt für jedes Oberwellenfrequenzsignal verwendet.
3. Verfahren zum Synthetisieren stimmhafter Anteile menschlicher Sprache, die in eine Vielzahl von Rahmen zerlegt worden ist, die je eine vorbestimmte Anzahl von in gleichmäßigen Abstand angeordneten Abtastwerten der Sprachaugenblickswerte umfassen, wobei jeder Rahmen mit der Rahmenenergie, einem Satz von Sprachparametern, einem Grundfrequenzsignal der Sprache und Versatzsignalen kodiert wird, die die Differenz zwischen den theoretischen Oberwellenfrequenzen, die aus dem Grundfrequenzsignal abgeleitet werden, und den tatsächlichen Oberwellenfrequenzen darstellen, mit folgenden Verfahrensschritten:
Berechnen (212) von Oberwellenphasensignale für jede Oberwellenfrequenz für jedes einzelnen Rahmens unter Ansprechen auf die Versatzsignale und das Grundfrequenzsignal eines der Rahmen,
Berechnen der unskalierten Energie eines jeden Oberwellenphasensignals, wozu der Satz von Sprachparametern des einen Rahmens verwendet wird,
Aufaddieren der unskalierten Energie aller Oberwellenphasensignale des einen Rahmens,
Bestimmen der Oberwellenamplituden der Oberwellenphasensignale unter Ansprechen auf die Oberwellenenergie eines jeden Oberwellenphasensignals, die aufsummierte unskalierte Energie sowie auf die Rahmenenergie des einen Rahmens, und
Erzeugen (214) einer reproduzierten Sprache unter Ansprechen auf die Oberwellenphasensignale und auf die bestimmten Amplituden des einen Rahmens.
4. Verfahren nach Anspruch 3, nach dem jedes Oberwellenphasensignal eine Vielzahl von Abtastwerten enthält und der Berechnungsschritt folgende Schritte umfaßt:
Addieren jedes der Versatzsignale zu ganzzahligen Vielfachen des Grundfrequenzsignals, um ein Oberwellenfrequenzsignal für jedes Oberwellenphasensignal zu erhalten, und
Interpolieren unter Ansprechen auf das Oberwellenfrequenzsignal des einen Rahmens sowie auf das entsprechende Oberwellenfrequenzsignal des vorhergehenden und des nachfolgenden Rahmens eines jeden Oberwellenphasensignals, um die Vielzahl von Oberwellenabtastwerten eines jeden Oberwellenphasensignals des einen Rahmens aus dem vorhergehenden und dem nachfolgenden Rahmen, die stimmhafte Rahmen sind, zu erhalten.
5. Verfahren nach Anspruch 4, nach dem der Interpolationsschritt eine lineare Interpolation ausführt.
6. Verfahren nach Anspruch 5, nach dem sich das Oberwellenfrequenzsignal des einen Rahmens eines jeden Oberwellenphasensignals in der Mitte des Rahmens befindet.
7. Verfahren nach Anspruch 3, nach dem jede Amplitude der Oberwellenphasensignale eine Vielzahl von Amplitudenabtastwerten aufweist und der Berechnungsschritt den Interpolationsschritt unter Ansprechen auf die berechnete Oberwellenamplitude des einen Rahmens und die berechneten Oberwellenamplitudenabtastwerte des vorhergehenden und nachfolgenden Rahmens für jedes Oberwellenphasensignal umfaßt, um die Vielzahl von Amplitudenabtastwerte für jedes Oberwellenphasensignal des einen Rahmens aus dem vorhergehenden und dem nachfolgenden Rahmen, die stimmhafte Rahmen sind, zu erhalten.
8. Verfahren nach Anspruch 7, nach dem der Interpolationsschritt eine lineare Interpolation ausführt.
9. Verfahren nach Anspruch 8, nach dem die berechnete Oberwellenamplitude des einen Rahmens eines jeden Oberwellenphasensignals sich in der Mitte des einen Rahmens befindet.
DE3789476T 1986-09-11 1987-09-02 Digitaler Vocoder. Expired - Fee Related DE3789476T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US06/906,523 US4797926A (en) 1986-09-11 1986-09-11 Digital speech vocoder

Publications (2)

Publication Number Publication Date
DE3789476D1 DE3789476D1 (de) 1994-05-05
DE3789476T2 true DE3789476T2 (de) 1994-09-15

Family

ID=25422593

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3789476T Expired - Fee Related DE3789476T2 (de) 1986-09-11 1987-09-02 Digitaler Vocoder.

Country Status (8)

Country Link
US (1) US4797926A (de)
EP (1) EP0260053B1 (de)
JP (1) JPH0833754B2 (de)
KR (1) KR960002388B1 (de)
AT (1) ATE103728T1 (de)
AU (1) AU580218B2 (de)
CA (1) CA1307345C (de)
DE (1) DE3789476T2 (de)

Families Citing this family (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5202953A (en) * 1987-04-08 1993-04-13 Nec Corporation Multi-pulse type coding system with correlation calculation by backward-filtering operation for multi-pulse searching
US4989250A (en) * 1988-02-19 1991-01-29 Sanyo Electric Co., Ltd. Speech synthesizing apparatus and method
US5003604A (en) * 1988-03-14 1991-03-26 Fujitsu Limited Voice coding apparatus
US5179626A (en) * 1988-04-08 1993-01-12 At&T Bell Laboratories Harmonic speech coding arrangement where a set of parameters for a continuous magnitude spectrum is determined by a speech analyzer and the parameters are used by a synthesizer to determine a spectrum which is used to determine senusoids for synthesis
US5023910A (en) * 1988-04-08 1991-06-11 At&T Bell Laboratories Vector quantization in a harmonic speech coding arrangement
US5359696A (en) * 1988-06-28 1994-10-25 Motorola Inc. Digital speech coder having improved sub-sample resolution long-term predictor
EP0374941B1 (de) * 1988-12-23 1995-08-09 Nec Corporation Sprachübertragungssystem unter Anwendung von Mehrimpulsanregung
JP2903533B2 (ja) * 1989-03-22 1999-06-07 日本電気株式会社 音声符号化方式
JPH0782359B2 (ja) * 1989-04-21 1995-09-06 三菱電機株式会社 音声符号化装置、音声復号化装置及び音声符号化・復号化装置
CA2021514C (en) * 1989-09-01 1998-12-15 Yair Shoham Constrained-stochastic-excitation coding
NL8902463A (nl) * 1989-10-04 1991-05-01 Philips Nv Inrichting voor geluidsynthese.
US5754976A (en) * 1990-02-23 1998-05-19 Universite De Sherbrooke Algebraic codebook with signal-selected pulse amplitude/position combinations for fast coding of speech
CA2010830C (en) * 1990-02-23 1996-06-25 Jean-Pierre Adoul Dynamic codebook for efficient speech coding based on algebraic codes
US5701392A (en) * 1990-02-23 1997-12-23 Universite De Sherbrooke Depth-first algebraic-codebook search for fast coding of speech
JP2689739B2 (ja) * 1990-03-01 1997-12-10 日本電気株式会社 秘話装置
US5226108A (en) * 1990-09-20 1993-07-06 Digital Voice Systems, Inc. Processing a speech signal with estimated pitch
US5138661A (en) * 1990-11-13 1992-08-11 General Electric Company Linear predictive codeword excited speech synthesizer
US5293449A (en) * 1990-11-23 1994-03-08 Comsat Corporation Analysis-by-synthesis 2,4 kbps linear predictive speech codec
US5630011A (en) * 1990-12-05 1997-05-13 Digital Voice Systems, Inc. Quantization of harmonic amplitudes representing speech
US5226084A (en) * 1990-12-05 1993-07-06 Digital Voice Systems, Inc. Methods for speech quantization and error correction
US5450522A (en) * 1991-08-19 1995-09-12 U S West Advanced Technologies, Inc. Auditory model for parametrization of speech
US5189701A (en) * 1991-10-25 1993-02-23 Micom Communications Corp. Voice coder/decoder and methods of coding/decoding
US5351338A (en) * 1992-07-06 1994-09-27 Telefonaktiebolaget L M Ericsson Time variable spectral analysis based on interpolation for speech coding
US5517511A (en) * 1992-11-30 1996-05-14 Digital Voice Systems, Inc. Digital transmission of acoustic signals over a noisy communication channel
US5832436A (en) * 1992-12-11 1998-11-03 Industrial Technology Research Institute System architecture and method for linear interpolation implementation
US5448679A (en) * 1992-12-30 1995-09-05 International Business Machines Corporation Method and system for speech data compression and regeneration
US5479559A (en) * 1993-05-28 1995-12-26 Motorola, Inc. Excitation synchronous time encoding vocoder and method
EP0653846B1 (de) * 1993-05-31 2001-12-19 Sony Corporation Verfahren und vorrichtung zum kodieren oder dekodieren von signalen und aufzeichnungsmedium
PL173718B1 (pl) * 1993-06-30 1998-04-30 Sony Corp Sposób i urządzenie do kodowania sygnałów cyfrowych
JP2906968B2 (ja) * 1993-12-10 1999-06-21 日本電気株式会社 マルチパルス符号化方法とその装置並びに分析器及び合成器
JP3203657B2 (ja) * 1994-04-01 2001-08-27 ソニー株式会社 情報符号化方法及び装置,情報復化方法及び装置,情報伝送方法,並びに情報記録媒体
US5715365A (en) * 1994-04-04 1998-02-03 Digital Voice Systems, Inc. Estimation of excitation parameters
US5787387A (en) * 1994-07-11 1998-07-28 Voxware, Inc. Harmonic adaptive speech coding method and system
JP3528258B2 (ja) * 1994-08-23 2004-05-17 ソニー株式会社 符号化音声信号の復号化方法及び装置
AU696092B2 (en) * 1995-01-12 1998-09-03 Digital Voice Systems, Inc. Estimation of excitation parameters
US5701390A (en) * 1995-02-22 1997-12-23 Digital Voice Systems, Inc. Synthesis of MBE-based coded speech using regenerated phase information
US5754974A (en) * 1995-02-22 1998-05-19 Digital Voice Systems, Inc Spectral magnitude representation for multi-band excitation speech coders
JPH08254993A (ja) * 1995-03-16 1996-10-01 Toshiba Corp 音声合成装置
US5717819A (en) * 1995-04-28 1998-02-10 Motorola, Inc. Methods and apparatus for encoding/decoding speech signals at low bit rates
US5774837A (en) * 1995-09-13 1998-06-30 Voxware, Inc. Speech coding system and method using voicing probability determination
JP2861889B2 (ja) * 1995-10-18 1999-02-24 日本電気株式会社 音声パケット伝送システム
JP4005154B2 (ja) * 1995-10-26 2007-11-07 ソニー株式会社 音声復号化方法及び装置
JP3707116B2 (ja) 1995-10-26 2005-10-19 ソニー株式会社 音声復号化方法及び装置
JP2778567B2 (ja) * 1995-12-23 1998-07-23 日本電気株式会社 信号符号化装置及び方法
US5794199A (en) * 1996-01-29 1998-08-11 Texas Instruments Incorporated Method and system for improved discontinuous speech transmission
JP3687181B2 (ja) * 1996-04-15 2005-08-24 ソニー株式会社 有声音/無声音判定方法及び装置、並びに音声符号化方法
US5778337A (en) * 1996-05-06 1998-07-07 Advanced Micro Devices, Inc. Dispersed impulse generator system and method for efficiently computing an excitation signal in a speech production model
JPH10149199A (ja) * 1996-11-19 1998-06-02 Sony Corp 音声符号化方法、音声復号化方法、音声符号化装置、音声復号化装置、電話装置、ピッチ変換方法及び媒体
US6161089A (en) * 1997-03-14 2000-12-12 Digital Voice Systems, Inc. Multi-subframe quantization of spectral parameters
US6131084A (en) * 1997-03-14 2000-10-10 Digital Voice Systems, Inc. Dual subframe quantization of spectral magnitudes
EP1002312B1 (de) * 1997-07-11 2006-10-04 Philips Electronics N.V. Transmitter mit verbessertem harmonischen sprachkodierer
EP0925580B1 (de) * 1997-07-11 2003-11-05 Koninklijke Philips Electronics N.V. Übertrager mit verbessertem sprachkodierer und dekodierer
US6029133A (en) * 1997-09-15 2000-02-22 Tritech Microelectronics, Ltd. Pitch synchronized sinusoidal synthesizer
JP3502247B2 (ja) * 1997-10-28 2004-03-02 ヤマハ株式会社 音声変換装置
US6199037B1 (en) 1997-12-04 2001-03-06 Digital Voice Systems, Inc. Joint quantization of speech subframe voicing metrics and fundamental frequencies
WO1999059139A2 (en) * 1998-05-11 1999-11-18 Koninklijke Philips Electronics N.V. Speech coding based on determining a noise contribution from a phase change
DE69932786T2 (de) * 1998-05-11 2007-08-16 Koninklijke Philips Electronics N.V. Tonhöhenerkennung
US6230130B1 (en) 1998-05-18 2001-05-08 U.S. Philips Corporation Scalable mixing for speech streaming
TW430778B (en) * 1998-06-15 2001-04-21 Yamaha Corp Voice converter with extraction and modification of attribute data
US6959274B1 (en) * 1999-09-22 2005-10-25 Mindspeed Technologies, Inc. Fixed rate speech compression system and method
GB2357231B (en) * 1999-10-01 2004-06-09 Ibm Method and system for encoding and decoding speech signals
US6725190B1 (en) * 1999-11-02 2004-04-20 International Business Machines Corporation Method and system for speech reconstruction from speech recognition features, pitch and voicing with resampled basis functions providing reconstruction of the spectral envelope
US6377916B1 (en) 1999-11-29 2002-04-23 Digital Voice Systems, Inc. Multiband harmonic transform coder
US7212639B1 (en) * 1999-12-30 2007-05-01 The Charles Stark Draper Laboratory Electro-larynx
EP1684634A2 (de) * 2003-11-12 2006-08-02 Facet Technologies, LLC Lanzettenvorrichtung und multi-lanzetten-kartusche
EP1569200A1 (de) * 2004-02-26 2005-08-31 Sony International (Europe) GmbH Sprachdetektion in digitalen Audiodaten
KR100608062B1 (ko) * 2004-08-04 2006-08-02 삼성전자주식회사 오디오 데이터의 고주파수 복원 방법 및 그 장치
KR100790110B1 (ko) * 2006-03-18 2008-01-02 삼성전자주식회사 모폴로지 기반의 음성 신호 코덱 방법 및 장치
KR100900438B1 (ko) * 2006-04-25 2009-06-01 삼성전자주식회사 음성 패킷 복구 장치 및 방법
KR101380170B1 (ko) * 2007-08-31 2014-04-02 삼성전자주식회사 미디어 신호 인코딩/디코딩 방법 및 장치
JP4775977B2 (ja) * 2008-03-28 2011-09-21 日立金属株式会社 シート材穿孔装置
US9299362B2 (en) * 2009-06-29 2016-03-29 Mitsubishi Electric Corporation Audio signal processing device
JP4883732B2 (ja) * 2009-10-13 2012-02-22 株式会社日立メタルプレシジョン シート材穿孔装置
CN101847404B (zh) * 2010-03-18 2012-08-22 北京天籁传音数字技术有限公司 一种实现音频变调的方法和装置
ES2689072T3 (es) * 2012-05-23 2018-11-08 Nippon Telegraph And Telephone Corporation Codificación de una señal de audio
KR20150032390A (ko) * 2013-09-16 2015-03-26 삼성전자주식회사 음성 명료도 향상을 위한 음성 신호 처리 장치 및 방법
US9837089B2 (en) * 2015-06-18 2017-12-05 Qualcomm Incorporated High-band signal generation
US10847170B2 (en) 2015-06-18 2020-11-24 Qualcomm Incorporated Device and method for generating a high-band signal from non-linearly processed sub-ranges
EP3121814A1 (de) * 2015-07-24 2017-01-25 Sound object techology S.A. in organization Verfahren und system zur zerlegung eines akustischen signals in klangobjekte, klangobjekt und dessen verwendung
CN106356055B (zh) * 2016-09-09 2019-12-10 华南理工大学 基于正弦模型的可变频语音合成系统及方法
CN113938749B (zh) * 2021-11-30 2023-05-05 北京百度网讯科技有限公司 音频数据处理方法、装置、电子设备和存储介质
US20230388562A1 (en) * 2022-05-27 2023-11-30 Sling TV L.L.C. Media signature recognition with resource constrained devices

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4045616A (en) * 1975-05-23 1977-08-30 Time Data Corporation Vocoder system
JPS5543554A (en) * 1978-09-25 1980-03-27 Nippon Musical Instruments Mfg Electronic musical instrument
JPS56119194A (en) * 1980-02-23 1981-09-18 Sony Corp Sound source device for electronic music instrument
JPS56125795A (en) * 1980-03-05 1981-10-02 Sony Corp Sound source for electronic music instrument
US4419544A (en) * 1982-04-26 1983-12-06 Adelman Roger A Signal processing apparatus
SE428167B (sv) * 1981-04-16 1983-06-06 Mangold Stephan Programmerbar signalbehandlingsanordning, huvudsakligen avsedd for personer med nedsatt horsel
US4631746A (en) * 1983-02-14 1986-12-23 Wang Laboratories, Inc. Compression and expansion of digitized voice signals
US4667340A (en) * 1983-04-13 1987-05-19 Texas Instruments Incorporated Voice messaging system with pitch-congruent baseband coding
US4513651A (en) * 1983-07-25 1985-04-30 Kawai Musical Instrument Mfg. Co., Ltd. Generation of anharmonic overtones in a musical instrument by additive synthesis
US4701954A (en) * 1984-03-16 1987-10-20 American Telephone And Telegraph Company, At&T Bell Laboratories Multipulse LPC speech processing arrangement
JPS6121000A (ja) * 1984-07-10 1986-01-29 日本電気株式会社 Csm型音声合成器
WO1986005617A1 (en) * 1985-03-18 1986-09-25 Massachusetts Institute Of Technology Processing of acoustic waveforms
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

Also Published As

Publication number Publication date
AU7825487A (en) 1988-03-24
US4797926A (en) 1989-01-10
EP0260053A1 (de) 1988-03-16
AU580218B2 (en) 1989-01-05
KR960002388B1 (ko) 1996-02-16
ATE103728T1 (de) 1994-04-15
EP0260053B1 (de) 1994-03-30
DE3789476D1 (de) 1994-05-05
CA1307345C (en) 1992-09-08
KR880004426A (ko) 1988-06-07
JPH0833754B2 (ja) 1996-03-29
JPS6370900A (ja) 1988-03-31

Similar Documents

Publication Publication Date Title
DE3789476T2 (de) Digitaler Vocoder.
DE68907629T2 (de) Vektorquantisierung für eine Anordnung zur harmonischen Sprachcodierung.
DE68916944T2 (de) Verfahren zur schnellen Bestimmung der Grundfrequenz in Sprachcodierern mit langfristiger Prädiktion.
DE69009545T2 (de) Verfahren zur Sprachanalyse und -synthese.
DE69029120T2 (de) Stimmenkodierer
EP1979901B1 (de) Verfahren und anordnungen zur audiosignalkodierung
DE69910240T2 (de) Vorrichtung und verfahren zur wiederherstellung des hochfrequenzanteils eines überabgetasteten synthetisierten breitbandsignals
DE60120766T2 (de) Indizieren von impulspositionen und vorzeichen in algebraischen codebüchern zur codierung von breitbandsignalen
DE3874427T2 (de) Linearer praediktionsvocoder mit code-anregung.
DE60011051T2 (de) Celp-transkodierung
DE60024501T2 (de) Verbesserung der perzeptuellen Qualität von SBR (Spektralbandreplikation) UND HFR (Hochfrequenzen-Rekonstruktion) Kodierverfahren mittels adaptivem Addieren von Grundrauschen und Begrenzung der Rauschsubstitution
DE68912692T2 (de) Zur Sprachqualitätsmodifizierung geeignetes Übertragungssystem durch Klassifizierung der Sprachsignale.
EP0076234B1 (de) Verfahren und Vorrichtung zur redundanzvermindernden digitalen Sprachverarbeitung
DE2229149A1 (de) Verfahren zur Übertragung von Sprache
DE69020070T2 (de) Digitaler Sprachkodierer mit verbesserter Bestimmung eines Langzeit-Verzögerungsparameters.
DE69924280T2 (de) Sprachsynthese aus grundfrequenz-prototypwellenformen durch zeit-synchrone wellenforminterpolation
DE2551632C2 (de) Verfahren zum Zusammensetzen von Sprachnachrichten
DE60221927T2 (de) Vorrichtung und Programm zur Schallcodierung
DE2659096A1 (de) Verfahren und vorrichtung zur spracherkennung
EP1280138A1 (de) Verfahren zur Analyse von Audiosignalen
DE69017801T2 (de) Codierung unter Anwendung von beschränkter stochastischer Anregung.
DE3884839T2 (de) Codierung von akustischen Wellenformen.
DE60015934T2 (de) Verfahren und vorrichtung zur vorverarbeitung von sprachsignalen zur kodierung mittels transformationssprachkodierer
DE68923771T2 (de) Sprachübertragungssystem unter Anwendung von Mehrimpulsanregung.
DE3019823C2 (de)

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Free format text: BLUMBACH, KRAMER & PARTNER, 65193 WIESBADEN

8339 Ceased/non-payment of the annual fee