ES2641390T3 - Codificación y decodificación eficientes de una señal de audio multicanal con múltiples flujos secundarios - Google Patents
Codificación y decodificación eficientes de una señal de audio multicanal con múltiples flujos secundarios Download PDFInfo
- Publication number
- ES2641390T3 ES2641390T3 ES13726928.8T ES13726928T ES2641390T3 ES 2641390 T3 ES2641390 T3 ES 2641390T3 ES 13726928 T ES13726928 T ES 13726928T ES 2641390 T3 ES2641390 T3 ES 2641390T3
- Authority
- ES
- Spain
- Prior art keywords
- data rate
- frame
- encoder
- group
- basic
- 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
- 230000005236 sound signal Effects 0.000 title claims abstract description 115
- 230000001419 dependent effect Effects 0.000 claims abstract description 25
- 239000008186 active pharmaceutical agent Substances 0.000 claims abstract 38
- 238000000034 method Methods 0.000 claims description 71
- 230000003595 spectral effect Effects 0.000 claims description 12
- 230000006978 adaptation Effects 0.000 claims description 9
- 230000000873 masking effect Effects 0.000 description 53
- 230000009466 transformation Effects 0.000 description 49
- 238000009826 distribution Methods 0.000 description 36
- 230000008569 process Effects 0.000 description 23
- 230000008878 coupling Effects 0.000 description 13
- 238000010168 coupling process Methods 0.000 description 13
- 238000005859 coupling reaction Methods 0.000 description 13
- 238000009877 rendering Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000011002 quantification Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 239000002131 composite material Substances 0.000 description 4
- 238000006073 displacement reaction Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000006467 substitution reaction Methods 0.000 description 4
- 241000258241 Mantis Species 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000013139 quantization Methods 0.000 description 3
- 230000032258 transport Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000033228 biological regulation Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000003750 conditioning effect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S3/00—Systems employing more than two channels, e.g. quadraphonic
- H04S3/008—Systems employing more than two channels, e.g. quadraphonic in which the audio signals are in digital form, i.e. employing more than two discrete digital channels
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
- G10L19/24—Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Mathematical Physics (AREA)
- Stereophonic System (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Un codificador de audio configurado para codificar una señal de audio multicanal de acuerdo con una tasa de datos total disponible; en donde la señal de audio multicanal se puede representar como un grupo básico (121) de canales para renderizar (convertir) la señal de audio multicanal de acuerdo con una configuración básica de canales, y como un grupo (122) de ampliación de canales que - en combinación con el grupo básico (122) - se utiliza para renderizar la señal de audio multicanal de acuerdo con una configuración ampliada de canales; en donde la configuración básica de canales y la configuración ampliada de canales son diferentes entre sí; comprendiendo el codificador de audio: - un codificador básico (105) configurado para codificar el grupo básico (121) de canales de acuerdo con una tasa de datos IS, con el fin de generar un flujo secundario independiente (110), denominado IS; y - un codificador ampliado (106) configurado para codificar el grupo (122) de ampliación de canales de acuerdo con una tasa de datos DS, con el fin de generar un flujo secundario dependiente (120), denominado DS, - caracterizado por que el codificador de audio comprende: una unidad (501) de control de tasa configurada para adaptar con regularidad la tasa de datos IS y la tasa de datos DS en función de un indicador de calidad de codificación IS instantáneo para el grupo básico (121) de canales y/o en función de un indicador de calidad de codificación DS instantáneo para el grupo (122) de ampliación de canales, de modo que la suma de la tasa de datos IS y la tasa de datos DS se corresponde sustancialmente con la tasa de datos total disponible.
Description
5
10
15
20
25
30
35
40
45
50
DESCRIPCION
Codificacion y decodificacion eficientes de una senal de audio multicanal con multiples flujos secundarios Referencia cruzada a solicitudes asociadas
Esta solicitud reivindica el beneficio de prioridad de la Solicitud de Patente Provisional de Estados Unidos Num. Ser. 61/647.226 presentada el 15 de mayo de 2012
Campo tecnico de la invencion
La presente invencion esta relacionada con codificacion/decodificacion de audio. En particular, el presente documento esta relacionado con un metodo y un sistema para mejorar la calidad de senales de audio multicanal codificadas.
Antecedentes de la invencion
Actualmente se encuentran en uso varios sistemas de renderizacion (conversion) de audio multicanal como, por ejemplo, sistemas de renderizacion de audio multicanal 5.1, 7.1 o 9.1. Los sistemas de renderizacion de audio multicanal permiten la generacion de un sonido envolvente que tenga su origen en localizaciones de altavoces 5+1, 7+1 o 9+1, respectivamente. Para una transmision eficiente o para un almacenamiento eficiente de senales de audio multicanal correspondientes, se utilizan sistemas codec (codificador/decodificador) de audio multicanal como, por ejemplo, Dolby Digital o Dolby Digital Plus. Estos sistemas codec de audio multicanal son tfpicamente compatibles hacia atras con el fin de permitir un decodificador de audio multicanal N.1 (por ejemplo, N=5) para decodificar y renderizaral menos parte de una senal de audio multicanal M.1 (por ejemplo, M=7), siendo M mayor que N. Mas en particular, los flujos de bits generados por los sistemas codec de audio multicanal son tfpicamente compatibles hacia atras con el fin de permitir que un decodificador de audio multicanal N.1 (por ejemplo, N=5) decodifique y renderice al menos parte de una senal de audio multicanal M.1 (por ejemplo, M=7). A modo de ejemplo, un flujo de bits codificado de una senal de audio multicanal 7.1 debena poderse decodificar por un decodificador de audio multicanal 5.1. Una forma posible de implementar dicha compatibilidad hacia atras es codificar una senal de audio multicanal M.1 en una pluralidad de flujos secundarios (por ejemplo, en un flujo independiente (denominado de aqrn en adelante "IS") y en uno o mas flujos secundarios dependientes (denominados de aqrn en adelante "DS")). El IS puede comprender una senal de audio multicanal N.1 codificada basica (por ejemplo, una senal de audio 5.1 codificada) y uno o mas DS pueden comprender unos canales de sustitucion y/o ampliacion para renderizar la senal de audio multicanal M.1 completa (tal como se resumira con mayor detalle mas abajo). Ademas, el flujo de bits puede comprender multiples IS (esto es, una pluralidad de flujos secundarios independientes) teniendo cada uno uno o mas DS asociados. La pluralidad de IS y los DS asociados pueden, por ejemplo, utilizarse para transportar una pluralidad de diferentes programas de difusion o una pluralidad de pistas de audio asociadas (por ejemplo, para diferentes idiomas o comentarios directores, etc.), respectivamente.
El presente documento aborda el aspecto de una codificacion eficiente de una pluralidad de flujos secundarios (por ejemplo, un IS y uno o mas DS asociados o una pluralidad de IS y uno o mas DS asociados respectivos) de una senal de audio multicanal.
Resumen de la invencion
La invencion aborda el problema declarado mas arriba de una codificacion eficiente de una pluralidad de flujos secundarios de una senal de audio multicanal tal como se define en las reivindicaciones independientes.
De acuerdo con un aspecto se describe un codificador de audio configurado para codificar una senal de audio multicanal en funcion de una tasa de datos total disponible. La senal de audio multicanal puede, por ejemplo, ser una senal de audio multicanal 9.1, 7.1 o 5.1. El codificador de audio puede ser un codificador de audio por tramas configurado para codificar una secuencia de tramas de la senal de audio multicanal, con el fin de generar una secuencia correspondiente de tramas codificadas. En particular, el codificador se puede configurar para realizar una codificacion de acuerdo con el estandar Dolby Digital Plus.
La senal de audio multicanal se puede representar como un grupo basico de canales para renderizar la senal de audio multicanal de acuerdo con una configuracion basica de canales, y como un grupo de ampliacion de canales, los cuales - en combinacion con el grupo basico - se utilizan para una renderizacion de la senal de audio multicanal de acuerdo con una configuracion ampliada de canales. Tfpicamente, la configuracion basica de canales y la configuracion ampliada de canales son diferentes entre sf. En particular, la configuracion ampliada de canales comprende tfpicamente un mayor numero de canales que la configuracion basica de canales. A modo de ejemplo, la configuracion basica de canales y el grupo basico de canales pueden comprender N canales. La configuracion ampliada de canales puede comprender M canales, siendo M mayor que N. En dichos casos, el grupo de ampliacion de canales puede comprender uno o mas canales de ampliacion con el fin de ampliar la
5
10
15
20
25
30
35
40
45
50
55
60
configuracion basica de canales a la configuracion ampliada de canales. Ademas, el grupo de ampliacion de canales puede comprender uno o mas canales de sustitucion que sustituyan uno o mas canales del grupo basico de canales cuando se renderizan en la configuracion ampliada de canales.
El Informe de Busqueda Internacional emitido junto con la presente solicitud citada con numero de publicacion de Solicitud de Patente Internacional numero WO0187015, de aqrn en adelante el "documento '015", y el numero de patente de los Estados Unidos US5978762, de aqrn en adelante el "documento '762", como "documentos de particular importancia". El documento '015 divulga un formato de audio multicanal que pretende proporcionar una mezcla discreta y compatible hacia atras para sonido envolvente, frontal u otros canales de audio discretos en el cine, un cine en casa o entornos de musica. Se mezclan senales de audio discretas adicionales con los canales de audio discretos existentes en un formato predeterminado como, por ejemplo, el formato de audio 5.1. Ademas, estos canales de audio discretos adicionales se codifican y anaden al formato predeterminado como bits de ampliacion en el flujo de bits. El documento '762 divulga un codificador de audio de subbanda que utiliza filtros de reconstruccion perfecta/no perfecta, codificacion de subbanda predictiva/no predictiva, analisis de transicion, y asignacion de bits psicoacustico/error cuadratico medio mmimo (mmse) sobre el tiempo, frecuencia y los canales multiples de audio para codificar/decodificar un flujo de datos para generar audio de alta fidelidad reconstruido. El codificador de audio enmarca la senal de audio multicanal de modo que el tamano de trama, esto es el numero de bytes, se limita para que encaje en un rango deseado, y formatea los datos codificados de modo que las subtramas individuales se pueden reproducir segun se reciben reduciendo de este modo la latencia.
En un modo de realizacion, la senal de audio multicanal es una senal de audio 7.1 que comprende un canal central, frontal izquierdo, frontal derecho, envolvente izquierdo, envolvente derecho, envolvente izquierdo posterior, envolvente derecho posterior y un canal de efectos de baja frecuencia. En dichos casos, el grupo basico de canales puede comprender los canales central, frontal izquierdo y frontal derecho, asf como un canal envolvente izquierdo downmixed (mezclado para reducir canales) y un canal envolvente derecho downmixed, con el fin de permitir la renderizacion de una senal de audio multicanal en una configuracion de canales 5.1 (la configuracion basica). El canal envolvente izquierdo downmixed y el canal envolvente derecho downmixed se pueden obtener a partirde los canales envolvente izquierdo, envolvente derecho, envolvente izquierdo posterior y envolvente derecho posterior (por ejemplo, como una suma de algunos o todos los canales envolvente izquierdo, envolvente derecho, envolvente izquierdo posterior, envolvente derecho posterior). El grupo de ampliacion de canales puede comprender los canales envolvente izquierdo, envolvente derecho, izquierdo posterior y derecho posterior, con el fin de permitir la renderizacion de los canales basicos y los canales de ampliacion en una configuracion de canales 7.1 (la configuracion ampliada de canales). Se debe observar que la configuracion de canales 7.1 mencionada mas arriba es unicamente un ejemplo de configuraciones posibles de canales 7.1. A modo de ejemplo, los canales envolvente izquierdo y envolvente derecho se pueden etiquetar como canales laterales izquierdo y derecho (situados a +/-90 grados con respecto a una lmea central frente a la cabeza del oyente). De una forma perecida, los canales posteriores se pueden denominar canales envolventes posteriores izquierdo y derecho.
El codificador de audio comprende un codificador basico configurado para codificar el grupo basico de canales de acuerdo con una tasa de datos IS (flujo secundario independiente), con el fin de producir un flujo secundario independiente. El flujo secundario independiente puede comprender una secuencia de tramas IS que comprende datos codificados representativos del grupo basico de canales. Ademas, el codificador de audio comprende un codificador de ampliacion configurado para codificar el grupo de ampliacion de canales de acuerdo con una tasa de datos DS (flujo secundario dependiente), con el fin de producir un flujo secundario dependiente. El flujo secundario dependiente puede comprender una secuencia de tramas DS que comprende datos codificados representativos del grupo de ampliacion de canales. En un modo de realizacion el codificador basico y/o el codificador de ampliacion estan configurados para realizar una codificacion Dolby Digital Plus.
Ademas, el codificador de audio comprende una unidad de control de tasa configurada para adaptar de forma regular la tasa de datos IS y la tasa de datos DS en funcion de un indicador de calidad de codificacion IS instantaneo para el grupo basico de canales y/o en funcion de un indicador de calidad de codificacion DS instantaneo para el grupo de ampliacion de canales. La tasa de datos IS y la tasa de datos DS se pueden adaptar de modo que la suma de la tasa de datos IS y la tasa de datos DS se corresponda sustancialmente (por ejemplo, sea igual a) la tasa de datos total disponible. En particular, la unidad de control de tasa se puede configurar para determinar la tasa de datos IS y la tasa de datos DS de modo que se reduzca la diferencia entre el indicador de calidad de codificacion IS instantaneo y el indicador de calidad de codificacion DS instantaneo. Esto puede dar como resultado una calidad de audio mejorada para la combinacion del grupo basico y el grupo ampliado de canales bajo la restriccion de una tasa total de bits disponible.
El indicador de calidad de codificacion IS instantaneo y/o el indicador de calidad de codificacion DS instantaneo pueden ser indicativos de una complejidad de codificacion de la senal de audio multicanal en un instante de tiempo concreto. A modo de ejemplo, la senal de audio multicanal se puede representar como una secuencia de tramas de audio. En dichos casos, el indicador de calidad de codificacion IS instantaneo y/o el indicador de calidad de codificacion DS instantaneo pueden ser indicativos de una complejidad para la codificacion de una o
5
10
15
20
25
30
35
40
45
50
55
60
mas tramas de audio de la senal de audio multicanal. Asf pues, el indicador de calidad de codificacion IS instantaneo y/o el indicador de calidad de codificacion DS instantaneo pueden variar de trama a trama. Por lo tanto, la unidad de control de tasa puede estar configurada para adaptar la tasa de datos IS y la tasa de datos DS de trama a trama (en funcion de la variacion del indicador de calidad de codificacion IS instantaneo y/o el indicador de calidad de codificacion DS instantaneo). En otras palabras, la unidad de control de tasa puede estar configurada para adaptar la tasa de datos IS y la tasa de datos DS para cada trama de la secuencia de tramas de la senal de audio multicanal.
El indicador de calidad de codificacion IS instantaneo y/o el indicador de calidad de codificacion DS instantaneo pueden comprender un parametro de codificacion del codificador basico y/o del codificador de ampliacion, respectivamente. A modo de ejemplo, en el caso de codificacion Dolby Digital Plus, el indicador de calidad de codificacion IS instantaneo y/o el indicador de calidad de codificacion DS instantaneo pueden comprender la variacion de la SNR instantanea del codificador basico y/o el codificador de ampliacion, respectivamente. Alternativamente o ademas, el indicador de calidad de codificacion IS puede comprender uno o mas de los siguientes: una entropfa perceptual de una (primera) trama actual del grupo basico; una tonalidad de la primera trama del grupo basico; una caractenstica transitoria de la primera trama del grupo basico; un ancho de banda espectral de la primera trama del grupo basico; una presencia de transitorios en la primera trama del grupo basico; un grado de correlacion entre canales del grupo basico; y una energfa de la primera trama del grupo basico. De forma parecida, el indicador de calidad de codificacion DS puede comprender uno o mas de los siguientes: una entropfa perceptual de la primera trama del grupo de ampliacion; una tonalidad de la primera trama del grupo de ampliacion; una caractenstica transitoria de la primera trama del grupo de ampliacion; un ancho de banda espectral de la primera trama del grupo de ampliacion; una presencia de transitorios en la primera trama del grupo de ampliacion; un grado de correlacion entre canales del grupo de ampliacion; y una energfa de la primera trama del grupo de ampliacion.
En el caso de un codificador de audio basado en tramas, el codificador basico puede estar configurado para determinar una secuencia de tramas IS para la secuencia de tramas de la senal multicanal. De forma parecida, el codificador de ampliacion puede estar configurado para determinar una secuencia de tramas DS para la secuencia de tramas de la senal multicanal. En dichos casos, el indicador de calidad de codificacion IS puede comprender una secuencia de indicadores de calidad de codificacion IS para la secuencia de tramas IS correspondiente. De forma parecida, el indicador de calidad de codificacion DS puede comprender una secuencia de indicadores de calidad de codificacion DS para la secuencia de tramas DS correspondiente. La unidad de control de tasa puede estar entonces configurada para determinar la tasa de datos IS para una trama IS de la secuencia de tramas IS y la tasa de datos DS para una trama DS de la secuencia de tramas DS basadas en al menos un indicador de la secuencia de indicadores de calidad de codificacion IS y/o basada en al menos un indicador de la secuencia de indicadores de calidad de codificacion DS. La tasa de datos IS para una trama IS y la tasa de datos DS para la trama DS correspondiente se pueden adaptar de modo que la suma de la tasa de datos IS para la trama IS y la tasa de datos DS para la trama DS correspondiente sea sustancialmente la tasa de datos total disponible para una trama de audio de la senal de audio multicanal.
El codificador puede comprender una unidad de determinacion de la dificultad de codificacion configurada para determinar el indicador de calidad de codificacion IS en funcion de una primera trama del grupo basico de canales, y/o para determinar el indicador de calidad de codificacion DS en funcion de una primera trama del grupo de ampliacion de canales correspondiente. La primera trama puede ser la trama para la que se va a determinar la tasa de datos IS y la tasa de datos DS. Asf pues, la unidad de determinacion de la dificultad de codificacion se puede configurar para analizar la trama a codificar del grupo basico de canales y/o del grupo de ampliacion de canales y determinar los indicadores de calidad de codificacion IS/DS que puede utilizar la unidad de control de tasa para adaptar la tasa de datos IS y la tasa de datos DS para la trama a codificar.
El codificador basico puede comprender una unidad de transformacion configurada para determinar un bloque de coeficientes de transformacion basico para la primera trama del grupo basico. De forma parecida, el codificador de ampliacion puede comprender una unidad de transformacion configurada para determinar un bloque de coeficientes de transformacion de ampliacion para la primera trama del grupo de ampliacion correspondiente. Las unidades de transformacion se pueden configurar para aplicar una transformacion Tiempo-A-Frecuencia, por ejemplo, una Transformacion de Coseno Discreta Modificada (MDCT). La primera trama se puede dividir en una pluralidad de bloques (por ejemplo, con solapamiento) y las unidades de transformacion se pueden configurar para transformar un bloque de muestras obtenido a partir de las primeras tramas respectivas.
Ademas, el codificador basico puede comprender una unidad de codificacion de coma flotante configurada para determinar un bloque de exponentes basico y un bloque de mantisas basico a partir del bloque de coeficientes de transformacion basico. De forma parecida, el codificador de ampliacion puede comprender una unidad de codificacion de coma flotante configurada para determinar un bloque de exponentes de ampliacion y un bloque de mantisas de ampliacion a partir del bloque de coeficientes de transformacion de ampliacion. La unidad de control de tasa puede estar configurada para determinar el numero total de bits de mantisa disponibles para codificar el bloque de mantisas basico y el bloque de mantisas de ampliacion, basados en la tasa de datos total disponible.
5
10
15
20
25
30
35
40
45
50
55
Con este proposito, la unidad de control de tasa puede considerar un numero total de bits disponible derivado de la tasa de datos total disponible y restar el numero de bits del numero total de bits disponibles que se utilizan para la codificacion de los exponentes y/u otros parametros de codificacion que no estan relacionados con las mantisas. Los bits restantes pueden ser el numero total de bits de mantisa disponibles. Ademas, la unidad de control de tasa puede estar configurada para distribuir el numero total de bits de mantisa disponibles al bloque de mantisas basico y al bloque de mantisas de ampliacion, basados en el indicador de calidad de codificacion IS instantaneo y el indicador de calidad de codificacion DS instantaneo, adaptando de este modo la tasa de datos IS y la tasa de datos DS.
En particular, la unidad de control de tasa puede estar configurada para determinar una distribucion de densidad espectral de potencia (PSD) basica para el bloque de coeficientes de transformacion basico. De forma parecida, la unidad de control de tasa puede determinar una distribucion de la PSD de ampliacion para el bloque de coeficientes de transformacion de ampliacion. Ademas, la unidad de control de tasa puede determinar una curva de enmascaramiento basica para el bloque de coeficientes de transformacion basico y una curva de enmascaramiento de ampliacion para el bloque de coeficientes de transformacion de ampliacion. La unidad de control de tasa puede utilizar la distribucion de la PSD basica, la distribucion de la PSD de ampliacion, la curva de enmascaramiento basica y la curva de enmascaramiento de ampliacion para distribuir el numero total de bits de mantisa disponibles al bloque de mantisas basico y al bloque de mantisas de ampliacion.
Incluso mas en particular, la unidad de control de tasa puede estar configurada para determinar una curva de enmascaramiento basica de desplazamiento desplazando la curva de enmascaramiento basica utilizando un desplazamiento IS (tambien denominado "variacion de la SNR del IS"). De forma parecida, la unidad de control de tasa puede estar configurada para determinar una curva de enmascaramiento de ampliacion de desplazamiento desplazando la curva de enmascaramiento de ampliacion utilizando un desplazamiento DS (tambien denominado "variacion de la SNR del DS"). Ademas, la unidad de control de tasa puede estar configurada para comparar la distribucion de la PSD basica y la curva de enmascaramiento basica de desplazamiento, y asignar el numero de bits de mantisa basico al bloque de mantisas basico, en funcion del resultado de la comparacion. Ademas, la unidad de control de tasa puede estar configurada para comparar la distribucion de la PSD de ampliacion y la curva de enmascaramiento de ampliacion de desplazamiento, y asignar un numero de bits de mantisa de ampliacion al bloque de mantisas de ampliacion, en funcion del resultado de la comparacion.
Se puede determinar el numero total de bits de mantisa asignados como la suma del numero de bits de mantisa basico y el numero de bits de mantisa de ampliacion La unidad de control de tasa puede entonces estar configurada para ajustar el desplazamiento IS y el desplazamiento DS de modo que la diferencia del numero total de bits de mantisa asignados y el numero total de bits de mantisa disponibles esten por debajo de un umbral de bits predeterminado. Con este proposito, la unidad de control de tasa puede hacer uso de un esquema de busqueda iterativo, con el fin de determinar el desplazamiento IS y el desplazamiento DS que cumpla la condicion mencionada anteriormente. En particular, la unidad de control de tasa puede estar configurada para ajustar el desplazamiento IS y el desplazamiento DS de modo que el desplazamiento IS y el desplazamiento Ds sean iguales para la secuencia de tramas de la senal de audio multicanal, adaptando de este modo la tasa de datos IS y la tasa de datos DS para cada trama de la secuencia de tramas de la senal de audio multicanal. Como ya se ha indicado, el indicador de calidad de codificacion IS instantaneo puede comprender el desplazamiento IS y/o el indicador de calidad de codificacion DS instantaneo puede comprender el desplazamiento DS.
Asf pues, el codificador de audio puede estar configurado para realizar un proceso de asignacion conjunta de bits para el grupo basico de canales y para el grupo de ampliacion de canales. En otras palabras, el codificador basico y el codificador de ampliacion pueden utilizar un proceso de asignacion de bits combinado, adaptando de este modo la tasa de datos IS y la tasa de datos DS de forma regular (por ejemplo, trama a trama).
La unidad de control de tasa puede estar configurada para determinar el desplazamiento IS y el desplazamiento DS para la primera trama de la senal de audio multicanal. A modo de ejemplo, el desplazamiento IS y el desplazamiento DS se pueden extraer de una trama IS y una trama DS, respectivamente, y la salida del codificador basico y el codificador de ampliacion, respectivamente. Ademas, la unidad de control de tasa puede estar configurada para ajustar la tasa de datos IS y la tasa de datos DS para codificar una segunda trama de la senal de audio multicanal, en funcion del desplazamiento IS y del desplazamiento DS de la primera trama. Tfpicamente, la primera trama precede a la segunda trama. En particular, la segunda trama puede seguir directamente a la primera trama, sin ninguna trama intermedia entre la primera y segunda tramas. En otras palabras, el desplazamiento IS y el desplazamiento DS utilizado para una primera trama precedente, y posiblemente para una directamente precedente, se puede utilizar para determinar la tasa de datos IS y la tasa de datos DS para codificar la segunda trama actual. En aun otras palabras, se propone utilizar una indicacion de la calidad de la codificacion de la primera trama precedente para ajustar la tasa de datos IS y la tasa de datos DS para codificar la segunda trama actual.
5
10
15
20
25
30
35
40
45
50
55
En particular, la unidad de control de tasa puede estar configurada para ajustar la tasa de datos IS y la tasa de datos DS para codificar la segunda trama de la senal de audio multicanal, de modo que se reduce la diferencia entre el desplazamiento IS y el desplazamiento DS (por ejemplo, se reduce en promedio a lo largo de una pluralidad de tramas de audio). Con este proposito se puede utilizar un bucle de regulacion, en donde el bucle de regulacion se adapta para regular la diferencia entre el desplazamiento IS y el desplazamiento DS. A modo de ejemplo, la unidad de control de tasa puede estar configurada para determinar la diferencia entre el desplazamiento IS y el desplazamiento DS para la primera trama. Ademas, la unidad de control de tasa puede estar configurada para modificar la tasa de datos IS para la segunda trama en comparacion con la tasa de datos IS de la primera trama mediante un ajuste de tasa, y modificar la tasa de datos DS para la segunda trama con respecto a la tasa de datos DS de la primera trama mediante un ajuste de tasa negativo. El ajuste de tasa (en particular el signo del ajuste de tasa) puede depender de la diferencia determinada.
El codificador de audio puede estar configurado para codificar una pluralidad de senales de audio multicanal (asociadas). Cada una de las senales de audio multicanal de la pluralidad de senales puede, por ejemplo, corresponderse con un programa de difusion diferente o con un idioma diferente. Esto puede ser beneficioso para los Discos de Video Digital (DVD) que proporcionan una pluralidad de senales de audio multicanal diferentes (por ejemplo, idiomas diferentes) para una pelfcula. La pluralidad de senales de audio multicanal (asociadas) pueden tener tramas correspondientes (representando intervalos de tiempo correspondientes de la pluralidad de senales de audio multicanal asociadas). Cada una de la pluralidad de senales de audio multicanal se puede representar como un grupo basico de canales para renderizar la senal de audio multicanal respectiva en funcion de la configuracion basica de canales, con el fin de producir una pluralidad de grupos basicos. Ademas, cada una de la pluralidad de senales de audio multicanal se puede representar como un grupo de ampliacion de canales para renderizar la senal de audio multicanal respectiva en funcion de la configuracion de ampliacion de canales, los cuales - en combinacion con el grupo basico - permiten renderizar la senal de audio multicanal respectiva en funcion de la configuracion ampliada de canales, con el fin de producir una pluralidad de grupos de ampliacion.
El codificador de audio puede comprender una pluralidad de codificadores basicos para codificar la pluralidad de grupos basicos de acuerdo con una pluralidad de tasas de datos IS, con el fin de producir una pluralidad de IS respectivos. Se debe observar que se puede configurar un codificador basico combinado para codificar la pluralidad de grupos basicos con el fin de producir la pluralidad de IS respectivos. De forma parecida, el codificador de audio puede comprender una pluralidad de codificadores de ampliacion para codificar la pluralidad de grupos de ampliacion de acuerdo con una pluralidad de tasas de datos DS, con el fin de producir una pluralidad de DS respectivos. Se debe observar que se puede configurar un codificador de ampliacion combinado para codificar la pluralidad de grupos de ampliacion con el fin de producir la pluralidad de DS respectivos.
La unidad de control de tasa puede entonces estar configurada para adaptar de forma regular la pluralidad de tasas de datos IS y la pluralidad de tasas de datos DS basandose en uno o mas indicadores de calidad de codificacion IS instantaneo para la pluralidad de grupos basicos de canales y/o basandose en uno o mas indicadores de calidad de codificacion DS instantaneo para la pluralidad de grupos de ampliacion de canales, de modo que la suma de la pluralidad de tasas de datos IS y la pluralidad de tasas de datos DS se corresponde sustancialmente con la tasa de datos total disponible. Los indicadores de calidad de codificacion instantaneos pueden ser, por ejemplo, las variaciones de SNR para codificar la pluralidad de grupos basicos/grupos de ampliacion. En particular, la unidad de control de tasa puede estar configurada para aplicar los esquemas de asignacion de tasa/asignacion de bits descritos en el presente documento a una pluralidad de IS y una pluralidad de DS correspondientes. Asf pues, cada IS y cada DS puede tener tasas de datos variables (por ejemplo, variables de trama a trama), mientras que se mantiene constante la tasa de bits global para la pluralidad de senales de audio multicanal codificadas (esto es, para la pluralidad de IS y DS).
De acuerdo con otro aspecto, se describe un metodo para codificar una senal de audio multicanal en funcion de una tasa de datos total disponible. La senal de audio multicanal se puede representar como un grupo basico de canales para renderizar la senal de audio multicanal de acuerdo con una configuracion basica de canales, y como un grupo de ampliacion de canales, el cual - en combinacion con el grupo basico - se utiliza para renderizar la senal de audio multicanal de acuerdo con una configuracion ampliada de canales. La configuracion basica de canales y la configuracion ampliada de canales pueden ser diferentes entre sf.
El metodo puede comprender codificar el grupo basico de canales en funcion de una tasa de datos IS, con el fin de producir un flujo secundario independiente. El metodo puede comprender, ademas, codificar el grupo de ampliacion de canales en funcion de una tasa de datos DS, con el fin de producir un flujo secundario dependiente. Ademas, el metodo puede comprender adaptar de forma regular la tasa de datos IS y la tasa de datos DS en funcion de un indicador de calidad de codificacion IS instantaneo para el grupo basico de canales y/o en funcion de un indicador de calidad de codificacion DS instantaneo para el grupo de ampliacion de canales, de modo que la suma de la tasa de datos IS y la tasa de datos DS se corresponde sustancialmente con la tasa de datos total disponible.
5
10
15
20
25
30
35
40
45
50
El metodo puede comprender, ademas, determinar el indicador de calidad de codificacion IS en funcion de una muestra del grupo basico de canales, y/o determinar el indicador de calidad de codificacion DS en funcion de una muestra del grupo de ampliacion de canales. La muestra del grupo basico/grupo de ampliacion puede ser, por ejemplo, una o mas tramas del grupo basico/grupo de ampliacion. Asf pues, el indicador de calidad de codificacion IS y/o el indicador de calidad de codificacion DS se pueden determinar en funcion de la senal de entrada de un codificador de audio. A modo de ejemplo, los indicadores de calidad de codificacion se pueden determinar en funcion de una entropfa perceptual de la muestra del grupo basico/de ampliacion; en funcion de una tonalidad de la muestra del grupo basico/de ampliacion; en funcion de una caractenstica transitoria de la muestra del grupo basico/de ampliacion; en funcion del ancho de banda espectral de la muestra del grupo basico/de ampliacion; una presencia de transitorios en la muestra del grupo basico/de ampliacion; un grado de correlacion entre canales de la muestra del grupo basico/de ampliacion; y/o en funcion de una energfa de la muestra del grupo basico/de ampliacion.
Alternativamente o ademas, el indicador de calidad de codificacion IS puede ser indicativo de una calidad perceptual de una muestra del flujo secundario independiente (esto es, de la calidad perceptual de la senal codificada). De forma parecida, el indicador de calidad de codificacion DS puede ser indicativo de una calidad perceptual de una muestra del flujo secundario dependiente (esto es, de la calidad perceptual de la senal codificada).
En dichos casos, la adaptacion de la tasa de datos IS y la tasa de datos DS puede comprender adaptar la tasa de datos IS y la tasa de datos DS para codificar la muestra del flujo secundario independiente y la muestra del flujo secundario dependiente, de modo que la diferencia absoluta entre el indicador de calidad de codificacion IS y el indicador de calidad de codificacion DS se encuentre por debajo de un umbral de diferencia. A modo de ejemplo, el umbral de diferencia puede ser sustancialmente cero. Como se ha resumido mas arriba, la adaptacion de la tasa de datos IS y la tasa de datos DS se puede conseguir utilizando una asignacion de bits conjunta al codificar la muestra del flujo secundario independiente y la muestra del flujo secundario dependiente.
Alternativamente, la adaptacion de la tasa de datos IS y la tasa de datos DS puede comprender adaptar la tasa de datos IS y la tasa de datos DS para codificar una muestra adicional del flujo secundario independiente y una muestra adicional correspondiente del flujo secundario dependiente, basado en la diferencia entre el indicador de calidad de codificacion IS y el indicador de calidad de codificacion DS. Las muestras adicionales de los grupos basico y de ampliacion pueden ser posteriores a las muestras de los grupos basico y de ampliacion. A modo de ejemplo, las muestras adicionales de los grupos basico y de ampliacion pueden seguir directamente, sin muestras intermedios, las muestras de los grupos basico y de ampliacion. Asf pues, la tasa de datos IS y la tasa de datos DS se pueden adaptar muestra a muestra, basado en la realimentacion del/de los indicador(es) de calidad de codificacion IS/DS.
De acuerdo con un aspecto adicional, se describe un programa de software. El programa de software se puede adaptar para su ejecucion en un procesador y para llevar a cabo los pasos del metodo resumido en el presente documento cuando se ejecuta en el procesador.
De acuerdo con otro aspecto, se describe un medio de almacenamiento. El medio de almacenamiento puede comprender un programa de software adaptado para su ejecucion en un procesador y para llevar a cabo los pasos del metodo resumido en el presente documento cuando se ejecuta en el procesador.
De acuerdo un aspecto adicional, se describe un producto de programa informatico. El producto de programa informatico puede comprender instrucciones ejecutables para llevar a cabo los pasos del metodo resumido en el presente documento cuando se ejecuta en un ordenador.
Se debe observar que los metodos y sistemas que incluyen sus modos de realizacion preferidos tal como se han resumido en la presente solicitud de patente se pueden utilizar por sf mismos o en combinacion con otros metodos y sistemas divulgados en este documento. Ademas, todos los aspectos de los metodos y sistemas resumidos en la presente solicitud de patente se pueden combinar de forma arbitraria. En particular, se pueden combinar entre sf de forma arbitraria las caractensticas de las reivindicaciones. Ademas, aunque los pasos de los metodos se pueden proporcionar en un orden concreto, los pasos se pueden combinar o llevar a cabo fuera del orden proporcionado.
Descripcion de las figuras
A continuacion, se explica la invencion de una forma ilustrativa haciendo referencia a los dibujos adjuntos, en donde
la Fig. 1a muestra un diagrama de bloques de alto nivel de un codificador de audio multicanal de ejemplo; la Fig. 1b muestra una secuencia de ejemplo de tramas codificadas;
5
10
15
20
25
30
35
40
45
50
la Fig. 2a muestra un diagrama de bloques de alto nivel de decodificadores de audio multicanal de ejemplo;
la Fig. 2b muestra una disposicion de ejemplo de altavoces para una senal de audio multicanal 7.1;
la Fig. 3 ilustra un diagrama de bloques de componentes de ejemplo de un codificador de audio multicanal;
las Fig. 4a a 4e ilustran aspectos particulares de un codificador de audio multicanal de ejemplo;
la Fig. 5a muestra un diagrama de bloques de un codificador de audio multicanal de ejemplo que comprende un control de tasa conjunto;
la Fig. 5b muestra un diagrama de flujo de un esquema de codificacion multicanal de ejemplo;
la Fig. 5c muestra un diagrama de bloques de un codificador de audio multicanal de ejemplo adicional que comprende un control de tasa conjunto; y
la Fig. 6 muestra un diagrama de bloques de otro codificador de audio multicanal de ejemplo que comprende un control de tasa conjunto.
Descripcion detallada de la invencion
Tal como se ha resumido en la seccion de introduccion, es deseable proporcionar sistemas codec de audio multicanal que generen flujos de bits que sean compatibles hacia atras en relacion al numero de canales que son decodificados por un decodificador de audio multicanal concreto. En particular, es deseable codificar una senal de audio multicanal M.1 de modo que pueda ser decodificada por un decodificador de audio multicanal N.1, siendo N<M. A modo de ejemplo, es deseable codificar una senal de audio 7.1 de modo que pueda ser decodificada por un decodificador de audio 5.1. Con el fin de permitir compatibilidad hacia atras los sistemas codec de audio multicanal tfpicamente codifican una senal de audio multicanal M.1 en un flujo (secundario) independiente ("IS"), que comprende un numero reducido de canales (por ejemplo, N.1 canales), y en uno o mas flujos (secundarios) dependientes ("DS"), que comprenden canales de sustitucion y/o ampliacion con el fin de decodificar y renderizar la senal de audio M.1 completa.
En este contexto, es deseable permitir una codificacion eficiente del IS y los uno o mas DS. El presente documento describe metodos y sistemas que permiten la codificacion eficiente de un IS y uno o mas DS, mientras que al mismo tiempo se mantiene la independencia del IS y los uno o mas DS con el fin de mantener la compatibilidad hacia atras del sistema codec de audio multicanal. Los metodos y sistemas se describen basandose en el sistema codec Dolby Digital Plus (DD+) (tambien denominado AC-3 mejorado). El sistema codec DD+ se especifica en el "Digital Audio Compression Standard (Estandar de Compresion de Audio Digital) (AC-3, E-AC-3)" del Comite de Sistemas de Television Avanzada (AtSC), Documento A/52: 2010, de fecha 22 de noviembre de 2010. Sin embargo, se debe observar que los metodos y sistemas descritos en el presente documento son aplicables en general y se pueden aplicar a otros sistemas codec de audio que codifican senales de audio multicanal en una pluralidad de flujos secundarios.
Las configuraciones multicanal (y las senales de audio multicanal) utilizadas frecuentemente son la configuracion 7.1 y la configuracion 5.1. Una configuracion multicanal 5.1 comprende tfpicamente un canal L (frontal izquierdo), un C (frontal central), un R (frontal derecho), un Ls (envolvente izquierdo), un Rs (envolvente derecho), y un LFE (Efectos de Baja Frecuencia). Una configuracion multicanal 7.1 comprende, ademas, un canal Lb (envolvente izquierdo posterior) y un Rb (envolvente derecho posterior). En la Fig. 2b se ilustra un ejemplo de configuracion multicanal 7.1. Con el fin de transmitir canales 7.1 en DD+, se utilizan dos flujos secundarios. El primer flujo secundario (denominado flujo secundario independiente, "IS") comprende una mezcla de canales 5.1, y el segundo flujo secundario (denominado flujo secundario dependiente, "DS") comprende canales de ampliacion y canales de sustitucion. Por ejemplo, con el fin de codificar y transmitir una senal de audio multicanal 7.1 con canales Lb y Rb envolventes posteriores, el flujo secundario independiente transporta los canales L (frontal izquierdo), C (frontal central), R (frontal derecho), Lst (envolvente izquierdo downmixed), Rst (envolvente derecho downmixed), LFE (Efectos de Baja Frecuencia), y el canal dependiente transporta los canales de ampliacion Lb (envolvente izquierdo posterior), Rb (envolvente derecho posterior) y los canales de sustitucion Ls (envolvente izquierdo) y Rs (envolvente derecho). Cuando se realiza una decodificacion de senal 7.1 completa, los canales Ls y Rs del flujo secundario dependiente sustituyen los canales Lst y Rst del flujo secundario independiente.
La Fig. 1a muestra un diagrama de bloques de alto nivel de un codificador 100 de audio multicanal 7.1 DD+ de ejemplo que ilustra la relacion entre canales 5.1 y 7.1. Los canales 101 de audio siete (7) mas uno (1) (L, C, R, Ls, Lb, Rs y Rb mas LFE) de la senal de audio multicanal se dividen en dos grupos de canales de audio. Un grupo basico 121 de canales comprende los canales de audio L, C, R y LFE, asf como los canales envolventes downmixed Lst 102 y Rst 103 los cuales se obtienen tfpicamente a partir de los canales envolvente 7.1 Ls, Rs y los canales posteriores 7.1 Lb, Rb. A modo de ejemplo, los canales 102, 103 envolventes downmixed se obtienen anadiendo algunos o todos los canales Lb y Rb y los canales envolventes 7.1 Ls, Rs en una unidad 109 de
5
10
15
20
25
30
35
40
45
50
55
downmix. Se debe observar que los canales envolventes downmixed Lst 102 y Rst 103 se pueden determinar de otras formas. A modo de ejemplo, los canales envolventes downmixed Lst 102 y Rst 103 se pueden determinar directamente a partir de los dos canales 7.1, por ejemplo, los canales envolventes 7.1 Ls, Rs.
El grupo basico 121 de canales se codifica en un codificador 105 de audio 5.1 DD+, con el fin de producir el flujo secundario independiente ("IS") 110 que se transmite en una trama principal DD+ 151 (ver Fig. 1b). La trama principal 151 tambien se denomina trama IS. Un segundo grupo 122 de canales de audio comprende los canales envolventes 7.1 Ls, Rs y los canales envolventes posteriores 7.1 Lb, Rb. El segundo grupo 122 de canales se codifica en un codificador 106 de audio 4.0 DD+, con el fin de producir un flujo secundario dependiente ("DS") 120 que se transmite en una o mas tramas 152, 153 de ampliacion DD+ (ver Fig. 1b). El segundo grupo 122 de canales se denomina en la presente solicitud grupo 122 de ampliacion de canales y las tramas 152, 153 se denominan tramas DS 152, 153.
La Fig. 1b ilustra una secuencia 150 de ejemplo de tramas 151, 152, 153, 161, 162 de audio codificadas. El ejemplo ilustrado comprende dos flujos secundarios independiente IS0 e IS1 que comprenden las tramas IS 151 y 161, respectivamente. Se pueden utilizar multiples IS (y los DS respectivos) para proporcionar multiples senales de audio asociadas (por ejemplo, para diferentes idiomas de una pelfcula o para diferentes programas). Cada uno de los flujos secundarios independientes comprende uno o mas flujos secundarios dependientes DS0, DS1, respectivamente. Cada uno de los flujos secundarios dependientes comprende las respectivas tramas DS 152, 153 y 162. Ademas, la Fig. 1b indica la duracion temporal 170 de una trama de audio completa de la senal de audio multicanal. La duracion temporal 170 de la trama de audio puede ser 32ms (por ejemplo, a una tasa de muestreo fs = 48kHz). En otras palabras, la Fig. 1b indica la duracion en tiempo 170 de una trama de audio que se codifica en una o mas tramas IS 151, 161 y las respectivas tramas DS 152, 153, 162.
La Fig. 2a ilustra diagramas de bloques de alto nivel de ejemplo de sistemas decodificadores multicanal 200, 210 de ejemplo. En particular, la Fig. 2a muestra un sistema decodificador multicanal 5.1 200 de ejemplo que recibe el IS 201 codificado que comprende el grupo basico 121 de canales codificado. El IS 201 codificado se obtiene a partir de las tramas IS 151 de un flujo de bits recibido (por ejemplo, utilizando un desmultiplexador que no se muestra). Las tramas IS 151 comprenden el grupo basico 121 de canales codificado y se decodifican utilizando un decodificador 205 multicanal 5.1, con el fin de producir una senal de audio multicanal 5.1 decodificada que comprende el grupo basico 221 de canales decodificado. Ademas, la Fig. 2a muestra un sistema decodificador 210 multicanal 7.1 de ejemplo que recibe el IS 201 codificado que comprende el grupo basico 121 de canales codificado y el DS 202 codificado que comprende el grupo 122 de ampliacion de canales codificado. Tal como se ha resumido mas arriba, el IS 201 codificado puede obtenerse a partir de las tramas IS 151 y el DS 202 codificado se puede obtener a partir de las tramas DS 152, 153 del flujo de bits recibido (por ejemplo, utilizando un desmultiplexador que no se muestra). Despues de la decodificacion, se obtiene una senal de audio multicanal 7.1 decodificada que comprende el grupo basico 221 de canales decodificado y un grupo 222 de ampliacion de canales decodificado. Se debe observar que los canales envolventes downmixed Lst, Rst 211 se pueden descartar, ya que el decodificador 215 multicanal 7.1 utiliza en su lugar el grupo 222 de ampliacion de canales decodificado. En la configuracion multicanal 230 de la Fig. 2b se muestran las posiciones 232 de renderizacion tfpicas de una senal de audio multicanal 7.1, la cual tambien ilustra una posicion 231 de ejemplo de un oyente y una posicion 233 de ejemplo de una pantalla para la renderizacion de video.
Actualmente, la codificacion de las senales de audio de canales 7.1 en DD+ se realiza mediante un primer codificador DD+ 105 de canales 5.1 principal y un segundo codificador DD+ 106. El primer codificador DD+ 105 codifica los canales 5.1 del grupo basico 121 (y puede por lo tanto denominarse codificador de canales 5.1) y el segundo codificador DD+ 106 codifica los canales 4.0 del grupo 122 de ampliacion (y puede por lo tanto denominarse codificador de canales 4.0). Los codificadores 105, 106 para el grupo basico 121 y el grupo 122 de ampliacion de canales tipicamente son independientes. Cada uno de los dos codificadores 105, 106 se proporciona con una tasa de datos, la cual se corresponde con una porcion fija de la tasa de datos total disponible. En otras palabras, el codificador 105 para el IS y el codificador 106 para el DS se proporcionan con una fraccion fija de la tasa de datos total disponible (por ejemplo, X% de la tasa de datos total disponible para el codificador IS 105 (denominada "tasa de datos IS") y 100%-X% de la tasa de datos total disponible para el codificador DS 106 (denominada "tasa de datos DS"), por ejemplo, X=50). Utilizando las tasas de datos asignadas respectivamente (esto es, la tasa de datos IS y la tasa de datos DS), el codificador IS 105 y el codificador DS 106 realizan una codificacion independiente del grupo basico 121 de canales y del grupo 122 de ampliacion de canales, respectivamente.
En el presente documento se propone la creacion de una dependencia entre el codificador IS 105 y el codificador DS 106 con el fin de aumentar la eficiencia del codificador 100 de audio multicanal conjunto. En particular, se propone proporcionar una asignacion adaptativa de la tasa de datos IS y la tasa de datos DS en funcion de las caractensticas o condiciones el grupo basico 121 de canales y el grupo 122 de ampliacion de canales.
A continuacion, se describen detalles adicionales en relacion con los componentes del codificador IS 105 y el codificador DS 106 en el contexto de la Fig. 3, la cual muestra un diagrama de bloques de un codificador
5
10
15
20
25
30
35
40
45
50
55
multicanal DD+ 300 de ejemplo. El codificador IS 105 y/o el codificador DS 106 se pueden materializar en el codificador multicanal DD+ 300 de la Fig. 3. Despues de describir los componentes del decodificador 300, se describe como se puede adaptar el codificador multicanal 300 para permitir la asignacion adaptativa de la tasa de datos IS y la tasa de datos DS mencionadas mas arriba.
El codificador multicanal 300 recibe flujos 311 de muestras PCM correspondientes a los diferentes canales de la senal de entrada multicanal (por ejemplo, la senal de entrada 5.1). Los flujos 311 de muestras PCM se pueden disponer en tramas de muestras pCm. Cada una de las tramas puede comprender un numero predeterminado de muestras PCM (por ejemplo, 1536 muestras) de un canal concreto de la senal de audio multicanal. Asf pues, para cada segmento de tiempo de la senal de audio multicanal, se proporciona una trama de audio diferente para cada uno de los diferentes canales de la senal de audio multicanal. El codificador 300 de audio multicanal se describe a continuacion para un canal concreto de la senal de audio multicanal. Sin embargo, se debe observar que la trama AC-3 resultante 318 comprende tipicamente los datos codificados de todos los canales de la senal de audio multicanal.
Una trama de audio que comprende muestras PCM 311 se puede filtrar en una unidad 301 de acondicionamiento de la senal de entrada. Posteriormente, las muestras 311 (filtradas) se pueden transformar del dominio del tiempo al dominio de la frecuencia en una unidad 302 de Transformacion Tiempo Frecuencia. Con este proposito, la trama de audio se puede subdividir en una pluralidad de bloques de muestras. Los bloques pueden tener un tamano L predeterminado (por ejemplo, 256 muestras por bloque). Ademas, los bloques adyacentes pueden tener cierto grado de solapamiento (por ejemplo, 50% de solapamiento) de muestras a partir de la trama de audio. El numero de bloques por trama de audio puede depender de la caractenstica de la trama de audio (por ejemplo, la presencia de un transitorio). Tfpicamente, la unidad 302 de Transformacion Tiempo Frecuencia aplica una Transformacion Tiempo Frecuencia (por ejemplo, una transformada MDCT (Transformada de Coseno Discreta Modificada)) a cada bloque de muestras pCm obtenidas de la trama de audio. Asf pues, en la unidad
302 de Transformacion Tiempo Frecuencia se obtiene un bloque de coeficientes 312 de transformacion para cada bloque de muestras.
Cada canal de la senal de audio multicanal se puede procesar por separado, con el fin de producir secuencias independientes de bloques de coeficientes 312 de transformacion para los diferentes canales de la senal de entrada multicanal. En vista de las correlaciones entre algunos canales de la senal de entrada multicanal (por ejemplo, correlaciones entre las senales envolvente Ls y Rs), se puede realizar un canal conjunto en una unidad
303 de procesamiento conjunto de canales. En un modo de realizacion de ejemplo, la unidad 303 de procesamiento conjunto de canales realiza un acoplamiento de canal, con el fin de convertir un grupo de canales acoplados en un unico canal compuesto mas informacion lateral de acoplamiento la cual puede ser utilizada por un sistema decodificador 200, 210 correspondiente para reconstruir los canales individuales a partir del unico canal compuesto. A modo de ejemplo, se pueden acoplar los canales Ls y Rs de una senal de audio 5.1 o se pueden acoplar los canales L, C, R, Ls y Rs. Si se utiliza el acoplamiento en la unidad 303, unicamente se envfa el canal compuesto unico a las unidades de procesamiento adicionales que se muestran en la Fig. 3. En caso contrario, los canales individuales (esto es, las secuencias individuales de bloques de coeficientes 312 de transformacion) se pasan a las unidades de procesamiento adicionales del codificador 300.
A continuacion, se describen las unidades de procesamiento adicionales para una secuencia de ejemplo de bloques de coeficientes 312 de transformacion. La descripcion es aplicable a cada uno de los canales que se van a codificar (por ejemplo, a los canales individuales de la senal de entrada multicanal o a uno o mas canales compuestos resultantes del acoplamiento de canales).
La unidad 304 de codificacion de coma flotante de bloques esta configurada para renderizar los coeficientes 312 de transformacion de un canal (aplicable a todos los canales, incluyendo los canales de ancho de banda completa (por ejemplo, los canales L, C y R), el canal LFE (Efectos de Baja Frecuencia), y el canal de acoplamiento) en un formato de exponente/mantisa. Convirtiendo los coeficientes 312 de transformacion a un formato exponente/mantisa, se puede independizar el ruido de cuantificacion que resulta de la cuantificacion de los coeficientes 312 de transformacion del nivel absoluto de la senal de entrada.
Tfpicamente, la codificacion de coma flotante de bloques en la unidad 304 puede convertir cada uno de los coeficientes 312 de transformacion en un exponente y una mantisa. Los exponentes se van a codificar tan eficientemente como sea posible con el fin de reducir la sobrecarga de tasa de datos requerido para transmitir los exponentes 313 codificados. Al mismo tiempo, los exponentes se debenan codificar de forma tan precisa como sea posible con el fin de evitar la perdida de resolucion espectral de los coeficientes 312 de transformacion. A continuacion, se describe brevemente un esquema de codificacion de coma flotante de bloques de ejemplo que se utiliza en DD+ para conseguir los objetivos mencionados anteriormente. Para obtener detalles adicionales en relacion con el esquema de codificacion DD+ (y en particular el esquema codificacion de coma flotante de bloques utilizado por DD+) se puede consultar el documento Fielder, L.D. y otros "Introduction to Dolby Digital Plus, and Enhancement to the Dolby Digital Coding System (Introduccion a Dolby Digital Plus y Mejora del Sistema de Codificacion Dolby Digital)", Convencion AEC, 28-31 de octubre de 2004.
5
10
15
20
25
30
35
40
45
50
55
60
En un primer paso de codificacion de coma flotante de bloques, los exponentes originales se pueden determinar para un bloque de coeficientes 312 de transformacion. Esto se ilustra en la Fig. 4a, donde se ilustra un bloque de exponentes originales 401 para un bloque de ejemplo de coeficientes 402 de transformacion. Se supone que un coeficiente 402 de transformacion tiene un valor X, en donde el coeficiente 402 de transformacion se puede normalizar de modo que X sea menor o igual que 1. El valor X se puede representar en un formato mantisa/exponente X=m*2(-e), siendo m la mantisa (m<=1) y siendo e el exponente. En un modo de realizacion, el exponente originales 401 puede tomar valores ente 0 y 24, con el fin de cubrir un rango dinamico de mas de 144dB (esto es, 2(-0) a 2(-24)).
Con el fin de reducir aun mas el numero de bits necesarios para codificar los exponentes (originales) 401, se pueden aplicar varios esquemas como, por ejemplo, la comparticion de tiempo de exponentes a traves de bloques de coeficientes 312 de transformacion de una trama de audio completa (tfpicamente seis bloques por trama de audio). Ademas, se pueden compartir exponentes a traves de frecuencias (esto es, a traves de contenedores de frecuencia adyacentes en el dominio transformado/de frecuencia). A modo de ejemplo, se puede compartir un exponente a traves de dos o mas contenedores de frecuencia. Ademas, los exponentes de un bloque de coeficientes 312 de transformacion se pueden acotar con el fin de asegurar que las diferencias entre exponentes adyacentes no exceden un valor maximo predeterminado, por ejemplo, +/-2. Esto permite una codificacion diferencial eficiente de los exponentes de un bloque de coeficientes 312 de transformacion (por ejemplo, utilizando cinco diferenciales). Los esquemas mencionados anteriormente para reducir la tasa de datos requerida para codificar los exponentes (esto es, codificacion de comparticion de tiempo, de comparticion de frecuencia, de acotacion y diferencial) se pueden combinar de diferentes maneras para definir modos de codificacion de exponentes para obtener diferentes tasas de datos utilizadas para codificar los exponentes. Como resultado de la codificacion de exponentes mencionada anteriormente, se obtiene una secuencia de exponentes 313 codificados para los bloques de coeficientes 312 de transformacion de una trama de audio (por ejemplo, seis bloques por trama de audio).
Como paso adicional del esquema de Codificacion de Coma Flotante de Bloques realizado en la unidad 304, las mantisas m' de los coeficientes 402 de transformacion originales se normalizan mediante el correspondiente exponente e' codificado resultante. El exponente e' codificado resultante puede ser diferente del exponente e original mencionado mas arriba (debido a la comparticion de tiempo, comparticion de frecuencia y/o pasos de acotacion). Para cada uno de los coeficientes 402 de transformacion de la Fig. 4a, la mantisa m' normalizada se puede determinar como X=m'*2(-e'), en donde X es el valor del coeficiente 402 de transformacion original. Las mantisas m' normalizadas 314 para los bloques de la trama de audio se pasan a la unidad 306 de cuantificacion para la cuantificacion de las mantisas 314. La cuantificacion de las mantisas 314, esto es, la precision de las mantisas 317 cuantificadas, depende de la tasa de datos que se encuentra disponible para la cuantificacion de las mantisas. La tasa de datos disponible se determina en la unidad 305 de asignacion de bits.
El proceso de asignacion de bits realizado en la unidad 305 determina el numero de bits que pueden ser asignados a cada una de las mantisas 314 normalizadas de acuerdo con principios psicoacusticos. El proceso de asignacion de bits comprende el paso de determinar el numero de bits disponibles para cuantificar las mantisas normalizadas de una trama de audio. Ademas, el proceso de asignacion de bits determina una distribucion de densidad espectral de potencia (PSD) y una curva de enmascaramiento en el dominio de la frecuencia (basada en un modelo psicoacustico) para cada canal. La distribucion de la PSD y la curva de enmascaramiento en el dominio de la frecuencia se utilizan para determinar una distribucion sustancialmente optima de los bits disponibles para las diferentes mantisas 314 normalizadas de la trama de audio.
El primer paso del proceso de asignacion de bits es determinar cuantos bits de mantisa hay disponibles para codificar las mantisas 314 normalizadas. La tasa de datos objetivo se convierte en un numero total de bits que estan disponibles para codificar una trama de audio actual. En particular, la tasa de datos objetivo especifica un numero k bits/s para la senal de audio multicanal codificada. Considerando una longitud de trama de T segundos, el numero total de bits se puede determinar como T*k. El numero disponible de bits de mantisa se puede determinar a partir del numero total de bits restando los bits que ya se han utilizado para codificar la trama de audio como, por ejemplo, metadatos, indicadores de cambio de bloque (para indicar transitorios detectados y tamanos de bloque seleccionados), factores de escala de acoplamiento, exponentes, etc. El proceso de asignacion de bits tambien puede sustraer bits que todavfa puede ser necesario asignar a otros aspectos como, por ejemplo, parametros 315 de asignacion de bits (ver mas abajo). Como resultado, se puede determinar el numero total de bits de mantisa disponibles. El numero total de bits de mantisa disponibles se puede distribuir a continuacion entre todos los canales (por ejemplo, los canales principales, el canal LFE y el canal de acoplamiento) sobre todos (por ejemplo, uno, dos, tres o seis) bloques de la trama de audio.
Como paso adicional, se puede determinar la distribucion de densidad espectral de potencia ("PSD") del bloque de coeficientes 312 de transformacion. La PSD es una medida de la energfa de la senal en cada contenedor de frecuencia del coeficiente de transformacion de la senal de entrada. La PSD se puede determinar basandose en los exponentes 313 codificados, con el fin de permitir que el sistema 200, 210 decodificador de audio multicanal correspondiente determine la PSD del mismo modo que el codificador multicanal 300 de audio. La Fig. 4b ilustra
5
10
15
20
25
30
35
40
45
50
55
60
la distribucion 410 de la PSD de un bloque de coeficientes 312 de transformacion que se ha obtenido a partir de los exponentes 313 codificados. La distribucion 410 de la PSD se puede utilizar para calcular la curva 431 de enmascaramiento en el dominio de la frecuencia (ver Fig. 4d) para el bloque de coeficientes 312 de transformacion. La curva 431 de enmascaramiento en el dominio de la frecuencia tiene en cuenta los efectos de enmascaramiento psicoacustico que describen el fenomeno de que una frecuencia enmascaradora enmascara frecuencias en la vecindad directa de la frecuencia enmascaradora, convirtiendo de este modo en inaudibles las frecuencias en la vecindad directa de la frecuencia enmascaradora si su energfa se encuentra por debajo de cierto umbral de enmascaramiento. La Fig. 4c muestra una frecuencia enmascaradora 421 y la curva 422 de umbral de enmascaramiento para frecuencias vecinas. La curva 422 de umbral de enmascaramiento real se puede modelar mediante una plantilla 423 de enmascaramiento (lineal definida por tramos) (de dos segmentos) utilizada en el codificador DD+.
Se ha observado que la forma de la curva 422 de umbral de enmascaramiento (y en consecuencia tambien de la plantilla 423 de enmascaramiento) se mantiene sustancialmente sin cambios para diferentes frecuencias de enmascaramiento sobre una escala de banda cntica tal como ha sido definida por, por ejemplo, Zwicker (o sobre una escala logantmica). Basandose en esta observacion, el codificador DD+ aplica la plantilla 423 de enmascaramiento sobre una distribucion de la PSD en bandas (en donde la distribucion de la PSD en bandas se corresponde con la distribucion de la PSD sobre la escala de banda cntica en la que las bandas tienen aproximadamente una anchura mitad de las bandas cnticas). En el caso de una distribucion de la PSD en bandas se determina un valor de PSD unico para cada una de la pluralidad de bandas en la escala de bandas cntica (o en la escala logantmica). La Fig. 4d ilustra un ejemplo de distribucion 430 de la PSD en bandas para la distribucion 410 de la PSD espaciada linealmente de la Fig. 4b. La distribucion 430 de la PSD en bandas se puede determinar a partir de la distribucion 410 de la PSD espaciada linealmente combinando (por ejemplo, utilizando una operacion suma de logaritmos) valores de PSD de la distribucion 410 de la PSD espaciada linealmente que se encuentran dentro de la misma banda sobre la escala de bandas cntica (o en la escala logantmica). La plantilla 423 de enmascaramiento se puede aplicar a cada valor de la PSD de la distribucion 430 de la PSD en bandas, con el fin de producir una curva 431 de enmascaramiento en el dominio de la frecuencia global para el bloque de coeficientes 402 de transformacion sobre la escala de bandas cntica (o sobre la escala logantmica) (ver Fig. 4d).
La curva 431 de enmascaramiento en el dominio de la frecuencia global de la Fig. 4d se puede retrotraer a la resolucion de la frecuencia lineal y se puede comparar con la distribucion 410 de la PSD lineal de un bloque de coeficientes 402 de transformacion que se muestran en la Fig. 4b. Esto se ilustra en la Fig. 4e que muestra la curva 441 de enmascaramiento en el dominio de la frecuencia sobre una resolucion lineal, asf como la distribucion 410 de la PSD sobre una resolucion lineal. Se debena observar que la curva 441 de enmascaramiento en el dominio de la frecuencia tambien puede tener en cuenta el umbral absoluto de la curva de escucha. El numero de bits para codificar la mantisa de los coeficientes 402 de transformacion de un contenedor de frecuencia concreto se puede determinar en funcion de la distribucion 410 de la PSD y en funcion de la curva 441 de enmascaramiento. En particular, los valores de PSD de la distribucion 410 de la PSD que se encuentran por debajo de la curva 441 de enmascaramiento se corresponden con las mantisas que son perceptualmente irrelevantes (porque el componente de frecuencia de la senal de audio en dichos contenedores de frecuencia es enmascarada por una frecuencia de enmascaramiento en su vecindad). En consecuencia, no es necesario en absoluto asignar ningun bit a las mantisas de dichos coeficientes 402 de transformacion. Por otro lado, los valores de PSD de la distribucion 410 de la PSD que se encuentran por encima de la curva 441 de enmascaramiento indican que se debenan asignar bits para codificar las mantisas de los coeficientes 402 de transformacion en dichos contenedores de frecuencia. El numero de bits asignados a dichas mantisas debena aumentar con el aumento de la diferencia entre el valor de PSD de la distribucion 410 de la PSD y el valor de la curva 441 de enmascaramiento. El proceso de asignacion de bits mencionado mas arriba produce una asignacion 442 de bits a los diferentes coeficientes 402 de transformacion tal como se muestra en la Fig. 4e.
El proceso de asignacion de bits mencionado mas arriba se ejecuta para todos los canales (por ejemplo, los canales directos, el canal LFE y el canal de acoplamiento) y para todos los bloques de la trama de audio, con el fin de generar un numero (preliminar) total de bits asignados. Es poco probable que este numero preliminar total de bits asignados se corresponda con (por ejemplo, se igual a) el numero total de bits de mantisa disponibles. En algunos casos (por ejemplo, para senales de audio complejas), el numero preliminar total de bits asignados puede exceder el numero de bits de mantisa disponibles (falta de bits). En otros casos (por ejemplo, en el caso de senales de audio simples), el numero preliminar total de bits asignados puede encontrarse por debajo del numero de bits de mantisa disponibles (exceso de bits). El codificador 300 intenta tipicamente ajustar el numero total (final) de bits asignados tanto como sea posible al numero de bits de mantisa disponibles. Para este proposito, el codificador 300 puede utilizar un parametro denominado variacion de SNR. La variacion de SNR permite un ajuste de la curva 441 de enmascaramiento, moviendo la curva 441 de enmascaramiento hacia arriba o hacia abajo con respecto a la distribucion 410 de la PSD. Desplazando hacia arriba o hacia abajo la curva 441 de enmascaramiento, el numero (preliminar) de bits asignados puede disminuir o aumentar, respectivamente. Asf pues, la variacion de SNR se puede ajustar de forma iterativa hasta que se cumpla un criterio de terminacion (por
5
10
15
20
25
30
35
40
45
50
55
ejemplo, el criterio de que el numero preliminar de bits asignados se encuentre tan cerca como sea posible (pero por debajo) del numero de bits asignados; o el criterio de que se ha realizado un numero maximo de iteraciones).
Tal como se ha indicado mas arriba, la busqueda iterativa para una variacion de SNR que permite un mejor ajuste entre el numero final de bits asignados y el numero de bits disponibles hace uso de una busqueda binaria. En cada iteracion, se determina si el numero preliminar de bits asignados excede o no el numero de bits disponibles. A partir de este paso de determinacion se modifica la variacion de SNR y se realiza el paso siguiente de la iteracion. La busqueda binaria se configura para determinar el mejor ajuste (y la variacion de SNR correspondiente) utilizando iteraciones (log2(K)+1), en donde K es el numero de variaciones de SNR posibles. Despues de terminar la busqueda iterativa se obtiene un numero de bits asignados final (el cual se corresponde tipicamente con uno de los numeros de bits asignados preliminares determinados previamente). Se debena observar que el numero final de bits asignados puede ser (ligeramente) inferior al numero de bits disponibles. En dichos casos, se pueden utilizar bits de salto para alinear completamente el numero final de bits asignados con el numero de bits disponibles.
La variacion de SNR se puede definir de modo que una variacion de SNR cero produce mantisas codificadas que dan lugar a una condicion de codificacion conocida como "diferencia casi imperceptible" entre la senal de audio original y la senal codificada. En otras palabras, en una variacion de SNR cero el codificador 300 opera de acuerdo con el modelo de percepcion. Un valor positivo de la variacion de SNR puede desplazar hacia abajo la curva 441 de enmascaramiento, aumentando de este modo el numero de bits asignados (tfpicamente sin ninguna mejora de calidad perceptible). Un valor negativo de la variacion de SNR puede desplazar hacia arriba la curva 441 de enmascaramiento, disminuyendo de este modo el numero de bits asignados (e incrementando asf tfpicamente el ruido de cuantificacion audible). La variacion de SNR puede ser, por ejemplo, ser un parametro de 10 bits con un rango valido de -48 a +144 dB. Con el fin de encontrar el valor de variacion de sNr optimo, el codificador 300 puede realizar una busqueda binaria iterativa. La busqueda binaria iterativa puede entonces requerir hasta 11 iteraciones (en el caso de un parametro de 10 bits) de comparaciones de distribucion 410 de la PSD/curva 441 de enmascaramiento. El valor de variacion de SNR utilizado realmente se puede transmitir al decodificador correspondiente como un parametro 315 de asignacion de bits. Ademas, las mantisas se codifican de acuerdo con los bits asignados finales, con el fin de producir un conjunto de mantisas codificadas 317.
Asf pues, el parametro de variacion de SNR (Relacion Senal a Ruido) se puede utilizar como indicador de la calidad de codificacion de la senal de audio multicanal codificada. De acuerdo con el convenio mencionado mas arriba de la variacion de SNR, una variacion de SNR cero indicar una senal de audio multicanal codificada con una "diferencia casi imperceptible" con respecto a la senal de audio multicanal original. Una variacion de SNR positiva indica una senal de audio multicanal codificada que tiene una calidad de al menos la "diferencia casi imperceptible" con respecto a la senal de audio multicanal original. Una variacion de SNR negativa indica una senal de audio multicanal codificada que tiene una calidad menor que la "diferencia casi imperceptible" con respecto a la senal de audio multicanal original. Se debena observar que pueden ser posibles otros convenios del parametro de variacion de SNR (por ejemplo, una definicion inversa).
El codificador 300 comprende, ademas, una unidad 307 de empaquetado de flujos de bits, la cual esta configurada para organizar los exponentes 313 codificados, las mantisas 317 codificadas, los parametros 315 de asignacion de bits, asf como otros datos de codificacion (por ejemplo, indicadores de cambio de bloque, metadatos, factores de escala de acoplamiento, etc.) en una estructura de trama predeterminada (por ejemplo, la estructura de trama AC-3), con el fin de generar una trama codificada 318 para una trama de audio de la senal de audio multicanal.
Tal como ya se ha resumido mas arriba, y tal como se muestra en la Fig. 1a, los flujos DD+ 7.1 se codifican tfpicamente mediante una codificacion independiente del grupo basico 121 de canales utilizando un codificador IS 105, con el fin de generar el IS 110 y un grupo 122 de ampliacion de canales utilizando un codificador DS 106, con el fin de generar el DS 120. El codificador IS 105 y el codificador DS 106 se configuran tfpicamente con un porcentaje fijo de la tasa de datos total, esto es, cada codificador 105, 106 realiza un proceso de asignacion de bits independiente sin ninguna interaccion entre ambos codificadores 105, 106. Tfpicamente, al codificador IS 105 se le asigna el X% de la tasa de datos total y al codificador DS 106 se le asigna el 100-X% de la tasa de datos total, en donde X es un valor fijo, por ejemplo, X=50.
Tal como se ha descrito mas arriba, el codificador multicanal 300 ajusta la variacion de SNR de modo que el numero total (final) de bits asignados se aproxima (tanto como sea posible) al numero total de bits disponibles. En el contexto de este proceso de asignacion de bits, la variacion de SNR se puede ajustar (por ejemplo, aumentar/reducir) de modo que el numero de bits asignados se aumenta/reduce. Sin embargo, si el codificador 300 asigna mas bits de los necesarios con el fin de conseguir la "diferencia casi imperceptible", los bits asignados adicionalmente realmente se desperdician, debido a que los bits asignados adicionalmente tfpicamente no producen ninguna mejora de la calidad perceptual de la senal de audio codificada. Teniendo esto en cuenta, se propone proporcionar un proceso de asignacion de bits flexible y combinado para el codificador IS 105 y para el codificador DS 106, con el fin de permitir que los dos codificadores 105, 106 ajusten de forma dinamica la
5
10
15
20
25
30
35
40
45
50
55
60
fraccion de la tasa de datos total para el codificador IS 105 (denominada "tasa de datos IS") y la fraccion de la tasa de datos total para el codificador DS 106 (denominada "tasa de datos DS") a lo largo del tiempo (en funcion de los requisitos de la senal de audio multicanal). La tasa de datos IS y la tasa de datos Ds se ajustan preferiblemente de modo que su suma se corresponde siempre con la tasa de datos total. El proceso de asignacion de bits combinado se ilustra en la Fig. 5a. La Fig. 5a muestra el codificador IS 105 y el codificador DS 106. Ademas, la Fig. 5a muestra una unidad 501 de control de tasa configurada para determinar la tasa de datos IS y la tasa de datos DS en funcion de datos 505 de salida realimentados desde el codificador IS 105 y en funcion de datos 506 de salida realimentados desde el codificador DS 106. Los datos 505, 506 de salida pueden ser, por ejemplo, ser el IS codificado 110 y el DS codificado 120, respectivamente; y/o la variacion de SNR del codificador 105, 106 respectivo. Asf pues, la unidad 501 de control de tasa puede tener en cuenta los datos 505, 506 de salida de los dos codificadores 105, 106 para determinar de forma dinamica la tasa de datos IS y la tasa de datos DS. En un modo de realizacion preferido, la asignacion variable de la tasa de datos IS y la tasa de datos DS se realiza de modo que la asignacion variable no tiene impacto en el sistema 200, 210 decodificador de audio multicanal correspondiente. En otras palabras, la asignacion variable debena ser transparente al sistema 200, 210 decodificador de audio multicanal correspondiente.
Una posible forma de implementar una asignacion variable de las tasas de datos IS/DS es implementar un proceso de asignacion de bits compartido para asignar los bits de mantisa. El codificador IS 105 y el codificador DS 106 pueden realizar de forma independiente pasos de codificacion que preceden al proceso de asignacion de bits de mantisa (realizado en la unidad 305 de asignacion de bits). En particular, la codificacion de los indicadores de cambio de bloque, factores de escala de acoplamiento, exponentes, extension espectral, etc. se pueden realizar de forma independiente en el codificador IS 105 y en el codificador DS 106. Por otro lado, el proceso de asignacion de bits realizado en las respectivas unidades 305 del codificador IS 105 y el codificador DS 106 se pueden realizar conjuntamente. Tfpicamente, alrededor del 80% de los bits del IS y el DS se utilizan para codificar las mantisas. En consecuencia, incluso aunque los codificadores IS y DS 105, 106 trabajen de forma independiente para una codificacion distinta de la asignacion de bits de mantisa, la parte significativa de la codificacion (esto es, la asignacion de bits de mantisa) se realiza conjuntamente.
En otras palabras, se propone codificar independientemente los datos "fijos" de cada grupo de canales (por ejemplo, los exponentes, coordenadas de acoplamiento, extension espectral, etc.). Posteriormente, se realiza un proceso de asignacion de bits unico para el grupo basico 121 y el grupo 122 de ampliacion utilizando el total de bits restantes. A continuacion, se cuantifican y empaquetan las mantisas de ambos flujos para generar las tramas 151 del IS codificadas (denominadas tramas IS 151) y las tramas 152 del DS codificadas (denominadas tramas DS 152). Como resultado del proceso de asignacion de bits combinado, las tramas IS 151 pueden variar de tamano a lo largo del tiempo (debido a una variacion de la tasa de datos del IS). De forma parecida, las tramas DS 152 pueden variar de tamano a lo largo del tiempo (debido a una variacion de la tasa de datos del IS). Sin embargo, para cada intervalo de tiempo 170 (esto es, para cada trama de audio de la senal de audio multicanal) la suma del tamano de la(s) trama(s) IS 151 y la(s) trama(s) DS 152 debena ser sustancialmente constante (debido a la tasa de datos total constante). Ademas, como resultado del proceso de asignacion de bits combinado, la variacion de SNR del IS y el DS debenan ser identicas, debido a que el proceso de asignacion de bits conjunto realizado en la unidad 305 de asignacion de bits conjunta ajusta una variacion de SNR conjunta con el fin de hacer coincidir el numero de bits de mantisa asignados (conjunto para el IS y el DS) y el numero de bits de mantisa disponibles (conjunto para el IS y el DS). El hecho de tener variaciones de SNR identicas para el IS y el DS debena mejorar la calidad total permitiendo que el flujo secundario mas falto de bits (por ejemplo, el IS) utilice los bits extra si y cuando el otro flujo secundario (por ejemplo, el DS) tenga en exceso.
La Fig. 5b ilustra el diagrama de flujo de un metodo 510 de codificacion IS/DS combinado de ejemplo. El metodo comprende los pasos 521, 531 independientes de acondicionamiento de la senal para las tramas de senal del grupo basico 121 y el grupo 122 de ampliacion, respectivamente. El metodo 510 continua con los pasos 522, 532 independientes de Transformacion de Tiempo a Frecuencia para los bloques del grupo basico 121 y para los bloques del grupo 122 de ampliacion, respectivamente. A continuacion, se pueden realizar los pasos 523, 533 conjuntos de procesamiento de canales para el grupo basico 121 y el grupo 122 de ampliacion, respectivamente. A modo de ejemplo, en el caso del grupo basico 121, se pueden acoplar los canales Lst y Rst o todos los canales (excepto el canal LFE) (paso 523), en donde para el grupo 122 de ampliacion, se pueden acoplar los canales Ls y Rs y/o Lb y Rb (paso 533), con el fin de generar los canales acoplados y los parametros de acoplamiento respectivos. Ademas, se puede realizar la Codificacion 524, 534 de Bloques en Coma Flotante para los bloques del grupo basico 121 y para los bloques del grupo 122 de ampliacion, respectivamente. Como resultado, se obtienen los exponentes 313 codificados para el grupo basico 121 y para el grupo 122 de ampliacion, respectivamente. Los pasos de procesamiento mencionados mas arriba se pueden realizar tal como se ha resumido en el contexto de la Fig. 3.
El metodo 510 comprende un paso 540 conjunto de asignacion de bits. La asignacion conjunta 540 de bits comprende un paso 541 conjunto para determinar los bits de mantisa disponibles, esto es, para determinar el numero total de bits que se encuentran disponibles para codificar las mantisas del grupo basico 121 y del grupo 122 de ampliacion. Ademas, el metodo 510 comprende los pasos 525, 535 de determinacion de la distribucion de
5
10
15
20
25
30
35
40
45
50
55
la PSD para los bloques del grupo basico 121 y para los bloques del grupo 122 de ampliacion, respectivamente. Ademas, el metodo 510 comprende los pasos 526, 536 de determinacion de la curva de enmascaramiento para el grupo basico 121 y el grupo 122 de ampliacion, respectivamente. Tal como se ha resumido mas arriba, las distribuciones de la PSD y las curvas de enmascaramiento se determinan para cada uno de los canales de la senal multicanal y para cada uno de los bloques de la trama de senal. En el contexto de los pasos 527, 537 de comparacion de PSD/enmascaramiento (para el grupo basico 121 y el grupo 122 de ampliacion, respectivamente) se comparan las distribuciones de la PSD y las curvas de enmascaramiento y se asignan los bits a las mantisas del grupo basico 121 y el grupo 122 de ampliacion, respectivamente. Estos pasos se ejecutan para cada uno de los canales y para cada uno de los bloques. Ademas, estos pasos se ejecutan para una variacion de SNR dada (que es la misma para los pasos 527 y 537 de comparacion de PSD/enmascaramiento).
Despues de la asignacion de bits a las mantisas utilizando una variacion de SNR dada, el metodo 510 continua con el paso 542 conjunto de ajuste de determinacion del numero total de bits de mantisa disponibles. Ademas, en el contexto del paso 542 se determina si el numero total de bits de mantisa asignados coincide con el numero total de bits de mantisa disponibles (determinado en el paso 541). Si se ha determinado una correspondencia optima, el metodo 510 continua con la cuantificacion 528, 538 de las mantisas del grupo basico 121 y el grupo 122 de ampliacion, respectivamente, en funcion de los bits de mantisa disponibles determinados en los pasos 527, 537. Ademas, en los pasos 529, 539 de empaquetamiento del flujo de bits se determinan las tramas IS 151 y las tramas DS 152, respectivamente. Por otro lado, si todavfa no se ha conseguido una correspondencia optima, se modifica la variacion de SNR y se repiten los pasos 527, 537 de comparacion de PSD/enmascaramiento y el paso 542 de ajuste. Los pasos 527, 537 y 542 se iteran hasta que se determina una correspondencia optima y/o hasta que se alcanza una condicion de terminacion (por ejemplo, un numero maximo de iteraciones).
Se debena observar que los pasos 525, 535 de determinacion de la PSD, los pasos 526, 536 de determinacion de la curva de enmascaramiento y los pasos 527, 537 de comparacion de PSD/enmascaramiento se realizan para cada canal de la senal multicanal y para cada bloque de una trama de senal. En consecuencia, estos pasos se realizan (por definicion) por separado para el grupo basico 121 y el grupo 122 de ampliacion. De hecho, estos pasos se realizan por separado para cada canal de la senal multicanal.
En conjunto, el metodo 510 de codificacion permite una asignacion mejorada de las tasas de datos al IS y al DS (en comparacion con un proceso de asignacion de bits independiente). Como consecuencia, se mejora la calidad perceptual de la senal multicanal codificada (que comprende un IS y al menos un DS) (en comparacion con una senal multicanal codificada utilizando codificadores IS y DS 105, 106 independientes).
Se debena observar que las tramas IS 151 y las tramas DS 152 que genera el metodo 510 se pueden disponer de forma que sean compatibles con las tramas IS y las tramas DS generadas por los codificadores IS y DS 105, 106 independientes, respectivamente. En particular, cada una de las tramas IS y DS 151, 152 puede comprender parametros de asignacion de bits que permitan que un sistema 200, 210 decodificador multicanal convencional decodifique por separado las tramas IS y DS 151, 152. En particular, en la trama IS 151 y en la trama DS 152 se puede insertar el (mismo) valor de variacion de SNR. Por lo tanto, se puede utilizar un codificador multicanal basado en el metodo 510 junto con los sistemas 200, 210 decodificadores multicanal convencionales.
Puede ser deseable utilizar un codificador IS 105 estandar y un codificador DS 106 estandar para codificar el grupo basico 121 y el grupo 122 de ampliacion, respectivamente. Esto puede ser beneficioso por razones de coste. Ademas, en algunas situaciones puede no ser posible implementar un proceso 540 de asignacion conjunta de conjunto tal como se ha descrito en el contexto de la Fig. 5b. Sin embargo, es deseable permitir la adaptacion de la tasa de datos IS y la tasa de datos DS a la senal de audio multicanal y mejorar de este modo la calidad global de la senal de audio multicanal codificada.
Con el fin de permitir la adaptacion de la tasa de datos IS y la tasa de datos DS sin modificar el codificador IS 105 y el codificador DS 106, la tasa de datos IS y la tasa de datos DS se pueden controlar externamente a los codificadores IS/DS 105, 106, por ejemplo, en funcion de la dificultad de codificacion de flujo relativa estimada para una trama concreta. La dificultad de codificacion relativa para una trama concreta se puede estimar, por ejemplo, en funcion de la entropfa perceptual, en funcion de la tonalidad o en funcion de la energfa. La dificultad de codificacion se puede calcular en funcion de las muestras PCM de entrada del codificador relevantes para la trama actual a codificar. Esto puede requerir una alineacion de tiempo correcta de las muestras PCM en funcion de cualquier retardo de tiempo de codificacion posterior (por ejemplo, provocado por un filtro LFE, un filtro HP, un desplazamiento de fase de 90° de los canales Envolventes Izquierdo y Derecho y/o Pre-Procesamiento de Ruido Temporal (TPNP)). Ejemplos de indicadores de la dificultad de codificacion pueden ser la potencia de la senal, la uniformidad espectral, las estimaciones de tonalidad, las estimaciones transitorias y/o la entropfa perceptual. La entropfa perceptual mide el numero de bits necesarios para codificar un espectro de senal con un ruido de cuantificacion justo por debajo del umbral de enmascaramiento. Un valor mayor para la entropfa perceptual indica una dificultad de codificacion mayor. Sonidos con un caracter tonal (esto es, sonidos con una estimacion de tonalidad alta) son tfpicamente mas diffciles de codificar tal como se refleja, por ejemplo, en el calculo de la curva de enmascaramiento del Modelo Psicoacustico MPEG-1 ISO/IEC 11172-3. Asf pues, una estimacion de tonalidad
5
10
15
20
25
30
35
40
45
50
alta puede indicar una dificultad de codificacion alta (y viceversa). Un indicador simple para la dificultad de codificacion se puede basar en la potencia promedio de la senal del grupo basico de canales y/o de los grupos de ampliacion de canales.
Se puede comparar la dificultad de codificacion estimada de una trama actual del grupo basico y la trama actual correspondiente del grupo de ampliacion y se puede distribuir consecuentemente la tasa de datos IS / tasa de datos DS (y los bits de mantisa respectivos). Una posible formula para determinar la tasa de datos IS / tasa de datos DS puede ser:
en donde Rds es la tasa de datos DS, Rt es la tasa de datos total, Ris es la tasa de datos IS, Dis es la dificultad de codificacion de un canal del grupo basico (por ejemplo, la dificultad promedio de codificacion de los canales del grupo basico, Dds es la dificultad de codificacion de un canal del grupo de ampliacion (por ejemplo, la dificultad promedio de codificacion de los canales del grupo de ampliacion), Nis es el numero de canales en el grupo basico, y Nds es el numero de canales en el grupo de ampliacion.
Las tasas de datos DS e IS determinadas se pueden calcular de modo que el numero de bits para el IS y/o el DS no se encuentre por debajo de un mmimo numero de bits fijo para una trama IS y/o una trama DS. Asf pues, se puede asegurar una calidad minima para el IS y/o el DS. En concreto, el mmimo numero de bits fijo para una trama IS y/o para una trama DS puede estar limitado por el numero de bits necesarios para codificar todos los datos distintos de las mantisas (por ejemplo, los exponentes, etc.).
En otra estrategia, se puede determinar la diferencia (IS vs. DS) de dificultad de codificacion mediana (o media) sobre un conjunto grande de contenido multicanal relevante. El control de la distribucion de tasa de datos puede ser de modo que para las tramas tfpicas (con una diferencia de dificultad de codificacion dentro de un rango predeterminado de la diferencia de dificultad de codificacion mediana) se utilice una distribucion de tasa de datos por defecto (por ejemplo, X% y 100%-X%). En caso contrario, la distribucion de tasa de datos puede desviarse del valor por defecto en funcion de la desviacion de la diferencia de dificultad de codificacion real con respecto a la diferencia de dificultad de codificacion mediana.
En la Fig. 5c se ilustra un codificador 550 que adapta la tasa de datos IS y la tasa de datos DS en funcion de la dificultad de codificacion. El codificador 550 comprende una unidad 55l de determinacion de dificultad de codificacion que recibe la senal 552 de audio multicanal (y/o el grupo basico 121 de canales y el grupo 122 de ampliacion de canales). La unidad 551 de determinacion de dificultad de codificacion analiza las tramas de senal respectivas del grupo basico 121 y el grupo 122 de ampliacion y determina una dificultad de codificacion relativa de las tramas del grupo basico 121 y el grupo 122 de ampliacion. La dificultad de codificacion relativa se pasa a la unidad 553 de control de tasa, la cual esta configurada para determinar la tasa de datos IS 561 y la tasa de datos DS 562 en funcion de la dificultad de codificacion relativa. A modo de ejemplo, si la dificultad de codificacion relativa indica una dificultad de codificacion mayor para el grupo basico 121 con respecto al grupo 122 de ampliacion, se aumenta la tasa de datos IS 561 y se reduce la tasa de datos DS 562 (y viceversa).
Otra estrategia para una adaptacion de la tasa de datos IS y la tasa de datos DS sin modificar el codificador IS 105 y el codificador DS 106 es extraer uno o mas parametros de codificacion de las tramas IS/DS 151, 152 y utilizar el uno o mas parametros de codificacion para modificar la tasa de datos IS y la tasa de datos DS. A modo de ejemplo, el uno o mas parametros de codificacion extrafdos de las tramas IS/DS 151, 152 de una trama de senal (n-1) se puede tener en cuenta para determinar las tasas de datos IS/DS para codificar la trama de senal (n) siguiente. El uno o mas parametros de codificacion pueden estar relacionados con la calidad de percepcion del IS 110 codificado y el DS 120 codificado. A modo de ejemplo, el uno o mas parametros de codificacion puede ser la variacion de SNR DD/DD+ utilizada en el codificador IS 105 (denominada variacion de SNR IS) y la variacion de SNR utilizada en el codificador DS 106 (denominada variacion de SNR DS). Asf pues, se pueden utilizar las variaciones de SNR IS/DS tomadas de las tramas IS/DS 151, 152 anteriores (en el instante de tiempo (n-1)) para controlar de forma adaptativa las tasas de datos IS/DS para la trama de senal siguiente (en el instante de tiempo (n)), de modo que las variaciones de SNR IS/DS se ecualizan a lo largo del flujo de senal de audio multicanal. En terminos mas generales, se puede establecer que se puede utilizar el uno o mas parametros de codificacion tomados de las tramas IS/DS 151, 152 (en el instante de tiempo (n-1)) para controlar de forma adaptativa las tasas de datos IS/DS para la trama de senal siguiente (en el instante de tiempo (n)), de modo que el uno o mas parametros de codificacion se ecualizan a lo largo del flujo de senal de audio multicanal. Por lo tanto, el objetivo es proporcionar la misma calidad para diferentes grupos de la senal multicanal codificada. En otras palabras, el objetivo es asegurar que la calidad de los flujos secundarios codificados es tan parecida como sea posible para todos los flujos secundarios de un flujo de senal de audio multicanal. El objetivo se debena
5
10
15
20
25
30
35
40
45
50
55
conseguir para cada trama de la senal de audio, esto es, para todos los instantes de tiempo o para todas las tramas de la senal.
La Fig. 6 muestra un diagrama de bloques de un codificador 600 de ejemplo que comprende un esquema de adaptacion de tasa de datos IS/DS externo. El codificador 600 comprende un codificador IS 105 y un codificador DS 106 los cuales pueden estar configurados de acuerdo con el codificador 300 ilustrado en la Fig. 3. Para una trama de senal (n-1) y para una tasa de datos IS (n-1) y una tasa de datos DS (n-1) asignadas en un instante temporal o numero de trama (n-1), los codificadores IS/DS 105, 106 proporcionan una trama IS(n-1) codificada y una trama DS(n-1) codificada, respectivamente. El codificador IS 105 utiliza la variacion de SNR IS(n-1) y el codificador DS 106 utiliza la variacion de SNR DS(n-1) para asignar a las mantisas la tasa de datos IS(n-1) y la tasa de datos DS(n-1), respectivamente. La variacion de SNR IS(n-1) y la variacion de SNR DS(n-1) se pueden extraer de la trama IS(n-1) y la trama DS(n-1), respectivamente. Con el fin de asegurar una alineacion entre la variacion de SNR IS y la variacion de SNR DS a lo largo del flujo (esto es, a lo largo de los numeros (n) de trama), la variacion de SNR IS(n-1) y la variacion de SNR DS(n-1) pueden realimentar la entrada de los codificadores IS/DS 105, 106 con el fin de adaptar la tasa de datos IS(n) y la tasa de datos DS(n) para codificar la trama (n) de senal siguiente.
En particular, el codificador 600 comprende una unidad 601 de desviacion de variacion de SNR configurada para determinar la diferencia entre la variacion de SNR IS(n-1) y la variacion de SNR DS(n-1). La diferencia se puede utilizar para controlar las tasas de datos IS/DS(n)(para la trama de senal siguiente). En un modo de realizacion, si una variacion de SNR IS(n-1) es menor que una variacion de SNR DS(n-1) (esto es, la diferencia es negativa) indica que la calidad perceptual del IS es mas bien menor que la calidad perceptual del DS. En consecuencia, la tasa de datos DS(n) debena reducirse con respecto a la tasa de datos DS(n-1), con el fin de reducir la calidad perceptual del IS (o posiblemente dejarla sin afectar) en la trama de senal (n) siguiente. Al mismo tiempo, la tasa de datos IS(n) debena aumentarse con respecto a la tasa de datos IS(n-1), con el fin de aumentar la calidad perceptual del IS en la trama de senal (n) siguiente y tambien para satisfacer el requisito de tasa de datos total. La modificacion de la tasa de datos IS(n) en funcion de la variacion de SNR IS(n-1) se basa en la suposicion de que la dificultad de codificacion tal como se refleja en el parametro variacion de SNR IS(n-1) no cambia significativamente entre dos tramas consecutivas. De forma parecida, una variacion de SNR IS(n-1) que es mayor que la variacion de SNR DS(n-1) (esto es, una diferencia positiva) puede indicar que la calidad perceptual del IS es mayor que la calidad perceptual del DS. La tasa de datos IS(n) y la tasa de datos DS(n) se pueden modificar con respecto a la tasa de datos IS(n-1) y la tasa de datos DS(n-1) de modo que se reduce la calidad perceptual del IS (o se deja sin afectar) y la calidad perceptual del DS aumenta.
El mecanismo de control mencionado mas arriba se puede implementar de varias formas. El codificador 600 comprende una unidad 602 de determinacion de signo que esta configurada para determinar el signo de la diferencia entre la variacion de SNR IS(n-1) y la variacion de SNR DS(n-1). Ademas, el codificador 600 utiliza una variacion 603 de la tasa de datos predeterminada (por ejemplo, un porcentaje de la tasa de datos total disponible, por ejemplo, aproximadamente el 0,5%, 1%, 2%, 3%, 4%, 5% o 10% de la tasa de datos total disponible) que se puede aplicar para modificar la tasa de datos IS(n) y la tasa de datos DS(n) con respecto a la tasa de datos IS(n- 1) con regularidad y la tasa de datos DS(n-1) en la unidad 605 de modificacion de la tasa de IS y en la unidad 606 de modificacion de la tasa de DS. A modo de ejemplo, si la diferencia es negativa, la unidad 605 de modificacion de la tasa de IS determina que la tasa de datos IS(n) = la tasa de datos IS(n-1) + la variacion de tasa de datos, y la unidad 606 de modificacion de la tasa de DS determina que la tasa de datos DS(n) = la tasa de datos DS(n-1) - la variacion de tasa de datos (y viceversa en el caso de una diferencia positiva).
El esquema de control externo mencionado mas arriba para adaptar la asignacion de la tasa de datos total a la tasa de datos IS y la tasa de datos DS se encamina a reducir la diferencia entre la variacion de SNR IS y la variacion de SNR DS. En otras palabras, el esquema de control mencionado mas arriba intenta alinear la variacion de SNR IS y la variacion de SNR DS, con el fin de alinear la calidad percibida del IS codificado y el DS codificado. Como resultado, se mejora la calidad percibida global de la senal multicanal codificada (que comprende el IS codificado y el DS codificado) (comparada con la del codificador 100 que utiliza tasas de datos IS/DS fijas).
En el presente documento, se han descrito metodos y sistemas para codificar una senal de audio multicanal. Los metodos y sistemas codifican una senal de audio multicanal en una pluralidad de flujos secundarios, en donde la pluralidad de flujos secundarios permite una decodificacion eficiente de diferentes combinaciones de canales de la senal de audio multicanal. Ademas, los metodos y sistemas permiten una asignacion conjunta de los bits de mantisa a lo largo de la pluralidad de flujos, aumentando de este modo la calidad percibida de la senal de audio multicanal codificada (y posteriormente decodificada). Los metodos y sistemas se pueden configurar de modo que los flujos codificados sean compatibles con decodificadores de audio multicanal antiguos.
En particular, el presente documento describe la transmision de canales 7.1 en DD+ dentro de dos flujos secundarios, en donde un primer flujo secundario "independiente" comprende una mezcla de canales 5.1, y un segundo flujo secundario "dependiente" comprende canales de "ampliacion" y/o "sustitucion". Actualmente, la
5
10
15
20
25
codificacion de flujos 7.1 se realiza tfpicamente mediante dos codificadores 5.1 principales que no se relacionan entre sr Los dos codificadores 5.1 principales disponen de una tasa de datos - una parte fija de la tasa de datos total disponible - y realizan de forma independiente la codificacion de los dos flujos secundarios. En el presente documento, se ha propuesto compartir los bits de mantisa entre (al menos) dos flujos secundarios. En un modo de realizacion, los datos 'fijos' de cada flujo se codifican de forma independiente (exponentes, coordenadas de acoplamiento, etc.). A continuacion, se realiza un proceso de asignacion de bits unico para ambos flujos con el resto de bits. Por ultimo, se pueden cuantificar y empaquetar las mantisas de ambos flujos. Haciendo esto, cada intervalo de tiempo de una senal codificada es identico en tamano, pero las tramas individuales codificadas (por ejemplo, la trama IS y/o las tramas DS) pueden variar. Ademas, la Variacion de SNR de los flujos independiente y dependientes puede ser igual (o se puede reducir su diferencia). De este modo, la calidad de codificacion global se puede mejorar permitiendo que el flujo secundario mas falto de bits utilice bits extra si/cuando el otro flujo secundario tenga en exceso.
Se debena observar que mientras que los metodos y sistemas se han descrito en el contexto de un codificador de audio DD+ 7.1, los metodos y sistemas son aplicables a otros codificadores que crean flujos de bits DD+ con multiples flujos secundarios. Ademas, los metodos y sistemas son aplicables a otros codec de audioMdeo que utilicen el concepto de un grupo de bits, multiples flujos secundarios y que tengan una restriccion sobre la tasa de datos total (por ejemplo, que requieran una tasa de datos constante). Los codec de audioMdeo que operan sobre los flujos secundarios relacionados pueden aplicar un grupo de bits compartido para asignar bits a los flujos secundarios relacionados segun sea necesario, y variar las tasas de datos de los flujos secundarios al tiempo que mantienen constante la tasa de datos total.
Los metodos y sistemas descritos en el presente documento se pueden implementar como software, firmware y/o hardware. Ciertos componentes se pueden implementar, por ejemplo, como un software ejecutandose sobre un procesador de senales digitales o un microprocesador. Otros componentes se pueden implementar, por ejemplo, como hardware o como circuitos integrados de aplicacion espedfica. Las senales que se encuentran en los metodos y sistemas descritos se pueden almacenar en medios como, por ejemplo, una memoria de acceso aleatorio o medios de almacenamiento optico. Se pueden transferir a traves de redes como, por ejemplo, redes de radio, redes de satelites, redes inalambricas o redes de cable como, por ejemplo, Internet. Dispositivos tfpicos que utilizan los metodos y sistemas descritos en el presente documento son dispositivos electronicos portatiles u otro equipo de consumo que se utilice para almacenar y/o renderizar senales de audio.
Claims (1)
- 5101520253035404550REIVINDICACIONES1) Un codificador de audio configurado para codificar una senal de audio multicanal de acuerdo con una tasa de datos total disponible; en donde la senal de audio multicanal se puede representar como un grupo basico (121) de canales para renderizar (convertir) la senal de audio multicanal de acuerdo con una configuracion basica de canales, y como un grupo (122) de ampliacion de canales que - en combinacion con el grupo basico (122) - se utiliza para renderizar la senal de audio multicanal de acuerdo con una configuracion ampliada de canales; en donde la configuracion basica de canales y la configuracion ampliada de canales son diferentes entre sf; comprendiendo el codificador de audio:- un codificador basico (105) configurado para codificar el grupo basico (121) de canales de acuerdo con una tasa de datos IS, con el fin de generar un flujo secundario independiente (110), denominado IS; y- un codificador ampliado (106) configurado para codificar el grupo (122) de ampliacion de canales de acuerdo con una tasa de datos DS, con el fin de generar un flujo secundario dependiente (120), denominado DS,- caracterizado por que el codificador de audio comprende: una unidad (501) de control de tasa configurada para adaptar con regularidad la tasa de datos IS y la tasa de datos DS en funcion de un indicador de calidad de codificacion IS instantaneo para el grupo basico (121) de canales y/o en funcion de un indicador de calidad de codificacion DS instantaneo para el grupo (122) de ampliacion de canales, de modo que la suma de la tasa de datos IS y la tasa de datos DS se corresponde sustancialmente con la tasa de datos total disponible.2) El codificador de la reivindicacion 1, en donde la unidad (501) de control de tasa esta configurada para determinar la tasa de datos IS y la tasa de datos DS con el fin de reducir la diferencia entre el indicador de calidad de codificacion IS instantaneo y el indicador de calidad de codificacion DS instantaneo.3) El codificador de cualquiera de las reivindicaciones anteriores, en donde el codificador basico (105) y el codificador (106) de ampliacion son codificadores de audio basados en tramas configurados para codificar una secuencia de tramas de la senal de audio multicanal, con el fin de generar las secuencias correspondientes de tramas IS (151) y tramas DS (152) del flujo secundario independiente (110) y el flujo secundario dependiente (120), respectivamente.4) El codificador de la reivindicacion 3, en donde la unidad (501) de control de tasa esta configurada para adaptar la tasa de datos IS y la tasa de datos DS para cada trama de la secuencia de tramas de la senal de audio multicanal.5) El codificador de cualquiera de las reivindicaciones 3 a 4, en donde- el indicador de calidad de codificacion IS comprende una secuencia de indicadores de calidad de codificacion IS para la secuencia de tramas IS (151) correspondientes;- el indicador de calidad de codificacion DS comprende una secuencia de indicadores de calidad de codificacion DS para la secuencia de tramas DS (152) correspondientes;- la unidad (501) de control de tasa esta configurada para determinar la tasa de datos IS para una trama IS (151) de la secuencia de tramas IS (151) y la tasa de datos DS para una trama DS de la secuencia de tramas DS (152) en funcion de la secuencia de indicadores de calidad de codificacion IS y la secuencia de indicadores de calidad de codificacion DS, de modo que la suma de la tasa de datos IS para la trama IS (151) y la tasa de datos DS para la trama DS es sustancialmente la tasa de datos total disponible.6) El codificador de la reivindicacion 5, que comprende, ademas- una unidad (551) de determinacion de dificultad de codificacion configurada para determinar el indicador de calidad de codificacion IS en funcion de una primera trama del grupo basico (121) de canales, y/o para determinar el indicador de calidad de codificacion DS en funcion de una primera trama correspondiente del grupo (121) de ampliacion de canales.7) El codificador de la reivindicacion 6, en donde- el indicador de calidad de codificacion IS es uno o mas entre: una entropfa perceptual de la primera trama del grupo basico (121); una tonalidad de la primera trama del grupo basico (121); un ancho de banda espectral de la primera trama del grupo basico (121); una presencia de51015202530354045transitorios en la primera trama del grupo basico (121); un grado de correlacion entre canales del grupo basico (121); y una energfa de la primera trama del grupo basico (121); y- el indicador de calidad de codificacion DS es uno o mas entre: una entropfa perceptual de la primera trama del grupo (122) de ampliacion; una tonalidad de la primera trama del grupo (122) de ampliacion; un ancho de banda espectral de la primera trama del grupo (122) de ampliacion; una presencia de transitorios en la primera trama del grupo (122) de ampliacion; un grado de correlacion entre canales del grupo (122) de ampliacion; y una energfa de la primera trama del grupo (122) de ampliacion.8) Un metodo para codificar una senal de audio multicanal de acuerdo con una tasa de datos total disponible; en donde la senal de audio multicanal se puede representar como un grupo basico (121) de canales para renderizar la senal de audio multicanal de acuerdo con una configuracion basica de canales, y con regularidad como un grupo (122) de ampliacion de canales, que - en combinacion con el grupo basico (122) - se utiliza para renderizar la senal de audio multicanal de acuerdo con una configuracion ampliada de canales; en donde la configuracion basica de canales y la configuracion ampliada de canales son diferentes entre sf; comprendiendo el metodo:- codificar el grupo basico (121) de canales de acuerdo con una tasa de datos IS, con el fin de generar un flujo secundario independiente (110), denominado IS; y- codificar el grupo (122) de ampliacion de canales de acuerdo con una tasa de datos DS, con el fin de generar un flujo secundario dependiente (120), denominado DS,caracterizado por que el codificador de audio comprende:- adaptar con regularidad la tasa de datos IS y la tasa de datos DS en funcion de un indicador de calidad de codificacion IS instantaneo para el grupo basico (121) de canales y/o en funcion de un indicador de calidad de codificacion DS instantaneo para el grupo (122) de ampliacion de canales, de modo que la suma de la tasa de datos IS y la tasa de datos DS se corresponde sustancialmente con la tasa de datos total disponible.9) El metodo de la reivindicacion 8, que comprende, ademas- determinar el indicador de calidad de codificacion IS en funcion de una o mas tramas del grupo basico (121) de canales, y/o determinar el indicador de calidad de codificacion DS en funcion de una o mas tramas correspondientes del grupo (121) de ampliacion de canales.10) El metodo de cualquiera de las reivindicaciones 8 a 9, en donde- el indicador de calidad de codificacion IS es indicativo de una calidad perceptual de una o mas tramas del flujo secundario independiente; y- el indicador de calidad de codificacion DS es indicativo de una calidad perceptual de una o mas tramas del flujo secundario dependiente.11) El metodo de la reivindicacion 10, en donde la adaptacion de la tasa de datos IS y la tasa de datos DS comprende- adaptar la tasa de datos IS y la tasa de datos DS para codificar la una o mas tramas del flujo secundario independiente y la una o mas tramas del flujo secundario dependiente, de modo que la diferencia absoluta entre el indicador de calidad de codificacion IS y el indicador de calidad de codificacion DS se encuentre por debajo de un umbral de diferencia.12) El metodo de la reivindicacion 10, en donde la adaptacion de la tasa de datos IS y la tasa de datos DS comprende- adaptar la tasa de datos IS y la tasa de datos DS para codificar una o mas tramas adicionales del flujo secundario independiente y una o mas tramas adicionales correspondientes del flujo secundario dependiente, basandose en que una diferencia entre el indicador de calidad de codificacion IS y el indicador de calidad de codificacion DS se encuentre por debajo de un umbral de diferencia; en donde la una o mas tramas adicionales son posteriores a la una o mas tramas.13) Un metodo para decodificar datos de audio codificados, comprendiendo el metodo:10- generar datos de audio codificados codificando una senal de audio multicanal utilizando un metodo de acuerdo con cualquiera de las reivindicaciones 8-12;- recibir los datos de audio codificados en un decodificador; y- decodificar los datos de audio codificados recibidos para generar una senal indicativa de los datos de audio.14) Un programa de software adaptado para su ejecucion en un procesador y para realizar los pasos del metodo de cualquiera de las reivindicaciones 8 a 12 cuando se llevan a cabo en el procesador.15) Un medio de almacenamiento que comprende un programa de software adaptado para su ejecucion en un procesador y para realizar los pasos del metodo de cualquiera de las reivindicaciones 8 a 12 cuando se llevan a cabo en el procesador.16) Un sistema codec de audio, que comprende:- un codificador de acuerdo con cualquiera de las reivindicaciones 1-7; y- un decodificador para decodificar datos de audio codificados por el codificador.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261647226P | 2012-05-15 | 2012-05-15 | |
US201261647226P | 2012-05-15 | ||
PCT/US2013/040919 WO2013173314A1 (en) | 2012-05-15 | 2013-05-14 | Efficient encoding and decoding of multi-channel audio signal with multiple substreams |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2641390T3 true ES2641390T3 (es) | 2017-11-08 |
Family
ID=48576522
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES13726928.8T Active ES2641390T3 (es) | 2012-05-15 | 2013-05-14 | Codificación y decodificación eficientes de una señal de audio multicanal con múltiples flujos secundarios |
Country Status (9)
Country | Link |
---|---|
US (1) | US9779738B2 (es) |
EP (1) | EP2850613B1 (es) |
JP (1) | JP6133408B2 (es) |
CN (1) | CN104285253B (es) |
AR (1) | AR091042A1 (es) |
ES (1) | ES2641390T3 (es) |
HK (1) | HK1201371A1 (es) |
TW (1) | TWI505262B (es) |
WO (1) | WO2013173314A1 (es) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2610588C2 (ru) | 2012-11-07 | 2017-02-13 | Долби Интернешнл Аб | Вычисление отношения сигнал-шум конвертора с уменьшенной сложностью |
US9412385B2 (en) * | 2013-05-28 | 2016-08-09 | Qualcomm Incorporated | Performing spatial masking with respect to spherical harmonic coefficients |
US20150025894A1 (en) * | 2013-07-16 | 2015-01-22 | Electronics And Telecommunications Research Institute | Method for encoding and decoding of multi channel audio signal, encoder and decoder |
WO2015036352A1 (en) | 2013-09-12 | 2015-03-19 | Dolby International Ab | Coding of multichannel audio content |
ES2710774T3 (es) * | 2013-11-27 | 2019-04-26 | Dts Inc | Mezcla de matriz basada en multipletes para audio de múltiples canales de alta cantidad de canales |
CN104065977B (zh) * | 2014-06-06 | 2018-05-15 | 北京音之邦文化科技有限公司 | 音/视频文件的处理方法及装置 |
US10089991B2 (en) | 2014-10-03 | 2018-10-02 | Dolby International Ab | Smart access to personalized audio |
MX370034B (es) | 2015-02-02 | 2019-11-28 | Fraunhofer Ges Forschung | Aparato y método para procesar una señal de audio codificada. |
EP4411732A3 (en) | 2015-10-08 | 2024-10-09 | Dolby International AB | Layered coding and data structure for compressed higher-order ambisonics sound or sound field representations |
EA035078B1 (ru) | 2015-10-08 | 2020-04-24 | Долби Интернэшнл Аб | Многоуровневое кодирование сжатых представлений звука или звукового поля |
US10812550B1 (en) * | 2016-08-03 | 2020-10-20 | Amazon Technologies, Inc. | Bitrate allocation for a multichannel media stream |
RU2744362C1 (ru) * | 2017-09-20 | 2021-03-05 | Войсэйдж Корпорейшн | Способ и устройство для эффективного распределения битового бюджета в celp-кодеке |
IL307898A (en) * | 2018-07-02 | 2023-12-01 | Dolby Laboratories Licensing Corp | Methods and devices for encoding and/or decoding embedded audio signals |
US10666291B1 (en) * | 2019-03-12 | 2020-05-26 | Microsoft Technology Licensing, Llc | High efficiency data decoder |
CN113948097A (zh) * | 2020-07-17 | 2022-01-18 | 华为技术有限公司 | 多声道音频信号编码方法和装置 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2637090B2 (ja) | 1987-01-26 | 1997-08-06 | 株式会社日立製作所 | 音響信号処理回路 |
JPH0758707A (ja) | 1993-08-20 | 1995-03-03 | Fujitsu Ltd | 量子化ビット割当方式 |
JPH08123488A (ja) | 1994-10-24 | 1996-05-17 | Sony Corp | 高能率符号化方法、高能率符号記録方法、高能率符号伝送方法、高能率符号化装置及び高能率符号復号化方法 |
US5956674A (en) | 1995-12-01 | 1999-09-21 | Digital Theater Systems, Inc. | Multi-channel predictive subband audio coder using psychoacoustic adaptive bit allocation in frequency, time and over the multiple channels |
US6044396A (en) | 1995-12-14 | 2000-03-28 | Time Warner Cable, A Division Of Time Warner Entertainment Company, L.P. | Method and apparatus for utilizing the available bit rate in a constrained variable bit rate channel |
KR19990042668A (ko) | 1997-11-27 | 1999-06-15 | 정선종 | 다중 비디오 전송을 위한 비디오 부호화 장치 및 방법 |
US6859496B1 (en) | 1998-05-29 | 2005-02-22 | International Business Machines Corporation | Adaptively encoding multiple streams of video data in parallel for multiplexing onto a constant bit rate channel |
US6931372B1 (en) | 1999-01-27 | 2005-08-16 | Agere Systems Inc. | Joint multiple program coding for digital audio broadcasting and other applications |
DK1173925T3 (da) | 1999-04-07 | 2004-03-29 | Dolby Lab Licensing Corp | Matriksforbedringer til tabsfri kodning og dekodning |
US6493388B1 (en) | 2000-04-19 | 2002-12-10 | General Instrument Corporation | Rate control and buffer protection for variable bit rate video programs over a constant rate channel |
US7212872B1 (en) * | 2000-05-10 | 2007-05-01 | Dts, Inc. | Discrete multichannel audio with a backward compatible mix |
DE10102159C2 (de) | 2001-01-18 | 2002-12-12 | Fraunhofer Ges Forschung | Verfahren und Vorrichtung zum Erzeugen bzw. Decodieren eines skalierbaren Datenstroms unter Berücksichtigung einer Bitsparkasse, Codierer und skalierbarer Codierer |
KR101021079B1 (ko) | 2002-04-22 | 2011-03-14 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 파라메트릭 다채널 오디오 표현 |
JP2005294977A (ja) | 2004-03-31 | 2005-10-20 | Ulead Systems Inc | スライドウィンドウ(slidingwindow)を用いた2パスビデオエンコーディング方法とシステム |
US7818444B2 (en) | 2004-04-30 | 2010-10-19 | Move Networks, Inc. | Apparatus, system, and method for multi-bitrate content streaming |
KR100773539B1 (ko) | 2004-07-14 | 2007-11-05 | 삼성전자주식회사 | 멀티채널 오디오 데이터 부호화/복호화 방법 및 장치 |
KR100682915B1 (ko) | 2005-01-13 | 2007-02-15 | 삼성전자주식회사 | 다채널 신호 부호화/복호화 방법 및 장치 |
US7734053B2 (en) | 2005-12-06 | 2010-06-08 | Fujitsu Limited | Encoding apparatus, encoding method, and computer product |
KR100904437B1 (ko) * | 2006-02-23 | 2009-06-24 | 엘지전자 주식회사 | 오디오 신호의 처리 방법 및 장치 |
US8887218B2 (en) | 2007-11-29 | 2014-11-11 | Jan Maurits Nicolaas Fielibert | Systems and methods of adjusting bandwidth among multiple media streams |
JP5446258B2 (ja) | 2008-12-26 | 2014-03-19 | 富士通株式会社 | オーディオ符号化装置 |
US20100324915A1 (en) * | 2009-06-23 | 2010-12-23 | Electronic And Telecommunications Research Institute | Encoding and decoding apparatuses for high quality multi-channel audio codec |
KR101283783B1 (ko) | 2009-06-23 | 2013-07-08 | 한국전자통신연구원 | 고품질 다채널 오디오 부호화 및 복호화 장치 |
IT1398196B1 (it) | 2009-06-25 | 2013-02-14 | St Microelectronics Srl | Controllore dinamico della velocita' di trasmissione indipendente dal gruppo di immagini |
JP5345024B2 (ja) | 2009-08-28 | 2013-11-20 | 日本放送協会 | 3次元音響符号化装置、3次元音響復号装置、符号化プログラム及び復号プログラム |
US8588294B2 (en) | 2010-01-15 | 2013-11-19 | General Instrument Corporation | Statistical multiplexing using a plurality of two-pass encoders |
-
2013
- 2013-04-23 TW TW102114404A patent/TWI505262B/zh active
- 2013-05-14 US US14/398,967 patent/US9779738B2/en active Active
- 2013-05-14 EP EP13726928.8A patent/EP2850613B1/en active Active
- 2013-05-14 CN CN201380025178.5A patent/CN104285253B/zh active Active
- 2013-05-14 ES ES13726928.8T patent/ES2641390T3/es active Active
- 2013-05-14 AR ARP130101660A patent/AR091042A1/es active IP Right Grant
- 2013-05-14 WO PCT/US2013/040919 patent/WO2013173314A1/en active Application Filing
- 2013-05-14 JP JP2015511810A patent/JP6133408B2/ja active Active
-
2015
- 2015-02-06 HK HK15101374.7A patent/HK1201371A1/xx unknown
Also Published As
Publication number | Publication date |
---|---|
US9779738B2 (en) | 2017-10-03 |
JP2015520872A (ja) | 2015-07-23 |
CN104285253B (zh) | 2017-05-17 |
AR091042A1 (es) | 2014-12-30 |
JP6133408B2 (ja) | 2017-05-24 |
TW201405548A (zh) | 2014-02-01 |
US20150131800A1 (en) | 2015-05-14 |
TWI505262B (zh) | 2015-10-21 |
HK1201371A1 (en) | 2015-08-28 |
WO2013173314A1 (en) | 2013-11-21 |
CN104285253A (zh) | 2015-01-14 |
EP2850613A1 (en) | 2015-03-25 |
EP2850613B1 (en) | 2017-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2641390T3 (es) | Codificación y decodificación eficientes de una señal de audio multicanal con múltiples flujos secundarios | |
KR102535997B1 (ko) | 상이한 시간/주파수 해상도를 사용하여 지향성 오디오 코딩 파라미터를 인코딩 또는 디코딩 하기 위한 장치 및 방법 | |
ES2934646T3 (es) | Sistema de procesamiento de audio | |
KR102300062B1 (ko) | 인코딩 장치 및 인코딩 방법, 디코딩 장치 및 디코딩 방법, 및 프로그램 | |
ES2658824T3 (es) | Configuración de envolvente temporal para codificación espacial de audio usando filtrado de Wiener de dominio de frecuencia | |
ES2773795T3 (es) | Aparato y método para llenado estéreo en codificación multicanal | |
ES2394768T3 (es) | Método y receptor para la reconstrucción de alta frecuencia de una señal de audio estereofónica | |
JP6474845B2 (ja) | 軽減された計算量の変換器snr計算 | |
KR20220062599A (ko) | 공간적 오디오 파라미터 인코딩 및 연관된 디코딩의 결정 | |
JP4809234B2 (ja) | オーディオ符号化装置、復号化装置、方法、及びプログラム | |
US20070198256A1 (en) | Method for middle/side stereo encoding and audio encoder using the same | |
JP2023072027A (ja) | 復号装置および方法、並びにプログラム |