ES2337903T3 - Codificacion de audio. - Google Patents
Codificacion de audio. Download PDFInfo
- Publication number
- ES2337903T3 ES2337903T3 ES04770161T ES04770161T ES2337903T3 ES 2337903 T3 ES2337903 T3 ES 2337903T3 ES 04770161 T ES04770161 T ES 04770161T ES 04770161 T ES04770161 T ES 04770161T ES 2337903 T3 ES2337903 T3 ES 2337903T3
- Authority
- ES
- Spain
- Prior art keywords
- quantification
- frame
- sinusoidal
- phase
- signal
- 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
- 238000013139 quantization Methods 0.000 claims abstract description 13
- 230000005236 sound signal Effects 0.000 claims abstract description 11
- 238000011002 quantification Methods 0.000 claims description 109
- 238000000034 method Methods 0.000 claims description 30
- 230000003044 adaptive effect Effects 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 6
- 230000004913 activation Effects 0.000 claims description 4
- 230000006978 adaptation Effects 0.000 abstract description 5
- 230000001052 transient effect Effects 0.000 description 27
- 230000005540 biological transmission Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 238000005259 measurement Methods 0.000 description 6
- 230000001419 dependent effect Effects 0.000 description 5
- 230000004069 differentiation Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000001174 ascending effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000015654 memory Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000003595 spectral effect Effects 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 230000002459 sustained effect Effects 0.000 description 2
- 208000034423 Delivery Diseases 0.000 description 1
- 239000012190 activator Substances 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012885 constant function Methods 0.000 description 1
- 238000010924 continuous production Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000013341 scale-up Methods 0.000 description 1
- 239000007787 solid Substances 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/02—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 spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/032—Quantisation or dequantisation of spectral components
-
- 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/093—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters using sinusoidal excitation models
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Cereal-Derived Products (AREA)
Abstract
Procedimiento para codificar una señal de audio, comprendiendo el procedimiento las etapas de: - proporcionar un conjunto respectivo de valores (x(t)) de señal muestreados para cada uno de una pluralidad de segmentos de tiempo secuenciales; - analizar los valores (x(t)) de señal muestreados para determinar una o más componentes sinusoidales para cada uno de la pluralidad de segmentos secuenciales; - conectar componentes sinusoidales a lo largo de una pluralidad de segmentos secuenciales para proporcionar pistas sinusoidales, comprendiendo cada pista varias tramas; estando caracterizado el procedimiento porque comprende además las etapas de: generar una fase (φ) cuantificada para la pluralidad de segmentos secuenciales mediante una cuantificación predictiva de una fase de las componentes sinusoidales en una pista usando una precisión de cuantificación adaptativa; y - generar una señal (AS) codificada que incluye códigos (CS) sinusoidales que comprenden un nivel (r) de representación para al menos una trama no designada como trama de acceso aleatorio y donde algunos de estos códigos (CS) comprenden una fase (φ) cuantificada actual, una frecuencia (ω) actual y al menos uno de una tabla (Q) de cuantificación y un índice (IND) de tabla de cuantificación para la tabla (Q) de cuantificación para una trama dada cuando la trama dada se designa como una trama de acceso aleatorio, reflejando la tabla (Q) de cuantificación una precisión actual de la precisión de cuantificación adaptativa para la trama de acceso aleatorio y no comprendiendo la señal (AS) codificada datos de estado de predicción para la cuantificación predictiva para la trama de acceso aleatorio.
Description
Codificación de audio.
La presente invención se refiere a codificación
y decodificación de señales de banda ancha, en particular señales
de audio. La invención se refiere tanto al codificador como al
decodificador, y a un flujo de audio codificado según la invención
y a un medio de almacenamiento de datos en el que se ha almacenado
un flujo de audio de este tipo.
Cuando se transmiten señales de banda ancha, por
ejemplo señales de audio tales como voz, se usan técnicas de
compresión o de codificación para reducir el ancho de banda o la
tasa de transmisión de bits de la señal.
La figura 1 muestra un esquema de codificación
paramétrica conocido, en particular un codificador sinusoidal, que
se usa en la presente invención, y que se describe en el documento
WO 01/69593. En este codificador, una señal x(t) de audio de
entrada se divide en varias tramas o segmentos de tiempo (que
posiblemente se solapan), que normalmente tienen una duración de 20
ms cada uno. Cada segmento se descompone en componentes
transitorias, sinusoidales y de ruido. También es posible derivar
otras componentes de la señal de audio de entrada tales como
complejos armónicos, aunque éstos no son relevantes para los fines
de la presente invención.
En el analizador 130 sinusoidal de la figura 1,
la señal x2 para cada segmento se modela usando varias sinusoides
representadas por parámetros de fase, frecuencia y amplitud. Esta
información se extrae habitualmente para un intervalo de tiempo de
análisis realizando una transformada de Fourier (FT) que proporciona
una representación espectral del intervalo que incluye:
frecuencias, amplitudes para cada frecuencia y fases para cada
frecuencia, donde cada fase "está envuelta", es decir, en el
rango {-\pi;\pi}. Una vez que se estima la información
sinusoidal para un segmento, se inicia un algoritmo de seguimiento.
Este algoritmo usa una función del coste para conectar sinusoides
en diferentes segmentos entre sí de segmento a segmento para obtener
denominadas pistas. El algoritmo de seguimiento da como resultado
por tanto códigos C_{s} sinusoidales que comprenden pistas
sinusoidales que empiezan en un momento específico en el tiempo,
evolucionan durante un determinado periodo de tiempo a lo largo de
una pluralidad de segmentos de tiempo y a continuación se
detienen.
En una codificación sinusoidal de este tipo, es
habitual transmitir información de frecuencia para las pistas
formadas en el codificador. Esto puede realizarse de manera sencilla
y con costes relativamente bajos, porque las pistas sólo tienen una
frecuencia que varía lentamente. La información de frecuencia puede
transmitirse por lo tanto de manera eficaz mediante codificación
diferencial en el tiempo. En general, la amplitud también puede
codificarse de manera diferencial a lo largo del tiempo.
A diferencia de la frecuencia, la fase cambia de
manera más rápida con el tiempo. Si la frecuencia es
(sustancialmente) constante, la fase cambiará (sustancialmente) de
manera lineal con el tiempo, y los cambios de frecuencia darán como
resultado desviaciones de fase correspondientes respecto al curso
lineal. Como función del índice de segmento de pista, la fase
tendrá un comportamiento aproximadamente lineal. La transmisión de
fase codificada es por lo tanto más complicada. Sin embargo, cuando
se transmite, la fase está limitada al rango {-\pi;\pi}, es
decir, la fase "está envuelta", según se proporciona por la
transformada de Fourier. Debido a esta representación de fase de
módulo 2\pi, se pierde la relación entre tramas estructural de la
fase y, a primera vista, parece ser una variable
aleatoria.
aleatoria.
Sin embargo, puesto que la fase es la integral
de la frecuencia, la fase es redundante y, en principio, no tiene
que transmitirse. Esto reduce de manera significativa la tasa de
transmisión de bits. En el decodificador, la fase se recupera
mediante un proceso que se denomina continuación de fase.
En la continuación de fase, sólo se transmite la
frecuencia codificada, y la fase se recupera en el decodificador a
partir de los datos de frecuencia aprovechando la relación de
integrales entre fase y frecuencia. Se conoce, sin embargo, que
cuando se usa la continuación de fase, la fase no puede recuperarse
perfectamente. Si se producen errores de frecuencia, por ejemplo
debido a errores de medición en la frecuencia o debido a ruido de
cuantificación, la fase, que está reconstruyéndose usando la
relación de integrales, mostrará normalmente un error que tiene
carácter de desviación. Esto se debe a que los errores de frecuencia
tienen un carácter aproximadamente aleatorio. Los errores de baja
frecuencia se amplifican mediante integración, y por consiguiente
la fase recuperada tenderá a desviarse de la fase realmente medida.
Esto lleva a artefactos audibles.
Esto se ilustra en la figura 2a en la que
\Omega y \psi son la frecuencia real y la fase real,
respectivamente, para una pista. Tanto en el codificador como el
decodificador, la frecuencia y la fase tienen una relación de
integrales según se representa por la letra "I". El proceso de
cuantificación en el codificador se modela como ruido n añadido. En
el decodificador, la fase \hat{\psi} recuperada incluye por tanto
dos componentes: la fase \psi real y una componente
\varepsilon_{2} de ruido, donde tanto el espectro de la fase
recuperada como la función de densidad espectral de potencia del
ruido \varepsilon_{2} tienen un carácter de baja frecuencia
marcado.
Por tanto, puede verse que en la continuación de
fase, la propia fase recuperada es una señal de baja frecuencia
porque la fase recuperada es la integral de una señal de baja
frecuencia. Sin embargo, el ruido introducido en el proceso de
reconstrucción también es dominante en este rango de baja
frecuencia. Es por lo tanto difícil separar estas fuentes con el
fin de filtrar el ruido n introducido durante la
codificación.
Además, en la continuación de fase, sólo la
primera sinusoide de cada pista se transmite para cada pista con el
fin de ahorrar tasa de transmisión de bits. Cada fase subsiguiente
se calcula a partir de la fase y las frecuencias iniciales de la
pista. Puesto que las frecuencias se cuantifican y no siempre se
estiman de manera muy precisa, la fase continua se desviará de la
fase medida. Experimentos muestran que la continuación de fase
degrada la calidad de una señal de audio.
Se ha propuesto tratar estos problemas
proponiendo un cuantificador de fase/frecuencia conjunto, en el que
las fases medidas de una pista sinusoidal, que tienen valores entre
-\pi y \pi, se desenvuelven usando las frecuencias medidas y
conectando información, dando como resultado fases desenvueltas en
aumento monótonas a lo largo de una pista. En el codificador, las
fases desenvueltas se cuantifican usando un cuantificador de
modulación por codificación de impulsos diferencial adaptativa
(ADPCM) y se transmiten al decodificador. El decodificador deriva
las frecuencias y las fases de una pista sinusoidal a partir de la
trayectoria de fase desenvuelta.
Como ejemplo, el cuantificador ADPCM puede
configurarse como se describe a continuación. Para la primera
continuación de una pista, la fase desenvuelta se cuantifica según
la tabla 1.
Los límites de cuantificación se definen según
esta tabla mediante: {-\infty; 2\cdotT (r = 1), 0, 2\cdotT (r
= 2), \infty}. Para cada continuación consecutiva, las tablas se
ajustan a escala. Si el nivel de representación está en el nivel
externo, las tablas se multiplican por 2^{1/2}, haciendo que la
precisión de cuantificación sea más basta. De otro modo, los
niveles de representación están en el nivel interno y las tablas se
ajustan a escala por 2^{-1/4}, haciendo que la precisión de
cuantificación sea más fina. Además, hay un límite superior e
inferior para el nivel interno, concretamente 3\pi/4 y
\pi/64.
La cuantificación de la trayectoria de fase
desenvuelta es un proceso continuo en los procedimientos anteriores,
en los que la precisión de cuantificación se adapta a lo largo de
la pista. Por lo tanto, con el fin de decodificar una pista, el
proceso de decodificación tiene que empezar desde el nacimiento o
punto inicial de una pista, es decir, el decodificador sólo puede
descuantificar una pista completa y no es posible decodificar una
parte de la pista. Por lo tanto, tienen que añadirse procedimientos
especiales que permitan un acceso aleatorio al codificador y
decodificador. El acceso aleatorio puede usarse por ejemplo para
"saltar" o "avanzar con rapidez" en una señal de
audio.
Un ejemplo de transmisión de señales de audio
usando codificación sinusoidal se describe en "Phase Transmission
in a Sinusoidal Audio and Speech Coder", A.C. den Brinker, A.J.
Gerrits y R.J.Sluijter, Preprints of Papers Presented at the AES
Convention, 5983, 10 de octubre de 2003, páginas 107,
XP009028272.
El artículo "Digital Audio Compression" por
Davies Yen Pan, Digital Technical Journal, USA, vol. 5, n.º 2,
1993, páginas 28-40 XP002309088, ISSN:
0898-901X describe diversas formas de compresión de
audio que incluyen ADPCM.
La publicación de solicitud de patente alemana
DE 42 29 372 A1 describe un sistema que clasifica información de
cuantificación en diferentes tipos en el lado de un codificador. Las
clasificaciones se usan para proporcionar información de índice. La
información de índice se usa para dirigir información de
cuantificación almacenada para señales de tono digitalizadas. Las
señales de índice se transmiten en lugar de la información de
cuantificación.
Una primera manera sencilla de realizar acceso
aleatorio es definir tramas de acceso aleatorio (o puntos de
renovación) en el codificador/cuantificador y reiniciar el
cuantificador ADPCM en el decodificador en estas tramas de acceso
aleatorio. Para la trama de acceso aleatorio, se usan las tablas
iniciales. Por lo tanto, las renovaciones son tan caras en bits
como los nacimientos normales. Sin embargo, un inconveniente de este
enfoque es que las tablas de cuantificación y por tanto la
precisión de cuantificación tienen que adaptarse de nuevo a partir
de la trama de acceso aleatorio y hacia delante. Por lo tanto,
inicialmente, la precisión de cuantificación podría ser demasiado
basta, dando como resultado una discontinuidad en la pista, o
demasiado fina, dando como resultado grandes errores de
cuantificación. Esto lleva a una degradación de la calidad de audio
en comparación con las señales decodificadas sin el uso de tramas de
acceso aleatorio.
Una segunda manera sencilla es transmitir todos
los estados del cuantificador ADPCM que son la precisión de
cuantificación y las memorias en el predictor. El cuantificador
tendrá entonces una salida similar con o sin tramas de acceso
aleatorio. De esta manera, apenas sufrirá la calidad de sonido. Sin
embargo, la tasa de transmisión de bits adicional para transmitir
toda esta información será considerable. Especialmente porque el
contenido de las memorias del predictor tendrá que cuantificarse
según la precisión de cuantificación del cuantificador ADPCM.
La presente invención trata estos problemas.
La presente invención proporciona un
procedimiento para codificar una señal de banda ancha, en particular
una señal de audio o una señal de voz, usando una tasa de
transmisión de bits baja. Más específicamente, la invención
proporciona un procedimiento para codificar una señal de audio,
comprendiendo el procedimiento las etapas de: proporcionar un
conjunto respectivo de valores de señal muestreados para cada uno de
una pluralidad de segmentos de tiempo secuenciales; analizar los
valores de señal muestreados para determinar una o más componentes
sinusoidales para cada uno de la pluralidad de segmentos
secuenciales; conectar componentes sinusoidales a lo largo de una
pluralidad de segmentos secuenciales para proporcionar pistas
sinusoidales, comprendiendo cada pista varias tramas; estando
caracterizado el procedimiento porque comprende además las etapas
de: generar una fase (\phi) cuantificada para la pluralidad de
segmentos secuenciales mediante una cuantificación predictiva de
una fase de las componentes sinusoidales en una pista usando una
precisión de cuantificación adaptativa; y generar una señal
codificada que incluye códigos sinusoidales que comprenden un nivel
de representación para al menos una trama no designada como trama
de acceso aleatorio y en el que algunos de estos códigos comprenden
una fase cuantificada actual, una frecuencia actual y al menos uno
de una tabla de cuantificación y un índice (IND) de tabla de
cuantificación para la tabla (Q) de cuantificación para una trama
dada cuando la trama dada se designa como trama de acceso
aleatorio, reflejando la tabla (Q) de cuantificación una precisión
actual de la precisión de cuantificación adaptativa para la trama
de acceso aleatorio y no comprendiendo la señal (AS) codificada
datos de estado de predicción para la cuantificación predictiva para
la trama de acceso aleatorio.
De esta manera, se permite un acceso aleatorio,
por ejemplo permitiendo saltar a lo largo de una pista, etc.,
mientras que se evita la larga adaptación de la precisión de
cuantificación en un cuantificador, por ejemplo un cuantificador
ADPCM, de la técnica anterior, como (parte) del estado de
cuantificación se transmite (en forma de la tabla de
cuantificación) al codificador.
Además, la tabla de cuantificación se adapta
para que sea más rápida en comparación con el primer procedimiento
sencillo que usa la tabla inicial por defecto. Además, en
comparación con el segundo procedimiento sencillo, la presente
invención da como resultado una tasa de transmisión de bits más
baja.
La presente invención ofrece un buen compromiso
entre los dos procedimientos (sencillos), transmitiendo sólo la
precisión de cuantificación, proporcionando de este modo una buena
calidad a una baja tasa de transmisión de bits.
En una realización preferida, cada tabla de
cuantificación se representa mediante un índice donde el índice se
transmite desde el codificador al decodificador en una trama de
acceso aleatorio en lugar de la tabla de cuantificación. El índice
puede generarse o representarse por ejemplo usando codificación de
Huffman.
Preferiblemente, la fase (\phi) y la
frecuencia (\omega) para una trama de acceso aleatorio son la
fase medida y la frecuencia medida en la trama de renovación
cuantificada según el procedimiento por defecto usado para
cuantificar un punto inicial de una pista. A estas fases y
frecuencias también se hará referencia como \phi(0) y
\omega(0), respectivamente.
La figura 1 muestra un codificador de audio de
la técnica anterior en el que se implementa una realización de la
invención;
la figura 2a ilustra la relación entre fase y
frecuencia en sistemas de la técnica anterior;
la figura 2b ilustra la relación entre fase y
frecuencia en sistemas de audio que usan codificación de fase;
las figuras 3a y 3b muestran una realización
preferida de una componente de codificador sinusoidal del
codificador de audio de la figura 1 según la presente
invención;
la figura 4 muestra un reproductor de audio en
el que se implementa una realización de la invención; y
las figuras 5a y 5b muestran una realización
preferida de un componente de sintetizador sinusoidal del
reproductor de audio de la figura 4 según la presente
invención;
la figura 6 muestra un sistema que comprende un
codificador de audio y un reproductor de audio según la invención;
y
las figuras 7a y 7b ilustran la información
enviada desde el codificador y recibida en el decodificador según
la técnica anterior y la presente invención, respectivamente.
A continuación se describirán realizaciones
preferidas de la invención con referencia a los dibujos adjuntos en
los que a componentes similares se han atribuido números de
referencia similares y, a menos que se indique de otro modo, éstos
realizan funciones similares.
La figura 1 muestra un codificador 1 de audio de
la técnica anterior en el que se implementa una realización de la
invención. En una realización preferida de la presente invención, el
codificador 1 es un codificador sinusoidal del tipo descrito en el
documento WO 01/69593, figura 1. La operación de este codificador de
la técnica anterior y su decodificador correspondiente se ha
descrito ampliamente y en este caso sólo se proporciona una
descripción cuando sea relevante para la presente invención.
Tanto en la técnica anterior como en la
realización preferida de la presente invención, el codificador 1 de
audio muestrea una señal de audio de entrada a una determinada
frecuencia de muestreo, dando como resultado una representación
x(t) digital de la señal de audio. El codificador 1 separa a
continuación la señal de entrada muestreada en tres componentes:
componentes de señal transitorias, componentes determinísticas
sostenidas y componentes estocásticas sostenidas. El codificador 1
de audio comprende un codificador 11 transitorio, un codificador 13
sinusoidal y un codificador 14 de ruido (NA).
El codificador 11 transitorio comprende un
detector 110 transitorio (TD), un analizador 111 transitorio (TA) y
un sintetizador 112 transitorio (TS). En primer lugar, la señal
x(t) entra en el detector 110 transitorio. Este detector 110
estima si hay una componente de señal transitoria y su posición.
Esta información se alimenta al analizador 111 transitorio (TA). Si
se determina la posición de una componente de señal transitoria, el
analizador 111 transitorio (TA) intenta extraer (la parte principal
de) la componente de señal transitoria. Hace coincidir una función
de forma con un segmento de señal que preferiblemente empieza en una
posición inicial estimada, y determina el contenido por debajo de
la función de forma, empleando, por ejemplo, un número (pequeño) de
componentes sinusoidales. Esta información está contenida en el
código C_{T} transitorio, y se proporciona información más
detallada de la generación del código C_{T} transitorio en el
documento WO01/69593.
El código C_{T} transitorio se suministra al
sintetizador 112 transitorio (TS). La componente de señal
transitoria sintetizada se resta de la señal x(t) de entrada
en el sustractor 16, dando como resultado una señal x1. Se usa un
mecanismo 12 de control de ganancia (GC) para producir x2 a partir
de x1.
La señal x2 se suministra al codificador 13
sinusoidal en el que se analiza en un analizador 130 sinusoidal
(SA), que determina las componentes sinusoidales (determinísticas).
Por lo tanto se observará que, aunque es deseable la presencia del
analizador transitorio, éste no es necesario y la invención puede
implementarse sin un analizador de este tipo. Alternativamente,
como se mencionó anteriormente, la invención también puede
implementarse por ejemplo con un analizador de complejos armónicos.
En resumen, el codificador sinusoidal codifica la señal x2 de
entrada como pistas de componentes sinusoidales conectadas de un
segmento de trama al siguiente.
En referencia ahora a la figura 3a, de la misma
manera que en la técnica anterior, en la realización preferida,
cada segmento de la señal x2 de entrada se transforma en el dominio
de frecuencia en una unidad 40 de transformada de Fourier (FT).
Para cada segmento, la unidad de FT proporciona amplitudes A, fases
\phi y frecuencias \omega medidas. Como se mencionó
anteriormente, el rango de fases proporcionado por la transformada
de Fourier está restringido a -\pi \leq \phi < \pi. Una
unidad 42 de algoritmo de seguimiento (TRA) toma la información
para cada segmento y empleando una función del coste adecuada,
conecta sinusoides de un segmento al siguiente, produciendo de este
modo una secuencia de fases \phi(k) y frecuencias
\omega(k) medidas para cada pista.
Los códigos C_{S} sinusoidales producidos
finalmente por el analizador 130 incluyen información de fase y la
frecuencia se reconstruye a partir de esta información en el
decodificador. Según la presente invención, una tabla (Q) de
cuantificación o preferiblemente un índice (IND) que representa la
tabla (Q) de cuantificación se produce mediante el analizador 130
en lugar de un nivel r de representación cuando la subtrama
dada que está procesándose es una trama de acceso aleatorio, como
se explicará con más detalle en referencia a la figura 3b.
Como se mencionó anteriormente, sin embargo, la
fase \phi(k) medida está envuelta, lo que significa que se
restringe a una representación de módulo 2\pi. Por lo tanto, en la
realización preferida, el analizador comprende un desenvolvedor 44
de fase (PU) en el que la representación de fase de módulo 2\pi se
desenvuelve para mostrar el comportamiento \psi de fase entre
tramas estructural para una pista. Puesto que la frecuencia en las
pistas sinusoidales es casi constante, se observará que la fase
\psi desenvuelta será normalmente una función de aumento (o
disminución) casi lineal y esto hace posible una transmisión
económica de fase, es decir, con una baja tasa de transmisión de
bits. La fase \psi desenvuelta se proporciona como entrada a un
codificador 46 de fase (PE), que proporciona, como salida, niveles
r de representación cuantificados adecuados para
transmitirse (cuando una subtrama dada no es una trama de acceso
aleatorio).
En referencia ahora al funcionamiento del
desenvolvedor 44 de fase, como se mencionó anteriormente, la fase
\psi instantánea y la frecuencia \Omega instantánea para una
pista están relacionadas mediante:
donde T_{0} es un momento de
referencia en el
tiempo.
Una pista sinusoidal en tramas k = K, K+1 ...
K+L-1 tiene frecuencias \omega(k) medidas
(expresadas en radianes por segundo) y fases \phi(k)
medidas (expresadas en radianes). La distancia entre los centros de
las tramas viene dada por U (tasa de actualización expresada en
segundos). Se supone que las frecuencias medidas son muestras de la
supuesta pista \Omega de frecuencia de tiempo continuo subyacente
con \omega(k) = \Omega(kU) y, de manera similar,
las fases medidas son muestras de la pista \psi de fase de tiempo
continuo asociada con \phi(k) = \psi(kU) mod
(2\pi). Para la codificación sinusoidal, se supone que \Omega es
una función casi constante.
Suponiendo que las frecuencias son casi
constantes dentro de un segmento, la ecuación 1 puede aproximarse
de la siguiente manera:
Se observará por lo tanto que, conociendo la
fase y la frecuencia para un segmento dado y la frecuencia del
siguiente segmento, es posible estimar un valor de fase desenvuelta
para el siguiente segmento, y así sucesivamente para cada segmento
en una pista.
En la realización preferida, el desenvolvedor de
fase determina un factor m(k) para desenvolver en el momento
k de tiempo:
El factor m(k) para desenvolver indica al
desenvolvedor 44 de fase el número de ciclos que deben añadirse
para obtener la fase desenvuelta.
Combinando las ecuaciones 2 y 3, el
desenvolvedor de fase determina un factor e(k) para
desenvolver incremental de la siguiente manera:
\vskip1.000000\baselineskip
donde e será un número entero. Sin
embargo, debido a errores de medición y de modelo, el factor para
desenvolver incremental no será exactamente un número entero, de
modo
que:
suponiendo que los errores de
modelo y de medición son
pequeños.
Teniendo el factor e para desenvolver
incremental, se calcula el m(k) a partir de la ecuación (3)
como la suma acumulativa donde, sin perder generalidad, el
desenvolvedor de fase empieza en la primera trama K con m(K)
= 0, y a partir de m(k) y \phi(k), se determina la
fase \psi(kU) (desenvuelta).
\newpage
En la práctica, los datos \psi(kU) y
\Omega(kU) muestreados se distorsionan por errores de
medición:
\vskip1.000000\baselineskip
donde \varepsilon_{1} y
\varepsilon_{2} son los errores de fase y de frecuencia,
respectivamente. Con el fin de evitar que la determinación del
factor para desenvolver se vuelva ambigua, los datos de medición
tienen que determinarse con una precisión suficiente. Por tanto, en
la realización preferida, el seguimiento está restringido de modo
que:
\vskip1.000000\baselineskip
donde \delta es el error en la
operación de redondeo. El error \delta se determina principalmente
mediante los errores en \omega debido a la multiplicación por U.
Supongamos que \omega se determina a partir del máximo del valor
absoluto de la transformada de Fourier a partir de una versión
muestreada de la señal de entrada con la frecuencia F_{s} de
muestreo y que la resolución de la transformada de Fourier es
2\pi/L_{a} siendo L_{a} el tamaño de análisis. Con el fin de
estar dentro del límite considerado, se
aplica:
\vskip1.000000\baselineskip
Esto significa que el tamaño de análisis debería
ser varias veces mayor que el tamaño de actualización con el fin de
que la desenvoltura sea precisa, por ejemplo, estableciendo
\delta_{0} = 1/4, el tamaño de análisis debería ser cuatro
veces el tamaño de actualización (sin tener en cuenta los errores
\varepsilon_{1} en la medición de fase).
La segunda precaución, que puede tomarse para
evitar errores de decisión en la operación de redondeo, es definir
pistas de manera apropiada. En la unidad 42 de seguimiento, las
pistas sinusoidales se definen normalmente considerando las
diferencias de amplitud y frecuencia. Además, también es posible
tener en cuenta la información de fase en el criterio de conexión.
Por ejemplo, puede definirse el error \varepsilon de predicción de
fase como la diferencia entre el valor medido y el valor
\tilde{\phi} predicho según
\vskip1.000000\baselineskip
donde el valor predicho puede
adoptarse
como
\vskip1.000000\baselineskip
Por tanto, preferiblemente la unidad 42 de
seguimiento (TRA) prohíbe pistas en las que \varepsilon sea mayor
que un determinado valor (por ejemplo \varepsilon > \pi/2),
dando como resultado una definición inequívoca de e(k).
Además, el codificador puede calcular las fases
y las frecuencias tal como estarán disponibles en el decodificador.
Si las fases o frecuencias que se harán disponibles en el
decodificador difieren demasiado de las fases y/o las frecuencias
tal como están presentes en el codificador, puede decidirse
interrumpir una pista, es decir, señalizar el final de una pista y
empezar una nueva usando la frecuencia y fase actual y sus datos
sinusoidales conectados.
La fase \psi(kU) desenvuelta muestreada
producida por el desenvolvedor 44 de fase (PU) se proporciona como
entrada al codificador 46 de fase (PE) para producir el conjunto de
niveles r de representación (o según la presente invención, una
tabla (Q) de cuantificación o un índice (IND) que representa la
tabla (Q) de cuantificación cuando la subtrama dada que está
procesándose/transmitiéndose es una trama de acceso aleatorio. Se
conocen técnicas para una transmisión eficaz de una característica
que cambia en general de manera monótona tal como la fase
desenvuelta.
La figura 3b ilustra una realización preferida
del codificador 46 de fase (PE). En esta realización preferida, se
emplea modulación por codificación de impulsos diferencial
adaptativa (ADPCM). En este caso, se usa un predictor 48 (PF) para
estimar la fase del siguiente segmento de pista y codificar sólo la
diferencia en un cuantificador 50 (QT). Puesto que se espera que
\psi sea una función casi lineal y, también por motivos de
simplicidad, se elige el predictor 48 como filtro de segundo orden
de la forma:
donde x es la entrada e y es la
salida. Se verá, sin embargo, que también es posible adoptar otras
relaciones funcionales (incluyendo relaciones de orden superior) e
incluir adaptación (hacia atrás o hacia delante) de los
coeficientes de filtro. En la realización preferida, se usa un
mecanismo 52 de control adaptativo hacia atrás (QC) por motivos de
simplicidad para controlar el cuantificador 50 (QT). El control
adaptativo hacia atrás es posible igualmente aunque requeriría una
tasa de transmisión de bits
adicional.
Como se verá, la inicialización del codificador
(y decodificador) para una pista empieza con el conocimiento de la
frecuencia \omega(0) y fase \phi(0) de inicio.
Éstas se cuantifican y transmiten mediante un mecanismo
independiente. Además, la etapa de cuantificación inicial usada en
el controlador 52 de cuantificación (QC) del codificador y el
controlador 62 correspondiente en el decodificador, figura 5b, o
bien se transmite o bien se ajusta a un determinado valor tanto en
el codificador como el decodificador. Finalmente, el final de una
pista puede señalizarse o bien en un flujo lateral independiente o
bien como un símbolo único en el flujo de bits de las fases.
Se conoce la frecuencia inicial de la fase
desenvuelta, tanto en el codificador como en el decodificador. La
precisión de cuantificación se elige basándose en esta frecuencia.
Para las trayectorias de fase desenvuelta que empiezan con una
frecuencia baja, se elige una retícula de cuantificación más
precisa, es decir, una resolución mayor, que para una trayectoria
de fase desenvuelta que empieza con una frecuencia mayor.
En el cuantificador ADPCM, la fase
\psi(k) desenvuelta, en la que k representa el
número en la pista, se predice/estima a partir de las fases
anteriores en la pista. A continuación se cuantifica y transmite la
diferencia entre la fase \hat{\psi}(k) predicha y la fase
desenvuelta. El cuantificador se adapta para cada fase
\psi(k) desenvuelta en la pista. Cuando el error de
predicción es pequeño, el cuantificador limita el rango de posibles
valores y la cuantificación puede volverse más precisa. Por otro
lado, cuando el error de predicción es grande, el cuantificador usa
una cuantificación más basta.
El cuantificador Q en la figura 3b cuantifica el
error \Delta de predicción, que se calcula mediante
El error \Delta de predicción puede
cuantificarse usando una tabla de consulta. Para este fin, se
mantiene una tabla Q. Por ejemplo, para un cuantificador ADPCM de 2
bits, la tabla inicial para Q puede tener el aspecto de la tabla
mostrada en la tabla 2.
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
La cuantificación se realiza de la siguiente
manera. El error \Delta de predicción se compara con los límites
b, de modo que se cumple la siguiente ecuación:
bl_{i} <
\Delta \leq
bu_{i}
A partir del valor de i, que cumple la relación
anterior, se calcula el nivel r de representación mediante
r = i.
Los niveles de representación asociados se
almacenan en la tabla R de representación, que se muestra en la
tabla 3.
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
Las entradas de las tablas Q y R se multiplican
por un factor c para la cuantificación de la siguiente
componente sinusoidal en la pista.
\vskip1.000000\baselineskip
Durante la decodificación de una pista, ambas
tablas se ajustan a escala según los niveles r de
representación generados. Si r es 1 ó 2 (nivel interno) para
la subtrama actual, entonces el factor c de ajuste a escala
para la tabla de cuantificación se ajusta a
c =
2^{-1/4}
Puesto que c < 1, la frecuencia y la
fase de la siguiente sinusoide en una pista se vuelven más precisas.
Si r es 0 ó 3 (nivel externo), el factor de ajuste a escala
se ajusta a
c =
2^{1/2}
Puesto que c > 1, disminuye la
precisión de cuantificación para la siguiente sinusoide en una
pista. Usando estos factores, puede anularse un ajuste a escala
ascendente mediante dos ajustes a escala descendentes. La
diferencia en los factores de ajuste a escala ascendente y ajuste a
escala descendente da como resultado un inicio rápido de un ajuste
a escala ascendente, mientras que un ajuste a escala descendente
correspondiente requiere dos etapas.
Con el fin de evitar entradas muy pequeñas o muy
grandes en la tabla de cuantificación, la adaptación sólo se
realiza si el valor absoluto del nivel interno está entre \pi/64 y
3\pi/4. En caso de que el nivel interno sea menor que o igual a
\pi/64 o mayor que o igual a 3\pi/4 el factor c de ajuste
a escala se ajusta a 1.
En el decodificador, sólo la tabla R tiene que
mantenerse para convertir los niveles r de representación recibidos
en un error de predicción cuantificado. Esta operación de
decuantificación se realiza mediante el bloque 60 (DQ) en la figura
5b.
Usando los ajustes anteriores, la calidad del
sonido reconstruido requiere una mejora. Pueden usarse diferentes
tablas iniciales para pistas de fase desenvuelta, dependiendo de la
frecuencia inicial. Esto proporciona una mejor calidad de sonido.
Esto se realiza de la siguiente manera. Las tablas Q y R iniciales
se ajustan a escala basándose en una primera frecuencia de la
pista. En la tabla 4, los factores de ajuste a escala se dan junto
con los intervalos de frecuencias. Si la primera frecuencia de una
pista se sitúa en un determinado intervalo de frecuencias, se
selecciona el factor de ajuste a escala apropiado, y las tablas R y
Q se dividen por ese factor de ajuste a escala. Los puntos finales
también pueden depender de la primera frecuencia de la pista. En el
decodificador, se realiza un procedimiento correspondiente con el
fin de empezar con la tabla R inicial correcta.
La tabla 4 muestra un ejemplo de factores de
ajuste a escala dependientes de la frecuencia y las tablas Q y R
iniciales correspondientes para un cuantificador ADPCM de 2 bits. El
intervalo de frecuencias de audio 0-22050 Hz se
divide en cuatro subintervalos de frecuencias. Puede verse que la
precisión de fase se mejora en los intervalos de frecuencias
inferiores con respecto a los intervalos de frecuencias
superiores.
El número de subintervalos de frecuencias y los
factores de ajuste a escala dependientes de la frecuencia pueden
variar y pueden elegirse para que se adapten al fin y los requisitos
individuales. Como se describió anteriormente, las tablas Q y R
iniciales dependientes de la frecuencia en la tabla 4 pueden
ajustarse a escala de manera ascendente y ajustarse a escala de
manera descendente dinámicamente para adaptarse a la evolución en
la fase de un segmento de tiempo al siguiente.
Por ejemplo, en un cuantificador ADPCM de 3
bits, los límites iniciales de los ocho intervalos de cuantificación
definidos por los 3 bits pueden definirse de la siguiente
manera:
Q = {-\infty -1,41 -0,707 -0,35 0 0,35 0,707
1,41 \infty}, y pueden tener un tamaño de retícula mínimo
\pi/64, y un tamaño de retícula máximo \pi/2. La tabla R de
representación puede tener el siguiente aspecto:
R = {-2,117, -1,0585, -0,5285, -0,1750, 0,1750,
0,5285, 1,0585, 2,117}. En este caso, puede usarse una
inicialización dependiente de la frecuencia similar de la tabla Q y
R como se muestra en la tabla 4.
Según la presente invención, el cuantificador 50
(QT), el predictor 48 (PF) y el mecanismo 52 de control adaptativo
hacia atrás (QC) puede recibir además una señal de activación
(externa) (Activ.) que indica que la trama dada que está
procesándose es una trama de acceso aleatorio. Cuando no se recibe
ninguna señal de activación (Activ.), el proceso funciona
normalmente y sólo se transmiten los niveles r de
representación al decodificador. Cuando se recibe un activador
(Activ.) (lo que significa una trama de acceso aleatorio), no se
transmite ningún nivel r de representación sino que, en su
lugar, se transmiten la tabla (Q) de cuantificación o un índice
(IND) que representa la tabla (Q) de cuantificación, junto con la
fase (\phi(0)) actual y la frecuencia (\omega(0))
actual.
Mediante un ajuste apropiado de los parámetros
de cuantificador, sólo es posible un número limitado de tablas de
cuantificación. Para el ejemplo dado en la tabla 1, sólo hay 22
posibles tablas de cuantificación, que se enumeran a continuación
en la tabla 5 junto con un número de índice. Las entradas en la
tabla 5 son valores redondeados de 1,5\cdot2^{\tfrac{k}{4}},
donde k oscila entre -23, -22, ..., 5, 6.
Por consiguiente, en una realización preferida,
con el fin de reducir la cantidad de datos transmitidos, sólo se
transmite un índice que representa/identifica/indica la tabla (Q) de
cuantificación dada al codificador en el que el índice se usa para
recuperar la tabla de cuantificación apropiada usada como tabla
inicial, lo que se explica con más detalle en referencia a la
figura 5b.
\newpage
Preferiblemente, se genera un índice usando la
conocida codificación de Huffman. Para la tabla 5, tal índice
basado en codificación de Huffman puede ser tal como se enumera en
la tabla 6 a continuación:
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
En una realización preferida, en lugar de enviar
una tabla de cuantificación o estado de cuantificación dado (por
ejemplo 19: T_{1} = -0,1577; T_{2} = -0,0394; T_{3} = 0,0394;
T_{4} = 0,1577), sólo se transmite el índice (IND) (por ejemplo
010001), ahorrando de este modo tasa de transmisión de bits. Este
índice se usa entonces en el decodificador para recuperar la tabla
de cuantificación apropiada (por ejemplo, 19), que se usa entonces
según la presente invención.
De esta manera, se permite un acceso aleatorio a
la vez que se evita una larga adaptación para una alta precisión en
el cuantificador, porque no se requiere ningún reinicio del
cuantificador ya que la precisión actual de la tabla de
cuantificación se almacena y transmite al codificador (o bien
directamente, transmitiendo la tabla (Q) de cuantificación dada, o
bien indirectamente, transmitiendo un índice (IND) que hace
referencia/identifica de manera única/indica la tabla (Q) de
cuantificación dada. Además, la tabla de cuantificación se adapta
para que sea más rápida y/o se obtiene una tasa de transmisión de
bits inferior.
Las tramas de acceso aleatorio pueden
seleccionarse o identificarse, por ejemplo, seleccionando cada
enésima trama durante una pista, usando análisis de audio para
seleccionar puntos apropiados, etc. Para cada trama de acceso
aleatorio, la señal de activación se proporciona al cuantificador 50
(QT), 48 (PF) y 52 (QC) cuando está procesándose una trama de
acceso aleatorio.
A partir del código C_{s} sinusoidal generado
con el codificador sinusoidal, la componente de señal sinusoidal se
reconstruye mediante un sintetizador 131 sinusoidal (SS) de la misma
manera que se describirá para el sintetizador 32 sinusoidal (SS)
del decodificador. Esta señal se resta en el sustractor 17 de la
entrada x2 al codificador 13 sinusoidal, dando como resultado una
señal x3 residual. La señal x3 residual producida por el codificador
13 sinusoidal se pasa al analizador 14 de ruido de la realización
preferida que produce un código C_{N} de ruido representativo de
este ruido, tal como se describe, por ejemplo, en la publicación de
patente internacional n.º WO0189086.
Finalmente, en un multiplexor 15, se constituye
un flujo AS de audio que incluye los códigos C_{T}, C_{S} y
C_{N}. El flujo AS de audio se suministra, por ejemplo, a un bus
de datos, un sistema de antena, un medio de almacenamiento,
etc.
La figura 4 muestra un reproductor 3 de audio
que es adecuado para decodificar un flujo AS' de audio, por
ejemplo, generado por un codificador 1 de la figura 1, obtenido a
partir de un bus de datos, un sistema de antena, medio de
almacenamiento, etc. El flujo AS' de audio se demultiplexa en un
demultiplexador 30 para obtener los códigos C_{T}, C_{S} y
C_{N}. Estos códigos se suministran a un sintetizador 31
transitorio (TS), un sintetizador 32 sinusoidal (SS) y un
sintetizador 33 de ruido (NS), respectivamente. A partir del código
C_{T} transitorio, las componentes de señal transitorias se
calculan en el sintetizador 31 (TS) transitorio. Si el código
transitorio indica una función de forma, la forma se calcula
basándose en los parámetros recibidos. Además, el contenido de
forma se calcula basándose en las frecuencias y amplitudes de las
componentes sinusoidales. Si el código C_{T} transitorio indica
una etapa, no se calcula ningún transitorio. La señal y_{T}
transitoria total es una suma de todos los transitorios.
El código C_{S} sinusoidal que incluye la
información codificada mediante el analizador 130 se usa por el
sintetizador 32 sinusoidal para generar la señal y_{S}. Con
referencia ahora a las figuras 5a y b, el sintetizador 32
sinusoidal comprende un decodificador 56 de fase (PD) que es
compatible con el codificador 46 de fase. En este caso, un
decuantificador 60 (DQ) en conjunción con un filtro 64 de predicción
de segundo orden (PF) produce (una estimación de) la fase
\hat{\psi} desenvuelta de: los niveles r de representación; la
información \phi(0), \omega(0) actual
proporcionada al filtro 64 de predicción (PF) y la etapa de
cuantificación inicial para el controlador 62 de cuantificación
(QC). Si la trama es una trama de acceso aleatorio, la tabla (Q) de
cuantificación, recibida desde el codificador en lugar de los
niveles r de representación, se usa en el decuantificador 60 (DQ)
como la tabla inicial, como se explicará con más detalle a
continuación en el presente documento.
Como se ilustra en la figura 2b, la frecuencia
puede recuperarse de la fase \hat{\psi} desenvuelta mediante
diferenciación. Suponiendo que el error de fase en el decodificador
es aproximadamente blanco, y puesto que la diferenciación amplifica
las frecuencias altas, la diferenciación puede combinarse con un
filtro paso bajo para reducir el ruido y, por tanto, para obtener
una estimación precisa de la frecuencia en el decodificador.
En la realización preferida, una unidad 58 de
filtrado (FR) aproxima la diferenciación, lo que es necesario para
obtener la frecuencia \hat{\omega} a partir de la fase desenvuelta
mediante procedimientos como diferencias hacia delante, hacia atrás
o centrales. Esto permite al decodificador producir como salida las
fases \hat{\psi} y las frecuencias \hat{\omega} que pueden
usarse de manera convencional para sintetizar la componente
sinusoidal de la señal codificada.
Al mismo tiempo, a medida que se sintetizan las
componentes sinusoidales de la señal, el código C_{N} de ruido se
alimenta a un sintetizador 33 de ruido NS, que es principalmente un
filtro, que tiene una respuesta de frecuencia que se aproxima al
espectro del ruido. El NS 33 genera ruido y_{N} reconstruido
filtrando una señal de ruido blanco con el código C_{N} de ruido.
La señal y(t) total comprende la suma de la señal y_{T}
transitoria y el producto de cualquier descompresión (g) de amplitud
y la suma de la señal y_{S} sinusoidal y la señal y_{N} de
ruido. El reproductor de audio comprende dos sumadores 36 y 37 para
sumar señales respectivas. La señal total se suministra a una
unidad 35 de salida que, por ejemplo, es un altavoz.
Según la presente invención, para tramas de
acceso aleatorio, la tabla (Q) de cuantificación transmitida o un
índice (IND) se recibe desde el codificador en lugar de los niveles
r de representación. La indicación de que la trama recibida es una
trama de acceso aleatorio puede implementarse, por ejemplo,
añadiendo un campo adicional en la sintaxis de flujo de bits que
comprende el índice apropiado, por ejemplo, como se muestra en la
tabla 6, identificando de este modo la tabla (Q) de cuantificación
específica que va a usarse. El índice se obtiene a partir del
código de Huffman. Este índice indica la tabla que se usa para el
ADPCM, como se muestra en la tabla 5. Esta tabla incluye todas las
posibles tablas Q de cuantificación. El número depende de los
factores de ajuste a escala ascendente y ajuste a escala descendente
y de los valores mínimo y máximo del nivel interno.
Si la trama actual es una trama de acceso
aleatorio, lo que significa que la subtrama K incluye, para
cada sinusoide en la subtrama, el campo adicional de la sintaxis de
flujo de bits que tiene un valor de un código de Huffman
(suministrado a 62 (QC), 60 (DQ) y 64 (PF) como la señal de
activación (Activ.). Además, la subtrama K también incluye la
amplitud, la frecuencia y la fase directamente cuantificadas para
cada sinusoide tal como se especifica por el codificador. El campo
de la sintaxis de flujo de bits se decodifica mediante codificación
de Huffman y la tabla T apropiada se selecciona según la tabla 5.
Esta tabla se usa entonces para el decuantificador (60) (DQ) en la
siguiente subtrama (K+1). El filtro 64 de predicción (PF) se
reinicializa para la subtrama K+1 del mismo modo que para la
primera continuación:
donde U es el intervalo de
actualización. En este caso \phi es la fase y \omega es la
frecuencia transmitida en la subtrama K. La decodificación continúa
de la manera tradicional tal como se describió
anteriormente.
La figura 6 muestra un sistema de audio según la
invención, que comprende un codificador 1 de audio, tal como se
muestra en la figura 1, y un reproductor 3 de audio, tal como se
muestra en la figura 4. Un sistema de este tipo ofrece
características de reproducción y grabación. El flujo AS de audio se
suministra desde el codificador de audio al reproductor de audio a
través de un canal 2 de comunicación, que puede ser una conexión
inalámbrica, un bus 20 de datos o un medio de almacenamiento. Si el
canal 2 de comunicación es un medio de almacenamiento, el medio de
almacenamiento puede fijarse en el sistema o también puede ser un
disco extraíble, una tarjeta de memoria o chip u otra memoria de
estado sólido. El canal 2 de comunicación puede formar parte del
sistema de audio, aunque, sin embargo, con frecuencia estará fuera
del sistema de audio.
Las figuras 7a y 7b ilustran la información
enviada desde el codificador y recibida en el decodificador según
la técnica anterior y la presente invención, respectivamente. La
figura 7a muestra varias tramas (701; 703) con su frecuencia y
número de trama. La figura muestra además la información o los
parámetros que se transmiten desde un codificador a un
decodificador para cada (sub)trama según la técnica anterior.
Como puede verse, la fase (\phi(0)) inicial y la
frecuencia (\omega(0)) inicial se transmiten para el
nacimiento o inicio de la trama (701) de pista, mientras que un
nivel r de representación se transmite para cada una de las demás
tramas (703) que pertenecen a la pista.
La figura 7b ilustra varias tramas (701, 702,
703) mostradas con su frecuencia y número de trama según la
presente invención, así como la información o los parámetros que se
transmiten desde un codificador a un decodificador para cada
(sub)trama. Como puede verse, la fase (\phi(0))
inicial y la frecuencia (\omega(0)) inicial se transmiten
para el nacimiento o inicio de la trama (701) de pista, de manera
similar a la figura 7a, mientras que un nivel r de representación
se transmite para cada una de las demás tramas (703) que pertenecen
a la pista, excepto para una trama (702) de acceso aleatorio. Para
la trama (702) de acceso aleatorio, la fase (\phi(0))
actual y la frecuencia (\omega(0)) actual se transmiten
desde el codificador al decodificador junto con la tabla (Q) de
cuantificación relevante (o un índice, tal como se explicó
anteriormente). De esta manera, al menos parte del estado de
cuantificación se transmite desde el codificador al decodificador,
evitando de este modo artefactos audibles, tal como se explicó
anteriormente, a la vez que no se amplía demasiado la tasa de
transmisión de bits requerida.
Claims (12)
1. Procedimiento para codificar una señal de
audio, comprendiendo el procedimiento las etapas de:
- proporcionar un conjunto respectivo de valores
(x(t)) de señal muestreados para cada uno de una pluralidad
de segmentos de tiempo secuenciales;
- analizar los valores (x(t)) de señal
muestreados para determinar una o más componentes sinusoidales para
cada uno de la pluralidad de segmentos secuenciales;
- conectar componentes sinusoidales a lo largo
de una pluralidad de segmentos secuenciales para proporcionar
pistas sinusoidales, comprendiendo cada pista varias tramas;
estando caracterizado el procedimiento
porque comprende además las etapas de:
generar una fase (\phi) cuantificada para la
pluralidad de segmentos secuenciales mediante una cuantificación
predictiva de una fase de las componentes sinusoidales en una pista
usando una precisión de cuantificación adaptativa; y
- generar una señal (AS) codificada que incluye
códigos (C_{S}) sinusoidales que comprenden un nivel (r) de
representación para al menos una trama no designada como trama de
acceso aleatorio y donde algunos de estos códigos (C_{S})
comprenden una fase (\phi) cuantificada actual, una frecuencia
(\omega) actual y al menos uno de una tabla (Q) de cuantificación
y un índice (IND) de tabla de cuantificación para la tabla (Q) de
cuantificación para una trama dada cuando la trama dada se designa
como una trama de acceso aleatorio, reflejando la tabla (Q) de
cuantificación una precisión actual de la precisión de
cuantificación adaptativa para la trama de acceso aleatorio y no
comprendiendo la señal (AS) codificada datos de estado de predicción
para la cuantificación predictiva para la trama de acceso
aleatorio.
aleatorio.
2. Procedimiento según la reivindicación 1, en
el que se realiza una selección entre un código para una trama que
comprende un nivel (r) de representación y un código para una trama
que comprende una fase (\phi) actual, una frecuencia (\omega)
actual y al menos uno de una tabla (Q) de cuantificación y un índice
(IND) de tabla de cuantificación para la tabla (Q) de
cuantificación en función de una señal de activación (Activ.).
3. Procedimiento según la reivindicación 1 ó 2,
en el que cada tabla (Q) de cuantificación se representa por un
índice (IND) y en el que el índice (IND) se transmite desde el
codificador (1) al decodificador (3) en una trama (702) de acceso
aleatorio en lugar de transmitir la tabla (Q) de cuantificación.
4. Procedimiento según la reivindicación 3, en
el que el índice (IND) se genera o representa usando codificación
de Huffman.
5. Procedimiento para decodificar un flujo (AS')
de audio codificado, estando caracterizado el procedimiento
porque comprende la etapa de:
- recibir una señal que incluye el flujo (AS')
de audio codificado, comprendiendo el flujo (AS') de audio pistas
de códigos (C_{S}) sinusoidales, en el que los códigos (C_{S})
sinusoidales comprenden un nivel (r) de representación para al
menos una trama no designada como trama de acceso aleatorio y en el
que algunos de estos códigos (C_{S}) comprenden una fase (\phi)
cuantificada actual que es una cuantificación predictiva de una
fase de las componentes sinusoidales con una precisión de
cuantificación adaptativa, una frecuencia (\omega) actual y al
menos uno de una tabla (Q) de cuantificación y un índice (IND) de
tabla de cuantificación para la tabla (Q) de cuantificación para
una trama dada cuando la trama dada se designa como una trama de
acceso aleatorio, reflejando la tabla (Q) de cuantificación una
precisión actual de la precisión de cuantificación adaptativa para
la trama de acceso aleatorio y no comprendiendo la señal (AS)
codificada datos de estado de predicción para la cuantificación
predictiva para la trama de acceso
aleatorio.
aleatorio.
6. Procedimiento según la reivindicación 5, en
el que cada tabla (Q) de cuantificación se representa por un índice
(IND) y en el que el índice (IND) se recibe desde un codificador (1)
en lugar de una recepción de la tabla (Q) de cuantificación en una
trama (702) de acceso aleatorio.
7. Procedimiento según la reivindicación 6, en
el que el índice (IND) se genera o representa, usando codificación
de Huffman.
8. Codificador de audio dispuesto para procesar
un conjunto respectivo de valores de señal muestreados para cada
uno de una pluralidad de segmentos de tiempo secuenciales,
comprendiendo el codificador;
- un analizador para analizar los valores de
señal muestreados para determinar una o más componentes sinusoidales
para cada uno de la pluralidad de segmentos secuenciales;
- un elemento (13) de conexión para conectar
componentes sinusoidales a lo largo de una pluralidad de segmentos
secuenciales para proporcionar pistas sinusoidales, comprendiendo
cada pista varias tramas;
estando caracterizado el codificador
porque comprende además:
- medios para generar una fase (\phi)
cuantificada para la pluralidad de segmentos secuenciales mediante
una cuantificación predictiva de una fase de las componentes
sinusoidales en una pista usando una precisión de cuantificación
adaptativa;
- medios (15) para proporcionar una señal (AS)
codificada que incluye códigos (C_{S}) sinusoidales que comprenden
un nivel (r) de representación para al menos una trama no designada
como trama de acceso aleatorio y en el que algunos de estos códigos
(C_{S}) comprenden una fase (\phi) cuantificada actual, una
frecuencia (\omega) actual y al menos uno de una tabla (Q) de
cuantificación y un índice (IND) de tabla de cuantificación para la
tabla (Q) de cuantificación para una trama dada cuando la trama dada
se designa como una trama de acceso aleatorio, reflejando la tabla
(Q) de cuantificación una precisión actual de la precisión de
cuantificación adaptativa para la trama de acceso aleatorio y no
comprendiendo la señal (AS) codificada datos de estado de
predicción para la cuantificación predictiva para la trama de acceso
aleatorio.
9. Reproductor de audio, caracterizado
porque comprende:
- medios para recibir una señal que incluye el
flujo (AS') de audio codificado, comprendiendo el flujo (AS') de
audio pistas de códigos (C_{S}) sinusoidales, en el que los
códigos (C_{S}) sinusoidales comprenden un nivel (r) de
representación para al menos una trama no designada como trama de
acceso aleatorio y en el que algunos de estos códigos (C_{S})
comprenden una fase (\phi) cuantificada actual que es una
cuantificación predictiva de una fase de las componentes
sinusoidales con una precisión de cuantificación adaptativa, una
frecuencia (\omega) actual y al menos uno de una tabla (Q) de
cuantificación y un índice (IND) de tabla de cuantificación para la
tabla (Q) de cuantificación para una trama dada cuando la trama dada
se designa como una trama de acceso aleatorio, reflejando la tabla
(Q) de cuantificación una precisión actual de la precisión de
cuantificación adaptativa para la trama de acceso aleatorio y no
comprendiendo la señal (AS) codificada datos de estado de
predicción para la cuantificación predictiva para la trama de acceso
aleatorio, y
- un sintetizador dispuesto para emplear los
cero o más niveles de representación recibidos y la fase (\phi)
cuantificada, la frecuencia (\omega) y la tabla (Q) de
cuantificación para una trama dada cuando la trama dada se designa
como una trama de acceso aleatorio con el fin de sintetizar las
componentes sinusoidales de la señal (y(t)) de audio.
10. Sistema de audio que comprende un
codificador de audio según la reivindicación 8 y un reproductor de
audio según la reivindicación 9.
11. Flujo de audio que comprende códigos
(C_{S}) sinusoidales que representan pistas de componentes
sinusoidales conectadas a lo largo de una pluralidad de segmentos
de tiempo secuenciales de una señal de audio, en el que los códigos
(C_{S}) sinusoidales comprenden un nivel (r) de representación
para al menos una trama no designada como trama de acceso aleatorio
y en el que el flujo de audio se cuantifica porque algunos de estos
códigos (C_{S}) comprenden una fase (\phi) cuantificada actual
que es una cuantificación predictiva de una fase de las componentes
sinusoidales con una precisión de cuantificación adaptativa, una
frecuencia (\omega) actual y al menos uno de una tabla (Q) de
cuantificación y un índice (IND) de tabla de cuantificación para la
tabla (Q) de cuantificación para una trama dada cuando la trama dada
se designa como trama de acceso aleatorio, reflejando la tabla de
cuantificación una precisión actual de la precisión de
cuantificación adaptativa para la trama de acceso aleatorio y no
comprendiendo la señal (AS) codificada datos de estado de predicción
para la cuantificación predictiva para la trama de acceso
aleatorio.
12. Medio de almacenamiento en el que se ha
almacenado un flujo de audio según la reivindicación 11.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP03103774 | 2003-10-13 | ||
EP03103774 | 2003-10-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2337903T3 true ES2337903T3 (es) | 2010-04-30 |
Family
ID=34429478
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES04770161T Expired - Lifetime ES2337903T3 (es) | 2003-10-13 | 2004-10-04 | Codificacion de audio. |
Country Status (8)
Country | Link |
---|---|
US (1) | US7725310B2 (es) |
EP (1) | EP1676263B1 (es) |
JP (2) | JP2007509363A (es) |
CN (1) | CN1867969B (es) |
AT (1) | ATE452401T1 (es) |
DE (1) | DE602004024703D1 (es) |
ES (1) | ES2337903T3 (es) |
WO (1) | WO2005036529A1 (es) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7835917B2 (en) | 2005-07-11 | 2010-11-16 | Lg Electronics Inc. | Apparatus and method of processing an audio signal |
JP2009518659A (ja) * | 2005-09-27 | 2009-05-07 | エルジー エレクトロニクス インコーポレイティド | マルチチャネルオーディオ信号の符号化/復号化方法及び装置 |
FR2897212A1 (fr) * | 2006-02-09 | 2007-08-10 | France Telecom | Procede de codage d'un signal audio source, dispositif de codage, procede de decodage, signal, support de donnees, produits programme d'ordinateur correspondants |
DE102006022346B4 (de) * | 2006-05-12 | 2008-02-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Informationssignalcodierung |
US20080215342A1 (en) * | 2007-01-17 | 2008-09-04 | Russell Tillitt | System and method for enhancing perceptual quality of low bit rate compressed audio data |
KR20080073925A (ko) * | 2007-02-07 | 2008-08-12 | 삼성전자주식회사 | 파라메트릭 부호화된 오디오 신호를 복호화하는 방법 및장치 |
KR101080421B1 (ko) * | 2007-03-16 | 2011-11-04 | 삼성전자주식회사 | 정현파 오디오 코딩 방법 및 장치 |
KR101410229B1 (ko) | 2007-08-20 | 2014-06-23 | 삼성전자주식회사 | 오디오 신호의 연속 정현파 신호 정보를 인코딩하는 방법및 장치와 디코딩 방법 및 장치 |
KR101425354B1 (ko) * | 2007-08-28 | 2014-08-06 | 삼성전자주식회사 | 오디오 신호의 연속 정현파 신호를 인코딩하는 방법 및장치와 디코딩 방법 및 장치 |
US20110153337A1 (en) * | 2009-12-17 | 2011-06-23 | Electronics And Telecommunications Research Institute | Encoding apparatus and method and decoding apparatus and method of audio/voice signal processing apparatus |
FR2973552A1 (fr) * | 2011-03-29 | 2012-10-05 | France Telecom | Traitement dans le domaine code d'un signal audio code par codage micda |
EP2720222A1 (en) * | 2012-10-10 | 2014-04-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for efficient synthesis of sinusoids and sweeps by employing spectral patterns |
CN110019719B (zh) * | 2017-12-15 | 2023-04-25 | 微软技术许可有限责任公司 | 基于断言的问答 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4937873A (en) * | 1985-03-18 | 1990-06-26 | Massachusetts Institute Of Technology | Computationally efficient sine wave synthesis for acoustic waveform processing |
JPH0769714B2 (ja) * | 1987-04-10 | 1995-07-31 | 三洋電機株式会社 | 音声録音再生装置 |
DE4229372C2 (de) * | 1992-09-03 | 1997-07-03 | Inst Rundfunktechnik Gmbh | Verfahren zum Übertragen oder Speichern der Quantisierungsinformation bei einer bitratenreduzierenden Quellcodierung |
JPH11219198A (ja) * | 1998-01-30 | 1999-08-10 | Sony Corp | 位相検出装置及び方法、並びに音声符号化装置及び方法 |
JPH11219200A (ja) * | 1998-01-30 | 1999-08-10 | Sony Corp | 遅延検出装置及び方法、並びに音声符号化装置及び方法 |
JPH11224099A (ja) * | 1998-02-06 | 1999-08-17 | Sony Corp | 位相量子化装置及び方法 |
US7117053B1 (en) * | 1998-10-26 | 2006-10-03 | Stmicroelectronics Asia Pacific Pte. Ltd. | Multi-precision technique for digital audio encoder |
JP2001175283A (ja) * | 1999-12-14 | 2001-06-29 | Oki Micro Design Co Ltd | 適応差分パルス符号変調方式による録音再生装置 |
KR100780561B1 (ko) | 2000-03-15 | 2007-11-29 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 라게르 함수를 이용한 오디오 코딩 장치 및 방법 |
BR0012519A (pt) | 2000-05-17 | 2002-04-02 | Koninkl Philips Electronics Nv | Processo para modelar um espectro alvo, aparelho, processo e aparelho para suprimir ruìdo em um sinal de áudio, processo para decodificar um sinal de áudio codificado, codificador de áudio, reprodutor de áudio, sistema de áudio, sinal de áudio codificado, e, suporte para armazenamento |
JP5485488B2 (ja) * | 2000-06-20 | 2014-05-07 | コーニンクレッカ フィリップス エヌ ヴェ | 正弦波符号化 |
JP2002344328A (ja) * | 2001-05-21 | 2002-11-29 | Ricoh Co Ltd | 復号化装置、プログラム及び可変長符号の復号方法 |
JP2003110429A (ja) * | 2001-09-28 | 2003-04-11 | Sony Corp | 符号化方法及び装置、復号方法及び装置、伝送方法及び装置、並びに記録媒体 |
JP2003150197A (ja) * | 2001-11-09 | 2003-05-23 | Oki Electric Ind Co Ltd | 音声符号化装置及び音声復号化装置 |
US20030135374A1 (en) * | 2002-01-16 | 2003-07-17 | Hardwick John C. | Speech synthesizer |
JP4263412B2 (ja) * | 2002-01-29 | 2009-05-13 | 富士通株式会社 | 音声符号変換方法 |
JP2003233397A (ja) * | 2002-02-12 | 2003-08-22 | Victor Co Of Japan Ltd | オーディオ符号化装置、オーディオ符号化プログラム及びオーディオ符号化データ伝送装置 |
JP4296753B2 (ja) * | 2002-05-20 | 2009-07-15 | ソニー株式会社 | 音響信号符号化方法及び装置、音響信号復号方法及び装置、並びにプログラム及び記録媒体 |
JP4606171B2 (ja) | 2002-11-29 | 2011-01-05 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | オーディオデコーダ、オーディオプレーヤ、オーディオシステム、符号化方法及び復号化方法 |
-
2004
- 2004-10-04 CN CN200480029891.8A patent/CN1867969B/zh not_active Expired - Fee Related
- 2004-10-04 US US10/575,428 patent/US7725310B2/en not_active Expired - Fee Related
- 2004-10-04 ES ES04770161T patent/ES2337903T3/es not_active Expired - Lifetime
- 2004-10-04 EP EP04770161A patent/EP1676263B1/en not_active Expired - Lifetime
- 2004-10-04 WO PCT/IB2004/051963 patent/WO2005036529A1/en active Application Filing
- 2004-10-04 AT AT04770161T patent/ATE452401T1/de not_active IP Right Cessation
- 2004-10-04 JP JP2006534861A patent/JP2007509363A/ja active Pending
- 2004-10-04 DE DE602004024703T patent/DE602004024703D1/de not_active Expired - Lifetime
-
2011
- 2011-06-14 JP JP2011131730A patent/JP2011203752A/ja not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
CN1867969B (zh) | 2010-06-16 |
EP1676263A1 (en) | 2006-07-05 |
DE602004024703D1 (de) | 2010-01-28 |
JP2007509363A (ja) | 2007-04-12 |
EP1676263B1 (en) | 2009-12-16 |
ATE452401T1 (de) | 2010-01-15 |
US20070100639A1 (en) | 2007-05-03 |
WO2005036529A1 (en) | 2005-04-21 |
CN1867969A (zh) | 2006-11-22 |
JP2011203752A (ja) | 2011-10-13 |
US7725310B2 (en) | 2010-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2322264T3 (es) | Codificacion de audio de baja tasa de transmision de bits. | |
ES2434947T3 (es) | Procedimiento y dispositivo para la ocultación eficiente de un borrado de trama en códecs de voz | |
ES2223591T3 (es) | Codificacion eficaz de envolvente especial utilizando una resolucion tiempo/frecuencia variable. | |
ES2678894T3 (es) | Procesador de audio y método para procesar una señal de audio usando corrección de fase | |
ES2539304T3 (es) | Un aparato y un método para generar datos de salida por ampliación de ancho de banda | |
ES2261974T3 (es) | Parato decodificador y metodo de decodificacion audio basado en una duplicacion de banda espectral. | |
ES2337903T3 (es) | Codificacion de audio. | |
ES2714153T3 (es) | Decodificación de audio estéreo paramétrico | |
ES2434251T3 (es) | Método y aparato para generar una capa de mejora dentro de un sistema de codificación de audio de múltiples canales | |
ES2526767T3 (es) | Codificador de audio, procedimiento para codificar una señal de audio y programa de ordenador | |
ES2728329T3 (es) | Aparato y método para decodificar o codificar una señal de audio utilizando valores de información para una banda de reconstrucción | |
ES2334403T3 (es) | Metodo y aparato para decodificar una señal usando replicacion de banda espectral e interpolacion de factores de escala. | |
EP2998959B1 (en) | Method and apparatus for encoding high frequency band | |
ES2453098T3 (es) | Códec multimodo de audio | |
ES2703327T3 (es) | Codificador, decodificador y métodos para codificación espacial de objetos de audio de multirresolución retrocompatible | |
ES2298568T3 (es) | Descodificacion de audio. | |
US7596490B2 (en) | Low bit-rate audio encoding | |
US20060009967A1 (en) | Sinusoidal audio coding with phase updates |