ES3057878T3 - Audio decoder - Google Patents
Audio decoderInfo
- Publication number
- ES3057878T3 ES3057878T3 ES23205287T ES23205287T ES3057878T3 ES 3057878 T3 ES3057878 T3 ES 3057878T3 ES 23205287 T ES23205287 T ES 23205287T ES 23205287 T ES23205287 T ES 23205287T ES 3057878 T3 ES3057878 T3 ES 3057878T3
- Authority
- ES
- Spain
- Prior art keywords
- entropy
- symbol
- coded
- vector
- 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/0017—Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error
-
- 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/032—Quantisation or dequantisation of spectral components
- G10L19/038—Vector quantisation, e.g. TwinVQ audio
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S3/00—Systems employing more than two channels, e.g. quadraphonic
- H04S3/02—Systems employing more than two channels, e.g. quadraphonic of the matrix type, i.e. in which input signals are combined algebraically, e.g. after having been phase shifted with respect to each other
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/032—Quantisation or dequantisation of spectral components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2400/00—Details of stereophonic systems covered by H04S but not provided for in its groups
- H04S2400/01—Multi-channel, i.e. more than two input channels, sound reproduction with two speakers wherein the multi-channel information is substantially preserved
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2420/00—Techniques used stereophonic systems covered by H04S but not provided for in its groups
- H04S2420/03—Application of parametric coding in stereophonic audio systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Mathematical Physics (AREA)
- Mathematical Analysis (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Algebra (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Stereophonic System (AREA)
- Error Detection And Correction (AREA)
Abstract
La presente divulgación proporciona métodos, dispositivos y programas informáticos para la codificación y decodificación de un vector de parámetros en un sistema de codificación de audio. Además, se refiere a un método y un aparato para reconstruir un objeto de audio en un sistema de decodificación de audio. Según la divulgación, un enfoque módulo diferencial para codificar un vector de una cantidad no periódica puede mejorar la eficiencia de la codificación y reducir los requisitos de memoria de los codificadores y decodificadores. Además, se proporciona un método eficiente para codificar y decodificar una matriz dispersa. (Traducción automática con Google Translate, sin valor legal)
Description
[0001] DESCRIPCIÓN
[0002] Decodificador de audio
[0003] Campo técnico
[0004] La divulgación en el presente documento se refiere, en general, a codificación de audio. En particular, se refiere a un método y un aparato para reconstruir una tesela de tiempo/frecuencia de un objeto de audio en un sistema de descodificación de audio.
[0005] Técnica anterior
[0006] En los sistemas de audio convencionales se utiliza un enfoque basado en canales. Cada canal puede representar, por ejemplo, el contenido de un altavoz o de un conjunto de altavoces. Los posibles esquemas de codificación para dichos sistemas incluyen codificación multicanal discreta o codificación paramétrica, tal como MPEG Surround.
[0007] Más recientemente se ha desarrollado un nuevo enfoque. Este enfoque está basado en objetos. En un sistema que utiliza el enfoque basado en objetos, una escena de audio tridimensional se representa mediante objetos de audio con sus metadatos posicionales asociados. Estos objetos de audio se desplazan en la escena de audio tridimensional durante la reproducción de la señal de audio. El sistema puede incluir además los denominados canales de base, que se pueden describir como objetos de audio estacionarios que están mapeados directamente a las posiciones de altavoz, por ejemplo, de un sistema de audio convencional tal como el descrito anteriormente.
[0008] Un problema que puede surgir en un sistema de audio basado en objetos es cómo codificar y descodificar eficientemente la señal de audio y conservar la calidad de la señal codificada. Un posible esquema de codificación incluye, en el lado del codificador, crear una señal de mezcla descendente que comprende una serie de canales a partir de los objetos de audio y los canales de base, e información lateral que permite la recreación de los objetos de audio y los canales de base en el lado del descodificador.
[0009] La codificación de objetos de audio espacial MPEG (MPEG SAOC, MPEG Spatial Audio Object Coding) describe un sistema para la codificación paramétrica de objetos de audio. El sistema envía información lateral, ver la matriz de mezcla ascendente, que describe las propiedades de los objetos por medio de parámetros tales como diferencia de nivel y correlación transversal de los objetos. Estos parámetros son utilizados a continuación para controlar la recreación de los objetos de audio en el lado del descodificador. Este proceso puede ser matemáticamente complejo y a menudo se tiene que basar en hipótesis sobre propiedades de objetos de audio que los parámetros no describen explícitamente. El método presentado en MPEG SAOC puede reducir la tasa de bits necesaria para un sistema de audio basado en objetos, pero pueden ser necesarias mejoras adicionales para seguir aumentando la eficiencia y la calidad, tal como se ha descrito anteriormente.
[0010] US2004/039568A1 describe un método de codificación para codificar un valor de información predeterminado, que comprende: una etapa de cálculo de valor de diferencia para determinar un valor de diferencia entre valores de información; una etapa de transformación para transformar el valor de diferencia de modo que el intervalo de valores en el que puede tomar el valor de diferencia transformado se vuelve más pequeño que el intervalo de valor en el que puede tomar principalmente el valor de diferencia; y una etapa de codificación para codificar el valor de diferencia transformado. El documento "Multichannel Coding of Applause Signals" (Hotho, et al.) describe un códec de audio de multicanal paramétrico dedicado a señales de codificación que consisten en una serie densa de eventos de tipo transitorio, tales como el aplaudo. El diseño de códec se basa en la preservación tanto de timbre como densidad de evento de tipo transitorio.
[0011] El documento US 2004/268334 A1 describe el uso de canalización de software para traducir programas, de lenguajes de alto nivel a objeto equivalente o código de lenguaje de máquina para su ejecución en un ordenador, incluyendo conjuntos/matrices dispersos.
[0012] El documento "An efficient Huffman table sharing method for memory-constrained entropy encoding of multiple sources" (Seung et al.) se refiere a la compartición de tablas de Huffman entre diferentes fuentes.
[0013] Breve descripción de los dibujos
[0014] Ahora se describirán realizaciones de ejemplo con referencia a los dibujos que se acompañan, en los cuales: la figura 1 es un diagrama de bloques generalizado de un sistema de codificación de audio en concordancia con un ejemplo de realización;
[0015] la figura 2 es un diagrama de bloques generalizado del codificador de matriz de mezcla ascendente a modo de
ejemplo mostrado en la figura 1;
[0016] la figura 3 muestra una distribución de probabilidad a modo de ejemplo para un primer elemento en un vector de parámetros correspondiente a un elemento en una matriz de mezcla ascendente determinada mediante el sistema de codificación de audio de la figura 1;
[0017] la figura 4 muestra una distribución de probabilidad a modo de ejemplo, para por lo menos un segundo elemento de codificación diferencial con módulo, en un vector de parámetros correspondiente a un elemento en una matriz de mezcla ascendente determinada por el sistema de codificación de audio de la figura 1;
[0018] la figura 5 es un diagrama de bloques generalizado de un sistema de descodificación de audio en concordancia con una realización de ejemplo;
[0019] la figura 6 es un diagrama de bloques generalizado del descodificador de matriz de mezcla ascendente mostrado en la figura 5;
[0020] la figura 7 describe un método de codificación para los segundos elementos en un vector de parámetros correspondiente a un elemento en una matriz de mezcla ascendente determinada por el sistema de codificación de audio de la figura 1;
[0021] la figura 8 describe un método de codificación para un primer elemento en un vector de parámetros correspondiente a un elemento en una matriz de mezcla ascendente determinada mediante el sistema de codificación de audio de la figura 1;
[0022] la figura 9 describe las partes del método de codificación de la figura 7 para los segundos elementos en un vector de parámetros a modo de ejemplo;
[0023] la figura 10 describe las partes del método de codificación de la figura 8 para el primer elemento en un vector de parámetros a modo de ejemplo;
[0024] la figura 11 es un diagrama de bloques generalizado de un segundo codificador de matriz de mezcla ascendente a modo de ejemplo mostrado en la figura 1;
[0025] la figura 12 es un diagrama de bloques generalizado de un sistema de descodificación de audio en concordancia con una realización de ejemplo;
[0026] la figura 13 describe un método de codificación para la codificación ligera de una fila de una matriz de mezcla ascendente;
[0027] la figura 14 describe partes del método de codificación de la figura 10 para una fila de ejemplo de una matriz de mezcla ascendente;
[0028] la figura 15 describe partes del método de codificación de la figura 10 para una fila de ejemplo de una matriz de mezcla ascendente.
[0029] Todas las figuras son esquemáticas y generalmente muestran sólo las partes que son necesarias para explicar la divulgación, mientras que otras partes pueden estar omitidas o tan sólo sugeridas. Salvo que se indique lo contrario, los numerales de referencia similares se refieren a partes similares en las diferentes figuras.
[0030] Descripción detallada
[0031] En vista de lo anterior, un objetivo es dar a conocer codificadores y descodificadores, y métodos asociados, que proporcionen una mayor eficiencia y calidad de la señal de audio codificada. Por consiguiente, la presente divulgación proporciona un método como se detalla en la reivindicación 1, un producto de programa de ordenador de acuerdo con la reivindicación 2, y un decodificador como se detalla en la reivindicación 3.
[0032] Las realizaciones de ejemplo que describen los métodos de codificación, codificadores y productos de programa de ordenador para codificación no están englobadas por la redacción de las reivindicaciones pero se consideran útiles para entender la invención.
[0033] I. Visión general - codificador
[0034] De acuerdo con un primer aspecto, realizaciones de ejemplo proponen métodos de codificación, codificadores y productos de programa de ordenador para codificar. Los métodos, codificadores y productos de programa de ordenador propuestos pueden tener, en general, las mismas características y ventajas.
[0035] De acuerdo con realizaciones de ejemplo, se proporciona un método para codificar un vector de parámetros en un sistema de codificación de audio, correspondiendo cada parámetro a una cantidad no periódica, teniendo el vector un primer elemento y por lo menos un segundo elemento, comprendiendo el método: representar cada parámetro en el vector por un valor de índice que puede adoptar N valores; asociar cada uno de dicho por lo menos un segundo elemento con un símbolo, calculándose el símbolo mediante: calcular la diferencia entre el valor de índice del segundo elemento y el valor de índice de su elemento anterior en el vector; aplicar módulo N a la diferencia. El método comprende además la etapa de codificar cada uno de dicho por lo menos un segundo elemento mediante la codificación entrópica del símbolo asociado con dicho por lo menos un segundo elemento en base a una tabla de probabilidades que comprende probabilidades de los símbolos.
[0036] Una ventaja de este método es que el número de posibles símbolos se reduce aproximadamente en un factor dos en comparación con las estrategias convencionales de codificación diferencial donde no se aplica módulo N a la diferencia. Por consiguiente, el tamaño de la tabla de probabilidades se reduce aproximadamente en un factor dos. Como resultado, se requiere menos memoria para almacenar la tabla de probabilidades y, dado que la tabla de probabilidades se almacena a menudo en memoria costosa en el codificador, el codificador puede de este modo abaratarse. Además, se puede aumentar la velocidad de búsqueda del símbolo en la tabla de probabilidades. Otra ventaja es que la eficiencia de la codificación puede aumentar dado que todos los símbolos de la tabla de probabilidades son posibles candidatos a asociar con un segundo elemento específico. Esto se puede comparar con estrategias convencionales de codificación diferencial donde solo aproximadamente la mitad de los símbolos en la tabla de probabilidades son candidatos a ser asociados con un segundo elemento específico.
[0037] De acuerdo con realizaciones, el método comprende además asociar el primer elemento en el vector con un símbolo, calculándose el símbolo mediante: desplazar el valor de índice que representa el primer elemento en el vector mediante un valor de desplazamiento; aplicar módulo N al valor de índice desplazado. El método comprende además la etapa de codificar el primer elemento mediante la codificación entrópica del símbolo asociado con el primer elemento utilizando la misma tabla de probabilidades que se utilizó para codificar dicho por lo menos un segundo elemento.
[0038] Esta realización utiliza el hecho de que la distribución de probabilidad del valor de índice del primer elemento y la distribución de probabilidad de los símbolos de dicho por lo menos un segundo elemento son similares, aunque están desplazadas entre sí por un valor de desplazamiento. Como consecuencia, se puede utilizar la misma tabla de probabilidades para el primer elemento en el vector, en lugar de una tabla de probabilidades dedicada. Esto puede tener como resultado unos menores requisitos de memoria y un codificador más económico, de acuerdo con lo anterior.
[0039] De acuerdo con una realización, el valor de desplazamiento es igual a la diferencia entre el valor de índice más probable para el primer elemento y el símbolo más probable para dicho por lo menos un segundo elemento en la tabla de probabilidades. Esto significa que se alinean los picos de las distribuciones de probabilidad. Por consiguiente, se mantiene sustancialmente la misma eficiencia de codificación para el primer elemento en comparación con si se utilizara una tabla de probabilidades dedicada a dicho el primer elemento.
[0040] De acuerdo con realizaciones, el primer elemento y dicho por lo menos un segundo elemento del vector de parámetros corresponden a bandas de frecuencia diferentes utilizadas en el sistema de codificación de audio en una trama de tiempo específica. Esto significa que se pueden codificar en la misma operación los datos correspondientes a una serie de bandas de frecuencia. Por ejemplo, el vector de parámetros puede corresponder a un coeficiente de mezcla ascendente o reconstrucción, que varía sobre una serie de bandas de frecuencia. De acuerdo con una realización, el primer elemento y dicho por lo menos un segundo elemento del vector de parámetros corresponden a tramas de tiempo diferentes utilizadas en el sistema de codificación de audio en una banda de frecuencia específica. Esto significa que se pueden codificar en la misma operación datos correspondientes a una serie de tramas de tiempo. Por ejemplo, el vector de parámetros puede corresponder a un coeficiente de mezcla ascendente o reconstrucción, que varía sobre una serie de tramas de tiempo.
[0041] De acuerdo con realizaciones, la tabla de probabilidades se traduce a un libro de códigos de Huffman, donde el símbolo asociado con un elemento en el vector se utiliza como un índice del libro de códigos, y donde la etapa de codificación comprende codificar cada uno de dicho por lo menos un segundo elemento representando el segundo elemento con una palabra de código del libro de códigos que está indexada por el índice del libro de códigos asociado con el segundo elemento. Al utilizar el símbolo como índice del libro de códigos, se puede aumentar la velocidad de consulta de la palabra de código para representar el elemento.
[0042] De acuerdo con realizaciones, la etapa de codificación comprende codificar el primer elemento en el vector utilizando el mismo libro de códigos de Huffman que se ha utilizado para codificar dicho por lo menos un segundo elemento, representando el primer elemento con una palabra de código en el libro de códigos de Huffman que está indexada por el índice del libro de códigos asociado con el primer elemento. Por consiguiente, solamente es necesario almacenar un libro de códigos de Huffman en la memoria del codificador, lo que puede conducir a un
codificador más económico de acuerdo con lo anterior.
[0043] De acuerdo con una realización adicional, el vector de parámetros corresponde a un elemento en una matriz de mezcla ascendente determinada por el sistema de codificación de audio. Esto puede reducir la tasa de bits necesaria en un sistema de codificación/descodificación de audio, dado que la matriz de mezcla ascendente se puede codificar eficientemente.
[0044] De acuerdo con realizaciones, se proporciona un medio legible por ordenador que comprende instrucciones de código de ordenador adaptadas para llevar a cabo cualquier método del primer aspecto cuando son ejecutadas en un dispositivo con capacidad de procesamiento.
[0045] De acuerdo con realizaciones de ejemplo, se proporciona un codificador para codificar un vector de parámetros en un sistema de codificación de audio, correspondiendo cada parámetro a una cantidad no periódica, teniendo el vector un primer elemento y por lo menos un segundo elemento, comprendiendo el codificador: un componente de recepción adaptado para recibir el vector, un componente de indexación adaptado para representar cada parámetro en el vector mediante un valor de índice que puede adoptar N valores; un componente de asociación adaptado para asociar cada uno de dicho por lo menos un segundo elemento con un símbolo, calculándose el símbolo mediante: calcular la diferencia entre el valor de índice del segundo elemento y el valor de índice de su elemento precedente en el vector; aplicar módulo N a la diferencia. El codificador comprende además un componente de codificación para codificar cada uno de dicho por lo menos un segundo elemento mediante la codificación entrópica del símbolo asociado con dicho por lo menos un segundo elemento, en base a una tabla de probabilidades que comprende las probabilidades de los símbolos.
[0046] II. Visión general - descodificador
[0047] De acuerdo con un segundo aspecto, realizaciones de ejemplo proponen métodos de descodificación, descodificadores y productos de programa de ordenador para descodificar. Los métodos, descodificadores y productos de programa de ordenador propuestos pueden tener, en general, las mismas características y ventajas.
[0048] Las ventajas relativas a características y configuraciones presentadas en la visión general del codificador anterior pueden ser válidas en general para las correspondientes características y configuraciones para el descodificador. De acuerdo con realizaciones de ejemplo, se proporciona un método para descodificar un vector de símbolos codificados por entropía en un sistema de descodificación de audio, en un vector de parámetros correspondientes a una cantidad no periódica, comprendiendo el vector de símbolos codificados por entropía un primer símbolo codificado por entropía y por lo menos un segundo símbolo codificado por entropía, y comprendiendo el vector de parámetros un primer elemento y por lo menos un segundo elemento, comprendiendo el método: representar cada símbolo codificado por entropía en el vector de símbolos codificados por entropía mediante un símbolo que puede adoptar N valores enteros utilizando una tabla de probabilidades; asociar el primer símbolo codificado por entropía con un valor de índice; asociar cada uno de dicho por lo menos un segundo símbolo codificado por entropía con un valor de índice, calculándose el valor de índice de dicho por lo menos un segundo símbolo codificado por entropía mediante: calcular la suma del valor de índice asociado con el símbolo codificado por entropía anterior al segundo símbolo codificado por entropía en el vector de símbolos codificados por entropía y el símbolo que representa el segundo símbolo codificado por entropía; aplicar módulo N a la suma. El método comprende además la etapa de representar dicho por lo menos un segundo elemento del vector de parámetros mediante un valor de parámetro correspondiente al valor de índice asociado con dicho por lo menos un segundo símbolo codificado por entropía.
[0049] De acuerdo con realizaciones de ejemplo, la etapa de representar cada símbolo codificado por entropía en el vector de símbolos codificados por entropía mediante un símbolo se realiza utilizando la misma tabla de probabilidades para todos los símbolos codificados por entropía en el vector de símbolos codificados por entropía, donde el valor de índice asociado con el primer símbolo codificado por entropía se calcula mediante: desplazar el símbolo que representa el primer símbolo codificado por entropía en el vector de símbolos codificados por entropía mediante un valor de desplazamiento; aplicar módulo N al símbolo desplazado. Comprendiendo además el método la etapa de: representar el primer elemento del vector de parámetros mediante un valor de parámetro correspondiente al valor de índice asociado con el primer símbolo codificado por entropía.
[0050] De acuerdo con una realización, la tabla de probabilidades se traduce a un libro de códigos de Huffman, y cada símbolo codificado por entropía corresponde a una palabra de código en el libro de códigos de Huffman.
[0051] De acuerdo con realizaciones adicionales, cada palabra de código en el libro de códigos de Huffman está asociada con un índice del libro de códigos, y la etapa de representar cada símbolo codificado por entropía en el vector de símbolos codificados por entropía mediante un símbolo comprende representar el símbolo codificado por entropía mediante el índice del libro de códigos que está asociado con la palabra de código correspondiente
al símbolo codificado por entropía.
[0052] De acuerdo con realizaciones, cada símbolo codificado por entropía en el vector de símbolos codificados por entropía corresponde a bandas de frecuencia diferentes utilizadas en el sistema de descodificación de audio en una trama de tiempo específica.
[0053] De acuerdo con una realización, cada símbolo codificado por entropía en el vector de símbolos codificados por entropía corresponde a tramas de tiempo diferentes utilizadas en el sistema de descodificación de audio en una banda de frecuencia específica.
[0054] De acuerdo con realizaciones, el vector de parámetros corresponde a un elemento en una matriz de mezcla ascendente utilizada por el sistema de descodificación de audio.
[0055] De acuerdo con realizaciones de ejemplo, se proporciona un medio legible por ordenador que comprende instrucciones de código de ordenador adaptadas para llevar a cabo cualquier método del segundo aspecto cuando son ejecutadas en un dispositivo con capacidad de procesamiento.
[0056] De acuerdo con realizaciones de ejemplo, se proporciona un descodificador para descodificar un vector de símbolos codificados por entropía en un sistema de descodificación de audio, en un vector de parámetros correspondientes a una cantidad no periódica, comprendiendo el vector de símbolos codificados por entropía un primer símbolo codificado por entropía y por lo menos un segundo símbolo codificado por entropía, y comprendiendo el vector de parámetros un primer elemento y por lo menos un segundo elemento, comprendiendo el descodificador: un componente de recepción configurado para recibir el vector de símbolos codificados por entropía; un componente de indexación configurado para representar cada símbolo codificado por entropía en el vector de símbolos codificados por entropía mediante un símbolo que puede adoptar N valores enteros, utilizando una tabla de probabilidades; un componente de asociación configurado para asociar el primer símbolo codificado por entropía con un valor de índice; el componente de asociación configurado además para asociar cada uno de dicho por lo menos un segundo símbolo codificado por entropía con un valor de índice, el valor de índice de dicho por lo menos un segundo símbolo codificado por entropía calculándose mediante: calcular la suma del valor de índice asociado con el símbolo codificado por entropía anterior al segundo símbolo codificado por entropía en el vector de símbolos codificados por entropía y el símbolo que representa el segundo símbolo codificado por entropía; aplicar módulo N a la suma. El descodificador comprende además un componente de descodificación configurado para representar dicho por lo menos un segundo elemento del vector de parámetros mediante un valor de parámetro correspondiente al valor de índice asociado con dicho por lo menos un segundo símbolo codificado por entropía.
[0057] III. Visión general - codificador de matriz ligera
[0058] De acuerdo con un tercer aspecto, las realizaciones de ejemplo proponen métodos de codificación, codificadores y productos de programa de ordenador para codificar. Los métodos, codificadores y productos de programa de ordenador propuestos pueden tener, en general, las mismas características y ventajas.
[0059] De acuerdo con realizaciones de ejemplo, se proporciona un método para codificar una matriz de mezcla ascendente en un sistema de codificación de audio, comprendiendo cada fila de la matriz de mezcla ascendente M elementos que permiten la reconstrucción de una tesela de tiempo/frecuencia de un objeto de audio a partir de una señal de mezcla descendente que comprende M canales, comprendiendo el método: para cada fila de la matriz de mezcla ascendente: seleccionar un subconjunto de elementos a partir de los M elementos de la fila de la matriz de mezcla ascendente; representar cada elemento en el subconjunto de elementos seleccionado mediante un valor y una posición en la matriz de mezcla ascendente; codificar el valor y la posición en la matriz de mezcla ascendente de cada elemento en el subconjunto de elementos seleccionado.
[0060] Tal como se utiliza en la presente memoria, el término señal de mezcla descendente que comprende M canales significa una señal que comprende M señales, o canales, donde cada uno de los canales es una combinación de una serie de objetos de audio, que incluyen los objetos de audio a reconstruir. El número de canales es habitualmente mayor que uno y, en muchos casos, el número de canales es de cinco o más.
[0061] Tal como se utiliza en la presente memoria, el término matriz de mezcla ascendente se refiere a una matriz que tiene N filas y M columnas, que permite la reconstrucción de N objetos de audio a partir de una señal de mezcla descendente que comprende M canales. Los elementos en cada fila de la matriz de mezcla ascendente corresponden a un objeto de audio, y proporcionan coeficientes a multiplicar por los M canales de la mezcla descendente para reconstruir el objeto de audio.
[0062] Tal como se utiliza en la presente memoria, una posición en la matriz de mezcla ascendente significa, en general, un índice de fila y de columna que indica la fila y la columna del elemento de matriz. El término posición puede significar asimismo un índice de columna en una fila determinada de la matriz de mezcla ascendente.
[0063] En algunos casos, enviar todos los elementos de una matriz de mezcla ascendente por cada tesela de tiempo/frecuencia requiere una tasa de bits indeseablemente alta en un sistema de codificación/descodificación de audio. Una ventaja del método es que solamente es necesario codificar y transmitir al descodificador un subconjunto de los elementos de la matriz de mezcla ascendente. Esto puede reducir la tasa de bits de un sistema de codificación/descodificación de audio, dado que se transmiten menos datos y estos se pueden codificar de manera más eficiente.
[0065] Los sistemas de codificación/descodificación de audio dividen habitualmente el espacio de tiempo-frecuencia en teselas de tiempo/frecuencia, por ejemplo, aplicando bancos de filtros adecuados a las señales de audio de entrada. Una tesela de tiempo/frecuencia significa generalmente una parte de un espacio de tiempo-frecuencia correspondiente un intervalo de tiempo y a una sub-banda de frecuencia. El intervalo de tiempo puede corresponder habitualmente a la duración de una trama de tiempo utilizada en el sistema de codificación/descodificación de audio. La sub-banda de frecuencia puede corresponder habitualmente a una o varias sub-bandas de frecuencia contiguas definidas por el banco de filtros utilizado en el sistema de codificación/descodificación. En caso de que la sub-banda de frecuencia corresponda a varias sub-bandas de frecuencia contiguas definidas por el banco de filtros, esto permite tener sub-bandas de frecuencia no uniformes en el proceso de descodificación de la señal de audio, por ejemplo, sub-bandas de frecuencia más anchas para frecuencias mayores de la señal de audio. En un caso de banda ancha, en el que el sistema de codificación/descodificación de audio funciona sobre todo el intervalo de frecuencias, la sub-banda de frecuencia de la tesela de tiempo/frecuencia puede corresponder a todo el intervalo de frecuencias. El método anterior da a conocer las etapas de codificación para codificar una matriz de mezcla ascendente en un sistema de codificación de audio con el fin de permitir la reconstrucción de un objeto de audio durante una tesela de tiempo/frecuencia. Sin embargo, se debe entender que el método se puede repetir para cada tesela de tiempo/frecuencia del sistema de codificación/descodificación de audio. Se debe entender asimismo que se pueden codificar simultáneamente varias teselas de tiempo/frecuencia. Habitualmente, las teselas de tiempo/frecuencia contiguas pueden solapar un poco en tiempo y/o frecuencia. Por ejemplo, un solape en el tiempo puede ser equivalente a una interpolación lineal de los elementos de la matriz de reconstrucción en el tiempo, es decir desde un intervalo de tiempo al siguiente. Sin embargo, esta divulgación se dirige a otras partes del sistema de codificación/descodificación, y cualquier solape en tiempo y/o frecuencia entre teselas de tiempo/frecuencia contiguas se deja para su implementación por el experto en la materia.
[0067] De acuerdo con realizaciones, para cada fila de la matriz de mezcla ascendente, las posiciones en la matriz de mezcla ascendente del subconjunto de elementos seleccionado varían a través de una serie de bandas de frecuencia y/o de una serie de tramas de tiempo. Por consiguiente, la selección de los elementos puede depender de la tesela de tiempo/frecuencia particular, de tal modo que se pueden seleccionar diferentes elementos para diferentes teselas de tiempo/frecuencia. Esto proporciona un método de codificación más flexible que aumenta la calidad de la señal codificada.
[0069] De acuerdo con realizaciones, el subconjunto de elementos seleccionado comprende el mismo número de elementos para cada fila de la matriz de mezcla ascendente. En otras realizaciones, el número de elementos seleccionados puede ser de exactamente uno. Esto reduce la complejidad del codificador, dado que el algoritmo solamente tiene que seleccionar el número de elemento o elementos para cada fila, es decir, el elemento o elementos que son más importantes cuando se lleva a cabo una mezcla ascendente en el lado de descodificador.
[0071] De acuerdo con realizaciones, para cada fila de la matriz de mezcla ascendente y para una serie de bandas de frecuencia o una serie de tramas de tiempo, los valores de los elementos de los subconjuntos seleccionados de elementos forman uno o varios vectores de parámetros, correspondiendo cada parámetro en el vector de parámetros a una de la serie de bandas de frecuencia o la serie de tramas de tiempo, y donde dichos uno o varios vectores de parámetros se codifican utilizando el método acorde con el primer aspecto. En otras palabras, los valores de los elementos seleccionados se pueden codificar de manera eficiente. Las ventajas relativas a características y configuraciones presentadas en la visión general del primer aspecto anterior pueden, en general, ser válidas para esta realización.
[0073] De acuerdo con realizaciones, para cada fila de la matriz de mezcla ascendente y para una serie de bandas de frecuencia o una serie de tramas de tiempo, las posiciones de los elementos de los subconjuntos seleccionados de elementos forman uno o varios vectores de parámetros, correspondiendo cada parámetro en el vector de parámetros a una de la serie de bandas de frecuencia o la serie de tramas de tiempo, y donde dichos uno o varios vectores de parámetros se codifican utilizando el método acorde con el primer aspecto. En otras palabras, las posiciones de los elementos seleccionados se pueden codificar de manera eficiente. Las ventajas relativas a características y configuraciones presentadas en la visión general del primer aspecto anterior pueden, en general, ser válidas para esta realización.
[0075] De acuerdo con realizaciones de ejemplo, se proporciona un medio legible por ordenador que comprende instrucciones de código de ordenador adaptadas para llevar a cabo cualquier método del tercer aspecto cuando son ejecutadas en un dispositivo con capacidad de procesamiento.
[0076] De acuerdo con realizaciones de ejemplo, se proporciona un codificador para codificar una matriz de mezcla ascendente en un sistema de codificación de audio, comprendiendo cada fila de la matriz de mezcla ascendente M elementos que permiten la reconstrucción de una tesela de tiempo/frecuencia de un objeto de audio a partir de una señal de mezcla descendente que comprende M canales, comprendiendo el codificador: un componente de recepción adaptado para recibir cada fila de la matriz de mezcla ascendente; un componente de selección adaptado para seleccionar un subconjunto de elementos a partir de los M elementos de la fila de la matriz de mezcla ascendente; un componente de codificación adaptado para representar cada elemento en el subconjunto de elementos seleccionado mediante un valor y una posición en la matriz de mezcla ascendente, el componente de codificación adaptado además para codificar el valor y la posición en la matriz de mezcla ascendente de cada elemento en el subconjunto de elementos seleccionado.
[0077] IV. Visión general - descodificador de matriz ligera
[0078] De acuerdo con un cuarto aspecto, realizaciones de ejemplo proponen métodos de descodificación, descodificadores y productos de programa de ordenador para descodificar. Los métodos, descodificadores y productos de programa de ordenador propuestos pueden tener, en general, las mismas características y ventajas.
[0079] Las ventajas relativas a características y configuraciones presentadas en la visión general del anterior codificador de matriz ligera pueden ser válidas, en general, para las correspondientes características y configuraciones para el descodificador.
[0080] De acuerdo con realizaciones de ejemplo, se proporciona un método para la reconstrucción de una tesela de tiempo/frecuencia de un objeto de audio en un sistema de descodificación de audio, que comprende: recibir una señal de mezcla descendente que comprende M canales; recibir por lo menos un elemento codificado que representa un subconjunto de M elementos de una fila en una matriz de mezcla ascendente, comprendiendo cada elemento codificado un valor y una posición en la fila de la matriz de mezcla ascendente, indicando la posición uno de los M canales de la señal de mezcla descendente a los que corresponde el elemento codificado; y reconstruir la tesela de tiempo/frecuencia del objeto de audio a partir de la señal de mezcla descendente mediante la formación de una combinación lineal de los canales de mezcla descendente que corresponden a dicho por lo menos un elemento codificado, donde en dicha combinación lineal cada canal de mezcla descendente está multiplicado por el valor de su correspondiente elemento codificado.
[0081] Por lo tanto, de acuerdo con este método, una tesela de tiempo/frecuencia de un objeto de audio se reconstruye formando una combinación lineal de un subconjunto de los canales de mezcla descendente. El subconjunto de los canales de mezcla descendente corresponde a aquellos canales para los que se han recibido coeficientes de mezcla ascendente codificados. Por lo tanto, el método permite reconstruir un objeto de audio a pesar de que se recibe solamente un subconjunto, tal como un subconjunto ligero, de la matriz de mezcla ascendente. Al formar una combinación lineal de solamente los canales de mezcla descendente que corresponden a dicho por lo menos un elemento codificado, se puede reducir la complejidad del proceso de descodificación. Una alternativa podría ser formar una combinación lineal de todas las señales de mezcla descendente y multiplicar a continuación algunas de éstas (las que no corresponden a dicho por lo menos un elemento codificado) por el valor cero.
[0082] De acuerdo con realizaciones, las posiciones de dicho por lo menos un elemento codificado pueden variar a través de una serie de bandas de frecuencia y/o a través de una serie de tramas de tiempo. En otras palabras, se pueden codificar diferentes elementos de la matriz de mezcla ascendente para diferentes teselas de tiempo/frecuencia.
[0083] De acuerdo con realizaciones, el número de elementos de dicho por lo menos un elemento codificado es igual a uno. Esto significa que el objeto de audio se reconstruye a partir de un canal de mezcla descendente en cada tesela de tiempo/frecuencia. Sin embargo, dicho canal de mezcla descendente utilizado para reconstruir el objeto de audio puede variar entre diferentes teselas de tiempo/frecuencia.
[0084] De acuerdo con realizaciones, para una serie de bandas de frecuencia o una serie de tramas de tiempo, los valores de dicho por lo menos un elemento codificado forman uno o varios vectores, donde cada valor está representado por un símbolo codificado por entropía, donde cada símbolo en cada vector de símbolos codificados por entropía corresponde a una de la serie de bandas de frecuencia o una de la serie de tramas de tiempo, y donde dichos uno o varios vectores de símbolos codificados por entropía se descodifican utilizando el método de acuerdo con el segundo aspecto. De este modo, los valores de los elementos de la matriz de mezcla ascendente se pueden codificar eficientemente.
[0085] De acuerdo con realizaciones, para una serie de bandas de frecuencia o una serie de tramas de tiempo, las posiciones de dicho por lo menos un elemento codificado forman uno o varios vectores, donde cada posición está representada por un símbolo codificado por entropía, donde cada símbolo en cada vector de símbolos
codificados por entropía corresponde a una de la serie de bandas de frecuencia o la serie de tramas de tiempo, y donde dichos uno o varios vectores de símbolos codificados por entropía se descodifican utilizando el método de acuerdo con el segundo aspecto. De este modo, las posiciones de los elementos de la matriz de mezcla ascendente se pueden codificar eficientemente.
[0086] De acuerdo con realizaciones de ejemplo, se proporciona un medio legible por ordenador que comprende instrucciones de código de ordenador adaptadas para llevar a cabo cualquier método del tercer aspecto cuando son ejecutadas en un dispositivo con capacidad de procesamiento.
[0087] De acuerdo con realizaciones de ejemplo, se proporciona un descodificador para reconstruir una tesela de tiempo/frecuencia de un objeto de audio, que comprende: un componente de recepción configurado para recibir una señal de mezcla descendente que comprende M canales y por lo menos un elemento codificado que representa un subconjunto de M elementos de una fila en una matriz de mezcla ascendente, comprendiendo cada elemento codificado un valor y una posición en la fila de la matriz de mezcla ascendente, indicando la posición uno de los M canales de la señal de mezcla descendente a los que corresponde el elemento codificado; y un componente de reconstrucción configurado para reconstruir la tesela de tiempo/frecuencia del objeto de audio a partir de la señal de mezcla descendente, mediante la formación de una combinación lineal de los canales de mezcla descendente que corresponden a dicho por lo menos un elemento codificado, donde en dicha combinación lineal cada canal de mezcla descendente está multiplicado por el valor de su correspondiente elemento codificado.
[0088] V. Realizaciones de ejemplo
[0089] La figura 1 muestra un diagrama de bloques generalizado de un sistema de codificación de audio 100 para codificar objetos de audio 104. El sistema de codificación de audio comprende un componente de mezcla descendente 106 que crea una señal de mezcla descendente 110 a partir de los objetos de audio 104. La señal de mezcla descendente 110 puede ser, por ejemplo, una señal envolvente 5.1 o 7.1 que es retrocompatible con sistemas de descodificación de sonido consolidados, tales como Dolby Digital Plus, o estándares MPEG tales como AAC, USAC o MP3. En otras realizaciones, la señal de mezcla descendente no es retrocompatible.
[0090] Para poder reconstruir los objetos de audio 104 a partir de la señal de mezcla descendente 110, se determinan parámetros de mezcla ascendente en un componente 112 de análisis de parámetros de mezcla ascendente, a partir de la señal de mezcla descendente 110 y de los objetos de audio 104. Por ejemplo, los parámetros de mezcla ascendente pueden corresponder a elementos de una matriz de mezcla ascendente que permiten la reconstrucción de los objetos de audio 104 partir de la señal de mezcla descendente 110. El componente 112 de análisis de los parámetros de mezcla ascendente procesa la señal de mezcla descendente 110 y los objetos de audio 104 con respecto a teselas de tiempo/frecuencia individuales. De este modo, se determinan los parámetros de mezcla ascendente para cada tesela de tiempo/frecuencia. Por ejemplo, se puede determinar una matriz de mezcla ascendente para cada tesela de tiempo/frecuencia. Por ejemplo, el componente 112 de análisis de los parámetros de mezcla ascendente puede funcionar en un dominio de frecuencia, tal como un dominio de filtros espejo en cuadratura (QMF, Quadrature Mirror Filters), que permite un procesamiento selectivo en frecuencias. Por esta razón, la señal de mezcla descendente 110 y los objetos de audio 104 se pueden transformar al dominio de frecuencia sometiendo la señal de mezcla descendente 110 y los objetos de audio 104 a un banco de filtros 108. Esto se puede realizar, por ejemplo, aplicando una transformada QMF o cualquier otra transformada adecuada.
[0091] Los parámetros de mezcla ascendente 114 se pueden organizar en un formato vectorial. Un vector puede representar un parámetro de mezcla ascendente para reconstruir un objeto de audio específico a partir de los objetos de audio 104, a diferentes bandas de frecuencia en una trama de tiempo específica. Por ejemplo, un vector puede corresponder a un cierto elemento de matriz en la matriz de mezcla ascendente, donde el vector comprende los valores de dicho cierto elemento de matriz para las bandas de frecuencia siguientes. En otras realizaciones, el vector puede representar parámetros de mezcla ascendente para reconstruir un objeto de audio específico a partir de los objetos de audio 104 en diferentes tramas de tiempo en una banda de frecuencia específica. Por ejemplo, un vector puede corresponder a un cierto elemento de matriz en la matriz de mezcla ascendente, donde el vector comprende los valores de dicho cierto elemento de matriz para las tramas de tiempo siguientes pero en la misma banda de frecuencia.
[0092] Cada parámetro del vector corresponde a una cantidad no periódica, por ejemplo, una cantidad que adopta un valor entre -9,6 y 9,4. Una cantidad no periódica significa, en general, una cantidad que no presenta periodicidad en los valores que puede adoptar. Esto contrasta con una cantidad periódica, tal como un ángulo, donde existe una clara correspondencia periódica entre los valores que la cantidad puede adoptar. Por ejemplo, para un ángulo, existe una periodicidad de 2π, de tal modo que, por ejemplo, el ángulo cero corresponde al ángulo 2π. Los parámetros de mezcla ascendente 114 son recibidos a continuación por un codificador 102 de matriz de mezcla ascendente en el formato vectorial. El codificador de matriz de mezcla ascendente se explicará en detalle a continuación junto con la figura 2. El vector es recibido por un componente de recepción 202 y tiene un primer
elemento y por lo menos un segundo elemento. El número de elementos depende, por ejemplo, del número de bandas de frecuencia en la señal de audio. El número de elementos puede depender asimismo del número de tramas de tiempo de la señal de audio que está siendo codificada en una operación de codificación.
[0093] El vector se indexa a continuación mediante un componente de indexación 204. El componente de indexación está adaptado para representar cada parámetro del vector mediante un valor de índice que puede adoptar un número predefinido de valores. Esta representación se puede realizar en dos etapas. En primer lugar, el parámetro es cuantificado, y a continuación el valor cuantificado es indexado mediante un valor de índice. A modo de ejemplo, en el caso en que cada parámetro del vector puede adoptar un valor entre -9,6 y 9,4, esto se puede realizar utilizando pasos de cuantificación de 0,2. A continuación, los valores cuantificados pueden ser indexados mediante índices 0-95, es decir, 96 valores diferentes. En los ejemplos siguientes, el valor de índice está en el intervalo de 0-95, pero por supuesto esto es solamente un ejemplo, siendo igualmente posibles otros intervalos de valor de índice, por ejemplo, 0-191 o 0-63. Pasos de cuantificación menores pueden producir una señal de audio descodificada menos distorsionada en el lado del descodificador, pero pueden dar lugar asimismo a una mayor tasa de bits necesaria para la transmisión de los datos entre el sistema de codificación de audio 100 y el descodificador.
[0094] Los valores indexados se envían a continuación a un componente de asociación 206 que asocia cada uno de dicho por lo menos un segundo elemento con un símbolo, utilizando una estrategia de codificación diferencial con módulo. El componente de asociación 206 está adaptado para calcular la diferencia entre el valor de índice del segundo elemento y el valor de índice del elemento anterior en el vector. Limitándose a utilizar una estrategia convencional de codificación diferencial, la diferencia puede ser cualquiera en el intervalo de -95 a 95, es decir, tiene 191 posibles valores. Esto significa que cuando la diferencia se codifica utilizando codificación entrópica, es necesaria una tabla de probabilidades que comprenda 191 probabilidades, es decir, una probabilidad para cada uno de los 191 posibles valores de las diferencias. Además, la eficiencia de la codificación disminuiría dado que, para cada diferencia, son imposibles aproximadamente la mitad de las 191 probabilidades. Por ejemplo, si el segundo elemento a someter a codificación diferencial tiene el valor de índice 90, las posibles diferencias están en el intervalo de -5 a 90. Normalmente, tener una estrategia de codificación entrópica en la que algunas de las probabilidades son imposibles para cada valor a codificar reducirá la eficiencia de la codificación. La estrategia de codificación diferencial en esta divulgación puede superar este problema y, al mismo tiempo, reducir a 96 el número de códigos necesarios, mediante aplicar una operación módulo 96 a la diferencia. De este modo, el algoritmo de asociación se puede expresar como:
[0096]
[0098] donde b es el elemento en el vector sometido a codificación diferencial, N<Q>es el número de posibles valores de índice, y Δ<idx>(b) es el símbolo asociado con el elemento b.
[0099] De acuerdo con algunas realizaciones, la tabla de probabilidades se traduce a un libro de códigos de Huffman. En este caso, el símbolo asociado con un elemento del vector se utiliza como un índice del libro de códigos. El componente de codificación 208 puede codificar a continuación cada uno de dicho por lo menos un segundo elemento, representando el segundo elemento con una palabra de código en el libro de códigos de Huffman que está indexada mediante el índice del libro de códigos asociado con el segundo elemento.
[0100] En el componente de codificación 208 se puede implementar cualquier otra estrategia adecuada de codificación de entropía. A modo de ejemplo, dicha estrategia de codificación puede ser una estrategia de codificación por intervalos o una estrategia de codificación aritmética.
[0101] A continuación se muestra que la entropía del enfoque de módulo es siempre menor o igual que la entropía del enfoque diferencial convencional. La entropía, Ep, del enfoque diferencial convencional es:
[0104]
[0106] donde p(n)p(n) es la probabilidad del valor de índice diferencial simple n.
[0107] La entropía, E<q>, del enfoque de módulo es:
[0110]
[0112] donde q(n) es la probabilidad del valor de índice diferencial con módulo, que está dada por:
[0113]
[0115] Por lo tanto, se tiene que
[0118]
[0120] Sustituyendo n = j - N<Q>en el último sumatorio, se obtiene
[0123]
[0125] Además,
[0128]
[0130] Comparando las sumas término a término, dado que
[0133]
[0135] y, análogamente,
[0137]
[0139] se tiene que E<p>≥ E<q>.
[0140] Tal como se ha mostrado anteriormente, la entropía para el enfoque de módulo es siempre menor o igual que la entropía del enfoque diferencial convencional. El caso en que la entropía es igual es un caso extraño en que los datos a codificar son datos patológicos, es decir, datos que no se comportan bien, lo cual no aplica en la mayor parte de los casos, por ejemplo, en una matriz de mezcla ascendente.
[0141] Dado que la entropía para el enfoque de módulo es siempre menor o igual que la entropía del enfoque diferencial convencional, la codificación entrópica de los símbolos calculados mediante el enfoque de módulo proporcionará una tasa de bits menor, o en todo caso igual, en comparación con la codificación entrópica de símbolos calculados mediante el enfoque diferencial convencional. En otras palabras, la codificación entrópica de los símbolos calculados mediante el enfoque de módulo es, en la mayor parte de los casos, más eficiente que la codificación entrópica de los símbolos calculados mediante el enfoque diferencial convencional.
[0142] Otra ventaja es que, tal como se ha mencionado anteriormente, el número de probabilidades necesarias en la tabla de probabilidades en el enfoque de módulo es aproximadamente la mitad del número de probabilidades necesarias en el enfoque convencional sin módulo.
[0143] En lo anterior se ha descrito un enfoque de módulo para codificar dicho por lo menos un segundo elemento en el vector de parámetros. El primer elemento se puede codificar utilizando el valor indexado mediante el cual se representa el primer elemento. Dado que la distribución de probabilidad del valor de índice del primer elemento y del valor diferencial con módulo de dicho por lo menos un segundo elemento pueden ser muy diferentes (ver la figura 3 para una distribución de probabilidad del primer elemento indexado, y la figura 4 para una distribución de probabilidad del valor diferencial con módulo, es decir, el símbolo, para dicho por lo menos un segundo elemento), para el primer elemento puede ser necesaria una tabla de probabilidades dedicada. Esto requiere que tanto el sistema de codificación de audio 100 como un correspondiente descodificador tengan en su memoria dicha tabla de probabilidades dedicada.
[0144] Sin embargo, los inventores han observado que en algunos casos la forma de las distribuciones de probabilidad puede ser muy similar, aunque desplazada entre sí. Esta observación puede ser utilizada para aproximar la distribución de probabilidad del primer elemento indexado mediante una versión desplazada de la distribución de probabilidad del símbolo para dicho por lo menos un segundo elemento. Dicho desplazamiento se puede implementar adaptando el componente de asociación 206 para asociar el primer elemento del vector con un
símbolo, mediante desplazar el valor de índice que representa el primer elemento del vector mediante un valor de desplazamiento y aplicar a continuación módulo 96 (o un valor correspondiente) al valor de índice desplazado.
[0145] De este modo, el cálculo del símbolo asociado con el primer elemento se puede expresar como:
[0148]
[0151] El símbolo así obtenido es utilizado por el componente de codificación 208, que codifica el primer elemento mediante la codificación entrópica del símbolo asociado con el primer elemento utilizando la misma tabla de probabilidades que se ha utilizado para codificar dicho por lo menos un segundo elemento. El valor de desplazamiento puede ser igual, o como mínimo próximo a la diferencia entre el valor de índice más probable para el primer elemento y el símbolo más probable para dicho por lo menos un segundo elemento en la tabla de probabilidades. En la figura 3, el valor de índice más probable para el primer elemento se indica mediante la fecha 302. Suponiendo que el símbolo más probable para dicho por lo menos un segundo elemento es cero, el valor indicado por la flecha 302 será el valor de desplazamiento utilizado. Al utilizar el enfoque de desplazamiento, los picos de las distribuciones de las figuras 3 y 4 se alinean. Este enfoque evita la necesidad de una tabla de probabilidades dedicada para el primer elemento y, de este modo, ahorra memoria en el sistema de codificación de audio 100 y el descodificador correspondiente, a menudo manteniendo al mismo tiempo casi la misma eficiencia de codificación que proporcionaría una tabla de probabilidades dedicada.
[0153] En el caso en que la codificación entrópica de dicho por lo menos un segundo elemento se realiza utilizando un libro de códigos de Huffman, el componente de codificación 208 puede codificar el primer elemento del vector utilizando el mismo libro de códigos de Huffman que se ha utilizado para codificar dicho por lo menos un segundo elemento, representando el primer elemento con una palabra de código en el libro de códigos de Huffman que está indexada mediante el índice del libro de códigos asociado con el primer elemento.
[0155] Dado que la velocidad de búsqueda puede ser importante cuando se codifica un parámetro en un sistema de descodificación de audio, la memoria en la que se almacena el libro de códigos es ventajosamente una memoria rápida, y por lo tanto costosa. Por lo tanto, utilizar sólo una tabla de probabilidades del codificador puede ser más económico que el caso en el que se utilizan dos tablas de probabilidades.
[0157] Se debe observar que a menudo las distribuciones de probabilidad mostradas en la figura 3 y la figura 4 se calculan previamente sobre un conjunto de datos de aprendizaje y, por lo tanto, no se calculan durante la codificación del vector, pero por supuesto es posible calcular las distribuciones "sobre la marcha" al mismo tiempo que la codificación.
[0159] Se debe observar asimismo que la descripción anterior de un sistema de codificación de audio 100 que utiliza un vector procedente de una matriz de mezcla ascendente como el vector de parámetros que se está codificando es tan solo un ejemplo de aplicación. El método para codificar un vector de parámetros, de acuerdo con esta divulgación, puede ser utilizado en otras aplicaciones en un sistema de codificación de audio, por ejemplo, cuando se codifican otros parámetros internos en un sistema de codificación de mezcla descendente, tales como parámetros utilizados en un sistema paramétrico de extensión de banda ancha, tal como replicación de banda espectral (SBR, spectral band replication).
[0161] La figura 5 es un diagrama de bloques generalizado de un sistema de descodificación de audio 500 para recrear objetos de audio codificados a partir de una señal de mezcla descendente codificada 510 y una matriz de mezcla ascendente codificada 512. La señal de mezcla descendente codificada 510 es recibida por un componente de recepción de mezcla descendente 506 donde la señal es descodificada y, si no está ya en un dominio de frecuencia adecuado, transformada a un dominio de frecuencia adecuado. La señal de mezcla descendente descodificada 516 es enviada a continuación al componente de mezcla ascendente 508. En el componente de mezcla ascendente 508, se recrean los objetos de audio codificados utilizando la señal de mezcla descendente descodificada 516 y una matriz de mezcla ascendente descodificada 504. Más específicamente, el componente de mezcla ascendente 508 lleva a cabo una operación matricial en la que la matriz de mezcla ascendente descodificada 504 es multiplicada por un vector que comprende las señales de mezcla descendente descodificadas 516. El proceso de descodificación de la matriz de mezcla ascendente se describe a continuación. El sistema de descodificación de audio 500 comprende además un componente de generación 514 que entrega una señal de audio en base a los objetos de audio reconstruidos 518, en función del tipo de unidad de reproducción que está conectada al sistema de descodificación de audio 500.
[0163] Una matriz de mezcla ascendente codificada 512 es recibida por un descodificador de matriz de mezcla ascendente 502, que se explicará en detalle a continuación junto con la figura 6. El descodificador de matriz de mezcla ascendente 502 está configurado para descodificar en un sistema de descodificación de audio un vector de símbolos codificados por entropía, en un vector de parámetros correspondientes a una cantidad no periódica. El vector de símbolos codificados por entropía comprende un primer símbolo codificado por entropía y por lo menos un segundo símbolo codificado por entropía, y el vector de parámetros comprende un primer elemento y
por lo menos un segundo elemento. Por lo tanto, la matriz de mezcla ascendente codificada 512 es recibida por un componente de recepción 602 en formato vectorial. El descodificador 502 comprende además un componente de indexación 604 configurado para representar cada símbolo codificado por entropía en el vector mediante un símbolo que adopta N valores, utilizando una tabla de probabilidades. N puede ser, por ejemplo, 96. Un componente de asociación 606 está configurado para asociar el primer símbolo codificado por entropía con un valor de índice mediante cualquier medio adecuado, en función del método de codificación utilizado para codificar el primer elemento en el vector de parámetros. El símbolo para cada uno de los segundos códigos y el valor de índice para el primer código son utilizados a continuación por el componente de asociación 606, que asocia cada uno de dicho por lo menos un segundo símbolo codificado por entropía con un valor de índice. El valor de índice de dicho por lo menos un segundo símbolo codificado por entropía se calcula mediante calcular en primer lugar la suma del valor de índice asociado con el símbolo codificado por entropía anterior al segundo símbolo codificado por entropía en el vector de símbolos codificados por entropía y el símbolo que representa el segundo símbolo codificado por entropía. A continuación, se aplica módulo N a la suma. Se supone, sin pérdida de generalidad, que el valor de índice mínimo es 0 y el valor de índice máximo es N-1, por ejemplo, 95. De este modo, el algoritmo de asociación se puede expresar como:
[0166]
[0169] donde b es el elemento del vector que está siendo descodificado y N<Q>N es el número de posibles valores de índice.
[0171] El descodificador de matriz de mezcla ascendente 502 comprende además un componente de descodificación 608 que está configurado para representar dicho por lo menos un segundo elemento del vector de parámetros mediante un valor de parámetro correspondiente al valor de índice asociado con dicho por lo menos un segundo símbolo codificado por entropía. Por lo tanto, esta representación es la versión descodificada del parámetro codificado, por ejemplo, mediante el sistema de codificación de audio 100 mostrado en la figura 1. En otras palabras, esta representación es igual al parámetro cuantificado, codificado mediante el sistema de codificación de audio 100 mostrado en la figura 1.
[0173] De acuerdo con una realización de la presente invención, cada símbolo codificado por entropía en el vector de símbolos codificados por entropía es representado por un símbolo utilizando la misma tabla de probabilidades para todos los símbolos codificados por entropía en el vector de símbolos codificados por entropía. Una ventaja de esto es que solamente es necesario almacenar una tabla de probabilidades en la memoria del descodificador. Dado que la velocidad de búsqueda puede ser importante cuando se descodifica un símbolo codificado por entropía en un sistema de descodificación de audio, la memoria en la que se almacena la tabla de probabilidades es ventajosamente una memoria rápida, y por lo tanto costosa. Por lo tanto, utilizar sólo una tabla de probabilidades del descodificador puede ser más económico que el caso en el que se utilizan dos tablas de probabilidades. De acuerdo con esta realización, el componente de asociación 606 está configurado para asociar el primer símbolo codificado por entropía con un valor de índice, en primer lugar desplazando mediante un valor de desplazamiento el símbolo que representa el primer símbolo codificado por entropía en el vector de símbolos codificados por entropía. A continuación, se aplica módulo N al símbolo desplazado. De este modo, el algoritmo de asociación se puede expresar como:
[0176]
[0179] El componente de descodificación 608 está configurado para representar el primer elemento del vector de parámetros mediante un valor de parámetro correspondiente al valor de índice asociado con el primer símbolo codificado por entropía. Por lo tanto, esta representación es la versión descodificada del parámetro codificado, por ejemplo, mediante el sistema de codificación de audio 100 mostrado en la figura 1.
[0181] Junto con las figuras 7 a 10, se explicará a continuación el método de codificación diferencial de una cantidad no periódica.
[0183] Las figuras 7 y 9 describen un método de codificación para cuatro (4) segundos elementos en un vector de parámetros. Por lo tanto, el vector de entrada 902 comprende cinco parámetros. Los parámetros pueden adoptar cualquier valor entre un valor mínimo y un valor máximo. En este ejemplo, el valor mínimo es -9,6 y el valor máximo es 9,4. La primera etapa S702 en el método de codificación es para representar cada parámetro en el vector 902 mediante un valor de índice que puede adoptar N valores. En este caso, N se escoge con el valor 96, lo que significa que el tamaño del paso de cuantificación es de 0,2. Esto produce el vector 904. La siguiente etapa S704 consiste en calcular la diferencia entre cada uno de los segundos elementos, es decir, los cuatro parámetros superiores del vector 904, y su elemento anterior. De este modo, el vector resultante 906 comprende cuatro valores diferenciales -los cuatro valores superiores del vector 906. Tal como se puede ver en la figura 9, los valores diferenciales pueden ser tanto negativos, como cero y positivos. Tal como se ha explicado anteriormente, es ventajoso tener valores diferenciales que solamente puedan adoptar N valores, en este caso 96 valores. Para conseguir esto, en la siguiente etapa S706 de este método se aplica módulo 96 a los segundos
elementos del vector 906. El vector resultante 908 no contiene ningún valor negativo. El símbolo conseguido de este modo, mostrado en el vector 908, se utiliza a continuación para codificar los segundos elementos del vector en la etapa final S708 del método mostrado en la figura 7 mediante la codificación entrópica del símbolo asociado con dicho por lo menos un segundo elemento en base a una tabla de probabilidades que comprende probabilidades de los símbolos mostrados en el vector 908.
[0185] Tal como se ve en la figura 9, el primer elemento no se ha procesado después de la etapa de indexación S702. En las figuras 8 y 10 se describe un método para codificar el primer elemento del vector de entrada. En la descripción de las figuras 8 y 10 son válidas las mismas hipótesis realizadas en la descripción anterior de las figuras 7 y 9 en relación con los valores mínimo y máximo de los parámetros y el número de posibles valores de índice. El primer elemento 1002 es recibido por el codificador. En la primera etapa S802 del método de codificación, el parámetro del primer elemento está representado por un valor de índice 1004. En la siguiente etapa S804, el valor indexado 1004 es desplazado mediante un valor de desplazamiento. En este ejemplo, el valor del desplazamiento es 49. Este valor se calcula tal como se ha descrito anteriormente. En la siguiente etapa S806, se aplica módulo 96 al valor de índice desplazado 1006. A continuación, el valor resultante 1008 puede ser utilizado en una etapa de codificación S802 para codificar el primer elemento mediante la codificación entrópica del símbolo 1008 utilizando la misma tabla de probabilidades que se ha utilizado para codificar dicho por lo menos un segundo elemento en la figura 7.
[0187] La figura 11 muestra una realización 102' del componente de codificación 102 de la matriz de mezcla ascendente de la figura 1. El codificador 102' de la matriz de mezcla ascendente puede ser utilizado para codificar una matriz de mezcla ascendente en un sistema de codificación de audio, por ejemplo, el sistema de codificación de audio 100 mostrado en la figura 1. Tal como se ha descrito anteriormente, cada fila de la matriz de mezcla ascendente comprende M elementos que permiten la reconstrucción de un objeto de audio a partir de una señal de mezcla descendente que comprende M canales.
[0189] A bajas tasas de bits globales objetivo, la codificación y el envío de la totalidad de los M elementos de matriz de mezcla ascendente por cada objeto y tesela T/F, uno por cada canal de mezcla descendente, puede requerir una tasa de bits indeseablemente elevada. Esto se puede reducir "aligerando" la matriz de mezcla ascendente, es decir, intentando reducir el número de elementos distintos de cero. En algunos casos, cuatro de entre cinco elementos son cero y se utiliza solamente un único canal de mezcla descendente como base para la reconstrucción del objeto de audio. Las matrices ligeras tienen distribuciones de probabilidad de los índices codificados (absolutos o diferenciales) diferentes a las de las matrices no ligeras. En los casos en que la matriz de mezcla ascendente comprende una gran parte de ceros, tal como cuando el valor cero se hace más probable que 0,5, y se utiliza codificación Huffman, la eficiencia de codificación disminuirá dado que el algoritmo de codificación Huffman es ineficiente cuando un valor específico, por ejemplo, cero, tiene una probabilidad mayor de 0,5. Además, dado que muchos de los elementos en la matriz de mezcla ascendente tienen el valor cero, estos no contienen ninguna información. Por lo tanto, una estrategia puede ser seleccionar un subconjunto de los elementos de la matriz de mezcla ascendente, y solamente codificar y transmitir estos a un descodificador. Esto puede reducir la tasa de bits necesaria de un sistema de codificación/descodificación de audio, dado que se transmiten menos datos.
[0191] Para aumentar la eficiencia de la codificación de la matriz de mezcla ascendente, se puede utilizar un modo de codificación dedicado para matrices ligeras, que se explicará en detalle a continuación.
[0193] El codificador 102' comprende un componente de recepción 1102 adaptado para recibir cada fila de la matriz de mezcla ascendente. El codificador 102' comprende además un componente de selección 1104 adaptado para seleccionar un subconjunto de elementos a partir de los M elementos de la fila de la matriz de mezcla ascendente. En la mayor parte de los casos, el subconjunto comprende todos los elementos que no tienen valor cero. Pero de acuerdo con algunas realizaciones, el componente de selección puede elegir no seleccionar un elemento que tenga un valor distinto de cero, por ejemplo, un elemento con un valor próximo a cero. De acuerdo con realizaciones, el subconjunto de elementos seleccionado puede comprender el mismo número de elementos para cada fila de la matriz de mezcla ascendente. Para reducir más la tasa de bits necesaria, el número de elementos seleccionados puede ser uno (1).
[0195] El codificador 102' comprende además un componente de codificación 1106 que está adaptado para representar cada elemento en el subconjunto de elementos seleccionado, mediante un valor y una posición en la matriz de mezcla ascendente. El componente de codificación 1106 está adaptado además para codificar el valor y la posición en la matriz de mezcla ascendente de cada elemento en el subconjunto de elementos seleccionado. Puede estar adaptado, por ejemplo, para codificar el valor utilizando codificación diferencial con módulo, tal como se ha descrito anteriormente. En este caso, para cada fila de la matriz de mezcla ascendente y para una serie de bandas de frecuencia o una serie de tramas de tiempo, los valores de los elementos de los subconjuntos seleccionados de elementos forman uno o varios vectores de parámetros. Cada parámetro del vector de parámetros corresponde a una de la serie de bandas de frecuencia o de la serie de tramas de tiempo. Por lo tanto, el vector de parámetros puede ser codificado utilizando codificación diferencial con módulo, tal como se ha descrito anteriormente. En realizaciones, el vector de parámetros puede ser codificado utilizando codificación
diferencial regular. En otra realización más, el componente de codificación 1106 está adaptado para codificar cada valor por separado, utilizando codificación a tasa fija del verdadero valor de cuantificación de cada valor, es decir no del sometido a codificación diferencial.
[0196] Se han observado los siguientes ejemplos de tasas de bits promedio para contenidos habituales. Las tasas de bits se han medido para el caso en que M = 5, el número de objetos de audio a reconstruir en el lado del descodificador es 11, el número de bandas de frecuencia es 12 y el tamaño del paso del cuantificador de parámetros es 0,1 y tiene 192 niveles. Para el caso en que se han codificado la totalidad de los cinco elementos por fila en la matriz de mezcla ascendente, se han observado las siguientes tasas de bits promedio:
[0197] Codificación a tasa fija: 165 kb/s,
[0198] Codificación diferencial: 51 kb/s,
[0199] Codificación diferencial con módulo: 51 kb/s, pero con la mitad del tamaño de la tabla de probabilidades o del libro de códigos, tal como se ha descrito anteriormente.
[0200] Para el caso en que se elige solamente un elemento para cada fila de la matriz de mezcla ascendente, es decir, codificación ligera, mediante el componente de selección 1104, se han observado las siguientes tasas de bits promedio.
[0201] Codificación a tasa fija (utilizando 8 bits para el valor y 3 bits para la posición): 45 kb/s,
[0202] Codificación diferencial con módulo tanto para el valor del elemento como para la posición del elemento: 20 kb/s. El componente de codificación 1106 puede estar adaptado para codificar la posición en la matriz de mezcla ascendente de cada elemento del subconjunto de elementos, del mismo modo que el valor. El componente de codificación 1106 puede estar adaptado asimismo para codificar la posición en la matriz de mezcla ascendente de cada elemento del subconjunto de elementos, de una manera diferente respecto a la codificación del valor. En el caso de codificar la posición utilizando codificación diferencial o codificación diferencial con módulo, para cada fila de la matriz de mezcla ascendente y para una serie de bandas de frecuencia o una serie de tramas de tiempo, las posiciones de los elementos de los subconjuntos seleccionados de elementos forman uno o varios vectores de parámetros. Cada parámetro del vector de parámetros corresponde a una de la serie de bandas de frecuencia o de la serie de tramas de tiempo. Por lo tanto, el vector de parámetros se codifica utilizando codificación diferencial o codificación diferencial con módulo, tal como se ha descrito anteriormente.
[0203] Cabe señalar que el codificador 102' se puede combinar con el codificador 102 de la figura 2 para conseguir codificación diferencial con módulo de una matriz de mezcla ascendente ligera, de acuerdo con lo anterior. Se debe observar además que el método de codificación de una fila en una matriz ligera se ha ejemplificado anteriormente para codificar una fila en una matriz de mezcla ascendente ligera, pero el método puede ser utilizado para codificar otros tipos de matrices ligeras bien conocidas por los expertos en la materia.
[0204] A continuación se explicará en mayor detalle junto con las figuras 13 a 15 el método para codificar una matriz de mezcla ascendente ligera.
[0205] Una matriz de mezcla ascendente es recibida, por ejemplo, por el componente de recepción 1102 de la figura 11. Comprendiendo el método seleccionar, para cada fila 1402, 1502 de la matriz de mezcla ascendente, un subconjunto S1302 a partir de los M, por ejemplo, 5, elementos de la fila en la matriz de mezcla ascendente. Cada elemento en el subconjunto de elementos seleccionado se representa S1304 a continuación mediante un valor y una posición en la matriz de mezcla ascendente. En la figura 14, se selecciona S1302 como subconjunto un elemento, por ejemplo, el elemento número 3 que tiene un valor de 2,34. Por lo tanto, la representación puede ser un vector 1404 que tiene dos campos. El primer campo del vector 1404 representa el valor, por ejemplo, 2,34 y el segundo campo del vector 1404 representa la posición, por ejemplo, 3. En la figura 15 se seleccionan como subconjunto dos elementos S1302, por ejemplo, el elemento número 3 que tiene un valor de 2,34 y el elemento número 5 que tiene un valor de -1,81. Por lo tanto, la representación puede ser un vector 1504 que tiene cuatro campos. El primer campo del vector 1504 representa el valor del primer elemento, por ejemplo, 2,34, y el segundo campo del vector 1504 representa la posición del primer elemento, por ejemplo, 3. El tercer campo del vector 1504 representa el valor del segundo elemento, por ejemplo, -1,81, y el cuarto campo del vector 1504 representa la posición del segundo elemento, por ejemplo, 5. Las representaciones 1404, 1504 se codifican S1306 a continuación, de acuerdo con lo anterior.
[0206] La figura 12 es un diagrama de bloques generalizado de un sistema de descodificación de audio 1200 en concordancia con una realización de ejemplo. El descodificador 1200 comprende un componente de recepción 1206 configurado para recibir una señal de mezcla descendente 1210 que comprende M canales y por lo menos un elemento codificado 1204 que representa un subconjunto de M elementos en una fila de una matriz de mezcla
ascendente. Cada uno de los elementos codificados comprende un valor y una posición en la fila de la matriz de mezcla ascendente, la posición indicando uno de los M canales de la señal de mezcla descendente 1210 a los que corresponde el elemento codificado.
[0208] Dicho por lo menos un elemento codificado 1204 es descodificado por un componente 1202 de descodificación de elementos de matriz de mezcla ascendente. El componente 1202 de descodificación de elementos de matriz de mezcla ascendente está configurado para descodificar dicho por lo menos un elemento codificado 1204, de acuerdo con la estrategia de codificación utilizada para codificar dicho por lo menos un elemento codificado 1204. Se han dado conocer anteriormente ejemplos de dichas estrategias de codificación. Dicho por lo menos un elemento descodificado 1214 se envía a continuación al componente de reconstrucción 1208, que está configurado para reconstruir una tesela de tiempo/frecuencia del objeto de audio a partir de la señal de mezcla descendente 1210, formando una combinación lineal de los canales de mezcla descendente que corresponden a dicho por lo menos un elemento codificado 1204. Cuando se forma la combinación lineal, cada canal de mezcla descendente se multiplica por el valor de su elemento codificado 1204 correspondiente.
[0210] Por ejemplo, si el elemento descodificado 1214 comprende el valor 1,1 y la posición 2, la tesela de tiempo/frecuencia del segundo canal de mezcla descendente se multiplica por 1,1 y esto se utiliza a continuación para reconstruir el objeto de audio.
[0212] El sistema de descodificación de audio 500 comprende además un componente de generación 1216 que entrega una señal de audio en base al objeto de audio reconstruido 1218. El tipo de señal de audio depende del tipo de unidad de reproducción que está conectada al sistema de descodificación de audio 1200. Por ejemplo, si están conectados un par de auriculares al sistema de descodificación de audio 1200, el componente de generación 1216 entregará una señal estéreo.
[0214] Equivalentes, extensiones, alternativas y miscelánea
[0216] Tras el estudio de la descripción anterior, resultarán evidentes para un experto en la materia otras realizaciones de la presente divulgación. Aunque la presente descripción y los dibujos dan a conocer realizaciones y ejemplos, la divulgación no se limita a estos ejemplos específicos. Se pueden realizar numerosas modificaciones y variaciones sin apartarse del alcance de la presente divulgación, que se define mediante las reivindicaciones adjuntas. Ningún signo de referencia que aparezca en las reivindicaciones se debe entender como limitando el alcance de éstas.
[0218] Adicionalmente, en la práctica de la divulgación, a partir de un estudio de los dibujos, de la divulgación y de las reivindicaciones adjuntas un experto en la materia puede comprender y efectuar variaciones sobre las realizaciones dadas a conocer. En las reivindicaciones, el término "comprende" no excluye otros elementos o etapas, y el artículo indefinido "un" o "una" no excluye una pluralidad. El mero hecho de que ciertas disposiciones se expongan en reivindicaciones dependientes diferentes entre sí, no indica que no se pueda utilizar ventajosamente una combinación de estas disposiciones.
[0220] Los sistemas y métodos dados a conocer en lo anterior se pueden implementar como software, software inalterable, hardware o una combinación de los mismos. En una implementación en hardware, la división de tareas entre unidades funcionales a las que se hace referencia en la descripción anterior no corresponde necesariamente a la división en unidades físicas; por el contrario, un componente físico puede tener múltiples funcionalidades, y una tarea puede ser realizada por varios componentes físicos en cooperación. Determinados componentes o todos los componentes se pueden implementar como software ejecutado por un procesador de señal digital o un microprocesador, o se pueden implementar como hardware o como un circuito integrado de aplicación específica. Dicho software puede estar distribuido en un medio legible por ordenador, que puede comprender medios de almacenamiento de ordenador (o medios no transitorios) y medios de comunicaciones (o medios transitorios). Tal como es bien sabido por un experto en la materia, el término medios de almacenamiento de ordenador incluye medios volátiles y no volátiles, extraíbles y no extraíbles implementados en cualquier método o tecnología para el almacenamiento de información, tal como instrucciones legibles por ordenador, estructuras de datos, módulos de programa u otros datos. Los medios de almacenamiento de ordenador incluyen, de forma no limitativa, RAM, ROM, EEPROM, memorias flash u otra tecnología de memoria, CD-ROM, discos versátiles digitales (DVD, digital versatile disks) u otro almacenamiento en disco óptico, casetes magnéticas, cintas magnéticas, almacenamiento en disco magnético u otros dispositivos de almacenamiento magnético, o cualquier otro medio que pueda ser utilizado para almacenar la información deseada y al que se pueda acceder mediante un ordenador. Además, es bien conocido por un experto en la materia que los medios de comunicación incorporan habitualmente instrucciones legibles por ordenador, estructuras de datos, módulos de programa u otros datos en una señal de datos modulada, tal como una onda portadora u otro mecanismo de transporte, e incluyen cualesquiera medios de distribución de información.
Claims (3)
1. REIVINDICACIONES
1. Un método para reconstruir una tesela de tiempo/frecuencia de un objeto de audio en un sistema de decodificación de audio (1200), que comprende:
- recibir una señal de mezcla descendente (1210) que comprende M canales de mezcla descendente;
- recibir por lo menos un elemento codificado (1204) que representa un subconjunto de M elementos de una fila en una matriz de mezcla ascendente, comprendiendo cada elemento codificado un valor y una posición en la fila en la matriz de mezcla ascendente, indicando la posición uno de los M canales de mezcla descendente de la señal de mezcla descendente del correspondiente elemento codificado; y
- reconstruir (1208) la tesela de tiempo/frecuencia del objeto de audio a partir de la señal de mezcla descendente mediante la formación de una combinación lineal de canales de mezcla descendente que corresponden al por lo menos un elemento codificado, en el que en dicha combinación lineal cada canal de mezcla descendente se multiplica por el valor del correspondiente elemento codificado;
en el que, para una pluralidad de bandas de frecuencia o una pluralidad de tramas de tiempo, los valores y/o las posiciones del por lo menos un elemento codificado forman uno o más vectores (1214), en el que las posiciones del por lo menos un elemento codificado varían a través de la pluralidad de bandas de frecuencia y/o a través de la pluralidad de tramas de tiempo, en el que cada posición está representada mediante un símbolo codificado por entropía, en el que cada símbolo en cada vector de símbolos codificados por entropía corresponde a una de la pluralidad de bandas de frecuencia o la pluralidad de tramas de tiempo, y en el que el uno o más vectores de símbolos codificados por entropía se decodifican en uno o más vectores de parámetros, en el que cada vector de símbolos codificados por entropía comprende un primer símbolo codificado por entropía y por lo menos un segundo símbolo codificado por entropía y en el que cada vector de parámetros comprende un primer elemento y por lo menos un segundo elemento, en el que la decodificación de cada uno del uno o más vectores de símbolos codificados por entropía comprende:
- representar cada símbolo codificado por entropía en el vector de símbolos codificados por entropía mediante un símbolo que puede adoptar N valores enteros usando una tabla de probabilidades;
- asociar el primer símbolo codificado por entropía con un valor de índice;
- asociar cada uno del por lo menos un segundo símbolo codificado por entropía con un valor de índice, calculándose el valor de índice del por lo menos un segundo símbolo codificado por entropía mediante: calcular la suma del valor de índice asociado con el símbolo codificado por entropía que precede al segundo símbolo codificado por entropía en el vector de símbolos codificados por entropía y el símbolo que representa el segundo símbolo codificado por entropía; y
aplicar módulo N a la suma; y
- representar el por lo menos un segundo elemento del vector de parámetros mediante un valor de parámetro correspondiente al valor de índice asociado con el por lo menos un segundo símbolo codificado por entropía, en el que la etapa de representar cada símbolo codificado por entropía en el vector de símbolos codificados por entropía mediante el símbolo se realiza usando la misma tabla de probabilidades para todos los símbolos codificados por entropía en el vector de símbolos codificados por entropía, en el que el valor de índice asociado con el primer símbolo codificado por entropía se calcula mediante:
- desplazar el símbolo que representa el primer símbolo codificado por entropía en el vector de símbolos codificados por entropía añadiendo un valor de desplazamiento al símbolo; y
- aplicar módulo N al símbolo desplazado,
en el que el método comprende además la etapa de:
- representar el primer elemento del vector de parámetros mediante un valor de parámetro correspondiente al valor de índice asociado con el primer símbolo codificado por entropía.
2. Un producto de programa de ordenador que comprende instrucciones de código de ordenador adaptadas para llevar a cabo el método de la reivindicación 1 cuando se ejecutan en un dispositivo que tiene capacidad de procesamiento.
3. Un decodificador (1200) para reconstruir una tesela de tiempo/frecuencia de un objeto de audio, que
comprende:
- un componente de recepción (1206) configurado para recibir una señal de mezcla descendente (1210) que comprende M canales de mezcla descendente y por lo menos un elemento codificado (1204) que representa un subconjunto de M elementos de una fila en una matriz de mezcla ascendente, comprendiendo cada elemento codificado un valor y una posición en la fila en la matriz de mezcla ascendente, indicando la posición uno de los M canales de mezcla descendente de la señal de mezcla descendente del correspondiente elemento codificado; y
- un componente de reconstrucción (1208) configurado para reconstruir la tesela de tiempo/frecuencia del objeto de audio a partir de la señal de mezcla descendente mediante la formación de una combinación lineal de canales de mezcla descendente que corresponden al por lo menos un elemento codificado, en el que en dicha combinación lineal cada canal de mezcla descendente se multiplica por el valor del correspondiente elemento codificado,
en el que, para una pluralidad de bandas de frecuencia o una pluralidad de tramas de tiempo, los valores y/o las posiciones del por lo menos un elemento codificado forman uno o más vectores (1214), en el que las posiciones del por lo menos un elemento codificado varían a través de la pluralidad de bandas de frecuencia y/o a través de la pluralidad de tramas de tiempo, en el que cada posición está representada mediante un símbolo codificado por entropía, en el que cada símbolo en cada vector de símbolos codificados por entropía corresponde a una de la pluralidad de bandas de frecuencia o la pluralidad de tramas de tiempo, y
en el que el decodificador comprende además un componente de decodificación (1202) configurado para decodificar el uno o más vectores de símbolos codificados por entropía en uno o más vectores de parámetros, en el que cada vector de símbolos codificados por entropía comprende un primer símbolo codificado por entropía y por lo menos un segundo símbolo codificado por entropía y en el que cada vector de parámetros comprende un primer elemento y por lo menos un segundo elemento,
en el que el componente de decodificación está configurado para decodificar cada uno del uno o más vectores de símbolos codificados por entropía mediante:
- representar cada símbolo codificado por entropía en el vector de símbolos codificados por entropía mediante un símbolo que puede adoptar N valores enteros usando una tabla de probabilidades;
- asociar el primer símbolo codificado por entropía con un valor de índice;
- asociar cada uno del por lo menos un segundo símbolo codificado por entropía con un valor de índice, calculándose el valor de índice del por lo menos un segundo símbolo codificado por entropía mediante: calcular la suma del valor de índice asociado con el símbolo codificado por entropía que precede al segundo símbolo codificado por entropía en el vector de símbolos codificados por entropía y el símbolo que representa el segundo símbolo codificado por entropía;
aplicar módulo N a la suma;
representar el por lo menos un segundo elemento del vector de parámetros mediante un valor de parámetro correspondiente al valor de índice asociado con el por lo menos un segundo símbolo codificado por entropía, en el que la etapa de representar cada símbolo codificado por entropía en el vector de símbolos codificados por entropía mediante el símbolo se realiza usando la misma tabla de probabilidades para todos los símbolos codificados por entropía en el vector de símbolos codificados por entropía, en el que el valor de índice asociado con el primer símbolo codificado por entropía se calcula mediante:
desplazar el símbolo que representa el primer símbolo codificado por entropía en el vector de símbolos codificados por entropía añadiendo un valor de desplazamiento al símbolo;
aplicar módulo N al símbolo desplazado; y
- representar el primer elemento del vector de parámetros mediante un valor de parámetro correspondiente al valor de índice asociado con el primer símbolo codificado por entropía.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201361827264P | 2013-05-24 | 2013-05-24 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES3057878T3 true ES3057878T3 (en) | 2026-03-05 |
Family
ID=50771514
Family Applications (4)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES14725736.4T Active ES2629025T3 (es) | 2013-05-24 | 2014-05-23 | Codificador y descodificador de audio |
| ES21198240T Active ES2965423T3 (es) | 2013-05-24 | 2014-05-23 | Codificador de audio |
| ES19193266T Active ES2902518T3 (es) | 2013-05-24 | 2014-05-23 | Codificador de audio |
| ES23205287T Active ES3057878T3 (en) | 2013-05-24 | 2014-05-23 | Audio decoder |
Family Applications Before (3)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES14725736.4T Active ES2629025T3 (es) | 2013-05-24 | 2014-05-23 | Codificador y descodificador de audio |
| ES21198240T Active ES2965423T3 (es) | 2013-05-24 | 2014-05-23 | Codificador de audio |
| ES19193266T Active ES2902518T3 (es) | 2013-05-24 | 2014-05-23 | Codificador de audio |
Country Status (18)
| Country | Link |
|---|---|
| US (8) | US9704493B2 (es) |
| EP (6) | EP3605532B1 (es) |
| JP (7) | JP6105159B2 (es) |
| KR (10) | KR102459010B1 (es) |
| CN (2) | CN110085238B (es) |
| AU (1) | AU2014270301B2 (es) |
| BR (1) | BR112015029031B1 (es) |
| CA (5) | CA2911746C (es) |
| DK (1) | DK3005350T3 (es) |
| ES (4) | ES2629025T3 (es) |
| IL (1) | IL242410B (es) |
| MX (3) | MX350117B (es) |
| MY (2) | MY173644A (es) |
| PL (1) | PL3005350T3 (es) |
| RU (3) | RU2643489C2 (es) |
| SG (2) | SG11201509001YA (es) |
| UA (1) | UA112833C2 (es) |
| WO (1) | WO2014187988A2 (es) |
Families Citing this family (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| BR112015029129B1 (pt) | 2013-05-24 | 2022-05-31 | Dolby International Ab | Método para codificar objetos de áudio em um fluxo de dados, meio legível por computador, método em um decodificador para decodificar um fluxo de dados e decodificador para decodificar um fluxo de dados incluindo objetos de áudio codificados |
| EP2973551B1 (en) | 2013-05-24 | 2017-05-03 | Dolby International AB | Reconstruction of audio scenes from a downmix |
| MY178342A (en) | 2013-05-24 | 2020-10-08 | Dolby Int Ab | Coding of audio scenes |
| SG11201509001YA (en) | 2013-05-24 | 2015-12-30 | Dolby Int Ab | Audio encoder and decoder |
| RU2745832C2 (ru) | 2013-05-24 | 2021-04-01 | Долби Интернешнл Аб | Эффективное кодирование звуковых сцен, содержащих звуковые объекты |
| CN105659320B (zh) | 2013-10-21 | 2019-07-12 | 杜比国际公司 | 音频编码器和解码器 |
| WO2015150384A1 (en) | 2014-04-01 | 2015-10-08 | Dolby International Ab | Efficient coding of audio scenes comprising audio objects |
| GB2528460B (en) * | 2014-07-21 | 2018-05-30 | Gurulogic Microsystems Oy | Encoder, decoder and method |
| EP3320539A1 (en) * | 2015-07-06 | 2018-05-16 | Nokia Technologies OY | Bit error detector for an audio signal decoder |
| US9961475B2 (en) * | 2015-10-08 | 2018-05-01 | Qualcomm Incorporated | Conversion from object-based audio to HOA |
| US10249312B2 (en) | 2015-10-08 | 2019-04-02 | Qualcomm Incorporated | Quantization of spatial vectors |
| KR102546098B1 (ko) * | 2016-03-21 | 2023-06-22 | 한국전자통신연구원 | 블록 기반의 오디오 부호화/복호화 장치 및 그 방법 |
| CN107886960B (zh) * | 2016-09-30 | 2020-12-01 | 华为技术有限公司 | 一种音频信号重建方法及装置 |
| WO2022065933A1 (ko) * | 2020-09-28 | 2022-03-31 | 삼성전자 주식회사 | 오디오의 부호화 장치 및 방법, 및 오디오의 복호화 장치 및 방법 |
| US12259827B2 (en) * | 2023-01-31 | 2025-03-25 | Avago Technologies International Sales Pte. Limited | Systems and methods for address scrambling |
Family Cites Families (43)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5470801A (en) | 1977-11-16 | 1979-06-07 | Mitsubishi Monsanto Chem | Sound shielding plate |
| JPS615159A (ja) | 1984-06-16 | 1986-01-10 | 株式会社アイジー技術研究所 | サイデイングボ−ド |
| DE4423612A1 (de) | 1994-07-06 | 1996-01-11 | Basf Ag | 2-[(Dihydro)pyrazolyl-3'-oxymethylen]-anilide, Verfahren zu ihrer Herstelung und ihre Verwendung |
| US7016502B2 (en) * | 2000-12-22 | 2006-03-21 | Sony Corporation | Encoder and decoder |
| JP4008244B2 (ja) * | 2001-03-02 | 2007-11-14 | 松下電器産業株式会社 | 符号化装置および復号化装置 |
| SE0202159D0 (sv) * | 2001-07-10 | 2002-07-09 | Coding Technologies Sweden Ab | Efficientand scalable parametric stereo coding for low bitrate applications |
| JP2003110429A (ja) * | 2001-09-28 | 2003-04-11 | Sony Corp | 符号化方法及び装置、復号方法及び装置、伝送方法及び装置、並びに記録媒体 |
| JP3982397B2 (ja) * | 2001-11-28 | 2007-09-26 | 日本ビクター株式会社 | 可変長符号化データ復号化用プログラム及び可変長符号化データ受信用プログラム |
| US7263692B2 (en) * | 2003-06-30 | 2007-08-28 | Intel Corporation | System and method for software-pipelining of loops with sparse matrix routines |
| KR101082233B1 (ko) | 2004-01-20 | 2011-11-09 | 파나소닉 주식회사 | 화상 부호화 방법, 화상 복호화 방법, 화상 부호화 장치,화상 복호화 장치 및 그 프로그램 |
| US7895034B2 (en) * | 2004-09-17 | 2011-02-22 | Digital Rise Technology Co., Ltd. | Audio encoding system |
| US20060080090A1 (en) | 2004-10-07 | 2006-04-13 | Nokia Corporation | Reusing codebooks in parameter quantization |
| EP1691348A1 (en) | 2005-02-14 | 2006-08-16 | Ecole Polytechnique Federale De Lausanne | Parametric joint-coding of audio sources |
| US20070055510A1 (en) | 2005-07-19 | 2007-03-08 | Johannes Hilpert | Concept for bridging the gap between parametric multi-channel audio coding and matrixed-surround multi-channel coding |
| TWI396188B (zh) | 2005-08-02 | 2013-05-11 | Dolby Lab Licensing Corp | 依聆聽事件之函數控制空間音訊編碼參數的技術 |
| KR20070037945A (ko) | 2005-10-04 | 2007-04-09 | 삼성전자주식회사 | 오디오 신호의 부호화/복호화 방법 및 장치 |
| KR100857118B1 (ko) | 2005-10-05 | 2008-09-05 | 엘지전자 주식회사 | 신호 처리 방법 및 이의 장치, 그리고 인코딩 및 디코딩방법 및 이의 장치 |
| ATE520121T1 (de) | 2006-02-22 | 2011-08-15 | France Telecom | Verbesserte celp kodierung oder dekodierung eines digitalen audiosignals |
| BRPI0708267A2 (pt) * | 2006-02-24 | 2011-05-24 | France Telecom | método de codificação binária de ìndices de quantificação de um envelope de sinal, método de decodificação de um envelope de sinal, e módulos de codificação e decodificação correspondentes |
| ES2378734T3 (es) * | 2006-10-16 | 2012-04-17 | Dolby International Ab | Codificación mejorada y representación de parámetros de codificación de objetos de mezcla descendente multicanal |
| US7953595B2 (en) | 2006-10-18 | 2011-05-31 | Polycom, Inc. | Dual-transform coding of audio signals |
| BRPI0915450B1 (pt) | 2008-07-10 | 2020-03-10 | Voiceage Corporation | Dispositivo e método para quantizar e quantizar inversamente filtros de lpc em um superquadro |
| WO2010003556A1 (en) | 2008-07-11 | 2010-01-14 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoder, audio decoder, methods for encoding and decoding an audio signal, audio stream and computer program |
| KR20130133917A (ko) | 2008-10-08 | 2013-12-09 | 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. | 다중 분해능 스위치드 오디오 부호화/복호화 방법 |
| EP2214161A1 (en) * | 2009-01-28 | 2010-08-04 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus, method and computer program for upmixing a downmix audio signal |
| US8194862B2 (en) | 2009-07-31 | 2012-06-05 | Activevideo Networks, Inc. | Video game system with mixing of independent pre-encoded digital audio bitstreams |
| UA48138U (ru) | 2009-08-31 | 2010-03-10 | Винницкий Национальный Технический Университет | Способ направленного поиска векторов при уплотнении языковых сигналов |
| KR101710113B1 (ko) | 2009-10-23 | 2017-02-27 | 삼성전자주식회사 | 위상 정보와 잔여 신호를 이용한 부호화/복호화 장치 및 방법 |
| US9117458B2 (en) | 2009-11-12 | 2015-08-25 | Lg Electronics Inc. | Apparatus for processing an audio signal and method thereof |
| US8692848B2 (en) | 2009-12-17 | 2014-04-08 | Broadcom Corporation | Method and system for tile mode renderer with coordinate shader |
| WO2011108964A1 (en) | 2010-03-02 | 2011-09-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Source code adaption based on communication link quality and source coding delay. |
| IL286761B (en) | 2010-04-09 | 2022-09-01 | Dolby Int Ab | An uplink mixer is active in predictive or non-predictive mode |
| RU2541864C2 (ru) | 2010-04-13 | 2015-02-20 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Аудио или видео кодер, аудио или видео и относящиеся к ним способы для обработки многоканальных аудио или видеосигналов с использованием переменного направления предсказания |
| US9112591B2 (en) | 2010-04-16 | 2015-08-18 | Samsung Electronics Co., Ltd. | Apparatus for encoding/decoding multichannel signal and method thereof |
| KR101798079B1 (ko) | 2010-05-10 | 2017-11-16 | 삼성전자주식회사 | 픽셀값의 차분을 이용하여 영상 프레임을 부호화하는 방법 및 이를 위한 장치 |
| US8660195B2 (en) | 2010-08-10 | 2014-02-25 | Qualcomm Incorporated | Using quantized prediction memory during fast recovery coding |
| US9111526B2 (en) * | 2010-10-25 | 2015-08-18 | Qualcomm Incorporated | Systems, method, apparatus, and computer-readable media for decomposition of a multichannel music signal |
| BR112013026850B1 (pt) * | 2011-04-20 | 2021-02-23 | Panasonic Intellectual Property Corporation Of America | Aparelhos de codificação e decodificação de áudio/fala e métodos decodificação e decodificação de áudio/fala |
| CA2779232A1 (en) * | 2011-06-08 | 2012-12-08 | Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of Industry Through The Communications Research Centre Canada | Sparse coding using object extraction |
| IN2014CN03413A (es) * | 2011-11-01 | 2015-07-03 | Koninkl Philips Nv | |
| US9223376B2 (en) * | 2012-03-23 | 2015-12-29 | Qualcomm Incorporated | Managing electrical current in a portable computing device when two or more communications overlap in drawing power during a transmission |
| MX342150B (es) * | 2012-07-09 | 2016-09-15 | Koninklijke Philips Nv | Codificacion y decodificacion de señales de audio. |
| SG11201509001YA (en) * | 2013-05-24 | 2015-12-30 | Dolby Int Ab | Audio encoder and decoder |
-
2014
- 2014-05-23 SG SG11201509001YA patent/SG11201509001YA/en unknown
- 2014-05-23 EP EP19193266.4A patent/EP3605532B1/en active Active
- 2014-05-23 CN CN201910125157.XA patent/CN110085238B/zh active Active
- 2014-05-23 AU AU2014270301A patent/AU2014270301B2/en active Active
- 2014-05-23 KR KR1020227011202A patent/KR102459010B1/ko active Active
- 2014-05-23 RU RU2015155311A patent/RU2643489C2/ru active
- 2014-05-23 EP EP23205287.8A patent/EP4290510B1/en active Active
- 2014-05-23 KR KR1020227036517A patent/KR102572382B1/ko active Active
- 2014-05-23 MY MYPI2015703952A patent/MY173644A/en unknown
- 2014-05-23 KR KR1020177020394A patent/KR101895198B1/ko active Active
- 2014-05-23 KR KR1020237028826A patent/KR102715092B1/ko active Active
- 2014-05-23 KR KR1020247033073A patent/KR20240151867A/ko active Pending
- 2014-05-23 ES ES14725736.4T patent/ES2629025T3/es active Active
- 2014-05-23 EP EP17164543.5A patent/EP3252757B1/en active Active
- 2014-05-23 ES ES21198240T patent/ES2965423T3/es active Active
- 2014-05-23 KR KR1020217015014A patent/KR102384348B1/ko active Active
- 2014-05-23 CA CA2911746A patent/CA2911746C/en active Active
- 2014-05-23 DK DK14725736.4T patent/DK3005350T3/en active
- 2014-05-23 KR KR1020187024874A patent/KR102072777B1/ko active Active
- 2014-05-23 US US14/892,722 patent/US9704493B2/en active Active
- 2014-05-23 RU RU2018101246A patent/RU2676041C1/ru active
- 2014-05-23 KR KR1020207035676A patent/KR102280461B1/ko active Active
- 2014-05-23 JP JP2016514442A patent/JP6105159B2/ja active Active
- 2014-05-23 BR BR112015029031-0A patent/BR112015029031B1/pt active IP Right Grant
- 2014-05-23 WO PCT/EP2014/060731 patent/WO2014187988A2/en not_active Ceased
- 2014-05-23 MX MX2015015926A patent/MX350117B/es active IP Right Grant
- 2014-05-23 KR KR1020157036397A patent/KR101763131B1/ko active Active
- 2014-05-23 CA CA3077876A patent/CA3077876C/en active Active
- 2014-05-23 ES ES19193266T patent/ES2902518T3/es active Active
- 2014-05-23 CA CA3251568A patent/CA3251568A1/en active Pending
- 2014-05-23 CA CA2990261A patent/CA2990261C/en active Active
- 2014-05-23 UA UAA201512264A patent/UA112833C2/uk unknown
- 2014-05-23 EP EP21198240.0A patent/EP3961622B1/en active Active
- 2014-05-23 MX MX2017010953A patent/MX375380B/es unknown
- 2014-05-23 CN CN201480029565.0A patent/CN105229729B/zh active Active
- 2014-05-23 PL PL14725736T patent/PL3005350T3/pl unknown
- 2014-05-23 ES ES23205287T patent/ES3057878T3/es active Active
- 2014-05-23 KR KR1020207002641A patent/KR102192245B1/ko active Active
- 2014-05-23 EP EP14725736.4A patent/EP3005350B1/en active Active
- 2014-05-23 MY MYPI2019003013A patent/MY199032A/en unknown
- 2014-05-23 EP EP25213259.2A patent/EP4700767A3/en active Pending
- 2014-05-23 CA CA3163664A patent/CA3163664C/en active Active
- 2014-05-23 SG SG10201710019SA patent/SG10201710019SA/en unknown
-
2015
- 2015-11-02 IL IL242410A patent/IL242410B/en active IP Right Grant
- 2015-11-19 MX MX2020010038A patent/MX2020010038A/es unknown
-
2017
- 2017-03-01 JP JP2017038524A patent/JP6573640B2/ja active Active
- 2017-07-06 US US15/643,416 patent/US9940939B2/en active Active
-
2018
- 2018-04-05 US US15/946,529 patent/US10418038B2/en active Active
- 2018-12-14 RU RU2018144368A patent/RU2710909C1/ru active
-
2019
- 2019-08-13 JP JP2019148473A patent/JP6920382B2/ja active Active
- 2019-09-17 US US16/573,488 patent/US10714104B2/en active Active
-
2020
- 2020-07-10 US US16/925,898 patent/US11024320B2/en active Active
-
2021
- 2021-05-28 US US17/333,527 patent/US11594233B2/en active Active
- 2021-07-26 JP JP2021121510A patent/JP7258086B2/ja active Active
-
2023
- 2023-02-27 US US18/114,885 patent/US12236961B2/en active Active
- 2023-04-04 JP JP2023060522A patent/JP7585379B2/ja active Active
-
2024
- 2024-11-06 JP JP2024194253A patent/JP2025028867A/ja active Pending
-
2025
- 2025-02-24 US US19/061,905 patent/US20250356860A1/en active Pending
- 2025-04-10 JP JP2025064679A patent/JP2025100674A/ja active Pending
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2965423T3 (es) | Codificador de audio | |
| RU2810027C2 (ru) | Аудиокодер и аудиодекодер | |
| HK1246958B (en) | Audio encoder and decoder | |
| HK1246958A1 (en) | Audio encoder and decoder | |
| HK1217246B (en) | Audio encoder and decoder |