ES2683077T3 - Codificador y decodificador de audio para codificar y decodificar tramas de una señal de audio muestreada - Google Patents

Codificador y decodificador de audio para codificar y decodificar tramas de una señal de audio muestreada Download PDF

Info

Publication number
ES2683077T3
ES2683077T3 ES08017661.3T ES08017661T ES2683077T3 ES 2683077 T3 ES2683077 T3 ES 2683077T3 ES 08017661 T ES08017661 T ES 08017661T ES 2683077 T3 ES2683077 T3 ES 2683077T3
Authority
ES
Spain
Prior art keywords
excitation
frames
frame
audio
samples
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.)
Active
Application number
ES08017661.3T
Other languages
English (en)
Inventor
Ralf Geiger
Bernhard Grill
Bruno Bessette
Philippe Gournay
Guillaume Fuchs
Markus Multrus
Max Neuendorf
Gerald Schuller
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
VoiceAge Corp
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Original Assignee
VoiceAge Corp
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by VoiceAge Corp, Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV filed Critical VoiceAge Corp
Application granted granted Critical
Publication of ES2683077T3 publication Critical patent/ES2683077T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/20Vocoders using multiple modes using sound class specific coding, hybrid encoders or object based coding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/06Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/12Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0212Speech 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 using orthogonal transformation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters

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)
  • Theoretical Computer Science (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

Un codificador de audio (10) adaptado para codificar tramas de una señal de audio muestreada para obtener tramas finalmente codificadas, en el que una trama comprende un número de muestras de audio de dominio del tiempo, que comprende: una etapa de análisis de codificación predictiva (12) para determinar información sobre los coeficientes de un filtro de síntesis y tramas de excitación basándose en tramas de muestras de audio, una trama de excitación que comprende muestras de una señal de excitación para el filtro de síntesis; un transformador de introducción de solapamiento en tiempo (14) para transformar tramas de excitación superpuestas a un dominio de frecuencia para obtener espectros de trama de excitación, en el que el transformador de introducción de solapamiento en tiempo (14) está adaptado para transformar las tramas de excitación superpuestas de una manera críticamente muestreada; un codificador reductor de redundancias (16) para codificar los espectros de trama de excitación para obtener tramas codificadas basándose en los coeficientes y los espectros de trama de excitación, un codificador de libro de códigos (13) para codificar las tramas de excitación basándose en un libro de códigos predeterminado para obtener tramas de dominio de excitación codificadas de libro de códigos; y un tomador de decisión (15) para decidir si usar una trama de dominio de excitación codificada de libro de códigos o una trama codificada para obtener una trama finalmente codificada basándose en una medida de eficiencia de codificación.

Description

5
10
15
20
25
30
35
40
45
50
55
60
Codificador y decodificador de audio para codificar y decodificar tramas de una senal de audio muestreada
descripcion
La presente invencion se refiere a la codificacion de fuente y particularmente a la codificacion de una fuente de audio, en la que una senal de audio se procesa por dos codificadores de audio diferentes que tienen diferentes algoritmos de codificacion.
En el contexto de tecnologfa de codificacion de audio y del habla de baja tasa de bits se han empleado tradicionalmente diferentes tecnicas de codificacion para lograr codificacion de baja tasa de bits de dichas senales con la mejor calidad subjetiva posible a una tasa de bits dada. Los codificadores para musica general / senales de sonido buscan optimizar la calidad subjetiva conformando una forma espectral (y temporal) del error de cuantificacion de acuerdo con una curva del umbral de enmascaramiento que se estima de la senal de entrada por medio del modelo perceptual (“codificacion de audio perceptual”). Por otro lado, se ha demostrado que la codificacion del habla a tasas de bits muy bajas funciona de manera eficiente cuando se basa en un modelo de produccion del habla humano, es decir, empleando Codificacion de Prediccion Lineal (LPC) para modelar efectos resonantes del tracto vocal humano junto con una codificacion eficiente de la senal de excitacion residual.
Como consecuencia de estos dos enfoques diferentes, los codificadores de audio generales, como MPEG-1 Capa 3 (MPEG = Grupo de Expertos de Imagenes en Movimiento), o MPEG-2/4 Codificacion de Audio Avanzada (aAc), generalmente, no funcionan tan bien para las senales del habla a tasas de datos muy bajas como los codificadores de habla basados en LPC especializados debido a la falta de aprovechamiento de un modelo fuente de habla. Por el contrario, los codificadores de habla basados en LPC, generalmente, no alcanzan resultados convincentes cuando se aplican a senales de musica generales por su incapacidad de conformar de manera flexible la envolvente espectral de la distorsion de codificacion de acuerdo con una curva de umbral de enmascaramiento. A continuacion, se describen conceptos que combinan las ventajas de la codificacion basada en LPC y la codificacion de audio perceptual en una misma estructura y por lo tanto se describe una codificacion de audio unificada que es eficiente tanto para el audio general como para las senales del habla.
Tradicionalmente, los codificadores de audio perceptuales usan un enfoque basado en banco de filtros para codificar de manera eficiente senales de audio y conformar la distorsion de cuantificacion de acuerdo con una estimacion de la curva de enmascaramiento.
La Fig. 16a muestra un diagrama de bloques basico de un sistema de codificacion perceptual monofonico. Se usa un banco de filtros de analisis 1600 para mapear las muestras de dominio de tiempo en componentes espectrales submuestreados. Dependiendo del numero de componentes espectrales, tambien se hace referencia al sistema como codificador de subbandas (numero pequeno de sub-bandas, por ejemplo, 32) o un codificador transformador (gran numero de lmeas de frecuencia, por ejemplo, 512). Se utiliza un modelo perceptual (“psicoacustico”) 1602 para estimar el umbral de enmascaramiento dependiente de tiempo real. Los componentes espectrales (“subbanda” o “dominio de frecuencia”) se cuantifican y codifican 1604 de manera que el ruido de cuantificacion se oculta bajo la senal transmitida real y no es perceptible despues de la decodificacion. Esto se logra mediante la variacion de la granularidad de cuantificacion de los valores espectrales sobre el tiempo y la frecuencia.
Los coeficientes espectrales cuantificados y codificados por entropfa o valores de subbanda, ademas de ser informacion complementaria, se introducen en un formateador de secuencia de bits 1606, que proporciona una senal de audio codificada que es adecuada para transmitirse o almacenarse. La secuencia de bits de salida del bloque 1606 puede transmitirse por medio de Internet o puede almacenarse en cualquier potador de datos legible por maquina.
En el lado de decodificador, una interfaz de entrada de decodificador 1610 recibe la secuencia de bits codificada. El bloque 1610 separa los valores espectrales/de subbanda codificados por entropfa y cuantificados de la informacion complementaria. Los valores espectrales codificados se introducen en un decodificador por entropfa como un decodificador de Huffman, que se situa entre 1610 y 1620. Las salidas de este decodificador por entropfa son valores espectrales cuantificados. Estos valores espectrales cuantificados se introducen en un recuantificador, que realiza una cuantificacion “inversa” como se indica en 1620 en la Fig. 16. La salida del bloque 1620 se introduce en un banco de filtros de smtesis 1622, que realiza un filtrado de smtesis que incluye una transformacion de frecuencia/tiempo y, tfpicamente, una operacion de cancelacion de solapamiento de dominio de tiempo tal como una superposicion y adicion y/o una operacion de generacion de ventanas del lado de smtesis para obtener finalmente la senal de audio de salida.
Las Figs. 16b, 16c indican una alternativa al concepto de codificacion perceptual basado en banco de filtros completo de la Figura 16a, en el que se implementa un enfoque de pre-filtracion en el lado del codificador y un enfoque de post-filtracion en el lado del decodificador.
5
10
15
20
25
30
35
40
45
50
55
60
En el documento de B. Edler, G. Schuller, “Audio coding using a psychoacoustic pre- and post-filter”, ICASSP 2000, volumen 2, 5-9 de junio 2000 pagina o paginas 11881 - II884 vol.2, los autores desvelan un codificador de audio perceptual que separa los aspectos de reduccion de irrelevancia (es decir conformacion de ruido de acuerdo con criterios perceptuales) y reduccion de redundancia (es decir obtener una representacion de informacion matematicamente mas compacta) usando un denominado pre-filtro en lugar de una cuantificacion variable de los coeficientes espectrales a traves de la frecuencia. El principio se ilustra en la Figura 16b. La senal de entrada se analiza por un modelo perceptual 1602 para calcular una estimacion de la curva de umbral de enmascaramiento a traves de la frecuencia. El umbral de enmascaramiento se convierte en un conjunto de coeficientes de pre-filtro de manera que la magnitud de su respuesta de frecuencia es inversamente proporcional al umbral de enmascaramiento. La operacion de pre-filtro aplica a este conjunto de coeficientes a la senal de entrada, que produce una senal de salida en la que se representan todos los componentes de frecuencia de acuerdo con su importancia perceptual (“blanqueamiento perceptual”). Esta senal se codifica posteriormente por cualquier clase de codificador de audio 1632, que produce una distorsion de cuantificacion “blanca”, es decir no aplica ninguna conformacion de ruido perceptual. La transmision / almacenamiento la senal de audio incluye tanto el flujo de bits del codificador como una version codificada de los coeficientes de pre-filtracion. En el decodificador de la Figura 16c, la secuencia de bits se decodifica (1634) en la senal de audio perceptualmente blanqueada, que contiene ruido de cuantificacion blanco aditivo. Esta senal se somete a continuacion a una operacion de post-filtracion 1640 de acuerdo con los coeficientes de filtro transmitidos. Puesto que el post-filtro realiza el proceso de filtracion inverso con relacion al pre-filtro, reconstruye la senal de entrada de audio original desde la senal perceptualmente blanqueada. El ruido de cuantificacion blanco aditivo, se conforma espectralmente como la curva de enmascaramiento por el post-filtro y por lo tanto aparece perceptualmente coloreado en la salida del decodificador, segun se pretende.
Puesto que en un esquema de este tipo se consigue conformacion de ruido perceptual mediante la etapa de pre- /post-filtracion en lugar de la cuantificacion dependiente de la frecuencia de coeficientes espectrales, el concepto puede generalizarse para incluir el mecanismo de codificacion no basado en banco de filtros para representar la senal de audio pre-filtrada en lugar de un codificador de audio basado en banco de filtros. En el documento de G. Schuller, B. Yu, D. Huang, y B. Edler, “Perceptual Audio Coding using Adaptive Pre- and Post-Filters and Lossless Compression”, IEEE Transactions on Speech and Audio Processing, septiembre de 2002, pags. 379-390, esto se muestra para el nucleo de codificacion de dominio de tiempo usando etapas de codificacion predictiva y por entropfa.
Para posibilitar la conformacion de ruido espectral apropiada usando tecnicas de pre-/post-filtracion, es importante adaptar la resolucion de frecuencia del pre-/post-filtro a la del sistema auditivo humano. De manera ideal, la resolucion de frecuencia seguina escalas de frecuencia perceptualmente bien conocidas, tales como la escala de frecuencia BARK o ERB, consultese. Zwicker, E. y H. Fastl, “Psychoacoustics, Facts and Models”, Springer Verlag, Berlin. Esto es especialmente deseable para minimizar el orden del modelo de pre-/post-filtro y por lo tanto la complejidad computacional asociada y la tasa de transmision de informacion secundaria.
La adaptacion de la resolucion de frecuencia del pre-/post-filtro puede conseguirse mediante el concepto de envolvimiento de frecuencia bien conocido, consultese. M. Karjalainen, A. Harma, U.K. Laine, “Realizable warped IIR filters and their properties”, IEEE ICASSP 1997, pags. 2205 - 2208, vol. 3. Esencialmente, los retardos de unidad en una estructura de filtro se sustituyen por filtros paso todo (de primer orden o superior), que conduce a una deformacion no uniforme (“envolvimiento”) de la respuesta de frecuencia del filtro. Se ha mostrado que incluso usando un filtro paso todo de primer orden, por ejemplo
z_1 - K
imagen1
es posible una aproximacion bastante precisa de escalas de frecuencia perceptuales mediante una eleccion apropiada de los coeficientes paso todo, consultese. J.O. Smith, J.S. Abel, “Bark and ERB Bilinear Trans-forms”, IEEE Transactions on Speech and Audio Processing, volumen 7, edicion 6, noviembre de 1999, pags. 697 - 708. Por lo tanto, los sistemas mas conocidos no hacen uso de filtros paso todo de orden superior para envolvimiento de frecuencia. Puesto que un filtro paso todo de primer orden se determina completamente por un unico parametro escalar (que se denominara como el “factor de envolvimiento” -1 < X < 1), que determina la deformacion de la escala de frecuencia. Por ejemplo, para un factor de envolvimiento de X = 0, ninguna deformacion es efectiva, es decir el filtro opera en la escala de frecuencia normal. Cuanto mas alto se elige el factor de envolvimiento, mas resolucion de frecuencia se centra en la parte de frecuencia inferior del espectro (ya que es necesario aproximar una escala de frecuencia perceptual), y tomarse de la parte de frecuencia superior del espectro.
Usando un pre-/post-filtro envuelto, los codificadores de audio, tipicamente usan un orden de filtro de entre 8 y 20 a tasas de muestreos comunes como 48 kHz o 44,1 kHz S. Wabnik, G. Schuller, U. Kramer, J. Hirschfeld, “Frequency Warping in Low Delay Audio Coding”, IEEE International Conference on Acoustics, Speech, and Signal Processing, marzo de 18-23, 2005, Filadelfia, PA, Estados Unidos.
5
10
15
20
25
30
35
40
45
50
55
60
Se han descrito varias otras aplicaciones de filtracion de envolvimiento, por ejemplo modelacion de respuestas de impulso de sala, consultese. Harma Aki, Karjalainen Matti, Savioja Lauri, Valimaki Vesa, Laine Unto K., Huopaniemi Jyri, “Frequency-Warped Signal Processing for Audio Applications”, Journal of the AES, volumen 48 numero 11 paginas. 1011-1031, noviembre de 2000 y modelacion parametrica de un componente de ruido en la senal de audio (bajo el nombre equivalente filtracion Laguerre / Kauz), consultese. E. Schuijers, W. Oomen, B. den Brinker, J. Breebaart, “Advances in Parametric Coding for High-Quality Audio”, 114th Convention, Amsterdam, Pafses Bajos 2003, pre-impresion 5852.
Tradicionalmente, la codificacion del habla eficiente se ha basado en la Codificacion de Prediccion Lineal (LPC) para modelar los efectos resonantes del tracto vocal humano junto con una codificacion eficiente de la senal de excitacion residual. Tanto los parametros de LPC como de excitacion se transmiten del codificador al decodificador. Este principio se ilustra en las Figs. 17a y 17b.
La Fig. 17a indica el lado de codificador de un sistema de codificacion/decodificacion basado en la codificacion de prediccion lineal. La entrada de habla es la entrada en un analizador de LPC 1701, que proporciona, en su salida, coeficientes de filtro de LPC. Basandose en estos coeficientes de filtro de LPC, se ajusta un filtro de LPC 1703. El filtro de LPC emite una senal de audio espectralmente blanqueada, que tambien se denomina “senal de error de prediccion”. Esta senal de audio espectralmente blanqueada se introduce en un codificador residual/de excitacion 1705, que genera parametros de excitacion. Por lo tanto, la entrada del habla se codifica en parametros de excitacion, por un lado, y coeficientes de LPC, por otro lado.
En el lado de decodificador ilustrado en la Fig. 17b, los parametros de excitacion se introducen en un decodificador de excitacion 1707, que genera una senal de excitacion, que puede introducirse en un filtro de LPC inverso. El filtro de LPC inverso se ajusta usando los coeficientes de filtro de LPC transmitidos. Por lo tanto, el filtro de LPC 1709 inverso genera una senal de salida de habla reconstruida o sintetizada.
A traves del tiempo, se han propuesto muchos metodos con respecto a una representacion eficiente y perceptualmente convincente de la senal residual (de excitacion), tal como Excitacion de Multi-Pulso (MPE), Excitacion de Pulso Regular (RPE), y Prediccion Lineal Excitada por Codigo (CELP).
La Codificacion de Prediccion Lineal intenta producir una estimacion del valor de muestra actual de una secuencia basada en la observacion de un cierto numero de valores pasados como una combinacion lineal de las observaciones pasadas. Para reducir redundancias en la senal de entrada, el filtro de codificador de LPC “blanquea” la senal de entrada en su envolvente espectral, es decir, es un modelo de la inversa de la envolvente espectral de la senal. Por el contrario, el filtro de LPC del decodificador es un modelo de la envolvente espectral de la senal. Espedficamente, el analisis predictivo lineal autor-regresivo (AR) bien conocido se sabe que modela la envolvente espectral de senal por medio de una aproximacion todo polo.
Tfpicamente, los codificadores de habla de banda estrecha (es decir, codificadores de habla con tasa de muestreo de 8 kHz) emplean un filtro de LPC con un orden de entre 8 y 12. Debido a la naturaleza del filtro de LPC, una resolucion de frecuencia uniforme es efectiva a traves del rango de frecuencia completa. Esto no se corresponde con una escala de frecuencia perceptual.
Observando que una sensibilidad de frecuencia no uniforme, segun se ofrece por tecnicas de envolvimiento, puede ofrecer ventajas tambien para codificacion del habla, ha habido propuestas para sustituir el analisis de LPC normal por analisis predictivo de envolvimiento, por ejemplo K. Tokuda, H. Matsumura, T. Kobayashi y S. Imai, “Speech coding based on adaptive melcepstral analysis”, Proc. IEEE ICASSP'94, pags. 197-200, abril de 1994 o K. Koishida, K. Tokuda, T. Kobayashi y S. Imai, “CELP coding based on melcepstral analysis”, Proc. IEEE ICASSP'95, pags. 3336, 1995. Son conocidas otras combinaciones de codificacion de LPC y CELP de envolvimiento, por ejemplo a partir de Aki Harma, Unto K. Laine, Matti Karjalainen, “Warped low-delay CELP for wideband audio coding”, 17th International AES Conference, Florencia, Italia 1999.
Para combinar las fuerzas de la codificacion basada en LPC/CELP tradicional (mejor calidad para senales de habla) y el enfoque de codificacion de audio perceptual basado en banco de filtros tradicional (mejor para musica), se ha propuesto una codificacion combinada entre estas arquitecturas. En el codificador AMR-WB+ (AMR-WB = Banda Ancha de Tasa Multiple Adaptativo) B. Bessette, R. Lefebvre, R. Salami, “UNIVERSAL SPEECH/AUDIO CODING USING HYBRID ACELP/TCX TECHNIQUES,” Proc. IEEE ICASSP 2005, pags. 301 - 304, 2005 dos nucleos de codificacion alternativos operan en una senal residual de LPC. Una esta basada en ACELP (ACELP = Prediccion Lineal por Excitacion con Codigo Algebraico) y, por lo tanto, es extremadamente eficiente para la codificacion de senales del habla. El otro nucleo de codificacion esta basado en TCX (TCX = Excitacion Codificada por Transformada), es decir, un enfoque de codificacion basado en banco de filtros que se asemeja a las tecnicas de codificacion de audio tradicionales para lograr buena calidad para las senales musicales. Dependiendo de las caractensticas de las senales de entrada, uno de los dos modos de codificacion se selecciona por un periodo corto de tiempo para transmitir la senal residual de LPC. De esta forma, tramas de 80 ms de duracion pueden dividirse en
5
10
15
20
25
30
35
40
45
50
55
60
subtramas de 40 ms o 20 ms en las que se toma una decision entre los dos modos de codificacion.
El AMR-WB+ (AMR-WB+ = Codec de Banda Ancha de Tasa Multiple Adaptivo extendido), consultese 3GPP (3GPP = Proyecto de Asociacion de Tercera Generacion) especificacion tecnica numero 26.290, version 6.3.0, junio de 2005, puede cambiar entres dos modos esencialmente diferentes ACELP y TCX. El modo ACELP una senal de dominio de tiempo se codifica por la excitacion de codigo algebraico. En el modo TCX se usa una transformada de Fourier rapida (FFT = transformada de Fourier rapida) y los valores espectrales de la senal de excitacion se codifican basandose en la cuantificacion vectorial.
La decision, de que modos usar, puede tomarse probando y decodificando las dos opciones y comparando las relaciones de senal a ruido (SNR = Relacion de Senal a Ruido).
Este caso tambien se llama decision de bucle cerrado, ya que hay un bucle de control cerrado, evaluando los rendimientos y/o eficiencias de codificacion, respectivamente, y a continuacion eligiendo los que tengan mejor SNR mediante el descartando los otros. AMR-WB+ tambien tiene un modo de decision de bucle abierto, donde basandose en criterios de decision, como, por ejemplo, ciertas propiedades de senal como la transitoriedad, se predetermina una decision sobre si usar ACELP o TCX.
Se sabe que para las aplicaciones de audio y habla una transformada de bloque sin generacion de ventanas no es factible. Por lo tanto, para el modo TCX la senal se genera en ventanas con una ventana de superposicion baja con una superposicion de 1/8. Esta region de superposicion es necesaria para el desvanecimiento de un bloque o trama anterior mientras que se funde en el proximo, por ejemplo, para suprimir artefactos debido al ruido de cuantificacion no correlacionado en tramas de audio consecutivas. De esta manera, la sobrecarga comparada con el muestreo no cntico se mantiene razonablemente baja y la decodificacion necesaria para la decision de bucle cerrado reconstruye al menos 7/8 de las muestras de la trama actual.
El AMR-WB+ introduce 1/8 de sobrecarga en el modo TCX, es decir, el numero de valores espectrales a codificarse es 1/8 mayor que el numero de muestras de entrada. Esto proporciona la desventaja de una sobrecarga de datos mayor. Asimismo, la respuesta de frecuencia de los filtros de paso banda correspondientes no es ventajosa debido a la profunda region de superposicion de 1/8 de tramas consecutivas.
Para detallar mas una sobrecarga de codigo y superposicion de tramas consecutivas, la Fig. 18 ilustra una definicion de parametros de ventana. La ventana que se muestra en la Fig. 18 tiene una parte de borde de subida en el lado izquierdo, que se denomina “L” y tambien se llama region de superposicion izquierda, una region central que se denomina con “M”, que tambien se llama region de 1 o parte de desvfo, y una parte de borde de bajada, que se denomina “R” y tambien se llama la region de superposicion derecha. Ademas, la Fig. 18 muestra una flecha que indica la region “PR” de reconstruccion perfecta dentro de una trama. Ademas, la Fig. 18 muestra una flecha que indica la longitud del nucleo de transformada, que se denomina “T”.
La Fig. 19 muestra una vista grafica de una secuencia de ventanas AMR-WB+ y en la parte inferior una tabla de un parametro de ventana de acuerdo con la Fig. 18. La secuencia de ventanas que se muestra en la parte superior de la Fig. 19 es ACELP, TCX20 (para una trama de 20 ms de duracion), TCX20, TCX40 (para una trama de 40 ms de duracion), TCX80 (para una trama de 80 ms de duracion), TCX20, TCX20, ACELP, AcElP.
De la secuencia de ventanas pueden verse las regiones de superposicion variables, que se superponen exactamente 1/8 de la parte central M. La tabla en la parte inferior de la Fig. 19 tambien muestra que la longitud de transformada “T” es siempre 1/8 mas grande que la region de muestras nuevas perfectamente reconstruidas “PR”. Asimismo, debe observarse que no es solamente el caso de transiciones ACELP a TCX, pero tambien para transiciones de TCXx a TCXx (en el que “x” indica tramas TCX de longitud arbitraria). Por lo tanto, en cada bloque se introduce una sobrecarga de 1/8, es decir, la muestra cntica nunca se alcanza.
Cuando se cambia de TCX a ACELP las muestras de ventana se descartan de la trama FFT-TCX en la region de superposicion, como se indica, por ejemplo, en la parte superior de la Fig. 19 mediante la region marcada con 1900. Cuando se cambia de ACELP a TCX la respuesta de entrada cero (ZIR = respuesta entrada cero), que tambien se indica por la lmea discontinua 1910 en la parte superior de la Fig. 19, se elimina en el codificador para la generacion en ventanas y se agrega al decodificador para la recuperacion. Cuando se cambia de tramas TCX a TCX las muestras divididas en ventanas se usan para desvanecimiento cruzado. Dado que las tramas TCX puede cuantificarse de manera diferente, el error de cuantificacion o ruido de cuantificacion entre tramas consecutivas puede ser diferente y/o independiente. Por tanto, cuando se cambia de una trama a la otra sin desvanecimiento cruzado, pueden ocurrir artefactos notables y, en consecuencia, el desvanecimiento cruzado es necesario para conseguir una cierta determinada.
De la tabla en la parte inferior de la Fig. 19 se puede ver que la region de desvanecimiento cruzado crece con una longitud creciente de la trama. La Fig. 20 proporciona otra tabla con ilustraciones de las diferentes ventanas para las
5
10
15
20
25
30
35
40
45
50
55
60
transiciones posibles en AMR-WB+. Cuando se pasa de TCX a ACELP las muestras de superposicion pueden descartarse. Cuando se pasa de ACELP a TCX, la respuesta de entrada cero desde el ACELP puede eliminarse en el codificador y anadirse al decodificador para la recuperacion.
Es una desventaja significativa de AMR-WB+ que siempre se introduzca una sobrecarga de 1/8.
La publicacion tecnica “A Multimode Transform Predictive Coder (MTPC)for Speech and Audio”, S.A. Ramprashad, IEEE workshop on speech coding proceedings, module, coders and error criteria, 1999, paginas 10-12, desvela que los codificadores del habla funcionan mejor en el habla y que los codificadores de audio funcionan mejor en musica. Para fusionar las dos tecnologfas en un unico paradigma de codificacion, se desvela un codificador de habla y de audio multimodo que puede estar adaptado casi continuamente entre un modo de codificacion de habla y de audio. El codificador tiene, como el modo 1, un modo de habla que se usa principalmente para segmentos de senal con espectros que cambian rapidamente. En el modo 3 o modo de audio se usa para senales que tienen espectros que vanan de manera lenta, que vanan lentamente las energfas de senal de subtrama y que tienen ganancias de codificacion de LP de moderadas a altas. Las senales que tienen como objetivo este modo incluyen musica y secuencias vocales. Se usa un modo adicional 2a,b,c o modo de transicion para senales con ganancias de prediccion a largo plazo y espectros o energfas de senal de subtrama que cambian rapidamente. Las senales con bajas ganancias de codificacion de LP se usan tambien para este modo. El modo 2 consiste en tres sub-modos principales y se usa para segmentos de habla no vocalizados, ruido de fondo y segmentos transitorios en musica.
El objetivo de la presente invencion es proporcionar un concepto mas eficiente para la codificacion de audio.
El objetivo se logra mediante un codificador de audio de acuerdo con la reivindicacion 1, un metodo para la codificacion de audio de acuerdo con la reivindicacion 11, un decodificador de audio de acuerdo con la reivindicacion 13 y un metodo para la decodificacion de audio de acuerdo con la reivindicacion 19.
Las realizaciones de la presente invencion se basan en el hallazgo de que puede llevarse a cabo una codificacion mas eficiente si se usan transformadores de introduccion de solapamiento en tiempo, por ejemplo, para codificacion TCX. Los transformadores de introduccion de solapamiento en tiempo pueden permitir alcanzar muestras cnticas mientras que al mismo tiempo puede desvanecerse de manera cruzada entre las tramas adyacentes. Por ejemplo, en una realizacion se usa la transformada del coseno discreta modificada (MDCT = Transformada del Coseno Discreta Modificada) para transformar tramas de dominio de tiempo superpuestas en el dominio de frecuencia. Dado que esta transformacion particular produce solo N muestras de dominio de frecuencia para 2N muestras de dominio de tiempo, puede mantenerse el muestreo cntico, a pesar de que las tramas de dominio de tiempo puedan superponerse en un 50 %. En el decodificador o en el transformador de introduccion de solapamiento en tiempo inverso una etapa de superposicion y adicion puede estar adaptado para combinar las muestras de dominio de tiempo de superposicion solapadas en el tiempo y transformadas de vuelta al dominio de tiempo en una forma que puede llevarse a cabo la cancelacion de solapamiento en el dominio de tiempo (TDAC = Cancelacion de Solapamiento en el dominio de tiempo).
Las realizaciones pueden usarse en el contexto de dominio de frecuencia conmutado y la codificacion de dominio de tiempo con ventas de superposicion bajas, tal como, por ejemplo, el AMR-WB+. Las realizaciones pueden usar una MDCT en lugar de un banco de filtros no muestreado cnticamente. De esta forma la sobrecarga debido al muestreo no cntico puede reducirse de manera ventajosa basandose en la propiedad de muestreo cntico de, por ejemplo, la MDCT. Ademas, superposiciones mas largas son posibles sin introducir una sobrecarga adicional. Las realizaciones pueden proporcionar la ventaja que basandose en sobrecargas mas largas, el desvanecimiento cruzado puede llevarse a cabo de manera mas suave, en otras palabras, la calidad de sonido puede aumentar en el decodificador.
En una realizacion detallada, la FFT en el modo TCX de AMR-WB+ puede reemplazarse por una MDCT mientras que se mantienen las funcionalidades de AMR-WB+, especialmente el cambio entre el modo ACELP y el modo TCX basandose en un decision de bucle cerrado o abierto. Las realizaciones pueden usar la MDCT en una forma muestreada no cnticamente para la primera trama TCX despues de una trama ACELP y posteriormente usar la MDCT de una manera cnticamente muestreada para todas las tramas TCX posteriores. Las realizaciones pueden mantener la caractenstica de decision de bucle cerrado, usando la MDCT con ventanas de baja superposicion similares al AMR-WB+ no modificado, pero con superposiciones mas largas. Esto puede proporcionar la ventaja de una mejor respuesta de frecuencia en comparacion con las ventanas TCX no modificadas.
Las realizaciones de la presente invencion se detallaran usando las figuras adjuntas, en las cuales:
La Fig. 1 muestra una realizacion de un codificador de audio;
Las Figs. 2a-2j muestran ecuaciones para una realizacion de una transformada de introduccion de
solapamiento en el dominio de tiempo;
5
10
15
20
25
30
35
40
45
50
55
60
La
Fig. 3a
La
Fig. 3b
La
Fig. 3c
La
Fig. 3d
La
Fig. 4a
La
Fig. 4b
La
Fig. 5a
La
Fig. 5b
La
Fig. 6
Las Figs. 7a-7d
La
Fig. 7e
La
Fig. 8a
La
Fig. 8b
La
Fig. 8c
La
Fig. 9
La
Fig. 10
La
Fig. 11
La
Fig. 12
La
Fig. 13a
La
Fig. 13b
La
Fig. 14a
La
Fig. 14b
La
Fig. 14c
La
Fig. 14d
La
Fig. 14e
La
Fig. 14f
La
Fig. 15
Las Figs. 16a-16c
muestra otra realizacion de un codificador de audio; muestra otra realizacion de un codificador de audio; muestra incluso otra realizacion de un codificador de audio; muestra ademas otra realizacion de un codificador de audio;
muestra una muestra de senal de habla de dominio de tiempo para habla vocalizada;
ilustra un espectro de una muestra de senal de habla vocalizada;
ilustra una senal de dominio de tiempo de una muestra de habla no vocalizada;
muestra un espectro de una muestra de senal de habla no vocalizada;
muestra una realizacion de un CELP de analisis por smtesis;
ilustran senales de excitacion vocalizadas/no vocalizadas como un ejemplo para senales similares a impulso y estaticas;
ilustra una etapa de ACELP de lado del codificador que proporciona informacion de prediccion a corto plazo y una senal de error de prediccion;
muestra una realizacion de un decodificador de audio;
muestra otra realizacion de un decodificador de audio;
muestra otra realizacion de un decodificador de audio;
muestra una realizacion de una funcion de ventana;
muestra otra realizacion de una funcion de ventana;
muestra vistas graficas y graficos de retardo de funciones de ventana de la tecnica anterior y una funcion de ventana de una realizacion;
ilustra los parametros de ventana;
muestra una secuencia de funciones de ventana y parametros de ventana de acuerdo con la tabla;
muestra las transiciones posibles de una realizacion basada en una MDCT;
muestra una tabla de posibles transiciones en una realizacion;
ilustra una ventana de transicion de ACELP a TCX80 de acuerdo con una realizacion;
muestra una realizacion de una ventana de transicion de una trama TCXx a una trama TCX20 a una trama TCXx de acuerdo con una realizacion;
ilustra una realizacion de una ventana de transicion de ACELP a TCX20 de acuerdo con una realizacion;
muestra una realizacion de una ventana de transicion de ACELP a TCX40 de acuerdo con una realizacion;
ilustra una realizacion de la ventana de transicion para una transicion de una trama TCXx a una trama TCX80 a una trama TCXx de acuerdo con una realizacion;
ilustra una transicion de ACELP a TCX80 de acuerdo con una realizacion;
ilustran ejemplos de codificador y decodificador convencionales;
5
10
15
20
25
30
35
40
45
50
55
60
Las Figs. 17a-17c ilustran LPC para senales vocalizadas y no vocalizadas;
La Fig. 18 ilustra una ventana de desvanecimiento cruzado de la tecnica anterior;
La Fig. 19 ilustra una secuencia de la tecnica anterior de ventanas AMR-WB+;
La Fig. 20 ilustra las ventanas usadas para transmitir en AMR-WB+ entre ACELP y TCX.
A continuacion, las realizaciones de la presente invencion se describiran en detalle. Debe observarse que las
siguientes realizaciones no limitaran el alcance de la invencion, en cambio, deben tomarse como realizaciones o implementaciones posibles dentro de muchas realizaciones diferentes.
La Fig. 1 muestra un codificador de audio 10 adaptado para codificar tramas de una senal de audio muestreada para obtener tramas codificadas, en el que la trama comprende un numero de muestras de audio de dominio de tiempo, el codificador de audio 10 comprende una etapa de analisis de codificacion predictiva 12 para determinar informacion sobre coeficientes para un filtro de smtesis y una trama de excitacion basada en tramas de muestras de audio, comprendiendo la trama de excitacion muestras de una senal de excitacion para el filtro de smtesis.
El codificador de audio 10 ademas comprende un transformador de introduccion de solapamiento en tiempo 14 para transformar las tramas de excitacion superpuestas al dominio de frecuencia para obtener espectros de trama de excitacion, en el que el transformador de introduccion de solapamiento en tiempo 14 esta adaptado para transformar las tramas de excitacion superpuestas de manera cnticamente muestreada. El codificador de audio 10 ademas comprende un codificador reductor de redundancia 16 para codificar los espectros de trama de excitacion para obtener las tramas codificadas basandose en los coeficientes y en los espectros de trama de excitacion codificados.
El codificador reductor de redundancia 16 puede estar adaptado para usar codificacion Huffman o codificacion de entropfa para codificar los espectros de trama de excitacion y/o la informacion sobre los coeficientes.
En realizaciones, el transformador de introduccion de solapamiento en tiempo 14 puede estar adaptado para transformar tramas de excitacion superpuestas de manera que un numero promedio de muestras de un espectro de trama de excitacion equivale a un numero promedio de muestras en una trama de excitacion, por lo tanto se alcanza la transformada cnticamente muestreada. Ademas, el transformador de introduccion de solapamiento en tiempo 14 puede estar adaptado para transformar las tramas de excitacion superpuestas de acuerdo con una transformacion del coseno discreta modificada (MDCT = Transformada del Coseno Discreta Modificada).
A continuacion, se explicara en mayor detalle la MDCT con la ayuda de las ecuaciones ilustradas en las Figs. 2a-2j. La transformada del coseno discreta modificada (MDCT) es una transformada relacionada con Fourier basada en la transformada del coseno discreta de tipo IV (DCT-IV = Transformada del Coseno Discreta de tipo IV), con la propiedad adicional de ser solapada, es decir, esta disenada para llevarse a cabo en bloques consecutivos de un conjunto de datos mas grande, donde bloques subsiguientes se superponen de manera que, por ejemplo, la ultima mitad de un bloque coincide con la primera mitad del bloque siguiente. Esta superposicion, ademas de las calidades de comprension de energfa de la DCT, hace a la MDCT especialmente atractiva para las aplicaciones de comprension de senal, dado que ayuda a evitar artefactos que provienen de los lfmites del bloque. Por lo tanto, se emplea una MDCT en MP3 (Mp3 = MPEG2/4 capa 3), AC-3 (AC-3 = Codec de Audio 3 por Dolby), Ogg Vorbis, y AAC (AAC = Codificacion de Audio Avanzada) para compresion de audio, por ejemplo.
La MDCT fue propuesta por Princen, Johnson y Bradley en 1987, con posterioridad al trabajo anterior (1986) por Princen y Bradley para desarrollar el principio subyacente de la MDCT de la cancelacion de solapamiento en el dominio de tiempo (TDAC), que se describe a continuacion. Tambien existe una transformada analoga, la MDST, basada en la transformada del seno discreta, asf como otras formas, raramente usadas, de la MDCT basadas en diferentes tipos de combinaciones de DCT o DCT/DST (DST = Transformada de Seno Discreta), que tambien pueden usarse en realizaciones por la transformada de introduccion de solapamiento en el dominio de tiempo 14.
En MP3, la MDCT no se aplica a la senal de audio directamente, sino a una salida de un banco de filtros de cuadratura de polifase de 32 bandas (PQF = Filtro de Cuadratura de Polifase). La salida de esta MDCT se procesa a posteriori por una formula de reduccion de solapamiento para reducir el solapamiento tfpico del banco de filtros PQF. Dicha combinacion de un banco de filtros con una MDCT se llama un banco de filtros hibrido o una MDCT de subbanda. AAC, por otro lado, usa normalmente una MDCT pura; solo la variante de MPEG-4 AAC-SSR (raramente usada) (por Sony) usa un banco PQF de cuatro bandas seguido por una MDCT. ATRAC (ATRAC = Codificacion de Audio Transformada Adaptiva) usa filtros espejo en cuadratura apilados (QMF) seguido por una MDCT.
Como una transformada solapada, la MDCT es un poco inusual en comparacion con las otras transformadas relacionadas con Fourier en que tiene la mitad de salidas que entradas (en lugar del mismo numero). En particular, es una funcion lineal F : R2N -> Rn, donde R denota el set de numeros reales. Los numeros reales 2N xq, ..., x2N-1 se
5
10
15
20
25
30
35
40
45
50
55
60
transforman en los numeros reales de N Xo, ..., Xn-i de acuerdo con la formula en la Fig. 2a.
El coeficiente de normalizacion delante de esta transformada, en este punto la unidad, es una convencion arbitraria y difiere entre tratamientos. Solo esta restringido el producto de las normalizaciones de la MDCT y la IMDCT a continuacion.
La inversa de la MDCT se conoce como la IMDCT. Dado que hay diferentes numeros de entradas y salidas, en principio puede parecer que la MDCT no debena ser invertible. Sin embargo, se alcanza la capacidad de inversion perfecta mediante la adicion de IMDCT superpuestas de bloques superpuestos subsiguientes, lo que causa que se cancelen los errores y que se recuperen los datos originales; esta tecnica se conoce como cancelacion de solapamiento en el dominio de tiempo (TDAC).
La IMDCT transforma N numeros reales Xo, ..., Xn-i en 2N numeros reales yo, ..., y2N-i de acuerdo con la formula en Fig. 2b. Al igual que para DCT-IV, una transformada ortogonal, la inversa tiene la misma forma que la transformada directa.
En el caso de una MDCT dividida por ventanas con la normalizacion de ventana usual (vease a continuacion), el coeficiente de normalizacion frente a la IMDCT debe multiplicarse por 2, es decir, se vuelve 2/N.
A pesar de la aplicacion directa de la formula de la MDCT requerina O(N2) operaciones, es posible calcular la misma cosa con solo complejidad O (N log N) mediante la factorizacion recursiva del calculo, como en la transformada de Fourier rapida (FFT). Tambien se pueden calcular las MDCT a traves de otras transformadas, tfpicamente una DFT (FFT) o una DCT, combinada con O(N) etapas de procesamiento previas y posteriores. Tambien, como se describe a continuacion, cualquier algoritmo para la DCT-IV proporciona inmediatamente un metodo para calcular la MDCT e IMDCT de igual tamano.
En aplicaciones de compresion de senal tfpicas, las propiedades de transformada se mejoran asimismo usando una funcion de ventana Wn (n = 0, ..., 2N-1) que multiplica por Xn y yn en las formulas de MDCT e IMDCT mas arriba para evitar discontinuidades en los lfmites n = 0 y 2N al hacer que la funcion vaya suavemente de cero a aquellos puntos. Es decir, los datos se dividen por ventanas antes de la MDCT y despues de la IMDCT. En principio, x e y podnan tener diferentes funciones de ventana, y la funcion de ventana tambien podna cambiar de un bloque al proximo, especialmente para el caso en el que se combinan los bloques de datos de diferentes tamanos, pero por simplicidad se considera en primer lugar el caso comun de las funciones de ventana identicas para bloques de igual tamano.
La transformada permanece invertible, es decir, funciona TDAC para una ventana simetrica Wn = W2N-i-n, siempre que w cumpla con la condicion de Princen-Bradley de acuerdo con la Fig. 2c.
Las varias funciones de ventana diferente son comunes, se da un ejemplo en la Fig. 2d para MP3 y MPEG-2 AAC, y en Fig. 2e para Vorbis. AC-3 usa una ventana derivada Kaiser-Bessel (KBD = Derivada de Kaiser-Bessel), y MPEG- 4 AAC tambien puede usar una ventana KBD.
Observese que las ventanas aplicadas a la MDCT son diferentes de las ventanas usadas para otros tipos de analisis de senal, dado que deben cumplir con la condicion de Princen-Bradley. Una de las razones para esta diferencia es que las ventanas de MDCT se aplican dos veces, para la MDCT (filtro de analisis) y la IMDCT (filtro de smtesis).
Como puede verse a partir de la inspeccion de las definiciones, para N iguales la MDCT es esencialmente equivalente a DCT-IV, en el que la entrada se desplaza por N/2 y dos N bloques de datos se transforman a la vez. Mediante el examen de esta equivalencia de forma mas cuidadosa, pueden derivarse facilmente propiedades importantes como TDAC.
Para definir la relacion precisa a la DCT-IV, podemos darnos cuenta de que la DCT-IV corresponde a alternar condiciones lfmites pares/impares, es par en su lfmite izquierdo (aproximadamente n=-1/2), impar en su lfmite derecho (aproximadamente n=N-1/2), y asf sucesivamente (en lugar de limites periodicos como para una DFT). Esto se deduce de las identidades dadas en la Fig. 2f. Por lo tanto, si sus entradas son una matriz x de longitud N, imagmese extender esta matriz a (x, -xr, -x, xr, ...) y asf sucesivamente puede imaginarse, donde xr indica x en un orden inverso.
Considerese una MDCT con 2N entradas y N salidas, donde las entradas pueden dividirse en cuatro bloques (a, b, c, d) cada uno de tamano N/2. Si estos se desplazan por N/2 (desde el termino +N/2 en la definicion MDCT), a continuacion (b, c, d) se extiende pasado el final de las N entradas de DCT-IV, por lo tanto deben “plegarse” de nuevo de acuerdo con las condiciones lfmites anteriormente descritas.
Por lo tanto, la MDCT de 2N entradas (a, b, c, d) es exactamente equivalente a una DCT-IV de las N entradas: (-crd, a-bR), donde R indica inversion como anteriormente. De esta manera, cualquier algoritmo para calcular la DCT-IV
5
10
15
20
25
30
35
40
45
50
55
60
puede aplicarse trivialmente a la MDCT.
De manera similar, la formula de IMDCT como se menciono anteriormente es precisamente 1/2 de la DCT-IV (que es su propia inversa), donde la salida se desplaza por N/2 y se extiende (a traves de las condiciones Smites) a una longitud de 2N. La inversa de DCT-IV simplemente requerina devolver las entradas (-cR-d, a-bR) de lo anterior. Cuando esto se desplaza y se extiende a traves de las condiciones lfmite, se obtiene el resultado que se muestra en la Fig. 2g. La mitad de las salidas de IMDCT son por lo tanto redundantes.
Puede entenderse como funciona la TDAC. Supongase que se calcula la MDCT de los siguientes 2N bloques superpuestos al 50 % (c, d, e, f). La IMDCT entonces producira, analogo a lo anterior: (c-dR, d-cR, e+fR, eR+f) / 2. Cuando esto se agrega con el anterior resultado de IMDCT en la mitad superpuesta, los terminos inversos se cancelan y se obtiene simplemente (c, d), recuperando los datos originales.
El origen de la expresion “cancelacion de solapamiento en el dominio de tiempo” ahora esta claro. El uso de datos de entrada que se extienden mas alla de los lfmites de la DCT-IV logica produce que los datos esten sujetos a solapamiento en exactamente la misma manera que las frecuencias mas alla de la frecuencia Nyquist estan sujetas a solapamiento con frecuencias mas bajas, excepto que este solapamiento tiene lugar en el dominio de tiempo en lugar del dominio de frecuencia. Por lo tanto, las combinaciones c-dR y siguientes, que tienen precisamente los signos correctos para las combinaciones a cancelar cuando se agregan.
Para el N impar (que raramente se usa en la practica), N/2 no es un entero de manera que la MDCT no es simplemente una permutacion de conmutacion de una DCT-IV. En este caso, la conmutacion adicional por media muestra significa que la MDCT/IMDCT se vuelve equivalente a DCT-IN/N, y el analisis es analogo al anterior.
Mas arriba la propiedad de TDAC se probo para la MDCT comun lo que muestra que agregar las IMDCT a bloques posteriores en su mitad de superposicion recupera los datos originales. La derivacion de esta propiedad inversa para la MDCT dividida por ventanas es un poco mas complicada.
Recuerdese de lo anterior que cuando (a,b,c,d) y (c,d,e,f) se ven sometidos a MDCT, IMDCT, y se agregan a su mitad superpuesta, obtenemos (c + dR,cR + d) / 2 + (c - dR,d - cr) / 2 = (c,d), los datos originales.
Ahora, se supone multiplicar las entradas MDCT y las salidas IMDCT por una funcion de ventana de longitud 2N. Como antes, asumimos una funcion de ventana simetrica, que es, por lo tanto, de la forma (w,z,zr,wr), donde w y z son vectores de longitud-N/2 y R indica la inversa como anteriormente. Entonces la condicion Princen-Bradley puede escribirse
^ + 4 = (M, )r
con las multiplicaciones y sumas realizadas por elementos, o de manera equivalente
UfJ + z2 = (1, 1, . . .)
invirtiendo w y z.
Por lo tanto, en lugar de realizar MDCT (a,b,c,d), MDCT (wa,zb,zRc,WRd) se realiza MDCT con todas las multiplicaciones realizadas por elementos. Cuando a esto se realiza IMDCT y se multiplica nuevamente (por elementos) por la funcion de ventana, los resultados de mitad de la ultima N se muestran en la Fig. 2h.
Observese que la multiplicacion por A ya no esta presente, porque la normalizacion de IMDCT difiere por un factor de 2 en el caso de ventanas generadas. De manera similar, la MDCT e IMDCT divididas por ventana de (c, d, e, f) produce, en su mitad primera N de acuerdo con la Fig. 2i. Cuando estas dos mitades se suman juntas, se obtienen los resultados de la Fig. 2j, recuperando los datos originales.
La Fig. 3a muestra otro ejemplo del codificador de audio 10. En la realizacion mostrada en la Fig. 3a el transformador de introduccion de solapamiento en tiempo 14 comprende un filtro de ventana 17 para aplicar una funcion de generacion de ventanas a las tramas de excitacion superpuestas y un convertidor 18 para convertir las tramas de excitacion superpuestas divididas por ventanas a espectros de trama de excitacion. De acuerdo con lo anterior, son concebibles multiples funciones de ventana, algunas de las cuales se detallaran a continuacion.
Otro ejemplo de un codificador de audio 10 se muestra en la Fig. 3b. En la realizacion mostrada en la Fig. 3b el transformador de introduccion de solapamiento en tiempo 14 comprende un procesador 19 para detectar un evento y para proporcionar informacion de secuencia de ventana si el evento se detecta y en el que el filtro de generacion de
5
10
15
20
25
30
35
40
45
50
55
60
ventanas 17 esta adaptado para aplicar la funcion de generacion de ventanas de acuerdo con la informacion de secuencia de ventana. Por ejemplo, el evento puede tener lugar dependiente de ciertas propiedades de senal analizadas de las tramas de la senal de audio muestreada. Por ejemplo, puede aplicarse longitud de ventana diferente o bordes de ventana diferentes etc., de acuerdo con, por ejemplo, las propiedades de autocorrelacion de senal, tonalidad, transitoriedad, etc. En otras palabras, pueden ocurrir diferentes eventos como parte de propiedades diferentes de las tramas de la senal de audio muestreada, y el procesador 19 puede proporcionar una secuencia de diferentes ventanas en dependencia de las propiedades de las tramas de la senal de audio. Se expondran a continuacion secuencias y parametros mas detallados para las secuencias de ventanas.
La Fig. 3c muestra una realizacion de un codificador de audio 10. En la realizacion representada en la Fig. 3d las tramas de excitacion no se proporcionan solamente al transformador de introduccion de solapamiento en tiempo 14 sino tambien a un codificador de libro de codigos 13, que esta adaptado para codificar las tramas de excitacion basandose en un libro de codigos predeterminado para obtener una trama de excitacion codificada de libro de codigos. Asimismo, la realizacion mostrada en la Fig. 3c comprende un tomador de decision para decidir si usar una trama de excitacion codificada de libro de codigos o trama codificada para obtener una trama finalmente codificada basandose en una medida de eficiencia de codificacion. La realizacion mostrada en la Fig. 3c tambien puede llamarse escenario de bucle cerrado. En este escenario, el tomador de decision 15 tiene la posibilidad de obtener tramas codificadas de dos ramas, basandose una rama en la transformacion, basandose la otra rama en el libro de codigos. Para determinar una medida de eficiencia de codificacion, el tomador de decision puede decodificar las tramas codificadas de ambas ramas, y a continuacion determinar la medida de eficiencia de codificacion mediante la evaluacion de estadfsticas de error de las diferentes ramas.
En otras palabras, el tomador de decision 15 puede estar adaptado para revertir el procedimiento de codificacion, es decir, llevar a cabo la decodificacion completa de ambas ramas. Con las tramas completamente decodificadas, el tomador de decision 15 puede estar adaptado para comparar las muestras decodificas con las muestras originales, que se indica por la flecha discontinua en la Fig. 3c. En la realizacion mostrada en la Fig. 3c el tomador de decision 15 tambien se proporciona con las tramas de excitacion, con las que esta posibilitado para decodificar tramas codificadas del codificador reductor de redundancia 16 y tambien decodificar tramas codificadas del codificador de libro de codigos 13 y comparar los resultados con las tramas de excitacion originalmente codificadas. Con esto, en una realizacion mediante la comparacion de diferencias, pueden determinarse las medidas de eficiencia de codificacion, por ejemplo, en terminos de relacion de senal a ruido o error estadfstico o error mmimo, etc., en algunas realizaciones tambien en relacion con la tasa de codigo respectiva, es decir, el numero de bits requeridos para codificar las tramas. El tomador de decision 15 puede a continuacion adaptarse para seleccionar, ya sea tramas codificadas del codificador reductor de redundancia 16 o las tramas codificadas de libro de codigo como tramas finalmente codificadas, basandose en la medida de eficiencia de codificacion.
La Fig. 3d muestra otra realizacion del codificador de audio 10. En la realizacion mostrada en la Fig. 3d hay un conmutador 20 acoplado al tomador de decision 15 para conmutar los dominios de prediccion entre el transformador de introduccion de solapamiento en tiempo 14 y el codificador de libro de codigos 13 basandose en una medida de eficiencia de codificacion. El tomador de decision 15 puede estar adaptado para determinar una medida de eficiencia de codificacion basandose en tramas de la senal de audio muestreada para determinar la posicion del conmutador 20, es decir, si usar la rama de codificacion basada en transformada con el transformador de introduccion de solapamiento en tiempo 14 y el codificador reductor de redundancia 16 o la rama de codificacion basada en el libro de codigos con el codificador de libro de codigos 13. Como ya se menciono anteriormente, la medida de eficiencia de codificacion puede determinarse basandose en propiedades de las tramas de la senal de audio muestreada, es decir, las propiedades de audio en sf mismas, por ejemplo si la trama es mas como un tono o como un ruido.
La configuracion de una realizacion mostrada en la Fig. 3d tambien se denomina configuracion de bucle abierto, dado que el tomador de decision 15 puede decidir basandose en las tramas de entrada sin saber los resultados de la consecuencia de la rama de codificacion respectiva. En incluso otra realizacion el tomador de decision puede decidir basandose en las tramas de excitacion, que se muestran en la Fig. 3d por la flecha discontinua. En otras palabras, en una realizacion, el tomador de decision 15 puede no decidir basandose en las tramas de la senal de audio muestreada, sino en su lugar en las tramas de excitacion.
A continuacion, se aclara el proceso de decision del tomador de decision 15. Generalmente, puede hacerse una diferenciacion entre una porcion similar a impulso de una senal de audio y una porcion de una senal estacionaria mediante la aplicacion de una operacion de procesamiento de senal, en la que se miden las caractensticas similares a impulso y tambien se mide la caractenstica estacionaria. Dichas mediciones pueden, por ejemplo, hacerse mediante el analisis de la forma de onda de la senal de audio. Para este fin, puede realizarse cualquier procesamiento basado en transformada o procesamiento de LPC o cualquier otro procesamiento. Una forma intuitiva de determinar en cuanto a si la porcion es o no similar a impulso es, por ejemplo, mirar la forma de onda del dominio de tiempo y determinar si esta forma de onda de dominio de tiempo tiene picos en intervalos regulares o irregulares, y picos en intervalos irregulares incluso mas adecuados para un codificador similar a habla, es decir, para el codificador de libro de codigos. Observese, que incluso las partes del habla vocalizada y no vocalizada pueden
5
10
15
20
25
30
35
40
45
50
55
60
distinguirse. El codificador del libro de codigos 13 puede ser mas eficiente para partes de senal vocalizada o tramas vocalizadas, en el que la rama basada en la transformada que comprende el transformador de introduccion de solapamiento en tiempo 14 y el codificador reductor de redundancia 16 pueden ser mas adecuados para tramas no vocalizadas.
A tftulo ejemplificativo, se hace referencia a las Figs. 4a y 4b, 5a y 5b, respectivamente. Los segmentos de senal similares a impulso o porciones de senal o segmentos de senal estacionaria o porciones de senal se analizan ejemplarmente. Generalmente, el tomador de decision 15 puede estar adaptado para decidir basandose en diferentes criterios, por ejemplo, estacionalidad, transitoriedad, blancura espectral, etc. A continuacion se proporciona un criterio ejemplar como parte de una realizacion. Espedficamente, se ilustra un habla vocalizada en la Fig. 4a en el dominio de tiempo y en la Fig. 4b en el dominio de frecuencia y se analiza como un ejemplo para una porcion de senal similar a impulso y un segmento de habla no vocalizada como un ejemplo de una porcion de senal estacionaria se analiza en relacion con las Figs. 5a y 5b.
Generalmente, el habla puede clasificarse como vocalizada, no vocalizada o mixta. Las representaciones de dominio de tiempo y frecuencia para segmentos vocalizados y no vocalizados se muestran en las Figs. 4a, 4b, 5a y 5b. El habla vocalizada es cuasi periodica en el dominio de tiempo y armonicamente estructurada en el dominio de frecuencia, mientras que el habla no vocalizada es aleatoria y de banda ancha. Ademas, la energfa de los segmentos vocalizados es, generalmente, mayor que la energfa de los segmentos no vocalizados. El espectro a corto plazo del habla vocalizada se caracteriza por su estructura precisa y formante. La estructura armonica precisa es una consecuencia de la cuasi periodicidad del habla y puede atribuirse a las cuerdas vocales vibrantes. La estructura formante, que tambien se llama envolvente espectral, se debe a la interaccion de la fuente y los tractos vocales. Los tractos vocales consisten en la faringe y cavidad bucal. La forma de la envolvente espectral que se “adapta” al espectro a corto plazo del habla vocalizada esta asociada con las caractensticas de transferencia del tracto vocal y la inclinacion espectral (6 dB/octava) debido al pulso glotal.
La envolvente espectral esta caracterizada por un conjunto de picos, que se llaman formantes. Los formantes son los modos resonantes del tracto vocal. Para el tracto vocal promedio hay de 3 a 5 formantes por debajo de 5 kHz. Las amplitudes y ubicaciones de los primeros tres formantes que generalmente tienen lugar por debajo de 3 kHz son bastante importantes tanto en la smtesis del habla como la percepcion. Los formantes mas altos son tambien importantes para la banda ancha y representaciones de habla no vocalizada. Las propiedades del habla estan relacionadas con los sistemas de produccion del habla ffsicos como sigue. La excitacion del tracto vocal con pulsos de aire glotal cuasi periodicos generados por la vibracion de las cuerdas vocales produce el habla vocalizada. La frecuencia del pulso periodico se hace referencia como la frecuencia fundamental o tono. Forzar aire a traves de una constriccion en el tracto vocal produce un habla no vocalizada. Los sonidos nasales se deben al acoplamiento acustico del tracto nasal al tracto vocal, y los sonidos oclusivos se reducen mediante la reduccion abrupta de la presion de aire, que se construyo detras del cierre del tracto.
Por lo tanto, una porcion estacionaria de la senal de audio puede ser una porcion estacionaria en el dominio de tiempo como se ilustra en la Fig. 5a o una porcion estacionaria en el dominio de frecuencia, que es diferente de la porcion similar a impulso como se ilustra en el ejemplo en la Fig. 4a, debido al hecho de que la porcion estacionaria en el dominio de tiempo no muestra pulsos de repeticion permanente. Como se senalara a continuacion, sin embargo, la diferenciacion entre porciones estacionarias y porciones similares a impulso tambien puede llevarse a cabo utilizando metodos LPC, que modelan el tracto vocal y la excitacion de los tractos vocales. Cuando se considera el dominio de frecuencia de la senal, las senales de impulso muestran la apariencia prominente de los formantes individuales, es decir, picos prominentes en la Fig. 4b, mientras que el espectro estacionario tiene un espectro bastante ancho como se ilustra en la Fig. 5b, o en el caso de las senales armonicas, un suelo de ruido bastante continuo que tiene picos prominentes que representan tonos espedficos que tienen lugar, por ejemplo, en una senal de musica, pero que no tienen la distancia regular de uno al otro como la senal similar a impulso en la Fig. 4b.
Ademas, las porciones similares a impulso y las porciones estacionarias pueden tener lugar de una manera oportuna, es decir, esto significa que una porcion de la senal de audio en tiempo es estacionaria y otra porcion de la senal de audio en tiempo es similar a impulso. De manera alternativa o adicional, las caractensticas de una senal pueden ser diferentes en diferentes bandas de frecuencia. Por lo tanto, la determinacion, de si una senal de audio es estacionaria o similar a impulso, puede llevarse a cabo por frecuencia selectiva de modo que una cierta banda de frecuencia o varias ciertas bandas de frecuencia se consideren estacionarias y otras bandas de frecuencia se consideren similares a impulso. En este caso, una cierta porcion de tiempo de la senal de audio puede incluir una porcion de impulso o una porcion estacionaria.
Volviendo a la realizacion mostrada en la Fig. 3d, el tomador de decision 15 puede analizar las tramas de audio o la senal de excitacion, para determinar si son bastante similares a impulso, es decir, mas adecuada para el codificador de libro de codigos 13, o estacionaria, es decir, mas adecuada para la rama de codificacion basada en transformada.
5
10
15
20
25
30
35
40
45
50
55
60
Un codificador de impulso eficiente normalmente cuantifica tanto los valores individuals como las posiciones de los impulsos. Una opcion para un modo de bucle abierto/cerrado mixto es usar los valores de impulso cuantificados y las posiciones de impulso precisas/no cuantificadas para calcular la senal residual. La posicion de impulso se cuantifica entonces de una manera de bucle abierto. Como alterativa puede usarse un proceso de analisis por smtesis de CELP (CELP = Prediccion Lineal Excitada por Codigo) interactivo para la deteccion de las senales similares a impulso, pero se implementa una herramienta de codificacion especializada para la codificacion real de la senal de impulso, que cuantifica o no, la posicion de los pulsos con un pequeno error de cuantificacion.
Posteriormente, se analizara el codificador CELP de analisis por smtesis con respecto a la Fig. 6. Los detalles de un codificador CELP tambien se pueden encontrar en “Speech Coding: A tutorial review”, Andreas Spaniers, Proceedings of IEEE, Vol. 84, N.°. 10, octubre de 1994, pags. 1541-1582. El codificador CELP como se ilustra en la Fig. 6 incluye un componente de prediccion a largo plazo 60 y un componente de prediccion a corto plazo 62. Ademas, se usa un libro de codigos que se usa como se indica en 64. Un filtro de ponderacion perceptual W(z) se implementa en 66, y un controlador de minimizacion de error se proporciona en 68. s(n) es la senal de excitacion, por ejemplo, generada por la etapa de analisis de LPC 12. Esta senal, es decir, las tramas de excitacion, puede denominarse tambien “senal de error de prediccion” como se aclarara y detallara adicionalmente a continuacion. Despues de haber ponderado perceptualmente, la senal de error de prediccion ponderada se introduce en un sustractor 69, que calcula el error entre la senal de smtesis ponderada y la salida de bloque 66 y la senal de error de prediccion ponderada real s«(n).
Generalmente, la prediccion a corto plazo A(z) se calcula por una etapa de analisis LPC que se explicara mas adelante. Dependiendo de esta informacion, la prediccion a largo plazo Al(z) incluye la ganancia de prediccion a largo plazo g y retardo y el mdice de cuantificacion de vector, es decir, pueden calcularse referencias de libro de codigos. El algoritmo de CELP codifica la excitacion usando un libro de codigos de, por ejemplo, secuencias gaussianas. El algoritmo de ACELP, donde “A” significa “algebraico” tiene un libro de codigos especifico disenado algebraicamente.
El libro de codigos puede contener mas o menos vectores donde cada vector tiene una longitud de acuerdo con un numero de muestras. Un factor de ganancia g escala el vector de excitacion y las muestras de excitacion se filtran por el filtro de smtesis a largo plazo y el filtro de smtesis a corto plazo. El vector “optimo” se selecciona de manera tal que se minimice el error cuadrado promedio ponderado perceptualmente. El proceso de busqueda en CELP es evidente a partir del esquema de analisis por smtesis ilustrado en la Fig. 6. Debe observarse que la Fig. 6 solo ilustra un ejemplo de un CELP analisis por smtesis y que las realizaciones no deben limitarse a la estructura mostrada en la Fig. 6.
La funcionalidad de una realizacion de la etapa de analisis de codificacion predictiva 12 se analizara posteriormente de acuerdo con la realizacion mostrada en las Figs. 7a a 7e, usando analisis LPC y smtesis LPC en el tomador de decision 15, en las realizaciones correspondientes.
La Fig. 7a ilustra un modelo de un sistema de prediccion del habla lineal. El sistema supone una excitacion de dos etapas, es decir una trama de impulso para habla vocalizada como se indica en la Fig. 7c y un ruido aleatorio para habla no vocalizada como se indica en la Fig. 7d. El tracto vocal se modela como un filtro de transformada todo polo 70, que procesa pulsos de las Figs. 7c o 7d, generados por un modelo glotal 72. Una cascada de un pequeno numero de resonadores de dos polos que representa los formantes forma la funcion de transferencia de todo polo. El modelo glotal se representa como un filtro paso bajo de dos polos, y el modelo de labio-radiacion 74 se representa por L(z) = 1 - z1.
Finalmente, un factor de correccion espectral 76 se incluye para compensar los efectos de baja frecuencia de los polos superiores. En representaciones del habla individuales se omite la correccion espectral y el cero de la funcion de labio-radiacion se cancela esencialmente por uno de los polos glotales. Por lo tanto, el sistema de la Fig. 7a puede reducirse a un modelo de todo polo de la Fig. 7b que tiene una etapa de ganancia 77, un paso de reenvm 78, un paso de realimentacion 79 y una etapa de adicion 80. En el paso de realimentacion 79, hay un filtro de prediccion 81, y la totalidad del modelo de smtesis de sistema de fuente ilustrado en la Fig. 7b se representa temporalmente usando una funcion del dominio z como sigue:
S(z) = 9/(1-A(z))X(z),
donde g representa la ganancia, A(z) es el filtro de prediccion segun se determina por un analisis de LPC, X(z) es la senal de excitacion, y S(z) es la salida del habla de smtesis. Las Figs. 7c y 7d ilustran una descripcion de dominio de tiempo grafica de la smtesis de habla vocalizada y no vocalizada usando el modelo de sistema de fuente lineal. Este sistema y los parametros de excitacion en la ecuacion anterior son desconocidos y pueden determinarse a partir de un conjunto finito de muestras del habla. Los coeficientes de A(z) se obtienen usando prediccion lineal.
En un predictor lineal hacia delante de orden p, la presente muestra de la secuencia del habla se predice a partir de una combinacion lineal de t muestras pasadas. Algoritmos bien conocidos tal como el algoritmo Levinson-Durbin, o
5
10
15
20
25
30
35
40
45
50
55
60
en general un metodo de autocorrelacion o un metodo de reflexion pueden determinar los coeficientes del predictor.
La Figura 7e ilustra una implementacion detallada de la realizacion del bloque de analisis de LPC 12. La senal de audio se introduce en un bloque de determinacion de filtro, que determina la informacion de filtro A(z), es decir la informacion sobre los coeficientes para el filtro de smtesis. Esta informacion se emite como la informacion de prediccion a corto plazo requerida para el decodificador. La informacion de prediccion a corto plazo puede requerirse para la senal de salida del codificador de impulso. A continuacion, sin embargo, unicamente se requiere la senal de error de prediccion, mostrada en la lmea 784, la informacion de prediccion a corto plazo no tiene que emitirse. Sin embargo, el filtro de prediccion real 785 requiere la informacion de prediccion a corto plazo. En un sustractor 786, se introduce una muestra actual de la senal de salida y se resta un valor previsto para la muestra actual de modo que para esta muestra, se genera la senal de error de prediccion en la lmea 784. Observese que la senal de error puede denominarse tambien senal de excitacion o trama de excitacion.
Un ejemplo de un decodificador de audio 80 para decodificar tramas codificadas para obtener tramas de una senal de audio muestreada, en el que una trama comprende un numero de muestras de dominio de tiempo, se muestra en la Fig. 8a. El decodificador de audio 80 comprende un decodificador de recuperacion de redundancia 82 para decodificar las tramas codificadas para obtener informacion sobre coeficientes para un filtro de smtesis y espectros de trama de excitacion. El decodificador de audio 80 comprende adicionalmente un transformador de introduccion de solapamiento en tiempo inverso 84 para transformar los espectros de trama de excitacion al dominio de tiempo para obtener tramas de excitacion de superposicion, en el que el transformador de introduccion de solapamiento en tiempo inverso 84 esta adaptado para determinar tramas de excitacion de superposicion a partir de espectros de trama de excitacion consecutivos. Ademas, el decodificador de audio 80 comprende un combinador de superposicion/adicion 86 para combinar tramas de excitacion de superposicion para obtener una trama de excitacion de una manera cnticamente muestreada. El decodificador de audio 80 comprende adicionalmente una etapa de smtesis predictiva 88 para determinar la trama basandose en los coeficientes y la trama de excitacion.
El combinador de superposicion y adicion 86 puede estar adaptado para combinar tramas de excitacion de superposicion de manera que un numero promedio de muestras en una trama de excitacion equivale a un numero promedio de muestras del espectro de trama de excitacion. En realizaciones, el transformador de introduccion de superposicion de tiempo inverso 84 puede estar adaptado para transformar los espectros de trama de excitacion al dominio del tiempo de acuerdo con una IMDCT, de acuerdo con los detalles anteriores.
Ademas, en realizaciones, la etapa de smtesis predictiva 88 puede estar adaptada para determinar de la trama basandose en la prediccion lineal, es decir, LPC. Otro ejemplo de un decodificador de audio 80 se muestra en la Fig. 8b. El decodificador de audio 80 mostrado en la Fig. 8b muestra componentes similares como el decodificador de audio 80 mostrado en la Fig. 8a, sin embargo, el transformador de introduccion de solapamiento en tiempo inverso 84 en la realizacion mostrada en la Fig. 8b ademas comprende un convertidor 84a para convertir espectros de trama de excitacion a tramas de excitacion superpuestas convertidas y un filtro de generacion de ventanas 84b para aplicar una funcion de generacion de ventanas a las tramas de excitacion superpuestas convertidas para obtener las tramas de excitacion superpuestas.
La Fig. 8c muestra una realizacion de un decodificador de audio 80 que tiene componentes similares como en la realizacion mostrada en la Fig. 8b. En la realizacion mostrada en la Fig. 8c el transformador de introduccion de solapamiento en tiempo inverso 84 ademas comprende un procesador 84c para detectar un evento y para proporcionar informacion de secuencia de ventana si el evento se detecta para el filtro de ventana 84b y el filtro de generacion de ventanas 84b se adapta para aplicar la funcion de generacion de ventanas de acuerdo con la informacion de secuencia de ventana. El evento puede ser una indicacion derivada de las tramas codificadas o cualquier informacion complementaria o proporcionada por estas.
En realizaciones de codificadores de audio 10 y decodificadores de audio 80, los respectivos filtros de generacion de ventanas 17 y 84 pueden adaptarse para aplicar las funciones de generacion de ventanas de acuerdo con la informacion de secuencia de ventana. La Fig. 9 muestra una ventana rectangular general, en la que la informacion de la secuencia de ventana puede comprender una primera parte cero, en la que la ventana enmascara muestras, una segunda parte de desvm, en la que las muestras de una trama, es decir, una trama de excitacion o una trama de excitacion superpuesta puede pasar no modificada, y una tercera parte cero, que nuevamente enmascara muestras al final de la trama. En otras palabras, pueden aplicarse funciones de generacion de ventanas, lo que suprime un numero de muestras de una trama en la primera parte cero, pasa a traves de las muestras en una segunda parte de desvm, y a continuacion suprime muestras al final de la trama en una tercera parte cero. En este contexto, la supresion tambien puede hacer referencia a adjuntar una secuencia de ceros al comienzo y/o final de la parte de desvm de la ventana. La segunda parte de desvm puede ser tal que la funcion de generacion de ventana simplemente tiene un valor de 1, es decir, las muestras pasan sin modificaciones, es decir, la funcion de generacion de ventanas cambia a traves de las muestras de la trama.
La Fig. 10 muestra otra realizacion de una secuencia de generacion de ventanas o funcion de generacion de
5
10
15
20
25
30
35
40
45
50
55
60
ventanas, en la que la secuencia de generacion de ventanas ademas comprende una parte de borde de subida entre la primera parte cero y la segunda parte de desvfo y una parte de borde de bajada entre la segunda parte de desvfo y la tercera parte cero. La parte de borde de subida tambien puede considerarse como una parte de desvanecimiento de entrada y el borde de bajada puede considerarse como la parte de desvanecimiento de salida. En realizaciones, la segunda parte de desvfo puede comprender una secuencia de unos para no modificar de ningun modo las muestras de la trama de excitacion.
Las realizaciones pueden proporcionar la ventaja que un retardo de codificacion sistematica de la MDCT, IDMCT respectivamente, puede reducirse cuando se compara con la MDCT original, a traves de la aplicacion de diferentes funciones de generacion de ventanas. Para proporcionar mas detalles sobre esta ventaja, la Fig. 11 muestra cuatro vistas graficas en las que la primera en la parte superior muestra un retardo sistematico en las unidades de tiempo T basandose en funciones de generacion de ventanas con forma triangular tradicionales usadas con MDCT, que se muestran en el segundo grafico en la parte superior de la Fig. 11.
El retardo sistematico considerado aqu es el retardo que una muestra ha experimentado, cuando alcanza la etapa de decodificacion, asumiendo que no hay retardo para codificar o transmitir las muestras. En otras palabras, el retardo sistematico mostrado en la Fig. 11 considera el retardo evocado por la acumulacion de muestras de una trama antes que puede comenzarse la codificacion. Como se explico anteriormente, para decodificar la muestra en T, las muestras entre 0 y 2T tienen que transformarse. Esto proporciona un retardo sistematico para la muestra en T de otra T. Sin embargo, antes de la muestra poco despues de que esta muestra pueda decodificarse, todas las muestras de la segunda ventana, que se centran en 2T tienen que estar disponibles. Por lo tanto, el retardo sistematico salta a 2T y cae de nuevo a T en el centro de la segunda ventana. La tercera vista grafica de la parte superior en la Fig. 11 muestra una secuencia de funciones de generacion de ventanas como se proporciona por una realizacion. Puede observarse, cuando se compara con las ventanas del estado de la tecnica en la segunda vista grafica de la parte superior de la Fig. 11, que las areas superpuestas de la parte no cero de las ventanas han sido reducidas por 2At. En otras palabras, las funciones de ventana usadas en las realizaciones son tan anchas o amplias como las ventanas de la tecnica anterior, sin embargo, tiene una primera parte cero y una tercera parte cero que se vuelve predecible.
En otras palabras, el decodificador ya sabe que hay una tercera parte cero y, por lo tanto, la decodificacion puede comenzar antes de la codificacion respectivamente. Por lo tanto, el retardo sistematico puede reducirse en 2At como se muestra en la parte inferior de la Fig. 11. En otras palabras, el decodificador no tiene que esperar para las partes cero, que puede ahorrar 2At. Es evidente que, por supuesto, despues del procedimiento de decodificacion, todas las muestras tienen que tener el mismo retardo sistematico. Las vistas graficas en la Fig. 11 simplemente demuestran el retardo sistematico que una muestra experimenta hasta que alcanza el decodificador. En otras palabras, un retardo sistematico completo despues de la decodificacion seria 2T para el enfoque de la tecnica anterior, y 2T - 2At para las ventanas en la realizacion.
A continuacion se considerara una realizacion, donde se usa la MDCT en el codec AMR-WB+, reemplazando la FFT. Por lo tanto, las ventanas se detallaran de acuerdo con la Fig. 12, que define “L” como el area de superposicion izquierda o parte de borde de subida, las regiones “M” las regiones de unos o la segunda parte de desvfo y “R” el area de superposicion derecha o la parte de borde de bajada. Ademas, se consideran la parte primera cero y la parte primera tercera. Con esto, en una reconstruccion perfecta dentro de trama, que esta etiquetada “PR” se indica en la Fig. 12 mediante la flecha. Asimismo, “T” indica la flecha de la longitud del nucleo de transformada, que corresponde al numero de muestras de dominio de frecuencia, es decir, la mitad del numero de muestras de dominio de tiempo, que estan compuestas por la primera parte cero, la parte de borde de subida “L”, la segunda parte de desvfo “M”, la parte de borde de bajada “R”, y la tercera parte cero. En consecuencia, el numero de muestras de frecuencia puede reducirse cuando se usa la MDCT, donde el numero de muestras de frecuencia de la FFT o la transformada del coseno discreta (DCT = Transformada del Coseno Discreta)
t = l + m + r
en comparacion con la longitud de codificador de transformacion para MDCT
T = L/2 + M + R/2.
La Fig. 13a ilustra en la parte superior una vista grafica de un ejemplo de secuencia de funciones de ventana para AMR-WB+. De izquierda a derecha la vista grafica al comienzo de la Fig. 13a muestra una trama ACELP, TCX20, TCX20, TCX40, TCX80, TCX20, TCX20, ACELP y ACELP. La lmea discontinua muestra la respuesta de entrada de cero como se describio anteriormente.
En la parte inferior de la Fig. 13a hay una tabla de parametros para las diferentes partes de ventana, donde en esta realizacion la parte superpuesta izquierda o la parte de borde de subida L=128 cuando cualquier trama TCXx continua otra trama TCXx. Cuando una trama ACELP continua una trama TCXx, se usan ventanas similares. Si una
5
10
15
20
25
30
35
40
45
50
55
60
trama TCX20 o TCX40 sigue una trama ACELP, a continuacion la parte superpuesta izquierda puede despreciarse, es decir, L=0. Cuando se pasa de ACELP a TCX80, puede usarse una parte superpuesta de L=128. Del grafico en la tabla de la Fig. 13a puede verse que el principio basico es permanecer en un muestreo no cntico mientras que haya suficiente sobrecarga para una reconstruccion perfecta de trama interna, y conmutar a un muestreo cntico tan pronto como sea posible. En otras palabras, solo la primera trama TCX despues de una trama ACELP permanece no cnticamente muestreada con la presente realizacion.
En la tabla en la parte inferior de la Fig. 13a, se destacan las diferencias con respecto a la tabla para AMR-WB+ convencional como se muestra en la Fig. 19. Los parametros destacados indican la ventaja de las realizaciones de la presente invencion, en la que el area superpuesta se extiende de manera tal que puede llevarse a cabo un desvanecimiento cruzado mas suavemente y la respuesta de frecuencia de la ventana se mejora mientras que se mantiene el muestreo cntico.
De la tabla en la parte inferior de la Fig. 13a puede verse que solo para las transiciones de ACELP a TCX se introduce una sobrecarga, es decir, solo para esta transicion T>PR, es decir, se alcanza el muestreo no cntico. Para todas las transiciones TCXx a TCXx (“x” indica cualquier duracion de trama) la longitud de transformacion T es igual al numero de muestras reconstruidas perfectamente, es decir, se logra el muestreo cntico. La Fig. 13b ilustra una tabla con representaciones graficas de todas las ventanas para todas las transiciones posibles con la realizacion basada en MDCT de AMR-WB+. Como se indicio anteriormente en la tabla en la Fig. 13a, la parte izquierda L de las ventanas ya no depende de la longitud de una trama de TCX previa. Las representaciones graficas en la Fig. 14b tambien muestran que el muestreo cntico puede mantenerse cuando se cambia diferentes tramas de TCX. Para las transiciones de TCX a ACELP, puede verse que se produce una sobrecarga de 128 muestras. Dado que el lado izquierdo de las ventanas no depende de la longitud de la trama de TCX anterior, la tabla mostrada en la Fig. 13b puede simplificarse como se muestra en la Fig. 14a. La Fig. 14a muestra otra vez una representacion grafica de las ventanas para todas las transiciones posibles, donde las transiciones desde las tramas de TCX pueden resumirse en una sola fila.
La Fig. 14b ilustra la transicion de ventana de ACELP a TCX80 en mas detalle. La vista grafica en la Fig. 14b muestra el numero de muestras en la abscisa y la funcion de ventana en la ordenada. Considerando la entrada de una MDCT, la parte cero izquierda llega desde la muestra 1 a la muestra 512. La parte de borde de subida esta entre la muestra 513 y 640, la segunda parte de desvfo entre 641 y 1664, la parte de borde de bajada entre 1665 y 1792, la tercera parte cero entre 1793 y 2304. Con respecto a la explicacion anterior de la MDCT, en la presente realizacion las muestras de dominio de tiempo 2304 se transforman en muestras de dominio de frecuencia 1152. De acuerdo con la descripcion anterior, la zona de solapamiento en el dominio de tiempo de la presente invencion es entre las muestras 513 y 640, es decir, dentro de la parte de borde de subida que se extiende a traves de las muestras L=128. Otra zona de solapamiento en el dominio de tiempo se extiende entre la muestra 1665 y 1792, es decir, la parte de borde de bajada de R=128 muestras. Debido a la primera parte cero y a la tercera parte cero, hay una zona de no solapamiento donde se permite la reconstruccion perfecta entre la muestra 641 y 1664 de tamano M=1024. En la Fig. 14b la trama de ACELP indicada por la lmea discontinua termina en la muestra 640. Surgen diferentes opciones con respecto a las muestras de la parte de borde de subida entre 513 y 640 de la ventana TCX80. Una opcion es descartar en primer lugar las muestras y permanecer con la trama de ACELP. Otra opcion es usar la salida de ACELP para llevar a cabo la cancelacion de solapamiento en el dominio de tiempo para la trama de TCX80.
La Fig. 14c ilustra la transicion de cualquier trama TCX, llamada “TCXx”, a una trama TCX20 y de nuevo a cualquier trama TCXx. Las Figs. 14b a 14f usan la misma representacion de vista grafica, como ya se describio, con respecto a la Fig. 14b. En el centro, alrededor de la muestra 256 en la Fig. 14c se muestra la ventana TCX20. Se transforman 512 muestras de dominio de tiempo por la MDCT a 256 muestras de dominio de frecuencia. Las muestras de dominio de tiempo usan 64 muestras para la primera parte cero como para la tercera parte cero. Por tanto, una zona de no solapamiento de un tamano de M=128 se extiende alrededor del centro de la ventana TCX20. La superposicion izquierda o parte de borde de subida entre las muestras 65 y 192 puede combinarse para la cancelacion de solapamiento en el dominio de tiempo con la parte de borde de bajada de una ventana precedente como se indica por la lmea discontinua. Por tanto, un area de reconstruccion perfecta proporciona un tamano de PR=256. Dado que todas las partes del borde de subida de todas las ventanas TCX son L=128 y se ajustan en todas las partes de borde de bajada R=128, la trama TCX precedente asf como las siguientes tramas TCX pueden ser de cualquier tamano. Cuando se pasa de ACELP a TCX20 puede usarse una ventana diferente como se indica en la Fig. 14d. Como puede verse de la Fig. 14d, la parte de borde de subida se eligio para ser L=0, es decir, un borde rectangular. Asf, el area de reconstruccion perfecta PR=256. La Fig. 14e muestra un grafico de vista similar cuando se pasa de ACELP a TCX40 y, como otro ejemplo; la Fig. 14f ilustra la transicion de cualquier ventana TCXx a TCX80 a cualquier ventana TCXx.
En smtesis, las Figs. 14b a f muestran que la region de superposicion de las ventanas de MDCT es siempre 128 muestras, excepto para el caso de cuando se pasa de ACELP a TCX20, TCX40, o ACELP.
5
10
15
20
25
30
35
40
Cuando se pasa de TCX a ACELP o de ACELP a TCX80 son posibles multiples opciones. En una realizacion la ventana muestreada de trama TCX de MDCT puede descartarse en la region de superposicion. En otra realizacion las muestras divididas por ventanas pueden usarse para un desvanecimiento cruzado y para cancelar un solapamiento en el dominio de tiempo en muestras TCX de MDCT basadas en las muestras de ACELP solapadas en la region superpuesta. En incluso otra realizacion, el desvanecimiento cruzado puede llevarse a cabo sin cancelar el solapamiento en el dominio de tiempo. En la transicion de ACELP a TCX la respuesta de entrada cero (ZIR = respuesta de entrada cero) puede eliminarse en el codificador para la division por ventanas y agregarse en el decodificador para recuperacion. En las figuras esto se indica por las lmeas discontinuas dentro de las ventanas TCX que siguen una ventana ACELP. En la presente realizacion cuando se pasa de TCX a TCX, las muestras divididas por ventanas pueden usarse para desvanecimiento cruzado.
Cuando se pasa de ACELP a TCX80, la longitud de trama es mas larga y puede superponerse con la trama ACELP, puede usarse la cancelacion de solapamiento en el dominio de tiempo o el metodo de descarte.
Cuando se pasa de ACELP a TCX80, la trama ACELP anterior puede introducir una oscilacion transitoria. La oscilacion transitoria puede reconocerse como una dispersion de error que proviene de una trama anterior debido al uso de una filtracion de LPC. El metodo ZIR usado para TCX40 y TCX20 puede tener en cuenta la oscilacion transitoria. Una variante del TCX80 en realizaciones es usar el metodo ZIR con una longitud de transformacion de 1088, es decir, sin la superposicion con la trama ACELP. En otra realizacion, puede mantenerse la misma longitud de transformacion de 1152 y poner a cero el area de superposicion justo antes de que pueda utilizarse el ZIR, como se muestra en la Fig. 15. La Fig. 15 muestra una transicion de ACELP a TCX80 con la puesta a cero del area superpuesta y usando el metodo ZIR. La parte ZIR se indica nuevamente por la lmea discontinua siguiendo el final de la ventana ACELP.
En smtesis, las realizaciones de la presente invencion proporcionan la ventaja de que el muestreo cntico puede llevarse a cabo para todas las tramas TCX cuando precede una trama TCX. En comparacion con el enfoque convencional puede alcanzarse una reduccion de sobrecarga de 1/8. Asimismo, las realizaciones proporcionan la ventaja de que el area transicional o superpuesta entre las tramas consecutivas puede ser siempre 128 muestras, es decir, mas largas que AMR-WB+ convencional. Las areas de superposicion mejoradas tambien proporcionan una respuesta de frecuencia mejorada y un desvanecimiento cruzado mas suave. Por lo tanto, puede conseguirse una mejor calidad de senal con el proceso de codificacion y decodificacion completo.
Dependiendo de ciertos requisitos de implementacion de los metodos inventivos, los metodos de la invencion pueden implementarse en hardware o en software. La implementacion puede llevarse a cabo usando un medio de almacenamiento digital, en particular, un disco, un DVD, una memoria flash o un CD que tengan senales de control legibles electronicamente en los mismos, que cooperen con un sistema informatico programable de manera que los metodos de la invencion se lleven a cabo. Generalmente, la presente invencion es, por lo tanto, un producto de programa informatico con un codigo de programa almacenado en un soporte legible por maquina, el codigo de programa se opera para llevar a cabo los metodos de la invencion cuando un programa informatico se ejecuta en una computadora. En otras palabras, los metodos inventivos son, por lo tanto, un programa informatico que tiene un codigo de programa para llevar a cabo al menos uno de los metodos de la invencion cuando el programa informatico se ejecuta en una computadora.

Claims (20)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    55
    60
    reivindicaciones
    1. Un codificador de audio (10) adaptado para codificar tramas de una senal de audio muestreada para obtener tramas finalmente codificadas, en el que una trama comprende un numero de muestras de audio de dominio del tiempo, que comprende:
    una etapa de analisis de codificacion predictiva (12) para determinar informacion sobre los coeficientes de un filtro de smtesis y tramas de excitacion basandose en tramas de muestras de audio, una trama de excitacion que comprende muestras de una senal de excitacion para el filtro de smtesis;
    un transformador de introduccion de solapamiento en tiempo (14) para transformar tramas de excitacion superpuestas a un dominio de frecuencia para obtener espectros de trama de excitacion, en el que el transformador de introduccion de solapamiento en tiempo (14) esta adaptado para transformar las tramas de excitacion superpuestas de una manera cnticamente muestreada;
    un codificador reductor de redundancias (16) para codificar los espectros de trama de excitacion para obtener tramas codificadas basandose en los coeficientes y los espectros de trama de excitacion,
    un codificador de libro de codigos (13) para codificar las tramas de excitacion basandose en un libro de codigos predeterminado para obtener tramas de dominio de excitacion codificadas de libro de codigos; y un tomador de decision (15) para decidir si usar una trama de dominio de excitacion codificada de libro de codigos o una trama codificada para obtener una trama finalmente codificada basandose en una medida de eficiencia de codificacion
  2. 2. El codificador de audio (10) de la reivindicacion 1, en el que el transformador de introduccion de solapamiento en tiempo (14) esta adaptado para transformar las tramas de excitacion superpuestas de manera tal que un numero promedio de muestras de un espectro de trama de excitacion equivale al numero promedio de muestras en una trama de excitacion.
  3. 3. El codificador de audio (10) de una de las reivindicaciones 1 o 2, en el que el transformador de introduccion de solapamiento en tiempo (14) esta adaptado para transformar tramas de excitacion superpuestas de acuerdo con una transformada del coseno discreta modificada (MDCT).
  4. 4. El codificador de audio (10) de una de las reivindicaciones 1 a 3, en el que el transformador de introduccion de solapamiento en tiempo (14) comprende un filtro de generacion de ventanas (17) para aplicar una funcion de generacion de ventanas a tramas de excitacion superpuestas y un convertidor (18) para convertir tramas de excitacion superpuestas divididas por ventanas a los espectros de trama de excitacion.
  5. 5. El codificador de audio (10) de la reivindicacion 4, en el que el transformador de introduccion de solapamiento en tiempo (14) comprende un procesador (19) para detectar un evento y para proporcionar una informacion de secuencia de ventana si se detecta el evento y en el que el filtro de generacion de ventanas (17) esta adaptado para aplicar la funcion de generacion de ventanas de acuerdo con la informacion de secuencia de ventana.
  6. 6. El codificador de audio (10) de la reivindicacion 5, en el que la informacion de secuencia de ventana comprende una primera parte cero, una segunda parte de desvfo y una tercera parte cero.
  7. 7. El codificador de audio (10) de la reivindicacion 6, en el que la informacion de secuencia de ventana comprende una parte de borde de subida entre la primera parte cero y la segunda parte de desvm y una parte de borde de bajada entre la segunda parte de desvm y la tercera parte cero.
  8. 8. El codificador de audio (10) de la reivindicacion 7, en el que la segunda parte de desvm comprende una secuencia de unos para no modificar las muestras de los espectros de trama de excitacion.
  9. 9. El codificador de audio de una de las reivindicaciones 1 a 8, en el que la etapa de analisis de codificacion predictiva (12) esta adaptada para determinar la informacion sobre los coeficientes basandose en codificacion de prediccion lineal (LPC).
  10. 10. El codificador de audio (10) de la reivindicacion 1, que ademas comprende un conmutador (20) acoplado al tomador de decision (15) para conmutar las tramas de excitacion entre el transformador de introduccion de solapamiento en tiempo (14) y el codificador de libro de codigos (13) basandose en la medida de eficiencia de codificacion.
  11. 11. Un metodo para codificar tramas de una senal de audio muestreada para obtener tramas finalmente codificadas, en el que una trama comprende un numero de muestras de audio de dominio de tiempo, que comprende las etapas de
    determinar informacion sobre coeficientes para un filtro de smtesis basandose en una trama de muestras de audio; determinar tramas de excitacion basandose en tramas de muestras de audio, comprendiendo una trama de
    5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    55
    60
    excitacion muestras de una senal de excitacion para el filtro de smtesis;
    transformar tramas de excitacion superpuestas a un dominio de frecuencia para obtener espectros de trama de excitacion de una manera cnticamente muestreada introduciendo solapamiento en tiempo;
    codificar los espectros de trama de excitacion para obtener tramas codificadas basandose en los coeficientes y los espectros de trama de excitacion;
    codificar las tramas de excitacion basandose en un libro de codigos predeterminado para obtener tramas de dominio de excitacion codificadas de libro de codigos; y
    decidir si usar una trama de dominio de excitacion codificada de libro de codigos o una trama codificada para obtener una trama finalmente codificada basandose en una medida de eficiencia de codificacion.
  12. 12. Un programa informatico que tiene un codigo de programa para llevar a cabo el metodo de la reivindicacion 11, cuando el codigo de programa se ejecuta en un ordenador o procesador.
  13. 13. Un decodificador de audio (80) para decodificar tramas codificadas para obtener tramas de una senal de audio muestreada, en el que una trama comprende un numero de muestras de audio de dominio de tiempo, que comprende:
    un decodificador de recuperacion de redundancia (82) para decodificar las tramas codificadas para obtener una informacion sobre coeficientes para un filtro de smtesis y espectros de trama de excitacion; un transformador de introduccion de solapamiento en tiempo inverso (84) para transformar los espectros de trama de excitacion al dominio de tiempo para obtener tramas de excitacion superpuestas, en el que el transformador de introduccion de solapamiento en tiempo inverso (84) esta adaptado para determinar tramas de excitacion superpuestas de espectros de trama de excitacion consecutivos, en el que el transformador de introduccion de solapamiento en tiempo inverso (84) ademas comprende un convertidor (84a) para convertir los espectros de trama de excitacion a tramas de excitacion superpuestas convertidas y un filtro de generacion de ventanas (84b) para aplicar una funcion de generacion de ventanas a las tramas de excitacion superpuestas convertidas para obtener las tramas de excitacion superpuestas, en el que el transformador de introduccion de solapamiento en tiempo inverso (84) comprende un procesador (84c) para detectar un evento y para proporcionar una informacion de secuencia de ventana si se detecta el evento al filtro de generacion de ventanas (84b) y en el que el filtro de generacion de ventanas (84b) esta adaptado para aplicar la funcion de generacion de ventanas de acuerdo con la informacion de secuencia de ventana, y en el que la informacion de secuencia de ventana comprende una primera parte cero, una segunda parte de desvm y una tercera parte cero; un combinador de superposicion/adicion (86) para combinar las tramas de excitacion superpuestas para obtener una trama de excitacion de una manera cnticamente muestreada; y
    una etapa de smtesis predictiva (88) para determinar las tramas de muestras de audio basandose en los coeficientes y la trama de excitacion.
  14. 14. El decodificador de audio (80) de la reivindicacion 13, en el que el combinador de superposicion/adicion (86) esta adaptado para combinar tramas de excitacion superpuestas de manera tal que un numero promedio de muestras en una trama de excitacion equivale a un numero promedio de muestras en un espectro de trama de excitacion.
  15. 15. El decodificador de audio (80) de una de las reivindicaciones 13 o 14, en el que el transformador de introduccion de solapamiento en tiempo inverso (84) esta adaptado para transformar espectros de trama de excitacion al dominio de tiempo de acuerdo con una transformada del coseno discreta modificada inversa (IMDCT).
  16. 16. El decodificador de audio (80) de una de las reivindicaciones 13 a 15, en el que la etapa de smtesis predictiva (88) esta adaptada para determinar una trama de muestras de audio basandose en la codificacion de prediccion lineal (LPC).
  17. 17. El decodificador de audio (80) de la reivindicacion 13, en el que la secuencia de ventana ademas comprende una parte de borde de subida entre la primera parte cero y la segunda parte de desvm y una parte de borde de bajada entre la segunda parte de desvm y la tercera parte cero.
  18. 18. El decodificador de audio (80) de la reivindicacion 17, en el que la segunda parte de desvm comprende una secuencia de unos para modificar las muestras de la trama de excitacion.
  19. 19. Un metodo para decodificar tramas codificadas para obtener tramas de una senal de audio muestreada, en el que una trama comprende un numero de muestras de audio de dominio de tiempo, que comprende las etapas de decodificar las tramas codificadas para obtener una informacion sobre coeficientes para un filtro de smtesis y espectros de trama de excitacion;
    transformar los espectros de trama de excitacion al dominio de tiempo para obtener tramas de excitacion superpuestas de espectros de trama de excitacion consecutivos, en el que la etapa de transformacion comprende
    convertir los espectros de trama de excitacion a tramas de excitacion superpuestas convertidas,
    aplicar una funcion de generacion de ventanas, por un filtro de generacion de ventanas (84b), a las tramas de excitacion superpuestas convertidas para obtener las tramas de excitacion superpuestas,
    detectar un evento, y proporcionar una informacion de secuencia de ventana si se detecta el evento al filtro de generacion de ventanas (84b),
    5 en el que el filtro de generacion de ventanas (84b) esta adaptado para aplicar la funcion de generacion de ventanas de acuerdo con la informacion de secuencia de ventana, y
    en el que la informacion de secuencia de ventana comprende una primera parte cero, una segunda parte de desvfo y una tercera parte cero;
    combinar tramas de excitacion superpuestas para obtener una trama de excitacion de una manera cnticamente 10 muestreada; y
    determinar la trama basandose en los coeficientes y la trama de excitacion.
  20. 20. Un producto de programa informatico para llevar a cabo el metodo de la reivindicacion 19, cuando el programa informatico se ejecuta en un ordenador o procesador.
    15
ES08017661.3T 2008-07-11 2008-10-08 Codificador y decodificador de audio para codificar y decodificar tramas de una señal de audio muestreada Active ES2683077T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US7986208P 2008-07-11 2008-07-11
US79862P 2008-07-11

Publications (1)

Publication Number Publication Date
ES2683077T3 true ES2683077T3 (es) 2018-09-24

Family

ID=40351582

Family Applications (1)

Application Number Title Priority Date Filing Date
ES08017661.3T Active ES2683077T3 (es) 2008-07-11 2008-10-08 Codificador y decodificador de audio para codificar y decodificar tramas de una señal de audio muestreada

Country Status (10)

Country Link
EP (1) EP2144171B1 (es)
JP (1) JP5551692B2 (es)
KR (1) KR101516468B1 (es)
CN (1) CN102089758B (es)
AU (1) AU2009267555A1 (es)
BR (1) BRPI0910527B1 (es)
CA (1) CA2730195C (es)
ES (1) ES2683077T3 (es)
RU (1) RU2507572C2 (es)
WO (1) WO2010003491A1 (es)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8457975B2 (en) * 2009-01-28 2013-06-04 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio decoder, audio encoder, methods for decoding and encoding an audio signal and computer program
CA2763793C (en) * 2009-06-23 2017-05-09 Voiceage Corporation Forward time-domain aliasing cancellation with application in weighted or original signal domain
EP2524374B1 (en) 2010-01-13 2018-10-31 Voiceage Corporation Audio decoding with forward time-domain aliasing cancellation using linear-predictive filtering
MY159444A (en) 2011-02-14 2017-01-13 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E V Encoding and decoding of pulse positions of tracks of an audio signal
BR112013020588B1 (pt) 2011-02-14 2021-07-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparelho e método para codificação de uma parte de um sinal de áudio utilizando uma detecção transiente e um resultado de qualidade
TWI484479B (zh) 2011-02-14 2015-05-11 Fraunhofer Ges Forschung 用於低延遲聯合語音及音訊編碼中之錯誤隱藏之裝置和方法
CN105304090B (zh) * 2011-02-14 2019-04-09 弗劳恩霍夫应用研究促进协会 使用对齐的前瞻部分将音频信号编码及解码的装置与方法
PT2676267T (pt) 2011-02-14 2017-09-26 Fraunhofer Ges Forschung Codificação e descodificação de posições de pulso de faixas de um sinal de áudio
MX2012013025A (es) 2011-02-14 2013-01-22 Fraunhofer Ges Forschung Representacion de señal de informacion utilizando transformada superpuesta.
PL2676266T3 (pl) * 2011-02-14 2015-08-31 Fraunhofer Ges Forschung Układ kodowania na bazie predykcji liniowej wykorzystujący kształtowanie szumu w dziedzinie widmowej
SG192718A1 (en) 2011-02-14 2013-09-30 Fraunhofer Ges Forschung Audio codec using noise synthesis during inactive phases
ES2529025T3 (es) 2011-02-14 2015-02-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparato y método para procesar una señal de audio decodificada en un dominio espectral
FR2972875A1 (fr) * 2011-03-17 2012-09-21 France Telecom Procede et dispositif de filtrage lors d'un changement de filtre arma
MX354812B (es) 2011-04-21 2018-03-22 Samsung Electronics Co Ltd Método para cuantificar coeficientes de codificación predictiva lineal, método de codificación de sonido, método para decuantificar coeficientes de codificación predictiva lineal, método de decodificación de sonido y medio de grabación.
BR122021000241B1 (pt) 2011-04-21 2022-08-30 Samsung Electronics Co., Ltd Aparelho de quantização de coeficientes de codificação preditiva linear
US9037456B2 (en) 2011-07-26 2015-05-19 Google Technology Holdings LLC Method and apparatus for audio coding and decoding
KR20150032614A (ko) * 2012-06-04 2015-03-27 삼성전자주식회사 오디오 부호화방법 및 장치, 오디오 복호화방법 및 장치, 및 이를 채용하는 멀티미디어 기기
CN103915100B (zh) * 2013-01-07 2019-02-15 中兴通讯股份有限公司 一种编码模式切换方法和装置、解码模式切换方法和装置
MX347080B (es) * 2013-01-29 2017-04-11 Fraunhofer Ges Forschung Llenado con ruido sin informacion secundaria para celp (para codificadores tipo celp).
CA2900437C (en) * 2013-02-20 2020-07-21 Christian Helmrich Apparatus and method for encoding or decoding an audio signal using a transient-location dependent overlap
RU2665228C1 (ru) * 2013-04-05 2018-08-28 Долби Интернэшнл Аб Аудиокодер и декодер для кодирования по форме волны с перемежением
KR20220140002A (ko) * 2013-04-05 2022-10-17 돌비 레버러토리즈 라이쎈싱 코오포레이션 향상된 스펙트럼 확장을 사용하여 양자화 잡음을 감소시키기 위한 압신 장치 및 방법
CN105359210B (zh) 2013-06-21 2019-06-14 弗朗霍夫应用科学研究促进协会 Fdns应用前实现将mdct频谱衰落到白噪声的装置及方法
EP2830063A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus, method and computer program for decoding an encoded audio signal
KR102244613B1 (ko) * 2013-10-28 2021-04-26 삼성전자주식회사 Qmf 필터링 방법 및 이를 수행하는 장치
FR3013496A1 (fr) * 2013-11-15 2015-05-22 Orange Transition d'un codage/decodage par transformee vers un codage/decodage predictif
CN104111374B (zh) * 2014-07-09 2017-01-04 西安交通大学 一种基于mdct系数进行正弦频率估计的方法
EP2980795A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoding and decoding using a frequency domain processor, a time domain processor and a cross processor for initialization of the time domain processor
EP2980797A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio decoder, method and computer program using a zero-input-response to obtain a smooth transition
EP2980794A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and decoder using a frequency domain processor and a time domain processor
EP2980796A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method and apparatus for processing an audio signal, audio decoder, and audio encoder
FR3024581A1 (fr) * 2014-07-29 2016-02-05 Orange Determination d'un budget de codage d'une trame de transition lpd/fd
EP3067889A1 (en) * 2015-03-09 2016-09-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method and apparatus for signal-adaptive transform kernel switching in audio coding
EP3107096A1 (en) * 2015-06-16 2016-12-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Downscaled decoding
BR112018014799A2 (pt) 2016-01-22 2018-12-18 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e. V. aparelho e método para estimativa de uma diferença de tempo entre canais
EP3276620A1 (en) * 2016-07-29 2018-01-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Time domain aliasing reduction for non-uniform filterbanks which use spectral analysis followed by partial synthesis
EP3324406A1 (en) 2016-11-17 2018-05-23 Fraunhofer Gesellschaft zur Förderung der Angewand Apparatus and method for decomposing an audio signal using a variable threshold
EP3324407A1 (en) * 2016-11-17 2018-05-23 Fraunhofer Gesellschaft zur Förderung der Angewand Apparatus and method for decomposing an audio signal using a ratio as a separation characteristic
EP3644313A1 (en) * 2018-10-26 2020-04-29 Fraunhofer Gesellschaft zur Förderung der Angewand Perceptual audio coding with adaptive non-uniform time/frequency tiling using subband merging and time domain aliasing reduction
CN117476017A (zh) * 2022-07-27 2024-01-30 华为技术有限公司 音频编解码方法、装置、存储介质及计算机程序产品

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1062963C (zh) * 1990-04-12 2001-03-07 多尔拜实验特许公司 用于产生高质量声音信号的解码器和编码器
RU2256293C2 (ru) * 1997-06-10 2005-07-10 Коудинг Технолоджиз Аб Усовершенствование исходного кодирования с использованием дублирования спектральной полосы
US20020040299A1 (en) * 2000-07-31 2002-04-04 Kenichi Makino Apparatus and method for performing orthogonal transform, apparatus and method for performing inverse orthogonal transform, apparatus and method for performing transform encoding, and apparatus and method for encoding data
CA2388439A1 (en) * 2002-05-31 2003-11-30 Voiceage Corporation A method and device for efficient frame erasure concealment in linear predictive based speech codecs
WO2004082288A1 (en) * 2003-03-11 2004-09-23 Nokia Corporation Switching between coding schemes
US7516064B2 (en) * 2004-02-19 2009-04-07 Dolby Laboratories Licensing Corporation Adaptive hybrid transform for signal analysis and synthesis
BRPI0418839A (pt) * 2004-05-17 2007-11-13 Nokia Corp método para suportar e dispositivo eletrÈnico suportando uma codificação de um sinal de áudio, sistema de codificação de áudio, e, produto de programa de software
RU2312405C2 (ru) * 2005-09-13 2007-12-10 Михаил Николаевич Гусев Способ осуществления машинной оценки качества звуковых сигналов
KR101434198B1 (ko) * 2006-11-17 2014-08-26 삼성전자주식회사 신호 복호화 방법
WO2008071353A2 (en) * 2006-12-12 2008-06-19 Fraunhofer-Gesellschaft Zur Förderung Der Angewandten Forschung E.V: Encoder, decoder and methods for encoding and decoding data segments representing a time-domain data stream

Also Published As

Publication number Publication date
CA2730195C (en) 2014-09-09
KR20110043592A (ko) 2011-04-27
BRPI0910527A2 (pt) 2016-07-26
KR101516468B1 (ko) 2015-05-04
CN102089758A (zh) 2011-06-08
EP2144171B1 (en) 2018-05-16
JP5551692B2 (ja) 2014-07-16
CN102089758B (zh) 2014-02-12
WO2010003491A1 (en) 2010-01-14
CA2730195A1 (en) 2010-01-14
EP2144171A1 (en) 2010-01-13
JP2011527444A (ja) 2011-10-27
RU2507572C2 (ru) 2014-02-20
AU2009267555A1 (en) 2010-01-14
BRPI0910527B1 (pt) 2019-11-05
RU2011102422A (ru) 2012-07-27

Similar Documents

Publication Publication Date Title
ES2683077T3 (es) Codificador y decodificador de audio para codificar y decodificar tramas de una señal de audio muestreada
US11676611B2 (en) Audio decoding device and method with decoding branches for decoding audio signal encoded in a plurality of domains
JP5325294B2 (ja) 共通の前処理を有する低ビットレート・オーディオ符号化/復号化方式
ES2564400T3 (es) Codificador y descodificador de audio para codificar y descodificar muestras de audio
BRPI0914056B1 (pt) Esquema de codificação/decodificação de áudio comutado multi-resolução
TW201011739A (en) Audio encoder and decoder for encoding and decoding frames of a sampled audio signal
AU2013200679B2 (en) Audio encoder and decoder for encoding and decoding audio samples
EP3002751A1 (en) Audio encoder and decoder for encoding and decoding audio samples