ES2269112T3 - Codificador de voz multimodal en bucle cerrado de dominio mixto. - Google Patents
Codificador de voz multimodal en bucle cerrado de dominio mixto. Download PDFInfo
- Publication number
- ES2269112T3 ES2269112T3 ES00912053T ES00912053T ES2269112T3 ES 2269112 T3 ES2269112 T3 ES 2269112T3 ES 00912053 T ES00912053 T ES 00912053T ES 00912053 T ES00912053 T ES 00912053T ES 2269112 T3 ES2269112 T3 ES 2269112T3
- Authority
- ES
- Spain
- Prior art keywords
- voice
- frame
- coding
- domain
- encoder
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Physical Or Chemical Processes And Apparatus (AREA)
Abstract
Procedimiento para procesar tramas, que comprende las etapas siguientes: aplicar un procedimiento de selección de modalidad de codificación en bucle abierto a cada trama de entrada consecutiva para seleccionar una modalidad de codificación en el dominio del tiempo o una modalidad de codificación en el dominio de la frecuencia, basándose en el contenido de voz de la trama de entrada; codificar en el dominio de la frecuencia (416) la trama de entrada si el contenido de voz de la trama de entrada indica voz sonora de estado estacionario; codificar en el dominio del tiempo (414) la trama de entrada si el contenido de voz de la trama de entrada indica cualquier tipo de voz que no es voz sonora de estado estacionario; comparar (420) la trama codificada en el dominio de la frecuencia con la trama de entrada para obtener una medida del rendimiento; y codificar en el dominio del tiempo (414) la trama de entrada si la medida del rendimiento está por debajo de un valor umbral predefinido.
Description
Codificador de voz multimodal en bucle cerrado
de dominio mixto.
La presente invención se refiere en general al
campo del procesamiento de voz y, más particularmente, a un
procedimiento y un aparato para realizar la codificación de voz en
bucle cerrado, multimodal y de dominio mixto.
La transmisión de voz mediante técnicas
digitales ha adquirido una gran difusión, particularmente, en las
aplicaciones telefónicas de radio digitales y de larga distancia. A
su vez, esto ha generado un interés por la determinación de la
cantidad mínima de información que puede enviarse a través de un
canal mientras se mantiene la calidad percibida de la voz
reconstruida. Si la transmisión de voz se realiza simplemente
muestreando y digitalizando, se requiere una velocidad de
transmisión de datos del orden de sesenta y cuatro kilobits por
segundo (kb/s) para obtener la calidad de voz de un teléfono
analógico convencional. No obstante, a través de la utilización del
análisis de la voz, seguido de la codificación, transmisión y
resíntesis adecuada en el receptor, es posible reducir de forma
significativa la velocidad de transmisión de los datos.
Los dispositivos que emplean técnicas para
comprimir la voz extrayendo parámetros relacionados con un modelo de
generación de voz humana se denominan codificadores de voz. Un
codificador de voz divide la señal de voz de entrada en bloques de
tiempo o tramas de análisis. Los codificadores de voz habitualmente
comprenden un codificador y un decodificador. El codificador
analiza la trama de voz de entrada para extraer ciertos parámetros
relevantes y, a continuación, cuantifica los parámetros en una
representación binaria, es decir, como un conjunto de bits o un
paquete de datos binarios. Los paquetes de datos se transmiten a
través del canal de comunicación a un receptor y un decodificador.
El decodificador procesa los paquetes de datos, los decuantifica
para obtener los parámetros y resintetiza las tramas de voz
utilizando los parámetros decuantificados.
La función del codificador de voz consiste en
comprimir la señal de voz digitalizada en una señal de baja
velocidad binaria eliminando todas las redundancias naturales
inherentes al habla. La compresión digital se realiza representando
la trama de voz de entrada con un conjunto de parámetros y empleando
la cuantificación para representar los parámetros con un conjunto de
bits. Si la trama de voz de entrada presenta un número de bits N y
el paquete de datos generado por el codificador de voz presenta un
número de bits N_{o}, el factor de compresión aplicado por el
codificador de voz es C_{r} = N_{r}/N_{o}. El objetivo
pretendido es conservar una alta calidad de la voz decodificada y
alcanzar, al mismo tiempo, el factor de compresión deseado. El
rendimiento de un codificador de voz depende de (1) la idoneidad del
modelo de voz o de la combinación del proceso de análisis y síntesis
descrito anteriormente y (2) la idoneidad del procedimiento de
cuantificación de los parámetros a la velocidad binaria deseada de
N_{o} bits por trama. El objetivo del modelo de voz es, por lo
tanto, captar la esencia de la señal de voz, o la calidad de la voz
deseada, con un conjunto reducido de parámetros para cada trama.
Los codificadores de voz pueden implementarse
como codificadores del dominio el tiempo, cuyo objetivo es captar la
forma de onda de la voz en el dominio del tiempo, empleando un
procesamiento de alta resolución temporal para codificar un pequeño
segmento de voz (habitualmente, una subtrama de 5 milisegundos (ms))
cada vez. Para cada subtrama, se obtiene un representante de alta
precisión de un espacio de libro de código por medio de diversos
algoritmos de búsqueda conocidos dentro de la técnica. Como
alternativa, los codificadores de voz pueden implementarse como
codificadores del dominio de la frecuencia, cuyo objetivo es captar
el espectro de voz a corto plazo de la trama de voz de entrada con
un conjunto de parámetros (análisis) y emplear un correspondiente
procedimiento de síntesis para recrear la forma de onda de la voz a
partir de los parámetros espectrales. El cuantificador de parámetros
mantiene los parámetros utilizando unas representaciones almacenadas
de vectores de código según unas técnicas conocidas descritas en la
publicación de A. Gersho y R.M. Gray,Vector Quantization and
Signal Compression (1992).
Un codificador de voz del dominio del tiempo muy
conocido es el codificador predictivo lineal excitado por código
(CELP) descrito en la publicación de L.B. Rabiner y R.W. Schafer,
Digital Processing of Speech Signals, 396-453
(1978), incorporado por completo en la presente memoria a título de
referencia. En un codificador CELP, las correlaciones a corto plazo,
o redundancias, de la señal de voz se eliminan mediante un análisis
de predicción lineal (LP), que halla los coeficientes de un filtro
de formantes a corto plazo. Cuando se aplica el filtro de predicción
a corto plazo a la trama de voz de entrada, se genera una señal de
residuo LP, que además se modeliza y cuantifica con los parámetros
de un filtro de predicción a largo plazo y un subsiguiente libro de
código estocástico. Por lo tanto, la codificación CELP divide la
tarea de codificar la forma de onda de voz en el dominio del tiempo
en las tareas separadas de codificar los coeficientes del filtro LP
a corto plazo y codificar el residuo LP. La codificación en el
dominio del tiempo puede realizarse a una velocidad fija (utilizando
el mismo número de bits, N_{o}, para cada trama) o a una velocidad
variable (utilizándose velocidades binarias diferentes para los
diferentes tipos de contenidos de las tramas). Los codificadores de
velocidad variable tratan de utilizar sólo la cantidad de bits
necesarios para codificar los parámetros del códec hasta un nivel
adecuado para obtener la calidad deseada. Se describe un ejemplo de
codificador CELP de velocidad variable en la patente US n.º
5.414.796, cedida al cesionario de la presente invención.
Los codificadores del dominio del tiempo, tales
como los codificadores CELP, suelen basarse en un gran número de
bits, N_{o}, por trama para mantener la precisión de la forma de
onda de voz en el dominio del tiempo. Dichos codificadores
habitualmente proporcionan una excelente calidad de la voz siempre
que el número de bits, N_{o}, por trama sea relativamente elevado
(p.ej., 8 kb/s o más). No obstante, a bajas velocidades binarias (4
kb/s e inferiores), los codificadores del dominio del tiempo no
consiguen conservar un rendimiento consistente de alta calidad,
debido al número limitado de bits disponibles. A bajas velocidades
binarias, el limitado espacio de libro de código recorta la
capacidad para hacer concordar las formas de onda de los
codificadores del dominio del tiempo convencionales, que se emplean
de forma muy satisfactoria en las aplicaciones comerciales de alta
velocidad.
Actualmente, existe un interés renovado y unas
grandes demandas comerciales que impulsan la investigación y el
diseño de codificadores de voz de alta calidad que funcionen a
velocidades binarias intermedias y bajas (es decir, en el rango de
2,4 a 4 kb/s y por debajo de éste). Las áreas de aplicación incluyen
la telefonía inalámbrica, las comunicaciones por satélite, la
telefonía por Internet, diversas aplicaciones multimedia y de
reproducción de voz en tiempo real, el sistema de buzón de voz y
otros sistemas de almacenamiento de voz. Estos propósitos vienen
estimulados por la necesidad de disponer de una alta capacidad y un
rendimiento sólido en situaciones de pérdida de paquetes. Los
diversos esfuerzos recientes destinados a la normalización de la
codificación constituyen otro estímulo directo que impulsa la
investigación y el desarrollo de algoritmos de codificación de voz a
baja velocidad. Un codificador de voz de baja velocidad crea más
canales, o usuarios, por ancho de banda de aplicación permitido, y
un codificador de voz de baja velocidad acoplado a una capa
adicional de codificación de canales adecuada puede encajar en el
cálculo de bits global de las especificaciones del codificador y
proporcionar un rendimiento sólido en condiciones de errores en los
canales.
Para codificar a bajas velocidades binarias, se
han diseñado diversos procedimientos de codificación de la voz en el
dominio espectral, o en el dominio de la frecuencia, en los que la
señal de voz se analiza como una evolución del espectro variable en
el tiempo (véase, por ejemplo, el documento de R.J. McAulay y T.F.
Quatieri, Sinusoidal Coding, en la publicación Speech
Coding and Synthesis, cap. 4 (W.B. Kleijn y K.K. Paliwal eds.,
1995). En los codificadores espectrales, el objetivo es modelizar, o
predecir, el espectro de voz a corto plazo de cada trama de voz de
entrada con un conjunto de parámetros espectrales, en lugar de
imitar con precisión la forma de onda de voz variable en el tiempo.
A continuación, se codifican los parámetros espectrales y se crea
una trama de voz de salida con los parámetros decodificados. La voz
sintetizada resultante no coincide con la forma de onda de voz de
entrada original, pero ofrece una calidad percibida similar. Entre
los ejemplos de codificadores del dominio de la frecuencia muy
conocidos dentro de la técnica, cabe citar los codificadores de
excitación multibanda (MBE), los codificadores de transformación
sinusoidal (STC) y los codificadores de armónicos (HC). Dichos
codificadores del dominio de la frecuencia ofrecen un modelo
paramétrico de alta calidad que presenta un conjunto compacto de
parámetros que pueden cuantificarse de forma precisa con el bajo
número de bits disponibles a bajas velocidades binarias.
Sin embargo, la codificación a baja velocidad
binaria impone como restricción crítica una limitada resolución de
codificación, o un espacio de libro de código limitado, imposición
que a su vez limita la eficacia de los mecanismos de codificación
individuales e impide que el codificador pueda representar con la
misma precisión diversos tipos de segmentos de voz bajo condiciones
de fondo diferentes. Por ejemplo, los codificadores de baja
velocidad binaria del dominio de la frecuencia convencionales no
transmiten información de fase para las tramas de voz, sino que la
información de fase se reconstruye utilizando un valor de fase
inicial aleatorio generado artificialmente y unas técnicas de
interpolación lineal (véase, por ejemplo, el documento de H. Yang
et al., Quadratic Phase Interpolation for Voice Speech
Synthesis in the MBE Model, en la publicación 29 Electronic
Letters, 856-57 (mayo de 1993). Debido a que la
información de fase se genera artificialmente, aunque las amplitudes
de las sinusoides se conserven perfectamente mediante el
procedimiento de cuantificación-decuantificación,
la voz de salida generada por el codificador del dominio de la
frecuencia no estará alineada con la voz de entrada original (es
decir, los impulsos principales no estarán sincronizados). Por lo
tanto, aplicar cualquier medida del rendimiento en bucle cerrado,
tal como, por ejemplo, la relación señal-ruido (SNR)
o la SNR perceptiva, a los codificadores del dominio de la
frecuencia resulta ser una tarea difícil.
Las técnicas de codificación multimodal se han
empleado para realizar la codificación de voz a baja velocidad en
conjunción con un procedimiento de decisión de modalidad en bucle
abierto. Una de dichas técnicas de codificación multimodal es la
descrita en el documento de Amitava Das et al., Multimode
and Variable-Rate Coding of Speech, en la
publicación Speech Coding and Synthesis, cap. 7 (W.B. Kleijn
y K.K. Paliwal eds., 1995). Los codificadores multimodales
convencionales aplican diferentes modalidades, o algoritmos de
codificación-decodificación, a diferentes tipos de
tramas de voz de entrada. Cada modalidad, o procedimiento de
codificación-decodificación, se personaliza para
representar un cierto tipo de segmento de voz, tal como un segmento
de voz sonora, voz sorda o ruido de fondo (no voz), de la manera más
eficaz. Un mecanismo de decisión de modalidad en bucle abierto
externo examina la trama de voz de entrada y decide qué modalidad va
a aplicarse a la trama. La decisión de modalidad en bucle abierto
se suele realizar extrayendo un grupo de parámetros de la trama de
entrada, evaluando los parámetros con respecto a ciertas
características temporales y espectrales y basando la decisión de
modalidad en la evaluación. La decisión de modalidad se realiza,
pues, sin conocer de antemano el estado exacto de la voz de salida,
es decir, sin saber qué grado de similitud presenta la voz de salida
con la voz de entrada en términos de calidad de voz u otras medidas
del rendimiento.
Según lo anterior, será deseable proporcionar un
codificador de baja velocidad binaria del dominio de la frecuencia
que obtenga información de fase más precisa. También será ventajoso
proporcionar un codificador multimodal y de dominio mixto para
realizar la codificación en el dominio del tiempo de ciertas tramas
de voz y la codificación en el dominio de la frecuencia de otras
tramas de voz, basándose en el contenido de voz de las tramas.
Asimismo, será deseable proporcionar un codificador de dominio mixto
que pueda realizar la codificación en el dominio del tiempo de
ciertas tramas de voz y la codificación en el dominio de la
frecuencia de otras tramas de voz, según un mecanismo de decisión de
modalidad de codificación en bucle cerrado. Por lo tanto, se plantea
la necesidad de disponer de un codificador de voz en bucle cerrado,
multimodal y de dominio mixto que asegure la sincronización temporal
entre la voz de salida generada por el codificador y la voz original
introducida en el codificador.
La atención se centrará ahora en el documento de
DAS A. et al. "Multimode variable speech coding: An
efficient paradigma for
high-quality-low-rate
representation of speech signal", IEE International Conference on
Acoustics, Speech, and Signal processing (ICASSP), 15 de mayo de
1999, páginas 2307-2310, XP002132367 IEE, Nueva
York, USA, ISBN:
0-7803-5042-1. El
documento trata sobre la codificación de voz multimodal y velocidad
binaria variable aplicando un sistema de codificación basado en la
predicción lineal. Como se menciona en el documento, el rendimiento
de un códec de velocidad binaria variable se incrementa
proporcionando un mecanismo de decisión de modalidad en bucle
cerrado, en el que se utiliza una medida de error para decidir si la
modalidad de velocidad baja seleccionada ha proporcionado o no una
buena calidad de voz y, en caso de que el rendimiento no sea
satisfactorio, aplicar una modalidad de velocidad superior.
La atención se centra asimismo en el documento
WO 99/10719, que da a conocer un procedimiento para la codificación
híbrida de la voz a 4 kb/s. La señal de voz se clasifica en voz
sonora de estado estacionario, voz sorda estacionaria y voz
transitoria. Se utiliza un tipo particular de sistema de
codificación para cada clase. La codificación de armónicos se
utiliza para la voz sonora de estado estacionario, la codificación
"tipo ruido" se utiliza para la voz sorda estacionaria y, para
la voz de transición, se utiliza una modalidad de codificación
especial operativa para captar la ubicación, la estructura y la
intensidad de los eventos temporales locales que caracterizan las
partes de transición de la voz. Los sistemas de compresión pueden
aplicarse a la señal de voz o a la señal de residuo LP.
Según la presente invención, se proporciona un
procedimiento para procesar tramas según la reivindicación 1, y un
procesador de voz multimodales y de dominio mixto según la
reivindicación 9. Las formas de realización de la presente invención
se reivindican en las reivindicaciones subordinadas.
La presente invención se refiere a un
codificador de voz en bucle cerrado, multimodal y de dominio mixto
que asegura la sincronía temporal entre la voz de salida generada
por el codificador y la voz original introducida en el codificador.
En consecuencia, en un aspecto de la presente invención, un
procesador de voz multimodal y de dominio mixto incluye
ventajosamente un codificador que presenta, por lo menos, una
modalidad de codificación en el dominio del tiempo y, por lo menos,
una modalidad de codificación en el dominio de la frecuencia; y un
dispositivo de selección de modalidad en bucle cerrado acoplado al
codificador y configurado para seleccionar una modalidad de
codificación para el codificador, basándose en el contenido de las
tramas procesadas por el procesador de voz.
En otro aspecto de la presente invención, el
procedimiento para procesar las tramas incluye ventajosamente las
etapas de: aplicación de un procedimiento de selección de modalidad
de codificación en bucle abierto a cada trama de entrada consecutiva
para seleccionar una modalidad de codificación en el dominio del
tiempo o una modalidad de codificación en el dominio de la
frecuencia, basándose en el contenido de voz de la trama de entrada;
codificación en el dominio de la frecuencia de la trama de entrada
si el contenido de voz de la trama de entrada indica voz sonora de
estado estacionario; codificación en el dominio del tiempo de la
trama de entrada si el contenido de voz de la trama de entrada
indica cualquier tipo de voz que no es voz sonora de estado
estacionario; comparación de la trama codificada en el dominio de
la frecuencia con la trama de entrada para obtener una medida del
rendimiento y codificación en el dominio del tiempo de la trama de
entrada si la medida del rendimiento está por debajo de un valor
umbral predefinido.
En otro aspecto de la presente invención, el
procesador de voz multimodal y de dominio mixto incluye
ventajosamente unos medios para codificar en el dominio de la
frecuencia la trama de entrada si el contenido de voz de la trama de
entrada indica voz sonora de estado estacionario; unos medios para
codificar en el dominio del tiempo la trama de entrada si el
contenido de voz de la trama de entrada indica cualquier tipo de voz
que no es voz sonora de estado estacionario; unos medios para
comparar la trama codificada en el dominio de la frecuencia con la
trama de entrada y obtener una medida del rendimiento y unos medios
para codificar en el dominio del tiempo la trama de entrada si la
medida del rendimiento está por debajo de un valor umbral
predefinido.
La Figura 1 es un diagrama de bloques de un
canal de comunicación terminado en ambos extremos por un codificador
de voz.
La Figura 2 es un diagrama de bloques de un
codificador que puede ser utilizado en un codificador de voz de
predicción lineal multimodal y de dominio mixto (MDLP).
La Figura 3 es un diagrama de bloques de un
decodificador que puede utilizarse en un codificador de voz MDLP
multimodal.
\newpage
La Figura 4 es un diagrama de flujo que ilustra
las etapas de codificación MDLP realizadas por un codificador MDLP
que puede utilizarse en el codificador de la Figura 2.
La Figura 5 es un diagrama de flujo que ilustra
un procedimiento de decisión de codificación de voz.
La Figura 6 es un diagrama de bloques de un
codificador de voz MDLP en bucle cerrado y multimodal.
La Figura 7 es un diagrama de bloques de un
codificador espectral que puede utilizarse en el codificador de la
Figura 6 o el codificador de la Figura 2.
La Figura 8 es un gráfico
amplitud-frecuencia, que ilustra las amplitudes de
las sinusoides en un codificador de armónicos.
La Figura 9 es un diagrama de flujo que ilustra
el procedimiento de decisión de modalidad de un codificador de voz
MDLP multimodal.
La Figura 10A es un gráfico amplitud de señal de
voz-tiempo, y la Figura 10B es un gráfico amplitud
de residuo de predicción lineal (LP)-tiempo.
La Figura 11A es un gráfico
velocidad/modalidad-índice de trama según una decisión de
codificación en bucle cerrado, la Figura 11B es un gráfico relación
señal/ruido perceptiva (PSNR)-índice de trama según una decisión en
bucle cerrado y la Figura 11C es un gráfico velocidad/modalidad y
PSNR-índice de trama en ausencia de una decisión de codificación en
bucle cerrado.
En la Figura 1, un primer codificador 10 recibe
muestras de voz digitalizadas s(n) y las codifica para su
transmisión en unos medios de transmisión 12, o un canal de
comunicación 12, a un primer decodificador 14. El decodificador 14
decodifica las muestras de voz codificadas y sintetiza una señal de
voz de salida s_{SYNTH}(n). Para la transmisión en la
dirección opuesta, un segundo codificador 16 codifica las muestras
de voz digitalizadas s(n), que se transmiten en un canal de
comunicación 18. Un segundo decodificador 20 recibe y decodifica las
muestras de voz codificadas, generando una señal de voz sintetizada
de salida s_{SYNTH}(n).
Las muestras de voz s(n) representan
señales de voz que han sido digitalizadas y cuantificadas según
cualquiera de los diversos procedimientos conocidos dentro de la
técnica, que incluyen, por ejemplo, la modulación por impulsos
codificados (PCM), la compansión de ley \mu o la compansión de ley
A. Como se sabe dentro de la técnica, las muestras de voz
s(n) se distribuyen en tramas de datos de entrada, que
comprenden un número predeterminado de muestras de voz digitalizadas
s(n). En un ejemplo de forma de realización, se emplea una
frecuencia de muestreo de 8 KHz, y cada trama de 20 ms comprende
160 muestras. En las formas de realización descritas más adelante,
la velocidad de transmisión de los datos puede hacerse variar
ventajosamente de trama en trama para pasar de 8 kb/s (velocidad
completa) a 4 kb/s (media velocidad), a 2 kb/s (cuarto de velocidad)
o a 1 kb/s (octavo de velocidad). Como alternativa, es posible
utilizar otras velocidades de transmisión de datos. Los términos
"velocidad completa" o "alta velocidad" empleados en la
presente memoria se refieren en general a velocidades de transmisión
de datos que son mayores o iguales a 8 kb/s, y los términos "media
velocidad" o "baja velocidad" se refieren en general a
velocidades de transmisión de datos que son menores o iguales a 4
kb/s. La variación de la velocidad de transmisión de los datos
resulta ventajosa, porque permite emplear selectivamente las
velocidades binarias inferiores para las tramas que contienen una
cantidad relativamente inferior de información de voz. Como
apreciarán los expertos en la materia, es posible utilizar otras
frecuencias de muestreo, tamaños de trama y velocidades de
transmisión de datos.
El primer codificador 10 y el segundo
decodificador 20 constituyen conjuntamente un primer codificador de
voz, o códec de voz. Análogamente, el segundo codificador 16 y el
primer decodificador 14 constituyen conjuntamente un segundo
codificador de voz. Los expertos en la materia deberán tener en
cuenta que los codificadores de voz pueden implementarse con un
procesador de señales digitales (DSP), un circuito integrado de
aplicación específica (ASIC), una lógica de compuerta discreta,
firmware o cualquier módulo de software y microprocesador
programable convencional. El módulo de software puede residir en una
memoria RAM, una memoria flash, unos registros o cualquier otra
forma de medios de almacenamiento registrables conocidos en la
técnica. Como alternativa, se puede sustituir el microprocesador
por cualquier procesador, controlador o máquina de estados
convencional. Se describen ejemplos de ASIC especialmente diseñados
para la codificación de voz en la patente US n.º 5.727.123, cedida
al cesionario de la presente invención, y en la solicitud de patente
US de n.º de serie 08/197.417, titulada VOCODER ASIC, presentada el
16 de febrero de 1994 y cedida al cesionario de la presente
invención.
Según una forma de realización ilustrada en la
Figura 2, el codificador de predicción lineal multimodal y de
dominio mixto (MDLP) 100 que puede utilizarse en un codificador de
voz incluye un módulo de decisión de modalidad 102, un módulo de
estimación de la altura 104, un módulo de análisis de predicción
lineal (LP) 106, un filtro de análisis LP 108, un módulo de
cuantificación LP 110 y un codificador de residuo MDLP 112. Las
tramas de voz de entrada s(n) se proporcionan al módulo de
decisión de modalidad 102, el módulo de estimación de altura 104,
el módulo de análisis LP 106 y el filtro de análisis LP 108. El
módulo de decisión de modalidad 102 genera un índice de modalidad
I_{M} y una modalidad M basados en la periodicidad, y otros
parámetros calculados tales como la energía, la inclinación
espectral, la frecuencia de cruce por cero, etc. de cada trama de
voz de entrada s(n). Se describen diversos procedimientos
para clasificar las tramas de voz según la periodicidad en la
solicitud de patente US de n.º de serie 08/815.354, titulada METHOD
AND APPARATUS FOR PERFORMING REDUCED RATE VARIABLE RATE VOCODING,
presentada el 11 de marzo de 1997, cedida al cesionario de la
presente invención. Dichos procedimientos están incorporados también
en las normas provisionales de Telecommunication Industry
Association - Electronic Industries Alliance TIA/EIA
IS-127 y TIA/EIA IS-733.
El módulo de estimación de altura 104 genera un
índice de altura I_{P} y un valor de desfase P_{0} basados en
cada trama de voz de entrada s(n). El módulo de análisis LP
106 realiza el análisis predictivo lineal con cada trama de voz de
entrada s(n) para generar un parámetro LP a. El
parámetro LP a es proporcionado al módulo de cuantificación
LP 110. El módulo de cuantificación LP 110 recibe también la
modalidad M y, de esta manera, el procedimiento de cuantificación se
realiza en dependencia con la modalidad. El módulo de cuantificación
LP genera un índice LP I_{LP} y un parámetro LP cuantificado
â. El filtro de análisis LP 108 genera una señal de residuo
LP R[n], que representa el error entre las tramas de voz de
entrada s(n) y la voz reconstruida basada en los parámetros
de predicción lineal cuantificados â. El residuo LP R[n], la
modalidad M y el parámetro LP cuantificado â se proporcionan al
codificador de residuo MDLP 112. Basándose en estos valores, el
codificador de residuo MDLP 112 genera un índice de residuo I_{R}
y una señal de residuo cuantificado \hat{R}[n] según las
etapas descritas más adelante con referencia al diagrama de flujo de
la Figura 4.
En la Figura 3, el decodificador 200 que puede
utilizarse en un codificador de voz incluye un módulo de
decodificación de parámetros LP 202, un módulo de decodificación de
residuo 204, un módulo de decodificación de modalidad 206 y un
filtro de síntesis LP 208. El módulo de decodificación de modalidad
206 recibe y decodifica un índice de modalidad I_{M}, y genera a
partir de éste una modalidad M. El módulo de decodificación de
parámetros LP 202 recibe la modalidad M y un índice LP I_{LP}. El
módulo de decodificación de parámetros LP 202 decodifica los valores
recibidos para generar un parámetro LP cuantificado â. El módulo de
decodificación de residuo 204 recibe un índice de residuo I_{R},
un índice de altura I_{P} y el índice de modalidad I_{M}. El
módulo de decodificación de residuo 204 decodifica los valores
recibidos para generar una señal de residuo cuantificado
\hat{R}[n].
La señal de ruido cuantificado
\hat{R}[n] y el parámetro LP cuantificado â se proporcionan
al filtro de síntesis LP 208, que sintetiza una señal de voz de
salida decodificada \hat{s}[n] a partir de éstos.
El funcionamiento y la implementación de los
diversos módulos del codificador 100 de la Figura 2 y el
decodificador 200 de la Figura 3, con excepción del codificador de
residuo MDLP 112, son conocidos dentro de la técnica y descritos en
la patente US nº 5.414.796 mencionada anteriormente y en el
documento de L.B. Rabiner y R.W. Schafer, Digital Processing of
Speech Signals, 396-453 (1978).
Según una forma de realización, un codificador
MDLP (no representado) realiza las etapas representadas en el
diagrama de flujo de la Figura 4. El codificador MDLP puede ser el
codificador de residuo MDLP 112 de la Figura 2. En la etapa 300, el
codificador MDLP comprueba si la modalidad M es la modalidad de
velocidad completa (FR), cuarto de velocidad (QR) u octavo de
velocidad (ER). Si la modalidad M es FR, QR o ER, el codificador
MDLP continúa por la etapa 302. En la etapa 302, el codificador MDLP
aplica la correspondiente velocidad (FR, QR o ER, según el valor de
M) al índice de residuo I_{R}. Se aplica, a una trama de residuo
LP o, alternativamente, a una trama de voz, una codificación en el
dominio del tiempo, que para la modalidad FR es una codificación de
alta precisión y alta velocidad y que, ventajosamente, puede ser la
codificación CELP. A continuación, la trama se transmite (después de
un procesamiento adicional de la señal que incluye la conversión
digital-analógica y la modulación). En una forma de
realización, la trama es una trama de residuo LP que representa el
error de predicción. En una forma de realización alternativa, la
trama es una trama de voz que representa unas muestras de voz.
En cambio, si en la etapa 300 la modalidad M no
es FR, QR ni ER (es decir, si la modalidad M es media velocidad
(HR)), el codificador MDLP continúa por la etapa 304. En la etapa
304, se aplica la codificación espectral, que ventajosamente es la
codificación de armónicos, al residuo LP o, alternativamente, a la
señal de voz, a media velocidad. Entonces, el codificador MDLP
continúa por la etapa 306. En la etapa 306, se obtiene una medida de
la distorsión D, decodificando la voz codificada y comparándola con
la trama de entrada original. El codificador MDLP continúa después
por la etapa 308, en la que la medida de distorsión D se compara con
un valor umbral predefinido T. Si la medida de la distorsión D es
superior al umbral T, entonces los correspondientes parámetros
cuantificados para la trama codificada espectralmente se modulan y
transmiten a media velocidad. En cambio, si la medida de la
distorsión D no es superior al umbral T, el codificador MDLP
continúa por la etapa 310. En la etapa 310, la trama decodificada se
vuelve a codificar en el dominio del tiempo a velocidad completa. Es
posible utilizar cualquier algoritmo de codificación de alta
velocidad y alta precisión convencional y, de forma ventajosa, un
algoritmo de codificación CELP. Finalmente, los parámetros de
modalidad FR cuantificados asociados a la trama se modulan y
transmiten.
Como se ilustra en el diagrama de flujo de la
Figura 5, un codificador de voz MDLP en bucle cerrado y multimodal
según una forma de realización sigue un conjunto de etapas en el
procesamiento de las muestras de voz para la transmisión. En la
etapa 400, el codificador de voz recibe las muestras digitales de
una señal de voz en tramas consecutivas. Una vez que ha recibido una
trama determinada, el codificador de voz continúa por la etapa 402.
En la etapa 402, el codificador de voz detecta la energía de la
trama. La energía es una medida de la actividad vocal de la trama.
La detección de voz se realiza sumando los cuadrados de las
amplitudes de las muestras de voz digitalizadas y comparando la
energía resultante con un valor umbral. En una forma de realización,
el valor umbral se adapta al nivel cambiante del ruido de fondo. Se
describe un ejemplo de detector de actividad vocal de umbral
variable en la patente US n.º 5.414.796 mencionada anteriormente.
Algunos sonidos de voz sorda pueden constituir muestras de energía
extremadamente baja que pueden codificarse por error como ruido de
fondo. Para impedir que esto suceda, puede utilizarse la inclinación
espectral de las muestras de baja energía para diferenciar la voz
sorda del ruido de fondo, como se describe en la patente US nº
5.414.796, mencionada anteriormente.
Una vez que se ha detectado la energía de la
trama, el codificador de voz continúa por la etapa 404. En la etapa
404, el codificador de voz determina si la energía de trama
detectada es suficiente para clasificar la trama como una trama que
contiene información de voz. Si la energía de trama detectada está
por debajo de un nivel umbral predeterminado, el codificador de voz
continúa por la etapa 406. En la etapa 406, el codificador de voz
codifica la trama como ruido de fondo (es decir, no voz o silencio).
En una forma de realización la trama de ruido de fondo se somete a
codificación en el dominio del tiempo a la velocidad 1/8 (o 1 kb/s).
Si en la etapa 404 la energía de trama detectada alcanza o supera el
nivel umbral predefinido, la trama se clasifica como trama de voz y
el codificador de voz continúa por la etapa 408.
En la etapa 408, el codificador de voz determina
si la trama es periódica. Se conocen diversos procedimientos para
determinar la periodicidad, incluidos, por ejemplo, la utilización
de los cruces por cero y la utilización de funciones de
autocorrelación normalizada (NACF). En particular, la utilización de
los cruces por cero y las NACF para detectar la periodicidad se
describe en la solicitud de patente US n.º 08/815.354, titulada
METHOD AND APPARATUS FOR PERFORMING REDUCED RATE VARIABLE RATE
VOCODING, presentada el 11 de marzo de 1997 y cedida al cesionario
de la presente invención. Además, los procedimientos anteriores
utilizados para diferenciar la voz sonora de la voz sorda están
incorporados en las normas provisionales de Telecommunication
Industry Association - Industry Interim Standards TIA/EIA
IS-127 y TIA/EIA IS-733. Si en la
etapa 408 se determina que la trama no es periódica, el codificador
de voz continúa por la etapa 410. En la etapa 410, el codificador de
voz codifica la trama como una trama de voz sorda. En una forma de
realización, las tramas de voz sorda se codifican en el dominio del
tiempo a la velocidad 1/4 (o 2 kb/s). Si en la etapa 408 se
determina que la trama es periódica, el codificador de voz continúa
por la etapa 412.
En la etapa 412, el codificador de voz determina
si la trama es suficientemente periódica, utilizando los
procedimientos de detección de periodicidad conocidos dentro de la
técnica, tales como los descritos en la solicitud de patente US de
nº de serie 08/815.354 mencionada anteriormente. Si se determina que
la trama no es suficientemente periódica, el codificador de voz
continúa por la etapa 414. En la etapa 414, la trama se codifica en
el dominio del tiempo como una trama de voz de transición (es decir,
de transición de voz sorda a voz sonora). En una forma de
realización, la trama de voz de transición se codifica en el dominio
del tiempo a velocidad completa (o 8 kb/s).
Si en la etapa 412 el codificador de voz
determina que la trama es suficientemente periódica, el codificador
de voz continúa por la etapa 416. En la etapa 416, el codificador de
voz codifica la trama como una trama de voz sonora. En una forma de
realización, las tramas de voz sonora se codifican espectralmente a
media velocidad, o 4 kb/s. Ventajosamente, las tramas de voz sonora
se codifican espectralmente con un codificador de armónicos, como el
descrito más adelante con referencia a la Figura 7. Como
alternativa, pueden utilizarse otros codificadores espectrales,
tales como, por ejemplo, los codificadores de transformación
sinusoidal o los codificadores de excitación multibanda conocidos
dentro de la técnica. Entonces, el codificador de voz continúa por
la etapa 418. En la etapa 418, el codificador de voz decodifica la
trama de voz sonora codificada. A continuación, el codificador de
voz continúa por la etapa 420. En la etapa 420, la trama de voz
sonora decodificada se compara con las correspondientes muestras de
voz de entrada de dicha trama para obtener una medida de la
distorsión de la voz sintetizada y determinar si el modelo de
codificación espectral a media velocidad de la voz sonora está
funcionando dentro de los límites aceptables. A continuación, el
codificador de voz continúa por la etapa 422.
En la etapa 422, el codificador de voz determina
si el error entre la trama de voz sonora decodificada y las muestras
de voz de entrada correspondientes a dicha trama se halla por debajo
de un valor umbral predefinido. Según una forma de realización, esta
determinación se toma de la manera descrita más adelante con
referencia a la Figura 6. Si la distorsión de codificación se halla
por debajo del valor umbral predefinido, el codificador de voz
continúa por la etapa 424. En la etapa 424, el codificador de voz
transmite la trama como voz sonora, utilizando los parámetros de la
etapa 416. Si en la etapa 422 la distorsión de codificación alcanza
o supera el valor umbral predefinido, el codificador de voz continúa
por la etapa 414 y codifica en el dominio del tiempo la trama de
muestras de voz digitalizadas recibidas en la etapa 400 como voz de
transición, a velocidad completa.
Debe destacarse que las etapas 400 a 410
comprenden una modalidad de decisión de codificación en bucle
abierto. Las etapas 412 a 426, en cambio, comprenden una modalidad
de decisión de codificación en bucle cerrado.
En una forma de realización representada en la
Figura 6, el codificador de voz MDLP en bucle cerrado y multimodal
incluye un convertidor analógico-digital (A/D) 500
acoplado a una memoria tampón de trama 502 que, a su vez, está
acoplada a un procesador de control 504. Acoplados al procesador de
control 504, están un calculador de energía 506, un detector de voz
sonora 508, un codificador de ruido de fondo 510, un codificador de
alta velocidad del dominio del tiempo 512 y un codificador espectral
de baja velocidad 514. Un decodificador espectral 516 está acoplado
al codificador espectral 514, y un calculador de error 518 está
acoplado al decodificador espectral 516 y al procesador de control
504. Un comparador de umbral 520 está acoplado al calculador de
error 518 y al procesador de control 504. Una memoria tampón 522
está acoplada al codificador espectral 514, al decodificador
espectral 516 y al comparador de umbral 520.
En la forma de realización de la Figura 6, los
componentes del codificador de voz se implementan ventajosamente
como firmare u otro tipo de módulos controlados por software del
codificador de voz, que reside ventajosamente en un DSP o un ASIC.
Los expertos en la materia tendrán en cuenta que los componentes del
codificador de voz podrían implementarse igualmente de otras
diversas maneras conocidas. El procesador de control 504 puede ser
ventajosamente un microprocesador, pero también puede implementarse
con un controlador, una máquina de estados o una lógica
discreta.
En el codificador multimodal de la Figura 6, las
señales de voz se proporcionan al A/D 500. El A/D 500 convierte las
señales analógicas en tramas de muestras de voz digitalizadas,
S(n). Las muestras de voz digitalizadas se proporcionan a la
memoria tampón de trama 502. El procesador de control 504 recibe las
muestras de voz digitalizadas de la memoria tampón de trama 502 y
las proporciona al calculador de energía 506. El calculador de
energía 506 calcula la energía, E, de las muestras de voz según la
ecuación siguiente:
E =
\sum\limits^{159}_{n=0} S^{2}
(n)
en la que las tramas son de 20 ms
de longitud y la frecuencia de muestreo es de 8 kHz. La energía
calculada, E, se envía al procesador de control
504.
El procesador de control 504 compara la energía
de la voz calculada con un umbral de actividad vocal. Si la energía
calculada está por debajo del umbral de actividad vocal, el
procesador de control 504 dirige las muestras de voz digitalizadas
desde la memoria tampón de trama 502 hasta el codificador de ruido
de fondo 510. El codificador de ruido de fondo 510 codifica la trama
utilizando el número mínimo de bits necesarios para mantener una
estimación del ruido de fondo.
Si la energía calculada es superior o igual al
umbral de actividad vocal, el procesador de control 504 dirige las
muestras de voz digitalizadas desde la memoria tampón de trama 502
hasta el detector de voz sonora 508. El detector de voz sonora 508
determina si la periodicidad de la trama de voz permitirá realizar
una codificación eficaz utilizando la codificación espectral de baja
velocidad binaria. Dentro de la materia, se dispone de algunos
procedimientos muy conocidos para determinar el nivel de
periodicidad de una trama de voz, que incluyen, por ejemplo, la
utilización de funciones de autocorrelación normalizada (NACF) y los
cruces por cero. Estos y otros procedimientos se describen en la
solicitud de patente US de n.º de serie 08/815.354 mencionada
anteriormente.
El detector de voz sonora 508 proporciona una
señal al procesador de control 504, que indica si la trama de voz
contiene voz de suficiente periodicidad para ser codificada con
eficacia por el codificador espectral 514. Si el detector de voz
sonora 508 determina que la trama de voz carece de suficiente
periodicidad, el procesador de control 504 dirige las muestras de
voz digitalizadas al codificador de alta velocidad 512, que realiza
la codificación en el dominio del tiempo de la voz a una velocidad
de transmisión de datos máxima predeterminada. En una forma de
realización, la velocidad de transmisión de datos máxima
predeterminada es de 8 kb/s, y el codificador de alta velocidad 512
es un codificador CELP.
Si el detector de voz sonora 508 determina
inicialmente que la señal de voz presenta suficiente periodicidad
para ser codificada con eficacia por el codificador espectral 514,
el procesador de control 504 dirige las muestras de voz
digitalizadas desde la memoria tampón de trama 502 hasta el
codificador espectral 514. Más adelante, se describe en detalle un
ejemplo de codificador espectral con referencia a la Figura 7.
El codificador espectral 514 extrae la
frecuencia de altura tonal estimada, F_{0,} las amplitudes,
A_{I}, de los armónicos de la frecuencia de altura tonal, e
información de actividad vocal, V_{c}. El codificador espectral
514 proporciona estos parámetros a la memoria tampón 522 y al
decodificador espectral 516. El decodificador espectral 516 puede
ser ventajosamente análogo al decodificador de los codificadores
CELP tradicionales. El decodificador espectral 516 genera muestras
de voz sintetizada, \hat{S}(n), según un formato de
decodificación espectral (descrito más adelante con referencia a la
Figura 7) y proporciona las muestras de voz sintetizada al
calculador de error 518. El procesador de control 504 envía las
muestras de voz, S(n), al calculador de error 518.
El calculador de error 518 calcula el error
mínimo cuadrático (MSE) entre cada muestra de voz, S(n), y
cada muestra de voz sintetizada correspondiente,
\hat{S}(n), según la siguiente ecuación:
MSE =
\sum\limits^{159}_{n=0}
(S(n)-\hat{S}(n))^{2}
El MSE calculado se proporciona al comparador de
umbral 520, que determina si el nivel de distorsión está dentro de
límites aceptables, es decir, si el nivel de distorsión se halla por
debajo de un valor umbral predefinido.
Si el MSE calculado se halla dentro de límites
aceptables, el comparador de umbral 520 proporciona una señal a la
memoria tampón 502 y los datos codificados espectralmente se
obtienen a partir del codificador de voz. En cambio, si el MSE no
está dentro de límites aceptables, el comparador de umbral 520
proporciona una señal al procesador de control 504 que, a su vez,
dirige las muestras digitalizadas desde la memoria tampón de trama
502 hasta el codificador de alta velocidad del dominio del tiempo
512. El codificador del dominio del tiempo 512 codifica las tramas
a una velocidad máxima predeterminada, y el contenido de la memoria
tampón 522 se rechaza.
En la forma de realización de la Figura 6, el
tipo de codificación espectral empleado es la codificación de
armónicos, descrita más adelante con referencia a la Figura 7,
aunque como alternativa puede ser cualquier tipo de codificación
espectral, tal como, por ejemplo, la codificación de transformación
sinusoidal o la codificación de excitación multibanda. La
utilización de excitación multibanda se describe, por ejemplo, en la
patente US n.º 5.195.166, y la utilización de codificación de
transformación sinusoidal se describe, por ejemplo, en la patente US
n.º 4.865.068.
En el caso de las tramas de transición, y las
tramas de voz sonora para las cuales valor de umbral de distorsión
de fase es igual o inferior al parámetro de periodicidad, el
codificador multimodal de la Figura 6 emplea ventajosamente la
codificación CELP a velocidad completa, o a 8 kb/s, por medio del
codificador de alta velocidad del dominio del tiempo 512. Como
alternativa, puede utilizarse cualquier otra forma conocida de
codificación de alta velocidad en el dominio del tiempo para dichas
tramas. Por lo tanto, las tramas de transición (y las tramas de voz
sonora que no son suficientemente periódicas) serán codificadas con
gran precisión, obteniéndose de ese modo una buena concordancia
entre las formas de onda de entrada y de salida y, al mismo tiempo,
un buen mantenimiento de la información de fase. En una forma de
realización, el codificador multimodal pasa de la codificación
espectral de media velocidad a la codificación CELP de velocidad
completa para una trama, sin tener en cuenta la determinación del
comparador de umbral 520, una vez que se ha procesado un número
predefinido de tramas de voz sonora consecutivas con respecto a las
cuales el valor umbral sobrepasa la medida de periodicidad.
Debe destacarse que, en conjunción con el
procesador de control 504, el calculador de energía 506 y el
detector de voz sonora 508 comprenden las decisiones de codificación
en bucle abierto. Por el contrario, en conjunción con el procesador
de control 504, el codificador espectral 514, el decodificador 516,
el calculador de error 518, el comparador de umbral 520 y la memoria
tampón 522 comprenden una decisión de codificación en bucle
cerrado.
En una forma de realización descrita con
referencia a la Figura 7, la codificación espectral y,
ventajosamente, la codificación de armónicos, se utiliza para
codificar tramas de voz suficientemente periódicas a baja velocidad
binaria. Los codificadores espectrales generalmente se definen como
algoritmos destinados a conservar la evolución temporal de las
características espectrales de la voz de una forma perceptivamente
significativa, modelizando y codificando cada trama de voz en el
dominio de la frecuencia. Las partes esenciales de dichos algoritmos
son: (1) el análisis espectral o la estimación de los parámetros;
(2) la cuantificación de los parámetros y (3) la síntesis de la
forma de onda de voz de salida con los parámetros decodificados. Por
lo tanto, el objetivo consiste en conservar las características
importantes del espectro de voz a corto plazo con un conjunto de
parámetros espectrales, codificar los parámetros y, a continuación,
sintetizar la voz de salida utilizando los parámetros espectrales
decodificados. Habitualmente, la voz de salida se sintetiza como una
suma ponderada de sinusoides. Las amplitudes, las frecuencias y las
fases de las sinusoides son los parámetros espectrales estimados
durante el análisis.
Aunque el "análisis por síntesis" es una
técnica muy conocida en la codificación CELP, esta técnica no se
utiliza en la codificación espectral. La razón principal por la que
el análisis por síntesis no se aplica a los codificadores
espectrales es que, debido a la pérdida de la información de la fase
inicial, la energía mínima cuadrática (MSE) de la voz sintetizada
puede ser alta, aun cuando el modelo de voz esté funcionando
adecuadamente desde el punto de vista perceptivo. Por lo tanto, otra
de las ventajas de generar con precisión la fase inicial es la
capacidad resultante para comparar directamente las muestras de voz
con la voz reconstruida y poder determinar si el modelo de voz está
codificando las tramas de voz con precisión.
En la codificación espectral, la trama de voz de
salida se sintetiza como:
S[n] =
S_{v}[n] + S_{ov}[n], \hskip0,8cm n = 1,2,...,
N,
siendo N el número de muestras por
trama, y S_{v} y S_{ov} los componentes sonoros y sordos,
respectivamente. Un procedimiento de síntesis de suma de sinusoides
crea el componente sonoro según la ecuación
siguiente:
S[n] =
\sum\limits^{L}_{k=f} A(k,n) \cdot cos (2 \pi n f_{k} +
\theta
(k,n))
en la que L es el número total de
sinusoides, f_{k} son las frecuencias deseadas del espectro a
corto plazo, A(k,n) las amplitudes de las sinusoides y
\theta(k,n) las fases de las sinusoides. Los parámetros de
amplitud, frecuencia y fase se calculan a partir del espectro a
corto plazo de la trama de entrada mediante un procedimiento de
análisis espectral. El componente sordo puede crearse conjuntamente
con la parte sonora en una sola síntesis de suma de sinusoides, o
puede calcularse por separado mediante un procedimiento de síntesis
de componente sordo dedicado y luego sumarse al componente
S_{v}.
En la forma de realización de la Figura 7, se
utiliza un tipo de codificador espectral particular denominado
codificador de armónicos para codificar espectralmente las tramas
sonoras suficientemente periódicas, a baja velocidad binaria. Los
codificadores de armónicos caracterizan las tramas como una suma de
sinusoides, analizando pequeños segmentos de las tramas. Cada
sinusoide de la suma de sinusoides presenta una frecuencia que es un
múltiplo entero de la altura, F_{0}, de la trama. En una forma de
realización alternativa, en la que el tipo de codificador espectral
particular utilizado es distinto al codificador de armónicos, las
frecuencias de las sinusoides de cada trama se obtienen a partir de
un conjunto de números reales entre 0 y 2 \pi . En la forma de
realización de la Figura 7, las amplitudes y las fases de cada
sinusoide de la suma se seleccionan ventajosamente, para obtener de
este modo la mejor concordancia entre la suma y la señal durante un
período, como se ilustra en el gráfico de la Figura 8. Los
codificadores de armónicos habitualmente emplean una clasificación
externa para marcar cada trama de voz de entrada como una trama
sonora o sorda. Para una trama sonora, las frecuencias de las
sinusoides se restringen a los armónicos de la altura estimada
(F_{o}), es decir, f_{k} = kF_{0}. Para la voz sorda, los
picos del espectro a corto plazo se utilizan para determinar las
sinusoides. Las amplitudes
y las fases se interpolan para imitar la evolución de éstas a través de la trama según las siguientes ecuaciones:
y las fases se interpolan para imitar la evolución de éstas a través de la trama según las siguientes ecuaciones:
A(k,n)
= C_{i}(k) \text{*} n +
C_{2}(k)
\theta (k,n) =
B_{i}(k) \text{*} n^{2} + B_{2}(k) \text{*} n +
B_{3}(k)
en las que los coeficientes
[Ci(k), Bi(k)] se estiman a partir de los valores
instantáneos de las amplitudes, las frecuencias y las fases en las
ubicaciones de frecuencia especificados f_{k} (=kf_{o}), por
medio de la transformada de Fourier a corto plazo (STFT) de una
trama de voz de entrada enventanada. Los parámetros por sinusoide
que se van a transmitir son la amplitud y la frecuencia. La fase no
se transmite, sino que en su lugar se modeliza según cualquiera de
las diversas técnicas conocidas, incluida, por ejemplo, el modelo de
fase
cuadrática.
Como se ilustra en la Figura 7, un codificador
de armónicos incluye un extractor de altura 600 acoplado a la lógica
de enventanado 602 y a la lógica de transformada discreta de Fourier
(DFT) y análisis de armónicos 604. El extractor de altura 600, que
recibe muestras de voz, S(n), de entrada, también está
acoplado a la lógica de DFT y análisis de armónicos 604. La lógica
de DFT y análisis de armónicos 604 está acoplada a un codificador de
residuo 606. El extractor de altura 600, la lógica de DFT y análisis
de armónicos 604 y el codificador de residuo 610 están acoplados a
un cuantificador de parámetros 608. El cuantificador de parámetros
608 está acoplado a un codificador de canal 610 que, a su vez, está
acoplado a un transmisor 612. El transmisor 612 está acoplado por
medio de una interfaz de radiofrecuencia (RF) estándar, tal como,
por ejemplo, una interfaz aérea de acceso múltiple por división del
código (CDMA), a un receptor 614. El receptor 614 está acoplado a un
decodificador de canal 616 que, a su vez, está acoplado a un
decuantificador 618. El decuantificador 618 está acoplado a un
sintetizador de voz de suma de sinusoides 620. También está acoplado
al sintetizador de voz de suma de sinusoides 620, un estimador de
fase 622 que recibe la información de la trama anterior como una
entrada. El sintetizador de voz de suma de sinusoides 620 está
configurado para generar una salida de voz sintetizada,
S_{SYNTH}(n).
El extractor de altura 600, la lógica de
enventanado 602, la lógica de DFT y análisis de armónicos 604, el
codificador de residuo 606, el cuantificador de parámetros 608, el
codificador de canal 610, el decodificador de canal 616, el
decuantificador 618, el sintetizador de voz de suma de sinusoides
620 y el estimador de fase 622 pueden implementarse en una
diversidad de formas diferentes conocidas por los expertos en la
materia, que incluyen, por ejemplo, módulos de firmware o software.
El transmisor 612 y el receptor 614 pueden implementarse con
cualquier componente RF estándar equivalente conocido por los
expertos en la materia.
En el codificador de armónicos de la Figura 7,
las muestras de entrada, S(n), son recibidas por el extractor
de altura 600, que extrae la información de frecuencia de altura
tonal F_{0}. A continuación, la lógica de enventanado 602
multiplica las muestras por una función de enventanado adecuada que
permite analizar pequeños segmentos de la trama de voz. Mediante la
información de altura suministrada por el extractor de altura 608,
la lógica de DFT y análisis de armónicos 604 calcula la DFT de las
muestras para generar puntos espectrales complejos a partir de los
cuales se extraen las amplitudes de los armónicos, A_{L}, como se
ilustra en el gráfico de la Figura 8, en el que L denota el número
total de armónicos. La DFT se proporciona al codificador residual
606 que extrae información de actividad vocal, V_{c}.
Debe destacarse que el parámetro V_{c} denota
un punto del eje de las frecuencias, representado en la Figura 8,
por encima del cual el espectro es característico de una señal de
voz sorda y deja de ser armónico. En cambio, por debajo del punto
V_{c}, el espectro es armónico y característico de la voz
sonora.
Los componentes A, F_{0} y V_{c} se
proporcionan al cuantificador de parámetros 608, que cuantifica la
información. La información cuantificada se proporciona en forma de
paquetes al codificador de canal 610, que cuantifica los paquetes a
una velocidad binaria baja, tal como, por ejemplo, la velocidad
media o de 4 kb/s. Los paquetes se proporcionan al transmisor 612,
que modula los paquetes y transmite la señal resultante al receptor
614, a través del aire. El receptor 614 recibe y demodula la señal,
y pasa los paquetes codificados al decodificador de canal 616. El
decodificador de canal 616 decodifica los paquetes y proporciona los
paquetes decodificados al decuantificador 618. El decuantificador
618 decuantifica la información. La información se proporciona al
sintetizador de voz de suma de sinusoides 620.
El sintetizador de voz de suma de sinusoides 620
está configurado para sintetizar una pluralidad de sinusoides que
modelizan el espectro de voz a corto plazo según la ecuación
anterior para S[n]. Las frecuencias de las sinusoides,
f_{k}, son múltiplos de los armónicos de la frecuencia
fundamental, F_{0}, que es la frecuencia de la periodicidad de la
altura de los segmentos de voz sonora casi periódica (es decir, de
transición).
El sintetizador de voz de suma de sinusoides 620
también recibe información de fase desde el estimador de fase 622.
El estimador de fase 622 recibe información de la trama anterior, es
decir, los parámetros A_{L}, F_{0} y V_{c} de la trama
inmediatamente precedente. El estimador de fase 622 también recibe
las N muestras reconstruidas de la trama anterior, siendo N la
longitud de la trama (es decir, el número de muestras por trama). El
estimador de fase 622 determina la fase inicial de la trama,
basándose en la información de la trama anterior. La determinación
de la fase inicial se proporciona al sintetizador de voz de suma de
sinusoides 620. De conformidad con la información de la trama actual
y el cálculo de fase inicial basado en la información de la trama
anterior realizado por el estimador de fase 622, el sintetizador de
voz de suma de sinusoides 620 genera tramas de voz sintética, de la
forma descrita anteriormente.
Como se ha descrito anteriormente, los
codificadores de armónicos sintetizan, o reconstruyen, las tramas de
voz, utilizando la información de la trama anterior y prediciendo la
variación lineal de la fase de una trama a otra. En el modelo de
síntesis descrito, que comúnmente se denomina modelo de fase
cuadrática, el coeficiente B_{3}(k) representa la fase
inicial de la trama sonora actual que está siendo sintetizada. Para
determinar la fase, los codificadores de armónicos convencionales
establecen la fase inicial en cero o generan de forma aleatoria, o
mediante algún procedimiento de generación pseudoaleatorio, un valor
de fase inicial. Para predecir la fase con más precisión, el
estimador de fase 622 utiliza uno de los dos procedimientos posibles
para determinar la fase inicial, dependiendo de si se determina que
la trama inmediatamente precedente es una trama de voz sonora (es
decir, una trama suficientemente periódica) o una trama de voz de
transición. Si la trama anterior es una trama de voz sonora, el
valor de fase estimado final de esta trama se utiliza como valor de
fase inicial de la trama actual. Por otro lado, si la trama
anterior se ha clasificado como una trama de transición, el valor de
fase inicial de la trama actual se obtiene a partir del espectro de
la trama anterior, que se obtiene realizando una DFT de la salida
del decodificador para la trama anterior. Por lo tanto, el estimador
de fase 622 utiliza información de fase precisa que ya está
disponible (debido a que la trama anterior, por ser una trama de
transición, se ha procesado a velocidad completa).
En una forma de realización, un codificador de
voz MDLP en bucle cerrado y multimodal sigue las etapas de
procesamiento de voz ilustradas en el diagrama de flujo de la Figura
9. El codificador de voz codifica el residuo LP de cada trama de voz
de entrada, eligiendo la modalidad de codificación más adecuada.
Ciertas modalidades codifican el residuo LP, o el residuo de voz, en
el dominio del tiempo, mientras que otras modalidades representan el
residuo LP, o el residuo de voz, en el dominio de la frecuencia. El
conjunto de modalidades se compone de la modalidad de velocidad
completa en el dominio del tiempo para las tramas de transición
(modalidad T); la modalidad de media velocidad en el dominio de la
frecuencia para las tramas sonoras (modalidad V); la modalidad de un
cuarto de velocidad en el dominio del tiempo para las tramas sordas
(modalidad U) y la modalidad de un octavo de velocidad en el dominio
del tiempo para las tramas de ruido (modalidad N).
Los expertos en la materia apreciarán que tanto
la señal de voz como el correspondiente residuo LP pueden
codificarse siguiendo las etapas ilustradas en la Figura 9. Las
características de la forma de onda del ruido, la voz sorda, la voz
de transición y la voz sonora pueden considerarse como una función
del tiempo en el gráfico de la Figura 10A. Las características de la
forma de onda del ruido, la voz sorda, la voz de transición y el
residuo LP sonoro pueden considerarse como una función del tiempo en
el gráfico de la Figura 10B.
En la etapa 700, se decide en la modalidad en
bucle abierto cuál de las cuatro modalidades (T, V, U o N) se va a
aplicar al residuo de voz de entrada, S(n). Si se va a
aplicar la modalidad T, el residuo de voz se procesa según la
modalidad T, es decir, a velocidad completa y en el dominio del
tiempo, en la etapa 702. Si se va a aplicar la modalidad U, el
residuo de voz se procesa según la modalidad U, es decir, a cuarto
de velocidad y en el dominio del tiempo, en la etapa 704. Si se va a
aplicar la modalidad N, el residuo de voz se procesa según la
modalidad N, es decir, a octavo de velocidad y en el dominio del
tiempo, en la etapa 706. Si se va a aplicar la modalidad V, el
residuo de voz se procesa según la modalidad V, es decir, a media
velocidad y en el dominio de la frecuencia, en la etapa 708.
En la etapa 710, la voz codificada en la etapa
708 se decodifica y compara con el residuo de la voz de entrada,
S(n), y se calcula una medida del rendimiento, D. En la etapa
712, la medida del rendimiento, D, se compara con un valor umbral
predefinido, T. Si la medida del rendimiento, D, es superior o igual
al umbral, T, el residuo de voz codificado espectralmente de la
etapa 708 se considera apto para la transmisión, en la etapa 714.
Por otro lado, si la medida del rendimiento, D, es inferior al
umbral, T, el residuo de voz de entrada, S(n), se procesa
según la modalidad T, en la etapa 716. En una forma de realización
alternativa, no se calcula ninguna medida del rendimiento y no se
define ningún valor umbral. En su lugar, una vez que se ha procesado
un número predefinido de tramas de residuo de voz según la modalidad
V, la siguiente trama se procesa según la modalidad T.
Ventajosamente, las etapas de decisión
representadas en la Figura 9 permiten utilizar la modalidad T de
alta velocidad binaria sólo cuando es necesario, aprovechando la
periodicidad de los segmentos de voz sonora con la modalidad V de
baja velocidad binaria, mientras se evita que se produzca una
pérdida de calidad al pasar a velocidad completa cuando la modalidad
V no funciona correctamente. En consecuencia, es posible generar una
calidad de voz sumamente alta y muy parecida a la calidad de voz de
velocidad completa a una velocidad media que es significativamente
inferior a la velocidad completa. Por otra parte, la calidad de voz
deseada puede ser controlada mediante la medida de rendimiento
seleccionada y el umbral elegido.
Las "actualizaciones" de la modalidad T
mejoran también el rendimiento de las subsiguientes aplicaciones de
la modalidad V, manteniendo la trayectoria de la fase del modelo
cerca de la trayectoria de la fase de la voz de entrada. Cuando el
rendimiento de la modalidad V es inadecuado, la comprobación del
rendimiento en bucle cerrado de las etapas 710 y 712 pasa a la
modalidad T, mejorando de ese modo el rendimiento del subsiguiente
procesamiento en modalidad V gracias a la "renovación" del
valor de fase inicial, hecho que permite que la trayectoria de la
fase del modelo vuelva a situarse cerca de la trayectoria de la fase
de la voz de entrada original. A título de ejemplo, como se
representa en los gráficos de las Figuras 11A a C, la quinta trama
desde el principio no funciona adecuadamente en la modalidad V, como
se pone de manifiesto a través de la medida de distorsión PSNR
utilizada. Por consiguiente, sin una decisión y actualización en
bucle cerrado, la trayectoria de la fase modelizada se desvía
significativamente de la trayectoria de la fase de la voz de entrada
original, provocando una fuerte degradación de la PSNR, como se
representa en la Figura 11C. Además, el rendimiento de la
subsiguientes tramas procesadas según la modalidad V se degrada.
Según una decisión en bucle cerrado, sin embargo, la quinta trama
pasa al procesamiento en modalidad T, como se representa en la
Figura 11A. El rendimiento de la quinta trama mejora de forma
significativa gracias a la actualización, como se pone de manifiesto
a través de la mejora de la PSNR, representada en la Figura 11B.
Asimismo, el rendimiento de las subsiguientes tramas procesadas
según la modalidad V también mejora.
Las etapas de decisión representadas en la
Figura 9 mejoran la calidad de la representación de la modalidad V,
proporcionando un valor de estimación de fase inicial sumamente
preciso, y asegurando que la señal de residuo de voz sintetizada
mediante la modalidad V resultante se alinee temporalmente de forma
precisa con el residuo de voz de entrada original, S(n). La
fase inicial del primer segmento de residuo de voz procesado
mediante la modalidad V se deduce a partir de la trama decodificada
inmediatamente anterior, de la forma descrita a continuación. La
fase inicial de cada armónico se iguala a la fase final estimada de
la trama precedente si la trama precedente se ha procesado en la
modalidad V. La fase inicial de cada armónico se iguala a la fase
real del armónico de la trama precedente si la trama precedente se
ha procesado en la modalidad T. La fase real del armónico de la
trama precedente puede obtenerse calculando la DFT del residuo
decodificado anterior, utilizando toda la trama precedente. Como
alternativa, la fase real del armónico de la trama precedente puede
obtenerse calculando la DFT de la trama decodificada anterior, en
condiciones de sincronización de alturas, procesando diversos
períodos de altura de la trama precedente.
Hasta aquí la descripción de un codificador de
voz de predicción lineal en bucle cerrado, multimodal y de dominio
mixto (MDLP). Los expertos en la materia apreciarán que los diversos
bloques lógicos ilustrativos y las etapas algorítmicas ilustrativas
descritas en conexión con las formas de realización dadas a conocer
en la presente memoria pueden implementarse o realizarse con un
procesador de señales digitales (DSP), un circuito integrado de
aplicación específica (ASIC), una lógica discreta de compuerta o de
transistor, unos componentes de hardware discretos tales como, por
ejemplo, unos registros y una FIFO, un procesador que ejecuta un
conjunto de instrucciones de firmware o cualquier módulo de software
programable convencional y un procesador. El procesador puede ser
ventajosamente un microprocesador, aunque como alternativa puede ser
cualquier procesador, controlador, microcontrolador o máquina de
estados convencional. El módulo de software puede residir en memoria
RAM, memoria flash, unos registros o cualquier otra forma de medios
de almacenamiento registrables, conocidos dentro de la técnica. Los
expertos en la materia apreciarán, asimismo, que los datos, las
instrucciones, los mandatos, la información, las señales, los bits,
los símbolos y los segmentos a los que puede hacerse referencia en
la descripción anterior son representados ventajosamente por
voltajes, corrientes, ondas electromagnéticas, campos o partículas
magnéticas o cualquier combinación de éstos.
Las formas de realización representadas y
descritas son las formas de realización preferidas de la presente
invención. No obstante, resultará evidente para las personas
medianamente expertas en la materia que es posible realizar
numerosas variaciones a las formas de realización descritas en la
presente memoria sin apartarse por ello del alcance de la presente
invención. Por consiguiente, las únicas restricciones aplicables a
la presente invención son las impuestas por las reivindicaciones
siguientes.
Claims (16)
1. Procedimiento para procesar tramas, que
comprende las etapas siguientes:
- aplicar un procedimiento de selección de modalidad de codificación en bucle abierto a cada trama de entrada consecutiva para seleccionar una modalidad de codificación en el dominio del tiempo o una modalidad de codificación en el dominio de la frecuencia, basándose en el contenido de voz de la trama de entrada;
- codificar en el dominio de la frecuencia (416) la trama de entrada si el contenido de voz de la trama de entrada indica voz sonora de estado estacionario;
- codificar en el dominio del tiempo (414) la trama de entrada si el contenido de voz de la trama de entrada indica cualquier tipo de voz que no es voz sonora de estado estacionario;
- comparar (420) la trama codificada en el dominio de la frecuencia con la trama de entrada para obtener una medida del rendimiento; y
- codificar en el dominio del tiempo (414) la trama de entrada si la medida del rendimiento está por debajo de un valor umbral predefinido.
2. Procedimiento según la reivindicación 1, en
el que las tramas son tramas de residuo de predicción lineal.
3. Procedimiento según la reivindicación 1, en
el que las tramas son tramas de voz.
4. Procedimiento según la reivindicación 1, en
el que la etapa de codificación en el dominio del tiempo (414)
comprende la codificación de las tramas a una primera velocidad de
codificación, y la etapa de codificación en el dominio de la
frecuencia comprende la codificación de las tramas a una segunda
velocidad de codificación, siendo la segunda velocidad de
codificación inferior a la primera velocidad de codificación.
5. Procedimiento según la reivindicación 1, en
el que la etapa de codificación en el dominio de la frecuencia (416)
comprende la codificación de armónicos.
6. Procedimiento según la reivindicación 1, en
el que la etapa de codificación en el dominio de la frecuencia (416)
comprende la representación del espectro a corto plazo de cada trama
con una pluralidad de sinusoides que presentan un conjunto de
parámetros que incluyen frecuencias, fases y amplitudes, siendo
modelizadas las fases con una representación polinómica y un valor
de fase inicial, y en el que el valor de fase inicial es (1) el
valor de fase final estimado de la trama precedente si la trama
precedente ha sido codificada en el dominio de la frecuencia o (2)
un valor de fase deducido a partir del espectro a corto plazo de la
trama precedente si la trama precedente ha sido codificada en el
dominio del tiempo.
7. Procedimiento según la reivindicación 6, en
el que las frecuencias de las sinusoides de cada trama son múltiplos
enteros de la frecuencia de altura tonal de la trama.
8. Procedimiento según la reivindicación 6, en
el que las frecuencias de las sinusoides de cada trama se obtienen a
partir de un conjunto de números reales entre 0 y 2\pi.
9. Procesador de voz multimodal y de dominio
mixto, que comprende:
- unos medios para aplicar un procedimiento de selección de modalidad de codificación en bucle abierto a una trama de entrada y seleccionar una modalidad de codificación en el dominio del tiempo o una modalidad de codificación en el dominio de la frecuencia, basándose en el contenido de voz de la trama de entrada;
- unos medios (514) para codificar en el dominio de la frecuencia la trama de entrada si el contenido de voz de la trama de entrada indica voz sonora de estado estacionario;
- unos medios (512) para codificar en el dominio del tiempo la trama de entrada si el contenido de voz de la trama de entrada indica cualquier tipo de voz que no es voz sonora de estado estacionario;
- unos medios (518) para comparar la trama codificada en el dominio de la frecuencia con la trama de entrada para obtener una medida del rendimiento; y
- unos medios (520, 512) para codificar en el dominio del tiempo la trama de entrada si la medida del rendimiento está por debajo de un valor umbral predefinido.
10. Procesador de voz según la reivindicación 9,
en el que la trama de entrada es una trama de residuo de predicción
lineal.
11. Procesador de voz según la reivindicación 9,
en el que la trama de entrada es una trama de voz.
12. Procesador de voz según la reivindicación 9,
en el que los medios para codificar en el dominio del tiempo (512)
comprenden unos medios para codificar las tramas a una primera
velocidad de codificación, y los medios para codificar en el dominio
de la frecuencia (514) comprenden unos medios para codificar las
tramas a una segunda velocidad de codificación, siendo la segunda
velocidad de codificación inferior a la primera velocidad de
codificación.
13. Procesador de voz según la reivindicación 9,
en el que los medios para codificar en el dominio de la frecuencia
(514) comprenden un codificador de armónicos.
14. Procesador de voz según la reivindicación 9,
en el que los medios para codificar en el dominio de la frecuencia
(514) comprenden unos medios para representar el espectro a corto
plazo de cada trama con una pluralidad de sinusoides que presentan
un conjunto de parámetros que incluyen frecuencias, fases y
amplitudes, siendo modelizadas las fases con una representación
polinómica y un valor de fase inicial, y en el que el valor de fase
inicial es (1) el valor de fase estimada final de la trama
inmediatamente precedente si la trama inmediatamente precedente ha
sido codificada en el dominio de la frecuencia, o (2) un valor de
fase deducido a partir del espectro a corto plazo de la trama
inmediatamente precedente si la trama inmediatamente precedente ha
sido codificada en el dominio del tiempo.
15. Procesador de voz según la reivindicación
14, en el que las frecuencias de las sinusoides de cada trama son
múltiplos enteros de la frecuencia de altura tonal de la trama.
16. Procesador de voz según la reivindicación
14, en el que las frecuencias de las sinusoides de cada trama se
obtienen a partir de un conjunto de números reales entre 0 y 2
\pi.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2000/005140 WO2001065544A1 (en) | 2000-02-29 | 2000-02-29 | Closed-loop multimode mixed-domain linear prediction speech coder |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2269112T3 true ES2269112T3 (es) | 2007-04-01 |
Family
ID=21741098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES00912053T Expired - Lifetime ES2269112T3 (es) | 2000-02-29 | 2000-02-29 | Codificador de voz multimodal en bucle cerrado de dominio mixto. |
Country Status (10)
Country | Link |
---|---|
EP (1) | EP1259957B1 (es) |
JP (1) | JP4907826B2 (es) |
KR (1) | KR100711047B1 (es) |
CN (1) | CN1266674C (es) |
AT (1) | ATE341074T1 (es) |
AU (1) | AU2000233851A1 (es) |
DE (1) | DE60031002T2 (es) |
ES (1) | ES2269112T3 (es) |
HK (1) | HK1055833A1 (es) |
WO (1) | WO2001065544A1 (es) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6438518B1 (en) * | 1999-10-28 | 2002-08-20 | Qualcomm Incorporated | Method and apparatus for using coding scheme selection patterns in a predictive speech coder to reduce sensitivity to frame error conditions |
CA2392640A1 (en) * | 2002-07-05 | 2004-01-05 | Voiceage Corporation | A method and device for efficient in-based dim-and-burst signaling and half-rate max operation in variable bit-rate wideband speech coding for cdma wireless systems |
JP4568732B2 (ja) * | 2003-12-19 | 2010-10-27 | クリエイティブ テクノロジー リミテッド | デジタル画像を処理するための方法とそのシステム |
US7739120B2 (en) | 2004-05-17 | 2010-06-15 | Nokia Corporation | Selection of coding models for encoding an audio signal |
WO2007040365A1 (en) * | 2005-10-05 | 2007-04-12 | Lg Electronics Inc. | Method and apparatus for signal processing and encoding and decoding method, and apparatus therefor |
CN101283406B (zh) * | 2005-10-05 | 2013-06-19 | Lg电子株式会社 | 信号处理的方法和装置以及编码和解码方法及其装置 |
KR100647336B1 (ko) * | 2005-11-08 | 2006-11-23 | 삼성전자주식회사 | 적응적 시간/주파수 기반 오디오 부호화/복호화 장치 및방법 |
US8010352B2 (en) | 2006-06-21 | 2011-08-30 | Samsung Electronics Co., Ltd. | Method and apparatus for adaptively encoding and decoding high frequency band |
KR101390188B1 (ko) * | 2006-06-21 | 2014-04-30 | 삼성전자주식회사 | 적응적 고주파수영역 부호화 및 복호화 방법 및 장치 |
US9159333B2 (en) | 2006-06-21 | 2015-10-13 | Samsung Electronics Co., Ltd. | Method and apparatus for adaptively encoding and decoding high frequency band |
CN101145345B (zh) * | 2006-09-13 | 2011-02-09 | 华为技术有限公司 | 音频分类方法 |
KR101131880B1 (ko) * | 2007-03-23 | 2012-04-03 | 삼성전자주식회사 | 오디오 신호의 인코딩 방법 및 장치, 그리고 오디오 신호의디코딩 방법 및 장치 |
DE112007003567A5 (de) * | 2007-04-26 | 2010-04-08 | Siemens Aktiengesellschaft | Baugruppe mit automatischer Erweiterung eines Überwachungskreises |
KR101756834B1 (ko) | 2008-07-14 | 2017-07-12 | 삼성전자주식회사 | 오디오/스피치 신호의 부호화 및 복호화 방법 및 장치 |
US8990094B2 (en) * | 2010-09-13 | 2015-03-24 | Qualcomm Incorporated | Coding and decoding a transient frame |
KR101525185B1 (ko) | 2011-02-14 | 2015-06-02 | 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. | 트랜지언트 검출 및 품질 결과를 사용하여 일부분의 오디오 신호를 코딩하기 위한 장치 및 방법 |
BR112012029132B1 (pt) | 2011-02-14 | 2021-10-05 | Fraunhofer - Gesellschaft Zur Förderung Der Angewandten Forschung E.V | Representação de sinal de informações utilizando transformada sobreposta |
PL3239978T3 (pl) | 2011-02-14 | 2019-07-31 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Kodowanie i dekodowanie pozycji impulsów ścieżek sygnału audio |
JP5849106B2 (ja) | 2011-02-14 | 2016-01-27 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | 低遅延の統合されたスピーチ及びオーディオ符号化におけるエラー隠しのための装置及び方法 |
CA2827249C (en) | 2011-02-14 | 2016-08-23 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Apparatus and method for processing a decoded audio signal in a spectral domain |
JP5625126B2 (ja) | 2011-02-14 | 2014-11-12 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | スペクトル領域ノイズ整形を使用する線形予測ベースコーディングスキーム |
TWI488176B (zh) * | 2011-02-14 | 2015-06-11 | Fraunhofer Ges Forschung | 音訊信號音軌脈衝位置之編碼與解碼技術 |
CN103503062B (zh) | 2011-02-14 | 2016-08-10 | 弗劳恩霍夫应用研究促进协会 | 用于使用对齐的前瞻部分将音频信号编码及解码的装置与方法 |
CN103534754B (zh) | 2011-02-14 | 2015-09-30 | 弗兰霍菲尔运输应用研究公司 | 在不活动阶段期间利用噪声合成的音频编解码器 |
EP2757558A1 (en) * | 2013-01-18 | 2014-07-23 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Time domain level adjustment for audio signal decoding or encoding |
US9685166B2 (en) | 2014-07-26 | 2017-06-20 | Huawei Technologies Co., Ltd. | Classification between time-domain coding and frequency domain coding |
EP3067886A1 (en) | 2015-03-09 | 2016-09-14 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoder for encoding a multichannel signal and audio decoder for decoding an encoded audio signal |
US10957331B2 (en) * | 2018-12-17 | 2021-03-23 | Microsoft Technology Licensing, Llc | Phase reconstruction in a speech decoder |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0215915A4 (en) * | 1985-03-18 | 1987-11-25 | Massachusetts Inst Technology | TREATMENT OF ACOUSTIC WAVE SHAPES. |
US5023910A (en) * | 1988-04-08 | 1991-06-11 | At&T Bell Laboratories | Vector quantization in a harmonic speech coding arrangement |
JPH02288739A (ja) * | 1989-04-28 | 1990-11-28 | Fujitsu Ltd | 音声符号復号化伝送方式 |
JP3680374B2 (ja) * | 1995-09-28 | 2005-08-10 | ソニー株式会社 | 音声合成方法 |
JPH10214100A (ja) * | 1997-01-31 | 1998-08-11 | Sony Corp | 音声合成方法 |
US6233550B1 (en) * | 1997-08-29 | 2001-05-15 | The Regents Of The University Of California | Method and apparatus for hybrid coding of speech at 4kbps |
ATE302991T1 (de) * | 1998-01-22 | 2005-09-15 | Deutsche Telekom Ag | Verfahren zur signalgesteuerten schaltung zwischen verschiedenen audiokodierungssystemen |
JPH11224099A (ja) * | 1998-02-06 | 1999-08-17 | Sony Corp | 位相量子化装置及び方法 |
-
2000
- 2000-02-29 CN CNB008192219A patent/CN1266674C/zh not_active Expired - Lifetime
- 2000-02-29 WO PCT/US2000/005140 patent/WO2001065544A1/en active IP Right Grant
- 2000-02-29 KR KR1020027011306A patent/KR100711047B1/ko active IP Right Grant
- 2000-02-29 ES ES00912053T patent/ES2269112T3/es not_active Expired - Lifetime
- 2000-02-29 AU AU2000233851A patent/AU2000233851A1/en not_active Abandoned
- 2000-02-29 EP EP00912053A patent/EP1259957B1/en not_active Expired - Lifetime
- 2000-02-29 AT AT00912053T patent/ATE341074T1/de not_active IP Right Cessation
- 2000-02-29 DE DE60031002T patent/DE60031002T2/de not_active Expired - Lifetime
- 2000-02-29 JP JP2001564148A patent/JP4907826B2/ja not_active Expired - Lifetime
-
2003
- 2003-11-07 HK HK03108074A patent/HK1055833A1/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR100711047B1 (ko) | 2007-04-24 |
EP1259957B1 (en) | 2006-09-27 |
WO2001065544A1 (en) | 2001-09-07 |
AU2000233851A1 (en) | 2001-09-12 |
JP2003525473A (ja) | 2003-08-26 |
EP1259957A1 (en) | 2002-11-27 |
CN1437747A (zh) | 2003-08-20 |
DE60031002D1 (de) | 2006-11-09 |
JP4907826B2 (ja) | 2012-04-04 |
DE60031002T2 (de) | 2007-05-10 |
CN1266674C (zh) | 2006-07-26 |
ATE341074T1 (de) | 2006-10-15 |
HK1055833A1 (en) | 2004-01-21 |
KR20020081374A (ko) | 2002-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2269112T3 (es) | Codificador de voz multimodal en bucle cerrado de dominio mixto. | |
US6640209B1 (en) | Closed-loop multimode mixed-domain linear prediction (MDLP) speech coder | |
KR100805983B1 (ko) | 가변율 음성 코더에서 프레임 소거를 보상하는 방법 | |
ES2276845T3 (es) | Metodos y aparatos para la clasificacion de voz robusta. | |
US7426466B2 (en) | Method and apparatus for quantizing pitch, amplitude, phase and linear spectrum of voiced speech | |
EP1141947B1 (en) | Variable rate speech coding | |
US8244525B2 (en) | Signal encoding a frame in a communication system | |
ES2302754T3 (es) | Procedimiento y aparato para codificacion de habla sorda. | |
US20080027719A1 (en) | Systems and methods for modifying a window with a frame associated with an audio signal | |
ES2253226T3 (es) | Codigo interpolativo multipulso de tramas de voz. | |
ES2297578T3 (es) | Procedimiento y aparato para submuestrear informacion del espectro de fase. | |
ES2276690T3 (es) | Particion de espectro de frecuencia de una forma de onda prototipo. | |
US6449592B1 (en) | Method and apparatus for tracking the phase of a quasi-periodic signal | |
ES2254155T3 (es) | Procedimiento y aparato para realizar el seguimiento de la fase de una señal casi periodica. | |
KR100711040B1 (ko) | 유사주기 신호의 위상을 추적하는 방법 및 장치 | |
JP2011090311A (ja) | 閉ループのマルチモードの混合領域の線形予測音声コーダ |