DE60133757T2 - Verfahren und vorrichtung zur kodierung von stimmloser sprache - Google Patents

Verfahren und vorrichtung zur kodierung von stimmloser sprache Download PDF

Info

Publication number
DE60133757T2
DE60133757T2 DE60133757T DE60133757T DE60133757T2 DE 60133757 T2 DE60133757 T2 DE 60133757T2 DE 60133757 T DE60133757 T DE 60133757T DE 60133757 T DE60133757 T DE 60133757T DE 60133757 T2 DE60133757 T2 DE 60133757T2
Authority
DE
Germany
Prior art keywords
subframe
random noise
speech
gains
filter
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
Application number
DE60133757T
Other languages
English (en)
Other versions
DE60133757D1 (de
Inventor
Pengjun c/o QUALCOMM INCORPORATED San Diego HUANG
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.)
Qualcomm Inc
Original Assignee
Qualcomm 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 Qualcomm Inc filed Critical Qualcomm Inc
Application granted granted Critical
Publication of DE60133757D1 publication Critical patent/DE60133757D1/de
Publication of DE60133757T2 publication Critical patent/DE60133757T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/12Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/083Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being an excitation gain
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/93Discriminating between voiced and unvoiced parts of speech signals

Description

  • HINTERGRUND
  • I. Gebiet der Erfindung
  • Die offenbarten Ausführungsbeispiele betreffen das Gebiet einer Sprachverarbeitung. Insbesondere betreffen die offenbarten Ausführungsbeispiele ein neues und verbessertes Verfahren und eine Vorrichtung für eine Codierung mit niedriger Bitrate von nicht-stimmhaften Segmenten von Sprache.
  • II. Hintergrund
  • Eine Übertragung von Sprache durch digitale Techniken ist weit verbreitet, insbesondere bei Fern- und digitalen Funktelefonanwendungen. Dies wiederum hat Interesse erzeugt an der Bestimmung der geringsten Menge an Information, die über einen Kanal gesendet werden kann, während die wahrgenommene Qualität der rekonstruierten Sprache beibehalten wird. Wenn Sprache durch einfaches Abtasten und Digitalisieren übertragen wird, ist eine Datenrate im Bereich von 64 Kilobits pro Sekunde (kbps – kilobits per second) erforderlich, um eine Sprachqualität eines herkömmlichen analogen Telefons zu erreichen. Jedoch kann durch die Verwendung einer Sprachanalyse, gefolgt von der geeigneten Codierung, Übertragung und Resynthese an dem Empfänger eine signifikante Reduzierung der Datenrate erreicht werden.
  • Vorrichtungen, die Techniken einsetzen, um Sprache durch Extraktion von Parametern zu komprimieren, die ein Modell einer menschlichen Spracherzeugung betreffen, werden als Sprachcodierer bezeichnet. Ein Sprachcodierer teilt das ankommende Sprachsignal in Zeitblöcke oder Analyserahmen. Sprachcodierer weisen typischerweise einen Codierer und einen Decodierer oder einen Codec auf. Der Codierer analysiert den ankommenden Sprachrahmen, um bestimmte relevante Parameter zu extrahieren, und quantisiert dann die Parameter in eine binäre Darstellung, d. h. in einen Satz von Bits oder ein binäres Datenpaket. Die Datenpakete werden über den Kommunikationskanal an einen Empfänger und einen Decodierer übertragen. Der Decodierer verarbeitet die Datenpakete, dequantisiert sie, um die Parameter zu erzeugen, und resynthesiert dann die Sprachrahmen unter Verwendung der dequantisierten Parameter.
  • Die Funktion des Sprachcodierers ist, das digitalisierte Sprachsignal in ein Signal mit geringer Bitrate zu komprimieren durch Entfernen aller natürlichen Redundanzen, die in der Sprache inhärent sind. Die digitale Komprimierung wird erreicht durch Darstellen des Eingangssprachrahmens durch einen Satz von Parametern und Einsetzen einer Quantisierung, um die Parameter mit einem Satz von Bits darzustellen. Wenn der Eingangssprachrahmen eine Anzahl von Bits N hat und das von dem Sprachcodierer erzeugte Datenpaket eine Anzahl von Bits No hat, dann ist der von dem Sprachcodierer erzielte Komprimierungsfaktor Cr = Ni/No. Die Aufgabe ist, eine hohe Sprachqualität der decodierten Sprache zu erhalten bei Erzielung des Ziel-Komprimierungsfaktors. Die Leistung eines Sprachcodierers hängt davon ab, (1) wie gut das Sprachmodell oder die oben beschriebene Kombination des Analyse- und Syntheseprozesses arbeitet, und (2) wie gut der Parameterquantisierungsprozess an der Zielbitrate von No Bits pro Rahmen durchgeführt wird. Das Ziel des Sprachmodells ist somit, die Essenz des Sprachsignals oder die Ziel-Sprachqualität mit einem kleinen Satz von Parametern für jeden Rahmen zu erfassen.
  • Sprachcodierer können als Zeitbereichs- bzw. Zeitdomain-Codierer implementiert werden, die versuchen, die Zeitbereichs-Sprachwellenform zu erfassen durch Einsatz einer Verarbeitung mit hoher Zeitauflösung, um jeweils kleine Segmente von Sprache (typischerweise 5 Millisekunden (ms) Teilrahmen) zu codieren. Für jeden Teilrahmen wird ein hochgenauer Repräsentant aus einem Codebuchraum mittels verschiedener in der Technik bekannter Suchalgorithmen gefunden. Alternativ können Sprachcodierer als Frequenzbereichs- bzw. Frequenzdomain-Codierer implementiert werden, die versu chen, das Kurzzeit-Sprachspektrum des Eingangssprachrahmens mit einem Satz von Parametern zu erfassen (Analyse), und einen entsprechenden Syntheseprozess einsetzen, um die Sprachwellenform aus den spektralen Parametern wiederherzustellen. Der Parameter-Quantisierer erhält die Parameter, indem er sie durch gespeicherte Darstellungen von Code-Vektoren gemäß bekannten Quantisierungstechniken darstellt, die von A. Gersho & R. M. Gray in „Vector Quantization and Signal Compression" (1992) beschrieben werden.
  • Ein weithin bekannter Zeitbereichs-Sprachcodierer ist der CELP(Code Excited Linear Predictive)-Codierer, der von L. B. Rabiner & R. W. Schafer in „Digital Processing of Speech Signals", 396–453, (1978) beschrieben wird. In einem CELP-Codierer werden die Kurzzeit-Korrelationen oder Redundanzen in dem Sprachsignal von einer LP(linear prediction)-Analyse entfernt, welche die Koeffizienten eines Kurzzeit-Formant-Filters findet. Ein Anwenden des Kurzzeit-Voraussage(prediction)-Filters auf den Eingangssprachrahmen erzeugt ein LP-Restsignal, das weiter mit Langzeit-Voraussage(bzw. Vorhersage)-Filter-Parametern und einem nachfolgenden stochastischem Codebuch modelliert und quantisiert wird. Somit teilt eine CELP-Codierung die Aufgabe einer Codierung der Zeitbereichs-Sprachwellenform in die getrennten Aufgaben einer Codierung der LP-Kurzzeit-Filter-Koeffizienten und einer Codierung des LP-Rests. Eine Zeitbereichs-Codierung kann mit einer festen Rate (d. h. unter Verwendung derselben Anzahl von Bits, No, für jeden Rahmen) oder mit einer variablen Rate (in der unterschiedliche Bitraten für unterschiedliche Typen von Rahmeninhalten verwendet werden) durchgeführt werden. Codierer mit variabler Rate versuchen, nur die Menge von Bits zu verwenden, die erforderlich ist, um die Codec-Parameter auf einem Level zu codieren, der ausreichend ist, um eine Soll-Qualität zu erhalten. Ein beispielhafter CELP-Codierer mit variabler Rate wird in dem U. S.-Patent Nr. 5,414,796 beschrieben, das der Anmelderin der vorliegenden offenbarten Erfindung erteilt wurde.
  • Zeitbereichs-Codierer, wie der CELP-Codierer, stützen sich typischerweise auf eine hohe Anzahl von Bits, No, pro Rahmen, um die Genauigkeit der Zeitbereichs-Sprachwellenform zu bewahren. Derartige Codierer liefern typischerweise eine exzellente Sprachqualität, vorausgesetzt, die Anzahl von Bits, No, pro Rahmen ist relativ groß (z. B. 8 kbps oder höher). Bei niedrigen Bitraten (4 kbps und darunter) jedoch scheitern Zeitbereichs-Codierer aufgrund der begrenzten Anzahl von verfügbaren Bits, eine hohe Qualität und robuste Leistung aufrechtzuerhalten. Bei niedrigen Bitraten beschneidet (clips) der begrenzte Codebuchraum die Wellenformübereinstimmungs-Fähigkeit von herkömmlichen Zeitbereichs-Codierern, die so erfolgreich in kommerziellen Anwendungen mit höherer Rate eingesetzt werden.
  • Typischerweise setzen CELP-Schemen einen Kurzzeit-Voraussage(STP – short term prediction)-Filter und einen Langzeit-Vorrausage(LTP – long term prediction)-Filter ein. Ein Ansatz „Analyse durch Synthese (AbS – Analysis by Synthesis)" wird an einem Codierer eingesetzt, um die LTP-Verzögerungen und Verstärkungen zu finden sowie die besten stochastischen Codebuch-Verstärkungen und -Indizes. Aktuelle CELP-Codierer gemäß dem Stand der Technik, wie der EVRC (Enhanced Variable Rate Coder), können eine synthetisierte Sprache mit guter Qualität mit einer Datenrate von ungefähr 8 Kilobits pro Sekunde erzielen.
  • Es ist auch bekannt, dass nicht-stimmhafte bzw. stimmlose Sprache keine Periodizität zeigt. Die Bandbreite, die bei der Codierung des LTP-Filters in den herkömmlichen CELP-Schemen verbraucht wird, wird für stimmlose Sprache nicht so effizient genutzt wie für stimmhafte Sprache, wo eine Periodizität der Sprache stark ist und eine LTP-Filterung bedeutend ist. Folglich ist ein effizienteres (d. h. niedrige Bitrate) Codierungsschema wünschenswert für eine stimmlose Sprache.
  • Zur Codierung bei geringeren Bitraten wurden verschiedene Verfahren einer spektralen oder Frequenzbereichs-Codierung von Sprache entwickelt, wobei das Sprachsignal als eine Zeit-variierende Evolution von Spektren analysiert wird. Siehe zum Beispiel R. J. McAulay & T. F. Quatieri, „Sinusoidal Coding", in Speech Coding and Synthesis, Kap. 4 (W. B. Kleijn & K. K. Paliwal, Hrsg., 1995). In spektralen Codierern ist das Ziel, das Kurzzeit-Sprachspektrum jedes eingegebenen Sprachrahmens mit einem Satz von spektralen Parametern zu modellieren oder vorherzusagen, statt präzise die Zeit-variierende Sprachwellenform zu imitieren. Die spektralen Parameter werden dann codiert und ein Ausgaberahmen von Sprache wird mit den decodierten Parametern erzeugt. Die resultierende synthetisierte Sprache stimmt nicht mit der ursprünglichen Eingangssprachwellenform überein, bietet aber eine ähnliche wahrgenommene Qualität. Beispiele von Frequenzbereichs-Codierern, die in der Technik weithin bekannt sind, umfassen MBEs (multiband excitation coders), STCs (sinusoidal transform coders) und HCs (harmonic coders). Derartige Frequenzbereichs-Codierer bieten ein hochwertiges parametrisches Modell mit einem kompakten Satz von Parametern, die mit der geringen Anzahl von bei niedrigen Bitraten verfügbaren Bits genau quantisiert werden können.
  • Trotzdem führt eine Codierung bei niedriger Bitrate die kritische Beschränkung einer begrenzten Codierungsauflösung oder einen begrenzten Codebuchraum ein, was die Wirksamkeit eines einzelnen Codiermechanismus einschränkt und den Codierer unfähig macht, verschiedene Typen von Sprachsegmenten bei verschiedenen Hintergrundbedingungen mit gleicher Genauigkeit darzustellen. Zum Beispiel übertragen herkömmliche Frequenzbereichs-Codierer für niedrige Bitraten keine Phaseninformation für Sprachrahmen. Stattdessen wird die Phaseninformation durch Verwendung eines zufälligen, künstlich erzeugten, anfänglichen Phasenwerts und linearer Interpolationstechniken rekonstruiert. Siehe zum Beispiel H. Yang et al „Quadratic Phase Interpolation for Voiced Speech Synthesis in the MBE Model", in 29 Electronic Letters, 856–57 (Mai 1993). Da die Phaseninformation künstlich erzeugt wird, wird, auch wenn die Amplituden der Sinuskurven durch den Quantisierungs-Dequantisierungs-Prozess perfekt erhalten werden, die von dem Frequenzbereichs-Codierer erzeugte Ausgabesprache mit der ursprünglich eingegebenen Sprache nicht übereinstimmen (d. h. die hauptsäch lichen Pulse sind nicht synchron). Es hat sich somit als schwierig erwiesen, in Frequenzbereichs-Codierern eine Regelungsschleifen-Leistungsmessung bzw. „Closed-Loop"-Leistungsmessung (closed-loop performance measure) zu verwenden, wie zum Beispiel ein Rauschabstand (SNR – signal-to-noise ratio) oder ein wahrnehmbarer Rauschabstand (perceptual SNR).
  • Eine effektive Technik, um Sprache effizient mit einer geringen Bitrate zu codieren, ist eine Multimodecodierung. Multimodecodiertechniken wurden eingesetzt, um eine Sprachcodierung mit niedriger Rate in Verbindung mit einem Steuerschleifenmodus-Entscheidungsvorgang bzw. „Open-Loop"-Modus-Entscheidungsvorgang (open-loop mode decision process) durchzuführen. Eine derartige Multimodecodiertechnik wird beschrieben von Amitava Das et al in „Multimode and Variable-Rate Coding of Speech", Speech Coding and Synthesis, Kap. 7 (W. B. Kleijn & K. K. Paliwal, Hrsg., 1995). Herkömmliche Multimodecodierer wenden unterschiedliche Modi oder Codier-Decodier-Algorithmen auf unterschiedliche Typen von Eingangssprachrahmen an. Jeder Modus oder Codier-Decodier-Prozess ist spezifisch, um einen bestimmten Typ von Sprachsegment, wie zum Beispiel stimmhafte (voiced) Sprache, nicht-stimmhafte bzw. stimmlose (unvoiced) Sprache oder Hintergrundrauschen (keine Sprache), auf die wirksamste Weise darzustellen. Ein externer Steuerschleifenmodus-Entscheidungsmechanismus untersucht den Eingangssprachrahmen und entscheidet, welcher Modus auf den Rahmen anzuwenden ist. Die Steuerungsmodus-Entscheidung wird typischerweise durchgeführt durch Extrahieren einer Anzahl von Parametern aus dem Eingangsrahmen, Evaluieren der Parameter in Bezug auf bestimmte zeitliche und spektrale Charakteristiken und Basieren einer Modusentscheidung auf die Evaluierung. Die Modusentscheidung wird somit getroffen ohne vorherige Kenntnis der genauen Bedingung der ausgegebenen Sprache, d. h. wie nahe die ausgegebene Sprache hinsichtlich einer Sprachqualität oder anderer Leistungsmessungen zu der eingegebenen Sprache sein wird. Eine beispielhafte Steuerschleifenmodusentscheidung für einen Sprach-Codec wird in dem U. S.-Patent Nr. 5,414,796 beschrieben, das der Anmelderin der vorliegenden offenbarten Erfindung erteilt wurde.
  • Eine Multimodecodierung kann mit fester Rate arbeiten unter Verwendung der derselben Anzahl von Bits N0 für jeden Rahmen oder mit variabler Rate, wobei unterschiedliche Bitraten für unterschiedliche Modi verwendet werden. Das Ziel bei einer Codierung mit variabler Rate ist, nur die Menge von Bits zu verwenden, die erforderlich ist, um die Codec-Parameter auf einen Level zu codieren, der ausreichend ist, um die Soll-Qualität zu erhalten. Als ein Ergebnis kann dieselbe Soll-Sprachqualität wie die eines Codierers mit fester Rate und höherer Rate erlangt werden mit einer signifikant niedrigeren mittleren Rate unter Verwendung von Techniken mit variabler Bitrate (VBR – variable bit rate). Ein beispielhafter Sprachcodierer mit variabler Rate wird in dem U. S.-Patent Nr. 5,414,796 beschrieben, das der Anmelderin der vorliegenden offenbarten Erfindung erteilt wurde.
  • Momentan gibt es einen Anstieg eines Forschungsinteresses und eine hohe kommerzielle Notwendigkeit, einen hochwertigen Sprachcodierer zu entwickeln, der bei mittleren bis geringen Bitraten arbeitet (d. h. in dem Bereich von 2.4 bis 4 kbps und darunter). Die Anwendungsgebiete umfassen ein drahtloses Fernsprechwesen, Satellitenkommunikation, Internettelephonie, verschiedene Multimedia- und Sprach-Streaming-Anwendungen, Voice-Mail und andere Sprachspeichersysteme. Die treibenden Kräfte sind die Notwendigkeit einer hohen Kapazität und die Nachfrage nach robuster Leistung in Paketverlustsituationen. Verschiedene Sprachcodier-Standardisierungsversuche der letzten Zeit sind eine weitere direkte Antriebskraft, die Forschung und Entwicklung von Sprachcodieralgorithmen mit niedriger Rate antreiben. Ein Sprachcodierer mit niedriger Rate ergibt mehr Kanäle oder Benutzer pro zulässiger Anwendungsbandbreite, und ein Sprachcodierer niedriger Rate, verbunden mit einer zusätzlichen Ebene einer geeigneten Kanalcodierung, kann für das gesamte Bit-Budget von Codierer-Spezifikationen geeignet sein und eine robuste Leistung unter Kanalfehlerbedingungen liefern.
  • Eine Multimode-VBR-Sprachcodierung ist somit ein effektiver Mechanismus, um Sprache mit niedriger Bitrate zu codieren. Herkömmliche Multimode-Schemen erfordern die Gestaltung von effizienten Codierungsschemen oder -Modi für verschiedene Segmente von Sprache (z. B. stimmlos, stimmhaft, Übergang bzw. Transient) sowie einen Modus für Hintergrundrauschen oder Stille. Die gesamte Leistung des Sprachcodierers hängt davon ab, wie gut jeder Modus arbeit, und die mittlere Rate des Codierers hängt ab von den Bitraten der unterschiedlichen Modi für stimmlose, stimmhafte und andere Segmente von Sprache. Um die Soll-Qualität mit einer niedrigen Durchschnittsrate zu erzielen, ist es erforderlich, effiziente Hochleistungs-Modi zu gestalten, von denen einige bei niedrigen Bitraten arbeiten müssen. Typischerweise werden stimmhafte und stimmlose Sprachsegmente bei hohen Bitraten erfasst und Hintergrundrauschen und Stille-Segmente werden durch Modi dargestellt, die mit einer signifikant niedrigeren Rate arbeiten. Somit gibt es einen Bedarf für eine Hochleistungs-Codierungstechnik mit niedriger Bitrate, die genau einen hohen Prozentsatz von stimmlosen Segmenten von Sprache erfasst, während sie eine minimale Anzahl von Bits pro Rahmen verwendet.
  • Weiter wird hingewiesen auf das Dokument US 2001/0049598 , das eine Codiertechnik mit niedriger Bitrate für stimmlose Segmente von Sprache offenbart. Das Verfahren umfasst die Schritte eines Extrahierens von hoch zeitlich auflösenden Energie-Koeffizienten aus einem Sprachrahmen, Quantisieren der Energie-Koeffizienten, Erzeugen einer hoch zeitlich auflösenden Energie-Einhüllenden aus den quantisierten Energie-Koeffizienten und Wiederherstellen eines Restsignals durch Formen eines zufällig erzeugten Rauschvektors mit quantisierten Werten der Energie-Einhüllenden. Die Energie-Einhüllende kann erzeugt werden mit einer linearen Interpolationstechnik. Ein Nachverarbeitungsmaß kann erlangt werden und verglichen werden mit einer vordefinierten Schwelle, um festzustellen, ob der Codieralgorithmus adäquat durchgeführt wird.
  • Gemäß der vorliegenden Erfindung sind ein Verfahren und ein Sprachcodierer zur Codierung stimmloser Segmente von Sprache, wie dargelegt in den Ansprüchen 1 und 11, und ein Verfahren und ein Sprachdecodierer zur Decodierung stimmloser Segmente von Sprache, wie dargelegt in den Ansprüchen 20 und 28, vorgesehen. Ausführungsbeispiele der Erfindung werden in den abhängigen Ansprüchen beschrieben.
  • ZUSAMMENFASSUNG
  • Die offenbarten Ausführungsbeispiele betreffen eine Hochleistungs-Codierungstechnik mit niedriger Bitrate, die genau stimmlose bzw. nicht-stimmhafte Segmente von Sprache erfasst bei einer Verwendung einer minimalen Anzahl von Bits pro Rahmen. Der Umfang der Erfindung wird definiert durch die unabhängigen Ansprüche 1, 11, 20 und 28. Demgemäß umfasst in einem Aspekt der Erfindung ein Verfahren zur Decodierung stimmloser Segmente von Sprache ein Wiederherstellen einer Gruppe von quantisierten Verstärkungen unter Verwendung empfangener Indizes für eine Vielzahl von Teilrahmen bzw. Unterrahmen; Erzeugen eines Zufallsrauschsignals, das Zufallszahlen für jeden der Vielzahl von Teilrahmen aufweist; Wählen eines vorgegebenen Prozentsatzes von Höchstamplituden-Zufallszahlen des Zufallsrauschsignals für jeden der Vielzahl von Teilrahmen; Skalieren der gewählten Höchstamplituden-Zufallszahlen mit den wiedergewonnenen Verstärkungen für jeden Teilrahmen, um ein skaliertes Zufallsrauschsignal zu erzeugen; Bandpass-Filtern und Formen (shaping) des skalierten Zufallsrauschsignals; und Wählen eines zweiten Filters basierend auf einem empfangenen Filterauswahl-Indikator und weiter Formen (shaping) des skalierten Zufallsrauschsignals mit dem gewählten Filter.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die Merkmale, Aufgaben und Vorteile der vorliegenden Erfindung werden offensichtlicher aus der im Folgenden dargelegten detaillierten Beschreibung in Verbindung mit den Zeichnungen, in denen gleiche Bezugszeichen Entsprechendes identifizieren und wobei:
  • 1 eine Blockdarstellung eines Kommunikationskanals ist, der an jedem Ende von Sprachcodierern begrenzt wird;
  • 2A ein Blockdiagramm eines Codierers ist, der in einem Hochleistungs-Sprachcodierer mit niedriger Bitrate verwendet werden kann;
  • 2B ein Blockdiagramm eines Decodierers ist, der in einem Hochleistungs-Sprachcodierer mit niedriger Bitrate verwendet werden kann;
  • 3 einen Hochleistungs-Stimmlos-Sprachcodierer mit niedriger Bitrate zeigt, der in dem Codierer der 2A verwendet werden kann;
  • 4 einen Hochleistungs-Stimmlos-Sprachcodierer mit niedriger Bitrate zeigt, der in dem Decodierer der 2B verwendet werden kann;
  • 5 ein Flussdiagramm ist, das Codierungsschritte einer Hochleistungs-Codiertechnik mit niedriger Bitrate für stimmlose Sprache zeigt;
  • 6 ein Flussdiagramm ist, das Decodierungsschritte einer Hochleistungs-Codiertechnik mit niedriger Bitrate für stimmlose Sprache zeigt;
  • 7A ein Graph einer Frequenzantwort einer Tiefpassfilterung zur Verwendung in einer Bandenergieanalyse ist;
  • 7B ein Graph einer Frequenzantwort einer Hochpassfilterung zur Verwendung in einer Bandenergieanalyse ist;
  • 8A ein Graph einer Frequenzantwort eines Bandpassfilters zur Verwendung bei einem Wahrnehmungsfilter ist;
  • 8B ein Graph einer Frequenzantwort eines Vor-Formungs-Filters zur Verwendung bei einem Wahrnehmungsfilter ist;
  • 8C ein Graph einer Frequenzantwort eines Formungs-Filters ist, der bei einem endgültigen Wahrnehmungsfilter verwendet werden kann; und
  • 8D ein Graph einer Frequenzantwort eines anderen Formungs-Filters ist, der bei einem endgültigen Wahrnehmungsfilter verwendet werden kann.
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSBEIPIELE
  • Die offenbarten Ausführungsbeispiele liefern ein Verfahren und eine Vorrichtung für eine Hochleistungs-Codierung mit niedriger Bitratecodierung einer stimmlosen bzw. nicht-stimmhaften Sprache. Stimmlose Sprachsignale werden digitalisiert und umgewandelt in Rahmen von Abtastwerten. Jeder Rahmen einer stimmlosen Sprache wird gefiltert durch einen Kurzzeit-Prädiktions-Filter, um Kurzzeit-Signalblöcke zu erzeugen. Jeder Rahmen wird in mehrere Teilrahmen geteilt. Eine Verstärkung wird dann für jeden Teilrahmen berechnet. Diese Verstärkungen werden nachfolgend quantisiert und übertragen. Dann wird ein Block von Zufallsrauschen erzeugt und gefiltert durch Verfahren, die im Detail unten beschrieben werden. Dieses gefilterte Zufallsrauschen wird skaliert durch die quantisierten Teilrahmenverstärkungen, um ein quantisiertes Signal zu bilden, das das Kurzzeit-Signal darstellt. An einem Decodierer wird ein Rahmen von Zufallsrauschen auf die gleiche Weise wie das Zufallsrauschen an dem Codierer erzeugt und gefiltert. Das gefilterte Zufallsrauschen an dem Decodierer wird dann durch die empfangenen Teilrahmenverstärkungen skaliert und geleitet durch einen Kurzzeit-Prädiktions-Filter, um einen Rahmen einer synthetisierten Sprache zu bilden, der die ursprünglichen Abtastwerte darstellt.
  • Die offenbarten Ausführungsbeispiele stellen eine neue Codierungstechnik für eine Vielfalt von stimmloser Sprache dar. Bei 2 Kilobits pro Sekunde ist die synthetisierte stimmlose Sprache wahrnehmbar äquivalent zu der, die durch herkömmliche CELP-Schemen erzeugt wird, die viel höhere Datenraten erfordern. Ein hoher Prozentsatz (ungefähr zwanzig Prozent) von stimmlosen Sprachsegmenten kann in Übereinstimmung mit den offenbarten Ausführungsbeispielen codiert werden.
  • In 1 empfängt ein erster Codierer 10 digitalisierte Sprachabtastwerte s(n) und codiert die Abtastwerte s(n) zur Übertragung auf einem Übertragungsmedium 12, oder Kommunikationskanal 12, an einen ersten Decodierer 14. Der Decodierer 14 decodiert die codierten Sprachabtastwerte und synthetisiert ein Ausgabesprachsignal SSYNTH(n). Zur Übertragung in die entgegengesetzte Richtung codiert ein zweiter Codierer 16 digitalisierte Sprachabtastwerte s(n), die auf einem Kommunikationskanal 18 übertragen werden. Ein zweiter Decodierer 20 empfängt und decodiert die codierten Sprachabtastwerte und erzeugt ein synthetisiertes Ausgabesprachsignal SSYNTH(n).
  • Die Sprachabtastwerte s(n) stellen Sprachsignale dar, die digitalisiert und quantisiert wurden gemäß einem von verschiedenen in der Technik bekannten Verfahren, einschließlich zum Beispiel Pulscode-Modulation (PCM – pulse code modulation), kompandiertes μ-Gesetz (μ-law) oder A-Gesetz. Wie in der Technik bekannt, werden die Sprachabtastwerte s(n) in Rahmen von Eingangsdaten organisiert, wobei jeder Rahmen eine vorgegebene Anzahl von digitalisierten Sprachabtastwerten s(n) aufweist. In einem beispielhaften Ausführungsbeispiel wird eine Abtastrate von 8 KHz eingesetzt, wobei jeder 20 ms Rahmen 160 Abtastwerte aufweist. In den unten beschriebenen Ausführungsbeispielen kann die Rate einer Datenübertragung auf einer Rahmen-zu-Rahmen-Basis von 8 kbps (volle Rate) zu 4 kbps (halbe Rate) zu 2 kbps (viertel Rate) zu 1 kbps (achtel Rate) variiert werden. Alternativ können andere Datenraten verwendet werden. Wie hier verwendet, betreffen die Begriffe „volle Rate" oder „hohe Rate" im Allgemeinen Datenraten, die größer als oder gleich 8 kbps sind und die Begriffe „halbe Rate" oder „niedrige/geringe Rate" betreffen im Allgemeinen Datenraten, die geringer als oder gleich 4 kbps sind. Ein Variieren der Datenübertragungsrate ist vorteilhaft, da niedrigere Bitraten selektiv für Rahmen eingesetzt werden können, die relativ wenig Sprachinformation enthalten. Wie für Fachleute offensichtlich ist, können andere Abtastraten, Rahmengrößen und Datenübertragungsraten verwendet werden.
  • Der erste Codierer 10 und der zweite Decodierer 20 bilden zusammen einen ersten Sprachcodierer oder Sprach-Codec. Ähnlich bilden der zweite Codierer 16 und der erste Decodierer 14 zusammen einen zweiten Sprachcodierer. Es ist für Fachleute offensichtlich, dass Sprachcodierer mit einem digitalen Signalprozessor (DSP – digital signal processor), einem anwendungsspezifischen Schaltkreis (ASIC – application-specific integrated circuit), einer diskreten Gatterlogik, einer Firmware oder jedem herkömmlichen programmierbaren Softwaremodul und einem Mikroprozessor implementiert werden können. Das Softwaremodul kann sich in einem RAM-Speicher, einem Flash-Speicher, Registern oder jeder anderen Form von in der Technik bekanntem beschreibbaren Speichermedium befinden. Alternativ kann jeder herkömmliche Prozessor, jede Steuereinrichtung oder Zustandsmaschine statt des Mikroprozessors eingesetzt werden. Beispielhafte ASICs, die speziell für eine Sprachcodierung ausgebildet sind, werden beschrieben in dem U.S.-Patent Nr. 5,727,123 , das der Anmelderin der vorliegenden offenbarten Erfindung erteilt wurde und durch Bezugnahme hier vollständig aufgenommen ist, und dem U.S.-Patent Nr. 5,784,532 mit dem Titel „APPLICATION SPECIFIC INTEGRATED CIRCUIT (ASIC) FOR PERFORMING RAPID SPEECH COMPRESSION IN A MOBILE TELEPHONE SYSTEM", das der Anmelderin der vorliegenden offenbarten Erfindung erteilt wurde.
  • 2A ist ein Blockdiagramm eines Codierers, gezeigt in 1 (10, 16), der die vorliegenden offenbarten Ausführungsbeispiele einsetzen kann. Ein Sprachsignal, s(n), wird durch einen Kurzzeit-Prädiktions-Filter 200 gefiltert. Die Sprache selbst, s(n) und/oder das Linear-Prädiktions-Restsignal r(n) am Ausgang des Kurzzeit-Prädiktions-Filters 200 liefern eine Eingabe an einen Sprachklassifizierer 202.
  • Die Ausgabe des Sprachklassifizierers 202 liefert eine Eingabe an einen Schalter 203, wodurch der Schalter 203 fähig ist, einen entsprechenden Moduscodierer (204, 206) zu wählen basierend auf einem klassifizierten Sprachmodus. Für Fachleute ist offensichtlich, dass der Sprachklassifizierer 202 nicht auf stimmhafte und stimmlose Sprachklassifikation begrenzt ist und auch Übergang bzw. Transition, Hintergrundrauschen (Stille) oder andere Typen von Sprache klassifizieren kann.
  • Ein stimmhafter Sprachcodierer 204 codiert stimmhafte Sprache durch jedes herkömmliche Verfahren, wie zum Beispiel CELP oder PWI (Prototype Waveform Interpolation).
  • Ein stimmloser Sprachcodierer 205 codiert stimmlose Sprache mit einer niedrigen Bitrate in Übereinstimmung mit den unten beschriebenen Ausführungsbeispielen. Der stimmhafte Sprachcodierer 206 wird detailliert mit Bezug auf 3 beschrieben in Übereinstimmung mit einem Ausführungsbeispiel.
  • Nach einer Codierung durch entweder den Codierer 204 oder den Codierer 206, bildet ein Multiplexer 208 einen Paket-Bit-Strom, der Datenpakete, Sprachmodus und andere codierte Parameter für eine Übertragung aufweist.
  • 2B ist ein Blockdiagramm eines Decodierers, dargestellt in 1 (14, 20), der die momentan offenbarten Ausführungsbeispiele einsetzen kann.
  • Ein Demultiplexer 210 empfängt einen Paket-Bit-Strom, demultiplexiert Daten aus dem Bit-Strom und gewinnt Datenpakete, Sprachmodus und andere codierte Parameter zurück.
  • Die Ausgabe des Demultiplexers 210 liefert eine Eingabe in einen Schalter 211, wodurch der Schalter 211 einen entsprechenden Modusdecoder (212, 214) wählen kann basierend auf einem klassifizierten Sprachmodus. Für Fachleute ist offensichtlich, dass der Schalter 211 nicht auf stimmhafte und stimmlose Sprachmodi begrenzt ist und auch Übergang, Hintergrundrauschen (Stille) oder andere Typen von Sprache erkennen kann.
  • Ein stimmhafter Sprachdecodierer 212 decodiert stimmhafte Sprache durch Durchführen der inversen Operationen des stimmhaften Codierers 204.
  • In einem Ausführungsbeispiel decodiert der stimmlose Sprachdecodierer 214 stimmlose Sprache, die mit einer niedrigen Bitrate übertragen wird, wie unten detailliert beschrieben wird mit Bezug auf 4.
  • Nach der Decodierung entweder durch den Decodierer 212 oder den Decodierer 214 wird ein synthetisiertes Linearprädiktions-Restsignal durch einen Kurzzeit-Prädiktions-Filter 216 gefiltert. Die synthetisierte Sprache an der Ausgabe des Kurzzeit-Prädiktions-Filters 216 wird an einen Nach-Filter-Prozessor 218 geliefert, um eine endgültige Ausgabesprache zu erzeugen.
  • 3 ist ein detailliertes Blockdiagramm des Hochleistungs-Stimmlos-Sprachcodierers 206 mit niedriger Bitrate, der in 2A gezeigt wird. 3 zeigt die Vorrichtung und die Sequenz von Operationen eines Ausführungsbeispiels des stimmlosen Codierers.
  • Digitalisierte Sprachabtastwerte, s(n), werden in einen Linear-Prädiktions-Codier(LPC – Linear Predictive Coding)-Analysator 302 und einen LPC-Filter 304 eingegeben. Der LPC-Analysator 302 erzeugt lineare Prädiktions(LP – linear predictive)-Koeffizienten der digitalisierten Sprachabtastwerte. Der LPC-Filter 304 erzeugt ein Sprachrestsignal, r(n), das in eine Verstärkungs-Berechnungs-Komponente 306 und einen unskalierten Band-Energie-Analysator 314 eingegeben wird.
  • Die Verstärkungs-Berechnungs-Komponente 306 teilt jeden Rahmen von digitalisierten Sprachabtastwerten in Teilrahmen, berechnet einen Satz von Codebuch-Verstärkungen, im folgenden bezeichnet als Verstärkungen oder Indizes, für jeden Teilrahmen, teilt die Verstärkungen in Teilgruppen und normalisiert die Verstärkungen jeder Teilgruppe. Das Sprachrestsignal r(n), n = 0, ..., N – 1, wird in K Teilrahmen segmentiert, wobei N die Anzahl von Restabtastwerten in einem Rahmen ist. In einem Ausführungsbeispiel ist K = 10 und N = 160. Eine Verstärkung, G(i), i = 0, ..., K – 1, wird für jeden Teilrahmen wie folgt berechnet:
    Figure 00160001
  • Ein Verstärkungs-Quantisierer 308 quantisiert die K Verstärkungen, und der Verstärkungs-Codebuch-Index für die Verstärkungen wird nachfolgend übertragen. Eine Quantisierung kann durchgeführt unter Verwendung von herkömmlichen linearen oder Vektor-Quantisierungsschemen oder jede Variante. Ein aufgenommenes Schema ist eine mehrstufige Vektorquantisierung.
  • Das Restsignal, das von dem LPC-Filter 304 ausgegeben wird, r(n), wird durch einen Tiefpassfilter und einen Hochpassfilter in dem unskalierten Band-Energie-Analysator 314 geleitet. Energiewerte von r(n), E1, Elp1 und Ehp1, werden für das Restsignal r(n) berechnet. E1 ist die Energie in dem Restsignal, r(n). Elp1 ist die Energie des niedrigen Bandes in dem Restsignal, r(n). Ehp1 ist die Energie des hohen Bandes in dem Restsignal, r(n). Die Frequenzantwort der Tiefpass- und Hochpassfilter des unskalierten Band-Energie-Analysators 314 werden in einem Ausführungsbeispiel jeweils in der 7A und 7B gezeigt. Die Energiewerte E1, Elp1, und Ehp1 werden wie folgt berechnet:
    Figure 00170001
  • Die Energiewerte E1, Elp1, und Ehp1 werden später verwendet, um Form-Filter in einem endgültigen Form-Filter 316 für die Verarbeitung eines Zufallsrauschsignals zu wählen, so dass das Zufallsrauschsignal dem ursprünglichen Restsignal am nächsten kommt.
  • Ein Zufallszahl-Generator 310 erzeugt gleichmäßig verteilte Zufallszahlen mit Einheitsvarianz zwischen –1 und 1 für jeden der K Teilrahmen, die durch den LPC-Analysator 302 ausgegeben werden. Ein Zufallszahl-Selektor 312 wählt eine Mehrheit der Zufallszahlen niedriger Amplitude in jedem Teilrahmen. Ein Bruchteil der Zufallszahlen höchster Amplitude wird für jeden Teilrahmen behalten. In einem Ausführungsbeispiel ist der Bruchteil der behaltenen Zufallszahlen 25%.
  • Die Zufallszahlausgabe für jeden Teilrahmen des Zufallszahl-Selektors 312 wird dann mit den jeweiligen quantisierten Verstärkungen des Teilrahmens, ausgegeben von dem Verstärkungs-Quantisierer 308, durch einen Multiplizierer 307 multipliziert. Die skalierte Zufallssignalausgabe von dem Multiplizierer 307, r ^1(n), wird dann durch ein Wahrnehmungsfilter verarbeitet.
  • Um eine Wahrnehmungsqualität zu erhöhen und die Natürlichkeit der quantisierten stimmlosen Sprache beizubehalten, wird ein zweistufiger Wahrnehmungsfilterprozess durchgeführt auf dem skalierten Zufallssignal, r ^1(n).
  • In dem ersten Schritt des Wahrnehmungsfilterprozesses wird das skalierte Zufallssignal r ^1(n) durch zwei feste Filter in dem Wahrnehmungsfilter 318 geleitet. Der erste feste Filter des Wahrnehmungsfilters 318 ist ein Bandpassfilter 320, der untere und obere Grenzfrequenzen von r ^1(n) beseitigt, um das Signal r ^2(n) zu erzeugen. Die Frequenzantwort von dem Bandpassfilter 320, in einem Ausführungsbeispiel, wird in der 8A gezeigt. Der zweite feste Filter des Wahrnehmungsfilters 318 ist der vorläufige Form-Filter 322. Das Signal, r ^2(n), berechnet durch das Element 320, wird durch den vorläufigen Form-Filter 322 geleitet, um das Signal r ^3(n) zu erzeugen. Die Frequenzantwort des vorläufigen Form-Filters 322, in einem Ausführungsbeispiel, wird in der 8B gezeigt.
  • Die Signale r ^2(n), berechnet durch das Element 320, und r ^3(n), berechnet durch das Element 322, werden wie folgt berechnet:
    Figure 00180001
  • Die Energie der Signale r ^2(n) und r ^3(n) wird als E2 beziehungsweise E3 berechnet. E2 und E3 werden wie folgt berechnet:
    Figure 00180002
  • In dem zweiten Schritt des Wahrnehmungsfilterprozesses wird das Signal r ^3(n), das von dem vorläufigen Form-Filter 322 ausgegeben wird, skaliert, um die selbe Energie wie das ursprüngliche Restsignal r(n) zu haben, das ausgegeben wird von dem LPC-Filter 304, basierend auf E1 und E3.
  • In dem skalierten Band-Energie-Analysator 324 wird das skalierte und gefilterte Zufallssignal, r ^3(n), das berechnet wird durch das Element (322), derselben Bandenergieanalyse unterzogen, die vorher auf dem ursprünglichen Restsignal, r(n), durch den unskalierten Band-Energie-Analysator 314 durchgeführt wurde.
  • Das Signal, r ^3(n), berechnet durch das Element 322, wird wie folgt berechnet:
    Figure 00190001
  • Die Tiefpassbandenergie von r ^3(n) wird als Elp2 bezeichnet und die Hochpassbandenergie von r ^3(n) wird bezeichnet als Ehp2. Die Energien des hohen Bands und des niedrigen Bands von r ^3(n) werden verglichen mit den Energien des hohen Bands und des niedrigen Bands von r(n), um den nächsten Form-Filter zu bestimmen zur Verwendung in dem endgültigen Form-Filter 316. Basierend auf dem Vergleich von r(n) und r ^3(n) wird entweder keine weitere Filterung oder einer von zwei festen Form-Filtern gewählt, um die beste Übereinstimmung zwischen r(n) und r ^3(n) zu erzeugen. Die endgültige Filterform (oder kein zusätzliches Filtern) wird bestimmt durch Vergleichen der Bandenergie in dem ursprünglichen Signal mit der Bandenergie in dem Zufallssignal.
  • Das Verhältnis, Rl, der Energie des niedrigen Bands des ursprünglichen Signals zu der Energie des niedrigen Bands des skalierten vor-gefilterten Zufallssignals wird wie folgt berechnet: Rl = 10·log10(Elp1/Elp2).
  • Das Verhältnis, Rh, der Energie des hohen Bands des ursprünglichen Signals zu der Energie des hohen Bands des skalierten vor-gefilterten Zufallssignals wird wie folgt berechnet: Rh = 10·log10(Ehp1/Ehp2
  • Wenn das Verhältnis Rl geringer ist als –3, wird ein endgültiger Hochpass-Form-Filter (Filter 2) verwendet, um r ^3(n) weiter zu verarbeiten, um r ^(n) zu erzeugen.
  • Wenn das Verhältnis Rh geringer ist als –3, wird ein endgültiger Tiefpass-Form-Filter (Filter 3) verwendet, um r ^3(n) weiter zu verarbeiten, um r ^(n) zu erzeugen.
  • Ansonsten wird keine weitere Verarbeitung von r ^3(n) durchgeführt, so dass r ^(n) = r ^3(n).
  • Die Ausgabe aus dem endgültigen Form-Filter 316 ist das quantisierte zufällige Restsignal r ^(n). Das Signal r ^(n) wird skaliert, um die selbe Energie wie r ^2(n) zu haben.
  • Die Frequenzantwort des endgültigen Hochpass-Form-Filters (Filter 2) wird in der 8C gezeigt. Die Frequenzantwort des endgültigen Tiefpass-Form-Filters (Filter 3) wird in der 8D gezeigt.
  • Ein Filterauswahl-Indikator wird erzeugt, um anzuzeigen, welcher Filter (Filter 2, Filter 3 oder kein Filter) für die endgültige Filterung gewählt wird. Der Filterauswahl-Indikator wird nachfolgend übertragen, so dass ein Decodierer eine endgültige Filterung wiederholen kann. In einem Ausführungsbeispiel besteht der Filterauswahl-Indikator aus zwei Bits.
  • 4 ist ein detailliertes Blockdiagramm des Hochleistungs-Stimmlos-Sprachdecodierer niedriger Bitrate 214, der in 2B gezeigt wurde. 4 zeigt detailliert die Vorrichtung und die Sequenz von Operationen eines Ausführungsbeispiels des stimmlosen Sprach-Decodierers. Der stimmlose Sprachdecodierer empfängt stimmlose Datenpakete und synthetisiert stimmlose Sprache aus den Datenpaketen durch Durchführen der inversen Operationen des stimmlosen Sprachcodierer 206, der in der 2A gezeigt wurde.
  • Stimmlose Datenpakete werden in einen Verstärkungs-De-Quantisierer 406 eingegeben. Der Verstärkungs-De-Quantisierer 406 führt die inverse Operation des Verstärkungs-Quantisierer 308 in dem stimmlosen Codierer durch, der in der 3 gezeigt wird. Die Ausgabe des Verstärkungs-De-Quantisierers 406 sind K quantisierte stimmlose Verstärkungen.
  • Der Zufallszahl-Generator 402 und der Zufallszahl-Selektor 404 führen genau die gleichen Operationen durch wie der Zufallszahl-Generator 310 und der Zufallszahl-Selektor 312 in dem Stimmlos-Codierer der 3.
  • Die Ausgabe der Zufallszahl für jeden Teilrahmen von dem Zufallszahl-Selektor 404 wird dann mit der jeweiligen quantisierten Verstärkung des Teilrahmens, ausgegeben von dem Verstärkungs-De-Quantisierer 406, durch den Multiplizierer 405 multipliziert. Die skalierte Zufallssignalausgabe von dem Multiplizierer 405, r ^1(n), wird dann durch Wahrnehmungsfilter verarbeitet.
  • Ein zweistufiger Wahrnehmungsfilterprozess, der zu dem Wahrnehmungsfilterprozess des Stimmlos-Codierers in der 3 identisch ist, wird durchgeführt. Der Wahrnehmungsfilter 408 führt genau die gleichen Operationen durch wie der Wahrnehmungsfilter 318 in dem Stimmlos-Codierer der 3. Das Zufallssignal r ^1(n) wird durch zwei feste Filter in dem Wahrnehmungsfilter 408 geleitet. Der Bandpass-Filter 407 und der vorläufige Form-Filter 409 sind genau dieselben wie der Bandpass-Filter 320 und der vorläufige Form-Filter 322, der in dem Wahrnehmungsfilter 318 in dem Stimmlos-Codierer der 3 verwendet wurde. Die Ausgänge nach dem Bandpass-Filter 407 und dem vorläufigen Form-Filter 409 werden als r ^2(n) beziehungsweise r ^3(n) bezeichnet. Die Signale r ^2(n) und r ^3(n) werden wie in dem Stimmlos-Codierer der 3 berechnet.
  • Das Signal r ^3(n) wird in dem endgültigen Form-Filter 410 gefiltert. Der endgültige Form-Filter 410 ist identisch zu dem endgültigen Form-Filter 316 in dem Stimmlos-Codierer der 3. Entweder ein endgültiges Hochpass-Formen, endgültiges Tiefpass-Formen oder kein weiters endgültiges Filtern wird durch den endgültigen Form-Filter 410 durchgeführt, wie durch den Filterauswahl-Indikator bestimmt, der an dem Stimmlos-Codierer von 3 erzeugt wird und in dem Datenbitpaket am Decodierer 214 empfangen wird. Das ausgegebene quantisierte Restsignal, r ^(n), von dem endgültigen Form-Filter 410 wird skaliert, um die gleiche Energie wie r ^2(n) zu haben.
  • Das quantisierte Zufallssignal, r ^(n), wird durch den LPC-Synthesefilter 412 gefiltert, um ein synthetisiertes Sprachsignal ŝ(n) zu erzeugen.
  • Ein nachfolgender Post-Filter 414 kann auf das synthetisierte Sprachsignal ŝ(n) angewendet werden, um die endgültige Ausgabesprache zu erzeugen.
  • 5 ist ein Flussdiagramm, das die Codierungsschritte einer Hochleistungs-Codierungstechnik mit niedriger Bitrate für stimmlose Sprache darstellt.
  • In Schritt 502 wird einem Stimmlos-Sprachcodierer 206 (3) ein Datenrahmen von stimmlosen digitalisierten Sprachabtastwerten geliefert. Ein neuer Rahmen wird alle 20 Millisekunden geliefert. In einem Ausführungsbeispiel, wenn die stimmlose Sprache mit einer Rate von 8 Kilobits pro Se kunde abgetastet wird, enthält ein Rahmen 160 Abtastwerte. Der Steuerungsfluss geht weiter zu Schritt 504.
  • In Schritt 504 wird der Datenrahmen durch einen LPC-Filter gefiltert und erzeugt einen Restsignalrahmen. Der Steuerungsfluss geht weiter zu Schritt 506.
  • Die Schritte 506516 beschreiben Verfahrensschritte für eine Verstärkungsberechnung und Quantisierung eines Restsignalrahmens.
  • Der Restsignalrahmen wird in Teilrahmen in Schritt 506 geteilt. In einem Ausführungsbeispiel wird jeder Rahmen in 10 Teilrahmen von jeweils sechzehn Abtastwerten geteilt. Der Steuerungsfluss geht weiter zu Schritt 508.
  • In Schritt 508 wird ein Verstärkung für jeden Teilrahmen berechnet. In einem Ausführungsbeispiel werden 10 Teilrahmenverstärkungen berechnet. Der Steuerungsfluss geht weiter zu Schritt 510.
  • In Schritt 510 werden Teilrahmenverstärkungen in Teilgruppen geteilt. In einem Ausführungsbeispiel werden 10 Teilrahmenverstärkungen in zwei Teilgruppen von jeweils fünf Teilrahmenverstärkungen geteilt. Der Steuerungsfluss geht weiter zu Schritt 512.
  • In Schritt 512 werden die Verstärkungen jeder Teilgruppe normalisiert, um einen Normalisierungsfaktor für jede Teilgruppe zu erzeugen. In einem Ausführungsbeispiel werden zwei Normalisierungsfaktoren für zwei Teilgruppen von jeweils fünf Verstärkungen erzeugt. Der Steuerungsfluss geht weiter zu Schritt 514.
  • In Schritt 514 werden die Normalisierungsfaktoren, die in Schritt 512 erzeugt werden, in die Log-Domain oder exponentiale Form umgewandelt und dann quantisiert. In einem Ausführungsbeispiel wird ein quantisierter Normalisie rungsfaktor erzeugt, im Folgenden als Index 1 bezeichnet. Der Steuerungsfluss geht weiter zu Schritt 516.
  • In Schritt 516 werden die normalisierten Verstärkungen jeder Teilgruppe, die in Schritt 512 erzeugt wird, quantisiert. In einem Ausführungsbeispiel werden zwei Teilgruppen quantisiert, um zwei quantisierte Verstärkungswerte zu erzeugen, die im Folgenden als Index 2 und Index 3 bezeichnet werden. Der Steuerungsfluss geht weiter zu Schritt 518.
  • Die Schritte 518520 beschreiben die Verfahrensschritte zum Erzeugen eines zufällig quantisierten stimmlosen Sprachsignals.
  • In Schritt 518 wird ein Zufallsrauschsignal für jeden Teilrahmen erzeugt. Ein vorgegebener Prozentsatz der erzeugten Höchstamplitude-Zufallszahlen wird pro Teilrahmen gewählt. Die nicht gewählten Zahlen werden auf Null gesetzt (zeroed). In einem Ausführungsbeispiel ist der Prozentsatz der gewählten Zufallszahlen 25%. Der Steuerungsfluss geht weiter zu Schritt 520.
  • In Schritt 520 werden die gewählten Zufallszahlen durch die quantisierten Verstärkungen für jeden Teilrahmen skaliert, der in Schritt 516 erzeugt wird. Der Steuerungsfluss geht weiter zu Schritt 522.
  • Die Schritte 522528 beschreiben Verfahrensschritte für ein Wahrnehmungsfiltern des Zufallssignals. Das Wahrnehmungsfiltern der Schritte 522528 verbessert eine Wahrnehmungsqualität und erhält die Natürlichkeit des zufällig quantisierten stimmlosen Sprachsignals.
  • In Schritt 522 wird das zufällig quantisierte stimmlose Sprachsignal Bandpass-gefiltert, um hohe und niedrige End-Komponenten zu beseitigen. Der Steuerungsfluss geht weiter zu Schritt 524.
  • In Schritt 524 wird ein fester vorläufiger Form-Filter auf das zufällig quantisierte stimmlose Sprachsignal angewendet. Der Steuerungsfluss geht weiter zu Schritt 526.
  • In Schritt 526 werden die Energien des niedrigen und des hohen Bands des Zufallssignals und des ursprünglichen Restsignals analysiert. Der Steuerungsfluss geht weiter zu Schritt 528.
  • In Schritt 528 wird die Energieanalyse des ursprünglichen Restsignals mit der Energieanalyse des Zufallssignals verglichen, um festzustellen, ob ein weiteres Filtern des Zufallssignals notwendig ist. Basierend auf der Analyse wird entweder kein Filter oder einer der zwei vor-bestimmten endgültigen Filter gewählt, um das Zufallssignal weiter zu filtern. Die zwei vor-bestimmten endgültigen Filter sind ein endgültiger Hochpass-Form-Filter und ein endgültiger Tiefpass-Form-Filter. Eine Filterauswahl-Anzeigenachricht wird erzeugt, um einem Decodierer anzuzeigen, welcher endgültige Filter (oder kein Filter) angewendet wurden. In einem Ausführungsbeispiel ist die Filterauswahl-Anzeigenachricht 2 Bits. Der Steuerungsfluss geht weiter zu Schritt 530.
  • In Schritt 530 werden ein Index für den quantisierten Normalisierungsfaktor, der in Schritt 514 erzeugt wird, Indizes für die quantisierten Teilgruppenverstärkungen, erzeugt in Schritt 516, und die Filterauswahl-Anzeigenachricht, die in Schritt 528 erzeugt wird, übertragen. In einem Ausführungsbeispiel werden der Index 1, Index 2, Index 3 und eine endgültige 2 Bit Filterauswahl-Anzeige übertragen. Einschließlich der Bits, die erforderlich sind, um die quantisierten LPC Parameterindizes zu übertragen, ist die Bitrate eines Ausführungsbeispiels 2 Kilobits pro Sekunde. (Eine Quantisierung der LPC-Parameter liegt nicht in dem Umfang der offenbarten Ausführungsbeispiele.)
  • 6 ist ein Flussdiagramm, das die Decodierungsschritte einer Hochleistungs-Codierungstechnik mit niedriger Bitrate für stimmlose Sprache zeigt.
  • In Schritt 602 werden ein Normalisierungsfaktorindex, quantisierte Teilgruppenverstärkungsindizes und ein endgültiger Filterauswahl-Indikator für einen Rahmen von stimmloser Sprache empfangen. In einem Ausführungsbeispiel werden der Index 1, Index 2, Index 3 und eine Filterauswahl-Anzeige mit 2 Bits empfangen. Der Steuerungsfluss geht weiter zu Schritt 604.
  • In Schritt 604 wird der Normalisierungsfaktor aus Verweistabellen unter Verwendung des Normalisierungsfaktorindexes wiedergewonnen. Der Normalisierungsfaktor wird aus der Log-Domain oder der exponentialen Form umgewandelt in die lineare Domain. Der Steuerungsfluss geht weiter zu Schritt 606.
  • In Schritt 606 werden die Verstärkungen aus Verweistabellen unter Verwendung der Verstärkungsindizes wiedergewonnen. Die wiedergewonnenen Verstärkungen werden skaliert durch die wiedergewonnenen Normalisierungsfaktoren, um die quantisierten Verstärkungen jeder Teilgruppe des ursprünglichen Rahmens zurückzugewinnen. Der Steuerungsfluss geht weiter zu Schritt 608.
  • In Schritt 608 wird ein Zufallsrauschsignal für jeden Teilrahmen erzeugt, genau wie bei der Codierung. Ein vorgegebener Prozentsatz der erzeugten Höchstamplitude-Zufallszahlen wird pro Teilrahmen gewählt. Die nicht gewählten Zahlen werden auf Null gesetzt. In einem Ausführungsbeispiel ist der Prozentsatz der gewählten Zufallszahlen 25%. Der Steuerungsfluss geht weiter zu Schritt 610.
  • In Schritt 610 werden die gewählten Zufallszahlen durch die quantisierten Verstärkungen für jeden Teilrahmen skaliert, der in Schritt 606 wiedergewonnen wird.
  • Die Schritte 612616 beschreiben Decodierungsverfahrensschritte für ein Wahrnehmungsfiltern des Zufallssignals.
  • In Schritt 612 wird das zufällig quantisierte stimmlose Sprachsignal Bandpass-gefiltert, um hohe und niedrige End-Komponenten zu beseitigen. Der Bandpassfilter ist identisch zu dem Bandpassfilter, der bei der Codierung verwendet wird. Der Steuerungsfluss geht weiter zu Schritt 614.
  • In Schritt 614 wird ein fester vorläufiger Form-Filter auf das zufällig quantisierte stimmlose Sprachsignal angewendet. Der feste vorläufige Form-Filter ist identisch zu dem festen vorläufigen Form-Filter, der bei der Codierung verwendet wird. Der Steuerungsfluss geht weiter zu Schritt 616.
  • In Schritt 616, basierend auf der Filterauswahl-Anzeigenachricht, wird entweder kein Filter oder einer von zwei vorgegebenen Filtern gewählt, um das Zufallssignal in einem endgültigen Form-Filter weiter zu filtern. Die zwei vorgegebenen Filter des endgültigen Form-Filters sind ein endgültiger Hochpass-Form-Filter (Filter 2) und ein endgültiger Tiefpass-Form-Filter (Filter 3), die identisch sind zu dem endgültigen Hochpass-Form-Filter und endgültigen Tiefpass-Form-Filter des Codierers. Das ausgegebene quantisierte Zufallssignal aus dem endgültigen Form-Filter wird skaliert, um die gleiche Energie zu haben wie die Signalausgabe des Bandpassfilters. Das quantisierte Zufallssignal wird durch einen LPC-Synthesefilter gefiltert, um ein synthetisiertes Sprachsignal zu erzeugen. Ein nachfolgender Post-Filter kann auf das synthetisierte Sprachsignal angewendet werden, um die endgültige decodierte Ausgabesprache zu erzeugen.
  • 7A ist ein Graph der normalisierten Frequenz gegenüber einer Amplitudenfrequenzantwort eines Tiefpassfilters in den Band-Energie-Analysatoren (314, 324), die verwendet werden, um niedrige Bandenergie in dem Restsignal r(n), ausgegeben von dem LPC-Filter (304) in dem Codierer, und in dem skalierten und gefilterten Zufallssignal r ^3(n), ausgegeben von dem vorläufigen Form-Filter (322) in dem Codierer, zu analysieren.
  • 7B ist ein Graph der normalisierten Frequenz gegenüber einer Amplitudenfrequenzantwort eines Hochpassfilters in den Band-Energie- Analysatoren (314, 324), die verwendet werden, um hohe Bandenergie in dem Restsignal r(n), ausgegeben von dem LPC-Filter (304) in dem Codierer, und in dem skalierten und gefilterten Zufallssignal, r ^3(n), ausgegeben von dem vorläufigen Form-Filter (322) in dem Codierer, zu analysieren.
  • 8A ist ein Graph der normalisierten Frequenz gegenüber einer Amplitudenfrequenzantwort eines endgültigen Tiefbandpass-Form-Filters in dem Bandpass-Filter (320, 407), der verwendet wird, um das skalierte Zufallssignal, r ^1(n), ausgegeben von dem Multiplizierer (307, 405), in dem Codierer und dem Decodierer zu formen.
  • 8B ist ein Graph der normalisierten Frequenz gegenüber einer Amplitudenfrequenzantwort eines Hochbandpass-Form-Filters in dem vorläufigen Form-Filter (322, 409), der verwendet wird, um das skalierte Zufallssignal, r ^2(n), ausgegeben von dem Bandpass-Filter (320, 407), in dem Codierer und dem Decodierer zu formen.
  • 8C ist ein Graph der normalisierten Frequenz gegenüber einer Amplitudenfrequenzantwort eines endgültigen Hochpass-Form-Filters, in dem endgültigen Form-Filter (316, 410), der verwendet wird, um das skalierte und gefilterte Zufallssignal, r ^3(n), ausgegeben von dem vorläufigen Form-Filter (322, 409), in dem Codierer und dem Decodierer zu formen.
  • 8D ist ein Graph der normalisierten Frequenz gegenüber einer Amplitudenfrequenzantwort eines endgültigen Tiefpass-Form-Filters, in dem endgültigen Form-Filter (316, 410), der verwendet wird, um das skalierte und gefilterte Zufallssignal, r ^3(n), ausgegeben von dem vorläufigen Form-Filter (322, 409), in dem Codierer und dem Decodierer zu formen.
  • Die obige Beschreibung der bevorzugten Ausführungsbeispiele ist vorgesehen, um Fachleuten zu ermöglichen, die offenbarten Ausführungsbeispiele herzustellen oder zu verwenden. Die verschiedenen Modifikationen dieser Ausführungsbeispiele sind für Fachleute offensichtlich und die hier definierten generischen Prinzipien können auf andere Ausführungsbeispiele angewendet werden ohne die Verwendung der erfinderischen Fähigkeit. Folglich sollen die offenbarten Ausführungsbeispiele nicht auf die hier gezeigten Ausführungsbeispiele eingegrenzt werden, sondern sollen dem weitesten Umfang entsprechen, der konsistent ist mit den hier offenbarten Prinzipien und neuen Merkmalen.

Claims (32)

  1. Ein Verfahren zum Codieren von nicht-stimmhaften Segmenten von Sprache, wobei das Verfahren Folgendes aufweist: Partitionieren (506) eines Restsignalrahmens in Unterrahmen, wobei jeder Unterrahmen eine hiermit berechnete Codebuch-Verstärkung besitzt; Quantisieren (516) der Verstärkungen, um Indices zu erzeugen; Skalieren (520) eines Prozentsatzes von Zufallsrauschen, und zwar entsprechend zu den Höchstamplituden-Zufallszahlen, zugeordnet mit einem jeden Unterrahmen durch die Indices, die dem Unterrahmen zugeordnet sind; Ausführen (522) einer ersten Filterung des skalierten Zufallsrauschens; Berechnen der Energie des gefilterten, skalierten Zufallsrauschen und der Energie des Restsignals; Vergleichen (528) der Energie des gefilterten, skalierten Zufallsrauschens mit der Energie des Restsignals; Auswählen (528) eines zweiten Filters basierend auf dem Vergleich; und Ausführen (528) einer zweiten Filterung des gefilterten, skalierten Zufallsrauschens unter Verwendung des ausgewählten zweiten Filters.
  2. Verfahren nach Anspruch 1, wobei das Partitionieren (506) eines Restsignalrahmens in Unterrahmen das Partitionieren eines Restsignalrahmens in zehn Unterrahmen aufweist.
  3. Verfahren nach Anspruch 1, wobei der Restsignalrahmen 160 Abtastungen pro Rahmen, abgetastet mit acht Kilohertz pro Sekunde für 20 Millisekunden aufweist.
  4. Verfahren nach Anspruch 1, wobei der Prozentsatz des Zufallsrauschens 25% ist.
  5. Verfahren nach Anspruch 1, wobei das Quantisieren der Verstärkungen um Indices zu produzieren ausgeführt wird, unter Verwendung von Mehrstufen-Vektor-Quantisierung.
  6. Verfahren nach Anspruch 1, wobei das Partitionieren (506) eines Restsignalrahmens in Unterrahmen Folgendes aufweist: Partitionieren des Restsignalrahmens in eine Vielzahl von Unterrahmen; Generieren einer Gruppe von Unterrahmenverstärkung durch Berechnen einer Codebuch-Verstärkung für einen jeden der Vielzahl von Unterrahmen; und Partitionieren der Gruppe von Unterrahmenverstärkungen in Untergruppen von Unterrahmenverstärkungen.
  7. Verfahren nach Anspruch 6 und Anspruch 1, wobei das Quantisieren der Verstärkung zum Erzeugen von Indices weiterhin Folgendes aufweist: Normalisieren (512) der Untergruppen von Unterrahmenverstärkungen um eine Vielzahl von Normalisierungsfaktoren zu erzeugen, wobei eine jede der Vielzahl von Normalisierungsfaktoren mit einer der normalisierten Untergruppen von Unterrahmenverstärkungen assoziiert ist; Konvertieren (514) einer jeder der Vielzahl von Normalisierungsfaktoren in eine exponentielle Form und Quantisieren der konvertierten Vielzahl von Normalisierungsfaktoren; und Quantisieren (516) der normalisierten Untergruppen von Unterrahmenverstärkungen, um eine Vielzahl von quantisierten Codebuch-Verstärkungen zu erzeugen, wobei eine jede der Codebuch-Verstärkungen einen Codebuch-Verstärkungsindex für eine der Vielzahl von Untergruppen zugeordnet bzw. assoziiert ist.
  8. Verfahren nach Ansprüchen 1, 6 und 7 wobei das Skalieren eines Prozentsatzes von Zufallsrauschen, entsprechend zu den Höchstamplitu den-Zufallswerten, zugeordnet mit jedem Unterrahmen durch die Indices zugeordnet mit dem Unterrahmen Folgendes aufweist: Generieren (518) eines Zufallsrauschsignals, das Zufallszahlen aufweist für einen jeden der Vielzahl von Unterrahmen; Auswählen des vorbestimmten Prozentsatzes der Höchstamplituden-Zufallszahlen des Zufallsrauschsignals für jeden der Vielzahl von Zufallsrahmen; und Skalieren (520) der ausgewählten Höchstamplituden-Zufallszahlen durch die quantisierten Codebuch-Verstärkungen für jeden Unterrahmen, um ein skaliertes Zufallsrauschsignal zu erzeugen.
  9. Verfahren nach Ansprüchen 1, 6, 7 und 8, wobei das Ausführen einer ersten Filterung des skalierten Zufallsrauschens das Bandpass-Filtern und Formen des skalierten Zufallsrauschsignals aufweist.
  10. Verfahren nach Ansprüchen 1, 6, 7, 8 und 9, das weiterhin das Generieren eines zweiten Filterauswahl-Indikators zum Identifizieren des ausgewählten Filters aufweist.
  11. Ein Sprach-Codierer (206) zum Codieren von nicht-stimmhaften Segmenten von Sprache, wobei der Codierer Folgendes aufweist: Mittel zum Partitionieren eines Restsignalrahmens in Unterrahmen, wobei jeder Unterrahmen eine Codebuch-Verstärkung hiermit berechnet, besitzt; Mittel zum Quantisieren der Verstärkung, um Indices zu erzeugen; Mittel zum Skalieren eines Prozentsatzes von Zufallsrauschen, entsprechend zu den Höchstamplituden-Zufallszahlen, zugeordnet mit jedem Unterrahmen durch die Indices, die den Unterrahmen zugeordnet sind; Mittel zum Ausführen einer ersten Filterung des skalierten Zufallsrauschens; Mittel zum Berechnen der Energie des gefilterten, skalierten Zufallsrauschens und der Energie des Restsignals; Mittel zum Vergleichen der Energie des gefilterten Rauschens mit der Energie des Restsignals; Mittel zum Auswählen eines zweiten bzw. sekundären Filters, basierend auf dem Vergleich; und Mittel zum Ausführen einer sekundären Filterung des gefilterten, skalierten Zufallsrauschens gemäß dem ausgewählten Filter.
  12. Sprach-Codierer (206) nach Anspruch 11, wobei die Mittel zum Partitionieren eines Restsignalrahmens in Unterrahmen Mittel aufweisen zum Partitionieren eines Restsignalrahmens in zehn Unterrahmen.
  13. Sprach-Codierer (206) nach Anspruch 11, wobei die Mittel zum Skalieren eines Prozentsatzes von Zufallsrauschen Mittel aufweisen zum Skalieren von 25% des Höchstamplituden-Zufallsrauschen.
  14. Sprach-Codierer (206) nach Anspruch 11, wobei die Mittel zum Quantisieren der Verstärkungen zum Erzeugen von Indices Mittel aufweisen für eine Mehrstufen-Vektor-Quantisierung.
  15. Sprach-Codierer (206) nach Anspruch 11, wobei die Mittel zum Partitionieren eines Restsignal-Rahmens in Unterrahmen Folgendes aufweisen: Mittel zum Partitionieren des Restsignal-Rahmens in eine Vielzahl von Unterrahmen; Mittel zum Kreieren einer Gruppe von Unterrahmenverstärkungen durch Berechnen einer Codebuch-Verstärkung für jeden der Vielzahl von Unterrahmen; und Mittel zum Partitionieren der Gruppe von Unterrahmenverstärkungen in Untergruppen von Unterrahmenverstärkungen.
  16. Sprach-Codierer (206) nach Anspruch 11 und 15, wobei die Mittel zum Quantisieren der Verstärkung zum Erzeugen von Indices weiterhin Folgendes aufweisen: Mittel zum Normalisieren der Untergruppen von Unterrahmenverstärkungen, um eine Vielzahl von Normalisierungsfaktoren zu erzeugen, wobei jede der Vielzahl von Normalisierungsfaktoren mit einer der normalisierten Untergruppen von Unterrahmenverstärkungen assoziiert ist; Mittel zum Konvertieren eines jeden der Vielzahl von Normalisierungs-Faktoren in eine exponentielle Form und Quantisieren der konvertierten Vielzahl von Normalisierungsfaktoren; und Mittel zum Quantisieren der normalisierten Untergruppen von Unterrahmenverstärkungen, um eine Vielzahl von quantisierten Codebuch-Verstärkungen zu erzeugen; wobei eine jede der Codebuch-Verstärkungen einem Codebuch-Verstärkungs-Index für eine der Vielzahl von Untergruppen zugeordnet ist.
  17. Sprach-Codierer (206) nach Ansprüchen 11, 15 und 16, wobei die Mittel zum Skalieren eines Prozentsatzes von Zufallsrauschen, entsprechend zu den Höchstamplituden-Zufallszahlen, zugeordnet mit jedem Unterrahmen durch die Indices, die dem Unterrahmen zugeordnet sind, Folgendes aufweisen: Mittel zum Generieren eines Zufallsrauschsignals, das Zufallszahlen für jede der Vielzahl von Unterrahmen aufweist; Mittel zum Auswählen des vorbestimmten Prozentsatzes der Höchstamplituden-Zufallszahlen des Zufallsrauschsignals für jeden der Vielzahl von Unterrahmen; und Mittel zum Skalieren der ausgewählten Höchstamplituden-Zufallszahlen durch die quantisierten Codebuch-Verstärkungen für jeden Unterrahmen, um ein skaliertes Zufallsrauschsignal zu erzeugen.
  18. Sprach-Codierer nach Ansprüchen 11, 15, 16 und 17, wobei die Mittel zum Ausführen einer ersten Filterung des skalierten Zufallsrauschens Mittel aufweisen zum Bandpass-Filtern und Mittel zum Formen des skalierten Zufallsrauschsignals.
  19. Sprach-Codierer (206) nach Ansprüchen 13, 15, 16, 17 und 18, der weiterhin Mittel aufweist zum Generieren eines Zweitfilter-Auswahl-Indikators zum Identifizieren des ausgewählten Filters.
  20. Ein Verfahren zum Decodieren von nicht-stimmhaften Segmenten von Sprache, wobei das Verfahren Folgendes aufweist: Wiedergewinnen (606) von quantisierten Verstärkungen, die in Unterrahmenverstärkungen partitioniert sind, von empfangenen Indices, die jedem Unterrahmen zugeordnet sind; Skalieren (610) eines Prozentsatzes von Zufallsrauschen, das jedem Unterrahmen durch die Indices, die dem Unterrahmen zugeordnet sind, zugeordnet ist; Ausführen (612) einer ersten Filterung des skalierten Zufallsrauschens; Auswählen (616) eines zweiten Filters aus einer Vielzahl von Filtern gemäß einem empfangenen Filterauswahl-Indikator; und Ausführen (616) einer zweiten Filterung des Zufallsrauschens unter Verwendung des ausgewählten zweiten Filters.
  21. Verfahren nach Anspruch 20, das weiterhin das Filtern des skalierten Zufallsrauschens aufweist.
  22. Verfahren nach Anspruch 20, wobei die Unterrahmenverstärkungen das Partitionieren von zehn Unterrahmenverstärkungen pro Rahmen von codierter nicht-stimmhafter Sprache aufweist.
  23. Verfahren nach Anspruch 22, wobei der Rahmen von codierter, nicht-stimmhafter Sprache 160 Abtastungen pro Rahmen, abgetastet mit 8 Kilohertz pro Sekunde für 20 Millisekunden aufweist.
  24. Verfahren nach Anspruch 20, wobei der Prozentsatz des Zufallsrauschens 25% ist.
  25. Verfahren nach Anspruch 20, wobei die wieder gewonnenen, quantisierten Verstärkungen quantisiert werden durch eine Mehrstufen-Vektor-Quantisierung.
  26. Verfahren nach Anspruch 20, wobei das Skalieren des Prozentsatzes von Zufallsrauschen, das jedem Unterrahmen durch Indices, zugeordnet mit dem Unterrahmen, zugeordnet ist, Folgendes aufweist: Generieren eines Zufallsrauschsignals, das Zufallszahlen für jeden der Vielzahl von Unterrahmen aufweist; Auswählen eines vorbestimmten Prozentsatzes der Höchstamplituden-Zufallszahlen des Zufallsrauschsignals für jeden der Vielzahl von Unterrahmen; und Skalieren der ausgewählten Höchstamplituden-Zufallszahlen durch die wieder gewonnenen Verstärkungen für jeden Unterrahmen, um ein skaliertes Zufallsrauschsignal zu erzeugen.
  27. Verfahren nach Ansprüchen 20 und 26, wobei das Ausführen einer ersten Filterung des skalierten Zufallsrauschens das Bandpass-Filtern und Formen des skalierten Zufallsrauschsignals aufweist.
  28. Ein Sprach-Decodierer (214) zum Decodieren von nicht-stimmhaften Segmenten von Sprache, wobei der Decodierer Folgendes aufweist: Mittel zum Wiedergewinnen von quantisierten Verstärkungen, die in Unterrahmenverstärkungen partitioniert sind, aus empfangenen Indices, die jedem Unterrahmen zugeordnet sind; Mittel zum Skalieren eines Prozentsatzes von Zufallsrauschen, das jedem Unterrahmen zugeordnet ist, und zwar durch die Indices, die dem Unterrahmen zugeordnet sind; Mittel zum Ausführen einer ersten Filterung des skalierten Zufallsrauschens; Mittel zum Empfangen einer Filterauswahl-Anzeige- bzw. -Indikator und Auswählen eines Filters aus einer Vielzahl von Filtern gemäß dem Filterauswahl-Indikator; und Mittel zum Ausführen einer zweiten Filterung des gefilterten, skalierten Zufallsrauschens unter Verwendung des ausgewählten Filters.
  29. Sprach-Decodierer (214) nach Anspruch 28, der Mittel aufweist zur weiteren Filterung des skalierten Zufallsrauschens.
  30. Sprach-Decodierer (214) nach Anspruch 28, wobei die Mittel zum Skalieren eines Prozentsatzes von Zufallsrauschen, das jedem Unterrahmen zugeordnet ist, weiterhin Mittel aufweist zum Skalieren von 25% des Zufallsrauschens, das jedem Unterrahmen zugeordnet ist.
  31. Decodierer (214) nach Anspruch 30, wobei die Mittel zum Skalieren des Prozentsatzes von Zufallsrauschen, das jedem Unterrahmen zugeordnet ist, und zwar durch die Indices, die jedem Unterrahmen zugeordnet sind, Folgendes aufweist: Mittel zum Generieren eines Zufallsrauschsignals, das Zufallszahlen für jede der Vielzahl von Unterrahmen aufweist; Mittel zum Auswählen eines vorbestimmten Prozentsatzes der Höchstamplituden-Zufallszahlen des Zufallsrauschsignals für jeden der Vielzahl von Unterrahmen; und Mittel zum Skalieren der ausgewählten Höchstamplituden-Zufallszahlen durch die wieder gewonnenen Verstärkungen für jeden Unterrahmen, um ein skaliertes Zufallsrauschsignal bzw. ein Signal mit skaliertem Zufallsrauschen zu erzeugen.
  32. Sprach-Decodierer (214) nach Ansprüchen 30 und 31, wobei die Mittel zum Ausführen einer ersten Filterung des skalierten Zufallsrauschens Mittel aufweisen zur Bandpass-Filterung und Mittel zum Formen des skalierten Zufallsrauschsignals.
DE60133757T 2000-10-17 2001-10-06 Verfahren und vorrichtung zur kodierung von stimmloser sprache Expired - Lifetime DE60133757T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/690,915 US6947888B1 (en) 2000-10-17 2000-10-17 Method and apparatus for high performance low bit-rate coding of unvoiced speech
US690915 2000-10-17
PCT/US2001/042575 WO2002033695A2 (en) 2000-10-17 2001-10-06 Method and apparatus for coding of unvoiced speech

Publications (2)

Publication Number Publication Date
DE60133757D1 DE60133757D1 (de) 2008-06-05
DE60133757T2 true DE60133757T2 (de) 2009-07-02

Family

ID=24774477

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60133757T Expired - Lifetime DE60133757T2 (de) 2000-10-17 2001-10-06 Verfahren und vorrichtung zur kodierung von stimmloser sprache

Country Status (13)

Country Link
US (3) US6947888B1 (de)
EP (2) EP1912207B1 (de)
JP (1) JP4270866B2 (de)
KR (1) KR100798668B1 (de)
CN (1) CN1302459C (de)
AT (2) ATE549714T1 (de)
AU (1) AU1345402A (de)
BR (1) BR0114707A (de)
DE (1) DE60133757T2 (de)
ES (2) ES2302754T3 (de)
HK (1) HK1060430A1 (de)
TW (1) TW563094B (de)
WO (1) WO2002033695A2 (de)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7257154B2 (en) * 2002-07-22 2007-08-14 Broadcom Corporation Multiple high-speed bit stream interface circuit
US20050004793A1 (en) * 2003-07-03 2005-01-06 Pasi Ojala Signal adaptation for higher band coding in a codec utilizing band split coding
CA2454296A1 (en) * 2003-12-29 2005-06-29 Nokia Corporation Method and device for speech enhancement in the presence of background noise
SE0402649D0 (sv) 2004-11-02 2004-11-02 Coding Tech Ab Advanced methods of creating orthogonal signals
US20060190246A1 (en) * 2005-02-23 2006-08-24 Via Telecom Co., Ltd. Transcoding method for switching between selectable mode voice encoder and an enhanced variable rate CODEC
CN101185124B (zh) * 2005-04-01 2012-01-11 高通股份有限公司 用于语音信号的分割频带编码的方法和设备
RU2376657C2 (ru) * 2005-04-01 2009-12-20 Квэлкомм Инкорпорейтед Системы, способы и устройства для высокополосного предыскажения шкалы времени
TWI317933B (en) * 2005-04-22 2009-12-01 Qualcomm Inc Methods, data storage medium,apparatus of signal processing,and cellular telephone including the same
ATE493794T1 (de) 2006-04-27 2011-01-15 Dolby Lab Licensing Corp Tonverstärkungsregelung mit erfassung von publikumsereignissen auf der basis von spezifischer lautstärke
US9454974B2 (en) * 2006-07-31 2016-09-27 Qualcomm Incorporated Systems, methods, and apparatus for gain factor limiting
JP4827661B2 (ja) * 2006-08-30 2011-11-30 富士通株式会社 信号処理方法及び装置
KR101299155B1 (ko) * 2006-12-29 2013-08-22 삼성전자주식회사 오디오 부호화 및 복호화 장치와 그 방법
US9653088B2 (en) * 2007-06-13 2017-05-16 Qualcomm Incorporated Systems, methods, and apparatus for signal encoding using pitch-regularizing and non-pitch-regularizing coding
KR101435411B1 (ko) * 2007-09-28 2014-08-28 삼성전자주식회사 심리 음향 모델의 마스킹 효과에 따라 적응적으로 양자화간격을 결정하는 방법과 이를 이용한 오디오 신호의부호화/복호화 방법 및 그 장치
US20090094026A1 (en) * 2007-10-03 2009-04-09 Binshi Cao Method of determining an estimated frame energy of a communication
EP2269188B1 (de) * 2008-03-14 2014-06-11 Dolby Laboratories Licensing Corporation Multimodale kodierung sprachähnlicher und sprachunähnlicher signale
CN101339767B (zh) * 2008-03-21 2010-05-12 华为技术有限公司 一种背景噪声激励信号的生成方法及装置
CN101609674B (zh) * 2008-06-20 2011-12-28 华为技术有限公司 编解码方法、装置和系统
KR101756834B1 (ko) 2008-07-14 2017-07-12 삼성전자주식회사 오디오/스피치 신호의 부호화 및 복호화 방법 및 장치
FR2936898A1 (fr) * 2008-10-08 2010-04-09 France Telecom Codage a echantillonnage critique avec codeur predictif
CN101615395B (zh) * 2008-12-31 2011-01-12 华为技术有限公司 信号编码、解码方法及装置、系统
US8670990B2 (en) * 2009-08-03 2014-03-11 Broadcom Corporation Dynamic time scale modification for reduced bit rate audio coding
WO2012091464A1 (ko) 2010-12-29 2012-07-05 삼성전자 주식회사 고주파수 대역폭 확장을 위한 부호화/복호화 장치 및 방법
CN104978970B (zh) 2014-04-08 2019-02-12 华为技术有限公司 一种噪声信号的处理和生成方法、编解码器和编解码系统
TWI566239B (zh) * 2015-01-22 2017-01-11 宏碁股份有限公司 語音信號處理裝置及語音信號處理方法
CN106157966B (zh) * 2015-04-15 2019-08-13 宏碁股份有限公司 语音信号处理装置及语音信号处理方法
CN117476022A (zh) * 2022-07-29 2024-01-30 荣耀终端有限公司 声音编解码方法以及相关装置、系统

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62111299A (ja) * 1985-11-08 1987-05-22 松下電器産業株式会社 音声信号特徴抽出回路
JP2898641B2 (ja) * 1988-05-25 1999-06-02 株式会社東芝 音声符号化装置
US5293449A (en) * 1990-11-23 1994-03-08 Comsat Corporation Analysis-by-synthesis 2,4 kbps linear predictive speech codec
US5233660A (en) * 1991-09-10 1993-08-03 At&T Bell Laboratories Method and apparatus for low-delay celp speech coding and decoding
US5734789A (en) 1992-06-01 1998-03-31 Hughes Electronics Voiced, unvoiced or noise modes in a CELP vocoder
JPH06250697A (ja) * 1993-02-26 1994-09-09 Fujitsu Ltd 音声符号化方法及び音声符号化装置並びに音声復号化方法及び音声復号化装置
US5615298A (en) * 1994-03-14 1997-03-25 Lucent Technologies Inc. Excitation signal synthesis during frame erasure or packet loss
JPH08320700A (ja) * 1995-05-26 1996-12-03 Nec Corp 音声符号化装置
JP3522012B2 (ja) * 1995-08-23 2004-04-26 沖電気工業株式会社 コード励振線形予測符号化装置
JP3248668B2 (ja) * 1996-03-25 2002-01-21 日本電信電話株式会社 ディジタルフィルタおよび音響符号化/復号化装置
JP3174733B2 (ja) * 1996-08-22 2001-06-11 松下電器産業株式会社 Celp型音声復号化装置、およびcelp型音声復号化方法
JPH1091194A (ja) * 1996-09-18 1998-04-10 Sony Corp 音声復号化方法及び装置
JP4040126B2 (ja) * 1996-09-20 2008-01-30 ソニー株式会社 音声復号化方法および装置
US6148282A (en) * 1997-01-02 2000-11-14 Texas Instruments Incorporated Multimodal code-excited linear prediction (CELP) coder and method using peakiness measure
WO1998045833A1 (en) * 1997-04-07 1998-10-15 Koninklijke Philips Electronics N.V. Variable bitrate speech transmission system
FI113571B (fi) * 1998-03-09 2004-05-14 Nokia Corp Puheenkoodaus
US6480822B2 (en) * 1998-08-24 2002-11-12 Conexant Systems, Inc. Low complexity random codebook structure
US6463407B2 (en) * 1998-11-13 2002-10-08 Qualcomm Inc. Low bit-rate coding of unvoiced segments of speech
US6453287B1 (en) * 1999-02-04 2002-09-17 Georgia-Tech Research Corporation Apparatus and quality enhancement algorithm for mixed excitation linear predictive (MELP) and other speech coders
US6324505B1 (en) * 1999-07-19 2001-11-27 Qualcomm Incorporated Amplitude quantization scheme for low-bit-rate speech coders
JP2007097007A (ja) * 2005-09-30 2007-04-12 Akon Higuchi 複数人用ポータブルオーディオ
JP4786992B2 (ja) * 2005-10-07 2011-10-05 クリナップ株式会社 厨房家具のビルトイン機器およびこれを有する厨房家具

Also Published As

Publication number Publication date
CN1470051A (zh) 2004-01-21
US6947888B1 (en) 2005-09-20
KR20030041169A (ko) 2003-05-23
US7191125B2 (en) 2007-03-13
US7493256B2 (en) 2009-02-17
US20070192092A1 (en) 2007-08-16
WO2002033695A2 (en) 2002-04-25
JP2004517348A (ja) 2004-06-10
TW563094B (en) 2003-11-21
EP1328925B1 (de) 2008-04-23
EP1912207B1 (de) 2012-03-14
ATE549714T1 (de) 2012-03-15
BR0114707A (pt) 2004-01-20
KR100798668B1 (ko) 2008-01-28
EP1328925A2 (de) 2003-07-23
ES2380962T3 (es) 2012-05-21
ATE393448T1 (de) 2008-05-15
AU1345402A (en) 2002-04-29
US20050143980A1 (en) 2005-06-30
ES2302754T3 (es) 2008-08-01
JP4270866B2 (ja) 2009-06-03
EP1912207A1 (de) 2008-04-16
WO2002033695A3 (en) 2002-07-04
DE60133757D1 (de) 2008-06-05
CN1302459C (zh) 2007-02-28
HK1060430A1 (en) 2004-08-06

Similar Documents

Publication Publication Date Title
DE60133757T2 (de) Verfahren und vorrichtung zur kodierung von stimmloser sprache
DE60011051T2 (de) Celp-transkodierung
DE60123651T2 (de) Verfahren und vorrichtung zur robusten sprachklassifikation
DE60024123T2 (de) Lpc-harmonischer sprachkodierer mit überrahmenformat
DE602004007786T2 (de) Verfahren und vorrichtung zur quantisierung des verstärkungsfaktors in einem breitbandsprachkodierer mit variabler bitrate
DE69634645T2 (de) Verfahren und Vorrichtung zur Sprachkodierung
DE69923079T2 (de) Kodierung von stimmlosen sprachsegmenten mit niedriger datenrate
DE69916321T2 (de) Kodierung eines verbesserungsmerkmals zur leistungsverbesserung in der kodierung von kommunikationssignalen
DE69926821T2 (de) Verfahren zur signalgesteuerten Schaltung zwischen verschiedenen Audiokodierungssystemen
DE60121405T2 (de) Transkodierer zur Vermeidung einer Kaskadenkodierung von Sprachsignalen
DE69928288T2 (de) Kodierung periodischer sprache
DE60031002T2 (de) Multimodaler mischbereich-sprachkodierer mit geschlossener regelschleife
DE602004003610T2 (de) Halbrätiger Vocoder
DE69932460T2 (de) Sprachkodierer/dekodierer
DE60006271T2 (de) Celp sprachkodierung mit variabler bitrate mittels phonetischer klassifizierung
DE69915400T2 (de) Vorrichtung zur Kodierung und Dekodierung von Audiosignalen
DE60027573T2 (de) Quantisierung der spektralen amplitude in einem sprachkodierer
DE69729527T2 (de) Verfahren und Vorrichtung zur Kodierung von Sprachsignalen
DE60017763T2 (de) Verfahren und vorrichtung zur erhaltung einer ziel-bitrate in einem sprachkodierer
DE60012760T2 (de) Multimodaler sprachkodierer
DE69924280T2 (de) Sprachsynthese aus grundfrequenz-prototypwellenformen durch zeit-synchrone wellenforminterpolation
DE60024080T2 (de) Kodierung von sprachsegmenten mit signalübergängen durch interpolation von mehrimpulsanregungssignalen
DE60032006T2 (de) Prädiktionssprachkodierer mit musterauswahl für kodierungsshema zum reduzieren der empfindlichkeit für rahmenfehlern
DE602005003358T2 (de) Audiokodierung
DE60028500T2 (de) Sprachdekodierung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition