ES2971838T3 - Codificación de audio multiseñal utilizando el blanqueamiento de señal como preprocesamiento - Google Patents
Codificación de audio multiseñal utilizando el blanqueamiento de señal como preprocesamiento Download PDFInfo
- Publication number
- ES2971838T3 ES2971838T3 ES19732704T ES19732704T ES2971838T3 ES 2971838 T3 ES2971838 T3 ES 2971838T3 ES 19732704 T ES19732704 T ES 19732704T ES 19732704 T ES19732704 T ES 19732704T ES 2971838 T3 ES2971838 T3 ES 2971838T3
- Authority
- ES
- Spain
- Prior art keywords
- signal
- signals
- joint
- processing
- encoded
- 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
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/008—Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/03—Spectral prediction for preventing pre-echo; Temporary noise shaping [TNS], e.g. in MPEG2 or MPEG4
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/162—Interface to dedicated audio devices, e.g. audio drivers, interface to CODECs
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Stereophonic System (AREA)
Abstract
Un codificador multiseñal para codificar al menos tres señales de audio, comprende: un preprocesador de señales (100) para preprocesar individualmente cada señal de audio para obtener al menos tres señales de audio preprocesadas, en donde el preprocesamiento se realiza de manera que una señal de audio preprocesada se blanquee con respecto a la señal antes del preprocesamiento; un procesador de señal conjunto adaptativo (200) para realizar un procesamiento de al menos tres señales de audio preprocesadas para obtener al menos tres señales procesadas conjuntamente o al menos dos señales procesadas conjuntamente y una señal sin procesar; un codificador de señales (300) para codificar cada señal para obtener una o más señales codificadas; y una interfaz de salida (400) para transmitir o almacenar una señal de audio multiseñal codificada que comprende una o más señales codificadas, información secundaria relacionada con el preprocesamiento e información secundaria relacionada con el procesamiento. (Traducción automática con Google Translate, sin valor legal)
Description
DESCRIPCIÓN
Codificación de audio multiseñal utilizando el blanqueamiento de señal como preprocesamiento
Las realizaciones se refieren a un sistema de codificación y decodificación multiseñal basado en MDCT con procesamiento conjunto de canales adaptable a la señal, en donde la señal puede ser un canal, y la multiseñal es una señal multicanal o, alternativamente, una señal de audio que es un componente de una descripción de campo sonoro tal como un componente Ambisonics, es decir, W, X,Y,Z en Ambisonics de primer orden o cualquier otro componente en una descripción Ambisonics de orden superior. La señal puede ser asimismo una señal de formato A o de formato B o una descripción en cualquier otro formato de un campo sonoro.
• En MPEG USAC [1], se ejecuta la codificación conjunta estéreo de dos canales utilizando predicción compleja, MPS 2-1-2 o estéreo unificado con señales residuales de bandas limitadas o de banda completa.
• En MPEG envolvente [ 2] combina jerárquicamente cajas OTT y TTT para la codificación conjunta de audio multicanal con o sin transmisión de señales residuales.
• Los elementos de canales cuádruples de MPEG-H [3], aplican jerárquicamente cajas estéreo MPS2-1-2 seguidas por cajas de predicción compleja/MS estéreo que construyen un árbol de remezclas “fijo” de 4x4.
• AC4 [4] introduce nuevos elementos de 3-, 4- y 5- canales que dan lugar a la remezcla de canales transmitidos mediante una matriz de mezcla transmitida y la posterior información de codificación conjunta estéreo.
• Las publicaciones anteriores sugieren el uso de transformadas ortogonales como la transformada de Karhunen-Loeve (KLT, por sus siglas en inglés) para la codificación de audio multicanal mejorada [5].
• La herramienta de codificación multicanal (MCT) [6] - que admite la codificación conjunta de más de dos canales, habilita la codificación conjunta flexible y adaptativa a la señal en el dominio de la MDCT. Esto se logra mediante una combinación iterativa y concatenación de técnicas de codificación estéreo tales como la predicción estéreo compleja de valor real, como así también la codificación estéreo con rotación (KLT) de dos canales designados.
En el contexto del Audio 3D, los canales de altavoz están distribuidos en capas de varias alturas, dando lugar así a pares de canales horizontalesyverticales. La codificación conjunta de solo dos canales según lo definido en USAC no es suficiente para considerar las relaciones espaciales y perceptuales entre canales.
El MPEG envolvente se aplica en una etapa adicional de pre/posprocesamiento, se transmiten señales residuales en forma individual sin la posibilidad de codificación conjunta estéreo, por ej. para aprovechar las dependencias entre las señales residuales verticales izquierda y derecha. En AC-4 se introducen elementos de canales N especiales que permiten la codificación eficiente de parámetros de codificación conjunta, aunque fallan en las configuraciones genéricas de parlantes con más canales propuestas para las nuevas condiciones de reproducción inmersiva (7.1+4, 22.2). El elemento de canales cuádruples de MPEG-H también se limita a sólo 4 canales y no se puede aplicar de manera dinámica a canales arbitrarios sino sólo a un número fijo y preconfigurado de canales. MCT introduce la flexibilidad de la codificación conjunta de canales adaptativa a la señal de canales arbitrarios, aunque el procesamiento estéreo se lleva a cabo en señales de ventanas y transformadas no normalizadas (no blanqueadas). Más aun, la codificación de los coeficientes de predicción o los ángulos en cada banda por cada caja estéreo requiere un número significativo de bits.
El documento EP 2 830 054 A1 comprende un aparato para generar una señal decodificada de dos canales, comprende: un procesador de audio para decodificar una señal de dos canales codificada para obtener un primer conjunto de primeras porciones espectrales; un decodificador paramétrico para proporcionar datos paramétricos para un segundo conjunto de segundas porciones espectrales y una identificación de dos canales que identifica una primera o una segunda representación de dos canales diferente para las segundas porciones espectrales; y un regenerador de frecuencia para regenerar una segunda porción espectral en función de una primera porción espectral del primer conjunto de primeras porciones espectrales, los datos paramétricos para la segunda porción y la identificación de dos canales para la segunda porción.
SCHUH FLORIAN ET AL, "Efficient Multichannel Audio Transform Coding with Low Delay and Complexity", AES CONVENTION 141. SEPTIEMBRE 2016, ES, 60 EAST 42ND STREET, ROOM 2520 NUEVA YORK 10165-2520, USA, (20160920), XP040680994, da a conocer una realización de principios de codificación espacial discreta de canal conjunto así como semiparamétrica directamente dentro del dominio de la transformada discreta de coseno modificada (MDCT) de valor real de un codificador central integrable en el códec de audio 3D MPEG-H.
El documento WO 2017/125544 A1 da a conocer un aparato para codificar un primer canal y un segundo canal de una señal de entrada de audio que comprende dos o más canales para obtener una señal de audio codificada según una realización. El aparato comprende un normalizador configurado para determinar un valor de normalización para la señal de entrada de audio en función del primer canal de la señal de entrada de audio y en función del segundo canal de la señal de entrada de audio, en el que el normalizador está configurado para determinar un primer canal y un segundo canal de una señal de audio normalizada modificando, en función del valor de normalización, al menos uno del primer canal y del segundo canal de la señal de entrada de audio. Además, el aparato comprende una unidad de codificación configurada para generar una señal de audio procesada que tiene un primer canal y un segundo canal.
Un objetivo de la presente invención es presentar un concepto mejorado y más flexible para la codificación y decodificación multiseñal.
Este objeto se consigue mediante un codificador multiseñal de la reivindicación 1, un decodificador multiseñal de la reivindicación 29, un método para realizar la codificación multiseñal de la reivindicación 40, un método para realizar la decodificación multiseñal de la reivindicación 41, un programa informático de la reivindicación 42 o una señal codificada de la reivindicación 43.
La presente invención se basa en el hallazgo de que se mejora sustancialmente la eficiencia de la codificación multiseñal ejecutando el procesamiento conjunto de señales adaptativo no sobre las señales originales sino en señales de audio preprocesadas, donde este preprocesamiento se realiza de tal manera que una señal de audio preprocesada se blanquee con respecto a la señal antes del preprocesamiento. Con respecto al lado del decodificador, esto significa que se ejecuta un posprocesamiento con posterioridad al procesamiento conjunto de señales para obtener por lo menos tres señales decodificadas procesadas. Estas por lo menos tres señales decodificadas procesadas son posprocesadas de conformidad con la información lateral incluida en la señal codificada, donde el posprocesamiento se realiza de tal manera que las señales posprocesadas son menos blancas que las señales con anterioridad al posprocesamiento. Las señales posprocesadas representan, en última instancia, directamente o después de otras operaciones de procesamiento de señales, la señal de audio decodificada, es decir, la multiseñal decodificada.
Especialmente en el caso de los formatos de audio 3D inmersivos, se obtiene una eficiente codificación multicanal que aprovecha las propiedades de una pluralidad de señales para reducir la cantidad de datos de transmisión, preservando a la vez la calidad de audio perceptual. En una implementación preferida, se ejecuta la codificación conjunta adaptativa a la señal dentro de un sistema multicanal utilizando espectros perceptualmente blanqueados y, además, con compensación de la diferencia de nivel entre canales (ILD). La codificación conjunta se realiza preferentemente utilizando una sencilla decisión de transformación por banda M/S que se activa sobre la base de un número estimado de bits para un codificador de entropía.
Un codificador multiseñal para codificar por lo menos tres señales de audio comprende un preprocesador de señales para preprocesar en forma individual cada señal de audio a fin de obtener por lo menos tres señales de audio preprocesadas, donde el preprocesamiento se ejecuta de tal manera que la señal de audio preprocesada se blanquee con respecto a la señal con anterioridad al preprocesamiento. Se ejecuta un procesamiento conjunto adaptativo de señales de dichas por lo menos tres señales de audio preprocesadas para obtener por lo menos tres señales procesadas conjuntamente. Este procesamiento opera sobre señales blanqueadas. El preprocesamiento da lugar a la extracción de ciertas características de la señal tales como la envolvente espectral, por ejemplo, que en caso de no extraerse, se reduciría la eficiencia del procesamiento conjunto de señales tal como un procesamiento estéreo conjunto o multicanal conjunto. Además, para potenciar la eficiencia del procesamiento conjunto de señales, se ejecuta una normalización de la energía de banda ancha de dichas por lo menos tres señales de audio preprocesadas de tal manera que cada señal de audio preprocesada tenga una energía normalizada. Esta normalización de la energía de banda ancha se señaliza en la señal de audio codificada como información lateral de manera que esta normalización de la energía de banda ancha se pueda revertir del lado del decodificador posterior a la procesamiento inverso conjunto estéreo o conjunto multicanal de la señal . Por medio de este procedimiento adicional preferible de normalización de la energía de banda ancha, se mejora sustancialmente la eficiencia del procesamiento conjunto adaptativo a la señal de tal manera que se pueda someter el número de bandas o incluso al número de tramas completas a procesamiento medio/lateral a diferencia del procesamiento izquierdo/derecho (procesamiento mono doble). La eficiencia de la totalidad del proceso de codificación se potencia cada vez más cuanto más elevado sea el número de bandas o incluso de tramas completas que se someten a un procesamiento común estéreo o multicanal tal como el procesamiento medio/lateral.
La menor eficiencia se obtiene, desde el punto de vista del procesamiento, cuando el procesador conjunto adaptativo de señales tiene que decidir, en forma adaptativa, con respecto a una banda, o con respecto a una trama, si esta banda o trama ha de ser procesada mediante un procesamiento “mono dual” o izquierdo/derecho. En este caso, el canal izquierdo y el canal derecho se procesan como están, aunque naturalmente en el dominio blanqueado y con energía normalizada. Sin embargo, cuando el procesador conjunto adaptativo a la señal determina en forma adaptativa, con respecto a una determinada banda o trama, que se ha de ejecutar un procesamiento medio/lateral, se calcula la señal del medio sumando el primero y segundo canales y la señal lateral se calcula calculando la diferencia entre el primero y el segundo canal del par de canales. Por lo general, la señal del medio es, con respecto a su rango de valores, comparable a uno del primero y segundo canales, pero la señal lateral es por lo general una señal con poca energía que puede ser codificada con gran eficiencia o, incluso en la situación más preferible, la señal lateral es cero o cercana a cero por lo que las regiones espectrales de la señal lateral pueden ser hasta cuantizada a cero y, por lo tanto, ser objeto de codificación de entropía de manera sumamente eficiente. Esta codificación de entropía es ejecutada por el codificador de señales para codificar cada señal a fin de obtener una o más señales codificadas y la interfaz de salida del codificador multiseñal transmite o almacena una señal de audio multiseñal codificada que comprende dichas una o más señales codificadas, información lateral con respecto al preprocesamiento e información lateral con respecto al procesamiento conjunto adaptativo de señales.
Del lado del decodificador, el decodificador de señales que por lo general comprende un decodificador de entropía decodifica dichas por lo menos tres señales codificadas basándose típicamente en una información sobre la distribución de bits preferentemente incluida. Esta información sobre la distribución de bits está incluida en carácter de información lateral en la señal de audio multiseñal codificada and puede ser derivada, por ejemplo, en el lado del codificador observando la energía de las señales a la entrada al codificador (de entropía) de señales. La salida del decodificador de señales del interior del decodificador multiseñal es introducida en un procesador conjunto de señal para ejecutar un procesamiento conjunto de señales de conformidad con la información lateral incluida en la señal codificada para obtener por lo menos tres señales decodificadas procesadas. Este procesador conjunto de señal deshace preferentemente el procesamiento conjunto de señales ejecutado del lado del codificador y, por lo general, ejecuta un procesamiento inverso estéreo o inverso multicanal. En la implementación preferida, el procesador conjunto de señal aplica una operación de procesamiento para calcular las señales izquierda/derecha de las señales medio/lateral. Sin embargo, cuando procesador conjunto de señal determina, según la información lateral, que para un determinado par de canales, ya se ha realizado un procesamiento mono dual, se toma en cuenta esta situación y se la utiliza en el decodificador para un procesamiento adicional.
El procesador conjunto de señal del lado del decodificador puede ser, como el procesador conjunto adaptativo de señales del lado del codificador, un procesador que opera en el modo de un árbol de pares de canales en cascada o un árbol simplificado. Un árbol simplificado también representa algún tipo de procesamiento en cascada, aunque el árbol simplificado difiere del árbol de pares de canales en cascada en que la salida de un par procesado no puede ser una entrada para otro par que se ha de procesar.
Puede darse el caso de que, con respecto a un primer par de canales que es utilizado por el procesador conjunto de señal del lado del decodificador multiseñal para dar comienzo al procesamiento conjunto de señales, este primer par de canales que fuera el último par de canales procesado del lado del codificador tenga, respecto de una banda determinada, una información lateral que indica mono dual pero estas señales mono duales pueden ser utilizadas más adelante en el procesamiento de un par de canales como señal del medio o señal lateral. Esto está señalizado en la correspondiente información lateral relacionada con el procesamiento por pares ejecutado para obtener dichos por lo menos tres canales codificados individualmente que se han de decodificar del lado del decodificador.
Las realizaciones se refieren a un sistema de codificación y decodificación multiseñal basado en MDCT con procesamiento conjunto de canales adaptable a la señal, en donde la señal puede ser un canal, y la multiseñal es una señal multicanal o, alternativamente, una señal de audio que es un componente de una descripción de campo sonoro tal como un componente Ambisonics, es decir, W, X,Y,Z en Ambisonics de primer orden o cualquier otro componente en una descripción Ambisonics de orden superior. La señal puede ser asimismo una señal de formato A o de formato B o una descripción en cualquier otro formato de un campo sonoro.
A continuación, se señalan otras ventajas y realizaciones preferidas. El códec utiliza nuevos conceptos para combinar la flexibilidad de la codificación conjunta adaptativa a la señal de canales arbitrarios que se describe en [6] mediante la introducción de los conceptos descritos en [7] para la codificación conjunta estéreo. Éstos son:
a) uso de señales perceptualmente blanqueadas para una mayor codificación (de manera similar a la forma en que se las utiliza en un codificador de voz). Esto ofrece varias ventajas:
• simplificación de la arquitectura del códec
• representación compacta de las características de conformación de ruido/ umbral de enmascaramiento (por ej. en forma de coeficientes de LPC)
• unifica la transformada y la arquitectura del códec y, de esa manera, habilita la codificación combinada de audio y voz
b) uso de parámetros de una ILD de canales arbitrarios para codificar de manera eficiente las fuentes paneadas
c) distribución flexible de bits entre los canales procesados basándose en la energía.
El códec utiliza, además, conformación de ruido en el dominio de la frecuencia (FDNS, por sus siglas en inglés Frequency Domain Noise Shaping) para blanquear perceptualmente la señal con el bucle de tasa según lo descrito en [8], combinado con la distorsión de la envolvente espectral descrita en [9]. El códec normalizó además el espectro blanqueado por FDNS hacia el nivel medio de energía utilizando parámetros de ILD. Se seleccionan pares de canales para la codificación conjunta de manera adaptativa de acuerdo con lo descrito en [6] , donde la codificación estéreo consiste en una decisión de M/S banda por banda contra L/R. La decisión de M/S banda por banda se basa en la tasa de bits estimada de cada banda cuando se la codifica en el modo L/R y en el M/S según lo descrito en [7]. La distribución de la tasa de bits entre los canales procesados por M/S banda por banda se basa en la energía.
Seguidamente se explican las realizaciones preferidas de la presente invención con respecto a los dibujos adjuntos, en los cuales:
La figura 1 ilustra un diagrama de bloques del preprocesamiento de un canal único en una implementación preferida; La figura 2 ilustra una implementación preferida de un diagrama de bloques del codificador multiseñal;
La figura 3 ilustra la implementación preferida del vector de correlación cruzada y el procedimiento de selección de pares de canales de la figura 2;
La figura 4 ilustra un esquema de indexación de pares de canales en una implementación preferida;
La figura 5a ilustra una implementación preferida del codificador multiseñal de conformidad con la presente invención; La figura 5b ilustra una representación esquemática de una trama de la señal de audio multicanal codificada;
La figura 6 ilustra un procedimiento ejecutado por el procesador conjunto adaptativo de señales de la figura 5a; La figura 7 ilustra una implementación preferida ejecutada por el procesador conjunto adaptativo de señales de la figura 8;
La figura 8 ilustra otra implementación preferida ejecutada por el procesador conjunto adaptativo de señales de la figura 5;
La figura 9 ilustra otro procedimiento con el fin de realizar la asignación de bits para ser utilizados por el procesador de codificación y cuantificación de la figura 5;
La figura 10 ilustra un diagrama de bloques una implementación preferida del decodificador multiseñal;
La figura 11 ilustra una implementación preferida ejecutada por el procesador conjunto de señal de la figura 10; La figura 12 ilustra una implementación preferida del decodificador de señales de la figura 10;
La figura 13 ilustra otra implementación preferida del procesador conjunto de señal en el contexto de la extensión de ancho de banda o llenado inteligente de huecos (IGF);
La figura 14 ilustra una implementación preferida adicional del procesador conjunto de señal de la figura 10;
La figura 15a ilustra bloques de procesamiento preferidos ejecutados por el decodificador de señales y el procesador conjunto de señal de la figura 10; y
La figura 15b ilustra una implementación del posprocesador para ejecutar una operación de desblanqueado y otros procedimientos opcionales.
La figura 5 ilustra una implementación preferida de un codificador multiseñal para codificar por lo menos tres señales de audio. Dichas por lo menos tres señales de audio son ingresadas en un procesador de señales 100 para preprocesar en forma individual cada señal de audio para obtener por lo menos tres señales de audio preprocesadas 180, donde el preprocesamiento es ejecutado de tal manera que las señales de audio preprocesadas se blanqueen con respecto a las señales correspondientes con anterioridad al preprocesamiento. Dichas por lo menos tres señales de audio preprocesadas 180 son ingresadas en un procesador conjunto adaptativo de señales 200 que está configurado para ejecutar un procesamiento de dichas por lo menos tres señales de audio preprocesadas para obtener por lo menos tres señales procesadas conjuntamente o, en una forma de realización, por lo menos dos señales procesadas conjuntamente y una señal sin procesar como se explicará más adelante. El codificador multiseñal comprende un codificador de señales 300 que está conectado a una salida del procesador conjunto adaptativo de señales 200 y que está configurado para codificar cada señal emitida por el procesador conjunto adaptativo de señales 200 para obtener una o más señales codificadas. Estas señales codificadas a la salida del codificador de señales 300 son enviadas a una interfaz de salida 400. La interfaz de salida 400 está configurada para transmitir o almacenar una señal de audio multiseñal codificada 500 donde la señal de audio multiseñal codificada 500 a la salida de la interfaz de salida 400 comprende dichas una o más señales codificadas generadas por el codificador de señales 300, información lateral 520 relacionada con el preprocesamiento ejecutado por el preprocesador de señales 200, es decir, información de blanqueado y, por añadidura, la señal de audio multiseñal codificada comprende además información lateral 530 relacionada con el procesamiento ejecutado por el procesador conjunto adaptativo de señales 200, es decir, información lateral con respecto al procesamiento conjunto adaptativo de señales.
En una implementación preferida, el codificador de señales 300 comprende un procesador de bucle de tasa que está controlado por la información sobre la distribución de bits 536 generada por el procesador conjunto adaptativo de señales 200 y que no sólo es enviada desde el bloque 200 al bloque 300 sino que también es enviada, dentro de información lateral 530, a la interfaz de salida 400 y, por lo tanto, a la señal de audio multiseñal codificada. La señal de audio multiseñal codificada 500 es generada típicamente de manera trama a trama, donde el entramado y, típicamente, una ventana correspondiente y la conversión de tiempo-frecuencia se realizan dentro del preprocesador de señal 100.
En la figura 5b se presenta una ilustración a título de ejemplo de una trama de la señal de audio multiseñal codificada 500. La figura 5b ilustra una porción del flujo de bits 510 correspondiente a las señales individualmente codificadas generadas por el bloque 300. El bloque 520 es para la información lateral de preprocesamiento generada por el bloque 100 y enviada a la interfaz de salida 400. Además, una información lateral de procesamiento conjunto 530 es generada por el procesador conjunto adaptativo de señales 200 de la figura 5a e introducida en la trama de la señal de audio multiseñal codificada ilustrada en la figura 5b. A la derecha de la ilustración de la figura 5b, se escribiría la siguiente trama de la señal de audio multiseñal codificada en un flujo de bits en serie en tanto que, a la izquierda de la ilustración de la figura 5b, se escribiría una trama anterior de la señal de audio multiseñal codificada.
Como se ilustra más adelante, el preprocesamiento comprende un procesamiento de conformación de ruido temporal y/o un procesamiento de conformación de ruido en el dominio de la frecuencia u operaciones de procesamiento de LTP (predicción a largo plazo) o de procesamiento de ventanas. La correspondiente información lateral de preprocesamiento 550 puede comprender por lo menos una de información de conformación de ruido temporal (TNS), información de conformación de ruido en el dominio de la frecuencia (FDNS), información de predicción a largo plazo (LTP) o información de enventanado o de ventanas.
La conformación de ruido temporal comprende una predicción de una trama espectral en la frecuencia. Se predice un valor espectral con una frecuencia mayor utilizando una combinación ponderada de valores espectrales con frecuencias más bajas. La información lateral de TNS comprende las ponderaciones de la combinación ponderada que también se conocen como coeficientes de LPC derivados mediante predicción en la frecuencia. Los valores espectrales blanqueados son los valores de predicción residuales, es decir, las diferencias, por cada valor espectral, entre el valor espectral original y el valor espectral predicho. Del lado del decodificador, se ejecuta una predicción inversa de un filtrado de síntesis de LPC para deshacer el procesamiento de TNS realizado del lado del codificador.
El procesamiento de FDNS comprende la ponderación de los valores espectrales de una trama empleando factores de ponderación para los correspondientes valores espectrales, donde los valores de ponderación se derivan de los coeficientes de LPC calculados a partir de un bloque/trama de la señal en el dominio del tiempo enventanada. La información lateral de FDNS comprende una representación de los coeficientes de LPC derivados de la señal en el dominio del tiempo.
Otro procedimiento de ponderación que también es útil para la presente invención es una ecualización espectral empleando factores de escala de manera que el espectro ecualizado represente una versión más blanca que la versión no ecualizada. La información lateral consistiría en los factores de escala utilizados para la ponderación y el procedimiento inverso comprende deshacer la ecualización del lado del decodificador usando los factores de escala transmitidos.
Otro procedimiento de blanqueado comprende la ejecución de un filtrado inverso del espectro utilizando un filtro inverso controlado por los coeficientes de LPC derivados de la trama en el dominio del tiempo, lo que se conoce en la técnica como codificación de voz. La información lateral es la información de filtrado inverso y este filtrado inverso se revierte en el decodificador utilizando la información lateral transmitida.
Otro procedimiento de blanqueado comprende la ejecución de un análisis de LPC en el dominio del tiempo y el cálculo de valores residuales en el dominio del tiempo que luego se convierten al rango espectral. Por lo general, los valores espectrales obtenidos de esta manera son similares a los valores espectrales obtenidos por FDNS. Del lado del decodificador, el posprocesamiento comprende la ejecución de la síntesis de LPC utilizando la representación de los coeficientes de LPC transmitida.
La información lateral de procesamiento conjunto 530 comprende, en una implementación preferida, una información lateral de procesamiento por pares 532, una información de escala de energía 534 y una información sobre la distribución de bits 536. La información lateral de procesamiento por pares puede comprender por lo menos los bits de la información lateral de uno de los pares de canales, información lateral medio/lateral completa o mono dual o medio por bandas y, en el caso de la indicación medio/lateral por bandas, una máscara medio lateral que indica, por cada ancho de banda de una trama, si la banda es procesada por procesamiento medio/lateral o L/R (del inglés, left/right, izquierdo/derecho). La información lateral de procesamiento por bandas puede comprender además el llenado inteligente de huecos (IGF) u otra información de extensión de ancho de banda tal como información de SBR (replicación de la banda espectral) o similar.
La información de escalado de energía 534 puede comprender, por cada señal blanqueada, es decir, preprocesada 180, un valor de escala de energía y una bandera que indica si el escalado de energía es un escalado ascendente o un escalado descendente. En caso de haber ocho canales, por ejemplo, el bloque 534 comprendería ocho valores de escala tales como ocho valores de ILD cuantificados y ocho banderas que indican, por cada uno de los ocho canales, si se ha realizado un escalado ascendente o un escalado descendente dentro del codificador o si se lo tiene que efectuar dentro del decodificador. Un escalado ascendente en el codificador es necesario cuando la energía real de un determinado canal preprocesado dentro de una trama está por debajo de la energía media correspondiente a la trama entre todos los canales, y un escalado descendente es necesario cuando la energía real de un determinado canal dentro de la trama está por encima de la energía de todos los canales dentro de la trama. La información lateral de procesamiento conjunto puede comprender una información sobre la distribución de bits por cada una de las señales procesadas conjuntamente o por cada una de las señales procesadas conjuntamente y, en caso de existir, una señal sin procesar, y esta información sobre la distribución de bits es utilizada por el codificador de señales 300 de la manera ilustrada en la figura 5a y es utilizada, de modo correspondiente, por decodificador de señales utilizado ilustrado en la figura 10, que recibe esta información de flujo de bits de la señal codificada a través de una interfaz de entrada.
La figura 6 ilustra una implementación preferida del procesador conjunto adaptativo de señales. El procesador conjunto adaptativo de señales 200 está configurado para ejecutar una normalización de la energía de banda ancha de dichas por lo menos tres señales de audio preprocesadas, de tal manera que cada señal de audio preprocesada tenga una energía normalizada. La interfaz de salida 400 está configurada para incluir, como información lateral adicional, un valor de normalización de la energía de banda ancha por cada señal de audio preprocesada, donde este valor corresponde a la información de escalado de energía 534 de la figura 5b. La figura 6 ilustra una implementación preferida de la normalización de la energía de banda ancha. En la etapa 211, se calcula una energía de banda ancha por cada canal. La entrada al bloque 211 está constituida por los canales preprocesados (blanqueados). El resultado es un valor de energía de banda ancha correspondiente a cada canal del total de canales Ctotal. En el bloque 212, se calcula una energía media de banda ancha, por lo general sumando los valores individuales y dividiendo los valores individuales por el número de canales. Sin embargo, se pueden utilizar otros procedimientos de cálculo de la media tales como la media geométrica o similares.
En la etapa 213, se normaliza cada canal. Para ello, se determina un factor o valor de escala y una información de escalado ascendente o descendente. Por lo tanto, el bloque 213, está configurado para emitir la bandera de escalado por cada canal indicado en 534a. En el bloque 214, se ejecuta la cuantificación real de la relación de escalado determinada en el bloque 212, y esta relación de escalado cuantificada es emitida en 534b por cada canal. Esta
relación de escalado cuantificada también se indica como diferencia de nivel entre canales,IL D (k )es decir, para un determinado canal k con respecto a un canal de referencia que tiene la energía media. En el bloque 215, se realiza el escalado del espectro de cada canal usando la relación de escalado cuantificada. La operación de escalado realizada en el bloque 215 está controlada por la salida del bloque 213, es decir, por la información de si se debe ejecutar un escalado ascendente o un escalado descendente. La salida del bloque 215 representa un espectro escalado por cada canal.
La figura 7 ilustra una implementación preferida del procesador conjunto adaptativo de señales 200 con respecto al procesamiento del par en cascada. El procesador conjunto adaptativo de señales 200 está configurado para calcular valores de correlación cruzada por cada par de canales posible, como se indica en el bloque 221. El bloque 229 ilustra la selección de un par con el valor de correlación cruzada más elevado y, en el bloque 232a, se determina un modo de procesamiento conjunto estéreo para este par. Un modo de procesamiento conjunto estéreo puede consistir en la codificación medio/lateral correspondiente a toda la trama, la codificación medio/latera banda por banda, es decir, donde se determina, por cada banda de una pluralidad de bandas, si esta banda debe ser procesada en el modo medio/lateral o L/R o si, para la trama real, se debe realizar un procesamiento dual-mono de toda la banda para este par específico en cuestión. En el bloque 232b, se ejecuta, en realidad, el procesamiento conjunto estéreo del par seleccionado utilizando el modo determinado en el bloque 232a.
En el bloque 235, 238, se continúa con el procesamiento en cascada con el procesamiento del árbol completo o un árbol simplificado o un procesamiento no en cascada hasta un determinado criterio de terminación. Alcanzado el determinado criterio de terminación, se genera la indicación de un par emitida por, por ejemplo, el bloque 229 y una información de procesamiento en modo estéreo emitida por el 232a y se las ingresa en el flujo de bits en la información lateral de procesamiento por pares 532 explicada con respecto a la figura 5b.
La figura 8 ilustra una implementación preferida del procesador conjunto adaptativo de señales con fines de preparación para la codificación de señales ejecutada por el codificador de señales 300 de la figura 5a. Para ello, el procesador conjunto adaptativo de señales 200 calcula la energía de la señal por cada señal procesada en estéreo en el bloque 282. El bloque 282 recibe, como entrada, señales procesadas conjuntamente en estéreo y, en caso de que un canal no haya sido objeto de procesamiento estéreo por no haberse encontrado que este canal tuviera una correlación cruzada suficiente con ningún otro canal para formar un par de canales útil, este canal es ingresado en el bloque 282 con una energía invertida o modificada o no normalizada. Esto se indica generalmente como “señal con energía revertida”, aunque la normalización de la energía ejecutada en la figura 6, bloque 215, no necesariamente tiene que ser completamente revertida. Existen ciertas alternativas para tratar una señal de canal que no ha sido encontrado de utilidad con otro canal para el procesamiento de pares de canales. Un procedimiento consiste en revertir el escalado realizado inicialmente en el bloque 215 de la figura 6. Otro procedimiento consiste en revertir sólo parcialmente el escalado u otro procedimiento, ponderando el canal escalado de manera diferente, según el caso.
En el bloque 284, se calcula una energía total entre todas las señales emitidas por el procesador conjunto adaptativo de señales 200. Se calcula una información sobre la distribución de bits en el bloque 286 por cada señal sobre la base de la energía de la señal por cada señal procesada en estéreo o, en caso de contar con ella, una señal con energía revertida o energía ponderada y sobre la base de la energía total emitida por el bloque 284. Esta información lateral 536 generada por el bloque 286 es enviada, por otra parte, al codificador de señales 300 de la figura 5a y es enviada, además, a la interfaz de salida 400 por medio de una conexión lógica 530 por lo que esta información sobre la distribución de bits está incluida en la señal de audio multiseñal codificada 500 de la figura 5a o la figura 5b.
La asignación real de bits se realiza, en una forma de realización preferida, basándose en los procedimientos ilustrados en la figura 9. En un primer procedimiento, se asigna un número mínimo de bits para los canales sin LFE (mejora de bajas frecuencias) y, en caso de estar disponibles, los bits de canales de mejora a bajas frecuencias. Estos números mínimos de bits son indispensables para el codificador de señales 300 independientemente del contenido de una determinada señal. El resto de los bits es asignado de conformidad con la información sobre la distribución de bits 536 generada por el bloque 286 de la figura 8 e introducida en el bloque 291. La asignación se efectúa sobre la base de la relación de energía cuantizada y es preferible utilizar la relación de energía cuantizada en lugar de una energía no cuantizada.
En la etapa 292, se ejecuta un refinado. Cuando la cuantización resulta tal que se asigna el resto de los bits y el resultado es superior al número disponible de bits, se debe realizar una resta de los bits asignados en el bloque 291. Cuando, por el contrario, la cuantización de la relación de energía era tal que el procedimiento de asignación realizado en el bloque 291 resulta de tal modo que aún quedan bits para ser asignados, estos bits pueden ser otorgados o distribuidos adicionalmente en la etapa de refinado 292. Si, con posterioridad la etapa de refinado existe aún algún bit para ser utilizado por el codificador de señales, se ejecuta una etapa final de donación 293 y se realiza la donación final al canal con la energía máxima. A la salida de la etapa 293, se dispone del presupuesto de bits asignados a cada señal.
En la etapa 300, se ejecuta la cuantificación y codificación de entropía de cada señal utilizando el presupuesto de bits asignado generado por el proceso de las etapas 290, 291, 292, 293. Básicamente, la asignación de bits se realiza de tal manera que un canal/ señal con energía más elevada se cuantiza de manera más precisa que un canal/ señal con energía más baja. Lo importante es que la asignación de bits no se efectúa utilizando las señales originales ni las señales blanqueadas, sino que se efectúa utilizando las señales a la salida del procesador conjunto adaptativo de señales 200 que tienen energías diferentes de las de las señales ingresadas en el procesamiento conjunto adaptativo de señales debido al procesamiento conjunto de los canales. En este contexto, cabe señalar asimismo que, si bien el procesamiento por pares de canales constituye la implementación preferida, se pueden seleccionar otros grupos de canales y procesarlos por medio de la correlación cruzada. Por ejemplo, se pueden formar grupos de tres o incluso cuatro canales por medio del procesador conjunto adaptativo de señales y procesarlos de manera correspondiente en un procedimiento completo en cascada, o un procedimiento en cascada con árbol simplificado o dentro de un procedimiento no en cascada.
La asignación de bits ilustrada en los bloques 290, 291, 292, 293 se realiza de manera igual a la efectuada lado del decodificador por medio del decodificador de señales 700 de la figura 10 usando la información de distribución 536 extraída de la señal de audio multiseñal codificada 500.
Realizaciones preferidas
En esta implementación, el códec utiliza nuevos conceptos para fusionar la flexibilidad de la codificación conjunta adaptativa a la señal de canales arbitrarios descrita en [6] mediante la introducción de los conceptos descritos en [7] ara la codificación conjunta estéreo. Éstos son:
a) uso de señales perceptualmente blanqueadas para una mayor codificación (de manera similar a la forma en que se las utiliza en un codificador de voz). Esto ofrece varias ventajas:
•simplificación de la arquitectura del códec
•representación compacta de las características de conformación de ruido/ umbral de enmascaramiento (por ej. en forma de coeficientes de LPC)
•unifica la transformada y la arquitectura del códec y, de esa manera, habilita la codificación combinada de audio y voz
b) uso de parámetros de una ILD de canales arbitrarios para codificar de manera eficiente las fuentes paneadas
c) distribución flexible de bits entre los canales procesados basándose en la energía.
El códec utiliza modelado de ruido en el dominio de la frecuencia (FDNS, por sus siglas en inglés Frequency Domain Noise Shaping) para blanquear perceptualmente la señal con el bucle de tasa de acuerdo con lo descrito en [8] combinado con la distorsión de la envolvente espectral descrita en [9]. El códec normalizó además el espectro blanqueado por FDNS hacia el nivel medio de energía utilizando parámetros de ILD. Se seleccionan pares de canales para la codificación conjunta de manera adaptativa de acuerdo con lo descrito en [6], donde la codificación estéreo consiste en una decisión M/S por banda contra L/R. La decisión de M/S banda por banda se basa en la tasa de bits estimada de cada banda cuando se la codifica en el modo L/R y en el M/S según lo descrito en [7]. La distribución de la tasa de bits entre los canales procesados por M/S banda por banda se basa en la energía.
Las realizaciones se refieren a un sistema de codificación y decodificación multiseñal basado en MDCT con procesamiento conjunto de canales adaptable a la señal, en donde la señal puede ser un canal, y la multiseñal es una señal multicanal o, alternativamente, una señal de audio que es un componente de una descripción de campo sonoro tal como un componente Ambisonics, es decir, W, X,Y,Z en Ambisonics de primer orden o cualquier otro componente en una descripción Ambisonics de orden superior. La señal puede ser asimismo una señal de formato A o de formato B o una descripción en cualquier otro formato de un campo sonoro. Por ende, la descripción dada respecto de los “canales” es válida también con respecto a “componentes” u otras “señales” de la señal de audio multiseñal.
Procesamiento de canales individuales en el codificador hasta el espectro blanqueado
Los bloques de procesamiento del Detector de Transitorios en el dominio del tiempo, Ventaneado, MDCT, MDST y OLA son los descritos en [8]. MDCT y MDST forman una transformada solapada compleja modulada (MCLT, Modulated Complex Lapped Transform); la ejecución por separado de la MDCT y MDST es equivalente a la ejecución de MCLT; “MCLT a MDCT” representa la acción de tomar sólo la parte de MD<c>T de la MCLT y descartar la MDST.
La conformación de ruido temporal (TNS) se realiza de manera similar a la descrita en [8] con la adición de que el orden del TNS y la conformación de ruido en el dominio del a frecuencia (FDNS) es adaptativo. La existencia de los 2 recuadros de TNS en las figuras se debe interpretar como la posibilidad de cambiar el orden del FDNS y el TNS. La decisión en cuanto al orden del TNS y el FDNS puede ser, por ejemplo, la descrita en [9].
La conformación de ruido en el dominio de la frecuencia (FDNS) y el cálculo de los parámetros de FDNS son similares a los del procedimiento descrito en [9]. Una diferencia consiste en que los parámetros de FDNS correspondientes a las tramas en que el TNS está activo se calculan a partir del espectro de MCLT. En las tramas en que el TNS está activo, se estima el espectro de MDST tomando el espectro de MDCT.
La figura 1 ilustra una implementación preferida del procesador de señales 100 que ejecuta el blanqueo de dichas por lo menos tres señales de audio para obtener señales blanqueadas procesadas individualmente 180. El preprocesador de señales 100 comprende una entrada correspondiente a la señal de entrada en el dominio del tiempo de un canal k. Esta señal es introducida en un dispositivo de ventana 102, un detector de transitorios 104 y una calculadora de parámetros de LTP 106. El detector de transitorios 104 detecta si una porción actual de la señal de entrada es transitoria y, en caso de confirmarse esto, el detector de transitorios 104 controla el dispositivo de ventana 102 para configurar una longitud de ventana más pequeña. La indicación de ventana, es decir, qué longitud de ventana se ha elegido, también está incluida en la información lateral y, en particular, en la información lateral de preprocesamiento 520 de la figura 5b. Además, los parámetros de LTP calculados por el bloque 106 también son introducidos en el bloque de información lateral, and estos parámetros de LTP se pueden utilizar, por ejemplo, para ejecutar algún tipo de posprocesamiento de señales decodificadas u otros procedimientos conocidos en la técnica. El dispositivo de ventana 140 genera tramas de ventana en el dominio del tiempo que se introducen en un conversor tiempo a espectral 108. El conversor tiempo a espectral 108 ejecuta preferentemente una transformada solapada compleja. De esta transformada solapada compleja, se puede derivar la parte real para obtener el resultado de una transformada MDCT, como se indica en el bloque 112. El resultado del bloque 112, es decir, un espectro de MDCT, es ingresado en un bloque de TNS 114a y un bloque de FDNS conectado a continuación 116. De lo contrario, sólo se ejecuta el FDNS sin el bloque de TNS 114a o viceversa, o se ejecuta el procesamiento de TNS con posterioridad al procesamiento de FDNS, como se indica en el bloque 114b. Por lo general, está presente el bloque 114a o el bloque 114b. A la salida del bloque 114b, cuando el bloque 114a no está presente o a la salida del bloque 116 cuando no está presente el bloque 114b, se obtienen las señales blanqueadas individualmente procesadas, es decir, las señales preprocesadas por cada canal k. El bloque de TNS 114a o 114b el bloque de FDNS 116 genera y envía información de preprocesamiento a la información lateral 520.
No es necesario de modo alguno contar con una transformada compleja dentro del bloque 108. Además, un conversor tiempo a espectral que sólo ejecuta una MDCT también es suficiente para ciertas aplicaciones y, si se necesita una parte imaginaria de la transformada, esta parte imaginaria también puede ser estimada a partir de la parte real, según sea el caso. Una característica del procesamiento de TNS/FDNS es que, en caso de que el TNS se encuentre inactivo, los parámetros de FDNS se calculan a partir del espectro complejo, es decir del espectro de MCLT en tanto que, en las tramas en que el TNS está activo, se estima el espectro de MDST a partir del espectro de MDCT por lo que éste siempre tiene, en cuanto a la operación de conformación de ruido en el dominio de la frecuencia, el espectro complejo completo disponible.
Descripción del sistema de codificación conjunta de canales
En el sistema descrito, una vez transformado cada canal al dominio de la MDCT, se aplica una aprovechamiento adaptativo a la señal de variadas similitudes entre canales arbitrarios para la codificación conjunta, sobre la base del algoritmo descrito en [6]. Como resultado de este procedimiento, se detectan los respectivospares de canalesy se los elige para la codificación conjunta utilizando una transformada M/S por banda.
Se debe tener presente que, en la configuración inicial del sistema, hay un enmascaramiento de canales para cuáles de los canales de la herramienta de codificación conjunta multicanal está activa. Por lo tanto, para la entrada en que los canales con LFE (Efectos / Mejora de Bajas Frecuencias) están presentes, éstos no son tomados en cuenta en las etapas de procesamiento de la herramienta.
Normalización de la energía de todos los canales hacia la energía media
Una transformada M/S no es eficiente si existe una ILD, es decir si los canales son paneados. Evitamos este problema normalizando la amplitud de los espectros perceptualmente blanqueados de todos los canales al nivel de energía media E.
o Calcular la energíaEkpara cada canalk= 0, ...ctotal
en donde N es el número total de coeficientes espectrales.
o calcular la energía media
o normalizar el espectro de cada canal hacia la energía media
si
(escalado descendente)
en dondeaes la relación de escalado. La relación de escalado es cuantificada de manera uniforme y enviada al decodificador en forma de bits de información lateral.
U D (k )= max(l,min(ILD RANG0 - 1,[(ILD RANG0.*ak+ 0.5)J)
en donde
Luego la relación de escalado cuantificada con la cual se escala en última instancia el espectro está data por
y
IL D RANGO
í lq Q 0 ¡ tn (k}
en donde calcula como en el caso anterior.
Para distinguir si hemos escalado descendente/escalado ascendente en el decodificador y para revertir la normalización, aparte deILDlos valores por cada canal, se envía una bandera de 1 bit (0=escalado descendente/1=escalado ascendente).IL D rangoindica el número de bits utilizados para el valor de escala cuantificado transmitido y este va|or es conocido p0r el codificador y el decodificador y no tiene que ser transmitido en la señal de audio codificada.
Cálculo de los valores de correlación cruzada entre canales normalizados para todos los pares de canales posibles. En esta etapa, para decidir y seleccionar qué par de canales tiene el más alto grado de similitudes y, por lo tanto, es adecuado para ser seleccionado como par para la codificación conjunta estéreo, se calcula el valor de correlación cruzada entre canales normalizado por cada par de canales posible. El valor de correlación cruzada normalizado por cada par de canales está dado por el espectro cruzado de la siguiente manera:
en donde
txy — 'ZIí =o^ m d c tÍO * Ym dctÍ0
Nes el número total de coeficientes espectrales por tramaXmdcteYmdctson los espectros respectivos del par de canales considerado.
Los valores de correlación cruzada normalizados por cada par de canales son almacenados en el vector de correlación cruzada
CC = [fQ, f 1,... ,rP\
en dondeP =(Ctotai *(Ctotai- 1))/2 es el número máximo de pares posibles.
Dependiendo del detector de transitorios podemos tener diferentes tamaños de bloque (por ejemplo, tamaños de bloque de ventana de 10 o 20 ms). Por lo tanto, la correlación cruzada entre canales se calcula sobre el hecho de que la resolución espectral correspondiente a ambos canales es igual. En caso contrario, se fija el valor en 0, garantizando así que ningún par de canales con esas características sea seleccionado para la codificación conjunta.
Se utiliza un esquema de indexación para representar de manera exclusiva cada par de canales.
Se mantiene el mismo esquema de indexación en todo el algoritmo que también se utiliza para señalar pares de canales al decodificador. El número de bits necesario para señalar un par de canales asciende a
bitsidx =Llog2(P - 1)J 1
Selección de pares de canales y procesamiento estéreo conjuntamente codificado
Después de calcular el vector de correlación cruzada, el primer par de canales a considerar para la codificación conjunta es el correspondiente con el valor de correlación cruzada más elevado y superior a un umbral de valor mínimo, preferentemente de 0.3.
El par de canales seleccionado sirve como entrada al procedimiento de codificación estéreo, es decir una transformada M/S por banda. Por cada banda espectral, la decisión de codificar los canales utilizando codificación M/S o L/R discreta depende de la tasa de bits estimada para cada caso. Se opta por el método de codificación que es menos demandante en términos de bits. Este procedimiento ha sido descrito en detalle en [7].
La salida de este proceso da lugar a un espectro adaptado por cada uno de los canales del par de canales seleccionado. Además, se genera información que debe ser compartida con el decodificador (información lateral) con respecto a este par de canales, es decir qué modo estéreo se ha seleccionado (M/S Completa, mono dual, o M/S por banda) y si M/S por banda es el modo seleccionado, se elige la respectiva máscara para indicar si se ha elegido la codificación M/S (1) o la L/R (0).
Para las siguientes etapas hay dos variaciones del algoritmo:
o Árbol en cascada por pares de canales
Para esta variación, se actualiza el vector de correlación cruzada correspondiente a los pares de canales que están afectados por el espectro alterado (si se opta por transformada M/S) del par de canales seleccionado.
A continuación, el procedimiento prosigue de la manera antes descrita: se selecciona el par de canales con la máxima correlación cruzada, se confirma que ésta sea superior a un umbral mínimo y se aplica la operación estéreo. Esto significa que los canales que formaron parte de un par de canales anterior pueden ser reseleccionados para servir como entrada a un nuevo par de canales, de ahí el término “en cascada”. Esto puede tener lugar porque puede haber aún una correlación presente entre la salida de un par de canales y otro canal arbitrario que representa una dirección diferente en el dominio espacial. Naturalmente, no se puede seleccionar el mismo par de canales dos veces.
El procedimiento continúa al alcanzarse el máximo número permitido de iteraciones (el máximo absoluto es P) o si después de actualizar el vector de correlación cruzada el valor de ningún par de canales superó el umbral de 0,3 (no hay correlación entre los canales arbitrarios).
o Árbol simplificado
El proceso en cascada de árbol de pares de canales es teóricamente óptimo, ya que su intención es eliminar la correlación de todos los canales arbitrarios y producir una compactación máxima de la energía. Por otro lado, es Qot
bastante complejo, ya que el número de pares de canales seleccionados puede ser superior 2 , lo que da lugar a una complejidad computacional adicional (procedente del proceso de decisión M/S de la operación estéreo) y también a metadatos adicionales que deben transmitirse al decodificador para cada par de canales.
En el caso de la variación de árbol simplificado, no se permite el procesamiento “en cascada”. Esto se garantiza cuando, al realizar el proceso antes descrito, mientras se actualiza el vector de correlación cruzada, los valores de los pares de canales afectados de una operación estéreo anterior de un par de canales no se recalcula sino que se fija en 0. Por lo tanto, no es posible seleccionar un par de canales uno de cuyos canales ya formó parte de un par de canales existente.
Este caso da lugar a una complejidad similar a la de un sistema con pares de canales predefinidos (por ej. L y R, L posterior y R posterior) ya que el máximo de pares de canales que se pueden seleccionar es 2 .
Se debe tener presente que, puede haber casos en que la operación estéreo de un par de canales seleccionado no altera los espectros de los canales. Eso ocurre cuando el algoritmo de decisión M/S decide que el modo de codificación debe ser “mono dual” . En este caso, los canales arbitrarios implicados ya no se consideran pares de canales, puesto que se los codifica por separado. Además, la actualización del vector de correlación cruzada ya no tiene efecto. Para proseguir con el proceso, se toma en cuenta el par de canales con el siguiente valor más elevado. Las etapas en este caso continúan de la manera descrita anteriormente.
Retención de la selección de par de canales (árbol estéreo) de la trama anterior
En muchos casos los valores de correlación cruzada normalizados de pares de canales arbitrarios de una trama a otra pueden ser cercanos y, por lo tanto, la selección puede conmutar con frecuencia entre estos valores cercanos. Eso puede causar la conmutación frecuente del árbol de pares de canales, lo que a su vez puede dar lugar a inestabilidades audibles en el sistema de salida. Por lo tanto, se opta por el uso de un mecanismo de estabilización, donde se selecciona una nueva serie de pares de canales sólo cuando hay un cambio significativo de la señal y cambian las similitudes entre canales arbitrarios. Para detectar esto, se compara el vector de correlación cruzada de la trama actual con el vector de la trama anterior y, cuando la diferencia es mayor que un umbral determinado, sí se permite la selección de nuevos pares de canales.
La variación en el tiempo del vector de correlación cruzada se calcula de la siguiente manera:
CCdiff CCprev[i]\
SiCdiff > t, luego se habilita la selección de nuevos pares de canales para codificar en forma conjunta, según lo descrito en la etapa anterior. Un umbral elegido está dado por
t = 0.15Ctot(Ctot -l)/2
Si, por otra parte, las diferencias son pequeñas, se utiliza el mismo árbol de pares de canales que en la trama anterior. Por cada par de canales dado, se aplica la operación de M/S por banda de acuerdo con lo descrito anteriormente. Si, por el contrario, el valor de correlación cruzada normalizado del par de canales dado no excede el umbral de 0.3, se da comienzo entonces a la selección de nuevos pares de canales, generando así un nuevo árbol.
Revertir la energía de los canales individuales
A la conclusión del proceso de iteración correspondiente a la selección de pares de canales, puede haber canales que no forman parte de ningún par de canales y, por lo tanto, se los codifica por separado. En el caso de esos canales se revierte la normalización inicial del nivel de energía hacia el nivel de energía media a su nivel de energía original. Dependiendo de la bandera que señala el escalado ascendente o el escalado descendente, la energía de estos i
aa(k)
canales se revierte empleando la inversa de la relación de escalado cuantificada .
IGF para el procesamiento multicanal
En lo que respecta al análisis de IGF, en el caso de los pares de canales estéreo se aplica un procesamiento conjunto estéreo adicional, como se describe en forma exhaustiva en [10]. Esto es necesario porque, para un determinado rango de destino en el espectro de IGF, la señal puede una fuente de sonido paneada altamente correlacionada. En caso de que las regiones fuente elegidas para esta región específica no se correlacionen bien, aunque las energías coincidan en cuanto a las regiones de destino, la imagen espacial puede verse afectada debido a las regiones fuente no correlacionadas.
Por lo tanto, por cada par de canales estéreo se aplica el IGF si el modo estéreo de la región núcleo es diferente del modo estéreo de la región del IGF o si el modo estéreo del núcleo está señalado con la bandera de M/S por banda. En caso de no aplicarse estas condiciones, luego se ejecuta el análisis de IGF de los canales individuales. En caso de haber canales individuales, que no son codificados conjuntamente en un par de canales, sino que también se someten a un análisis de IGF de canales individuales.
Distribución de los bits disponibles para codificar el espectro de cada canal
Después de ejecutado el procesamiento estéreo conjunto por pares de canales, se cuantifica cada canal y se lo codifica por separado mediante un codificador de entropía. Por lo tanto, se debe dar el número de bits disponible por cada canal. En esta etapa, el total de bits disponibles se distribuye a cada canal usando las energías de los canales procesados.
Se vuelve a calcular la energía de cada canal, el cálculo de la cual ha sido descrito anteriormente en la etapa de normalización, ya que el espectro correspondiente a cada canal puede haber cambiado debido al procesamiento conjunto. Las nuevas energías están indicadas comoEk, k= 0,1, ...,Ctot.Como primera etapa se calcula la relación basada en la energía según la cual se han de distribuir los bits:
En este caso se debe tener presente que, en caso de que la entrada consista también en un canal LFE, éste no se toma en cuenta para los cálculos de relación. En el caso del canal LFE, se asigna sólo un número mínimo de bitsbitsLFEsólo si el canal tiene contenido no cero. La relación se cuantifica de manera uniforme:
Las relaciones cuantificadasfkson almacenadas en el flujo de bits para ser utilizadas por el decodificador para asignar la misma cantidad de bits a cada canal para leer los coeficientes espectrales transmitidos de los canales.
A continuación se describe el esquema de distribución de bits:
° Para cada canal, asignar la cantidad mínima de bits requerida por el codificador de entropíabitsmin
bits,. <.>■ bits.
o El resto de los bits, es decir se divide utilizando la relación cuantificada
Debido a la relación cuantificada los bits se distribuyen de modo aproximado y, por lo tanto, pueden ser
. Así, en una segunda etapa de refinado, la diferenciabitsdif = bitSd¡v¡d¡dos -bitstotaise resta proporcionalmente de los bits del canalbitsk:
° Después de la etapa de refinamiento, si todavía hay una discrepancia debitsd v d d o sen comparación con el bits<totai>la diferencia (generalmente muy pocos bits) se dona al canal con la máxima energía.
Se sigue exactamente el mismo procedimiento desde el decodificador para determinar la cantidad de bits a leer para decodificar los coeficientes espectrales de cada canal. ElRANGortindica el número de bits utilizados para los bits de información de distribución debitsky este valor es conocido por el codificador y el decodificador y no tiene que ser transmitido en la señal de audio codificada.
Cuantificación y codificación de cada canal
La cuantificación, llenado de ruido y codificación de entropía, incluyendo el bucle de tasa, son como se describieran en [8]. El bucle de tasa puede ser optimizado utilizando laGestestimada. El espectro de potencia P (magnitud de la MCLT) se utiliza para las medidas de tonalidad / ruido en la cuantificación y llenado inteligente de huecos (IGF) como se describe en [8]. Dado que se utiliza el espectro de MDCT blanqueado y procesado por M/S por banda para el espectro de potencia, se debe realizar el mismo FDNS y procesamiento M/S en el espectro de MDST. Se debe efectuar el mismo escalado de normalización basado en la ILD para el espectro de MDST que el realizado para la MDCT. En el caso de las tramas en que el TNS está activo, se estima el espectro de MDST utilizado para el cálculo del espectro de potencia a partir del espectro de MDCT blanqueado y procesado por M/S.
La figura 2 ilustra un diagrama de bloques de una implementación preferida del codificador y, en particular, del procesador conjunto adaptativo de señales 200 de la figura 2. Se ingresa la totalidad de dichas por lo menos tres señales de audio preprocesadas 180 en el bloque de normalización de la energía 210 que genera, a su salida, los bits secundarios de relación de energía de los canales 534 que consiste en, por un lado, las relaciones cuantificadas y, por otro lado, las banderas correspondientes a cada canal que indican un escalado ascendente o un escalado descendente. Sin embargo, también se pueden ejecutar otros procedimientos sin banderas explícitas de escalado ascendente o escalado descendente.
Los canales normalizados son ingresados en un bloque 220 para ejecutar un cálculo de vector de correlación cruzada y la selección de pares de canales. Basándose en el procedimiento ejecutado en el bloque 220, que es preferentemente un procedimiento iterativo que utiliza un procesamiento de árbol completo en cascada o de árbol simplificado en cascada o que, por el contrario, es un procesamiento no iterativo y no en cascada, se realizan las operaciones estéreo correspondientes en el bloque 240 que puede ejecutar un procesamiento medio/lateral de banda completa o banda por banda o cualquier otra operación de procesamiento estéreo tal como rotación, escalado, cualquier combinación lineal o no lineal ponderada o no ponderada, etc.
A la salida de los bloques 240, se puede ejecutar un procesamiento estéreo de llenado inteligente de huecos (IGF) o cualquier otro procesamiento de extensión de ancho de banda tal como el procesamiento de replicación de la banda espectral o procesamiento de ancho de banda con armónicos. El procesamiento de los pares de canales individuales es señalizado mediante bits de información lateral de pares de canales, aunque no se ilustra en la figura 2, IGF o también se escriben los parámetros generales de extensión de ancho de banda generados por los bloques 260 en el flujo de bits correspondiente a la información lateral de procesamiento conjunto 530 y, en particular, a la información lateral de procesamiento por pares 532 de la figura 5b.
La etapa final de la figura 2 es el procesador de distribución de bits a los canales 280 que calcula la relación de asignación de bits de la manera explicada, por ejemplo, con respecto a la figura 9. La figura 2 ilustra una representación esquemática del codificador de señales 300 como cuantificador y codificador que está controlado por la información lateral de tasa de bits de los canales 530 y, además, la interfaz de salida 400 o escritor de flujos de bits 400 que combina el resultado del codificador de señales 300 y todos los bits de información lateral necesarios 520, 530 de la figura 5b.
La figura 3 ilustra una implementación preferida de los procedimientos sustanciales ejecutados por los bloques 210, 220, 240. Con posterioridad al comienzo del procedimiento, se ejecuta una normalización de ILD como se indica en 210 en la figura 2 o en la figura 3. En la etapa 221, se calcula el vector de correlación cruzada. El vector de correlación cruzada consiste en valores normalizados de correlación cruzada por cada par de canales posible de los canales de 0 a N emitidos por el bloque 210. En el ejemplo de la figura 4 en que hay seis canales se pueden examinar 15 posibilidades diferentes que van del 0 a 14. El primer elemento del vector de correlación cruzada tiene el valor de correlación cruzada entre el canal 0 y el canal 1 y, por ejemplo, el elemento del vector de correlación cruzada con el índice 11 tiene la correlación cruzada entre el canal 2 y el canal 5.
En la etapa 222, se realiza el cálculo para determinar si el árbol determinado para la trama anterior debe mantenerse o no. Para este fin, se calcula la variación en el tiempo del vector de correlación cruzada y, preferentemente, la suma de las diferencias individuales de los vectores de correlación cruzada y, en particular, se calculan las magnitudes de las diferencias. En la etapa 223, se determina si la suma de las diferencias es mayor que el umbral. Si éste es el caso, luego, en la etapa 224, la bandera keepTree se fija en 0, lo que significa que no se mantiene el árbol, sino que se calcula un nuevo árbol. Cuando, sin embargo, se determina que la suma es menor que el umbral, el bloque 225 fija la bandera keepTree = 1 por lo que el árbol determinado de la trama anterior se aplica asimismo a la trama actual.
En la etapa 226, se verifica el criterio de terminación de la iteración. En caso de determinarse que no se ha alcanzado el número máximo de pares de canales (CP), que es el caso, naturalmente, cuando se accede al bloque 226 por primera vez, y cuando la bandera keepT ree está ajustada a 0 según lo determinado por el bloque 228, el procedimiento continúa con el bloque 229 para la selección del par de canales con la máxima correlación cruzada sobre la base del vector de correlación cruzada. Cuando, por el contrario, se mantiene el árbol de una trama anterior, es decir, cuando keepTree es igual a 1 según la verificación realizada en el bloque 225, el bloque 230 determina si la correlación cruzada del par de canales “forzado” es superior al umbral. Si éste no es el caso, se sigue adelante con el procedimiento en la etapa 227, lo que significa, de todos modos, que se debe determinar un nuevo árbol aunque el procedimiento del bloque 223 haya determinado lo contrario. La evaluación realizada en el bloque 230 y la correspondiente consecuencia del bloque 227 pueden cancelar la determinación tomada en los bloques 223 y 225.
En el bloque 231, se determina si el par de canales con la máxima correlación cruzada está por encima de 0.3. Si éste es el caso, se ejecuta la operación estéreo en el bloque 232, lo que también está indicado como 240 en la figura 2. Cuando en el bloque 233, se determina que la operación estéreo fue mono dual, se establece el valor de keepTree igual a 0 en el bloque 234. Cuando, por el contrario, se determina que el modo estéreo fue diferente de mono dual, se tiene que recalcular el vector de correlación cruzada 235, puesto que se ha ejecutado una operación medio/lateral y la salida de un bloque de operaciones estéreo 240 (o 232) es diferente debido al procesamiento. Sólo es necesaria una actualización del vector de CC 235 cuando hay realmente una operación estéreo medio /lateral o, en general, una operación diferente de la mono dual.
Cuando, sin embargo, la verificación realizada en el bloque 226 o la verificación realizada en el bloque 231 da lugar a una respuesta “no”, el control pasa al bloque 236 para verificar si existe un único canal. Si éste es el caso, es decir, si se ha encontrado un canal individual que no ha sido procesado junto con otro canal en un procesamiento por pares de canales, se revierte la normalización de la ILD en el bloque 237. Por otro lado, la inversión realizada en el bloque 237 sólo puede ser una inversión parcial o puede consistir en algún tipo de ponderación.
En caso de haberse completado la iteración y en caso de haberse completado también los bloques 236 y 237, el procedimiento finaliza y todos los pares de canales han sido procesados y and, a la salida del procesador conjunto adaptativo de señales , hay por lo menos tres señales procesadas conjuntamente en caso de que el bloque 236 produjera una respuesta “no”, o hay por lo menos dos señales procesadas conjuntamente y una señal sin procesar correspondiente a un “canal individual” cuando el bloque 236 ha producido una respuesta “sí”.
Descripción del sistema de decodificación
El proceso de decodificación comienza con la decodificación y cuantificación inversa del espectro de los canales conjuntamente codificados, seguidas por el llenado de ruido de acuerdo con lo descrito en 6.2.2 “TCX basada en MDCT” en [11] o [12]. Se determina el número de bits asignados a cada canal sobre la base de la longitud de ventana,
el modo estéreo y la relación de tasa de bits<"E f>kque se codifican en el flujo de bits. Se debe conocer el número de bits asignados a cada canal antes de decodificar por completo el flujo de bits.
En el bloque de llenado inteligente de huecos (IGF), se llenan las líneas cuantificadas a cero en un cierto rango del espectro, denominadas tesela objetivo, con contenido procesado de un rango diferente del espectro, denominado mosaico fuente. Debido al procesamiento estéreo por bandas, la representación estéreo (es decir L/R o M/S) podría diferir entre el mosaico fuente y el objetivo. Para garantizar una buena calidad, si la representación del mosaico fuente es diferente del mosaico objetivo, se procesa el mosaico objetivo, el mosaico fuente para transformarlo a la representación del mosaico objetivo antes del llenado de huecos en el decodificador. Este procedimiento ya ha sido descrito en [10]. El IGF en sí se aplica, a diferencia de [11] y [12], en el dominio espectral blanqueado en lugar del dominio espectral original. A diferencia de los códecs estéreo conocidos (por ej. [10]), el IGF se aplica en el dominio espectral blanqueado con ILD compensada.
Tomando en cuenta el flujo de bits que lo señaliza, también se sabe si hay pares de canales que son codificados conjuntamente. El procesamiento inverso se debería iniciar con el último par de canales formado en el codificador, especialmente en el caso del árbol de pares de canales en cascada, para convertirlos nuevamente a los espectros blanqueados originales de cada canal. Por cada par de canales se aplica el procesamiento estéreo inverso sobre la base del modo estéreo y la decisión de M/S por banda.
Para todos los canales implicados en pares de canales y codificados conjuntamente, el espectro se desnormaliza al
nivel de energía original basándose en los valores enviados desde el codificador.
La figura 10 ilustra una implementación preferida de un decodificador multiseñal para decodificar una señal codificada 500. El decodificador multiseñal comprende una interfaz de entrada 600, un decodificador de señales 700 para decodificar por lo menos tres señales codificadas emitidas por la interfaz de entrada 600. El decodificador multiseñal comprende un procesador conjunto de señal 800 para ejecutar un procesamiento conjunto de señales de conformidad con información lateral incluida en la señal codificada para obtener por lo menos tres señales decodificadas procesadas. El decodificador multiseñal comprende un posprocesador 900 para posprocesar dichas por lo menos tres señales decodificadas procesadas de conformidad con información lateral incluida en la señal codificada. Específicamente, el posprocesamiento se ejecuta de tal manera que las señales posprocesadas sean menos blancas que las señales antes del posprocesamiento. Las señales posprocesadas representan, ya sea directa o indirectamente, la señal de audio decodificada 1000.
La información lateral extraída por la interfaz de entrada 600 y enviada al procesador conjunto de señal 800 es la información lateral 530 ilustrada en la figura 5b, y la información lateral extraída por la interfaz de entrada 600 de la señal de audio multiseñal codificada que es enviada al posprocesador 900 para ejecutar la operación de desblanqueado es la información lateral 520 ilustrada y explicada con respecto a la figura 5b.
El procesador conjunto de señal 800 está configurado para extraer o para recibir de la interfaz de entrada 600 el valor de normalización de la energía correspondiente a cada señal decodificada estéreo conjuntamente. Este valor de normalización de la energía por cada señal decodificada estéreo conjuntamente corresponde a la información de escalado de energía 530 de la figura 5b. El procesador conjunto adaptativo de señales 200 está configurado para procesar, por pares, 820 las señales decodificadas usando una información lateral de estéreo conjunto o un modo estéreo conjunto indicado por la información lateral de estéreo conjunto 532 incluida en la señal de audio codificada 500 para obtener las señales decodificadas por estéreo conjunto a la salida de bloque 820. En el bloque 830, se ejecuta una operación de reescalado y, en particular, un reescalado de la energía de las señales decodificadas por estéreo conjunto utilizando los valores de normalización de la energía para obtener las señales decodificadas procesadas a la salida del bloque 800 de la figura 10.
Para garantizar que un canal haya recibido una normalización de ILD inversa según lo explicado con respecto a la figura 3 en el bloque 237, el procesador conjunto de señal 800 está configurado para verificar si el valor de normalización de la energía extraído de la señal codificada correspondiente a una señal específica tiene un valor predefinido. Si éste es el caso, no se ejecuta el reescalado de energía o sólo se ejecuta un reescalado de energía reducido a la señal específica, o se ejecuta cualquier otra operación de ponderación de este canal individual cuando el valor de normalización de la energía tiene su valor predefinido.
En una realización, el decodificador de señales 700 está configurado para recibir, de la interfaz de entrada 600, un valor de distribución de bits por cada señal codificada como se indica en el bloque 620. Este valor de distribución de bits ilustrado en 536 en la figura 12 es enviado al bloque 720 para que el decodificador de señales 700 determine la distribución de bits utilizada. De preferencia, se ejecutan las mismas etapas que se han explicado con respecto al lado del codificador de la figura 6 y la figura 9, es decir que las etapas 290, 291, 292, 293 son ejecutados por medio del decodificador de señales 700 con el fin de determinar la distribución de bits utilizada en el bloque 720 de la figura 12. En el bloque 710/730, se ejecuta una decodificación individual a fin de obtener la entrada al procesador conjunto de señal 800 de la figura 10.
El procesador conjunto de señal 800 tiene la funcionalidad de replicación de la banda, extensión del ancho de banda o llenado inteligente de huecos empleando cierta información lateral incluida en el bloque de información lateral 532. Esta información lateral es enviada al bloque 810 y el bloque 820 ejecuta el procesamiento estéreo conjunto (decodificador) utilizando el resultado del procedimiento de extensión del ancho de banda aplicado por el bloque 810. En el bloque 810, el procedimiento de llenado inteligente de huecos está configurado para transformar el rango de una fuente de una representación estéreo a otra representación estéreo, cuando se indica que un rango de destino de la extensión del ancho de banda o procesamiento de IGF tiene la otra representación estéreo. Cuando se indica que el rango de destino tiene un modo estéreo medio/lateral, y cuando se indica que el rango fuente está tiene un modo L/R, el rango fuente L/R se transforma al modo estéreo en el rango medio/lateral y, luego se ejecuta el procesamiento de IGF con la representación del modo estéreo medio/lateral del rango fuente.
La figura 14 ilustra una implementación preferida del procesador conjunto de señal 800. El procesador conjunto de señal está configurado para extraer información de pares de señales ordenadas como se ilustra en el bloque 630. Esta extracción puede ser ejecutada por la interfaz de entrada 600 o el procesador conjunto de señal puede extraer esta información de la salida de la interfaz de entrada o puede extraer directamente la información sin una interfaz de entrada específica, como ocurre también en el caso de otros procedimientos de extracción descritos con respecto al procesador conjunto de señal o al decodificador de señales.
En el bloque 820, el procesador conjunto de señal ejecuta un procesamiento inverso, preferentemente en cascada, comenzando con un último par de señales, donde el término “último” se refiere al orden de procesamiento determinado y ejecutado por el codificador. En el decodificador, el “último” par de señales es el que se procesa en primer lugar. El bloque 820 recibe información lateral 532 que indica, por cada par de señales indicado por la información de pares de señales ilustrada en el bloque 630 y, por ejemplo, implementado de la manera explicada con respecto a la figura 4, si el par específico consistió en un procedimiento mono dual, MS completo o MS por banda con una máscara de MS asociada.
Subsiguientemente al procesamiento inverso realizado en el bloque 820, se ejecuta una desnormalización de las señales incluidas en los pares de canales en el bloque 830 una vez más basándose en la información lateral 534 que indica una información de normalización por cada canal. La desnormalización ilustrada con respecto al bloque 830 de la figura 14 es preferentemente un reescalado utilizando el valor de normalización de la energía como escalado descendente cuando una bandera 534a tiene un primer valor, y para ejecutar el reescalado en forma de escalado ascendente cuando la bandera 534a tiene el segundo valor, que es diferente del primer valor.
La figura 15a ilustra una implementación preferida as un diagrama de bloques el decodificador de señales and el procesador conjunto de señal de la figura 10, y la figura 15b ilustra una representación en diagrama de bloques de una implementación preferida del posprocesador 900 de la figura 10.
El decodificador de señales 700 comprende un decodificador y una etapa de descuantificación 710 para los espectros incluidos en la señal codificada 500. El decodificador de señales 700 comprende un asignador de bits 720 que recibe, como información lateral, preferentemente la longitud de ventana, el modo estéreo determinado y la información de asignación de bits por cada señal codificada. El asignador de bits 720 ejecuta la asignación de bits utilizando específicamente, en una implementación preferida, las etapas 290, 291, 292, 293, en que se utiliza la información de asignación de bits por cada señal codificada en la etapa 291, y donde la información sobre la longitud de ventana y el modo estéreo es utilizada en el bloque 290 o 291.
En el bloque 730, se ejecuta un llenado de ruido también preferentemente utilizando la información lateral de llenado de ruido en el caso de los rangos del espectro que se cuantifican a cero y que no están dentro del rango del IGF. El llenado de ruido se limita preferentemente a una porción de banda baja de la señal emitida por el bloque 710. En el bloque 810, y utilizando cierta información lateral, se ejecuta un llenado inteligente de huecos o, en general, un procesamiento de extensión del ancho de banda que, como es de importancia, opera sobre los espectros blanqueados.
En el bloque 820, y utilizando la información lateral, el procesador estéreo inverso ejecuta los procedimientos para deshacer el procesamiento ejecutado en la figura 2, elementos 240. El desescalado final se realiza utilizando el parámetro de ILD transmitido por cada canal que está incluido en la información lateral. La salida de bloque 830 se introduce en el bloque 910 del posprocesador que ejecuta un procesamiento de TNS inverso y/o un procesamiento inverso de conformación de ruido en el dominio de la frecuencia o cualquier otra operación de desblanqueado. La salida del bloque 910 es un espectro sencillo que se convierte al dominio del tiempo mediante un conversor frecuencia a tiempo 920. Las salidas del bloque 920 para tramas adyacentes son sometidas a traslape y suma en un procesador de traslape y suma 930 de conformidad con la regla de codificación o decodificación específica para obtener en última instancia, de la operación de traslape, la multiplicidad de señales de audio decodificadas o, en general, la señal de audio decodificada 1000. Esta señal 1000 puede consistir en canales individuales o puede consistir en componentes de la descripción de un campo sonoro tales como componentes Ambisonics, o puede consistir en cualquier otro componente de una descripción Ambisonics de orden más alto. La señal puede ser asimismo una señal de un formato A o de formato B o una descripción de cualquier otro formato de un campo sonoro. Todas estas alternativas están indicadas colectivamente como señal de audio decodificada 1000 en la figura 15b.
A continuación se indican otras ventanas y características específicas de las realizaciones preferidas.
El alcance de la presente invención consiste en ofrecer una solución a los principios de [6]. en el procesamiento de señales perceptualmente blanqueadas y con ILD compensada.
° El FDNS con bucle de tasa descrito en [8] combinado con la distorsión de la envolvente espectral descrita en [9] confiere una manera sencilla aunque muy eficaz de separar la conformación espectral del ruido de cuantificación y el bucle de tasa.
° El uso del nivel de energía media para todos los canales del espectro blanqueado por FDNS otorga una manera sencilla y eficaz de decidir si existe una ventaja del procesamiento M/S descrito en [7] por cada par de canales que se selecciona para la codificación conjunta.
° La codificación de una única ILD de banda ancha por cada canal en el sistema descrito es suficiente y, de esa manera, se obtiene un ahorro de bits a diferencia de las estrategias conocidas.
° La selección de pares de canales para la codificación conjunta con señales con alta correlación cruzada por lo general da lugar a una transformada M/S del espectro completo, por lo tanto hay un ahorro medio adicional de bits, ya que se reemplaza en gran parte la señalización de M/S o L/R por cada banda con un solo bit de señalización de transformada M/S completa.
° Distribución de bits flexible y sencilla basada en las energías de los canales procesados.
Características de las realizaciones preferidas
Como se describió en los párrafos anteriores, en esta implementación, el códec utiliza nuevos medios para combinar la flexibilidad de la codificación conjunta adaptativa a la señal de canales arbitrarios como se describe en [6] mediante la introducción de los conceptos descritos en [7]. para la codificación conjunta estéreo. La novedad de la invención propuesta está resumida en las siguientes diferencias:
° El procesamiento conjunto por cada par de canales difiere del procesamiento multicanal descrito en [6] en lo que respecta a la compensación de ILD global. La ILD global ecualiza el nivel de los canales antes de seleccionar los pares de canales y realizar la decisión y procesamiento de M/S y, de esa manera, habilita una codificación estéreo más eficiente, especialmente de las fuentes paneadas.
° El procesamiento conjunto por cada par de canales difiere del el procesamiento estéreo descrito en [7] en lo que respecta a la compensación de ILD global. En el sistema propuesto, no hay compensación de ILD global por cada par de canales. Para poder utilizar el mecanismo de decisión M/S descrito en [7] en el caso de canales arbitrarios, hay una normalización detodoslos canales a un único nivel de energía, es decir un nivel medio de energía. Esta normalización tiene lugar antes de la selección de los pares de canales para el procesamiento conjunto.
° Después del proceso adaptativo de selección de pares de canales, si hay canales que no forman parte de un par de canales para el procesamiento conjunto, su nivel de energía se invierte al nivel de energía inicial.
° No se implementa la distribución de bits para la codificación de entropía en cada par de canales según lo descrito en [7]. Por el contrario, las energías de todos los canales son tomadas en cuenta y los bits se distribuyen de acuerdo con lo descrito en el párrafo respectivo de este documento.
° Hay un modo de “baja complejidad” explícita de la selección adaptativa de pares de canales descrita en [6], en que no se admite que un canal individual que es parte de un par de canales durante el proceso iterativo de selección de pares de canales sea parte de otro par de canales durante la siguiente iteración del proceso de selección de pares de canales.
° La ventaja del uso de una sencilla M/S por banda por cada par de canales y, por lo tanto, la reducción de la cantidad de información que se debe transmitir dentro del flujo de bits se potencia debido a que utilizamos la selección adaptativa a la señal de pares de canales de [6]. Mediante la elección de canales altamente correlacionados para codificar conjuntamente, una transformada M/S de banda ancha es óptima en la mayoría de los casos, es decir que se utiliza la codificación M/S para todas las bandas. Esto puede ser señalizado con un solo bit y, por lo tanto, requiere una cantidad significativamente menor de información de señalización en comparación con una decisión de M/S por banda. Reduce significativamente la cantidad total de bits de información que se deben transmitir para todos los pares de canales.
Las realizaciones de la invención se relacionan con una codificación conjunta adaptativa a la señal de un sistema multicanal con espectros perceptualmente blanqueados y con ILD compensada, donde la codificación conjunta consiste en una sencilla decisión de transformación M/S por banda basada en el número estimado de bits para un codificador de entropía.
Aunque se han descrito algunos aspectos en el contexto de un aparato, está claro que estos aspectos también representan una descripción del método correspondiente, donde un bloque o dispositivo corresponde a una etapa de método o una característica de una etapa de método. De manera análoga, los aspectos descritos en el contexto de una etapa de método también representan una descripción de un bloque o elemento o característica correspondiente de un aparato correspondiente. Algunos o todas las etapas del método pueden ser ejecutados por (o utilizando) un aparato de hardware, como por ejemplo, un microprocesador, un ordenador programable o un circuito electrónico. En algunas realizaciones, alguna o más de las etapas de método más importantes pueden ejecutarse por un aparato de este tipo.
La señal de audio codificada de la invención puede ser almacenada en un medio de almacenamiento digital o puede ser transmitida por un medio de transmisión tal como un medio de transmisión inalámbrico o un medio de transmisión conectado por cables tal como internet.
Dependiendo de ciertos requisitos de implementación, las realizaciones de la invención se pueden implementar en hardware o en software. La implementación se puede realizar empleando un medio de almacenamiento digital, por ejemplo, un disco blando, un Dv D, un Blu-Ray, un CD, una ROM, una PROM, una EPROM, una EEPROM o una memoria FLASH, que tiene almacenadas en la misma señales control legibles electrónicamente, que cooperan (o tienen capacidad para cooperar) con un sistema informático programable de tal manera que se ejecute el método respectivo. Por lo tanto, el medio de almacenamiento digital puede ser legible por ordenador.
Algunas realizaciones de acuerdo con la invención comprenden un transportador de datos que comprende señales de control legibles electrónicamente, con capacidad para cooperar con un sistema informático programable de tal manera que se ejecute uno de los métodos descritos en la presente.
En general, las realizaciones de la presente invención pueden ser implementadas en forma de producto programa informático con un código de programa, donde el código de programa cumple la función de ejecutar uno de los métodos al ejecutar el programa informático en un ordenador. El código de programa puede ser almacenado, por ejemplo, en un portador legible por una máquina.
Otras realizaciones comprenden el programa informático para llevar a cabo uno de los métodos descritos en el presente documento, almacenados en un soporte legible por máquina.
En otras palabras, una forma de realización del método de la invención consiste, por lo tanto, en un programa informático que consta de un código de programa para ejecutar uno de los métodos aquí descritos al ejecutar el programa informático en un ordenador.
Una forma de realización adicional de los métodos de la invención consiste, por lo tanto, en un portador de datos (o medio de almacenamiento digital, o medio legible por ordenador) que comprende, grabado en el mismo, el programa informático para ejecutar uno de los métodos aquí descritos. El portador de datos, el medio de almacenamiento digital o el medio grabado son por lo general tangibles y/o no transitorios.
Otra realización del método de la invención es, por lo tanto, un flujo de datos o una secuencia de señales que representa el programa informático para ejecutar uno de los métodos aquí descritos. El flujo de datos o la secuencia de señales puede estar configurada, por ejemplo, para ser transferida 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ótico programable, configurado o adaptado para realizar uno de los métodos descritos en el presente 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 el presente documento.
Otra de las realizaciones de acuerdo con la invención comprende un aparato o un sistema configurado para transferir (por ejemplo, por vía electrónica u óptica) un programa informático para ejecutar uno de los métodos aquí descritos a un receptor. El receptor puede ser, por ejemplo, un ordenador, un dispositivo móvil, un dispositivo de memoria o similar. El aparato o sistema puede comprender, por ejemplo, un servidor de archivos para transferir un programa informático al receptor.
En algunas realizaciones, puede usarse un dispositivo lógico programable (por ejemplo, una matriz de puertas programable en el campo) para realizar algunas o todas de las funcionalidades de los métodos descritos en el presente documento. En algunas realizaciones, una matriz de puertas programable en el campo puede actuar conjuntamente con un microprocesador con el fin de realizar uno de los métodos descritos en el presente documento. Por lo general, los métodos son ejecutados preferentemente por cualquier aparato de hardware.
El aparato descrito en el presente documento puede implementarse usando un aparato de hardware o usando un ordenador o usando una combinación de un aparato de hardware y un ordenador.
Los métodos descritos en el presente documento pueden realizarse usando un aparato de hardware o usando un ordenador o usando una combinación de un aparato de hardware y un ordenador.
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 los detalles descritos en el presente documento resultarán evidentes para otros expertos en la técnica. La intención es, por tanto, quedar limitado solo por el alcance de las reivindicaciones de patente inminente y no por los detalles específicos presentados a modo de descripción y explicación de las realizaciones en el presente documento.
Bibliografía
[1] "Information technology - MPEG audio technologies Part 3: Unified speech and audio coding," ISO/IEC 23003-3, 2012.
[2] "Information technology - MPEG audio technologies Part 1: MPEG Surround", ISO/IEC 23003-1, 2007.
[3] J. Herre, J. Hilpert, K. Achim y J. Plogsties, "MPEG-H 3D Audio-The New Standard for Coding of Immersive Spatial Audio", Journal of Selected Topics in Signal Processing, vol. 5, n.° 9, pp. 770-779, agosto de 2015.
[4] "Digital Audio Compression (AC-4) Standard," ETSI TS 103 190 V1.1.1, 2014-04.
[5] D. Yang, H. Ai, C. Kyriakakis y C. Kuo, "High-fidelity multichannel audio coding with Karhunen-Loeve transform", Transactions on Speech and Audio Processing, vol. 11, no. 4, pp. 365-380, julio de 2003.
[6] F. Schuh, S. Dick, R. Füg, C. R. Helmrich, N. Rettelbach y T. Schwegler, "Efficient Multichannel Audio Transform Coding with Low Delay and Complexity", en AES Convention, Los Ángeles, 20 de septiembre de 2016.
[7] G. Markovic, E. Fotopoulou, M. Multrus, S. Bayer, G. Fuchs, J. Herre, E. Ravelli, M. Schnell, S. Doehla, W. Jaegers, M. Dietz y C. Helmrich, "Apparatus and method for mdct m/s stereo with global ild with improved mid/side decision". Patente internacional WO2017125544A1, 27 de julio de 2017.
[8] 3GPP TS 26.445, Codecfor Enhanced Voice Services (EVS); Detailed algorithmic description.
[9] G. Markovic, F. Guillaume, N. Rettelbach, C. Helmrich y B. Schubert, "Linear prediction based coding scheme using spectral domain noise shaping". Patente de la UE 2676266 B1, 14 de febrero de 2011.
[10] S. Disch, F. Nagel, R. Geiger, B. N. Thoshkahna, K. Schmidt, S. Bayer, C. Neukam, B. Edler y C. Helmrich, "Audio Encoder, Audio Decoder and Related Methods Using Two-Channel Processing Within an intelligent Gap Filling Framework". Patente internacional PCT/EP2014/065106, 15072014.
[11] "Codec for Encanced Voice Services (EVS); Detailed algorithmic description", 3GPP TS 26.445 V 12.5.0, diciembre de 2015.
[12] "Codec for Encanced Voice Services (EVS); Detailed algorithmic description", 3GPP TS 26.445 V 13.3.0, septiembre de 2016.
[13] Sascha Dick, F. Schuh, N. Rettelbach , T. Schwegler, R. Fueg, J. Hilpert y M. Neusinger, "APPARATUS AND METHOD FOR ENCODING OR DECODING A MULTI-CHANNEL SIGNAL". Patente internacional PCT/EP2016/054900, 08 de marzo de 2016.
Claims (1)
- REIVINDICACIONESCodificador multiseñal para codificar por lo menos tres señales de audio, que comprende:un preprocesador de señales (100) para preprocesar en forma individual cada señal de audio para obtener por lo menos tres señales de audio preprocesadas, donde el preprocesamiento es ejecutado de tal manera que una señal de audio preprocesada se blanquee con respecto a la señal con anterioridad al preprocesamiento;un procesador adaptativo de señal conjunta (200) para realizar un procesamiento de las al menos tres señales de audio preprocesadas posterior a una normalización del nivel de energía realizada por el procesador adaptativo de señal conjunta (200) para obtener, en una primera alternativa, al menos tres señales procesadas conjuntamente o, en una segunda alternativa, al menos dos señales procesadas conjuntamente y una señal sin procesar, en la que, para realizar la normalización del nivel de energía, el procesador adaptativo de señal conjunta (200) está configurado para:calcular (212) una información sobre una energía media de las señales de audio preprocesadas; calcular (211) una información sobre una energía de cada señal de audio preprocesada,para calcular el valor de normalización de la energía de banda ancha (534) para una señal de audio preprocesada específica basándose en la información sobre la energía media y la información sobre la energía de la señal de audio preprocesada específica, ypara realizar una normalización de energía de banda ancha (210) de las al menos tres señales de audio preprocesadas utilizando los valores de normalización de energía de banda ancha (534) para las señales de audio preprocesadas específicas, en las que cada señal de audio preprocesada tiene una energía normalizada, yen donde el procesador adaptativo de señal conjunta (200) está configurado:para calcular (220) valores de correlación cruzada para cada posible par de señales de las señales preprocesadas que tengan las energías normalizadas de las al menos tres señales preprocesadas; para seleccionar (229) el par de señales que tenga el mayor valor de correlación cruzada;para determinar (232a) un modo de procesamiento estéreo conjunto para el par de señales seleccionado; y para procesar estéreo conjuntamente (232b) el par de señales seleccionado de acuerdo con el modo de procesamiento estéreo conjunto determinado para obtener un par de señales procesadas;un codificador de señales (300) para codificar cada señal y obtener una o más señales codificadas (510); y una interfaz de salida (400) para transmitir o almacenar una señal de audio multiseñal codificada que comprende una o más señales codificadas (510), información lateral relativa al preprocesamiento (520) e información lateral relativa al procesamiento (530) que comprende los valores de normalización de energía de banda ancha (534) para las señales de audio preprocesadas.Codificador multiseñal de la reivindicación 1,en donde el procesador adaptativo de señales conjunta (200) está configurado para calcular (213, 214) una relación de escala (534b) como valor de normalización de energía de banda ancha (534) para la señal de audio preprocesada específica a partir de la energía media y la energía de la señal de audio preprocesada específica, yen donde el procesador adaptativo de señal conjunta (200) está configurado para determinar una bandera (534a) que indica si la relación de escalado (534b) es para un escalado ascendente o descendente, y en donde la bandera (534b) para cada señal de audio preprocesada se incluye en la información lateral relativa al procesamiento (530).Codificador multiseñal de la reivindicación 2,en donde el procesador adaptativo de señal conjunta (200) está configurado para cuantizar (214) la relación de escala (534b) en el mismo rango de cuantización, independientemente de si la escala es ascendente o descendente.4. Codificador multiseñal de la reivindicación 1, en donde el procesador adaptativo de señal conjunta (200) está configurado para aplicar un procesamiento de pares de señales en cascada,en donde, en el procesamiento de pares de señales en cascada, las señales de un par de señales procesadas son seleccionables en una etapa de iteración adicional que consiste en un cálculo de los valores de correlación cruzada actualizados, la selección del par de señales que tenga el valor de correlación cruzada más alto, la determinación de un modo de procesamiento estéreo conjunto para el par de señales seleccionado y el procesamiento estéreo conjunto del par de señales seleccionado de acuerdo con el modo de procesamiento estéreo conjunto determinado.5. Codificador multiseñal de la reivindicación 1, en donde el procesador adaptativo de señal conjunta (200) está configurado para aplicar un procesamiento de pares de señales no en cascada, yen donde, en el procesamiento de pares de señales no en cascada, las señales de un par de señales procesadas no son seleccionables en una selección adicional del par de señales que tiene el valor de correlación cruzada más alto, la determinación de un modo de procesamiento estéreo conjunto para el par de señales seleccionado, y el procesamiento estéreo conjunto del par de señales seleccionado de acuerdo con el modo de procesamiento estéreo conjunto determinado.6. Codificador multiseñal de acuerdo con una de las reivindicaciones anteriores,en donde el procesador adaptativo de señal conjunta (200) está configurado para determinar la señal que se va a codificar individualmente como señal remanente tras un procedimiento de procesamiento por pares, yen donde el procesador adaptativo de señal conjunta (200) está configurado para modificar una normalización de energía aplicada a la señal antes de realizar el procedimiento de procesamiento por pares, como revertir (237), o revertir al menos parcialmente la normalización de energía (210) aplicada a la señal antes de realizar el procedimiento de procesamiento por pares.7. Codificador multiseñal de una de las reivindicaciones anteriores,en donde el procesador de señal conjunta adaptable (200) está configurado para determinar, para cada señal que va a procesar el codificador de señal (300), una información de distribución de bits (536), en el que la interfaz de salida (400) está configurada para introducir la información de distribución de bits (536), para cada señal, en la información lateral relativa al procesamiento (530).8. Codificador multiseñal de una de las reivindicaciones anteriores,en donde el procesador adaptativo de señal conjunta (200) está configurado para calcular (282) una información de energía de señal de cada señal que va a ser procesada por el codificador de señales (300),calcular (284) una energía total de la pluralidad de señales a codificar por el codificador de señales (300);calcular (286) una información de distribución de bits (536) para cada señal basándose en la información de energía de la señal y en la información de energía total, yen donde la interfaz de salida (400) está configurada para introducir la información de distribución de bits (536), para cada señal, en la información lateral relativa al procesamiento (530).9. Codificador multiseñal de la reivindicación 8,en donde el procesador adaptativo de señal conjunta (200) está configurado para asignar (290) un número inicial de bits a cada señal, para asignar (291) un número de bits basado en la información de distribución de bits (536), para realizar (292), una etapa de refinamiento adicional, o para realizar (292) una etapa de donación final, yen donde el codificador de señales (300) está configurado para realizar la codificación de cada señal utilizando los bits asignados por señal.10. Codificador multiseñal de una de las reivindicaciones anteriores, en donde el preprocesador de señal (100) está configurado para realizar, para cada señal de audio:una operación de conversión de tiempo a espectro (108, 110, 112) para obtener un espectro de señal para cada señal de audio;una operación de conformación temporal del ruido (114a, 114b) y/o una operación de conformación del ruido en el dominio de la frecuencia (116) para cada espectro de señal, yen donde el preprocesador de señales (100) está configurado para introducir los espectros de señal en el procesador conjunto de señal adaptativo (200) tras la operación de conformación temporal del ruido y/o la operación de conformación del ruido en el dominio de la frecuencia, yen donde el procesador adaptativo de señal conjunta (200) está configurado para realizar el procesamiento estéreo conjunto en los espectros de señal recibidos.11. Codificador multiseñal de una de las reivindicaciones anteriores, en donde el procesador adaptativo de señal conjunta (200) está configuradopara determinar, para cada señal de un par de señales seleccionado, una velocidad de bits necesaria para un modo de codificación separada de banda completa, como L/R, o una velocidad de bits necesaria para un modo de codificación conjunta de banda completa, como M/S, o una velocidad de bits para un modo de codificación conjunta de banda ancha, como M/S, más los bits necesarios para la señalización de banda ancha, como la máscara M/S,determinar el modo de codificación separado o el modo de codificación conjunto como el modo específico para todas las bandas de un par de señales, cuando se haya determinado una mayoría de bandas para el modo específico, y la minoría de las bandas que sea inferior al 10% de todas las bandas se haya determinado para el otro modo de codificación, o determinar el modo de codificación que requiera la menor cantidad de bits, yen donde la interfaz de salida (400) está configurada para incluir una indicación (532) en la información lateral relativa al procesamiento(530), indicando la indicación (532) el modo específico para todas las bandas de una trama en lugar de una máscara de modo de codificación para la trama.12. Codificador multiseñal de una de las reivindicaciones anteriores,en donde el codificador de señal (300) comprende un procesador de bucle de tasa para cada señal individual o a través de dos o más señales, estando el procesador de bucle de tasa configurado para recibir y utilizar una información de distribución de bits (536) para la señal específica o para dos o más señales.13. Codificador multiseñal de una de las reivindicaciones anteriores,en donde el procesador adaptativo de señal conjunta (200) está configurado para seleccionar adaptativamente pares de señales para su codificación conjunta, o en el que el procesador adaptativo de señal conjunta (200) está configurado para determinar, para cada par de señales seleccionado, un modo de codificación de banda media/lateral, un modo de codificación de banda completa media/lateral o un modo de codificación de banda completa izquierda/derecha, yen donde la interfaz de salida (400) está configurada para incluir en la información lateral relativa al procesamiento(530), una información (532) que indica el modo de codificación seleccionado en la señal de audio multiseñal codificada.14. Codificador multiseñal de una de las reivindicaciones anteriores,en donde el procesador adaptativo de señal conjunta (200) está configurado para formar una decisión de banda media/lateral frente a una decisión izquierda/derecha basada en una tasa de bits estimada en cada banda cuando se codifica en el modo medio/lateral o en el modo izquierda/derecha, y en el que se determina un modo de codificación conjunta final basado en los resultados de la decisión de banda media/lateral frente a la decisión izquierda/derecha.15. Codificador multiseñal de una de las reivindicaciones anteriores, en donde el procesador adaptativo de señal conjunta (200) está configurado para realizar (260) un procesamiento de replicación de banda espectral o un procesamiento de relleno inteligente de huecos para determinar información lateral paramétrica para el procesamiento de replicación de banda espectral o el procesamiento de relleno inteligente de huecos, y en el que la interfaz de salida (400) está configurada para incluir la información lateral de replicación de banda espectral o de relleno inteligente de huecos (532) como información lateral adicional en la información lateral relativa al procesamiento (530).16. Codificador multiseñal de la reivindicación 15,en donde el procesador adaptativo de señal conjunta (200) está configurado para realizar un procesamiento de relleno inteligente de huecos estéreo para un par de señales codificadas y, adicionalmente, para realizar un procesamiento de relleno inteligente de huecos de señal única para la al menos una señal a codificar individualmente.17. Codificador multiseñal de una de las reivindicaciones anteriores,en donde las al menos tres señales de audio incluyen una señal de realce de baja frecuencia, y en el que el procesador adaptativo de señal conjunta (200) está configurado para aplicar una máscara de señal, indicando la máscara de señal para qué señales debe estar activo el procesador adaptativo de señal conjunta (200), y en el que la máscara de señal indica que la señal de realce de baja frecuencia no debe utilizarse en el procesamiento por pares de las al menos tres señales de audio preprocesadas.18. Codificador multiseñal de una de las reivindicaciones 1 a 3, en donde el procesador adaptativo de señal conjunta (200) está configurado para calcular, como información sobre la energía de cada señal preprocesada, una energía de un espectro MDCT de cada señal preprocesada, opara calcular, como información sobre la energía media de las al menos tres señales de audio preprocesadas, una energía media de los espectros MDCT de las al menos tres señales de audio preprocesadas.19. Codificador multiseñal de una de la reivindicaciones 1 a 3,en donde el procesador adaptativo de señal conjunta (200) está configurado para calcular (213) un factor de escala para cada señal basado en la información sobre la energía para la señal específica y la información sobre la energía media de las al menos tres señales de audio preprocesadas,en donde el procesador adaptativo de señal conjunta (200) está configurado para cuantificar (214) la relación de escala para obtener un valor de relación de escala cuantificado, utilizándose el valor de relación de escala cuantificado para derivar información lateral de la relación de escala para cada señal incluida en la señal de audio multiseñal codificada, yen donde el procesador adaptativo de señal conjunta (200) está configurado para derivar, a partir del valor de la relación de escala cuantificada, una relación de escala cuantificada, en la que la señal de audio preprocesada se escala utilizando la relación de escala cuantificada antes de ser utilizada para el procesamiento por pares de la señal escalada con otra señal correspondientemente escalada.20. Codificador multiseñal de una de las reivindicaciones anteriores,en donde el procesador adaptativo de señal conjunta (200) está configurado para calcular (221) valores normalizados de correlación cruzada entre señales para los posibles pares de señales con el fin de decidir y seleccionar qué par de señales tiene el mayor grado de similitud y, por lo tanto, es adecuado para ser seleccionado como par para el procesamiento por pares de las al menos tres señales de audio preprocesadas,en donde valores de correlación cruzada normalizados por cada par de señal son almacenadas en el vector de correlación cruzada, yen donde el procesador adaptativo de señal conjunta (200) está configurado para determinar, si una selección de pares de señales de uno o más fotogramas anteriores debe retenerse o no mediante la comparación (222, 223) de un vector de correlación cruzada del fotograma anterior con el vector de correlación cruzada del fotograma actual, y en el que la selección de pares de señales del fotograma anterior se retiene (225), cuando una diferencia entre el vector de correlación cruzada del fotograma actual y el vector de correlación cruzada del fotograma anterior es inferior a un umbral predefinido.21. Codificador multiseñal de una de las reivindicaciones anteriores,en donde el preprocesador de señales (100) está configurado para realizar una conversión tiempo-frecuencia utilizando una determinada longitud de ventana seleccionada entre una pluralidad de longitudes de ventana diferentes,en donde el procesador adaptativo de señal conjunta (200) está configurado para determinar, al comparar las señales de audio preprocesadas para determinar un par de señales que deben procesarse por pares, si el par de señales tiene la misma longitud de ventana asociada, yen donde el procesador adaptativo de señal conjunta (200) está configurado para permitir únicamente el procesamiento por pares de dos señales, cuando las dos señales tienen asociada la misma longitud de ventana aplicada por el preprocesador de señales (100).22. Codificador multiseñal de una de las reivindicaciones anteriores,en donde el procesador de señales conjunto adaptativo (200) está configurado para aplicar un procesamiento de pares de señales no en cascada, en el que las señales del par de señales procesado no son seleccionables en un procesamiento de pares de señales posterior, en el que el procesador de señales conjunto adaptativo (200) está configurado para seleccionar los pares de señales basándose en una correlación cruzada entre los pares de señales para el procesamiento por pares, y en el que el procesamiento por pares de varios pares de señales seleccionados se realiza en paralelo.23. Codificador multiseñal de la reivindicación 22,en donde el procesador adaptativo de señal conjunta (200) está configurado para determinar, para un par de señales seleccionado, un modo de codificación estéreo, y en el que, cuando se determina que el modo de codificación estéreo es un modo mono dual, las señales implicadas en este par de señales se reescalan al menos parcialmente y se indican como señales que deben codificarse individualmente.24. Codificador multiseñal de una de la reivindicaciones 15 y 16,en donde el procesador de señal conjunta adaptativo (200) está configurado para realizar, para un par de señales procesadas, una operación de relleno inteligente de huecos estéreo (IGF), si un modo estéreo de la región central es diferente de un modo estéreo de la región IGF, o si el modo estéreo de la región central está marcado como codificación de banda media/lateral, oen donde el procesador adaptativo de señal conjunta (200) está configurado para aplicar un análisis IGF de señal única para las señales de un par de señales procesadas por pares, si el modo estéreo de la región del núcleo no es diferente del modo estéreo de la región IGF o si el modo estéreo del núcleo no está marcado como modo de codificación de decisión de banda media/lateral.25. Codificador multiseñal de una de las reivindicaciones anteriores,en donde el procesador de señal conjunta adaptable (200) está configurado para realizar una operación inteligente de relleno de huecos, antes de que un resultado de la operación IGF sea codificado individualmente por el codificador de señal (300),en donde se utiliza un espectro de potencia para determinar la tonalidad/ruido en una cuantificación y relleno inteligente de huecos (IGF), y en el que el preprocesador de señal (100) está configurado para realizar la misma conformación de ruido en el dominio de la frecuencia para un espectro MDST que la que se ha aplicado al espectro MDCT, yen donde el procesador adaptativo de señal conjunta (200) está configurado para realizar el mismo procesamiento medio/lateral a un espectro MDST preprocesado, de modo que el resultado de un espectro MOST procesado se utiliza en una cuantización realizada por el codificador de señales (300) o en un procesamiento inteligente de relleno de huecos realizado por el procesador adaptativo de señal conjunta (200), oen donde el procesador adaptativo de señal conjunta (200) está configurado para aplicar al espectro MDST el mismo escalado de normalización basado en el vector de escalado de banda completa que se aplicó al espectro MDCT utilizando los mismos vectores de escalado cuantizados.26. Codificador multiseñal de una de las reivindicaciones anteriores, en donde el procesador adaptativo de señal conjunta (200) está configurado para realizar un procesamiento por pares de las al menos tres señales de audio preprocesadas para obtener las al menos tres señales procesadas conjuntamente o al menos dos señales procesadas conjuntamente y una señal a codificar individualmente.27. Codificador multiseñal de una de las reivindicaciones anteriores, en donde las señales de audio de las al menos tres señales de audio son canales de audio, oen donde las señales de audio de las al menos tres señales de audio son señales de componentes de audio de una descripción de campo sonoro, como una descripción de campo sonoro Ambisonics, una descripción en formato B, una descripción en formato A o cualquier otra descripción de campo sonoro, como una descripción de campo sonoro que describa un campo sonoro con respecto a una ubicación de referencia.28. Codificador multiseñal de una de las reivindicaciones anteriores,en donde el codificador de señales (300) está configurado para codificar individualmente cada señal a fin de obtener al menos tres señales codificadas individualmente, o para realizar una codificación (de entropía) con más de una señal.29. Decodificador multiseñal para decodificar una señal codificada, que comprende:un decodificador de señales (700) para decodificar al menos tres señales codificadas;un procesador conjunto de señal (800) configuradopara extraer (610), a partir de la señal codificada, un valor de normalización de energía (534, 534a, 534b) para cada señal estéreo decodificada conjunta, realizar un procesamiento conjunto de la señal que comprenda el procesamiento por pares (820) de las señales decodificadas utilizando un modo estéreo conjunto según lo indicado por la información lateral (530) incluida en la señal codificada para obtener señales estéreo decodificadas conjuntas, ypara reescalar energéticamente (830) las señales decodificadas estéreo conjuntas utilizando los valores de normalización de energía (534, 534a, 534b) para obtener al menos tres señales decodificadas procesadas; y un posprocesador (900) para posprocesar las al menos tres señales decodificadas procesadas de acuerdo con la información lateral (530) incluida en la señal codificada, en el que el posprocesado se realiza de modo que las señales posprocesadas sean menos blancas que las señales antes del posprocesado, y en el que las señales posprocesadas representan una señal de audio decodificada.30. Decodificador multiseñal de la reivindicación 29,en donde el procesador de señal conjunta (800) está configurado para comprobar, si un valor de normalización de energía (534, 534a, 534b) extraído de la señal codificada para una señal específica tiene un valor predefinido, yen donde el procesador de señal conjunta (800) está configurado para no realizar un reescalado de energía o para realizar únicamente un reescalado de energía reducido a la señal específica, cuando el valor de normalización de energía (534, 534a, 534b) tiene el valor predefinido.31. Decodificador multiseñal de una de las reivindicaciones 29 o 30, en donde el decodificador de señal (700) está configuradopara extraer (620), de la señal codificada, un valor de distribución de bits para cada señal codificada, para determinar (720) una distribución de bits utilizada para una señal utilizando el valor de distribución de bits para la señal, un número de bits restantes para todas las señales, y una etapa de refinamiento adicional, o una etapa de donación final; ypara realizar (710, 730) la decodificación individual basada en la distribución de bits utilizada para cada señal.32. Decodificador multiseñal de una de las reivindicaciones 29 a 31, en donde el procesador conjunto de señal (800) está configuradopara realizar (820) un procesamiento de replicación de bandas o de relleno inteligente de huecos a las señales decodificadas individualmente utilizando información lateral en la señal codificada para obtener señales individuales mejoradas espectralmente, ypara realizar un procesamiento conjunto (820) de acuerdo con un modo de procesamiento conjunto utilizando las señales individuales mejoradas espectralmente.33. Decodificador multiseñal de la reivindicación 32,en donde el procesador conjunto de señal (800) está configurado para transformar un rango de origen de una representación estereoscópica a otra representación estereoscópica, cuando se indica que un rango de destino tiene la otra representación estereoscópica.34. Decodificador multiseñal de una de las reivindicaciones 29 a 33, en donde el procesador conjunto de señal (800) está configuradopara extraer, de la señal codificada, una bandera (534, 534a) que indique si el valor de normalización de la energía (534, 534b) es un valor de aumento de escala o un valor de reducción de escala, ypara realizar (830) el reescalado de energía utilizando el valor de normalización de energía (534, 534b) como un escalado descendente, cuando la bandera (534, 534a) tiene un primer valor y como un escalado ascendente, cuando la bandera (534, 534a) tiene el segundo valor diferente del primer valor.35. Decodificador multiseñal de una de las reivindicaciones 29 a 34, en donde el procesador conjunto de señal (800) está configuradopara extraer (630), de la señal codificada, una información lateral (532) que indique los pares de señales resultantes de una operación de codificación conjunta,para realizar (820) un procesamiento estéreo o multicanal inverso comenzando por un último par de señales para obtener la señal codificada, con el fin de volver a convertir a espectros originales preprocesados de cada señal, y realizar el procesamiento estéreo inverso basándose en el modo estéreo y/o en una decisión de banda media/lateral como se indica en la información lateral (532) para la señal codificada.36. Decodificador multiseñal de una de la reivindicaciones 29 a 35,en donde el procesador de señal conjunto (800) está configurado para reescalar energéticamente (830) todas las señales estéreo decodificadas conjuntas implicadas en pares de señales a un nivel de energía original correspondiente basado en valores de normalización de energía cuantizados (534, 534a, 534b) para cada señal estéreo decodificada conjunta, y en donde otras señales que no estaban implicadas en el procesamiento de pares de señales no se reescalan energéticamente como las señales implicadas en el procesamiento de pares de señales.37. Decodificador multiseñal de una de la reivindicaciones 29 a 36,en donde el posprocesador (900) está configurado para realizar, para cada señal decodificada procesada individualmente, una operación de conformación de ruido temporal (910) o una operación de conformación de ruido en el dominio de la frecuencia (910) y una conversión (920) de un dominio espectral a un dominio temporal y una posterior operación de superposición/adición (930) entre fotogramas temporales posteriores de una señal posprocesada.38. Decodificador multiseñal de una de la reivindicaciones 29 a 37,en donde el procesador conjunto de señal (800) está configurado para extraer, de la señal codificada, una bandera que indica si varias bandas de un intervalo de tiempo de un par de señales se van a procesar inversamente utilizando codificación media/lateral o izquierda/derecha, y en el que el procesador conjunto de señal (800) está configurado para utilizar esta bandera para someter colectivamente las bandas correspondientes del par de señales a procesamiento medio/lateral o izquierdo/derecho en función del valor de la bandera, yen donde, para un intervalo de tiempo diferente para el mismo par de señales o para un par de señales diferente en el mismo intervalo de tiempo, se extrae de la información lateral de la señal codificada una máscara de modo de codificación que indica, para cada banda individual, un modo de codificación individual, y en el que el procesador de señal conjunto (800) está configurado para aplicar o un procesamiento medio/lateral inverso o bien un procesamiento izquierdo/derecho para la banda correspondiente tal como se indica para un bit asociado a esta banda.39. Decodificador multiseñal de una de las reivindicaciones 29 a 38, en donde la señal codificada es una señal multicanal codificada, en donde el decodificador multiseñal es un decodificador multicanal, en donde la señal codificada es una señal multicanal codificada, en el que el decodificador de señales (700) es un decodificador de canales, en donde las señales codificadas son canales codificados, en donde el procesamiento conjunto de señales es un procesamiento conjunto de canales, en donde las al menos tres señales decodificadas procesadas son al menos tres señales decodificadas procesadas, en donde las señales posprocesadas son canales, oen donde la señal codificada es una señal multicomponente codificada que representa señales de componentes de audio de una descripción de campo sonoro tal como una descripción de campo sonoro Ambisonics, una descripción de formato B, una descripción de formato A o cualquier otra descripción de campo sonoro tal como una descripción de campo sonoro que describa un campo sonoro con respecto a una ubicación de referencia, en la que el decodificador multiseñal es un decodificador multicomponente, en donde la señal codificada es una señal multicomponente codificada, en donde el decodificador de señales (700) es un decodificador de componentes, en el que las señales codificadas son componentes codificados, en el que el procesamiento conjunto de señales es un procesamiento conjunto de componentes, en donde las al menos tres señales decodificadas procesadas son al menos tres componentes decodificadas procesadas, y en el que las señales posprocesadas son señales de audio de componentes.Método para realizar la codificación multiseñal de al menos tres señales de audio, que comprende:procesar de forma individual cada señal de audio para obtener por lo menos tres señales de audio preprocesadas, en donde el preprocesamiento es ejecutado de tal manera que una señal de audio preprocesada se blanquee con respecto a la señal con anterioridad al preprocesamiento;realizar, por un procesador adaptativo de señal conjunta (200) un procesamiento de las al menos tres señales de audio preprocesadas posterior a una normalización del nivel de energía realizada por el procesador adaptativo de señal conjunta (200) para obtener, en una primera alternativa, al menos tres señales procesadas conjuntamente o, en una segunda alternativa, al menos dos señales procesadas conjuntamente y una señal sin procesar, en donde la normalización del nivel de energía comprende:calcular (212) una información sobre una energía media de las señales de audio preprocesadas;calcular (211) una información sobre una energía de cada señal de audio preprocesada,calcular el valor de normalización de la energía de banda ancha (534) para una señal de audio preprocesada específica basándose en la información sobre la energía media y la información sobre la energía de la señal de audio preprocesada específica, yrealizar una normalización de energía de banda ancha (210) de las al menos tres señales de audio preprocesadas utilizando los valores de normalización de energía de banda ancha (534) para las señales de audio preprocesadas específicas, en donde cada señal de audio preprocesada tiene una energía normalizada;en donde la realización del procesamiento de las al menos tres señales de audio preprocesadas comprende:calcular (220) valores de correlación cruzada para cada posible par de señales de las señales preprocesadas que tengan las energías normalizadas de las al menos tres señales preprocesadas;seleccionando (229) el par de señales que tenga el mayor valor de correlación cruzada;determinando (232a) un modo de procesamiento estéreo conjunto para el par de señales seleccionado; yprocesar estéreo conjunto (232b) el par de señales seleccionado de acuerdo con el modo de procesamiento estéreo conjunto determinado para obtener un par de señales procesadas;codificar cada señal y obtener una o más señales codificadas (510); ytransmitir o almacenar una señal de audio multiseñal codificada que comprende una o más señales codificadas (510), información lateral relativa al preprocesamiento (520) e información lateral relativa al procesamiento (530) que comprende los valores de normalización de energía de banda ancha (534) para las señales de audio preprocesadas.Método de decodificación multiseñal de una señal codificada, que comprende:decodificar individualmente al menos tres señales codificadas;realizar un tratamiento conjunto de la señal que comprendaextraer (610), a partir de la señal codificada, un valor de normalización de energía (534.534a, 534b) para cada señal estéreo decodificada conjunta, realizando un procesamiento conjunto de la señal que comprenda el procesamiento por pares (820) de las señales decodificadas utilizando un modo estéreo conjunto según lo indicado por la información lateral (530) incluida en la señal codificada para obtener señales estéreo decodificadas conjuntas, ypara reescalar energéticamente (830) las señales decodificadas estéreo conjuntas utilizando los valores de normalización de energía (534, 534a, 534b) para obtener al menos tres señales decodificadas procesadas; y posprocesar las al menos tres señales decodificadas procesadas de acuerdo con la información lateral (530) incluida en la señal codificada, en el que el posprocesado se realiza de modo que las señales posprocesadas sean menos blancas que las señales antes del posprocesado, y en el que las señales posprocesadas representan una señal de audio decodificada.Programa informático para realizar, cuando se ejecuta en un ordenador o un procesador, el método de acuerdo con la reivindicación 40 o el método de acuerdo con la reivindicación 41.Señal codificada que comprende:al menos tres señales de audio codificadas individualmente (510);información lateral (520) relativa a un preprocesamiento realizado para obtener las tres señales de audio codificadas individualmente; yinformación lateral (532) relativa a un procesamiento por pares realizado para obtener las al menos tres señales de audio codificadas individualmente, yen donde la señal codificada comprende, para cada una de las al menos tres señales de audio codificadas obtenidas mediante codificación multiseñal, un valor de escalado de energía (534, 534a, 534b).Señal codificada de la reivindicación 43, que comprende además, para cada una de las señales de audio codificadas individualmente, un valor de distribución de bits (536).
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP18181767 | 2018-07-04 | ||
| PCT/EP2019/067256 WO2020007719A1 (en) | 2018-07-04 | 2019-06-27 | Multisignal audio coding using signal whitening as preprocessing |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2971838T3 true ES2971838T3 (es) | 2024-06-10 |
Family
ID=62985884
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES19732704T Active ES2971838T3 (es) | 2018-07-04 | 2019-06-27 | Codificación de audio multiseñal utilizando el blanqueamiento de señal como preprocesamiento |
Country Status (18)
| Country | Link |
|---|---|
| US (1) | US12367883B2 (es) |
| EP (2) | EP4336497B1 (es) |
| JP (2) | JP7384893B2 (es) |
| KR (1) | KR102606259B1 (es) |
| CN (1) | CN112639967B (es) |
| AR (1) | AR116665A1 (es) |
| AU (2) | AU2019298307A1 (es) |
| BR (1) | BR112020026967A2 (es) |
| CA (1) | CA3105508C (es) |
| ES (1) | ES2971838T3 (es) |
| MX (1) | MX2020014077A (es) |
| MY (1) | MY206514A (es) |
| PL (1) | PL3818520T3 (es) |
| RU (1) | RU2769788C1 (es) |
| SG (1) | SG11202012936VA (es) |
| TW (1) | TWI720530B (es) |
| WO (1) | WO2020007719A1 (es) |
| ZA (1) | ZA202100719B (es) |
Families Citing this family (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| MY206514A (en) * | 2018-07-04 | 2024-12-19 | Fraunhofer Ges Zur Frderung Der Angewandten Forschung E V | Multisignal audio coding using signal whitening as preprocessing |
| GB2592896A (en) * | 2020-01-13 | 2021-09-15 | Nokia Technologies Oy | Spatial audio parameter encoding and associated decoding |
| US11664037B2 (en) * | 2020-05-22 | 2023-05-30 | Electronics And Telecommunications Research Institute | Methods of encoding and decoding speech signal using neural network model recognizing sound sources, and encoding and decoding apparatuses for performing the same |
| AU2021303726B2 (en) * | 2020-07-07 | 2024-06-20 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio quantizer and audio dequantizer and related methods |
| CN113948095B (zh) * | 2020-07-17 | 2025-02-25 | 华为技术有限公司 | 多声道音频信号的编解码方法和装置 |
| CN113948097B (zh) * | 2020-07-17 | 2025-06-13 | 华为技术有限公司 | 多声道音频信号编码方法和装置 |
| CN114023338B (zh) * | 2020-07-17 | 2025-06-03 | 华为技术有限公司 | 多声道音频信号的编码方法和装置 |
| CN121034323A (zh) | 2020-07-17 | 2025-11-28 | 华为技术有限公司 | 多声道音频信号编解码方法和装置 |
| KR20220151953A (ko) * | 2021-05-07 | 2022-11-15 | 한국전자통신연구원 | 부가 정보를 이용한 오디오 신호의 부호화 및 복호화 방법과 그 방법을 수행하는 부호화기 및 복호화기 |
| CN115410584A (zh) * | 2021-05-28 | 2022-11-29 | 华为技术有限公司 | 多声道音频信号的编码方法和装置 |
| CN115472171B (zh) * | 2021-06-11 | 2024-11-22 | 华为技术有限公司 | 编解码方法、装置、设备、存储介质及计算机程序 |
| KR20230004007A (ko) | 2021-06-30 | 2023-01-06 | 삼성전자주식회사 | 오디오 데이터에 오디오 효과의 중복 적용을 방지하는 방법 및 이를 지원하는 전자 장치 |
| WO2023113490A1 (ko) * | 2021-12-15 | 2023-06-22 | 한국전자통신연구원 | 복소수 데이터를 이용한 오디오 처리 방법 및 그를 수행하는 장치 |
| JPWO2023153228A1 (es) * | 2022-02-08 | 2023-08-17 | ||
| GB2624890A (en) * | 2022-11-29 | 2024-06-05 | Nokia Technologies Oy | Parametric spatial audio encoding |
Family Cites Families (24)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US2676266A (en) | 1951-03-10 | 1954-04-20 | California Inst Res Found | Cloud chamber |
| US7716043B2 (en) * | 2005-10-24 | 2010-05-11 | Lg Electronics Inc. | Removing time delays in signal paths |
| US7831434B2 (en) | 2006-01-20 | 2010-11-09 | Microsoft Corporation | Complex-transform channel coding with extended-band frequency coding |
| CN101115051B (zh) * | 2006-07-25 | 2011-08-10 | 华为技术有限公司 | 音频信号处理方法、系统以及音频信号收发装置 |
| ATE518224T1 (de) * | 2008-01-04 | 2011-08-15 | Dolby Int Ab | Audiokodierer und -dekodierer |
| TWI800092B (zh) * | 2010-12-03 | 2023-04-21 | 美商杜比實驗室特許公司 | 音頻解碼裝置、音頻解碼方法及音頻編碼方法 |
| EP2469741A1 (en) | 2010-12-21 | 2012-06-27 | Thomson Licensing | Method and apparatus for encoding and decoding successive frames of an ambisonics representation of a 2- or 3-dimensional sound field |
| BR112013020592B1 (pt) | 2011-02-14 | 2021-06-22 | Fraunhofer-Gellschaft Zur Fôrderung Der Angewandten Forschung E. V. | Codec de áudio utilizando síntese de ruído durante fases inativas |
| KR102201713B1 (ko) | 2012-07-19 | 2021-01-12 | 돌비 인터네셔널 에이비 | 다채널 오디오 신호들의 렌더링을 향상시키기 위한 방법 및 디바이스 |
| US9401153B2 (en) * | 2012-10-15 | 2016-07-26 | Digimarc Corporation | Multi-mode audio recognition and auxiliary data encoding and decoding |
| JP2015011076A (ja) | 2013-06-26 | 2015-01-19 | 日本放送協会 | 音響信号符号化装置、音響信号符号化方法、および音響信号復号化装置 |
| 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 |
| ES2653975T3 (es) | 2013-07-22 | 2018-02-09 | Fraunhofer Gesellschaft zur Förderung der angewandten Forschung e.V. | Decodificador de audio multicanal, codificador de audio multicanal, procedimientos, programa informático y representación de audio codificada mediante el uso de una decorrelación de señales de audio renderizadas |
| 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 |
| TWI634547B (zh) | 2013-09-12 | 2018-09-01 | 瑞典商杜比國際公司 | 在包含至少四音訊聲道的多聲道音訊系統中之解碼方法、解碼裝置、編碼方法以及編碼裝置以及包含電腦可讀取的媒體之電腦程式產品 |
| EP3561809B1 (en) * | 2013-09-12 | 2023-11-22 | Dolby International AB | Method for decoding and decoder. |
| 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 |
| 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 |
| 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 |
| 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 |
| JP6721977B2 (ja) * | 2015-12-15 | 2020-07-15 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 音声音響信号符号化装置、音声音響信号復号装置、音声音響信号符号化方法、及び、音声音響信号復号方法 |
| CN109074812B (zh) | 2016-01-22 | 2023-11-17 | 弗劳恩霍夫应用研究促进协会 | 用于具有全局ild和改进的中/侧决策的mdct m/s立体声的装置和方法 |
| MY206514A (en) * | 2018-07-04 | 2024-12-19 | Fraunhofer Ges Zur Frderung Der Angewandten Forschung E V | Multisignal audio coding using signal whitening as preprocessing |
| US10622003B2 (en) | 2018-07-12 | 2020-04-14 | Intel IP Corporation | Joint beamforming and echo cancellation for reduction of noise and non-linear echo |
-
2019
- 2019-06-27 MY MYPI2020006831A patent/MY206514A/en unknown
- 2019-06-27 RU RU2021102388A patent/RU2769788C1/ru active
- 2019-06-27 EP EP24153258.9A patent/EP4336497B1/en active Active
- 2019-06-27 KR KR1020217003630A patent/KR102606259B1/ko active Active
- 2019-06-27 CA CA3105508A patent/CA3105508C/en active Active
- 2019-06-27 EP EP19732704.2A patent/EP3818520B1/en active Active
- 2019-06-27 JP JP2021500045A patent/JP7384893B2/ja active Active
- 2019-06-27 WO PCT/EP2019/067256 patent/WO2020007719A1/en not_active Ceased
- 2019-06-27 AU AU2019298307A patent/AU2019298307A1/en not_active Abandoned
- 2019-06-27 SG SG11202012936VA patent/SG11202012936VA/en unknown
- 2019-06-27 CN CN201980056603.4A patent/CN112639967B/zh active Active
- 2019-06-27 BR BR112020026967-0A patent/BR112020026967A2/pt unknown
- 2019-06-27 ES ES19732704T patent/ES2971838T3/es active Active
- 2019-06-27 MX MX2020014077A patent/MX2020014077A/es unknown
- 2019-06-27 PL PL19732704.2T patent/PL3818520T3/pl unknown
- 2019-07-03 TW TW108123478A patent/TWI720530B/zh active
- 2019-07-04 AR ARP190101899A patent/AR116665A1/es active IP Right Grant
-
2020
- 2020-12-17 US US17/124,628 patent/US12367883B2/en active Active
-
2021
- 2021-02-02 ZA ZA2021/00719A patent/ZA202100719B/en unknown
-
2022
- 2022-09-20 AU AU2022235537A patent/AU2022235537B2/en active Active
-
2023
- 2023-11-09 JP JP2023191220A patent/JP2024010207A/ja active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| KR102606259B1 (ko) | 2023-11-29 |
| CN112639967B (zh) | 2025-01-07 |
| JP2024010207A (ja) | 2024-01-23 |
| JP2021529354A (ja) | 2021-10-28 |
| EP4336497B1 (en) | 2025-12-10 |
| MX2020014077A (es) | 2021-03-09 |
| BR112020026967A2 (pt) | 2021-03-30 |
| CN112639967A (zh) | 2021-04-09 |
| AR116665A1 (es) | 2021-06-02 |
| RU2769788C1 (ru) | 2022-04-06 |
| TW202016924A (zh) | 2020-05-01 |
| WO2020007719A1 (en) | 2020-01-09 |
| ZA202100719B (en) | 2022-08-31 |
| AU2022235537B2 (en) | 2024-06-13 |
| SG11202012936VA (en) | 2021-01-28 |
| KR20210040974A (ko) | 2021-04-14 |
| JP7384893B2 (ja) | 2023-11-21 |
| PL3818520T3 (pl) | 2024-06-03 |
| US20210104249A1 (en) | 2021-04-08 |
| AU2019298307A1 (en) | 2021-02-25 |
| EP4336497A2 (en) | 2024-03-13 |
| TWI720530B (zh) | 2021-03-01 |
| MY206514A (en) | 2024-12-19 |
| US12367883B2 (en) | 2025-07-22 |
| EP3818520A1 (en) | 2021-05-12 |
| EP3818520C0 (en) | 2024-01-24 |
| AU2022235537A1 (en) | 2022-10-13 |
| EP4336497A3 (en) | 2024-03-20 |
| CA3105508C (en) | 2024-03-26 |
| EP3818520B1 (en) | 2024-01-24 |
| CA3105508A1 (en) | 2020-01-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2971838T3 (es) | Codificación de audio multiseñal utilizando el blanqueamiento de señal como preprocesamiento | |
| US11107483B2 (en) | Audio encoder for encoding a multichannel signal and audio decoder for decoding an encoded audio signal | |
| ES3031961T3 (en) | Apparatus for decoding an encoded multichannel signal using a filling signal generated by a broad band filter | |
| JP6535730B2 (ja) | 独立したノイズ充填を用いた強化された信号を生成するための装置および方法 | |
| US11527252B2 (en) | MDCT M/S stereo | |
| HK40052963B (en) | Multisignal audio coding using signal whitening as preprocessing | |
| HK40052963A (en) | Multisignal audio coding using signal whitening as preprocessing | |
| HK40095813A (en) | Audio encoder for encoding a multichannel signal and audio decoder for decoding an encoded audio signal |