ES2250197T3 - Codificador de voz armonico-lpc con estructura de supertrama. - Google Patents
Codificador de voz armonico-lpc con estructura de supertrama.Info
- Publication number
- ES2250197T3 ES2250197T3 ES00968376T ES00968376T ES2250197T3 ES 2250197 T3 ES2250197 T3 ES 2250197T3 ES 00968376 T ES00968376 T ES 00968376T ES 00968376 T ES00968376 T ES 00968376T ES 2250197 T3 ES2250197 T3 ES 2250197T3
- Authority
- ES
- Spain
- Prior art keywords
- superframe
- voice
- frame
- data
- parameters
- 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
- 238000004458 analytical method Methods 0.000 claims abstract description 39
- 230000006835 compression Effects 0.000 claims abstract description 26
- 238000007906 compression Methods 0.000 claims abstract description 26
- 238000009499 grossing Methods 0.000 claims abstract description 14
- 238000004364 calculation method Methods 0.000 claims abstract description 13
- 230000005540 biological transmission Effects 0.000 claims abstract description 12
- 238000011002 quantification Methods 0.000 claims description 62
- 238000000034 method Methods 0.000 claims description 56
- 239000013598 vector Substances 0.000 claims description 40
- 230000005284 excitation Effects 0.000 claims description 21
- 238000001228 spectrum Methods 0.000 claims description 13
- 230000006870 function Effects 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 11
- 230000001174 ascending effect Effects 0.000 claims description 9
- 230000003595 spectral effect Effects 0.000 claims description 9
- 230000007704 transition Effects 0.000 claims description 8
- 239000000284 extract Substances 0.000 claims description 6
- 230000002441 reversible effect Effects 0.000 claims description 6
- 238000012549 training Methods 0.000 claims description 5
- 238000006073 displacement reaction Methods 0.000 claims description 4
- 238000009826 distribution Methods 0.000 claims description 2
- 238000010276 construction Methods 0.000 claims 2
- 230000003139 buffering effect Effects 0.000 claims 1
- 238000012937 correction Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 7
- 239000007943 implant Substances 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000002123 temporal effect Effects 0.000 description 7
- 238000013461 design Methods 0.000 description 6
- 238000010422 painting Methods 0.000 description 6
- 230000015572 biosynthetic process Effects 0.000 description 5
- 238000003786 synthesis reaction Methods 0.000 description 5
- 238000001914 filtration Methods 0.000 description 4
- 238000011835 investigation Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000005311 autocorrelation function Methods 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000006731 degradation reaction Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000013139 quantization Methods 0.000 description 3
- 238000005314 correlation function Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000013479 data entry Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 101100243558 Caenorhabditis elegans pfd-3 gene Proteins 0.000 description 1
- 244000264242 Descurainia sophia Species 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 239000002979 fabric softener Substances 0.000 description 1
- 238000002513 implantation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 210000003205 muscle Anatomy 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/173—Transcoding, i.e. converting between two coded representations avoiding cascaded coding-decoding
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/087—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters using mixed excitation models, e.g. MELP, MBE, split band LPC or HVXC
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
- Electroluminescent Light Sources (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
- Record Information Processing For Printing (AREA)
- Incineration Of Waste (AREA)
Abstract
Un aparato (10) de compresión de voz, que comprende: una memoria (14) intermedia de supercuadro para recibir cuadros múltiples de datos (12) de voz; un módulo de análisis de codificador basado en cuadros, para analizar características de datos de voz dentro de cuadros contenidos en el supercuadro para producir un juego asociado de parámetros de datos de voz; y un codificador de supercuadro para recibir parámetros de datos de voz desde el módulo de análisis para un grupo de cuadros contenidos dentro del memoria intermedia (14) de supercuadro, para reducir mediante datos de análisis para el grupo de cuadros y para cuantificar y codificar los mencionados datos al interior y saliendo corriente de datos para la transmisión; caracterizado porque el mencionado codificador de supercuadro que comprende un suavizador (24) de tono en el cual cálculos de suavización de tono se basan en un clasificador de cuadro comienzo/desplazamiento.
Description
Codificador de voz armónico-LPC
con estructura de supertrama.
Algunas veces se hace referencia a las siguientes
patentes y publicaciones antecedentes empleando números dentro de
corchetes (por ejemplo, [1]):
[1] Gersho, A. "ADVANCES IN SPEECH AND
AUDIO COMPRESSION", Actas del IEEE, volumen 82, n.º 6, pp.
900-918, Junio 1994.
[2] McCree et al. "A 2.4 KBITS/S
MELP CODER CADIDATE FOR THE NEW U.S. FEDERAL STANDARD",
1996 IEEE International Conference on Acoustics, Speech, and
Signal Processing Conference Proceedings, Atlanta, GA (Cat. N.º
96CH35903), Volumen. 1, pp. 200-203,
7-10 Mayo 1996.
[3] Supplee, L.M. et al. "MELP:
THE NEW FEDERAL STANDARD AT 2400 BPS", 1997 IEEE International
Actas de la Conference on Acoustics, Speech and Signal processing
(cat. N.º 97CB36052), Munich, Alemania, volumen 2, págs.
21-24, abril 1997.
[4] McCree, A.V. et al. "A MIXED
EXCITATION LPC VOCODER MODEL FOR LOW BIT RATE SPEECH CODING",
IEEE Transactions on Speech and Audio Processing, Volumen.3, n.º 4,
págs. 242-250, julio 1995.
[5] Specification for the Analog to Digital
Conversion of Voice by 2,400 bit/Second Mixed Excitation Linear
Prediction FIPS, Borrador del estándar federal aleman, 28 de mayo de
1998.
[6] Patente de los Estados Unidos n.º
5.699.477.
[7] Gersho, A. et al., "VECTOR
QUANTIZATION AND SIGNAL COMPRESSION", Dordrecht, Holanda: Kluwer
Academic Publishers, 1992, xxii+732 págs.
[8] W.P. LeBlanc, et al.,
"EFFICIENT SEARCH AND DESIGN PROCEDURES FOR ROBUST
MULTI-STAGE VQ OF LPC PARAMETERS FOR 4 KB/S SPEECH
CODING" en IEEE transp. Speech & Audio Processing, volumen.
1, págs. 272-285, octubre 1993
[9] Mouy, B. M.; de la Noue, P.
E., "VOICE TRANSMISSION AT A VERY LOW BIT RATE ON A NOISY
CHANNEL: 800 BPS VOCODER WITH ERROR PROTECTION TO 1200 BPS",
ICASSSP-92: 1992 IEEE International
Conferernce Acoustics, Speech and Signal, San Francisco, CA, USA,
23-26 marzo 1992, Nueva York, NY, Estados
Unidos: Ieee, 1992, volumen 2, págs.
149-152.
[10] Mouy, B.; De La Noue, P.;
Goudezeune, G. "NATO STANAG 4479: A STANDARD FOR AN 800
BPS VOCODER AND CHANNEL CODING IN HF-ECCM
SYSTEM", 1995 International Conference on Acoustics,
Speech, and Signal Processing. Conference Proceedings, Detroit, MI,
EE.UU., 9-12 mayo 1995; Nueva York, NY,
EE.UU.: IEEE, 1995, volumen 1, págs.
480-483.
[11] Kemp, D.P.; Collura, J.S.;
Tremain, T.E. "MULTI-FRAME CODING OF LPC
PARAMETERS 600-800 BPS", ICASSP91, 1991
International Conference on Acoustics, Speech, and Signal
Processing, Toronto, Ont., Canadá, 14-17 mayo
1991; Nueva York, NY, EE.UU., 1991, Volumen 1, págs.
609-612.
[12] Patente de los Estados Unidos n.º
5.255.339.
[13] Patente de los Estados Unidos n.º
4.815.134.
[14] Hardwick, J.C.; Lim, J.S., "
A 4,8 KBPS MULTI-BAND EXCITATION SPEECH CODER",
ICASSP 1998 International Conference on Acoustics, Speech,
and Signal, Nueva York, NY, USA, 11-14 abril
1988, Nueva York, NY, USA: IEEE, 1988, VOL i, págs.
374-377.
[15] Nishiguchi, L., Iijima, K.;
Matsumoto, J., "HARMONIC VECTOR EXCITATION CODING OF
SPEECH AT 2,0 KBPS", 1997 IEEE Workshop on Speech Coding
for Telecommunications Proceedings, Pocono Manor, PA, USA,
7-10 sept. 1997, Nueva York, USA: IEEE,
1997, págs.39-40.
[16] Nomura, T., Iwadare, M.,
Serizawa, M., Ozawa, K. "A BITRATE AND BANDWIDTH
SCALABLE CELP CODER", ICASSP 1998 International Conference
on Acoustics, Speech, and Signal, Seatle, WA, USA,
12-45 mayo 1998, volumen 1, págs.
341-344.
Esta invención se refiere genéricamente a
comunicaciones digitales y, en particular, a procedimientos y
aparatos paramétricos de codificación y decodificación de habla.
Para el propósito de definición, es de destacar
que el término "vocoder" se usa frecuentemente para describir
procedimientos de codificación de voz en los que se transmiten
parámetros de voz en lugar de muestras digitalizadas de formas de
onda. En la producción de muestras digitalizadas de formas de onda,
una forma de onda entrante se muestrea periódicamente, y se
digitaliza a una corriente de datos digitalizados de forma de onda
que se pueden convertir de nuevo en una forma de onda analógica
virtualmente idéntica a la forma de onda original. La codificación
de voz usando parámetros de voz proporciona precisión suficiente
para permitir la síntesis subsiguiente de una voz que es
sustancialmente similar a la codificada. Observe que el uso de
codificación de parámetro de voz no proporciona información
suficiente para reproducir exactamente la forma de onda de voz, como
es el caso con formas de onda digitalizadas; sin embargo, la voz se
puede codificar a menor velocidad de datos de lo que se precisa con
muestras de forma de onda.
En la comunidad de codificación de habla, el
término "codificador" se usa a menudo para referirse a un
sistema de codificación y decodificación de habla, aunque, a menudo,
también se refiere a un codificador por sí mismo. Como se usa en la
presente memoria, el término codificador se refiere, generalmente, a
la operación de codificación de representar en un mapa una señal de
habla para una señal comprimida de datos (la corriente de bits), y
el término decodificador se refiere, genéricamente, a la operación
de decodificación donde la señal de datos está representada en un
mapa en una señal de habla reconstruida o sintetizada.
La compresión digital de habla (también
denominada compresión de voz) está creciendo en importancia para
modernos sistemas de comunicación. La necesidad de bajas velocidades
de bits en el intervalo de 500 bps (bits por segundo) hasta 2 kbps
(kilobits por segundo) para transmitir voz es deseable para una
comunicación eficaz y segura a alta frecuencia (HF) y para otros
canales de radio, para sistemas satelitarios de aviso por voz, para
juegos multijugador en Internet y para numerosas de aplicaciones
adicionales. La mayoría de los procedimientos de compresión
(también denominados "procedimientos de codificación") para 2,4
kbps, o menos, se basan en vocoders paramétricos. La mayoría de
vocoders contemporáneos de interés se basan en variaciones del
clásico vocoder de codificación lineal predictiva (LPC, Linear
Predictive Coding) y en potenciaciones de esta técnica, o se
basan en procedimientos de codificación sinusoidal tales como
codificadores armónicos y codificadores de excitación multibanda
[1]. Recientemente se ha desarrollado una versión potenciada del
vocoder LPC que se denomina MELP (Mixed Excitation Linear
Prediction) [2, 5, 6]. La presente invención puede proporcionar
niveles similares de calidad de voz a una menor velocidad de bit de
la que se requiere en los procedimientos convencionales de
codificación descritos en lo que
antecede.
antecede.
El documento GB-2 324 689 A
describe un concepto de cuantificación dual subcuadro de magnitudes
espectrales para codificar y decodificar habla. Una señal de habla
se digitaliza en muestras digitales de habla que, a continuación,
se dividen en subcuadros. Dos subcuadros consecutivos de la
secuencia de subcuadros se combinan en un bloque y sus parámetros
espectrales de magnitud se cuantifican conjuntamente.
El documento US 5.668.925 A describe un
codificador de habla de baja velocidad de datos con excitación
mixta. Una señal de habla tiene sus características extraídas y
codificadas. Las características incluyen frecuencias espectrales
de línea (LSF), tono y fluctuaciones.
MUOY E ET AL: "NATO STANAG 4479: A
STANDARD FOR AN 800 BPS VOCODER AND CHANNEL CODING IN
HF-ECCM SYSTEM", 1995 International Conference on
Acoustics, Speech, and Signal Processing. Conference Proceedings,
Detroit, MI, EE.UU., 9-12 mayo 1995; Nueva York, NY,
EE.UU.: IEEE, 1995, volumen 1, págs. 480-483
describe un codificador de voz para aplicaciones en sistemas de
comunicaciones de muy baja velocidad de bits. Usa análisis y
síntesis en el codificador LPC10e y presenta un proceso específico
de cuantificación al mismo. Un esquema asociado de corrección de
error aumenta la velocidad fuente de bit desde 800 hasta 2.400
bps.
El objetivo de la presente invención es
proporcionar aparatos de compresión de voz y de decodificación de
voz y sistemas mejorados para la transcodificación ascendente y la
transcodificación descendente datos de voz basados en subcuadros y
los correspondientes procedimientos al mismo.
Este objetivo se resuelve mediante el asunto de
las reivindicaciones independientes.
Las reivindicaciones preferidas se definen por
las reivindicaciones dependientes.
Esta invención se describe genéricamente en
cuanto a su uso con MELP, puesto que la codificación MELP tiene
ventajas sobre los procedimientos de codificación basados en
cuadros. Sin embargo, la invención es aplicable a una variedad de
codificadores, tales como codificadores [15] armónicos o
codificadores [14] del tipo de excitación multibanda (MBE).
El codificador MELP observa el habla de entrada
y, para cada cuadro de 22,5 ms, genera datos para transmitirlos a
un decodificador. Estos datos constan de bits que representan
frecuencias espectrales de línea (LSF) (que es una forma de
parámetro de predicción lineal), magnitudes Fourier (a veces
denominadas magnitudes "espectrales"), ganancias (2 por
cuadro), tono y sonorización, y, adicionalmente, contiene un bit
aperiodico de marca, bits de protección de error y bit de
sincronización (sync). La figura 1 muestra la estructura de
almacenamiento intermedio usada en un codificador convencional MELP
de 2,4 kpbs. El codificador empleado con otros procedimientos de
armónicos o de codificación MBE genera datos que representan muchos
de los mismos parámetros, o similares, (típicamente estos son LSF,
magnitudes espectrales, ganancia, tono y sonorización). El
decodificador MELP recibe estos parámetros para cada cuadro y
sintetiza un cuadro correspondiente de habla que aproxima el cuadro
original.
Diferentes sistemas de comunicaciones requieren
codificadores de habla con diferentes velocidades de bits. Por
ejemplo, un canal de radio de alta frecuencia (HF) tiene capacidad
severamente limitada y requiere corrección extensiva de error y una
velocidad de bit de 1,2 kbps puede ser más adecuado para
representar os parámetros de habla, mientras que un sistema seguro
de comunicación telefónica de voz a menudo requiere una velocidad
de bits de 2,4 kbps. En algunas aplicaciones es necesario
interconectar diferentes sistemas de comunicaciones de forma que
una señal de voz originalmente codificada para un sistema a una
velocidad de bits se convierta, subsiguientemente, en una señal de
voz codificada a otra velocidad de bits para otro sistema. Se hace
referencia a esta conversión como "transcodificación" y se
puede realizar mediante un "transcodificador" situado
típicamente en una puerta entre dos sistemas de comunicaciones.
En términos generales, la presente invención toma
una técnica existente de vocoder, tal como MELP, y sustancialmente
reduce la velocidad de bits, típicamente en un factor de dos,
mientras mantiene aproximadamente la misma calidad reproducida de
voz. Se hace uso de las técnicas existentes de vocoder dentro de la
invención, y se hace referencia a ellas como la codificación
"línea base" o, alternativamente, codificación paramétrica
"convencional" de voz.
A modo de ejemplo, y como limitación, la presente
invención comprende un vocoder de 1,2 kbps que tiene módulos de
análisis similares a un codificador MELP de 2,4 kbps al cual está
solapado un vocoder adicional de supercuadro. Se adopta un bloque o
estructura "supercuadro" que comprende tres cuadros
consecutivos dentro del vocoder supercuadro para cuantificar más
eficazmente los parámetros que se han de transmitir para el vocoder
de 1,2 kbps de la presente invención. Para simplificar la
descripción, el supercuadro se escoge para codificar tres cuadros,
ya que se ha encontrado que esta relación funciona bien. Es de
destacar, sin embargo, que los procedimientos de la invención se
pueden aplicar a supercuadros que comprendan cualquier número
discreto de cuadros. En patentes y publicaciones previas [9], [10],
[11], [13], se ha mencionado una estructura supercuadro. Dentro del
estándar de codificación MELP, cada vez que se analiza un cuadro
(por ejemplo, cada 22,5 ms), sus parámetros se codifican y
transmiten. Sin embargo, en la presente invención cada cuadro de un
supercuadro está concurrentemente disponible en una memoria
intermedia, cada cuadro se analiza, y los parámetros de los tres
cuadros dentro del supercuadro están simultáneamente disponibles
para cuantificación. Aunque esto introduce retraso adicional de
codificación, la correlación temporal que existe entre los
parámetros de los tres cuadros se puede explotar eficazmente
cuantificándolos juntos en lugar de por separado.
El tamaño de cuadro del codificador de 1,2 kbps
de la presente invención es preferiblemente de 22,5 ms (o 180
muestras de habla) a una velocidad de muestreo de 8.000 muestras por
segundo, que es la misma que en el codificador estándar MELP. Sin
embargo, con el fin de evitar grandes errores de tono, la longitud
del registro de anticipación está aumentada en la invención en 129
muestras. A este respecto, observe que el término "registro de
anticipación" se refiere a la duración temporal del "futuro"
segmento de habla más allá del límite actual de cuadro que debe
estar disponible en la memoria intermedia para el procesado,
necesario para codificar el cuadro actual. Un suavizador de tono
también se usa en el codificador de 1,2 kbps de la presente
invención, y el retraso algorítmico para el codificador de 1,2 kbps
es de 103,75 ms. Los parámetros transmitidos para el codificador de
1,2 kbps son los mismos que para el codificador MELP de 2,4
kbps.
Dentro del estándar de codificación de MELP, la
decisión de sonorización de banda baja o decisión
insonorizado/sonorizado (decisión U/V) se encuentra para cada
cuadro. Se dice que el cuadro está "sonorizado" cuando el
valor de sonorización de banda baja es "1", e
"insonorizado" cuando éste es "0". Esta condición de
sonorización determina cual de las dos asignaciones diferentes de
bit se usa para el cuadro. Sin embargo, en el codificador de 1,2
kbps de la presente invención, cada supercuadro se categoriza en uno
de entre varios estados de codificación con una asignación
diferente de bits para cada estado. La selección del estado se hace
de acuerdo con el patrón U/V (insonorizado o sonorizado) del
supercuadro. Si error de bit de canal lleva a una identificación
incorrecta de estado por el decodificador, se producirá una grave
degradación del habla sintetizada para este supercuadro. Por lo
tanto, un aspecto de la presente invención comprende técnicas para
reducir el efecto de falta de casación de estado entre codificador
y decodificador debido a errores de canal, cuyas técnicas se han
desarrollado e integrado en el decodificador.
En la presente invención, tres cuadros de habla
están simultáneamente disponibles en una memoria intermedia y cada
cuadro se analiza por separado mediante módulos convencionales de
análisis MELP, generando valores de parámetro (sin cuantificar)
para cada uno de los tres cuadros. Esos parámetros están
disponibles colectivamente para el procesado y la cuantificación
subsiguiente. El suavizador de tono observa tono y decisiones U/V
para los tres cuadros y, además, realiza análisis adicional en los
datos de habla de la memoria intermedia para extraer parámetros,
necesarios para clasificar cada cuadro como uno de entre dos tipos
[comienzo (onset) o desplazamiento (offset)] para
usar en una operación de suavización de tono. El suavizador
entonces, da como información de salida versiones modificadas
(suavizadas) de las decisiones de tono, y estos valores de tono para
el supercuadro son, entonces, cuantificados. El suavizador de
sonorización de banda pasante observa las intensidades de
sonorización de banda pasante para los tres cuadros, así como
examina valores de energía directamente extraídos del habla en
memoria intermedia y, a continuación, determina una frecuencia de
corte para cada uno de los tres cuadros. Las intensidades de
sonorización de banda pasante son parámetros generados por el
codificador MELP para describir el grado de sonorización en cada
una de cinco bandas de frecuencia del espectro de habla.
Las frecuencias de corte, definidas en lo que
sigue, describen la evolución temporal de la anchura de banda de la
parte sonorizada del espectro de habla. La frecuencia de corte para
cada cuadro sonorizado en el supercuadro está codificado con 2
bits. Cada uno de los parámetros LSF, parámetro de fluctuaciones, y
parámetros de magnitud de Fourier para el supercuadro se
cuantifican. Se obtienen datos binarios a partir de cuantificadores
para transmisión. No se describen, en aras de la sencillez, los bits
de corrección de errores, bit de sincronización, bit de paridad y
el multiplexado de los bits en una corriente de datos en serie para
transmisión, todos los cuales son bien conocidos por aquellos
expertos en la técnica. En el receptor, los bits de datos para los
diversos parámetros se extraen, decodifican y aplican para invertir
cuantificadores que recrean los valores de parámetro cuantificados a
partir de los datos comprimidos. Un receptor incluye, típicamente,
un módulo de sincronización que identifica el punto de partida de
un supercuadro, y un medio para decodificar y demultiplexar
corrección de errores. Los parámetros recuperados para cada cuadro
se pueden aplicar a un sintetizador. Tras la decodificación, los
cuadros sintetizados de habla se concatenan para formar la señal de
salida de habla. El sintetizador puede ser un sintetizador
convencional basado en cuadro, tal como un MELP, o puede estar
dotado de un procedimiento alternativo como se describe en la
presente memoria.
Un objetivo de la invención es introducir mayores
eficacias de codificación y sacar partido a la correlación desde un
cuadro de habla hasta otro, agrupando cuadros en supercuadros y
realizando técnicas novedosas de cuantificación en los parámetros
de supercuadro.
Otro objetivo de la invención es permitir que las
funciones existentes de procesado de habla del codificador y
descodificador de línea base sean retenidas, de tal forma que el
codificador potenciado opere sobre los parámetros encontrados en la
operación de codificador de línea base, conservando, de este modo,
la riqueza de experimentación y los resultados del diseño ya
obtenidos con codificadores y decodificadores de línea base
mientras aún ofrece velocidades de bit muy reducidas.
Otro objetivo de la invención es proporcionar un
mecanismo para transcodificar, en el cual una corriente de bits
obtenida a partir del codificador potenciado se convierte
(transcodifica) en una corriente de bits que será reconocida por el
decodificador de línea base, mientras proporciona similarmente un
modo de convertir la corriente de bits procedente de un codificador
línea base en una corriente de bits que se puede reconocer mediante
un decodificador potenciado. Esta característica de
transcodificación es importante en aplicaciones donde el equipo
terminal que implanta un codificador/decodificador línea base debe
comunicarse con equipo terminal que implanta el
codificador/decodificador potenciado.
Otro objetivo de la invención es proporcionar
procedimientos para mejorar las características del codificador
MELP por medio del cual nuevos procedimientos generan parámetros de
tono y de sonorización.
Otro objetivo de la invención es proporcionar un
nuevo proceso de decodificación que sustituya el proceso de
decodificación MELP y reduzca sustancialmente complejidad mientras
mantiene la calidad de voz sintetizada.
Otro objetivo de la invención es proporcionar un
esquema de codificación de 1,2 kbps que de aproximadamente igual
calidad codificador estándar MELP operando a 2,4 kbps.
Objetivos y ventajas adicionales de la invención
surgirán en las partes siguientes de la especificación, en las
cuales la descripción detallada es con la única finalidad de
describir completamente realizaciones preferidas de la invención
sin poner limitaciones a la misma.
La invención se comprenderá más completamente
haciendo referencia a los siguientes dibujos que únicamente tienen
finalidad ilustrativa:
La figura 1 es un diagrama de posiciones de datos
usados dentro de la estructura de datos de entrada de memoria
intermedia de habla de un codificador MELP convencional de 2,4 kbps.
Las unidades mostradas indican muestras de habla.
La figura 2 es un diagrama de posiciones de datos
usados dentro estructura de datos de entrada de memoria intermedia
de habla del codificador de 1,2 kbps de la presente invención. Las
unidades mostradas indican muestras de habla.
La figura 3A es un diagrama funcional de bloques
del codificador de 1,2 kbps de la presente invención.
La figura 3B es un diagrama funcional de bloques
del decodificador de 1,2 kbps de la presente invención.
La figura 4 es un diagrama de posiciones de datos
dentro del codificador de 1,2 kbps de la presente invención
mostrando posiciones de cálculo para calcular parámetros más suaves
de tono dentro de la presente invención, donde las unidades
mostradas indican muestras de habla.
La figura 5A es un diagrama funcional de bloques
de una corriente de 1.200 bps convertida hacia arriba mediante un
transcodificador a una corriente de 2.400 bps.
\newpage
La figura 5B es un diagrama funcional de bloques
de una corriente de 2.400 bps convertida hacia abajo mediante un
transcodificador a una corriente de 1.200 bps.
La figura 6 es un diagrama funcional de bloques
de hardware dentro de un terminal de vocoder que emplea los
principios de la invención de acuerdo con la presente invención.
Con fines ilustrativos, la presente invención se
describirá haciendo referencia a las figuras 2 a 6. Se apreciará
que el aparato puede variar en cuanto a configuración y detalles de
las partes, y que el proceso puede variar en cuanto a las etapas y
secuencias específicas, sin abandonar los conceptos básicos como se
describe en la presente memoria.
El codificador de 1,2 kbps de la presente
invención emplea módulos de análisis similares a los usados en
codificador MELP convencional de 2,4 kbps, pero añade un bloque o
codificador "supercuadro" que codifica tres cuadros
consecutivos y cuantifica más eficazmente los parámetros
transmitidos para proporcionar la sonorización de 1,2 kbps.
Aquellos expertos en la técnica apreciará que, aunque la invención
se describe haciendo referencia a usar tres cuadros por
supercuadro, el procedimiento de la invención se puede aplicar, así
mismo, a supercuadros que comprenden otros números enteros de
cuadros. Además, aquellos expertos en la técnica también apreciarán
que aunque la invención se describe en relación con el uso de MELP
como el codificador de línea base, los procedimientos de la
invención se pueden aplicar a otros vocoders armónicos. Dichos
vocoders pueden tener un juego similar, pero no idéntico, de
parámetros extraídos del análisis de un cuadro de voz, y el tamaño
de cuadro y las velocidades de bits pueden ser diferentes de los
utilizados en la descripción aquí presentada.
Se apreciará que cuando se analiza un cuadro
dentro de un codificador MELP, (por ejemplo, cada 22,5 ms), los
parámetros de voz se codifican para cada cuadro y, a continuación,
se transmiten. Aún en la presente invención, datos procedentes de
un grupo de cuadros, que forman un supercuadro, se recogen y
procesan con los parámetros de los tres cuadros en el supercuadro
que están simultáneamente disponibles para cuantificarse. Aunque
esto introduce retraso adicional de codificación, la correlación
temporal que existe entre los parámetros de los tres cuadros se
puede sacar partido eficazmente cuantificándolos juntos en lugar de
por separado.
El tamaño de cuadro empleado en la presente
invención es preferiblemente de 22,5 ms (o de 180 muestras de
habla) a una velocidad de muestreo de 8.000 muestras por segundo,
que es la misma velocidad de muestra usada en el codificador MELP.
La estructura de memoria intermedia de un MELP convencional de 2,4
kbps se muestra en la figura 1. La longitud de memoria intermedia de
registro de anticipación se ha aumentado en la realización
preferida en 129 muestras, a fin de reducir la ocurrencia de grandes
errores de tono, aunque la invención se puede poner en práctica con
diversos niveles de registro de anticipación.
Adicionalmente, se ha introducido un suavizador
de tono para reducir, más aún, errores de tono. El retraso
algorítmico para el codificador de 1,2 kbps descrito es de 103,75
ms. Los parámetros transmitidos para el codificador de 1,2 kbps son
los mismos que para el codificador MELP de 2,4 kbps. La estructura
de memoria intermedia de la presente invención se pueden ver en la
figura 2.
Al usar la codificación MELP, la decisión de
sonorización de banda baja, o decisión U/V se encuentra para cada
cuadro "sonorizado" cuando el valor de sonorización de banda
baja es de 1, e insonorizado cuando éste es de 0. Sin embargo, en
el codificador de 1,2 kbps de la presente invención cada supercuadro
se categoriza en uno o varios estados de codificación que emplean
diferentes esquemas de cuantificación. La selección de estado se
realiza según el patrón U/V del supercuadro. Si un error de bit de
canal lleva a una identificación incorrecta de estado por el
decodificador, se producirá una degradación grave del habla
sintetizada para este supercuadro. Por lo tanto, se han
desarrollado e integrado técnicas para reducir el efecto de falta de
casación de estado entre codificador y decodificador debido a
errores de canal, cuyas técnicas se han desarrollado e integrado en
el decodificador. Con fines de comparación, en la tabla 1 se
muestran los esquemas de asignación de bit tanto para el codificador
(MELP) de 2,4 kbps como para el codificador de 1,2 kbps.
La figura 3A es un diagrama general de bloques
del esquema 10 de codificación de 1,2 kbps según la presente
invención. El habla 12 de datos de entrada llena una memoria
intermedia denominada una memoria 14 intermedia de supercuadro que
comprende un supercuadro y almacena, además, las muestras
históricas que precedieron la partida de los más antiguos de entre
los tres cuadros y las muestras registro de anticipación que siguen
al más reciente de los tres cuadros. El intervalo actual de muestras
almacenadas en esta memoria intermedia para la realización
preferida son como las mostradas en la figura 2. Los cuadros dentro
de la memoria intermedia 14 de supercuadro se analizan por separado
mediante módulos 16, 18, 20 convencionales de análisis MELP que
generan un juego de valores 22 de parámetro sin cuantificar para
cada uno de los cuadros dentro de la memoria intermedia 10 de
supercuadro. Específicamente, un módulo 16 de análisis MELP opera en
el primer (más antiguo) cuadro almacenado en la memoria intermedia
de supercuadro, otro módulo 18 de análisis MELP opera en el segundo
cuadro almacenado en la memoria intermedia, y otro módulo 20 de
análisis MELP opera en el tercer (más reciente) cuadro almacenado en
la memoria intermedia.
Cada bloque de análisis de MELP tiene acceso a un
cuadro más anterior y a muestras futuras asociadas con este cuadro.
Los parámetros generados por los módulos de análisis de MELP se
recogen para formar el conjunto de parámetros sin cuantificar
almacenados en la unidad 22 de memoria, que está disponible para
subsiguiente procesado y cuantificación. El suavizador 24 de tono
observa valores de tono para los cuadros dentro de la memoria
intermedia 14 de supercuadro, conjuntamente con un juego de
parámetros calculados por el bloque 26 de análisis de suavización y
da como información de salida versiones modificadas de valores de
tono cuando la información de salida está cuantificada 28. Un
suavizador 30 de sonorización de banda pasante observa un valor
medio de energía calculado mediante el módulo 32 de análisis de
energía y éste también observa las intensidades de sonorización de
banda pasante para los cuadros dentro de la memoria 14 intermedia
de supercuadro y los modifica adecuadamente para una cuantificación
subsiguiente por el cuantificador 32 de sonorización de banda
pasante. Un cuantificador 34 LSP, cuantificador 36 Jitter, y
cuantificador 38 de magnitudes de Fourier da cada uno como
información de salida datos codificados. Los datos binarios
codificados se obtienen de los cuantificadores para transmisión. No
se muestran, por sencillez, la generación de bits de datos de
corrección de errores, un bit de sincronización y multiplexado de
los bits en una corriente de datos en serie para transmisión, que
aquellos expertos en la técnica comprenderán fácilmente cómo
implantar.
implantar.
En el decodificador 50, mostrado en la figura 3B,
los bits de datos para los diversos parámetros están contenidos en
el dato 52 de canal que entra en una decodificación y cuantificador
54 inverso, que extrae, decodifica y aplica cuantificadores
inversos para recrear los valores cuantificados de parámetro a
partir de datos comprimidos. No se muestran el módulo de
sincronización (que identifica el punto de partida de un
supercuadro) ni la decodificación y desmultiplexado de corrección de
errores que aquellos expertos en la técnica comprenderán fácilmente
cómo implantar. Los parámetros recuperados para cada cuadro se
aplican, a continuación, a sintetizadores 56, 58, 60 convencionales
MELP. Es de destacar que esta invención incluye un procedimiento
alternativo de sintetizar habla para cada cuadro es completamente
diferente del sintetizador MELP de la técnica anterior. Una vez
decodificado, los cuadros 62, 64, 66 de habla sintetizada se
concatenan para formar la señal 68 de salida de habla.
La estructura básica del codificador se basa en
el mismo módulo de análisis usado en el codificador MELP de 2,4
kbps salvo en que se añaden un nuevo suavizador de tono y suavizador
de sonorización de banda pasante para aprovechar la estructura de
supercuadro. El codificador extrae los parámetros de
características a partir de tres cuadros sucesivos en un supercuadro
usando el mismo algoritmo de análisis MELP, operando en cada
cuadro, como se usaba en el codificador MELP de 2,4 kbps. Los
parámetros de sonorización de tono y banda pasante se potencian
mediante suavización. Esta potenciación es posible debido a la
disponibilidad simultánea de tres cuadros contiguos y al registro
de anticipación. Al operar de esta manera en el supercuadro, los
parámetros para los tres cuadros están disponibles como datos de
entrada para los módulos de cuantificación, permitiendo, de este
modo, una cuantificación más eficaz de la que es posible cuando
cada cuadro se cuantifica separada e independientemente.
El suavizador de tono toma las estimaciones de
tono del módulo de análisis de MELP para cada cuadro en el
supercuadro y de un juego de parámetros del módulo 26 de análisis de
suavización mostrado en la figura 3A. El módulo 26 de análisis de
suavización calcula un juego de nuevos parámetros cada medio cuadro
(11,25 ms) a partir de observación directa de las muestras de habla
almacenadas en la memoria intermedia de supercuadro. Las nueve
posiciones de cálculo en el supercuadro actual se ilustran en la
figura 4. Cada posición de cálculo está en el centro de una ventana
en la que se calculan los parámetros. Los parámetros calculados se
aplican, entonces, como información adicional al suavizador de
tono.
En el codificador de 1,2 kbps cada cuadro se
clasifica en dos categorías, que comprenden cuadros onset o
desplazamiento con el fin de guiar el proceso de suavización de
tono. Los nuevos parámetros de características de forma de onda
calculados mediante el módulo 26 de análisis de suavización y, a
continuación, usados por el módulo 24 de suavizador de tono para la
clasificación comienzo/desplazamiento, son como sigue:
Descripción | Abreviatura |
Energía en dB | subEnergy |
Velocidad de cruce con el eje cero | zeroCrosRate |
Medida de pico de resonancia | peakiness |
Máximo coeficiente de correlación de habla de entrada | corx |
Máximo coeficiente de correlación de 500 Hz de habla filtrada de pasa baja | lowBandCorx |
Energía de habla filtrada de pasa baja | lowBandEn |
Energía de habla filtrada de pasa alta | highBandEn |
\vskip1.000000\baselineskip
El habla de entrada se indica como x(n), n
=..., 0, 1... donde x(0) corresponde a la muestra de habla
que es de 45 muestras a la izquierda de la actual posición de
cálculo, y n es 90 muestras que es la mitad del tamaño de muestra.
Los parámetros se calculan como sigue:
(1) Energía:
\vskip1.000000\baselineskip
subEnergy = 10
log_{10} \left[\sum\limits^{N-1}_{n=0} x^{2} (n)
\right]
\vskip1.000000\baselineskip
(2) Velocidad de cruce con el eje cero:
\vskip1.000000\baselineskip
zeroCrosRate =
\sum\limits^{N-2}_{i=0} [x(i)\text{*} \
x(i+1) >
0?0:1]
\vskip1.000000\baselineskip
donde la expresión entre corchetes
tiene un valor 1 cuando el producto x(i)*x(i+1) es
negativo (es decir, cuando se produce un cruce con el eje cero) y en
otro caso tiene valor
cero.
(3) Medida del pico de resonancia en el dominio
de habla:
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
La medida del pico de resonancia se define como
en el codificador [5] MELP, sin embargo, aquí esta medida se
calcula a partir de la propia señal de habla, mientras que en MELP
se calcula a partir de la señal residual de predicción que se
obtiene de la señal de habla.
(4) Máximo coeficiente de correlación en el
intervalo de investigación de tono:
H(z) =
0\text{.}3069/(1-2\text{.}4552z^{-1} +
2\text{.}4552z^{-2} - 1\text{.}152z^{-3} +
0\text{.}2099z^{-4})
Primero, la señal de habla de entrada se pasa a
través de un filtro de pasa baja con una frecuencia de corte de 800
Hz, donde:
La señal filtrada de pasa baja se pasa a través
de un filtro inverso LPC de 2.º orden. La señal inversa filtrada se
indica como s_{lv}(n). El componente DC se retira de
s_{lv}(n) para obtener \overline{s}_{lv}(n).
A continuación, la función de autocorrelación se calcula
mediante:
r_{k} =
\frac{\sum\limits^{M-1}_{n=0}\overline{s}_{lv} (n)
\overline{s}_{lv} (n +
k)}{\sqrt{\sum\limits^{M-1}_{n=0}\overline{s}_{lv}
(n)
\cdot\sum\limits^{M-1}_{n=0}\overline{s}^{2}{}_{lv}
(n + k)}}
\hskip0.5cmk = 20, ..., 150
donde M = 70. Las muestras se
seleccionan usando una ventana deslizante escogida para alinear la
posición actual de cálculo hasta el centro de la ventana de
autocorrelación. El máximo parámetro corx del coeficiente de
correlación es el máximo de la función r_{k}. El tono
correspondiente es
l.
(5) Máximo coeficiente de correlación del habla
filtrada de pasa baja
En el estándar MELP, se usan cinco filtros en el
análisis de sonorización de banda pasante. El primer filtro es
realmente un filtro de pasa baja con banda pasante de
0-500 Hz. El mismo filtro se usa en habla de
entrada para generar la señal s_{l}(n) filtrada de pasa
baja. A continuación, la función de correlación definida en (4) se
calcula sobre s_{l}(n). El intervalo de los índices está
limitado por [max(20, l-5), min (150, l+5)].
El máximo de la función de correlación se indica como
lowBandCorx.
(6) Energía de banda baja y energía de banda
alta:
En el módulo de análisis de LPC, se calculan los
17 primeros coeficientes de autocorrelación r(n), n =
0...,17. La energía de banda baja y la energía de banda alta se
obtienen filtrando los coeficientes de autocorrelación.
.lowBandEn =
r(0)\cdot C_{1}(0) + 2\sum\limits^{16}_{n=1}r(n) \cdot
C_{1}(n)
.highBandEn =
r(0)\cdot C_{h}(0) + 2\sum\limits^{16}_{n=1}r(n)\cdot
C_{h}(n)
Los C_{l}(n) y C_{h}(n) son los
coeficientes para el filtro de pasa baja y el filtro de pasa alta.
Los 16 coeficientes de filtro para cada filtro se escogen para una
frecuencia de corte de 2 kHz y se obtienen con una técnica estándar
de diseño de filtro FIR.
Los parámetros enumerados en lo que antecede se
usan para tomar decisiones U/V bastas para cada semicuadro. La
lógica de clasificación para tomar las decisiones de sonorización
mostrada en lo que sigue, se realiza en el módulo 24 de suavizador
de tono. El voiceEn y silenceEn son las energías
medias de funcionamiento de cuadros de con voz y cuadros de
silencio.
\vskip1.000000\baselineskip
A continuación, se usan las decisiones U/V para
cada subcuadro, para clasificar los cuadros como comienzo u
desplazamiento. Esta clasificación es interna al codificador y no se
transmite. Para cada cuadro actual, primero se verifica la
posibilidad de un desplazamiento. Un cuadro desplazamiento se
selecciona si el cuadro actual de voz está seguido por una
secuencia de cuadros sin voz, o la energía declina al menos 8 dB
dentro de un cuadro o 12 dB dentro de un cuadro y medio. El tono de
un cuadro desplazamiento no se suaviza.
Si el cuadro actual es el primer cuadro con voz,
o la energía aumenta en al menos 8 dB dentro de un cuadro o 12 dB
en un cuadro y medio, el cuadro actual se clasifica como un cuadro
comienzo. Para los cuadros comienzo, un candidato de tono de
registro de anticipación se estima a partir de uno de los máximos
locales de la función de autocorrelación evaluada en la región de
registro de anticipación. Primero, se seleccionan los 8 mayores
máximos locales de la función de autocorrelación dados en lo que
antecede. Los máximos se indican para la posición actual de cálculo
como R^{(o)}(i), i = 0..., 7. Los máximos para las
siguientes dos posiciones de cálculo son R^{(1)}(i),
R^{(2)}(i). Se calcula una función de coste para cada
posición de cálculo, y la función de coste para la posición actual
de cálculo se usa para estimar el tono predicho. La función de
coste para R^{(2)}(i) se calcula primero como:
C^{(2)}(i) =
W[1 -
R^{(2)}(i)]
donde W es una constante que es
100. Para cada máximo R^{(1)}(i), el tono correspondiente
se indica como p^{(1)}(i). La función de coste
C^{(1)}(i) se calcula
como:
C^{(l)} (i) =
W[1 - R^{(1)}(i)] + |p^{(1)}(i) - p^{(2)}(k_{i})| +
C^{(2)}(k_{i})
El índice k_{i} se escoge como:
Si el intervalo l es un conjunto vacío en la
ecuación de lo que antecede, entonces, usamos el intervalo l\in
[0, 7]. La función de coste C^{(0)}(i) se calcula de una
forma similar a C^{(1)}(i). El tono predicho se escoge
como
p = arg
max(C^{(0)}(i)) \hskip2cm i = 0, ..., 7
{}\hskip-4,2cm
^{p^{(0)}(i)}
El candidato de tono de registro de anticipación
se selecciona como el tono actual, si la diferencia entre el tono
original estimado y el tono de registro de anticipación es mayor que
el 15%.
Si el cuadro actual no es ni comienzo u
desplazamiento, se comprueba la variación de tono. Si se detecta un
salto de tono, lo que significa que el tono desciende y, a
continuación, aumenta, o que aumenta y, a continuación, desciende,
el tono del cuadro actual se suaviza usando interpolación entre el
tono del cuadro previo y el tono del cuadro siguiente. Para el
último cuadro en el supercuadro, el tono del cuadro siguiente no
está disponible, por lo que se usa un valor predicho de tono en
lugar del valor de tono del cuadro siguiente. El suavizador de tono
de lo que antecede detecta muchos de los grandes errores de tono que
de otra forma ocurrirían y en pruebas formales subjetivas de
calidad, el suavizador de tono está dotado de mejora significativa
de calidad.
En codificación MELP, el habla de entrada se
filtra en cinco sub-bandas. Las intensidades de
sonorización de banda pasante se calculan para cada una de estas
sub-bandas con cada intensidad de sonorización
normalizada a un valor entre 0 y 1. Estas intensidades se
cuantifican subsiguientemente a ceros o unos para obtener
decisiones de sonorización de banda pasante. La intensidad
cuantificada de sonorización (0 a 500 Hz) de banda baja determina
el carácter insonorizado o sonorizado (U/V) del cuadro. La
información binaria de sonorización de las cuatro bandas restantes
describe parcialmente el carácter armónico o no armónico del
espectro de un cuadro y se puede representar mediante una palabra
código de cuatro bits. En esta invención, se usa un suavizador de
sonorización de banda pasante para describir de forma más compacta
esta información para cada cuadro en un supercuadro y para suavizar
la evolución temporal de esta información en cuadros. Primero se
representa en un mapa la palabra código de cuatro bits (1 para
sonorizado, 0 para insonorizado) para las cuatro bandas restantes de
cada cuadro en una única frecuencia de corte con uno de los cuatro
valores permitidos. Esta frecuencia de corte identifica,
aproximadamente, el límite entre la región inferior del espectro
que tiene un carácter sonorizado (o armónico) y la región más alta
que tiene un carácter insonorizado. El suavizador modifica,
entonces, las tres frecuencias de corte en el supercuadro para
producir una evolución temporal más natural para el carácter
espectral de los cuadros. Las palabras código de sonorización de
cuatro dígitos para cada una de las decisiones de cuadro se
representa en un mapa en cuatro palabra código usando un libro de
código de 2 bits mostrado en la tabla 2. Las entradas del libro de
código es equivalente a las cuatro frecuencias de corte: 500 Hz,
1.000 Hz, 2.000 Hz y 4.000 Hz que se corresponden respectivamente,
con las columnas etiquetadas: 0000, 1000, 1100 y 1111 en el cuadro
de representación de mapa dado en la tabla 2. Por ejemplo, cuando el
patrón de sonorización de banda pasante para un cuadro sonorizado
es 1001, este índice se representa en un mapa en 1000, que se
corresponde con una frecuencia de corte de 1000 Hz.
\newpage
Para los dos primeros cuadros del supercuadro
actual, la frecuencia de corte se suaviza de acuerdo con la
información de sonorización de banda pasante del cuadro previo y del
cuadro siguiente. La frecuencia de corte en el tercer cuadro no se
cambia a la izquierda. La energía media de cuadros sonorizados se
indica como VE. El valor de VE se actualiza en cada
cuadro sonorizado para el cual los dos cuadros anteriores están
sonorizados. La regla de actualización es:
VE_{new} = 10
\ log_{10}\lfloor0.9e^{VE_{old/10}} +
0.1e^{subEnergy/10}\rfloor
Para el cuadro i, la energía del cuadro actual se
indica como en_{i}. Las intensidades de sonorización para las
cinco bandas se indican como bp[k]_{i}, k = 1..., 5.
las tres condiciones siguientes se considera que suavizan la
frecuencia de corte f_{i}.
(1) Si las frecuencias de corte del cuadro previo
y del cuadro siguiente están ambas por encima de 2.000 Hz,
entonces, ejecutar el procedimiento siguiente:
If (f_{i}<2000 and ((en_{i}>VE- 5dB) or
(bp[2]_{i-1}>0,5 and
bp[3]_{i-1}>0,5)))
- f_{i}=2000 Hz
elseif (f_{i}<1000)
- f_{i}=1000Hz
(2) Si las frecuencias de corte del cuadro previo
y del cuadro siguiente están ambas por encima de 1.000 Hz,
entonces, ejecutar el procedimiento siguiente:
If (f_{i}<1000 and ((en_{i}>VE- 10dB)
or (bp[2]_{i-1}>0,4 and
bp[3]_{i-1}>0,5)))
- f_{i}=1000 Hz
(3) Si las frecuencias de corte del cuadro previo
y del cuadro siguiente están ambas por debajo de 1.000 Hz,
entonces, ejecutar el procedimiento siguiente:
If (f_{i}<1000 and en_{i}>VE- 5dB and
bp[3]_{i-1}>0,7)
- f_{i}=2000 Hz
Los parámetros transmitidos del codificador 1,2
kbps son los mismos que los del codificador MELP 2,4 kbps salvo en
que en el codificador 1,2 kbps, los parámetros no se transmiten
cuadro a cuadro sino que se envían de una vez para cada
supercuadro. La asignación de bits se muestra en la tabla 1. Se
diseñaron nuevos esquemas de cuantificación para aprovechar el gran
tamaño de bloque (el supercuadro) usando interpolación y
cuantificación por vector (VQ). Las propiedades estadísticas de
habla sonorizada e insonorizada también se tienen en cuenta. El
mismo libro de código de magnitud de Fourier del codificador MELP de
2,4 kbps se usa en el codificador de 1,2 kbps con el fin de ahorrar
memoria y facilitar el diagnóstico.
Los parámetros de tono son aplicables únicamente
para cuadros sonorizados. Diferentes esquemas de cuantificación de
tono se usan para diferentes combinaciones U/V en los tres cuadros.
El procedimiento detallado para cuantificar los valores de tono de
un supercuadro se describe en la presente memoria para un patrón
particular de sonorización. El procedimiento de cuantificación
descrito en esta sección se usa en la cuantificación junta del
patrón de sonorización, mientras el tono se describirá en la sección
siguiente. Los esquemas de cuantificación de tono se resumen en la
tabla 3. Dentro de aquellos supercuadros donde el patrón de
sonorización contiene binen dos o tres cuadros sonorizados, los
parámetros de tono están cuantificados por vector. Para patrones de
sonorización que únicamente contienen un cuadro sonorizado, se
aplica el cuantificador escalar especificado en el estándar MELP
para el tono del cuadro sonorizado. Para el patrón de sonorización
UUU, donde cada cuadro está insonorizado, no se necesitan bits para
información de tono. Observe que U indica "Insonorizado"
(Unvoiced) y V indica "sonorizado"
(Voiced).
(Voiced).
Cada valor de tono, P, obtenido a partir del
análisis de tono del estándar de 2,4 kbps se transforma en un valor
logarítmico, p=log P, antes de la cuantificación. Para cada
supercuadro, se construye un vector de tono con componentes iguales
al valor del logaritmo del tono para cada cuadro sonorizado y un
valor cero para cada cuadro insonorizado. Para patrones de
sonorización con dos o tres cuadros sonorizados, el vector de tono
se cuantifica usando un algoritmo de VQ (cuantificación por vector)
con una nueva medida de distorsión que tiene en cuenta la evolución
del tono. Este algoritmo incorpora diferenciales de tono en la
investigación del libro código, lo que le posibilita considerar la
evolución temporal del tono. Se usa [7] un diseño estándar de libro
de código VQ. El algoritmo de codificación VQ incorpora
diferenciales de tono en la investigación del libro de código, que
le permite considerar la evolución temporal del tono en la
selección de la entrada del libro código VQ. Esta característica
está motivada por la importancia preceptual de trazar adecuadamente
la trayectoria del tono. El algoritmo tiene tres etapas para obtener
el mejor
índice:
índice:
Etapa 1: seleccionar los mejores candidatos M,
usando la medida ponderada de la distancia euclídea al
cuadrado:
\vskip1.000000\baselineskip
y p_{i} es el logaritmo sin
cuantificar del tono, \overline{p}_{i} es el valor cuantificado
del logaritmo el tono. La ecuación anterior indica que únicamente
cuadros sonorizados se tienen en cuenta en la investigación del
libro de
código.
Etapa 2: calcular diferenciales de los valores
sin cuantificar del logaritmo de tono usando:
Donde
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
para i = 1, 2, 3, donde po es el
último valor del logaritmo del tono, del supercuadro anterior. Para
los valores candidatos de logaritmo del tono seleccionados en la
etapa 1, calcular diferenciales de los candidatos sustituyendo
\Deltap_{i} y p_{i} por \Delta\hat{p}_{i} y
\hat{p}_{i} , respectivamente en la ecuación (2), donde
\hat{p}_{o} es la versión cuantificada de
p_{o}..
Etapa 3: seleccionar el índice a partir de los
mejores candidatos M que minimizan:
(3)d' =
\sum\limits^{3}_{i=1}w_{i}|p_{i} - \hat{p}_{i}|^{2} + \delta
\sum\limits^{3}_{i=1}|\Delta p_{i} - \Delta\hat{p}_{i}|^{2} = d +
\delta\sum\limits^{3}_{i=1}|\Delta p_{i} -
\Delta\hat{p}_{i}|^{2}
donde \delta es un parámetro para
controlar la distribución de diferenciales de tono que está
ajustado a
1.
Para supercuadros que contienen únicamente un
cuadro sonorizado, se realiza la cuantificación escalar del tono.
El valor de tono se cuantifica sobre una escala logarítmica con un
cuantificador uniforme de 99 niveles que va de 20 hasta 160
muestras. El cuantificador es el mismo que en el estándar MELP de
2,4 kbps, donde los 99 niveles están representados en un mapa a una
palabra código de tono de 7 bits y las palabras código 28 no
empleadas con peso 1 ó 2 de Hamming se usan para proteger
errores.
Las decisiones U/V y los parámetros de tono para
cada supercuadro se cuantificación conjuntamente usando 12 bits. El
esquema de cuantificación conjunta se resume en la tabla 4. Con
otras palabras, el patrón de sonorización (uno de 8 posibles
patrones) y el juego de tres valores de tono para el supercuadro
forman los datos de entrada de un esquema de cuantificación conjunta
cuya salida es una palabra de 12 bits. El codificador,
subsiguientemente, representa en un mapa esta palabra de 12 bits por
medio de una consulta a la tabla en un patrón particular de
sonorización y un juego cuantificado de 3 valores de tono.
En este esquema, la asignación de 12 bits consta
de 3 bits de modos (que representan 8 posibles combinaciones de
decisiones U/V para los 3 cuadros en un supercuadro) y los 9 bits
restantes para valores de tono. El esquema emplea seis libros de
código de tono, cinco que tienen 9 bits (es decir, 512 entrada cada
uno) y siendo uno el cuantificador escalar como se indica en la
tabla 4; el libro código específico se determina de acuerdo con
patrones de bits de la palabra código de 3 bits que presenta el
patrón de sonorización cuantificado. Por lo tanto, el patrón de
sonorización U/V se codifica primero en una palabra código de tres
bits como se muestra en la tabla 4, el cual se usa, entonces, para
seleccionar uno de los 6 libros código mostrados. El juego ordenado
de tres valores de tono es cuantificado, entonces, por vector con
el libro código seleccionado para generar una palabra código de 9
bits que identifica el juego cuantificado de 3 valores de tono.
Observe que cuatro libros código se asignan a los supercuadros en el
modo VVV
(sonorizado-sonorizado-sonorizado),
que significa que los vectores de tono en los supercuadros del tipo
VVV están cada uno cuantificados por uno de entre las 2048 palabras
código. Si el número de cuadros sonorizados en el supercuadro no es
mayor de uno, la palabra código de tres bits se pone en 000 y la
distinción entre diferentes modos se determina dentro del libro
código de 9 bits. Observe que el último caso consta de los 4 modos
UUU, VUU, UVU y UUV (donde U indica un cuadro insonorizado y V un
cuadro sonorizado y los tres símbolos indican el estatus de
sonorización del juego ordenado de tres cuadros en un supercuadro).
En este caso los 9 bits disponibles son más que suficientes para
representar la información de modo así como el valor de tono ya que
hay 3 modos con 128 valores de tono y un modo sin valor de
tono.
Para mejorar la solidez en la transmisión de
errores, se calcula y transmite un bit de verificación de paridad
para los tres bits de modo (representando patrones de sonorización)
en el supercuadro, como se define en lo que antecede en la sección
3.3
La asignación de bit para cuantificar las
frecuencias espectrales de línea (LSF) se muestra en la tabla 5,
con los vectores originales LSF para los tres cuadros indicados por
l_{1} l_{2}, l_{3}. Para los modos UUU,
UUV, UVU y VUU, los vectores LSF de cuadros insonorizados se
cuantifican usando un libro código de 9 bits, mientras el vector
LSF del cuadro sonorizado se cuantifica con un cuantificador VQ
(MSVQ) multietapa de 24 bies basado en el enfoque descrito en
[8].
Los vectores LSF para los otros patrones U/V se
codifican usando el siguiente esquema de interpolación
progresiva-regresiva. Ese sistema funciona como
sigue: el vector LSF cuantificado del cuadro previo se indica por
\hat{\mathit{l}}_{p}. Primero los LSF del último cuadro en el
supercuadro actual, l_{3} se cuantifica directamente a
l_{3} usando el libro código de 9 bis para cuadros
insonorizados o el MSVQ de 24 bits para cuadros sonorizados. Valores
predichos de l_{1} y l_{2} se obtienen, entonces,
interpolando \hat{\mathit{l}}_{p} y \hat{\mathit{l}}_{3}
usando las ecuaciones siguientes:
\tilde{l}_{1}(j) =
a_{1}(j)\cdot\hat{l}_{p}(n) + [1 - a_{1}(j)]\cdot\hat{l}_{3}(j)
\hskip2,3cm
(4)\tilde{l}_{2}(j) =
a_{2}(j)\cdot\hat{l}_{p}(n) + [1 -
a_{2}(j)]\cdot\hat{l}_{3}(j)
\hskip0.5cmj = 1, ..., 10
Donde a_{1}(j) y a_{2}(j) son
los coeficientes de interpolación
El diseño de los libros códigos MSVQ
(cuantificación del vector multietapa) sigue el procedimiento
explicado en [8].
Los coeficientes se almacenan en un libro código
y los mejores coeficientes se seleccionan minimizando la medida de
distorsión:
(5)E =
\sum\limits^{10}_{j=1}w_{1}(j)|l_{1}(j) - \tilde{l}_{1}(j)|^{2} +
\sum\limits^{10}_{j=1}w_{2}(j)|l_{2}(j) -
\tilde{l}_{2}(j)|^{2}
Donde los coeficientes w_{i}(j) son los
mismos que en el estándar MELP de 2,4 kbps. Tras obtener los
coeficientes de mejor interpolación, el vector residual LSF para los
cuadros 1 y 2 se calculan mediante:
r_{1}(j) = l_{1}(j) -
\tilde{l}_{1}(j)
\hskip2,3cm
(6)r_{2}(j) =
l_{2}(j) - \tilde{l}_{2}(j)
\hskip0.5cmj = 1, ..., 10
El vector residual de 20 dimensiones R =
[r_{1}(1), r_{1}(2), ..., r_{1}(10),
r_{2}(2), ..., r_{2}(10)]
Se cuantifica, entonces, usando la cuantificación
ponderada de vector de multietapa.
\newpage
Los coeficientes de interpolación se obtuvieron
como sigue. Los coeficientes de interpolación óptimos para cada
supercuadro se calcularon minimizando el error cuadrático medio
ponderado entre l_{1} y l_{2} y de
l_{i1} y l_{i2} se que se puede demostrar se
traduce en:
a_{1}(j) =
\frac{w_{1}(j)[\tilde{l}_{3}(j) - l_{1}(j)]\cdot[\tilde{l}_{3}(j) -
\tilde{l}_{p}(j)]}{w_{1}(j)[\tilde{l}_{3}(j) -
\tilde{l}_{p}(j)]^{2}}
\hskip2,3cm
(7)a_{2}(j) =
\frac{w_{2}(j)[\tilde{l}_{3}(j) - l_{2}(j)]\cdot[\tilde{l}_{3}(j) -
\tilde{l}_{p}(j)]}{w_{2}(j)[\tilde{l}_{3}(j) -
\tilde{l}_{p}(j)]^{2}}
\hskip0.5cmj = 1, ..., 10
Cada entrada de la base de datos de formación
para el diseño del libro código emplea el vector de 40 dimensiones
(\tilde{\mathit{l}}_{p}, l_{1}, l_{2},
l_{3}) y el procedimiento de formación descrito en lo que
sigue.
La base de datos se indica como L =
{(\tilde{\mathit{l}}_{p,n}, l_{1,n}, l_{2,n},
\tilde{\mathit{l}}_{3,n}), n = 0, 2, ...,
N-1},
donde
(\tilde{l}_{p,n}, l_{1,n},
l_{2,n}, l_{3,n}) = [\tilde{l}_{p,n}(1), ..., \tilde{l}_{p,n}(10),
l_{1,n}(1), ..., l_{1,n}(10), l_{1,n}(1), ..., l_{1,n}(10),
\tilde{l}_{3,n}(1), ...,
\tilde{l}_{3,n}(10)]
es un vector de 40 dimensiones. El
libro código de salida de datos es, C = {(a_{1,m}, a_{a,m}), m =
0, ..., M - 1} donde es un vector de 20
dimensiones.
3.6.1 Dos procedimientos principales de formación
del libro código se describen en lo que sigue. Dado el libro
código, C = {(a_{1,m}, a_{2,m}), m = 0, ..., M' - 1}
cada entrada de la base de datos L_{n} =
(\tilde{\mathit{l}}_{p,n}, l_{1,n}, l_{2,n},
\tilde{\mathit{l}}_{3n})
está asociada con un centroide particular. La
ecuación de lo que sigue se usa para calcular la función error
entre la entrada (vector de entrada) y cada centroide en el libro
código. La entrada L_{n} está asociada con el centroide que da el
menor error. Esta etapa define una partición en los vectores de
entrada.
\varepsilon_{m} =
\sum\limits^{10}_{j=1}w_{1}(j)\{l_{1,n}(j) -
[a_{1,m}(j)\tilde{l}_{p,n}(j) + (1 -
a_{1,m}(j)\tilde{l}_{3,n}(j))]\}^{2}
+
(8)\sum\limits^{10}_{j=1}w_{2}(j)\{l_{2,n}(j)
- [a_{2,m}(j)\tilde{l}_{p,n}(j) + (1 -
a_{2,m}(j)\tilde{l}_{3,n}(j))]\}^{2}
3.6.2 Dada una partición particular, el libro
código se actualiza. Suponga N' entrada de daba de datos están
asociados con el centroide, entonces, el centroide se actualiza
usando la ecuación siguiente:
(9)a_{1,m}(j)
=
\frac{\sum\limits^{N'-1}_{n=0}w_{1,n}(j)[\tilde{l}_{3,n}(j)
- l_{1,n}(j)]\cdot[\tilde{l}_{3,n}(j) -
\tilde{l}_{p,n}(j)]}{\sum\limits^{N'-
1}_{n=0}w_{1,n}(j)[\tilde{l}_{3,n}(j) -
\tilde{l}_{p,n}(j)]^{2}}
a_{2,m}(j) =
\frac{\sum\limits^{N'-1}_{n=0}w_{2,n}(j)[\tilde{l}_{3,n}(j)
- l_{2,n}(j)]\cdot[\tilde{l}_{3,n}(j) -
\tilde{l}_{p,n}(j)]}{\sum\limits^{N'-
1}_{n=0}w_{2,n}(j)[\tilde{l}_{3,n}(j) -
\tilde{l}_{p,n}(j)]^{2}}
El libro código de coeficientes de interpolación
se forma y prueba para varios tamaños de libro código. Un libro
código con 16 entradas se encontró ser muy eficiente. El
procedimiento de lo que antecede se comprenderá fácilmente por
ingenieros familiares con los conceptos generales de cuantificación
de vector y diseño de libro código como se describe en [7].
\newpage
En el codificador de 1,2 kbps, se calcularos dos
parámetros de ganancia por cuadro, con 6 ganancias por supercuadro.
Los 6 parámetros de ganancia están cuantificados por vector usando
un cuantificador de vector de 10 bits con un criterio MSE definió en
el dominio logarítmico.
La información de sonorización para la menor
banda a partir del total de 5 bandas se determina desde la decisión
U/V. Las decisiones de sonorización de las 4 bandas restante se
emplean para cuadros sonorizados. las decisiones de sonorización
binarias (1 para sonorizado y 0 para insonorizado) de las 4 bandas
se cuantifican usando el libro código de 2bits mostrados en la tabla
2. Este procedimiento se traduce en que se usen dos bits para
sonorización en cada cuadro sonorizado. La asignación de bit
requerida en diferentes modos de codificación para cuantificación
sonorización de banda pasante se muestra en la tabla 6.
El vector magnitud de Fourier se calcula
únicamente para cuadros sonorizados. El procedimiento de
cuantificación para magnitudes de Fourier se resume en la tabla 7.
Los vectores de magnitud de Fourier para los tres cuadros en un
supercuadro se indican como f_{i}, i= 1,2, 3. Indicado por
magnitud de Fourier es el vector músculo del último cuadro en el
supercuadro previo, \tilde{f}_{i} indica el vector
cuantificado f_{i} y Q(.) indica la función cuantificadores para
el vector magnitud de Fourier al usar el mismo libro código de 8
bits como se usa dentro del estándar MELP. Los vectores magnitud de
Fourier cuantificados para los tres cuadros en un supercuadro se
obtienen como se muestra en la tabla 7.
El codificador de 1,2 kbps usa un 1 bit por
supercuadro para la cuantificación de la marca aperiódica. En el
estándar MELP de 2,4 kbps, la marca aperiódica requiere un bit por
cuadro, lo que es tres bits por supercuadro. La compresión a un bit
por supercuadro se obtiene usando el procedimiento de cuantificación
mostrado en la tabla 8. En la tabla, "J" y "-" indican
respectivamente los estados de marca aperiódica de juego y de no
juego.
Junto al bit de paridad, se aplican técnicas
adicionales de protección en modo error a supercuadros empleando
bits de repuesto que están disponible en todos los supercuadros,
salvo en los supercuadros en el modo VVV. El codificador 1,2 kbps
utiliza dos bits para la cuantificación de la sonorización de banda
pasante para cada cuadro sonorizado. De aquí que, en supercuadros
que tienen un cuadro insonorizado, dos bits de sonorización de
banda pasante son de repuesto y se pueden usar para modo protección.
En supercuadros que tiene dos cuadros insonorizados, cuatro bits se
pueden usar para modo protección. Además, 4 bits de cuantificación
LSF se usan para modo protección en los modos UUU y VVU. La tabla 9
muestra cómo se usan estos bits en modo protección s. El modo
protección implica protección del estado de codificación, que se
describió en la sección 1.1
En el modo UUU, lo 8 primeros MSB del índice de
ganancia se dividen en dos grupos de 4 bits y cada grupo está
protegido por el código Hamming (8,4). Los 2 bits restantes del
índice de ganancia están protegidos por el código Hamming (7,4).
Observe que el código Hamming (7,4) corrige sencillos errores de
bit, mientras que el código (8,4) corrige sencillos errores de bit
y además, detecta dobles errores de bit. Los bits LSF para cada
cuadro en los supercuadros UUU están protegidos por una verificación
cíclica redundante (CRC) con un código CRC (13,9) que detecta
errores de bit sencillos y dobles.
Dentro del decodificador, los bits recibidos se
desagrupan del canal y se montan en palabras código de parámetro.
Como los procedimientos de decodificación para la mayoría de los
parámetros depende del modo (el patrón U/V), los 12 bits asignados
al tono y a las decisiones U/V se decodifican primero. Para el
patrón 000 de bits, en el libro código de tres bits, la palabra
código de 9 bits especifica uno de los modos UUU, UUV, UVU y VUU.
Si el código del libro código de 9 bits es todo ceros, o tiene un
juego de bit, se usa el modo UUU. Si el código tiene dos juegos de
bits, o se especifica un índice no empleado por un tono, se indica
un borrado de cuadro.
Tras decodificar el patrón U/V, la información
del modo resultante se comprueba usando el bit de paridad y los
bits de protección de modo. Si se detecta un error, se realiza un
algoritmo de corrección de modo. El algoritmo intenta conectar el
modo error usando los bits de paridad y los bits de modo protección.
En el caso de que se detecte un error incorregible se aplican
diferentes procedimientos de decodificación para cada par de acuerdo
con los patrones del modo error. Además, si se encuentra un error
de paridad, se ajusta una marca se suavización de par. Los
procedimientos de corrección se describen en la Tabla 10.
En el modo UUU, suponiendo que no se hubieran
detectado errores en el modo información, dos (8, 4) códigos
Hamming representan los parámetros de ganancia se decodifican para
corregir sencillos errores de bit y detectar errores dobles. Si se
detecta un error incorregible, se indica un cuadro de borrado. En
caso contrario el código Hamming (7,4) para ganancia y los códigos
CRC (13,9) (verificación cíclica de la redundancia) se decodifican
para corregir sencillos errores y detectar errores sencillos y
dobles, respectivamente. Se encuentra un error en los códigos CRC
(13,9), los LSF incorrectos se sustituyen repitiendo LSF previos o
interpolando entre el correcto LSF vecino.
Si se detecta un cuadro de borrado en el
supercuadro actual por el decodificador Hamming, o se señala
directamente un borrado desde el canal, se implanta un mecanismo de
repetición de cuadro. Todos los parámetros del supercuadro actual
se sustituyen con los parámetros desde el último cuadro del
supercuadro previo.
Para un supercuadro en el cual no se detecta un
borrado, los parámetros restantes se decodifican. Si es necesario
la suavización, el par post suavización se obtiene por:
\hskip6,5cm x = 0.5\hat{x} +
0.5x' \hskip6,5cm
(10)
donde \hat{x} x y x'
representan el par decodificado del cuadro actual y el par
correspondientes del cuadro previo,
respectivamente.
La decodificación de tono se realiza como se
muestra en la tabla 4. Para cuadros insonorizados, el valor de tono
se establece en 50 muestras.
Los LSF están decodificados como se describe en
la sección 4.4 y Tabla 5. Se comprueba el orden ascendente de los
LSF y la separación mínima.
El índice de ganancia se usa para recuperar una
palabra código que contiene seis parámetros de ganancia del libro
código de 9 bits de ganancia VQ de 10 Bits.
En los cuadros insonorizados, todas a las
intensidades sonorización de banda pasante se ponen a cero. En los
cuadros sonorizados, Vbp1 se pone a 1 y los patrones de sonorización
restantes se decodifican como se muestra en la tabla 2.
Las magnitudes de Fourier de cuadros
insonorizados se ponen igual a 1. Para el último cuadro sonorizado
del supercuadro actual, las magnitudes de Fourier se decodifican
directamente. Las magnitudes de Fourier de otros cuadros
sonorizados se generan por repetición de interpolación lineal como
se muestra en la tabla 7.
Las marcas aperiódicas se obtienen de la nueva
marca como se muestra en la tabla 8, las fluctuaciones se
establecen en el 25% si la marca aperiódica es 1, y en caso
contrario se ponen al 0%.
La estructura básica del decodificador es la
misma que en el estándar MELP salvo en que un nuevo procedimiento
de síntesis de armónicos se introduce para generar la señal de
excitación para caracterizada porque ciclo de tono. En el algoritmo
MELP de 2,4 kbps original, la excitación mixta se genera como la
suma del pulso filtrado y excitaciones de ruido. La excitación de
pulso se calcula usando una transformada de Fourier discreta
inversa (DFT) de un período de un tono en longitud y la excitación
de ruido se genera en el dominio de tiempos. En el nuevo al de
síntesis de armónicos, la excitación mixta se genera completamente
en el dominio de frecuencias y, entonces, una operación de
transformada de Fourier discreta inversa se realiza para convertirla
en el dominio de tiempos. Esto evita la necesidad de filtrado de
banda pasante del pulso y excitaciones de ruido, reduciendo de este
modo la complejidad del decodificador.
En el nuevo procedimiento de síntesis de
armónicos, la excitación en el dominio de frecuencias se genera
para cada ciclo de tono basada en la frecuencia de corte y en el
vector de magnitud de Fourier A_{l}, l=1, 2..., L. La frecuencia
de corte se obtiene a partir de los parámetros sonorización de banda
pasante como se describió previamente y, entonces, se interpola
para cada ciclo de tono. Las magnitudes de Fourier se interpolan
del mismo modo que en el estándar MELP.
Con la longitud de tono indicado como N, la
frecuencia fundamental correspondientes de describe mediante:
f_{o} = 2\pi/N . La longitud del vector magnitud de Fourier se
da, entonces, por: L=N/2. Dos frecuencias de transición F_{H} y
F_{L} se determinan a partir de la frecuencia de corte F empleando
un algoritmo obtenido empíricamente, como sigue:
Estas frecuencias de transición son equivalentes
a dos índices VH y VL componentes de frecuencia. Un modelo
sonorizados se usa para todas las muestras de frecuencia por debajo
de VL, un modelo mixto se usa para las muestras de frecuencia entre
VL y VH, o un modelo insonorizado se usa para mueras de frecuencia
por encima de VH. Para definir el modo mixto, un factor g de
ganancia se selecciona con el valor dependiendo de la frecuencia de
corte (a mayor frecuencia de corte F, menor factor de ganancia).
magnitud y la fase datos
componentes de frecuencia de la excitación se determina como
sigue:
Donde l es un índice que identifica una
componente particular de frecuencia del intervalo de frecuencia
IDFT y \phi_{o} es una constante seleccionada a fin de evitar
un pulso de tono en el límite del ciclo de tono. La fase
\phi_{RND}(l) es un número distribuido aleatoriamente
entre -2\pi y 2\pi independientemente generado para cada valor
de l.
Con otras palabras, el espectro de la señal de
excitación mixta en cada período de tono está modelizado al
considerar tres regiones del espectro, como se determina por la
frecuencia de corte, que determina un intervalo de transición desde
F_{L} hasta F_{H}. En la región baja, de 0 a F_{L}, las
magnitudes de Fourier determinan directamente el espectro. En la
región alta, por encima de F_{H}, la magnitud de Fourier están
escaladas hacia abajo en el factor g de ganancia. En la región de
transición desde F_{L} hasta F_{H}, las magnitud de Fourier
están escaladas por un factor de ponderación que cae linealmente
desde la unidad hasta g a lo largo de la región de transición. Una
fase de que aumenta linealmente se usa para la región inferior, y
fases aleatorias se usan para la región alta. En la región de
transición, la fase es la suma de la fase lineal y de una fase
ponderada aleatoria con el peso aumentando linealmente desde 0
hasta 1 a lo largo por toda la región de transición. Las muestras de
frecuencia de la excitación mixta son, entonces, cubiertas en el
dominio de tiempos usando una transformada de Fourier discreta
inversa.
En algunas aplicaciones, es importante permitir
la interoperación entre dos diferentes esquemas de codificación de
habla. En particular, es útil permitir la interoperabilidad entre
codificador MELP a 2.400 bps y un codificador de supercuadro de
1.200 bps. La operación general de un transcodificador se ilustra
en los diagramas de bloque de las figuras 5A y 5B. En el
transcodificador 70 de conversión hacia arriba de la figura 5A, se
introduce 72 habla a un vocoder 74 de 1.200 bps cuya salida es una
corriente de bits codificada a 1.200 bps 76 que ese convierte por
el "transcodificador ascendente" 78 en una corriente 80 de bits
a 2.400 bps en una forma permitiendo que sea decodificada por un
decodificador 82 MELP de 2.400 bps, que da como salida habla 84
sintetizada. Recíprocamente, en el transcodificador 90 de
conversión descendente de la figura 3B, habla se introduce 92 a un
codificador 94 1,2 kbps MELP de 2.400 bps, cuyas salidas a corriente
96 de bits conjunto de asiento 2.400 bps en un "Transcodificador
descendente" 98, que convierte la corriente de datos paramétricos
en una corriente 1000 de bits a 1200 bps que se puede descodificar
por el decodificador 102 de 1.200 bps, que da como salida habla 104
sintetizada. En comunicación sonora completamente duplexada (con
vías) tanto el transcodificador ascendente como el transcodificador
descendente necesitan mejorar su interoperabilidad.
Un modo sencillo de implantar un transcodificador
ascendente es decodificar la corriente de bits de 1.200 bps para
obtener una representación digital en bruto de la señal recuperada
de habla que se vuelve a recodificar con un codificador de 2.400
bps. Análogamente, un procedimiento sencillo para implantar un
transcodificador descendente es decodificar la corriente de bits de
2.400 bps con un decodificador de .2400 bps para obtener una
representación digital en bruto de la señal de habla recuperada que
recodifica, entonces, con un codificador 1200 bps. Este enfoque
para implantar transcodificadores ascendentes y descendentes, se
corresponde con lo que se denomina codificación "tandem" y
tiene las ventajas de que la calidad de voz está sustancialmente
degradada y la complejidad del transcodificador es innecesariamente
alta. La eficacia del transcodificador se mejora con el siguiente
procedimiento para transcodificador que reduce la complejidad
mientras evita mucha calidad de degradación asociada con la
codificación en tandem.
En el transcodificador descendente, tras la
sincronización y la corrección de error de canal, se realiza la
decodificación, los bits que representa cada par se extraen
separadamente a partir de la corriente de bits para cada una de
tres cuadros consecutivos (que constituyen un supercuadro) y el
juego de información de parámetro se guarda en un mediante de par.
Cada juego de parámetros consta de unos valores de un parámetro
dato para los tres cuadros consecutivos. Los mismos procedimientos
utilizados para cuantificar los parámetros supercuadro se aplican
aquí a cada juego de parámetro para registrarlos en la corriente de
bits de baja velocidad. Por ejemplo, el tono y la insonorizado para
cada uno de los 3 supercuadros en un supercuadro se aplica al tono
al esquema de cuantificación U/V descrito en la sección 3.2. En
este caso, el juego de parámetro consta de 3 valores de tono cada
uno representado con 7 bits y 3 decisiones U/V dada autorizada una
por 1 bit, dando un total de 24 bis.
Esto se extrae de la corriente de bits de 2.400
bps y la operación de registrado convierte éste en 12 bits para
representar el paso y la sonorización para el supercuadro. De este
modo, el transcodificador descendente no debe realizar las
funciones de análisis MELP y únicamente realiza la cuantificación
necesaria para el supercuadro. Observe que el bit de comprobación
de paridad, el bit de sincronización, y los bits de corrección de
error se deben regenerar como parte de la operación de
transcodificación descendente.
En el caso de un transcodificador la corriente de
bits de entrada de 1.2000 bps contiene parámetros cuantificados
para cada supercuadro. Tras la sincronización y decodificación de
corrección de errores, el trsanscodificador ascendente extrae los
bits que representan cada par para el supercuadro que se representan
en un mapa (registran) en un gran número de bits que especifica por
separado los valores correspondientes de este parámetro para cada
uno de los tres cuadros en el supercuadro actual. El procedimiento
que realiza esta representación en un mapa, que es el parámetro
dependiente, se describe en lo que sigue. Una vez que todos los
parámetros de un cuadro del supercuadro se han determinado, se
genera la secuencia de bits que representan tres cuadros de habla.
A partir de a secuencia de datos, se genera
la corriente de bits, tras la inserción del bit de sincronización, bit de paridad y codificación de corrección de error.
la corriente de bits, tras la inserción del bit de sincronización, bit de paridad y codificación de corrección de error.
Lo que sigue es una descripción del enfoque
general para representar en mapa (decodificación) los bits de
parámetro en bits de parámetro separado para cada uno de los tres
cuadros. Las tablas de cuantificación y libros código usan el
decodificador de 1200 bps para cada parámetro como se describió
previamente. La operación de decodificación toma una palabra binaria
que representa uno o más parámetros y da como información de salida
un valor para cada parámetro, por ejemplo, un valor LSF particular o
valor tono como se almacena en un libro código. Los valores de
parámetro están recuantificados, es decir, aplicados como entrada a
una nueva operación de cuantificación empleando las tablas de
cuantificación del codificador MELP de 2.400 bps. Esta
cuantificación lleva a una nueva palabra binaria que
repre-
senta los valores de parámetro en una forma adecuada para decodificarse por el decodificador MELP de 2.400 bps.
senta los valores de parámetro en una forma adecuada para decodificarse por el decodificador MELP de 2.400 bps.
Como un ejemplo para ilustrar el uso de
recuantificación, a partir de la corriente de bits de 1.200 bps,
los bits que contienen información de tono y de sonorización, para
un supercuadro particular son extraídos de codificados en 3
decisiones U/V de sonorización y 3 valores de tono para los 3
cuadros en el supercuadro; las tres decisiones de sonorización son
binarias y son utilizables directamente como los bits de
sonorización para la corriente de bits de MELP de 2.400 bps (un bit
para cada 3 cuadros). Los 3 valores de paso se recuantifican
aplicando cada uno al cuantificador escalar de tono MELP obteniendo
una palabra de 7 bits para cada valor de paso. Numerosas
alternativas de implantación de recuantificación de tono que siguen
el parámetro inventivo descrito se pueden diseñar por una persona
experta en la técnica.
Una alteración específica se puede crear haciendo
pasa recuantifcación de tono cuando únicamente un único cuadro del
supercuadro está sonorizado, puesto que en este caso el valor de
tono para el cuadro sonorizado ya está especificado en forma
cuantificada consistente con el formato del vocoder MELP.
Análogamente, para las magnitudes de Fourier, la recuantificación no
es necesaria para el último cuadro de un supercuadro puesto que ya
se ha cuantificado escalar en el formato MELP. Sin embargo, las
magnitudes de Fourier intercaladas para los otros dos cuadros del
supercuadro necesitan ser recuantificadas por el esquema de
cuantificación MELP. Las fluctuaciones, o marca aperiódica, se
obtiene sencillamente por consulta en la tabla usando las últimas
dos columnas de la tabla 8.
La figura 6 muestra un terminal de vocoder
digital que contiene un codificador y decodificador que opera de
acuerdo con los procedimientos y aparatos de codificación de voz de
forma que invención. El micrófono MIC 112 es un transductor de
habla de entrada que proporciona una señal 114 analógica de salida
que se muestrea y digitaliza por un convertidor (A/D) 116 Analógico
a Digital. El habla 118 muestreada y digitalizada resultante se
procesa digitalmente y se comprime dentro de un chip 120
DSP/controlador, por las operaciones de codificación de voz
realizado en el bloque 122 de Código, que se implanta en programa
informático dentro el DSP/controlador, de acuerdo con la
invención.
El procesador 120 de señal digital(DSP)
está ejemplificado por el circuito integrado Texas Instruments
TMC320
C5416, que contiene memoria de acceso aleatorio (RAM) que proporciona suficiente espacio de memoria intermedia para almacenar datos de habla y datos intermedios y parámetros; el circuito DSP también contiene memoria sólo de lectura (ROM) para contener las instrucciones de programa, como se describió previamente, para implantar operaciones
de vocoder. Un DSP es muy adecuado para realizar operaciones de vocoder descritas en esta invención. La corriente de bits resultante a partir de la operación 124 de codificación es una corriente de bits de baja velocidad, corriente de datos Tx. Los datos 124 Tx entran en una Unidad 126 de Interfaz de canal a ser transmitido sobre un canal 128.
C5416, que contiene memoria de acceso aleatorio (RAM) que proporciona suficiente espacio de memoria intermedia para almacenar datos de habla y datos intermedios y parámetros; el circuito DSP también contiene memoria sólo de lectura (ROM) para contener las instrucciones de programa, como se describió previamente, para implantar operaciones
de vocoder. Un DSP es muy adecuado para realizar operaciones de vocoder descritas en esta invención. La corriente de bits resultante a partir de la operación 124 de codificación es una corriente de bits de baja velocidad, corriente de datos Tx. Los datos 124 Tx entran en una Unidad 126 de Interfaz de canal a ser transmitido sobre un canal 128.
En el lado de recepción, datos procedentes de un
canal 128 se introducen en una Unidad Interfaz de canal 126 que da
como salida una corriente 130 de bits Rx. Los datos 130 Rx se
aplican a un juego de operaciones de decodificación de voz, dentro
del bloque de decodificación: las operaciones se han descrito
previamente. El habla 134 resultante muestreada y digitalizada, se
aplica a un convertidor (A/D) 136 Digital a Analógico. Las salidas
D/A 138 reconstruyeron habla 138 analógica. El habla 138 analógica
reconstruida se aplica a un locutor 140, o a otro transductor de
audio que reproduce el sonido reconstruido.
La figura 6 es una representación de una
configuración de hardware sobre el cual los principios de la
invención se pueden poner en práctica. Los principios de la
invención se pueden poner en práctica de diversas formas de
implantación vocoder que pueden soportar las funciones de procesado
descritas en la presente memoria para los datos de habla de
codificación y decodificación. Específicamente lo siguiente son
algunos pocos de las muchas variaciones incluidas dentro del ámbito
de la implantación de la invención:
(a) Usando unidades de interfaz de canal que
contengan un módem de datos de banda ancha para usar cuando el
recorrido de transmisión es una línea convencional de teléfono.
(b) Usando señales digitales encriptadas para
transmitir y descritas para recibirse vía un dispositivo adecuado
de encriptado para proporcionar transmisión segura. En este caso a
la unidad de encriptado también puede estar contenida en la unidad
e interfaz de canal.
(c) Usando una unidad de canal de interfaz que
contiene un modulador de radio frecuencia y un demodulador para la
transmisión de señal inalámbrica por ondas de radio para casos en
los que el canal de transmisión es un enlace de radio
inalámbrica.
(d) Usando una unidad de interfaz de canal que
contiene equipo de multiplexado y demultiplexado para compartir
canal de transmisión con múltiples canales de voz y/o de datos. En
este caso se conectarían múltiples señales de Tx y Rx a la unidad
de interfaz de canal.
(e) Emplear componentes discretos, o una mezcla
de elementos discretos y elementos de procesado, para sustituir las
operaciones de procesado de instrucciones del DSP/controlador.
Ejemplos que se podrían emplear incluyen conjuntos ordenados de
puertas programables (PGA). Es de destacar que la invención se
puede reducir completamente en la práctica en hardware, sin la
necesidad de un elemento de procesado.
El hardware para soportar los principios de la
invención únicamente necesitan soportar las operaciones de datos
descritas. Sin embargo, uso de un DSP/chips de procesador son la
mayoría de los circuitos más comunes para implantar codificadores
de habla o vocoders en el estado actual de la técnica.
Aunque la descripción de lo que antecede contiene
muchas especificaciones, estas no se deberían construir como
limitativas del ámbito de la invención sino que simplemente
proporcionan ilustraciones de algunas de las realizaciones
actualmente preferidas de esta invención. De este modo, el ámbito de
esta invención debería estar determinado por las reivindicaciones
anejadas y sus equivalentes legales.
Parámetros | Bits para cuantificar los tres cuadros (540 muestras) | ||||||
2,4 kbps | 2,4 kbps | 1,2 kbps | 1,2 kbps | 1,2 kbps | 1,2 kbps | 1,2 kbps | |
sonorizado | insonorizado | estado 1 | estado 2 | estado 3 | estado 4 | estado 5 | |
Tono \textamp decisiones U/V globales | 7*3 | 7*3 | 12 | 12 | 12 | 12 | 12 |
Paridad | 0 | 0 | 1 | 1 | 1 | 1 | 1 |
LSF | 25*3 | 25*3 | 42 | 42 | 39 | 42 | 27 |
Ganancia | 8*3 | 8*3 | 10 | 10 | 10 | 10 | 10 |
Sonorización de banda pasante | 4*3 | 0 | 6 | 4 | 4 | 2 | 0 |
Magnitudes de Fourier | 8*3 | 0 | 8 | 8 | 8 | 8 | 0 |
Fluctuaciones | 1*3 | 0 | 1 | 1 | 1 | 1 | 0 |
Sincronización | 1*3 | 1*3 | 1 | 1 | 1 | 1 | 1 |
Protección de errores | 0 | 13*3 | 0 | 2 | 5 | 4 | 30 |
Total | 162 | 162 | 81 | 81 | 81 | 81 | 81 |
* Observación: | |||||||
1,2 kbps estado 1: todos los cuadros están sonorizados. | |||||||
1,2 kbps estado 2: uno de los dos primeros cuadros está insonorizado; el resto de cuadros están sonorizados. | |||||||
1,2 kbps estado 3: los cuadros 1º y 2.º están sonorizados. El 3.er cuadro está insonorizado. | |||||||
1,2 kbps estado 4: uno de lo que sigue tres cuadros está sonorizado, los otros dos cuadros están insonorizados. | |||||||
1,2 kbps estado 5: Los tres cuadros están insonorizados. |
\vskip1.000000\baselineskip
Palabra código | 0000 | 1000 | 1100 | 1111 |
0000 | 1000 | 1100 | 0111 | |
0001 | 1001 | 1011 | ||
0010 | 1010 | 1101 | ||
0011 | 1110 | |||
0100 | 1111 | |||
0101 | ||||
0110 | ||||
Frecuencia de corte | 500 Hz | 1.000 Hz | 2.000 Hz | 4.000 Hz |
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
Patrón de U/V | LSF f_{1} | LSF f_{2} | LSF f_{3} | Interpolación | Residual de | Total |
l_{1} y l_{2} | ||||||
UUU | 9 | 9 | 9 | 0 | 0 | 27 |
VUU | 8+6+5+5 | 9 | 9 | 0 | 0 | 42 |
UVU | 9 | 8+6+5+5 | 9 | 0 | 0 | 42 |
UUV | ||||||
UVV | 0 | 0 | 8+6+5+5 | 4 | 8+6 | 42 |
VUV | ||||||
VVV | 0 | 0 | 9 | 4 | 8+6+5+5 | 39 |
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
Patrón de decisiones U/V | VVV | VVU, VUV, UVV | VUU, UVU, UUV | UUU |
Bits para información de | 6 | 4 | 2 | 0 |
sonorización de banda | ||||
pasante |
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
Patrón de U/V para el supercuadro actual | Decisión U/V para el último cuadro del supercuadro previo | |
U | V | |
UUU | N/A | |
VUU | ||
UVU | ||
UUV | ||
UVV | ||
VUV | ||
VVU | ||
VVV |
Patrón de U/V | Procedimiento de cuantificación | Patrones de cuantificación | |
Nueva marca = 0 | Nueva marca = 1 | ||
UUU | N/A | JJJ | JJJ |
UUV | Si el cuadro sonorizado tiene marca aperiódica, | JJ- | JJJ |
configurar nueva marca | |||
UVU | J-J | JJJ | |
VUU | -JJ | JJJ | |
UVV | Si el segundo cuadro sonorizado tiene marca | J- - | JJJ |
aperiódica, configurar nueva marca | |||
VVU | - -J | JJJ | |
VUV | N/A | -J- | JJJ |
VVV | Si >1 cuadro tiene marca aperiódica, configurar | - - - | JJJ |
nueva marca |
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
Patrón U/V | Libro de código de 3-b de | Patrón de bit de | Patrón de bit de | Patrón de bit de LSF |
cuantificación para tono | sonorización 1 de | sonorización 2 de | ||
y decisiones U/V | banda pasante | banda pasante | ||
UUU | 000 | 00 | 00 | 0000 |
UUV | 00 | 01 | - | |
UVU | 00 | 10 | - | |
VUU | 00 | 11 | - | |
VVU | 001 | 01 | - | 0101 |
VUV | 010 | 10 | - | - |
UVV | 100 | 11 | - | - |
VVV | 011, 101, 110, 111 | - | - | - |
Claims (23)
1. Un aparato (10) de compresión de voz, que
comprende:
una memoria (14) intermedia de supercuadro para
recibir cuadros múltiples de datos (12) de voz;
un módulo de análisis de codificador basado en
cuadros, para analizar características de datos de voz dentro de
cuadros contenidos en el supercuadro para producir un juego asociado
de parámetros de datos de voz; y
un codificador de supercuadro para recibir
parámetros de datos de voz desde el módulo de análisis para un
grupo de cuadros contenidos dentro del memoria intermedia (14) de
supercuadro, para reducir mediante datos de análisis para el grupo
de cuadros y para cuantificar y codificar los mencionados datos al
interior y saliendo corriente de datos para la transmisión;
caracterizado porque
el mencionado codificador de supercuadro que
comprende un suavizador (24) de tono en el cual cálculos de
suavización de tono se basan en un clasificador de cuadro
comienzo/desplazamiento.
2. Un aparato (10) de compresión de voz como se
cita en la reivindicación 1, en el cual el módulo de análisis es
capaz de recibir parámetros de datos de voz seleccionados de entre
el grupo de codificadores de voz consistente en codificadores
predictivos de línea, codificadores de predicción lineal de
excitación mixta, codificadores armónicos, y codificadores de
excitación multibanda.
3. Un aparato (10) de compresión de voz como se
cita en la reivindicación 1, en el cual el mencionado codificador
de supercuadro incluye al menos dos módulos de procesado paramétrico
seleccionado de entre el grupo de módulos paramétricos de procesado
que constan de suavizadores (24) de tono, suavizadores (30) de
sonorización de banda pasante, cuantificadores (34) predictivos
lineales, cuantificadores (36) de fluctuación y cuantificadores
(38) de magnitud de Fourier.
4. Un aparato (12) de compresión de voz como se
cita en una de las reivindicaciones 1 a 3, en el cual el mencionado
codificador de supercuadro incluye cuantificador (28) de vector en
el cual los valores de tono dentro de un supercuadro están
cuantificados por vector con una medida de la distorsión del
mencionado cuantificador (28) por vector siendo responsable de los
errores de tono.
5. Un aparato (10) de compresión de voz como se
cita en una cualquiera de las reivindicaciones 1 a 3, en el cual el
mencionado codificador de supercuadro incluye cuantificador (28) de
vector en el cual los valores de tono dentro de un supercuadro
están cuantificados por vector con una medida de la distorsión del
mencionado cuantificador (28) por vector siendo responsable de los
errores diferenciales de tono, así como los errores de tono.
6. Un aparato (10) de compresión de voz como se
cita en una cualquiera de las reivindicaciones 1 a 3, en el cual el
mencionado codificador de supercuadro incluye cuantificador de
parámetros de predicción lineal, en el cual la cuantificación se
realiza con una interpolación, basada en libro código, de
parámetros de predicción lineal que emplea coeficientes de
interpolación diferente para cada parámetro de predicción lineal, y
en el cual el mencionado cuantificador opera en modo de ciclo
cerrado para minimizar el error total sobre un número de
cuadros.
7. Un aparato (10) de compresión de voz como se
cita en la reivindicación reivindicaciones 6, en el cual el
mencionado cuantificador es capaz de realizar una cuantificación,
LSF, de frecuencia espectral de línea, usando la mencionada
interpolación basada en libro código.
8. Un aparato (10) de compresión de voz como se
cita en la reivindicación reivindicaciones 7, en el cual el
mencionado libro código se crea por medio de una base de datos de
formación operada sobre un procedimiento de formación basado en
centroide.
9. Un aparato (10) de compresión de voz como se
cita en la reivindicación reivindicaciones 1, en el cual el
mencionado suavizador (24) de tono se adapta, además, para calcular
la trayectoria de tono usando una pluralidad de decisiones de
sonorización.
10. Un aparato (10) de compresión de voz como se
cita en la reivindicación 9, en el cual el mencionado suavizador de
tono clasifica cuadros en cuadros comienzo y desplazamiento sobre al
menos cuatro parámetros de característica de forma de onda
seleccionados de entre el grupo de parámetros de característica de
forma de onda consistente en energía, velocidad de cruce con el eje
cero, pico de resonancia, coeficiente de correlación máxima de
velocidad de entrada, coeficiente de correlación máximo de 500 Hz de
habla filtrado de pasa baja, energía de habla filtrada de pasa baja
y energía de habla filtrada de pasa alta.
11. Un aparato (10) de compresión de voz como se
cita en una cualquiera de las reivindicaciones 1 a 10, en el cual
el mencionado módulo de análisis de codificador basado en cuadro usa
una Predicción Lineal de excitación mixta, MELP, algoritmo de
análisis, y el mencionado codificador de supercuadro incluye un
suavizador (30) de sonorización de banda pasante para representar en
mapas decisiones de sonorización multibanda para cada cuadro en una
frecuencia de corte sencilla para este cuadro, en el cual la
mencionada frecuencia de corte tiene un valor de una lista
predeterminada de valores permitidos.
12. Un aparato (10) de compresión de voz como se
cita en la reivindicación 11, en el cual el mencionado suavizador
(30) de sonorización de banda pasante realiza suavización
modificando la frecuencia de corte de un cuadro como una función de
las frecuencias de corte de cuadros de la vecindad y la energía
media de cuadro.
13. Un aparato (10) de compresión de voz como se
cita en la reivindicación 1, que comprende además, medios para
comprimir bits de marca aperiodico para cada cuadro en un
supercuadro en un único bit por supercuadro, que bit se crea basado
en la distribución de cuadros sonorizados e insonorizados dentro del
supercuadro.
14. Un aparato (10) de compresión de voz como se
cita en la reivindicación 1, en el cual el mencionado codificador
de supercuadro incluye una pluralidad de cuantificadores (28, 32,
34, 36, 38) para codificar los datos paramétricos en un juego de
bits, en el cual al menos uno de los mencionados cuantificadores
emplea cuantificación por vector para representar coeficientes de
interpolación.
15. Un aparato (10) de compresión de voz como se
cita en la reivindicación 1, en el cual un supercuadro se
categoriza en uno de entre una pluralidad de estados de codificación
basados en la combinación de cuadros sonorizados e insonorizados
dentro del supercuadro, y en el cual cada uno de los mencionados
estados de codificación está asociado con una asignación de bit
diferente a usarse con el supercuadro.
16. Un aparato (10) de compresión de voz como se
cita en la reivindicación 1, en el mencionado módulo de análisis de
codificador basado en cuadros usa un algoritmo de análisis, MELP, de
Predicción Lineal de Excitación Mixta, y el mencionado suavizador
(24) de tono está adaptada para determinar el tono y decisiones de
U/V para cada cuadro del supercuadro y extrae parámetro necesarios
para la clasificación de cuadro en cuadros comienzo y
desplazamiento, el mencionado codificador del supercuadro que
comprende, además:
un suavizador (30) de sonorización de banda
pasante para determinar intensidades de sonorización de banda
pasante para los cuadros dentro del supercuadro y para determinar
frecuencias de corte para cada cuadro, y
un cuantificador de parámetro y codificador para
cuantificar y parámetros de sonorización de codificación recibidos
a partir del módulo de análisis, el mencionado suavizador (24) de
tono, y el mencionado suavizador (30) de sonorización de banda
pasante en un juego de bits y codificar los mencionados bits en una
corriente digital de bits saliente para transmisión.
17. Un aparato (10) de compresión de voz como se
cita en una cualquiera de las reivindicaciones 1 a 16, que
comprende, además:
un decodificador (54) de supercuadro para recibir
y decodificar una corriente digital de bits codificada con datos de
voz de supercuadro en parámetros cuantificados basados en cuadros;
y
un sintetizador decodificador basado en cuadro
para recibir los parámetros cuantificado para cada cuadro (62, 64,
66) y decodificar los parámetros cuantificados en una salida (68) de
voz sintetizada, en su interior
el mencionado aparato (10) de compresión de voz,
el mencionado decodificador (54) de supercuadro y el mencionado
sintetizador decodificador basado en cuadro se comprimen en un
aparato (110) vocoder.
18. Un aparato (50) decodificador de voz, que
comprende:
un decodificador (54) de supercuadro para recibir
y decodificar una corriente entrante digital de bits como una serie
de supercuadros y de codificar cuantificación inversa los
mencionados supercuadros en parámetros de voz de basados en
cuadros; y
un decodificador basado en cuadro para recibir
los mencionados parámetros cuantificados de voz de basados en
cuadros y combinar los modos parámetros cuantificados de voz basados
en cuadro en una señal sintetizada de salida de voz;
caracterizado porque
el mencionado decodificador basado en cuadro
estando adaptado para decodificar la corriente paramétrica de datos
codificada de voz a partir del decodificador (54) del mencionado
supercuadro en una señal de voz de audio al realizar:
almacenamiento en memoria intermedia la corriente
de datos de voz paramétrica recibido que tiene una pluralidad de
periodos de tono y localizar el mencionado datos de cuadro en
memoria intermedia en una memoria intermedia;
\newpage
construir un espectro estimado de excitación
dentro de cada período de tono al romper el espectro de frecuencia
en regiones basadas en frecuencia de corte, en el cual la mencionada
construcción comprende:
- calcular la magnitud de Fourier para cada región, en elemento cual las magnitudes de Fourier calculadas resultantes para al menos una de las mencionadas regiones es entonces escalado por un factor de ganancia calculada para esta región,
- calcular la fase dentro de cada región, en el cual la fase resultante para al menos uno de las mencionadas regiones se han modificado por usar una fase ponderada aleatoria, y
- convertir la mencionada magnitud de Fourier y el mencionado fase dentro de cada región hasta una representación de dominio de tiempos por el cálculo de una transformada de Fourier discreta inversa; y
generar una señal (68) de voz analógica a partir
de la mencionada representación en el dominio de tiempos.
19. Un aparato (50) de decodificador de voz como
se cita en una reivindicación 18, en el cual las mencionadas
regiones a través de las cuales el espectro de frecuencia se rompe
en comprender:
una región inferior en el cual las magnitudes de
Fourier determinan directamente el espectro;
una región de transición en la cual magnitudes de
Fourier están escaladas por un factor de ponderación de reducción
que cae de la unidad hasta un valor positivo no cero que depende de
la frecuencia de corte del cuadro de actual; y
una región superior en el cual magnitudes de
Fourier se escalan por un factor de ponderación que depende de la
frecuencia de corte del cuadro actual.
20. Un sistema (70) que comprende el aparato (10;
74) de compresión de voz como se cita en cualesquiera de las
reivindicaciones 1 a 16, y un aparato (78) transcodificador
ascendente, del aparato (78) transcodificador ascendente que se
adaptan para recibir una corriente (76) de datos de voz codificada
de supercuadro a partir del mencionado aparato (10; 74) de
compresión de voz y para convertir la corriente (76) de datos de voz
codificada del supercuadro, hasta una corriente (80) de datos de
voz codificada basada en cuadro, comprendiendo el mencionado
aparato (78) transcodificador ascendente:
una memoria intermedia supercuadro para recoger
datos de supercuadro y extraer bits que representan parámetros de
supercuadro;
un decodificador para cuantificación inversa los
bits para cada juego de parámetros supercuadro en un juego de
valores de parámetros cuantificado para cada cuadro del supercuadro;
y
un codificador basado en cuadro para cuantificar
los parámetros de voz para cada uno de los cuadros que subyacen,
representando en un mapa los mencionados parámetros de voz
cuantificado en datos basados en cuadro, y produciendo una corriente
(80) de datos de voz basado en cuadro.
21. Un sistema (90) que comprende el aparato
(50;102) decodificador de voz como se cita en las reivindicaciones
18 ó 19, y un aparato (98) transcodificador descendente, que está
adaptado para recibir una corriente (96) de datos de voz codificada
basada en cuadro y convertirla en una corriente (100) de datos de
voz codificada basada en supercuadro y decodificable por el
mencionado aparato (50; 102) decodificador de voz; comprendiendo el
aparato (98) transcodificador descendente:
una memoria intermedia de supercuadro para
coleccionar un número de cuadros de datos de voz paramétricos y
extraer bits que representan parámetros de voz basados en
cuadro;
un decodificador para cuantificación inversa los
bits para cada cuadro de parámetros en los valores cuantificados de
parámetros para cada cuadro; y
un codificador de supercuadro para recoger los
mencionados parámetros cuantificados basados en f para el grupo de
cuadros dentro del supercuadro, produciendo un grupo de datos
paramétricos de voz y cuantificar y codificar los mencionados datos
de parámetros de voz en una corriente (100) digital saliente de
bits.
22. Un procedimiento de codificación de voz
(vocoder) para codificar voz digitalizada en datos paramétricos de
voz que comprende las etapas de:
cargar múltiples cuadros de voz digitalizada en
una memoria intermedia supercuadro;
voz digitalizada de codificación dentro de cada
cuadro de la memoria intermedia de supercuadro usando un algoritmo
de análisis, MELP, de Predicción Lineal de excitación mixta mediante
análisis paramétrico para producir datos paramétricos de voz
basados en cuadro;
clasificar cuadro como cuadros comienzo y cuadros
offete calculando paso y parámetros U/V dentro de cada cuadro del
supercuadro y usando la mencionada clasificación para realizar
suavizado de habla;
determinar una frecuencia de corte para
caracterizada porque cuadro dentro del supercuadro calculando un
par de intensidad de sonorización de banda pasante para los cuadros
dentro de la memoria intermedia de supercuadro;
recoger un juego de parámetros de supercuadro a
partir del análisis paramétrico, clasificación de cuadro y etapas
de la determinación de la frecuencia de corte para el grupo de
cuadros dentro del supercuadro;
cuantificación de los cuadros supercuadro en
valores discretos representados por un juego reducido de bits de
datos que forman datos de parámetro de supercuadro cuantificados;
y
codificar datos de par de supercuadro
cuantificados en una corriente de datos de datos de voz paramétrica
basaos en supercuadro que contiene, sustancialmente, información de
equivalente de os datos de voz paramétricos basados en cuadro, aun
a una velocidad menor de bits por segundo de voz codificada.
23. Un procedimiento de codificación de voz
(vocoder) para producir voz digitalizada a partir de datos de voz
paramétrica basado en supercuadro, que comprende las etapas de:
recibir datos de voz paramétrica basada en
supercuadro en una memoria intermedia supercuadro, decodificar y
cuantificación a la inversa los datos de voz dentro de una memoria
intermedia supercuadro para recrear un juego de valores de
parámetro de voz basado en cuadro; y
decodificar los parámetros de voz basado en
cuadro con un sintetizador de voz basado en cuadro que decodifica
los parámetros de voz basados en cuadro para producir una salida de
voz digitalizada;
caracterizado porque
dicha etapa de decodificar de parámetros de voz
basados en cuadro, comprende:
escribir en la memoria intermedia la corriente de
datos de voz paramétricos recibido teniendo una pluralidad de
periodos de tono y cargar los mencionados datos de cuadro escritos
en la mencionada memoria intermedia;
construir un espectro estimado de excitación
dentro de cada período de tono dividiendo el espectro de
frecuencias en regiones basada en frecuencia de corte, en el cual la
mencionada construcción comprende:
- calcular la magnitud de Fourier para cada región, en elemento cual las magnitudes de Fourier calculadas resultantes para al menos una de las mencionadas regiones es entonces escalado por un factor de ganancia calculada para esta región,
- calcular la fase dentro de cada región, en el cual la fase resultante para al menos uno de las mencionadas regiones se han modificado por usar una fase ponderada aleatoria, y
- convertir la mencionada magnitud de Fourier y el mencionado fase dentro de cada región hasta una representación de dominio de tiempos por el cálculo de una transformada de Fourier discreta inversa; y
generar una señal (68) de voz analógica a partir
de la mencionada representación en el dominio de tiempos.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/401,068 US7315815B1 (en) | 1999-09-22 | 1999-09-22 | LPC-harmonic vocoder with superframe structure |
US401068 | 1999-09-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2250197T3 true ES2250197T3 (es) | 2006-04-16 |
Family
ID=23586142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES00968376T Expired - Lifetime ES2250197T3 (es) | 1999-09-22 | 2000-09-20 | Codificador de voz armonico-lpc con estructura de supertrama. |
Country Status (9)
Country | Link |
---|---|
US (2) | US7315815B1 (es) |
EP (1) | EP1222659B1 (es) |
JP (2) | JP4731775B2 (es) |
AT (1) | ATE310304T1 (es) |
AU (1) | AU7830300A (es) |
DE (1) | DE60024123T2 (es) |
DK (1) | DK1222659T3 (es) |
ES (1) | ES2250197T3 (es) |
WO (1) | WO2001022403A1 (es) |
Families Citing this family (67)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7295974B1 (en) * | 1999-03-12 | 2007-11-13 | Texas Instruments Incorporated | Encoding in speech compression |
US6959274B1 (en) | 1999-09-22 | 2005-10-25 | Mindspeed Technologies, Inc. | Fixed rate speech compression system and method |
EP1168734A1 (en) * | 2000-06-26 | 2002-01-02 | BRITISH TELECOMMUNICATIONS public limited company | Method to reduce the distortion in a voice transmission over data networks |
US20030028386A1 (en) * | 2001-04-02 | 2003-02-06 | Zinser Richard L. | Compressed domain universal transcoder |
US7421304B2 (en) * | 2002-01-21 | 2008-09-02 | Kenwood Corporation | Audio signal processing device, signal recovering device, audio signal processing method and signal recovering method |
US8090577B2 (en) * | 2002-08-08 | 2012-01-03 | Qualcomm Incorported | Bandwidth-adaptive quantization |
WO2004090864A2 (en) * | 2003-03-12 | 2004-10-21 | The Indian Institute Of Technology, Bombay | Method and apparatus for the encoding and decoding of speech |
WO2004090870A1 (ja) * | 2003-04-04 | 2004-10-21 | Kabushiki Kaisha Toshiba | 広帯域音声を符号化または復号化するための方法及び装置 |
ATE368279T1 (de) * | 2003-05-01 | 2007-08-15 | Nokia Corp | Verfahren und vorrichtung zur quantisierung des verstärkungsfaktors in einem breitbandsprachkodierer mit variabler bitrate |
US20050049853A1 (en) * | 2003-09-01 | 2005-03-03 | Mi-Suk Lee | Frame loss concealment method and device for VoIP system |
FR2867648A1 (fr) * | 2003-12-10 | 2005-09-16 | France Telecom | Transcodage entre indices de dictionnaires multi-impulsionnels utilises en codage en compression de signaux numeriques |
US7668712B2 (en) * | 2004-03-31 | 2010-02-23 | Microsoft Corporation | Audio encoding and decoding with intra frames and adaptive forward error correction |
US20050232497A1 (en) * | 2004-04-15 | 2005-10-20 | Microsoft Corporation | High-fidelity transcoding |
FR2869151B1 (fr) * | 2004-04-19 | 2007-01-26 | Thales Sa | Procede de quantification d'un codeur de parole a tres bas debit |
AU2004319556A1 (en) * | 2004-05-17 | 2005-11-24 | Nokia Corporation | Audio encoding with different coding frame lengths |
US7596486B2 (en) * | 2004-05-19 | 2009-09-29 | Nokia Corporation | Encoding an audio signal using different audio coder modes |
JP2008503766A (ja) * | 2004-06-21 | 2008-02-07 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | オーディオエンコードの方法 |
WO2006028009A1 (ja) * | 2004-09-06 | 2006-03-16 | Matsushita Electric Industrial Co., Ltd. | スケーラブル復号化装置および信号消失補償方法 |
US7418387B2 (en) * | 2004-11-24 | 2008-08-26 | Microsoft Corporation | Generic spelling mnemonics |
US7353010B1 (en) * | 2004-12-22 | 2008-04-01 | Atheros Communications, Inc. | Techniques for fast automatic gain control |
WO2006089055A1 (en) * | 2005-02-15 | 2006-08-24 | Bbn Technologies Corp. | Speech analyzing system with adaptive noise codebook |
US8219391B2 (en) * | 2005-02-15 | 2012-07-10 | Raytheon Bbn Technologies Corp. | Speech analyzing system with speech codebook |
JP4846712B2 (ja) * | 2005-03-14 | 2011-12-28 | パナソニック株式会社 | スケーラブル復号化装置およびスケーラブル復号化方法 |
US7848220B2 (en) * | 2005-03-29 | 2010-12-07 | Lockheed Martin Corporation | System for modeling digital pulses having specific FMOP properties |
US7177804B2 (en) | 2005-05-31 | 2007-02-13 | Microsoft Corporation | Sub-band voice codec with multi-stage codebooks and redundant coding |
US7707034B2 (en) * | 2005-05-31 | 2010-04-27 | Microsoft Corporation | Audio codec post-filter |
US7831421B2 (en) * | 2005-05-31 | 2010-11-09 | Microsoft Corporation | Robust decoder |
JP5100380B2 (ja) * | 2005-06-29 | 2012-12-19 | パナソニック株式会社 | スケーラブル復号装置および消失データ補間方法 |
US20070011009A1 (en) * | 2005-07-08 | 2007-01-11 | Nokia Corporation | Supporting a concatenative text-to-speech synthesis |
WO2007066771A1 (ja) * | 2005-12-09 | 2007-06-14 | Matsushita Electric Industrial Co., Ltd. | 固定符号帳探索装置および固定符号帳探索方法 |
US7805292B2 (en) * | 2006-04-21 | 2010-09-28 | Dilithium Holdings, Inc. | Method and apparatus for audio transcoding |
US8589151B2 (en) * | 2006-06-21 | 2013-11-19 | Harris Corporation | Vocoder and associated method that transcodes between mixed excitation linear prediction (MELP) vocoders with different speech frame rates |
US8239190B2 (en) | 2006-08-22 | 2012-08-07 | Qualcomm Incorporated | Time-warping frames of wideband vocoder |
US7966175B2 (en) * | 2006-10-18 | 2011-06-21 | Polycom, Inc. | Fast lattice vector quantization |
US7953595B2 (en) * | 2006-10-18 | 2011-05-31 | Polycom, Inc. | Dual-transform coding of audio signals |
US8489392B2 (en) * | 2006-11-06 | 2013-07-16 | Nokia Corporation | System and method for modeling speech spectra |
US20080162150A1 (en) * | 2006-12-28 | 2008-07-03 | Vianix Delaware, Llc | System and Method for a High Performance Audio Codec |
US7937076B2 (en) * | 2007-03-07 | 2011-05-03 | Harris Corporation | Software defined radio for loading waveform components at runtime in a software communications architecture (SCA) framework |
US8315709B2 (en) | 2007-03-26 | 2012-11-20 | Medtronic, Inc. | System and method for smoothing sampled digital signals |
CN101030377B (zh) * | 2007-04-13 | 2010-12-15 | 清华大学 | 提高声码器基音周期参数量化精度的方法 |
US8457958B2 (en) | 2007-11-09 | 2013-06-04 | Microsoft Corporation | Audio transcoder using encoder-generated side information to transcode to target bit-rate |
KR101533186B1 (ko) * | 2008-01-02 | 2015-07-02 | 인터디지탈 패튼 홀딩스, 인크 | Lte에서 cqi 보고를 위한 구성 |
EP2243251B1 (en) | 2008-02-15 | 2015-04-08 | BlackBerry Limited | Method and system for optimizing quantization for noisy channels |
CA2972808C (en) * | 2008-07-10 | 2018-12-18 | Voiceage Corporation | Multi-reference lpc filter quantization and inverse quantization device and method |
US8972828B1 (en) * | 2008-09-18 | 2015-03-03 | Compass Electro Optical Systems Ltd. | High speed interconnect protocol and method |
KR101622950B1 (ko) * | 2009-01-28 | 2016-05-23 | 삼성전자주식회사 | 오디오 신호의 부호화 및 복호화 방법 및 그 장치 |
US8311115B2 (en) | 2009-01-29 | 2012-11-13 | Microsoft Corporation | Video encoding using previously calculated motion information |
US8396114B2 (en) * | 2009-01-29 | 2013-03-12 | Microsoft Corporation | Multiple bit rate video encoding using variable bit rate and dynamic resolution for adaptive video streaming |
TWI465122B (zh) | 2009-01-30 | 2014-12-11 | Dolby Lab Licensing Corp | 自帶狀脈衝響應資料測定反向濾波器之方法 |
US8270473B2 (en) * | 2009-06-12 | 2012-09-18 | Microsoft Corporation | Motion based dynamic resolution multiple bit rate video encoding |
TWI413096B (zh) * | 2009-10-08 | 2013-10-21 | Chunghwa Picture Tubes Ltd | 適應性畫面更新率調變系統及其方法 |
KR101414305B1 (ko) * | 2009-10-20 | 2014-07-02 | 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. | 저 지연 애플리케이션들에서 사용하기 위한 오디오 신호 인코더, 오디오 신호 디코더, 오디오 콘텐츠의 인코딩된 표현을 제공하는 방법, 오디오 콘텐츠의 디코딩된 표현을 제공하는 방법 및 컴퓨터 프로그램 |
ES2374008B1 (es) * | 2009-12-21 | 2012-12-28 | Telefónica, S.A. | Codificación, modificación y síntesis de segmentos de voz. |
US8705616B2 (en) | 2010-06-11 | 2014-04-22 | Microsoft Corporation | Parallel multiple bitrate video encoding to reduce latency and dependences between groups of pictures |
US9591318B2 (en) | 2011-09-16 | 2017-03-07 | Microsoft Technology Licensing, Llc | Multi-layer encoding and decoding |
TWI453733B (zh) * | 2011-12-30 | 2014-09-21 | Nyquest Corp Ltd | 音訊量化編解碼裝置及其方法 |
US9070362B2 (en) | 2011-12-30 | 2015-06-30 | Nyquest Corporation Limited | Audio quantization coding and decoding device and method thereof |
US11089343B2 (en) | 2012-01-11 | 2021-08-10 | Microsoft Technology Licensing, Llc | Capability advertisement, configuration and control for video coding and decoding |
EP2830058A1 (en) * | 2013-07-22 | 2015-01-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Frequency-domain audio coding supporting transform length switching |
EP2863386A1 (en) * | 2013-10-18 | 2015-04-22 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio decoder, apparatus for generating encoded audio output data and methods permitting initializing a decoder |
ITBA20130077A1 (it) * | 2013-11-25 | 2015-05-26 | Cicco Luca De | Meccanismo per il controllo del bitrate di codifica in un sistema di video streaming adattivo basato su buffer di playout e sulla stima di banda. |
CN104078047B (zh) * | 2014-06-21 | 2017-06-06 | 西安邮电大学 | 基于语音多带激励编码lsp参数的量子压缩方法 |
CN107924683B (zh) * | 2015-10-15 | 2021-03-30 | 华为技术有限公司 | 正弦编码和解码的方法和装置 |
US10373608B2 (en) | 2015-10-22 | 2019-08-06 | Texas Instruments Incorporated | Time-based frequency tuning of analog-to-information feature extraction |
US10332543B1 (en) * | 2018-03-12 | 2019-06-25 | Cypress Semiconductor Corporation | Systems and methods for capturing noise for pattern recognition processing |
JP7274184B2 (ja) * | 2019-01-11 | 2023-05-16 | ネイバー コーポレーション | 話者適応型モデルを実現して合成音声信号を生成するニューラルボコーダおよびニューラルボコーダの訓練方法 |
CN111818519B (zh) * | 2020-07-16 | 2022-02-11 | 郑州信大捷安信息技术股份有限公司 | 一种端到端语音加密、解密方法及系统 |
Family Cites Families (72)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4969192A (en) | 1987-04-06 | 1990-11-06 | Voicecraft, Inc. | Vector adaptive predictive coder for speech and audio |
US4815134A (en) | 1987-09-08 | 1989-03-21 | Texas Instruments Incorporated | Very low rate speech encoder and decoder |
CN1062963C (zh) | 1990-04-12 | 2001-03-07 | 多尔拜实验特许公司 | 用于产生高质量声音信号的解码器和编码器 |
US5664051A (en) * | 1990-09-24 | 1997-09-02 | Digital Voice Systems, Inc. | Method and apparatus for phase synthesis for speech processing |
JPH04249300A (ja) * | 1991-02-05 | 1992-09-04 | Kokusai Electric Co Ltd | 音声符復号化方法及びその装置 |
US5255339A (en) * | 1991-07-19 | 1993-10-19 | Motorola, Inc. | Low bit rate vocoder means and method |
US5734789A (en) | 1992-06-01 | 1998-03-31 | Hughes Electronics | Voiced, unvoiced or noise modes in a CELP vocoder |
JP2746039B2 (ja) | 1993-01-22 | 1998-04-28 | 日本電気株式会社 | 音声符号化方式 |
US5717823A (en) | 1994-04-14 | 1998-02-10 | Lucent Technologies Inc. | Speech-rate modification for linear-prediction based analysis-by-synthesis speech coders |
JP3277705B2 (ja) | 1994-07-27 | 2002-04-22 | ソニー株式会社 | 情報符号化装置及び方法、並びに情報復号化装置及び方法 |
TW271524B (es) | 1994-08-05 | 1996-03-01 | Qualcomm Inc | |
US5699477A (en) | 1994-11-09 | 1997-12-16 | Texas Instruments Incorporated | Mixed excitation linear prediction with fractional pitch |
US5751903A (en) | 1994-12-19 | 1998-05-12 | Hughes Electronics | Low rate multi-mode CELP codec that encodes line SPECTRAL frequencies utilizing an offset |
US5668925A (en) | 1995-06-01 | 1997-09-16 | Martin Marietta Corporation | Low data rate speech encoder with mixed excitation |
US5699485A (en) | 1995-06-07 | 1997-12-16 | Lucent Technologies Inc. | Pitch delay modification during frame erasures |
US5774837A (en) | 1995-09-13 | 1998-06-30 | Voxware, Inc. | Speech coding system and method using voicing probability determination |
US5835495A (en) | 1995-10-11 | 1998-11-10 | Microsoft Corporation | System and method for scaleable streamed audio transmission over a network |
TW321810B (es) | 1995-10-26 | 1997-12-01 | Sony Co Ltd | |
IT1281001B1 (it) | 1995-10-27 | 1998-02-11 | Cselt Centro Studi Lab Telecom | Procedimento e apparecchiatura per codificare, manipolare e decodificare segnali audio. |
US5778335A (en) | 1996-02-26 | 1998-07-07 | The Regents Of The University Of California | Method and apparatus for efficient multiband celp wideband speech and music coding and decoding |
US6041345A (en) | 1996-03-08 | 2000-03-21 | Microsoft Corporation | Active stream format for holding multiple media streams |
JP3335841B2 (ja) | 1996-05-27 | 2002-10-21 | 日本電気株式会社 | 信号符号化装置 |
US6570991B1 (en) | 1996-12-18 | 2003-05-27 | Interval Research Corporation | Multi-feature speech/music discrimination system |
US6317714B1 (en) | 1997-02-04 | 2001-11-13 | Microsoft Corporation | Controller and associated mechanical characters operable for continuously performing received control data while engaging in bidirectional communications over a single communications channel |
US6134518A (en) | 1997-03-04 | 2000-10-17 | International Business Machines Corporation | Digital audio signal coding using a CELP coder and a transform coder |
US6131084A (en) | 1997-03-14 | 2000-10-10 | Digital Voice Systems, Inc. | Dual subframe quantization of spectral magnitudes |
US6292834B1 (en) | 1997-03-14 | 2001-09-18 | Microsoft Corporation | Dynamic bandwidth selection for efficient transmission of multimedia streams in a computer network |
US6728775B1 (en) | 1997-03-17 | 2004-04-27 | Microsoft Corporation | Multiple multicasting of multimedia streams |
EP0934638B1 (en) | 1997-05-12 | 2008-10-08 | Texas Instruments Incorporated | Method and apparatus for superframe bit allocation in a discrete multitone (dmt) system |
US6009122A (en) | 1997-05-12 | 1999-12-28 | Amati Communciations Corporation | Method and apparatus for superframe bit allocation |
FI973873A (fi) * | 1997-10-02 | 1999-04-03 | Nokia Mobile Phones Ltd | Puhekoodaus |
US6263312B1 (en) | 1997-10-03 | 2001-07-17 | Alaris, Inc. | Audio compression and decompression employing subband decomposition of residual signal and distortion reduction |
US6199037B1 (en) * | 1997-12-04 | 2001-03-06 | Digital Voice Systems, Inc. | Joint quantization of speech subframe voicing metrics and fundamental frequencies |
US5870412A (en) | 1997-12-12 | 1999-02-09 | 3Com Corporation | Forward error correction system for packet based real time media |
US6351730B2 (en) | 1998-03-30 | 2002-02-26 | Lucent Technologies Inc. | Low-complexity, low-delay, scalable and embedded speech and audio coding with adaptive frame loss concealment |
US6029126A (en) | 1998-06-30 | 2000-02-22 | Microsoft Corporation | Scalable audio coder and decoder |
US6330533B2 (en) | 1998-08-24 | 2001-12-11 | Conexant Systems, Inc. | Speech encoder adaptively applying pitch preprocessing with warping of target signal |
US6493665B1 (en) | 1998-08-24 | 2002-12-10 | Conexant Systems, Inc. | Speech classification and parameter weighting used in codebook search |
US6823303B1 (en) | 1998-08-24 | 2004-11-23 | Conexant Systems, Inc. | Speech encoder using voice activity detection in coding noise |
US6385573B1 (en) | 1998-08-24 | 2002-05-07 | Conexant Systems, Inc. | Adaptive tilt compensation for synthesized speech residual |
US6480822B2 (en) | 1998-08-24 | 2002-11-12 | Conexant Systems, Inc. | Low complexity random codebook structure |
FR2784218B1 (fr) | 1998-10-06 | 2000-12-08 | Thomson Csf | Procede de codage de la parole a bas debit |
US6438136B1 (en) | 1998-10-09 | 2002-08-20 | Microsoft Corporation | Method for scheduling time slots in a communications network channel to support on-going video transmissions |
US6289297B1 (en) | 1998-10-09 | 2001-09-11 | Microsoft Corporation | Method for reconstructing a video frame received from a video source over a communication channel |
US6310915B1 (en) | 1998-11-20 | 2001-10-30 | Harmonic Inc. | Video transcoder with bitstream look ahead for rate control and statistical multiplexing |
US6226606B1 (en) | 1998-11-24 | 2001-05-01 | Microsoft Corporation | Method and apparatus for pitch tracking |
US6311154B1 (en) | 1998-12-30 | 2001-10-30 | Nokia Mobile Phones Limited | Adaptive windows for analysis-by-synthesis CELP-type speech coding |
US6499060B1 (en) | 1999-03-12 | 2002-12-24 | Microsoft Corporation | Media coding for loss recovery with remotely predicted data units |
US6460153B1 (en) | 1999-03-26 | 2002-10-01 | Microsoft Corp. | Apparatus and method for unequal error protection in multiple-description coding using overcomplete expansions |
US7117156B1 (en) | 1999-04-19 | 2006-10-03 | At&T Corp. | Method and apparatus for performing packet loss or frame erasure concealment |
US6952668B1 (en) | 1999-04-19 | 2005-10-04 | At&T Corp. | Method and apparatus for performing packet loss or frame erasure concealment |
DE19921122C1 (de) | 1999-05-07 | 2001-01-25 | Fraunhofer Ges Forschung | Verfahren und Vorrichtung zum Verschleiern eines Fehlers in einem codierten Audiosignal und Verfahren und Vorrichtung zum Decodieren eines codierten Audiosignals |
US6505152B1 (en) | 1999-09-03 | 2003-01-07 | Microsoft Corporation | Method and apparatus for using formant models in speech systems |
US6621935B1 (en) | 1999-12-03 | 2003-09-16 | Microsoft Corporation | System and method for robust image representation over error-prone channels |
US6732070B1 (en) | 2000-02-16 | 2004-05-04 | Nokia Mobile Phones, Ltd. | Wideband speech codec using a higher sampling rate in analysis and synthesis filtering than in excitation searching |
US6693964B1 (en) | 2000-03-24 | 2004-02-17 | Microsoft Corporation | Methods and arrangements for compressing image based rendering data using multiple reference frame prediction techniques that support just-in-time rendering of an image |
US6757654B1 (en) | 2000-05-11 | 2004-06-29 | Telefonaktiebolaget Lm Ericsson | Forward error correction in speech coding |
CN1202514C (zh) | 2000-11-27 | 2005-05-18 | 日本电信电话株式会社 | 编码和解码语音及其参数的方法、编码器、解码器 |
JP4063670B2 (ja) | 2001-01-19 | 2008-03-19 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 広帯域信号伝送システム |
US7151749B2 (en) | 2001-06-14 | 2006-12-19 | Microsoft Corporation | Method and System for providing adaptive bandwidth control for real-time communication |
US6658383B2 (en) | 2001-06-26 | 2003-12-02 | Microsoft Corporation | Method for coding speech and music signals |
US6941263B2 (en) | 2001-06-29 | 2005-09-06 | Microsoft Corporation | Frequency domain postfiltering for quality enhancement of coded speech |
US6879955B2 (en) | 2001-06-29 | 2005-04-12 | Microsoft Corporation | Signal modification based on continuous time warping for low bit rate CELP coding |
US6785645B2 (en) | 2001-11-29 | 2004-08-31 | Microsoft Corporation | Real-time speech and music classifier |
US7027982B2 (en) | 2001-12-14 | 2006-04-11 | Microsoft Corporation | Quality and rate control strategy for digital audio |
US6934677B2 (en) | 2001-12-14 | 2005-08-23 | Microsoft Corporation | Quantization matrices based on critical band pattern information for digital audio wherein quantization bands differ from critical bands |
US6647366B2 (en) | 2001-12-28 | 2003-11-11 | Microsoft Corporation | Rate control strategies for speech and music coding |
US6789123B2 (en) | 2001-12-28 | 2004-09-07 | Microsoft Corporation | System and method for delivery of dynamically scalable audio/video content over a network |
US7668712B2 (en) | 2004-03-31 | 2010-02-23 | Microsoft Corporation | Audio encoding and decoding with intra frames and adaptive forward error correction |
US7831421B2 (en) | 2005-05-31 | 2010-11-09 | Microsoft Corporation | Robust decoder |
US7707034B2 (en) | 2005-05-31 | 2010-04-27 | Microsoft Corporation | Audio codec post-filter |
US7177804B2 (en) | 2005-05-31 | 2007-02-13 | Microsoft Corporation | Sub-band voice codec with multi-stage codebooks and redundant coding |
-
1999
- 1999-09-22 US US09/401,068 patent/US7315815B1/en not_active Expired - Fee Related
-
2000
- 2000-09-20 ES ES00968376T patent/ES2250197T3/es not_active Expired - Lifetime
- 2000-09-20 DE DE60024123T patent/DE60024123T2/de not_active Expired - Lifetime
- 2000-09-20 WO PCT/US2000/025869 patent/WO2001022403A1/en active IP Right Grant
- 2000-09-20 AU AU78303/00A patent/AU7830300A/en not_active Abandoned
- 2000-09-20 AT AT00968376T patent/ATE310304T1/de active
- 2000-09-20 DK DK00968376T patent/DK1222659T3/da active
- 2000-09-20 JP JP2001525687A patent/JP4731775B2/ja not_active Expired - Fee Related
- 2000-09-20 EP EP00968376A patent/EP1222659B1/en not_active Expired - Lifetime
-
2004
- 2004-07-20 US US10/894,854 patent/US7286982B2/en not_active Expired - Fee Related
-
2011
- 2011-02-24 JP JP2011038935A patent/JP5343098B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US7286982B2 (en) | 2007-10-23 |
WO2001022403A1 (en) | 2001-03-29 |
JP5343098B2 (ja) | 2013-11-13 |
DE60024123T2 (de) | 2006-03-30 |
US20050075869A1 (en) | 2005-04-07 |
JP2011150357A (ja) | 2011-08-04 |
JP4731775B2 (ja) | 2011-07-27 |
EP1222659B1 (en) | 2005-11-16 |
EP1222659A1 (en) | 2002-07-17 |
US7315815B1 (en) | 2008-01-01 |
DE60024123D1 (de) | 2005-12-22 |
AU7830300A (en) | 2001-04-24 |
JP2003510644A (ja) | 2003-03-18 |
ATE310304T1 (de) | 2005-12-15 |
DK1222659T3 (da) | 2006-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2250197T3 (es) | Codificador de voz armonico-lpc con estructura de supertrama. | |
JP4824167B2 (ja) | 周期的スピーチコーディング | |
JP4927257B2 (ja) | 可変レートスピーチ符号化 | |
ES2302754T3 (es) | Procedimiento y aparato para codificacion de habla sorda. | |
JP2004310088A (ja) | 半レート・ボコーダ | |
JP4438127B2 (ja) | 音声符号化装置及び方法、音声復号装置及び方法、並びに記録媒体 | |
JPH0744193A (ja) | 高能率符号化方法 | |
JPH10124094A (ja) | 音声分析方法、音声符号化方法および装置 | |
ES2145737T5 (es) | Codificador digital de voz con predictor a largo plazo mejorado por resolucion de submuestreos. | |
JPH0563000B2 (es) | ||
EP1597721B1 (en) | 600 bps mixed excitation linear prediction transcoding | |
JP2002505450A (ja) | ハイブリッド被刺激線形予測スピーチ符号化装置及び方法 | |
JP3297749B2 (ja) | 符号化方法 | |
JP4578145B2 (ja) | 音声符号化装置、音声復号化装置及びこれらの方法 | |
JP3437421B2 (ja) | 楽音符号化装置及び楽音符号化方法並びに楽音符号化プログラムを記録した記録媒体 | |
Unver | Advanced Low Bit-Rate Speech Coding Below 2.4 Kbps | |
JPH034300A (ja) | 音声符号化復号化方式 | |
JPH07104793A (ja) | 音声信号の符号化装置及び復号化装置 | |
Seereddy | Speech coding using multipulse excitation | |
Yaghmaie | Prototype waveform interpolation based low bit rate speech coding |