ES2701862T3 - Decodificación de una señal de audio estéreo usando predicción compleja - Google Patents

Decodificación de una señal de audio estéreo usando predicción compleja Download PDF

Info

Publication number
ES2701862T3
ES2701862T3 ES15176776T ES15176776T ES2701862T3 ES 2701862 T3 ES2701862 T3 ES 2701862T3 ES 15176776 T ES15176776 T ES 15176776T ES 15176776 T ES15176776 T ES 15176776T ES 2701862 T3 ES2701862 T3 ES 2701862T3
Authority
ES
Spain
Prior art keywords
signal
decoded
prediction
channel
spectrum
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
ES15176776T
Other languages
English (en)
Inventor
Heiko Purnhagen
Pontus Carlsson
Lars Villemoes
Julien Robilliard
Matthias Neusinger
Christian Helmrich
Johannes Hilpert
Nikolaus Rettelbach
Sascha Disch
Bernd Edler
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.)
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Dolby International AB
Original Assignee
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Dolby International AB
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 Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV, Dolby International AB filed Critical Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Application granted granted Critical
Publication of ES2701862T3 publication Critical patent/ES2701862T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/24Systems for the transmission of television signals using pulse code modulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Stereophonic System (AREA)

Abstract

Decodificador de voz y audio unificado de MPEG para decodificar una señal de audio estéreo codificada (100), comprendiendo la señal de audio estéreo codificada una señal de mezcla descendente codificada generada basándose en una regla de combinación para combinar una señal de audio de primer canal y una señal de audio de segundo canal de una señal de audio estéreo, una señal residual de predicción codificada e información de predicción, que comprende: un decuantificador (110; 110a, 110b) para decuantificar la señal de mezcla descendente codificada (104) para obtener una señal de mezcla descendente decodificada (112, M) y para decuantificar la señal residual codificada (106) para obtener una señal residual decodificada (114, D); y un calculador de decodificador (116) para calcular una señal estéreo decodificada que tiene una señal de primer canal decodificada (117, L) y una señal de segundo canal decodificada (118, R) usando la señal residual decodificada (114, D) la información de predicción (108) y la señal de mezcla descendente decodificada (112, M), de modo que la señal de primer canal decodificada (117) y la señal de segundo canal decodificada (118) son al menos aproximaciones de la señal de primer canal y la señal de segundo canal de la señal estéreo, en el que la información de predicción (108) comprende una parte real (αR) y una parte imaginaria (αI) de un coeficiente de predicción compleja, en el que el calculador de decodificador (116) comprende un predictor (1160) configurado para estimar (1160a) una parte imaginaria (601) de la señal de mezcla descendente decodificada (112) de una trama actual, siendo la señal de mezcla descendente decodificada para la trama actual un espectro de MDCT de la trama actual, en el que el predictor (1160) comprende un transformador real a imaginario para calcular un espectro de MDST de la trama actual como la parte imaginaria, en el que el transformador real a imaginario se implementa en un dominio de frecuencia y se configura para realizar filtrado de respuesta de impulso infinito bidimensional de un espectro de MDCT de la señal de mezcla descendente decodificada de una trama anterior, el espectro de MDCT de la señal de mezcla descendente decodificada de la trama actual y un espectro de MDCT de la señal de mezcla descendente decodificada de una siguiente trama, o para calcular una aproximación de un espectro de MDST usando el espectro de MDCT de la trama actual y el espectro de MDCT de la trama anterior o para calcular una aproximación de un espectro de MDST únicamente usando el espectro de MDCT de la trama actual, en el que el predictor (1160) se configura para multiplicar la parte imaginaria (601) de la señal de mezcla descendente decodificada por la parte imaginaria negativa (αI) del coeficiente de predicción para obtener una segunda parte de la señal de predicción y para multiplicar la parte real de la señal de mezcla descendente decodificada por la parte real negativa (αR) del coeficiente de predicción para obtener una primera parte de la señal de predicción; en el que el calculador de decodificador (116) comprende además un calculador de señal de combinación (1161a, 1161b) configurado para añadir la primera parte de la señal de predicción y la señal residual decodificada, y para añadir adicionalmente la segunda parte de la señal de predicción para obtener una señal lateral (1165); en el que el calculador de decodificador (116) comprende además un combinador (1162) para combinar la señal lateral (1165) y siendo la señal de mezcla descendente decodificada una señal central para obtener la señal de primer canal decodificada (117, L) que es una señal de canal izquierdo y la señal de segundo canal decodificada (118, R) que es una señal de canal derecho, en el que el decodificador comprende además un elemento de transformada de coseno discreta modificada inversa (52) para generar una señal de primer canal de dominio de tiempo a partir de la señal de canal izquierdo y un elemento de transformada de coseno discreta modificada inversa (53) adicional para generar una señal de segundo canal de dominio de tiempo a partir de la señal de canal derecho.

Description

DESCRIPCIÓN
Decodificación de una señal de audio estéreo usando predicción compleja
La presente invención se refiere a procesamiento de audio y, particularmente, al procesamiento de audio multicanal de una señal multicanal que tiene dos o más señales de canal.
Se conoce en el campo del procesamiento de estéreo o multicanal la aplicación de la así denominada codificación de estéreo central/lateral. En este concepto se forma una combinación de la señal de canal de audio izquierdo o primero y la señal de canal de audio derecho o segundo para obtener una señal central o mono M. Adicionalmente, se forma una diferencia entre la señal de canal izquierdo o primero y la señal de canal derecho o segundo para obtener la señal lateral S. Este método de codificación central/lateral logra una ganancia de codificación significativa, cuando la señal izquierda y la señal derecha son bastante similares entre sí, ya que la señal lateral se volverá bastante pequeña. Típicamente, una ganancia de codificación de una etapa de cuantificador/codificador por entropía resultará mayor, cuando el intervalo de valores a cuantificar/codificar por entropía se vuelve menor. De este modo, para una PCM o un codificador aritmético por entropía o basado en Huffman, la ganancia de codificación aumenta, cuando la señal lateral se vuelve más pequeña. Sin embargo existen determinadas situaciones en que la codificación central/lateral no logrará una ganancia de codificación. La situación puede producirse cuando las señales en ambos canales se desplazan por fase entre sí, por ejemplo, en 90°. A continuación, la señal central y la señal lateral pueden estar en un intervalo bastante similar y, por lo tanto, la codificación de la señal central y la señal lateral utilizando el codificador por entropía no resultará en una ganancia de codificación e incluso puede resultar en un aumento de tasa de bits. Por lo tanto, se puede aplicar una codificación central/lateral selectiva de frecuencia para desactivar la codificación central/lateral en bandas, en las que la señal lateral no se vuelve más pequeña hasta un cierto grado con respecto a la señal izquierda original, por ejemplo.
Aunque la señal lateral se volverá cero, cuando las señales izquierda y derecha son idénticas, logrando una máxima ganancia de codificación debido a la eliminación de la señal lateral, la situación nuevamente se vuelve diferente cuando la señal central y la señal lateral son idénticas con respecto a la forma de la forma de onda, pero la única diferencia entre ambas señales son sus amplitudes generales. En este caso, cuando se supone adicionalmente que la señal lateral no tiene un desplazamiento por fase a la señal central, la señal lateral aumenta significativamente, aunque, por otra parte, la señal central no disminuye demasiado con respecto a su intervalo de valores. Cuando dicha situación se produce en una determinada banda de frecuencia, entonces se desactivaría nuevamente la codificación central/lateral debido a la falta de ganancia de codificación. La codificación central/lateral se puede aplicar en forma selectiva de frecuencia o se puede aplicar alternativamente en el dominio de tiempo.
Existen técnicas alternativas de codificación multicanal que no están basadas en un tipo de enfoque de forma de onda como codificación central/lateral, pero que se basan en el procesamiento paramétrico basándose en determinadas indicaciones binaurales. Dichas técnicas se conocen según las expresiones “codificación binaural de la indicación”, “codificación de estéreo paramétrico” o “codificación envolvente de MPEG”. En este punto se calculan determinadas indicaciones para una pluralidad de bandas de frecuencia. Dichas indicaciones incluyen diferencias de nivel entre canales, medidas de coherencia entre canales, diferencias de tiempo entre canales y/o diferencias de fase entre canales. Estos enfoques parten de la premisa de que una impresión multicanal sentida por el oyente no necesariamente se basa en las formas de onda detalladas de los dos canales, pero se basa en las indicaciones suministradas en forma selectiva de frecuencia precisas o en la información entre canales. Esto significa que, en una máquina de conversión se debe tener cuidado en la conversión de señales multicanal que reflejen las señales con precisión, si bien las formas de onda no son de importancia decisiva.
Este enfoque puede ser complejo particularmente en el caso cuando el decodificador tiene que aplicar un procesamiento de decorrelación para crear artificialmente señales estéreo, que se decorrelacionan entre sí, aunque la totalidad de dichos canales se obtienen a partir de uno y el mismo canal de mezcla descendente. Los decorreladores para este propósito son, dependiendo de su implementación, complejos y pueden introducir distorsiones, particularmente en el caso de porciones de señales transitorias. Adicionalmente, a diferencia de la codificación de forma de onda, el enfoque de codificación paramétrica es un enfoque de codificación con pérdidas, que inevitablemente resulta en una pérdida de información no únicamente introducida por la cuantificación típica sino también introducida al considerar las indicaciones binaurales en lugar de las formas de onda particulares. Este enfoque resulta tasas de bits muy bajas pero puede incluir compromisos de calidad.
Existen desarrollos recientes para codificación de voz y audio unificada (USAC) ilustrada en la Figura 7a. Un decodificador de núcleo 700 realiza una operación de decodificación de la señal estéreo codificada en la entrada 701, que puede codificarse como centro/lateral. El decodificador de núcleo emite una señal central en la línea 702 y una señal lateral o residual en la línea 703. Ambas señales se transforman a un dominio de QMF mediante los bancos de filtros de QMF 704 y 705. A continuación se aplica un decodificador envolvente de MPEG 706 para generar una señal de canal izquierdo 707 y una señal de canal derecho 708. Estas señales de banda baja se introducen posteriormente en un decodificador de replicación de banda espectral (SBR) 709, que produce señales izquierda y derecha de banda ancha en las líneas 710 y 711, que a continuación se transforman a un dominio de tiempo por los bancos de filtros de síntesis de QMF 712, 713 de modo que se obtienen las señales izquierda y derecha de banda ancha L, R.
La Figura 7b ilustra una situación cuando el decodificador envolvente de MPEG 706 realizaría una decodificación central/lateral. Alternativamente, el bloque decodificador envolvente de MPEG 706 podría realizar una decodificación paramétrica basada en la indicación binaural para generar señales estéreo a partir de una única señal mono del decodificador de núcleo. Naturalmente, el decodificador envolvente de MPEG 706 también podría generar una pluralidad de señales de salida de banda baja a introducir en el bloque decodificador de SBR 709 utilizando información paramétrica tal como diferencias de nivel entre canales, medidas de coherencia entre canales u otros tales parámetros de información entre canales.
Cuando el bloque decodificador envolvente de MPEG 706 realiza la decodificación central/lateral ilustrada en la Figura 7b, se puede aplicar un factor de ganancia real g y DMX/RES y L/R son señales de mezcla descendente/residual e izquierda/derecha, respectivamente, representadas en el dominio complejo híbrido de QMF. El uso de una combinación de un bloque 706 y un bloque 709 únicamente provoca un pequeño aumento en la complejidad de cálculo en comparación con un decodificador estéreo usado como base, debido a que la representación de QMF complejo de la señal ya está disponible como parte del decodificador de SBR. Sin embargo, en una configuración no de s Br , la codificación estéreo basada en QMF, como se propone en el contexto de la USAC, resultaría en un aumento significativo en la complejidad de cálculo debido a los bancos de QMF necesarios, que en este ejemplo necesitarían bancos de análisis de 64 bandas y bancos de síntesis de 64 bandas. Estos bancos de filtros únicamente deberían añadirse para los fines de la codificación estéreo.
En el sistema de USAC de MPEG en desarrollo, sin embargo, también existen modos de codificación a altas tasas de bits en las que la SBR típicamente no se utiliza.
Los dos siguientes documentos de USAC de MPEG son ilustrativos de esquemas de codificación o decodificación de audio multicanal con lo que se estima una señal de diferencia a partir de una señal de mezcla descendente/suma/mono por medio de un coeficiente de predicción de valor complejo:
- HEIKO PURNHAGEN Et AL: “Technical description of proposed Unified Stereo Coding in USAC”, 90. MPEG MEETING; 26-10-2009 -30-10-2009; XIAN; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11), N.° M16921, 23 de octubre de 2009 (23-10-2009);
- MAX NEUENDORF (EDITOR): “WD5 of USAC”, 90. MPEG MEETING; 26-10-2009 - 30-10-2009; XIAN; (MOTION PICTURE EXPERT GROUP OR ISO/IECJTC1/SC29/WG11), N.° N11040, 8 de diciembre de 2009 (08-12-2009), páginas 1-146;
El documento publicado posteriormente WO 2011/124608 A1 divulga métodos y dispositivos para codificación y decodificación estéreo usando predicción compleja en el dominio de la frecuencia. En una realización, un método de decodificación, para obtener una señal estéreo de salida a partir de una señal de estéreo de entrada codificada mediante codificación de predicción compleja y que comprende primeras representaciones de dominio de frecuencia de dos canales de entrada, comprende las etapas de mezcla ascendente de: (i) calculo de una segunda representación de dominio de frecuencia de un primer canal de entrada; y (ii) calculo de un canal de salida sobre la base de la primera y segunda representaciones de dominio de frecuencia del primer canal de entrada, la primera representación de frecuencia de dominio del segundo canal de entrada y un coeficiente de predicción compleja. La mezcla ascendente puede suspenderse en respuesta a datos de control.
El documento WO 2009/141775 A1 divulga un aparato de mezcla ascendente estéreo paramétrico que genera una señal izquierda y una señal derecha a partir de una señal de mezcla descendente mono basándose en parámetros espaciales. Caracterizándose dicha mezcla ascendente estero paramétrica porque comprende un medio para predecir una señal de diferencia que comprende una diferencia entre la señal izquierda y la señal derecha basándose en la señal de mezcla descendente mono escalada con un coeficiente de predicción. Dicho coeficiente de predicción se obtiene a partir de parámetros espaciales. Dicho aparato de mezcla ascendente estéreo paramétrico comprende además un medio aritmético para obtener la señal izquierda y la señal derecha basándose en una suma y una diferencia de la señal de mezcla descendente mono y dicha señal de diferencia.
Es un objetivo de la presente invención proporcionar un concepto de procesamiento de audio mejorado, que por una parte produce una alta ganancia de codificación y, por otra parte, resulta en a buena calidad de audio y/o complejidad de cálculo reducida.
Este objetivo se logra mediante un decodificador de voz y audio de MPEG de acuerdo con la reivindicación 1, un método de decodificación de voz y audio de MPEG de acuerdo con la reivindicación 12 o un programa informático de acuerdo con la reivindicación 13.
La presente invención se basa en la conclusión de que una ganancia de codificación del enfoque de codificación de forma de onda de alta calidad se puede mejorar significativamente mediante una predicción de una segunda señal de combinación usando una primera señal de combinación, en la que ambas señales de combinación se obtienen a partir de las señales originales de canal utilizando una regla de combinación tal como la regla de combinación central/lateral. Se ha descubierto que esta información de predicción se calcula por un predictor en un codificador de audio de modo que se cumple un objetivo de optimización, incurre únicamente en una pequeña sobrecarga, pero resulta en una disminución significativa de la tasa de bits necesaria para la señal lateral sin perder ninguna calidad de audio, ya que la predicción inventiva es sin embargo una codificación basada en forma de onda y no un enfoque de codificación multicanal o estéreo basado en parámetros. Para reducir la complejidad de cálculo, se prefiere realizar una codificación de dominio de frecuencia, en la que la información de predicción se obtiene a partir de datos de entrada del dominio de frecuencia en una forma selectiva de bandas. El algoritmo de conversión para convertir la representación de dominio de tiempo en una representación espectral es preferentemente un proceso críticamente muestreado tal como una transformada de coseno discreta modificada (MDCT) o una transformada de seno discreta modificada (MDST), que es diferente de una transformada compleja en que se calculan únicamente valores reales o únicamente valores imaginarios, mientras que, en una transformada compleja, se calculan valores reales y complejos de un espectro que resultan en un sobremuestreo dos veces mayor.
Preferentemente se usa una transformada basada en introducción y cancelación de solapamiento. La MDCT, en particular, es una transformada de este tipo y permite una atenuación cruzada entre bloques posteriores sin ninguna sobrecarga debido a la propiedad bien conocida de cancelación de solapamiento de dominio de tiempo (TDAC), que se obtiene mediante el procesamiento de solapar-añadir en el lado del decodificador.
Preferentemente, la información de predicción calculada en el codificador, transmitida al decodificador y usada en el decodificador comprende una parte imaginaria, que puede reflejar ventajosamente diferencias de fase entre los dos canales de audio en cantidades seleccionadas arbitrariamente entre 0° y 360°. La complejidad de cálculo se reduce significativamente cuando se aplica únicamente una transformada de valor real o, en general, una transformada que proporciona o bien un espectro real únicamente o bien proporciona un espectro imaginario únicamente. Para usar dicha información de predicción imaginaria, que indica un desplazamiento por fase entre una determinada banda de la señal izquierda y una banda correspondiente de la señal derecha, se proporciona un convertidor real a imaginario o, dependiendo de la implementación de la transformada, un convertidor imaginario a real en el decodificador para calcular una señal residual de predicción a partir de la primera señal de combinación, que tiene la fase rotada con respecto a la señal de combinación original. Esta señal residual de predicción de fase rotada a continuación se puede combinar con la señal residual de predicción transmitida en el flujo de bits para regenerar una señal lateral que, finalmente, se puede combinar con la señal central para obtener el canal izquierdo decodificado en una cierta banda y el canal derecho decodificado en esta banda.
Para aumentar la calidad de audio, el mismo convertidor real a imaginario o el convertidor de imaginario a real, que se aplica en el lado del decodificador se implementa también en el lado del codificador, cuando la señal residual de predicción se calcula en el codificador.
La presente invención es ventajosa en que proporciona una la calidad de audio mejorada y reduce la tasa de bits en comparación con los sistemas que tienen la misma tasa de bits o que tienen la misma calidad de audio.
Adicionalmente, se obtienen ventajas con respecto a una eficiencia de cálculo de codificación estéreo unificada útil en el sistema de USAC del MPEG a altas tasas de bits, en las que la SBR típicamente no se usa. En lugar de procesar la señal en el dominio complejo híbrido de QMF, estos enfoques implementan una codificación estéreo predictiva basada en residual en el dominio nativo de MDCT del codificador de transformada estéreo subyacente.
Ejemplos comprenden un aparato o método para generar una señal estéreo mediante predicción compleja en el dominio de MDCT, en el que la predicción compleja se hace en el dominio de MDCT usando una transformada real a compleja, en el que dicha señal estéreo puede ser o bien una señal estéreo codificada en el lado del codificador o bien puede ser alternativamente una señal estéreo decodificada/transmitida, cuando el aparato o método para generar la señal estéreo se aplica en el lado del decodificador.
Realizaciones preferidas de la presente invención se describen a continuación con respecto a los dibujos adjuntos, en los cuales:
La Figura 1 es un diagrama de un ejemplo de un decodificador de audio;
La Figura 2 es un diagrama de bloques de un ejemplo de un codificador de audio;
La Figura 3a ilustra una implementación del calculador del codificador de la Figura 2;
La Figura 3b ilustra una implementación alternativa del calculador del codificador de la Figura 2;
La Figura 3c ilustra una regla de combinación central/lateral a aplicar en el lado del codificador;
La Figura 4a ilustra una implementación del calculador del decodificador de la Figura 1;
La Figura 4b ilustra una implementación alternativa del calculador del decodificador en forma de un calculador de matriz;
La Figura 4c ilustra una regla de combinación inversa central/lateral que corresponde a la regla de combinación ilustrada en la Figura 3c;
La Figura 5a ilustra un ejemplo de un codificador de audio que opera en el dominio de frecuencia, que es preferentemente un dominio de frecuencia de valor real;
La Figura 5b ilustra una implementación de un decodificador de audio que opera en el dominio de frecuencia; La Figura 6a ilustra una implementación alternativa de un codificador de audio que opera en el dominio de MDCT y utiliza una transformada real a imaginaria;
La Figura 6b ilustra un decodificador de audio que opera en el dominio de MDCT y usa una transformada real a imaginaria de acuerdo con una realización preferida de la invención;
La Figura 7a ilustra un post-procesador de audio que usa un decodificador estéreo y un decodificador de SBR conectado posteriormente;
La Figura 7b ilustra una matriz de mezcla ascendente central/lateral;
La Figura 8a ilustra una vista detallada en el bloque de MDCT en la Figura 6a;
La Figura 8b ilustra una vista detallada en el bloque de MDCT-1 de la Figura 6b;
La Figura 9a ilustra una implementación de un optimizador que opera en resolución reducida con respecto a la salida de MdCt ;
La Figura 9b ilustra una representación de un espectro de MDCT y las correspondientes bandas de resolución inferior, en las que se calcula la información de predicción;
La Figura 10a ilustra una implementación del transformador real a imaginario en la Figura 6a o en la Figura 6b; y La Figura 10b ilustra una posible implementación del calculador de espectro imaginario de la Figura 10a.
La Figura 1 ilustra un decodificador de audio para decodificar una señal de audio multicanal codificada y obtenida en una línea de entrada 100. La señal de audio multicanal codificada comprende una primera señal de combinación codificada generada usando una regla de combinación para combinar una señal de primer canal y una señal de segundo canal que representan la señal de audio multicanal, una señal residual de predicción codificada e información de predicción. La señal multicanal codificada puede ser un flujo de datos tal como un flujo de bits, que tiene los tres componentes en una forma multiplexada. Se puede incluir información secundaria adicional en la señal multicanal codificada en la línea 100. La señal se introduce en una interfaz de entrada 102. La interfaz de entrada 102 se puede implementar como un demultiplexor de flujo de datos, que emite la primera señal de combinación codificada en la línea 104, la señal residual codificada en la línea 106 y la información de predicción en la línea 108. Preferentemente, la información de predicción es un factor que tiene una parte real que no es igual a cero y/o una parte imaginaria distinta de cero. La señal de combinación codificada y la señal residual codificada se introducen en un decodificador de señales 110 para decodificar la primera señal de combinación para obtener una primera señal de combinación decodificada en la línea 112. Adicionalmente, el decodificador de señales 110 se configura para decodificar la señal residual codificada para obtener una señal residual decodificada en la línea 114. Dependiendo del procesamiento de codificación en un lado del codificador de audio, el decodificador de señales puede comprender un decodificador por entropía tal como un decodificador Huffman, un decodificador aritmético o cualquier otro decodificador por entropía y una etapa de decuantificación conectada posteriormente para realizar una operación de decuantificación que coincide con una operación del cuantificador en un codificador de audio asociado. Las señales en la línea 112 y 114 se introducen en un calculador del decodificador 115, que emite la señal de primer canal en la línea 117 y una señal de segundo canal en la línea 118, en la que estas dos señales son señales estéreo o dos canales de una señal de audio multicanal. Cuando, por ejemplo, la señal de audio multicanal comprende cinco canales, entonces las dos señales son dos canales de la señal multicanal. Para codificar totalmente una señal multicanal de este tipo que tiene cinco canales se pueden aplicar dos decodificadores ilustrados en la Figura 1, en la que el primer decodificador procesa el canal izquierdo y el canal derecho, el segundo decodificador procesa el canal envolvente izquierdo y el canal envolvente derecho y un tercer decodificador mono se usaría para realizar una codificación mono del canal central. Sin embargo, también se pueden aplicar otros agrupamientos o combinaciones de codificadores de forma de onda y codificadores paramétricos. Una forma alternativa de generalizar el esquema de predicción a más de dos canales sería tratar al mismo tiempo tres señales (o más), es decir, predecir una 3a señal de combinación a partir de una 1a y una 2a señal utilizando dos coeficientes de predicción, de forma muy similar al módulo "dos a tres" en el envolvente de MPEG.
El calculador del decodificador 116 se configura para calcular una señal multicanal decodificada que tiene la señal de primer canal decodificada 117 y la señal de segundo canal decodificada 118 usando la señal residual decodificada 114, la información de predicción 108 y la primera señal de combinación decodificada 112. Particularmente, el calculador del decodificador 116 se configura para operar de tal modo que la señal de primer canal decodificada y la señal de segundo canal decodificada son por lo menos una aproximación de una señal de primer canal y una señal de segundo canal de la señal multicanal introducidas en un codificador correspondiente, que se combinan mediante la regla de combinación cuando se generan la primera señal de combinación y la señal residual de predicción. Específicamente, la información de predicción en la línea 108 comprende una parte de valor real distinta de cero y/o una parte imaginaria distinta de cero.
El calculador del decodificador 116 se puede implementar de diversos modos. Una primera implementación se ilustra en la Figura 4a. Esta implementación comprende un predictor 1160, un calculador de señales de combinación 1161 y un combinador 1162. El predictor recibe la primera señal de combinación decodificada 112 y la información de predicción 108 y emite una señal de predicción 1163. Específicamente, el predictor 1160 se configura para aplicar la información de predicción 108 a la primera señal de combinación decodificada 112 o una señal obtenida a partir de la primera señal de combinación decodificada. La regla de derivación para obtener la señal a la que se aplica la información de predicción 108 puede ser una transformada real a imaginaria, o igualmente, una transformada imaginaria a real o una operación de ponderación o, dependiendo de la implementación, una operación de desplazamiento por fase o una operación combinada de ponderación/desplazamiento por fase. La señal de predicción 1163 se introduce junto con la señal residual decodificada en el calculador de señales de combinación 1161 para calcular la segunda señal de combinación decodificada 1165. Ambas señales 112 y 1165 se introducen en el combinador 1162, que combina la primera señal de combinación decodificada y la segunda señal de combinación para obtener la señal de audio multicanal decodificada que tiene la señal de primer canal decodificada y la señal de segundo canal decodificada en las líneas de salida 1166 y 1167, respectivamente. Alternativamente, el calculador del decodificador se implementa como un calculador de matriz 1168, que recibe, como entrada, la primera señal de combinación decodificada o señal M, la señal residual decodificada o señal D y la información de predicción a 108. El calculador de matriz 1168 aplica una matriz de transformada ilustrada como 1169 a las señales M, D para obtener las señales de salida L, R, en las que L es la señal de primer canal decodificada y R es la señal de segundo canal decodificada. La notación en la Figura 4b se asemeja a una notación estéreo con un canal izquierdo L y un canal derecho R. Se ha aplicado esta notación para proporcionar una explicación más simple si bien queda claro para los expertos en la técnica que las señales L, R pueden ser cualquier combinación de dos señales de canal en una señal multicanal que tiene más de dos señales de canal. La operación matriz 1169 unifica las operaciones en los bloques 1160, 1161 y 1162 de la Figura 4a en un tipo de cálculo matriz de “disparo único”, y las entradas en el circuito de la Figura 4a y las salidas desde el circuito de la Figura 4a son idénticas a las entradas en el calculador de matriz 1168 o las salidas desde el calculador de matriz 1168.
La Figura 4c ilustra un ejemplo para una regla de combinación inversa aplicada por el combinador 1162 en la Figura 4a. Particularmente, la regla de combinación es similar a la regla de combinación del lado del decodificador en la codificación central/lateral bien conocida, en la que L = M S y R = M -S. Se entiende que la señal S usada por la regla de combinación inversa en la Figura 4c es la señal calculada por el calculador de señales de combinación, es decir, la combinación de la señal de predicción en la línea 1163 y la señal residual decodificada en la línea 114. Se entiende que en esta memoria descriptiva, las señales en las líneas a veces se nombran por los números de referencia para las líneas o a veces se indican por los propios números de referencia, que se han asignado a las líneas. Por lo tanto, la notación es tal que una línea que tiene una cierta señal está indicando la señal propiamente dicha. Una línea puede ser una línea física en una implementación por cable. En una implementación computarizada, sin embargo, una línea física no existe, pero la señal representada por la línea se transmite desde un módulo de cálculo hasta el otro módulo de cálculo.
La Figura 2 ilustra un codificador de audio para codificar una señal de audio multicanal 200 que tiene dos o más señales de canal, en el que una señal de primer canal se ilustra en 201 y un segundo canal se ilustra en 202. Ambas señales se introducen en un calculador del codificador 203 para calcular una primera señal de combinación 204 y una señal residual de predicción 205 usando la señal de primer canal 201 y la señal de segundo canal 202 y la información de predicción 206, de modo que la señal residual de predicción 205, cuando se combina con una señal de predicción obtenida a partir de la primera señal de combinación 204 y la información de predicción 206 resulta una segunda señal de combinación, en la que la primera señal de combinación y la segunda señal de combinación pueden obtenerse a partir de la señal de primer canal 201 y la señal de segundo canal 202 usando una regla de combinación.
La información de predicción se genera por un optimizador 207 para calcular la información de predicción 206 de modo que la señal residual de predicción cumple un objetivo de optimización 208. La primera señal de combinación 204 y la señal residual 205 se introducen en un codificador de señales 209 para codificar la primera señal de combinación 204 para obtener una primera señal de combinación codificada 210 y para codificar la señal residual 205 para obtener una señal residual codificada 211. Ambas señales codificadas 210, 211 se introducen en una interfaz de salida 212 para combinar la primera señal de combinación codificada 210 con la señal residual de predicción codificada 211 y la información de predicción 206 para obtener una señal multicanal codificada 213, que es similar a la señal multicanal codificada 100 introducida en la interfaz de entrada 102 del decodificador de audio ilustrado en la Figura 1.
Dependiendo de la implementación, el optimizador 207 recibe o bien la señal de primer canal 201 y la señal de segundo canal 202 o bien, tal como se ilustra en las líneas 214 y 215, la primera señal de combinación 214 y la segunda señal de combinación 215 obtenidas a partir de un combinador 2031 de la Figura 3a, que se analizará posteriormente.
Un objetivo preferido de optimización se ilustra en la Figura 2, en la que la ganancia de codificación se maximiza, es decir, la tasa de bits se reduce tanto como sea posible. En este objetivo de optimización, la señal residual D se reduce al mínimo con respecto a a. Esto significa, en otras palabras, que la información de predicción a se elige de tal modo que ||S - aM||2 se minimiza. Esto resulta en una solución para a que se ilustra la Figura 2. Las señales S, M se proporcionan en forma de bloque y son preferentemente señales espectrales de dominio, en las que la notación ||...|| significa la norma 2 del argumento, y en las que <...> ilustra el producto de puntos de forma habitual. Cuando la señal de primer canal 201 y la señal de segundo canal 202 se introducen en el optimizador 207, a continuación el optimizador tendría que aplicar la regla de combinación, en la que una regla de combinación ilustrativa se ilustra en la Figura 3c. Sin embargo, cuando la primera señal de combinación 214 y la segunda señal de combinación 215 se introducen en el optimizador 207, entonces el optimizador 207 no necesita implementar la regla de combinación por sí mismo.
Otros objetivos de optimización pueden referirse a la calidad perceptual. Un objetivo de optimización puede ser que se obtenga una calidad perceptual máxima. A continuación, el optimizador necesitaría información adicional obtenida a partir de un modelo perceptual. Otras implementaciones del objetivo de optimización pueden referirse a la obtención de una tasa de bits mínima o fija. A continuación, el optimizador 207 se implementaría para realizar una operación de cuantificación/codificación por entropía para determinar la tasa de bits necesaria para determinados valores de a de modo que a se puede fijar para cumplir los requisitos tales como una tasa mínima de bits, o alternativamente, una tasa fija de bits. Otras implementaciones del objetivo de optimización pueden referirse a un uso mínimo de los recursos del codificador o del decodificador. En el caso de una implementación de dicho objetivo de optimización, la información en los recursos necesarios para una cierta optimización estaría disponible en el optimizador 207. Adicionalmente, una combinación de estos objetivos de optimización u otros objetivos de optimización se puede aplicar para controlar el optimizador 207, que calcula la información de predicción 206.
El calculador del codificador 203 en la Figura 2 se puede implementar de distintas formas, en las que una primera implementación ilustrativa se ilustra en la Figura 3a, en la que se realiza una regla de combinación explícita en el combinador 2031. Una implementación alternativa ilustrativa se ilustra en la Figura 3b, en la que se utiliza un calculador de matriz 2039. El combinador 2031 en la Figura 3a se puede implementar para realizar la regla de combinación ilustrada en la Figura 3c, que es de manera ilustrativa la regla de codificación central/lateral bien conocida, en la que se aplica un factor de ponderación de 0,5 a todas las ramas. Sin embargo se pueden implementar otros factores de ponderación o ningún factor de ponderación dependiendo de la implementación. Adicionalmente, debe apreciarse que se pueden aplicar otras reglas de combinación tales como otras reglas de combinación lineales o reglas de combinación que no son lineales, siempre que haya una regla de combinación inversa correspondiente, que se puede aplicar en el combinador del decodificador 1162 ilustrado en la Figura 4a, que aplica una regla de combinación que es inversa a la regla de combinación aplicada por el codificador. Se puede usar cualquier regla de predicción invertible, ya que la influencia en la forma de onda está “equilibrada” por la predicción, es decir, cualquier error se incluye en la señal residual transmitida, ya que la operación de predicción realizada por el optimizador 207 en combinación con el calculador del codificador 203 es un proceso que conserva la forma de onda.
El combinador 2031 emite la primera señal de combinación 204 y una segunda señal de combinación 2032. La primera señal de combinación se introduce en un predictor 2033 y la segunda señal de combinación 2032 se introduce en el calculador residual 2034. El predictor 2033 calcula una señal de predicción 2035, que se combina con la segunda señal de combinación 2032 para obtener finalmente la señal residual 205. Particularmente, el combinador 2031 se configura para combinar las dos señales de canal 201 y 202 de la señal de audio multicanal en dos formas distintas para obtener la primera señal de combinación 204 y la segunda señal de combinación 2032, en la que las dos formas distintas se ilustran en la Figura 3c. El predictor 2033 se configura para aplicar la información de predicción a la primera señal de combinación 204 o una señal obtenida a partir de la primera señal de combinación para obtener la señal de predicción 2035. La señal obtenida a partir de la señal de combinación puede obtenerse a partir de cualquier operación no lineal o lineal, en la que se prefiere una transformada real a imaginaria/transformada imaginaria a real, que se puede implementar utilizando un filtro lineal tal como un filtro FIR que realiza adiciones ponderadas de ciertos valores.
El calculador residual 2034 en la Figura 3a puede realizar una operación de sustracción de modo que la señal de predicción se sustrae de la segunda señal de combinación. Sin embargo, son posibles otras operaciones en el calculador residual. De la misma manera, el calculador de señales de combinación 1161 en la Figura 4a puede realizar una operación de adición en la que la señal residual decodificada 114 y la señal de predicción 1163 se añaden juntas para obtener la segunda señal de combinación 1165.
La Figura 5a ilustra una implementación preferida de un codificador de audio. En comparación con el codificador de audio ilustrado en la Figura 3a, la señal de primer canal 201 es una representación espectral de una señal de primer canal de dominio de tiempo 55a. De la misma manera, la señal de segundo canal 202 es una representación espectral de una señal de canal de dominio de tiempo 55b. La conversión desde el dominio de tiempo en la representación espectral se realiza por un convertidor de tiempo/frecuencia 50 para la señal de primer canal y un convertidor de tiempo/frecuencia 51 para la señal de segundo canal. Preferentemente, pero no necesariamente, los convertidores espectrales 50, 51 se implementan como convertidores de valor real. El algoritmo de conversión puede ser una transformada de coseno discreta, una transformada de FFT, en la que únicamente se utiliza la parte real, una MDCT o cualquier otra transformada que proporcione valores espectrales de valor real. Alternativamente, ambas transformadas se pueden implementar como una transformada imaginaria, tal como una DST, una MDST o una FFT en donde únicamente se utiliza la parte imaginaria y se descarta la parte real. También se puede utilizar cualquier otra transformada que proporcione únicamente valores imaginarios. Un propósito del uso de una transformada pura de valor real o una transformada pura imaginaria es la complejidad de cálculo, debido a que, para cada uno de los valores espectrales, únicamente se tiene que procesar un único valor tal como magnitud o la parte real o, alternativamente, la fase o la parte imaginaria. A diferencia de una transformada totalmente compleja tal como una FFT, tendrían que procesarse dos valores, es decir, la parte real y la parte imaginaria para cada una de las líneas espectrales, lo cual es un aumento de la complejidad de cálculo por un factor de por lo menos 2. Otro motivo para utilizar una transformada de valor real en este punto es que dicha transformada generalmente se muestrea críticamente, y de este modo proporciona un dominio adecuado (y comúnmente usado) para la cuantificación de señales y codificación por entropía (el paradigma estándar de "codificación de audio perceptual" implementado en “MP3”, AAC o en sistemas de codificación de audio similares).
La Figura 5a ilustra adicionalmente el calculador residual 2034 como un sumador, que recibe la señal lateral en su entrada “más” y que recibe la salida de la señal de predicción mediante el predictor 2033 en su entrada “menos”. Adicionalmente, la Figura 5a ilustra la situación en la que la información de control del predictor se transmite desde el optimizador hasta el multiplexor 212, que emite un flujo de datos multiplexado que representa la señal de audio multicanal codificada. Particularmente, la operación de predicción se realiza de tal modo que la señal lateral se predice a partir de la señal central tal como se ilustra mediante las Ecuaciones a la derecha de la Figura 5a.
Preferentemente, la información de control del predictor 206 es un factor tal como se ilustra a la derecha en la Figura 3b. En un ejemplo en el que la información de control de predicción únicamente comprende una porción real tal como la parte real de una a de valor complejo o una magnitud de la a de valor complejo, en la que esta porción corresponde a un factor distinto de cero, se puede obtener una ganancia de codificación significativa cuando la señal central y la señal lateral son similares entre sí debido a su estructura de forma de onda, si bien tienen distintas amplitudes.
Sin embargo, cuando la información de control de predicción únicamente comprende una segunda porción, que puede ser la parte imaginaria de un factor de valor complejo o la información de fase del factor de valor complejo, en la que la parte imaginaria o la información de fase es distinta de cero, la presente invención logra una ganancia de codificación significativa para las señales que se desplazan por fase entre sí por un valor distinto de 0° o 180°, y que tienen, además del desplazamiento por fase, características de forma de onda similares y relaciones de amplitud similares.
Preferentemente, una información de control de predicción es de valor complejo. A continuación, se puede obtener una ganancia de codificación significativa para las señales que tienen distinta amplitud y que se desplazan por fase. En una situación en la que las transformadas de tiempo/frecuencia proporcionan espectros complejos, la operación 2034 sería una operación compleja en la que la parte real de la información de control del predictor se aplica a la parte real del espectro complejo M y la parte imaginaria de la información de predicción compleja se aplica a la parte imaginaria del espectro complejo. A continuación, en el sumador 2034, el resultado de esta operación de predicción es un espectro real previsible y un espectro imaginario previsible, y el espectro real previsible se sustraería del espectro real de la señal lateral S (en forma de banda), y el espectro imaginario previsible se sustraería de la parte imaginaria del espectro de S para obtener un espectro residual complejo D.
Las señales de dominio de tiempo L y R son señales de valor real, si bien las señales de dominio de frecuencia pueden ser de valor real o complejo. Cuando las señales de dominio de frecuencia son de valor real, entonces la transformada es una transformada de valor real. Cuando las señales de dominio de frecuencia son complejas, entonces la transformada es una transformada de valor complejo. Esto significa que la entrada a las transformadas de tiempo a frecuencia y la salida de las transformadas de frecuencia a tiempo son de valor real, mientras que las señales de dominio de frecuencia podrían ser, por ejemplo, señales de dominio QMF de valor complejo.
La Figura 5b ilustra un decodificador de audio correspondiente al codificador de audio ilustrado en la Figura 5a. Los elementos similares con respecto al decodificador de audio de la Figura 1 tienen números de referencia similares.
La salida del flujo de bits por el multiplexor del flujo de bits 212 en la Figura 5a se introduce en un demultiplexor del flujo de bits 102 en la Figura 5b. El demultiplexor del flujo de bits 102 demultiplexa el flujo de bits en la señal de mezcla descendente M y la señal residual D. La señal de mezcla descendente M se introduce en un decuantificador 110a. La señal residual D se introduce en un decuantificador 110b. Adicionalmente, el demultiplexor del flujo de bits 102 demultiplexa una información de control del predictor 108 desde el flujo de bits e introduce la misma en el predictor 1160. El predictor 1160 emite una señal lateral previsible a • M y el combinador 1161 combina la señal residual emitida por el decuantificador 110b con la señal lateral previsible para obtener finalmente la señal lateral reconstruida S. La señal a continuación se introduce en el combinador 1162, que realiza, por ejemplo, un procesamiento de suma/diferencia, tal como se ilustra en la Figura 4c con respecto a la codificación central/lateral. Particularmente, el bloque 1162 realiza una decodificación central/lateral (inversa) para obtener una representación de dominio de frecuencia del canal izquierdo y una representación de dominio de frecuencia del canal derecho. La representación del dominio de frecuencia se convierte a continuación en una representación del dominio de tiempo mediante los correspondientes convertidores de frecuencia/tiempo 52 y 53.
Dependiendo de la implementación del sistema, los convertidores de frecuencia/tiempo 52, 53 son convertidores de valor real de frecuencia/tiempo cuando la representación del dominio de frecuencia es una representación de valor real, o convertidores de frecuencia/tiempo de valor complejo cuando la representación del dominio de frecuencia es una representación de valor complejo.
Sin embargo, para aumentar la eficiencia se prefiere realizar una transformada de valor real tal como se ilustra en otra implementación en la Figura 6a para el codificador y en la Figura 6b para el decodificador. Las transformadas de valor real 50 y 51 están implementadas por una MDCT. Adicionalmente, la información de predicción se calcula como un valor complejo que tiene una parte real y una parte imaginaria. Debido a que ambos espectros M, S son espectros de valor real y ya que, por lo tanto, no existe ninguna parte imaginaria del espectro, se proporciona un convertidor real a imaginario 2070, que calcula un espectro imaginario estimado 600 a partir del el espectro de valor real de la señal M. Este transformador real a imaginario 2070 es una parte del optimizador 207, y el espectro imaginario 600 estimado por el bloque 2070 se introduce en la etapa del optimizador de a 2071 junto con el espectro real M para calcular la información de predicción 206, que ahora tiene un factor de valor real indicado en 2073 y un factor imaginario indicado en 2074. Ahora, de acuerdo con este ejemplo, el espectro de valor real de la primera señal de combinación M se multiplica por la parte real aR 2073 para obtener la señal de predicción, que a continuación se sustrae del espectro lateral de valor real. Adicionalmente, el espectro imaginario 600 se multiplica por la parte imaginaria aI ilustrada en 2074 para obtener la señal de predicción adicional, en donde esta señal de predicción a continuación se sustrae del espectro lateral de valor real tal como se indica en 2034b. A continuación, la señal residual de predicción D se cuantifica en el cuantificador 209b, mientras que el espectro de valor real de M se cuantifica/codifica en el bloque 209a. Adicionalmente, se prefiere cuantificar y codificar la información de predicción a en el cuantificador/codificador por entropía 2072 para obtener el valor de a complejo codificado, que se transmite al multiplexor del flujo de bits 212 de la Figura 5a, por ejemplo, y que se introduce finalmente en un flujo de bits como la información de predicción.
Con respecto a la posición del módulo de cuantificación/codificación (Q/C) 2072 para a, se aprecia que los multiplicadores 2073 y 2074 preferentemente usan exactamente la misma a (cuantificada) que también se utilizará en el decodificador. De este modo se podría mover 2072 directamente a la salida de 2071, o se podría considerar que la cuantificación de a ya se ha tenido en cuenta en el proceso de optimización en 2071.
Aunque se podría calcular un espectro complejo en el lado del codificador ya que toda la información está disponible, se prefiere realizar la transformada real a compleja en el bloque 2070 en el codificador de modo que se produzcan condiciones similares con respecto a un decodificador ilustrado en la Figura 6b. El decodificador recibe un espectro codificado de valor real de la primera señal de combinación y una representación espectral de valor real de la señal residual codificada. Adicionalmente, se obtiene una información de predicción compleja codificada en 108 y se realiza una decodificación por entropía y una decuantificación en el bloque 65 para obtener la parte real aR ilustrada en 1160b y la parte imaginaria aI ilustrada en 1160c. Las señales centrales emitidas por los elementos de ponderación 1160b y 1160c se añaden a la señal residual de predicción decodificada y decuantificada. Particularmente, los valores espectrales introducidos en el ponderador 1160c, en el que la parte imaginaria del factor de predicción compleja se utiliza como el factor de ponderación, se obtienen a partir del espectro de valor real M mediante el convertidor real a imaginario 1160a, que se implementa preferentemente del mismo modo que el bloque 2070 de la Figura 6a en relación con el lado del codificador. En el lado del decodificador no hay una representación de valor complejo de la señal central o de la señal lateral, que es al contrario que el lado del codificador. La razón es que únicamente los espectros de valor real codificados han sido transmitidos desde el codificador hasta el decodificador debido a las tasas de bits y por razones de complejidad.
El transformador real a imaginario 1160a o el bloque correspondiente 2070 de la Figura 6a se puede implementar tal como se publica en el documento WO 2004/013839 A1 o en el documento WO 2008/014853 A1 o en la Patente de Estados Unidos N.° 6.980.933. Alternativamente, se puede aplicar cualquier otra implementación conocida en la técnica, y una implementación preferida se describe en el contexto de las Figuras 10a, 10b.
Específicamente, tal como se ilustra en la Figura 10a, el convertidor real a imaginario 1160a comprende un selector de trama espectral 1000 conectado a un calculador del espectro imaginario 1001. El selector de trama espectral 1000 recibe una indicación de una trama actual i en la entrada 1002 y, dependiendo de la implementación, información de control en una entrada de control 1003. Cuando, por ejemplo, la indicación en la línea 1002 indica que se tiene que calcular un espectro imaginario para una trama actual i, y cuando la información de control 1003 indica que únicamente se tiene que utilizar la trama actual para dicho cálculo, entonces el selector de trama espectral 1000 únicamente selecciona la trama actual i y transmite esta información a el calculador de espectro imaginario. A continuación, el calculador de espectro imaginario únicamente usa las líneas espectrales de la trama actual i para realizar una combinación ponderada de las líneas ubicadas en la trama actual (bloque 1008), con respecto a la frecuencia, próxima a o alrededor de la línea espectral actual k, para la que se tiene que calcular una línea imaginaria tal como se ilustra en 1004 en la Figura 10b. Sin embargo, cuando el selector de trama espectral 1000 recibe una información de control 1003 que indica que la trama anterior i-1 y la trama siguiente i+1 se tienen que usar también para el cálculo del espectro imaginario, entonces el calculador de espectro imaginario adicionalmente recibe los valores provenientes de las tramas i-1 e i+1 y realiza una combinación ponderada de las líneas en las tramas correspondientes tal como se ilustra en 1005 para la trama i-1 y en 1006 para la trama i+1. Los resultados de las operaciones de ponderación se combinan mediante una combinación ponderada en el bloque 1007 para obtener finalmente una línea imaginaria k para la trama fi que se multiplica a continuación por la parte imaginaria de la información de predicción en el elemento 1160c para obtener la señal de predicción para esta línea, que a continuación se añade a la línea correspondiente de la señal central en el sumador 1161b para el decodificador. En el codificador se realiza la misma operación, si bien se realiza una sustracción en el elemento 2034b.
Debe apreciarse que la información de control 1003 puede indicar adicionalmente el uso de más tramas que las dos tramas circundantes o, por ejemplo, el uso de la trama actual y exactamente una o más tramas anteriores pero sin usar tramas “futuras” para reducir el retardo sistemático.
Adicionalmente, debe apreciarse que la combinación ponderada en etapas ilustrada en la Figura 10b, en la que, en una primera operación se combinan las líneas provenientes de una trama y posteriormente los resultados de dichas operaciones de combinación en tramas se combinan por sí mismos también se pueden realizar en el otro orden. El otro orden significa que, en una primera etapa, las líneas para la frecuencia actual k provenientes de un número de tramas adyacentes indicadas por la información de control 103 se combinan mediante una combinación ponderada. Esta combinación ponderada se realiza para las líneas k, k-1, k-2, k+1, k+2, etc., dependiendo del número de líneas adyacentes a utilizar para estimar la línea imaginaria. A continuación, los resultados de dichas combinaciones “en tiempo” se someten a una combinación ponderada en la “dirección de frecuencia” para obtener finalmente la línea imaginaria k para la trama fi. Los valores ponderados se fijan en un valor -1 y 1 preferentemente, y las ponderaciones se pueden implementar en una combinación directa de filtro FIR o IIR, que realiza una combinación lineal de líneas espectrales o de señales espectrales de distintas frecuencias y distintas tramas.
Como se indica en las Figuras 6a y 6b, el algoritmo de transformada preferido es el algoritmo de transformada de MDCT, que se aplica en la dirección hacia adelante en los elementos 50 y 51 en la Figura 6a y que se aplica en la dirección hacia detrás en los elementos 52, 53, a continuación de una operación de combinación en el combinador 1162 que opera in el dominio espectral.
La Figura 8a ilustra una implementación más detallada del bloque 50 o 51. Particularmente se introduce una secuencia de muestras de audio del dominio de tiempo en un sistema de ventanas de análisis 500, que realiza una operación de ventanas que utiliza una ventana de análisis y, particularmente, realiza esta operación en una trama mediante un modo de tramas pero usando un paso o solapamiento del 50 %. El resultado del sistema de ventanas de análisis, es decir, una secuencia de tramas de muestras divididas en ventanas, se introduce en un bloque de transformada de MDCT 501, que emite la secuencia de tramas de MDCT de valor real, en el que dichas tramas se afectan por el solapamiento. A modo de ejemplo, el sistema de ventanas de análisis aplica ventanas de análisis que tienen una longitud de 2048 muestras. A continuación, el bloque de transformada de MDCT 501 emite espectros de MDCT que tienen 1024 líneas espectrales reales o valores MDCT. Preferentemente, el sistema de ventanas de análisis 500 y/o el transformador de MDCT 501 se pueden controlar mediante un control de longitud de ventana o longitud de transformada 502 de modo que, por ejemplo, para las porciones transitorias en la señal, la longitud de ventana/longitud de transformada se reduce para obtener mejores resultados de codificación.
La Figura 8b ilustra la operación de MDCT inversa realizada en los bloques 52 y 53. A modo de ejemplo, el bloque 52 comprende un bloque 520 para realizar una transformada de MDCT inversa de trama por trama. Cuando, por ejemplo, una trama de valores MDCT tiene 1024 valores, entonces la salida de esta transformada inversa de MDCT tiene 2048 muestras de tiempo afectadas por el solapamiento. Dicha trama se suministra a un sistema de ventanas de síntesis 521, que aplica una ventana de síntesis a esta trama de 2048 muestras. La trama dividida en ventanas a continuación se reenvía a un procesador de solapar/añadir 522, que, a modo de ejemplo, aplica un 50 % de solapamiento entre dos tramas subsiguientes y, a continuación, realiza una adición de muestra por muestra de modo que un bloque de 2048 muestras finalmente logra 1024 muestras nuevas de la señal de salida libre de solapamiento. Nuevamente se prefiere aplicar un control de longitud de ventana/transformada utilizando información, que por ejemplo se transmite en la información secundaria de la señal multicanal codificada según lo indicado en 523.
Los valores de predicción de a se podrían calcular para cada una de las líneas espectrales individuales de un espectro de MDCT. Sin embargo, se ha descubierto que esto no es necesario y que se puede ahorrar una cantidad significativa de información secundaria realizando un cálculo de bandas de la información de predicción. En otros términos, un convertidor espectral 50 ilustrado en la Figura 9, que es por ejemplo un procesador de MDCT descrito en el contexto de la Figura 8a, proporciona un espectro de resolución de alta frecuencia que tiene determinadas líneas espectrales ilustradas en la Figura 9b. Este espectro de resolución de alta frecuencia se usa por un selector de línea espectral 90 que proporciona un espectro de resolución de baja frecuencia, que comprende ciertas bandas B1, B2, B3, ... , BN. Este espectro de resolución de baja frecuencia se reenvía al optimizador 207 para calcular la información de predicción de modo que no se calcula una información de predicción para cada línea espectral, sino que únicamente para cada banda. Para tal fin, el optimizador 207 recibe las líneas espectrales por banda y calcula la operación de optimización basándose en la presunción de que se utiliza el mismo valor a para todas las líneas espectrales en la banda.
Preferentemente, las bandas se conforman en una forma psicoacústica de modo que el ancho de banda de las bandas aumenta desde frecuencias inferiores hasta frecuencias superiores tal como se ilustra en la Figura 9b. Alternativamente, aunque no se prefiere tanto como la implementación de ancho de banda en aumento también se podrían utilizar bandas de frecuencia de igual tamaño, en la que cada banda de frecuencia tiene por lo menos dos o típicamente muchas más, tal como por lo menos 30 líneas de frecuencia. Típicamente, para un espectro de 1024 líneas espectrales se calculan menos de 30 valores de a complejos, y preferentemente, más de 5 valores de a. Para los espectros con menos de 1024 líneas espectrales (por ejemplo, 128 líneas), preferentemente, se usan menos bandas de frecuencia (por ejemplo, 6) para a.
Para calcular los valores de a no se requiere necesariamente el espectro de MDCT de alta resolución. Alternativamente también se puede utilizar un banco de filtros que tiene una resolución de frecuencia similar a la resolución necesaria para calcular los valores de a. Cuando se tienen que implementar bandas que aumentan de frecuencia, en ese caso dicho banco de filtros debería tener un ancho de banda variable. Sin embargo, cuando es suficiente un ancho de banda constante de frecuencias bajas a altas, entonces se puede utilizar un banco de filtros tradicional con sub-bandas de ancho equivalente.
Dependiendo de la implementación, el signo del valor de a indicado en la Figura 3b o 4b se puede invertir. Sin embargo, para ser coherentes, es necesario que dicha reversión del signo se use en el lado del codificador así como también en el lado del decodificador. En comparación con la Figura 6a, la Figura 5a ilustra una vista generalizada del codificador, en la que el elemento 2033 es un predictor que se controla por la información de control del predictor 206, que se determina en el elemento 207 y que se incorpora como información secundaria en el flujo de bits. En lugar de la MDCT utilizada en la Figura 6a en los bloques 50, 51 se utiliza una transformada generalizada de tiempo/frecuencia en la Figura 5a como se describe. Según se indicó anteriormente, la Figura 6a es el proceso del codificador, que corresponde al proceso del decodificador en la Figura 6b, en la que L representa la señal de canal izquierdo, R representa la señal de canal derecho, M representa la señal central o la señal de mezcla descendente, S representa la señal lateral y D representa la señal residual. Alternativamente, L también se conoce como la señal de primer canal 201, R también se conoce como la señal de segundo canal 202, M también se conoce como la primera señal de combinación 204 y S también se conoce como la segunda señal de combinación 2032.
Preferentemente, los módulos 2070 en el codificador y 1160a en el decodificador deberían coincidir exactamente para asegurar una correcta codificación de forma de onda. Esto se aplica preferentemente al caso en que dichos módulos utilizan alguna forma de aproximación tal como filtros truncados o cuando se utiliza únicamente uno o dos en lugar de las tres tramas de MDCt , es decir, la trama de MDCT actual en la línea 60, la trama de MDCT anterior en la línea 61 y la trama de MDCT siguiente en la línea 62.
Adicionalmente, se prefiere que el módulo 2070 en el codificador en la Figura 6a use el espectro de MDCT no cuantificado M como entrada, aunque el módulo real a imaginario (R21) 1160a en el decodificador tiene únicamente el espectro de MDCT cuantificado disponible como entrada. Alternativamente se puede utilizar también una implementación en que el codificador utiliza los coeficientes de MDCT cuantificados como entrada en el módulo 2070. Sin embargo, el uso del espectro de MDCT no cuantificado como entrada en el módulo 2070 es el método preferido desde un punto de vista perceptual.
Posteriormente, se describen en más detalle diversos aspectos.
La codificación de estéreo paramétrico estándar se basa en la capacidad del dominio de QMF (híbrido) complejo sobremuestreado para permitir un procesamiento de señales perceptualmente motivado con variación de tiempo y frecuencia sin introducir distorsiones de solapamiento. Sin embargo, en el caso de la codificación de mezcla descendente/residual (como se utiliza para las altas tasas de bits consideradas en este punto), el codificador de estéreo unificado resultante actúa como un codificador de forma de onda. Esto permite la operación en un dominio críticamente muestreado, tal como el dominio de MDCT, ya que el paradigma de codificación de forma de onda asegura que la propiedad de cancelación de solapamiento de la cadena de procesamiento de MDCT-IMDCT se conserva suficientemente bien.
Sin embargo, para poder aprovechar la eficiencia de codificación mejorada que se puede lograr en el caso de señales estéreo con diferencias de tiempo o fase entre canales por medio de un coeficiente de predicción de valor complejo a, se requiere una representación de valor complejo de dominio de frecuencia de la señal de mezcla descendente DMX como entrada en la matriz de mezcla ascendente de valor complejo. Esto se puede obtener utilizando una transformada de MDST además de la transformada de MDCT para la señal DMX. El espectro de MDST se puede calcular (de forma exacta o como una aproximación) a partir del espectro de MDCT.
Asimismo, la parametrización de la matriz de mezcla ascendente se puede simplificar transmitiendo el coeficiente de predicción compleja a en lugar de los parámetros MPS. De este modo se transmiten únicamente dos parámetros (parte real e imaginaria de a) en lugar de tres (ICC, CLD e IPD). Esto resulta posible debido a la redundancia en la parametrización de MPS en el caso de la codificación de mezcla descendente/residual. La parametrización de MPS incluye información acerca de la cantidad relativa de decorrelación a añadir en el decodificador (es decir, la relación de energía entre las señales RES y DMX), y esta información es redundante cuando se transmiten las señales reales DMX y RES.
Debido a la misma razón, el factor de ganancia g, ilustrado en la matriz de mezcla ascendente anterior, está obsoleto en el caso de la codificación de mezcla descendente/residual. Por lo tanto, la matriz de mezcla ascendente para la codificación de mezcla descendente/residual con predicción compleja es ahora:
Figure imgf000012_0001
En comparación con la Ecuación 1169 en la Figura 4b, el signo de alfa está invertido en esta ecuación, y DMX=M y RES=D. Esta es, por lo tanto, una implementación/notación alternativa con respecto a la Figura 4b.
Existen dos opciones para calcular la señal residual de predicción en el codificador. Una opción consiste en utilizar los valores espectrales de MDCT cuantificados de la mezcla descendente. Esto resultaría en la misma distribución de error de cuantificación que en la codificación M/S ya que el codificador y el decodificador utilizan los mismos valores para generar la predicción. La otra opción es usar los valores espectrales de MDCT no cuantificados. Esto implica que el codificador y el decodificador no usarán los mismos datos para generar la predicción, lo que permite la redistribución espacial del error de codificación de acuerdo con las propiedades de enmascaramiento instantáneo de la señal a expensas de una ganancia de codificación un tanto reducida.
Es preferible calcular el espectro de MDST directamente en el dominio de frecuencia por medio del filtrado bidimensional de FIR de tres tramas de MDCT adyacentes como se ha analizado. Los últimos se pueden considerar como una transformada "real a imaginaria” (R2I). La complejidad del cálculo de frecuencia-dominio de la MDST se puede reducir de diversas formas, lo que significa que se calcula únicamente una aproximación del espectro de MDST:
• Limitando el número de derivaciones de filtro FIR.
• Estimando la MDST a partir de la trama de MDCT actual únicamente.
• Estimando la MDST a partir de la trama de MDCT anterior y actual.
Siempre que se utilice la misma aproximación en el codificador y en el decodificador, las propiedades de codificación de forma de onda no resultarán afectadas. Tales aproximaciones del espectro de MDST, sin embargo, pueden conducir a una reducción en la ganancia de codificación lograda por la predicción compleja.
Si el codificador de MDCT subyacente soporta la conmutación de forma de ventana, los coeficientes del filtro bidimensional FIR utilizados para calcular el espectro de MDST tienen que adaptarse a las formas de ventana reales. Los coeficientes de filtros aplicados al espectro de MDCT de la trama actual dependen de la ventana completa, es decir, se requiere un conjunto de coeficientes para cada tipo de ventana y para cada transición de ventana. Los coeficientes de filtros aplicados al espectro de MDCT de la trama anterior/siguiente dependen únicamente en la ventana que solana la mitad con la trama actual, es decir, para éstos es necesario un conjunto de coeficientes únicamente para cada tipo de ventana (sin coeficientes adicionales para las transiciones).
Si el codificador de MDCT subyacente utiliza una conmutación de longitud de transformada, incluyendo la trama de MDCT anterior y/o siguiente en la aproximación, se vuelve más complicado alrededor de las transiciones entre las distintas longitudes de transformadas. En este caso, debido al distinto número de coeficientes de MDCT en la trama actual y anterior/siguiente, el filtrado bidimensional es más complicado. Para evitar la creciente complejidad de cálculo y estructural, la trama anterior/siguiente se puede excluir del filtrado en las transiciones de longitud de transformada, a expensas de una menor exactitud de la aproximación para las tramas respectivas.
Además, se debe tener especial cuidado con las partes más bajas y más altas del espectro de MDST (próximas a DC y fs/2), en las que hay menos coeficientes de MDCT circundantes para el filtrado de FIR que los necesarios. En este punto, el proceso de filtrado necesita adaptarse para calcular el espectro de MDST correctamente. Esto se puede realizar o bien usando una extensión simétrica del espectro de MDCT para los coeficientes que faltan (de acuerdo con la periodicidad de los espectros de señales discretas de tiempo), o bien adaptando los coeficientes de filtro en consecuencia. Por supuesto, el tratamiento de dichos casos especiales se puede simplificar a expensas de una menor precisión en la vecindad de los límites del espectro de MDST.
Calcular el espectro de MDST exacto a partir de los espectros de MDCT transmitidos en el decodificador aumenta el retardo del decodificador por una trama (es este punto se suponen que son 1024 muestras).
El retardo adicional se puede evitar usando una aproximación del espectro de MDST que no requiere el espectro de MDCT de la siguiente trama como entrada.
La siguiente lista de elementos resume las ventajas de la codificación estéreo unificada basada en MDCT sobre la codificación estéreo unificada basada en QMF:
• Únicamente un pequeño aumento en la complejidad de cálculo (cuando no se utiliza SBR).
• Escala hasta una reconstrucción perfecta si los espectros de MDCT no se cuantifican. Debe apreciarse que este no es el caso para la codificación estéreo unificada basada en QMF.
• Extensión natural de la codificación M/S e intensidad de la codificación estéreo.
• Arquitectura más limpia que simplifica la sintonización del codificador, ya que el procesamiento de la señal estéreo y la cuantificación/codificación se pueden acoplar fuertemente. Debe apreciarse que en la codificación estéreo unificada basada en QMF, las tramas envolventes de MPEG y las tramas de MDCT no están alineadas y dichas bandas de factor de escala no coinciden con las bandas del parámetro.
• Codificación eficiente de parámetros de estéreo, ya que únicamente se tienen que transmitir dos parámetros (a complejo) en lugar de tres parámetros como en el envolvente de MPEG (ICC, CLD, IPD).
• Sin retardo de decodificador adicional si el espectro de MDST se calcula como una aproximación (sin usar la siguiente trama).
Las propiedades importantes de una implementación se pueden resumir como se indica a continuación:
a) Los espectros de MDST se calculan por medio del filtrado bidimensional de FIR a partir de los espectros de MDCT actuales, anteriores y siguientes. Son posibles distintas compensaciones de complejidad/calidad para el cálculo de MDST (aproximación) reduciendo el número de derivaciones de filtro FIR y/o el número de tramas de MDCT utilizadas. En particular, si una trama adyacente no está disponible debido a la pérdida de trama durante la transmisión o la conmutación de longitud de transformada, esa trama particular se excluye del valor estimado de MDST. Para el caso de la conmutación de longitud de transformada, la exclusión se señaliza en el flujo de bits.
b) Únicamente dos parámetros, la parte real e imaginaria del coeficiente de predicción compleja a, se transmiten en lugar de ICC, CLD, e IPD. Las partes reales e imaginarias de a se tratan en forma independiente, se limitan al intervalo [-3,0, 3,0] y se cuantifican con un tamaño de paso de 0,1. Si un determinado parámetro (parte real o imaginaria de a) no se utiliza en una determinada trama, esto se señaliza en el flujo de bits, y el parámetro irrelevante no se transmite. Los parámetros se codifican de forma diferencial al tiempo o de forma diferencial a la frecuencia y finalmente se aplica la codificación de Huffman usando el libro de códigos de factor de escala. Los coeficientes de predicción se actualizan cada segunda banda de factor de escala, lo que resulta en una resolución de frecuencia similar a la de envolvente de MPEG. Este esquema de cuantificación y codificación resulta en una tasa promedio de bits de aproximadamente 2 kb/s para la información secundaria estéreo dentro de una configuración típica que tiene un objetivo de tasa de bits de 96 kb/s.
Los detalles preferidos, adicionales o alternativos de la implementación comprenden:
c) Para cada uno de los dos parámetros de a se puede elegir una codificación no diferencial (PCM) o diferencial (DPCM) en una base por trama o por flujo, señalizada por un bit correspondiente en el flujo de bits. Para una codificación DPCM es posible o bien una codificación diferencial de tiempo o bien de frecuencia. Nuevamente, esto se puede señalar utilizando una bandera de un bit.
d) En lugar de reutilizar un libro de códigos predefinido tal como el código de factor de escala AAC también se puede usar un código especializado no variable o libro de códigos adaptativo de señales para codificar los valores del parámetro a, o se puede volver a los códigos de longitud fija (por ejemplo, de 4 bits) sin signo o palabras de código de complementos de dos.
e) El intervalo de los valores del parámetro a así como también el tamaño del paso de cuantificación de parámetros se pueden elegir arbitrariamente y optimizar a las características de señales en cuestión.
f) El número y ancho espectral y/o temporal de las bandas de parámetro activo a se pueden elegir arbitrariamente y optimizar a las características de señales dadas. En particular, la configuración de banda se puede señalizar en una base por trama o por flujo.
g) Además de o en lugar de los mecanismos indicados en a), anteriormente, se puede señalar explícitamente por medio de un bit por trama en el flujo de bits que únicamente se usa el espectro de MDCT de la trama actual para calcular la aproximación del espectro de MDST, es decir, que las tramas de MDCT adyacentes no se tienen en cuenta.
Realizaciones se refieren a un sistema inventivo para la codificación estéreo unificada en el dominio de MDCT. Esto permite utilizar las ventajas de la codificación estéreo unificada en el sistema de USAC del MPEG incluso a tasas de bits más altas (en las que no se utiliza SBR) sin el aumento significativo en la complejidad de cálculo que ocurriría con un método basado en QMF.
Las dos listas siguientes resumen los aspectos preferidos de la configuración descritos anteriormente, que se pueden utilizar alternativamente entre sí o además de otros aspectos:
la) concepto general: predicción compleja de MDCT lateral a partir de MDCT y MDST centrales;
lb) calcular/estimar la MDST a partir de MDCT (“R2I”) en el dominio de frecuencia utilizando 1 o más tramas (3 tramas introducen retardo);
lc) truncado del filtro (incluso descendiendo hasta 1-trama 2-derivaciones, es decir, [-1 0 1]) para reducir la complejidad de cálculo;
ld) tratamiento adecuado de DC y fs/2;
le) tratamiento adecuado de conmutación de forma de ventana;
lf) no usar una trama anterior/siguiente si tiene un tamaño de transformada diferente;
lg) predicción basada en coeficientes de MDCT no cuantificados o cuantificados en el codificador;
2a) cuantificar y codificar la parte real e imaginaria del coeficiente de predicción compleja directamente (es decir, sin parametrización envolvente de MPEG);
2b) usar cuantificador uniforme para esto (tamaño de paso, por ejemplo, 0,1);
2c) utilizar una resolución de frecuencia adecuada para los coeficientes de predicción (por ejemplo, 1 coeficiente por 2 Bandas de Factor de Escala);
2d) señalización económica en el caso de que todos los coeficientes de predicción sean reales;
2e) bit explícito por trama para forzar la operación de R2I de 1 trama.
En un ejemplo, el codificador comprende adicionalmente: un convertidor espectral (50, 51) para convertir una representación del dominio de tiempo de las dos señales de canal en una representación espectral de las dos señales de canal que tienen señales de subbandas para las dos señales de canal, en el que el combinador (2031), el predictor (2033) y el calculador de la señal residual (2034) se configuran para procesar cada subbanda por separado de modo que la primera señal combinada y la señal residual se obtienen para una pluralidad de subbandas, en el que la interfaz de salida (212) se configura para combinar la primera señal combinada codificada y la señal residual codificada para la pluralidad de subbandas.
Aunque algunos aspectos se han descrito en el contexto de un aparato, queda claro que dichos aspectos también representan una descripción del método correspondiente, en el que un bloque o dispositivo corresponde a una etapa del método o a una característica de una etapa del método. De forma análoga, los aspectos descritos en el contexto de una etapa del método también representan una descripción de un bloque o elemento o característica correspondiente de un correspondiente aparato.
En una realización de la presente invención se aplica un tratamiento apropiado de conmutación de forma de ventana. Cuando se considera la Figura 10a una información de forma de ventana 109 se puede introducir en el calculador del espectro imaginario 1001. Específicamente, el calculador del espectro imaginario, que realiza la conversión real a imaginaria del espectro de valor real tal como el espectro de MDCT (tal como el elemento 2070 en la Figura 6a o el elemento 1160a en la Figura 6b) se puede implementar como un filtro FIR o IIR. Los coeficientes FIR o IIR en este módulo real a imaginario 1001 dependen de la forma de ventana de la mitad izquierda y de la mitad derecha de la trama actual. Esta forma de ventana puede ser diferente para una ventana de seno o una ventana KBD (Derivada de Kaiser Bessel) y sujeta a la configuración de secuencia de ventana dada puede ser una ventana larga, una ventana de inicio, una ventana de parada y una ventana de parada-inicio o una ventana corta. El módulo real a imaginario puede comprender un filtro bidimensional FIR, en el que una dimensión es la dimensión de tiempo en la que dos tramas de MDCT subsiguientes se introducen en el filtro FIR y la segunda dimensión es la dimensión de frecuencia, en la que se introducen los coeficientes de frecuencia de una trama.
La tabla posterior proporciona distintos coeficientes de filtro MDST para una secuencia de ventana actual para distintas formas de ventana y distintas implementaciones de la mitad izquierda y la mitad derecha de la ventana.
T l A - P r m r Fil r MD T r l V n n A l
Figure imgf000015_0001
Adicionalmente, la información de forma de ventana 109 proporciona información de la forma de ventana para la ventana anterior, cuando se usa la ventana anterior para calcular el espectro de MDST a partir del espectro de MDCT. En la tabla posterior se proporcionan los coeficientes de filtro MDST correspondientes para la ventana anterior.
T l B - P r m r Fil r MD T r l V n n An ri r
Figure imgf000015_0002
Por lo tanto, dependiendo de la información de la forma de ventana 109, el calculador del espectro imaginario 1001 en la Figura 10a se adapta aplicando diferentes conjuntos de coeficientes de filtro.
La información de la forma de ventana, que se utiliza en el lado del decodificador se calcula en el lado del codificador y se transmite como información secundaria junto con la señal de salida del codificador. En el lado del decodificador, la información de la forma de ventana 109 se extrae del flujo de bits mediante el demultiplexor del flujo de bits (por ejemplo 102 en la Figura 5b) y se proporciona a el calculador del espectro imaginario 1001 como se ilustra en la Figura 10a.
Cuando la información de la forma de ventana 109 señaliza que la trama anterior tenía un tamaño de transformada diferente, entonces se prefiere que la trama anterior no se use para calcular el espectro imaginario a partir del espectro de valor real. Lo mismo es cierto cuando al interpretar la información de la forma de ventana 109 se descubre que la trama siguiente tiene un tamaño de transformada diferente. A continuación, la trama siguiente no se usa para calcular el espectro imaginario a partir del espectro de valor real. En dicho caso cuando, por ejemplo, la trama anterior tenía un tamaño de transformada diferente que la trama actual y cuando la trama siguiente nuevamente tiene un tamaño de transformada diferente en comparación con la trama actual, entonces únicamente la trama actual, es decir, los valores espectrales de la ventana actual se usan para estimar el espectro imaginario.
La predicción en el codificador se basa en los coeficientes de frecuencia no cuantificados o cuantificados tales como los coeficientes de MDCT. Cuando, por ejemplo, la predicción ilustrada por el elemento 2033 en la Figura 3a, se basa en datos no cuantificados, entonces el calculador residual 2034 también opera preferentemente en datos no cuantificados y la señal residual de salida del calculador, es decir, la señal residual 205 se cuantifica antes de ser codificada por entropía y transmitida a un decodificador. Sin embargo, en una realización alternativa se prefiere que la predicción se base en coeficientes de MDCT cuantificados. A continuación, la cuantificación puede ocurrir antes del combinador 2031 en la Figura 3a de modo que un primer canal cuantificado y un segundo canal cuantificado son la base para calcular la señal residual. Alternativamente, la cuantificación también puede ocurrir a continuación del combinador 2031 de modo que la primera señal de combinación y la segunda señal de combinación se calculan en una forma no cuantificada y se cuantifiquen antes de que se calcule la señal residual. De nuevo, como alternativa, el predictor 2033 puede operar en el dominio no cuantificado y la señal de predicción 2035 se cuantifica antes de introducirse en el calculador residual. A continuación, es útil que la segunda señal de combinación 2032, que también se introduce en el calculador residual 2034, también se cuantifique antes de que el calculador residual calcule la señal residual 1070 en la Figura 6a, que se puede implementar dentro del predictor 2033 en la Figura 3a, opere en los mismos datos cuantificados que están disponibles en el lado del decodificador. A continuación se puede asegurar que el espectro de MDST estimado en el codificador para realizar el cálculo de la señal residual sea exactamente el mismo que el espectro de MDST en el lado del decodificador utilizado para realizar la predicción inversa, es decir, para calcular la señal lateral desde la señal residual. Para tal fin, la primera señal de combinación tal como la señal M en la línea 204 en la Figura 6a se cuantifica antes de introducirse en el bloque 2070. A continuación, el espectro de MDST calculado utilizando el espectro de MDCT cuantificado de la trama actual, y dependiendo de la información de control, el espectro de MDCt cuantificado de la trama anterior o siguiente, se introduce en el multiplicador 2074, y la salida del multiplicador 2074 de la Figura 6a nuevamente será un espectro no cuantificado. Este espectro no cuantificado se sustraerá del espectro introducido en el sumador 2034b y finalmente se cuantificará en el cuantificador 209b.
En un ejemplo, la parte real y la parte imaginaria del coeficiente de predicción compleja por banda de predicción se cuantifican y codifican directamente, es decir, por ejemplo, sin la parametrización envolvente MPEG. La cuantificación se puede realizar utilizando un cuantificador uniforme con un tamaño de paso, por ejemplo, de 0,1. Esto significa que no se aplica ningún tamaño de paso de cuantificación logarítmica o similar, sino que se aplica cualquier tamaño de paso lineal. En una implementación, el intervalo de valores para la parte real y la parte imaginaria del coeficiente de predicción compleja tiene un intervalo desde -3 a 3, lo que significa que se utilizan 60 o, dependiendo de los detalles de implementación, 61 pasos de cuantificación para la parte real y la parte imaginaria del coeficiente de predicción compleja.
Preferentemente, la parte real aplicada en el multiplicador 2073 en la Figura 6a y la parte imaginaria 2074 aplicada en la Figura 6a se cuantifican antes de aplicarse de modo que, nuevamente, se utiliza el mismo valor para la predicción en el lado del codificador así como se utiliza en el lado del decodificador. Esto garantiza que la señal residual de predicción cubre - además del error de cuantificación introducido - cualquier error que pudiera producirse cuando se aplica un coeficiente de predicción no cuantificado en el lado del codificador mientras se aplica un coeficiente de predicción cuantificado en el lado del decodificador. Preferentemente, la cuantificación se aplica de modo que - tanto como sea posible - la misma situación y las mismas señales estén disponibles en el lado del codificador y en el lado del decodificador. Po lo tanto, se prefiere cuantificar la entrada en el calculador real a imaginaria 2070 utilizando la misma cuantificación aplicada en el cuantificador 209a. Adicionalmente se prefiere cuantificar la parte real y la parte imaginaria del coeficiente de predicción de a para realizar las multiplicaciones en el artículo 2073 y en el artículo 2074. La cuantificación es la misma que se aplica en el cuantificador 2072. Adicionalmente, la señal lateral emitida por el bloque 2031 en la Figura 6a también se puede cuantificar antes de los sumadores 2034a y 2034b. Sin embargo, no es problemático que el cuantificador 209b realice la cuantificación posteriormente a la adición, en el que la adición por dichos sumadores se aplica con una señal lateral no cuantificada.
En un ejemplo adicional de la divulgación, se aplica una señalización económica en caso de que todos los coeficientes de predicción sean reales. Puede ocurrir que todos los coeficientes de predicción para una cierta trama , es decir, para la misma porción de tiempo de la señal de audio se calculen como reales. Dicha situación puede producirse cuando la señal central completa y la señal lateral completa no se desplazan por fase entre sí o están un poco desplazadas por fase. Para ahorrar bits, esto se indica mediante un único indicador real. A continuación, no es necesario señalizar la parte imaginaria del coeficiente de predicción en el flujo de bits con un libro de códigos que representa un valor cero. En el lado del decodificador, la interfaz del decodificador del flujo de bits, tal como un demultiplexor del flujo de bits, interpretará este indicador real y a continuación no buscará palabras clave para una parte imaginaria pero supondrá que todos los bits están en la sección correspondiente del flujo de bits como bits para coeficientes de predicción de valor real. Además, cuando el predictor 2033 recibe una indicación de que todas las partes imaginarias de los coeficientes de predicción en la trama son cero, no necesitará calcular un espectro de MDST, o en general un espectro imaginario a partir del espectro de MDCT de valor real. Por lo tanto, el elemento 1160a en el decodificador de la Figura 6b se desactivará y la predicción inversa únicamente tendrá lugar usando el coeficiente de predicción de valor real aplicado en el multiplicador 1160b en la Figura 6b. Lo mismo es cierto para el lado del codificador en el que el elemento 2070 se desactivará y la predicción únicamente tendrá lugar utilizando el multiplicador 2073. Esta información secundaria se usa preferentemente como un bit adicional por trama y el decodificador leerá este bit, trama por trama, para decidir si el convertidor real a imaginario 1160a estará activo para una trama o no. Por lo tanto, proporcionar esta información resulta en un tamaño reducido del flujo de bits debido a la señalización más eficiente de todas las partes imaginarias del coeficiente de predicción que son cero para una trama y, adicionalmente, proporciona menos complejidad para el decodificador para dicha trama logrando inmediatamente un menor consumo de batería de dicho procesador implementado, por ejemplo, en un dispositivo móvil alimentado por batería.
La predicción compleja estéreo de acuerdo con las realizaciones preferidas de la presente invención es una herramienta para la codificación eficiente de pares de canales con diferencias de nivel y/o fase entre los canales. Usar un parámetro de valor complejo a, los canales izquierdo y derecho se reconstruyen por medio de la matriz siguiente. dimí indica la MDST correspondiente a la MDCT de los canales de mezcla descendente dmxRe.
Figure imgf000017_0001
La ecuación anterior es otra representación, que se divide con respecto a la parte real y a la parte imaginaria de a y representa la ecuación para una operación combinada de predicción/combinación, en la que la señal previsible S no se calcula necesariamente.
Los siguientes elementos de datos se usan preferentemente para esta herramienta:
cplx_pred_all 0: algunas bandas utilizan la codificación L/R, señalizada por cplx_pred_used[]
1: todas las bandas usan la predicción compleja estéreo
cplx_pred_used[g][sfb] Una bandera de un bit por grupo de ventanas g y banda de factor de escala sfb (después del correlación a partir de las bandas de predicción) que indica que
0: no se utiliza la predicción compleja, se utiliza la codificación L/R
1: se utiliza la predicción compleja
complex_coef 0: aIm = 0 para todas las bandas de predicción
1: a ^ se transmite para todas las bandas de predicción
use_prev_frame 0: usar únicamente la trama actual para la estimación de MDST
1: usar la trama actual y anterior para la estimación de MDST
delta_code_time 0: codificación diferencial de frecuencia de los coeficientes de predicción
1: codificación diferencial de tiempo de los coeficientes de predicción hcod_alpha_q_re Código de Huffman de aRe
hcod_alpha_q_im Código de Huffman de a ^
Estos elementos de datos se calculan en un codificador y se introducen en la información secundaria de una señal de audio multicanal o estéreo. Los elementos se extraen de la información secundaria en el lado del decodificador por medio de un extractor de información secundaria y se usan para controlar el calculador del decodificador para realizar una acción correspondiente.
La predicción compleja estéreo requiere el espectro de MDCT de mezcla descendente del par de canales actuales y, en el caso de complex_coef == 1, un valor estimado del espectro de MDST de mezcla descendente del par de canales actuales, es decir, la contraparte imaginaria del espectro de MDCT. El valor estimado de la MDST de mezcla descendente se calcula desde la MDCT de mezcla descendente de la trama actual y, en el caso de use_prev_frame == 1, la MDCT de mezcla descendente de la trama anterior. La MDCT de mezcla descendente de la trama anterior del grupo de ventanas g y del grupo de ventanas b se obtiene a partir de los espectros izquierdo y derecho reconstruidos de dicha trama.
En el cálculo de la estimada de la MDST de mezcla descendente se usa la longitud de transformada de MDCT de valor uniforme, que depende de la secuencia de ventanas, así como también de filter_coefs y filter_coefs_prev, que son matrices que contienen los núcleos de filtro y que se obtienen de acuerdo con las tablas anteriores.
Para todos los coeficientes de predicción, la diferencia de un valor anterior (en tiempo o frecuencia) se codifica utilizando un libro de códigos de Huffman. Los coeficientes de predicción no se transmiten para las bandas de predicción para las que se utilizó cplx_pred_used = 0.
Los coeficientes de predicción inversa cuantificados alpha re y alpha im se proporcionan mediante
alpha_re = alpha_q_re*0,1
alpha_im = alpha_q_im*0,1
Dependiendo de ciertos requisitos para la implementación, las realizaciones de la invención se pueden implementar en hardware o en software. La implementación se puede realizar usando un medio de almacenamiento digital, por ejemplo un disco flexible, un Dv D, un CD, una ROM, una PROM, una EPROM, una EEPROM o una memoria FLASH, que tiene señales de control legibles electrónicamente almacenadas en el mismo, que cooperan (o son capaces de cooperar) con un sistema informático programable de modo que el respectivo método se realiza.
Algunas realizaciones de acuerdo con la invención comprenden una portadora de datos no transitoria o tangible que tiene señales de control legibles electrónicamente, que son capaces de cooperar con un sistema informático programable, de modo que uno de los métodos descritos en este documento se realiza.
En general, las realizaciones de la presente invención se pueden implementar como un producto de programa informático con un código de programa, siendo el código de programa operativo para realizar uno de los métodos cuando el producto de programa informático se ejecuta en un ordenador. El código de programa se puede almacenar, por ejemplo, en una portadora legible por máquina.
Otras realizaciones comprenden el programa informático para realizar uno de los métodos descritos en este documento, almacenados en una portadora legible por máquina.
En otras palabras, una realización del método inventivo es, por lo tanto, un programa informático que tiene un código de programa para realizar uno de los métodos descritos en este documento, cuando el programa informático se ejecuta en un ordenador.
Una realización adicional de los métodos inventivos es, por lo tanto, una portadora de datos (o un medio de almacenamiento digital o un medio legible por ordenador) que comprende, grabado en el mismo, el programa informático para realizar uno de los métodos descritos en este documento.
Una realización adicional del método inventivo es, por lo tanto, un flujo de datos o una secuencia de señales que representa el programa informático para realizar uno de los métodos descritos en este documento. El flujo de datos o la secuencia de señales pueden configurarse, por ejemplo, para ser transferidas a través de una conexión de comunicación de datos, por ejemplo, a través de Internet.
Una realización adicional comprende un medio de procesamiento, por ejemplo, un ordenador, o un dispositivo lógico programable, configurado o adaptado para realizar uno de los métodos descritos en este documento.
Una realización adicional comprende un ordenador que tiene instalado en el mismo el programa informático para realizar uno de los métodos descritos en este documento.
En algunas realizaciones se puede usar un dispositivo lógico programable (por ejemplo un campo de matrices de puertas programables) para realizar algunas o todas las funcionalidades de los métodos descritos en este documento. En algunas realizaciones, un campo de matrices de puertas programables puede cooperar con un microprocesador para realizar uno de los métodos descritos en este documento. En general, los métodos se realizan preferentemente por cualquier aparato de hardware.
Las realizaciones descritas anteriormente son meramente ilustrativas de los principios de la presente invención. Se entiende que las modificaciones y variaciones de las disposiciones y detalles descritos en este documento resultarán evidentes para los expertos en la técnica. Por consiguiente, la invención únicamente está limitada por el alcance de las siguientes reivindicaciones de la patente y no por los detalles específicos presentados a modo de descripción y explicación de las realizaciones en este documento.

Claims (13)

REIVINDICACIONES
1. Decodificador de voz y audio unificado de MPEG para decodificar una señal de audio estéreo codificada (100), comprendiendo la señal de audio estéreo codificada una señal de mezcla descendente codificada generada basándose en una regla de combinación para combinar una señal de audio de primer canal y una señal de audio de segundo canal de una señal de audio estéreo, una señal residual de predicción codificada e información de predicción, que comprende:
un decuantificador (110; 110a, 110b) para decuantificar la señal de mezcla descendente codificada (104) para obtener una señal de mezcla descendente decodificada (112, M) y para decuantificar la señal residual codificada (106) para obtener una señal residual decodificada (114, D); y
un calculador de decodificador (116) para calcular una señal estéreo decodificada que tiene una señal de primer canal decodificada (117, L) y una señal de segundo canal decodificada (118, R) usando la señal residual decodificada (114, D) la información de predicción (108) y la señal de mezcla descendente decodificada (112, M), de modo que la señal de primer canal decodificada (117) y la señal de segundo canal decodificada (118) son al menos aproximaciones de la señal de primer canal y la señal de segundo canal de la señal estéreo, en el que la información de predicción (108) comprende una parte real (aR) y una parte imaginaria (a^ de un coeficiente de predicción compleja,
en el que el calculador de decodificador (116) comprende un predictor (1160) configurado para estimar (1160a) una parte imaginaria (601) de la señal de mezcla descendente decodificada (112) de una trama actual, siendo la señal de mezcla descendente decodificada para la trama actual un espectro de MDCT de la trama actual, en el que el predictor (1160) comprende un transformador real a imaginario para calcular un espectro de MDST de la trama actual como la parte imaginaria,
en el que el transformador real a imaginario se implementa en un dominio de frecuencia y se configura
para realizar filtrado de respuesta de impulso infinito bidimensional de un espectro de MDCT de la señal de mezcla descendente decodificada de una trama anterior, el espectro de MDCT de la señal de mezcla descendente decodificada de la trama actual y un espectro de MDCT de la señal de mezcla descendente decodificada de una siguiente trama, o
para calcular una aproximación de un espectro de MDST usando el espectro de MDCT de la trama actual y el espectro de MDCT de la trama anterior o
para calcular una aproximación de un espectro de MDST únicamente usando el espectro de MDCT de la trama actual,
en el que el predictor (1160) se configura para multiplicar la parte imaginaria (601) de la señal de mezcla descendente decodificada por la parte imaginaria negativa (aI) del coeficiente de predicción para obtener una segunda parte de la señal de predicción y para multiplicar la parte real de la señal de mezcla descendente decodificada por la parte real negativa (aR) del coeficiente de predicción para obtener una primera parte de la señal de predicción;
en el que el calculador de decodificador (116) comprende además un calculador de señal de combinación (1161a, 1161b) configurado para añadir la primera parte de la señal de predicción y la señal residual decodificada, y para añadir adicionalmente la segunda parte de la señal de predicción para obtener una señal lateral (1165);
en el que el calculador de decodificador (116) comprende además un combinador (1162) para combinar la señal lateral (1165) y siendo la señal de mezcla descendente decodificada una señal central para obtener la señal de primer canal decodificada (117, L) que es una señal de canal izquierdo y la señal de segundo canal decodificada (118, R) que es una señal de canal derecho,
en el que el decodificador comprende además un elemento de transformada de coseno discreta modificada inversa (52) para generar una señal de primer canal de dominio de tiempo a partir de la señal de canal izquierdo y un elemento de transformada de coseno discreta modificada inversa (53) adicional para generar una señal de segundo canal de dominio de tiempo a partir de la señal de canal derecho.
2. Decodificador de voz y audio unificado de MPEG de acuerdo con la reivindicación 1,
en el que el predictor se configura para excluir una trama adyacente particular del cálculo del espectro de MDCT para la trama actual, cuando la trama adyacente particular no está disponible debido a una pérdida de trama durante transmisión o conmutación de longitud de transformada, en el que, para el caso de conmutación de longitud de transformada, la exclusión está señalizada en un flujo de bits.
3. Decodificador de voz y audio unificado de MPEG de acuerdo con la reivindicación 1,
en el que, cuando o bien la parte real (aR) o bien la parte imaginaria (a^ no se usan en una trama dada, esto se señaliza en un flujo de bits, y la parte no usada no se transmite.
4. Decodificador de voz y audio unificado de MPEG de acuerdo con la reivindicación 1,
en el que para cada una de la parte real (aR) y la parte imaginaria (a^ se usa codificación no diferencial o codificación diferencial en una base por trama o por flujo, señalizada por un bit en un flujo de bits, y para la codificación diferencial, se usa o bien codificación diferencial por tiempo o frecuencia y señaliza mediante una bandera de un bit en el flujo de bits.
5. Decodificador de voz y audio unificado de MPEG de acuerdo con la reivindicación 1,
en el que la información de predicción se codifica usando un libro de códigos predefinido o usando un libro de códigos no variable especializado o un libro de códigos adaptativo a señal o una codificación no firmada de longitud fija o usando palabras de código de complementos de dos.
6. Decodificador de voz y audio unificado de MPEG de acuerdo con la reivindicación 1,
en el que la parte real (aR) y la parte imaginaria (a^ se actualizan cada segunda banda de factor de escala.
7. Decodificador de voz y audio unificado de MPEG de acuerdo con la reivindicación 1,
en el que un flujo de bits incluye un bit por trama que únicamente se usa el espectro de MDCT de la trama actual para calcular el espectro de m DsT de la trama actual y esos espectros de MDCT de tramas adyacentes no se tienen en cuenta.
8. Decodificador de voz y audio unificado de MPEG de acuerdo con una reivindicación 1, en el que un filtro aplicado por el transformador real a imaginario es un filtro truncado hasta a 1 trama 2 derivaciones.
9. Decodificador de voz y audio unificado de MPEG de acuerdo con la reivindicación 1, en el que el transformador real a imaginario comprende un filtrado FIR bidimensional de espectros de MDCT de la señal de mezcla descendente decodificada.
10. Decodificador de voz y audio unificado de MPEG de la reivindicación 9, en el que, si un codificador de MDCT subyacente usa conmutación de forma de ventana, los coeficientes de filtro del filtro FIR están adaptados a formas de ventana reales aplicadas por el codificador de MDCT.
11. Decodificador de voz y audio unificado de MPEG de la reivindicación 9 o 10,
en el que, si un codificador de MDCT subyacente usa conmutación de longitud de transformada que resulta en un número diferente de coeficientes de MDCT en la trama actual y una trama anterior o siguiente, la trama anterior o siguiente se excluye del cálculo del espectro de MDST para la trama actual.
12. Método de decodificación de voz y audio unificada de MPEG de una señal de audio estéreo codificada (100), comprendiendo la señal de audio estéreo codificada una señal de mezcla descendente codificada generada basándose en una regla de combinación para combinar una señal de audio de primer canal y una señal de audio de segundo canal de una señal de audio estéreo, una señal residual de predicción codificada e información de predicción, que comprende:
decuantificar (110) la señal de mezcla descendente codificada (104) para obtener una señal de mezcla descendente decodificada (112) y decuantificar la señal residual codificada (106) para obtener una señal residual decodificada (114); y
calcular (116) una señal estéreo decodificada que tiene una señal de primer canal decodificada (117) y una señal de segundo canal decodificada (118) usando la señal residual decodificada (114), la información de predicción (108) y la señal de mezcla descendente decodificada (112), de modo que la señal de primer canal decodificada (117) y la señal de segundo canal decodificada (118) son al menos aproximaciones de la señal de primer canal y la señal de segundo canal de la señal estéreo,
en el que la información de predicción (108) comprende una parte real (aR) y una parte imaginaria (aI) de un coeficiente de predicción compleja,
en el que una parte imaginaria de la señal de mezcla descendente decodificada (112) se estima (1160a) usando la señal de mezcla descendente decodificada (112) por un predictor (1160), siendo la señal de mezcla descendente decodificada para la trama actual un espectro de MDCT de la trama actual, en el que el predictor (1160) comprende una transformación real a imaginaria para calcular un espectro de MDST de la trama actual como la parte imaginaria,
en el que la transformación real a imaginaria se implementa en un dominio de frecuencia y
realiza filtrado de respuesta de impulso infinito bidimensional de un espectro de MDCT de la señal de mezcla descendente decodificada de una trama anterior, el espectro de MDCT de la señal de mezcla descendente decodificada de la trama actual y un espectro de MDCT de la señal de mezcla descendente decodificada de una siguiente trama, o
calcula una aproximación de un espectro de MDST usando el espectro de MDCT de la trama actual y el espectro de MDCT de la trama anterior o calcula una aproximación de un espectro de MDST únicamente usando el espectro de MDCT de la trama actual,
en el que la parte imaginaria (601) de la señal de mezcla descendente decodificada se multiplica por la parte imaginaria negativa de la información de predicción (108) para obtener una segunda parte de la señal de predicción, y en el que la parte real de la señal de mezcla descendente decodificada se multiplica por la parte real negativa (aR) de la información de predicción (108) para obtener una primera parte de la señal de predicción; en el que la primera parte de la señal de predicción y la señal residual decodificada se añaden y la segunda parte de la señal de predicción se añade adicionalmente para obtener una señal lateral (1165);
en el que la señal lateral (1165) y la señal de mezcla descendente decodificada se combinan para obtener la señal de primer canal decodificada (117, L) que es una señal de canal izquierdo y la señal de segundo canal decodificada (118, R) que es una señal de canal derecho,
en el que el método comprende adicionalmente aplicar una transformada de coseno discreta modificada inversa a la señal de canal izquierdo para generar una señal de primer canal de dominio de tiempo y una transformada de coseno discreta modificada inversa adicional a la señal de canal derecho para generar una señal de segundo canal de dominio de tiempo.
13. Programa informático adaptado para realizar, cuando se ejecuta en un ordenador o un procesador, el método de la reivindicación 12.
ES15176776T 2010-04-09 2011-03-23 Decodificación de una señal de audio estéreo usando predicción compleja Active ES2701862T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US32268810P 2010-04-09 2010-04-09
US36390610P 2010-07-13 2010-07-13
EP10169432A EP2375409A1 (en) 2010-04-09 2010-07-13 Audio encoder, audio decoder and related methods for processing multi-channel audio signals using complex prediction

Publications (1)

Publication Number Publication Date
ES2701862T3 true ES2701862T3 (es) 2019-02-26

Family

ID=43828187

Family Applications (3)

Application Number Title Priority Date Filing Date
ES15176784T Active ES2701456T3 (es) 2010-04-09 2011-03-23 Codificación de señales de audio multicanal usando predicción compleja y codificación diferencial
ES11709735.2T Active ES2552839T3 (es) 2010-04-09 2011-03-23 Decodificación de señales de audio multicanal usando predicción compleja
ES15176776T Active ES2701862T3 (es) 2010-04-09 2011-03-23 Decodificación de una señal de audio estéreo usando predicción compleja

Family Applications Before (2)

Application Number Title Priority Date Filing Date
ES15176784T Active ES2701456T3 (es) 2010-04-09 2011-03-23 Codificación de señales de audio multicanal usando predicción compleja y codificación diferencial
ES11709735.2T Active ES2552839T3 (es) 2010-04-09 2011-03-23 Decodificación de señales de audio multicanal usando predicción compleja

Country Status (18)

Country Link
US (1) US8655670B2 (es)
EP (8) EP2375409A1 (es)
JP (1) JP5705964B2 (es)
KR (1) KR101425155B1 (es)
CN (1) CN103098126B (es)
AR (1) AR080842A1 (es)
AU (1) AU2011238010B2 (es)
CA (1) CA2804907C (es)
ES (3) ES2701456T3 (es)
HK (1) HK1180823A1 (es)
MX (1) MX2012011603A (es)
MY (1) MY160467A (es)
PL (7) PL2947656T3 (es)
RU (1) RU2577195C2 (es)
SG (1) SG184815A1 (es)
TW (1) TWI444990B (es)
WO (1) WO2011124473A1 (es)
ZA (1) ZA201208364B (es)

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2683175C2 (ru) 2010-04-09 2019-03-26 Долби Интернешнл Аб Стереофоническое кодирование на основе mdct с комплексным предсказанием
PL3779979T3 (pl) * 2010-04-13 2024-01-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Sposób dekodowania audio do przetwarzania sygnałów audio stereo z wykorzystaniem zmiennego kierunku predykcji
US8654984B2 (en) * 2011-04-26 2014-02-18 Skype Processing stereophonic audio signals
US9317458B2 (en) * 2012-04-16 2016-04-19 Harman International Industries, Incorporated System for converting a signal
JP6065452B2 (ja) 2012-08-14 2017-01-25 富士通株式会社 データ埋め込み装置及び方法、データ抽出装置及び方法、並びにプログラム
WO2014126688A1 (en) 2013-02-14 2014-08-21 Dolby Laboratories Licensing Corporation Methods for audio signal transient detection and decorrelation control
TWI618050B (zh) * 2013-02-14 2018-03-11 杜比實驗室特許公司 用於音訊處理系統中之訊號去相關的方法及設備
JP6179122B2 (ja) * 2013-02-20 2017-08-16 富士通株式会社 オーディオ符号化装置、オーディオ符号化方法、オーディオ符号化プログラム
JP6146069B2 (ja) * 2013-03-18 2017-06-14 富士通株式会社 データ埋め込み装置及び方法、データ抽出装置及び方法、並びにプログラム
TWI546799B (zh) 2013-04-05 2016-08-21 杜比國際公司 音頻編碼器及解碼器
WO2014161996A2 (en) 2013-04-05 2014-10-09 Dolby International Ab Audio processing system
EP2830051A3 (en) 2013-07-22 2015-03-04 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder, audio decoder, methods and computer program using jointly encoded residual signals
EP2830061A1 (en) 2013-07-22 2015-01-28 Fraunhofer Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for encoding and decoding an encoded audio signal using temporal noise/patch shaping
EP2830058A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Frequency-domain audio coding supporting transform length switching
EP2830053A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Multi-channel audio decoder, multi-channel audio encoder, methods and computer program using a residual-signal-based adjustment of a contribution of a decorrelated signal
PL3028275T3 (pl) 2013-08-23 2018-02-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Urządzenie i sposób przetwarzania sygnału audio z użyciem kombinacji w zakresie nakładania
EP3561809B1 (en) * 2013-09-12 2023-11-22 Dolby International AB Method for decoding and decoder.
KR102329309B1 (ko) 2013-09-12 2021-11-19 돌비 인터네셔널 에이비 Qmf 기반 처리 데이터의 시간 정렬
EP2980791A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Processor, method and computer program for processing an audio signal using truncated analysis or synthesis window overlap portions
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
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
DE102015101847B4 (de) * 2015-02-10 2017-11-02 Eyesense Gmbh Strahlteiler und Anordnung zur Untersuchung einer mittels elektromagnetischer Strahlung anregbaren Probe
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
EP3067886A1 (en) 2015-03-09 2016-09-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder for encoding a multichannel signal and audio decoder for decoding an encoded audio signal
EP3067885A1 (en) 2015-03-09 2016-09-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for encoding or decoding a multi-channel signal
US10553228B2 (en) 2015-04-07 2020-02-04 Dolby International Ab Audio coding with range extension
EP3107096A1 (en) * 2015-06-16 2016-12-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Downscaled decoding
US9972334B2 (en) * 2015-09-10 2018-05-15 Qualcomm Incorporated Decoder audio classification
PL3405949T3 (pl) 2016-01-22 2020-07-27 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Urządzenie i sposób szacowania międzykanałowej różnicy czasowej
SG11201806256SA (en) * 2016-01-22 2018-08-30 Fraunhofer Ges Forschung Apparatus and method for mdct m/s stereo with global ild with improved mid/side decision
EP3208800A1 (en) 2016-02-17 2017-08-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for stereo filing in multichannel coding
US10224042B2 (en) * 2016-10-31 2019-03-05 Qualcomm Incorporated Encoding of multiple audio signals
CA3127805C (en) * 2016-11-08 2023-12-19 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for encoding or decoding a multichannel signal using a side gain and a residual gain
US10217468B2 (en) * 2017-01-19 2019-02-26 Qualcomm Incorporated Coding of multiple audio signals
CN108877815B (zh) 2017-05-16 2021-02-23 华为技术有限公司 一种立体声信号处理方法及装置
US10535357B2 (en) * 2017-10-05 2020-01-14 Qualcomm Incorporated Encoding or decoding of audio signals
US10580420B2 (en) * 2017-10-05 2020-03-03 Qualcomm Incorporated Encoding or decoding of audio signals
EP3483883A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio coding and decoding with selective postfiltering
EP3483884A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Signal filtering
EP3483882A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Controlling bandwidth in encoders and/or decoders
WO2019091573A1 (en) 2017-11-10 2019-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for encoding and decoding an audio signal using downsampling or interpolation of scale parameters
EP3483878A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio decoder supporting a set of different loss concealment tools
EP3483886A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Selecting pitch lag
EP3483879A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Analysis/synthesis windowing function for modulated lapped transformation
WO2019091576A1 (en) 2017-11-10 2019-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits
EP3483880A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Temporal noise shaping
BR112020012654A2 (pt) * 2017-12-19 2020-12-01 Dolby International Ab métodos, aparelhos e sistemas para aprimoramentos de decodificação e codificação de fala e áudio unificados com transpositor de harmônico com base em qmf
TWI812658B (zh) * 2017-12-19 2023-08-21 瑞典商都比國際公司 用於統一語音及音訊之解碼及編碼去關聯濾波器之改良之方法、裝置及系統
CN110556116B (zh) 2018-05-31 2021-10-22 华为技术有限公司 计算下混信号和残差信号的方法和装置
KR20200000649A (ko) * 2018-06-25 2020-01-03 네이버 주식회사 오디오 병렬 트랜스코딩을 위한 방법 및 시스템
CA3091150A1 (en) * 2018-07-02 2020-01-09 Dolby Laboratories Licensing Corporation Methods and devices for encoding and/or decoding immersive audio signals
CN112352277B (zh) 2018-07-03 2024-05-31 松下电器(美国)知识产权公司 编码装置及编码方法
US11263550B2 (en) * 2018-09-09 2022-03-01 International Business Machines Corporation Audit machine learning models against bias
US11308414B2 (en) * 2018-10-11 2022-04-19 International Business Machines Corporation Multi-step ahead forecasting using complex-valued vector autoregregression
EP3671739A1 (en) * 2018-12-21 2020-06-24 FRAUNHOFER-GESELLSCHAFT zur Förderung der angewandten Forschung e.V. Apparatus and method for source separation using an estimation and control of sound quality
EP3997697A4 (en) * 2019-07-08 2023-09-06 VoiceAge Corporation METHOD AND SYSTEM FOR ENCODING METADATA IN AUDIO DATA STREAMS AND FOR EFFICIENT BIT RATE ALLOCATION FOR ENCODING AUDIO DATA STREAMS
DE102020210917B4 (de) 2019-08-30 2023-10-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung eingetragener Verein Verbesserter M/S-Stereo-Codierer und -Decodierer
CN112040435A (zh) * 2020-09-09 2020-12-04 成都智联科鸿电子科技有限公司 一种多通道捆绑的物联网数据回传装置
WO2022177481A1 (en) * 2021-02-18 2022-08-25 Telefonaktiebolaget Lm Ericsson (Publ) Encoding and decoding complex data
CN113343591B (zh) * 2021-07-16 2022-05-03 浙江大学 基于自注意力网络的产品关键零件寿命端到端预测方法
WO2023113490A1 (ko) * 2021-12-15 2023-06-22 한국전자통신연구원 복소수 데이터를 이용한 오디오 처리 방법 및 그를 수행하는 장치

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8913758D0 (en) * 1989-06-15 1989-08-02 British Telecomm Polyphonic coding
US6430529B1 (en) * 1999-02-26 2002-08-06 Sony Corporation System and method for efficient time-domain aliasing cancellation
SE519976C2 (sv) * 2000-09-15 2003-05-06 Ericsson Telefon Ab L M Kodning och avkodning av signaler från flera kanaler
DE10234130B3 (de) 2002-07-26 2004-02-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Erzeugen einer komplexen Spektraldarstellung eines zeitdiskreten Signals
US8359197B2 (en) 2003-04-01 2013-01-22 Digital Voice Systems, Inc. Half-rate vocoder
US6980933B2 (en) 2004-01-27 2005-12-27 Dolby Laboratories Licensing Corporation Coding techniques using estimated spectral magnitude and phase derived from MDCT coefficients
SE0402650D0 (sv) * 2004-11-02 2004-11-02 Coding Tech Ab Improved parametric stereo compatible coding of spatial audio
US7751572B2 (en) * 2005-04-15 2010-07-06 Dolby International Ab Adaptive residual audio coding
US7961890B2 (en) * 2005-04-15 2011-06-14 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung, E.V. Multi-channel hierarchical audio coding with compact side information
US7917561B2 (en) * 2005-09-16 2011-03-29 Coding Technologies Ab Partially complex modulated filter bank
DE102006047197B3 (de) 2006-07-31 2008-01-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Verarbeiten eines reellen Subband-Signals zur Reduktion von Aliasing-Effekten
WO2008031458A1 (en) 2006-09-13 2008-03-20 Telefonaktiebolaget Lm Ericsson (Publ) Methods and arrangements for a speech/audio sender and receiver
CN102037507B (zh) * 2008-05-23 2013-02-06 皇家飞利浦电子股份有限公司 参数立体声上混合设备、参数立体声译码器、参数立体声下混合设备、参数立体声编码器
MY152252A (en) * 2008-07-11 2014-09-15 Fraunhofer Ges Forschung Apparatus and method for encoding/decoding an audio signal using an aliasing switch scheme
RU2683175C2 (ru) * 2010-04-09 2019-03-26 Долби Интернешнл Аб Стереофоническое кодирование на основе mdct с комплексным предсказанием

Also Published As

Publication number Publication date
SG184815A1 (en) 2012-11-29
EP2947653B1 (en) 2018-10-31
TWI444990B (zh) 2014-07-11
EP2947655B1 (en) 2018-10-24
EP2947655A1 (en) 2015-11-25
PL2947652T3 (pl) 2019-04-30
EP2543038B1 (en) 2015-08-26
KR20130014561A (ko) 2013-02-07
CA2804907C (en) 2016-05-31
US8655670B2 (en) 2014-02-18
EP2947652A1 (en) 2015-11-25
WO2011124473A1 (en) 2011-10-13
JP2013528822A (ja) 2013-07-11
EP2543038A1 (en) 2013-01-09
CA2804907A1 (en) 2011-10-13
AU2011238010A1 (en) 2012-11-08
EP2375409A1 (en) 2011-10-12
TW201205557A (en) 2012-02-01
CN103098126A (zh) 2013-05-08
MX2012011603A (es) 2012-11-30
EP2947656A1 (en) 2015-11-25
EP2947654A1 (en) 2015-11-25
PL2947654T3 (pl) 2019-04-30
RU2012147587A (ru) 2014-05-20
AU2011238010B2 (en) 2014-01-16
KR101425155B1 (ko) 2014-08-01
PL2947657T3 (pl) 2019-04-30
US20130030819A1 (en) 2013-01-31
EP2947653A1 (en) 2015-11-25
EP2947657B1 (en) 2018-10-24
HK1180823A1 (en) 2013-10-25
CN103098126B (zh) 2015-07-22
EP2947657A1 (en) 2015-11-25
ES2552839T3 (es) 2015-12-02
EP2947656B1 (en) 2018-09-19
PL2947656T3 (pl) 2019-03-29
ES2701456T3 (es) 2019-02-22
MY160467A (en) 2017-03-15
PL2947655T3 (pl) 2019-04-30
AR080842A1 (es) 2012-05-09
PL2543038T3 (pl) 2016-01-29
ZA201208364B (en) 2013-07-31
EP2947654B1 (en) 2018-10-17
RU2577195C2 (ru) 2016-03-10
PL2947653T3 (pl) 2019-04-30
JP5705964B2 (ja) 2015-04-22
EP2947652B1 (en) 2018-11-14

Similar Documents

Publication Publication Date Title
ES2701862T3 (es) Decodificación de una señal de audio estéreo usando predicción compleja
ES2953085T3 (es) Decodificador de audio y métodos relacionados para procesar señales de audio multicanal usando una dirección de predicción variable
ES2707473T3 (es) Codificación de audio de multicanal utilizando predicción compleja y señalización de estimación explícita
BR122020024260B1 (pt) Codificador de áudio ou vídeo, decodificador de áudio ou vídeo e métodos relacionados para o processamento do sinal de áudio ou vídeo de múltiplos canais usando uma direção de previsão variável