ES2841419T3 - Canales de señalización para codificación escalable de datos de audio ambisónico de orden superior - Google Patents

Canales de señalización para codificación escalable de datos de audio ambisónico de orden superior Download PDF

Info

Publication number
ES2841419T3
ES2841419T3 ES15788498T ES15788498T ES2841419T3 ES 2841419 T3 ES2841419 T3 ES 2841419T3 ES 15788498 T ES15788498 T ES 15788498T ES 15788498 T ES15788498 T ES 15788498T ES 2841419 T3 ES2841419 T3 ES 2841419T3
Authority
ES
Spain
Prior art keywords
layers
channels
bit stream
layer
indication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES15788498T
Other languages
English (en)
Inventor
Moo Young Kim
Nils Günther Peters
Dipanjan Sen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Application granted granted Critical
Publication of ES2841419T3 publication Critical patent/ES2841419T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/167Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2420/00Techniques used stereophonic systems covered by H04S but not provided for in its groups
    • H04S2420/11Application of ambisonics in stereophonic audio systems

Landscapes

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

Abstract

Un dispositivo configurado para descodificar un flujo de bits representativo de una señal de audio ambisónico de orden superior, comprendiendo el flujo de bits una pluralidad de capas jerárquicas que incluyen una capa base y una o más capas de mejora, comprendiendo el dispositivo: una memoria configurada para almacenar el flujo de bits representativo de la señal de audio ambisónico de orden superior; y uno o más procesadores configurados para: obtener, del flujo de bits (21), una indicación de un número total de canales (59A-D, 61A-B) especificados en el flujo de bits; obtener, a partir del flujo de bits, una indicación de un número de canales especificados en cada capa de la pluralidad de capas en el flujo de bits; obtener, del flujo de bits, para cada capa de la pluralidad de capas, una indicación del tipo de cada canal especificado en la capa, con la indicación del tipo de canal que indica si el canal es un canal en primer plano o un canal de fondo; y obtener los canales especificados en las capas del flujo de bits basándose en la indicación del número de canales especificados en cada una de las capas y la indicación para cada canal del tipo de canal y la indicación del número total de canales especificados en el flujo de bits, en el que las capas son jerárquicas de modo que la capa base se puede descodificar independientemente de una o más capas de mejora para proporcionar una primera representación de la señal de audio ambisónico de orden superior y la una o más capas de mejora contienen datos de audio ambisónico de orden superior adicionales que, cuando se descodifican en combinación con la capa base, proporcionan una representación de mayor resolución de la señal de audio ambisónico de orden superior, en el que los canales son canales de transporte ambisónicos de orden superior.

Description

DESCRIPCIÓN
Canales de señalización para codificación escalable de datos de audio ambisónico de orden superior
CAMPO TÉCNICO
[0001] Esta divulgación se refiere a datos de audio y, más específicamente, a la codificación escalable de datos de audio ambisónico de orden superior.
ANTECEDENTES
[0002] Una señal ambisónica de orden superior (HOA) (a menudo representada por una pluralidad de coeficientes armónicos esféricos (SHC) u otros elementos jerárquicos) es una representación tridimensional de un campo sonoro. Esta representación de HOA o SHC puede representar el campo sonoro de una manera que sea independiente de la geometría del altavoz local utilizado para reproducir una señal de audio multicanal producida a partir de esta señal SHC. Esta señal SHC también puede facilitar la compatibilidad inversa, ya que la señal SHC puede reproducirse en formatos multicanal bien conocidos y sumamente adoptados, tales como un formato de canal de audio 5.1 o un formato de canal de audio 7.1. La representación SHC puede, por lo tanto, permitir una mejor representación de un campo sonoro que también asimila la compatibilidad inversa.
[0003] En "ISO-IEC_23008-3_(E)_(DIS de 3DA).docx" de la Organización DVB, de fecha 2014-08-08, se establece un proyecto de norma internacional que forma parte de ISO/IEC 23008-3, que especifica tecnología para admitir la transmisión de señales de audio 3D y la reproducción flexible para la reproducción de audio 3D en una amplia variedad de escenarios de escucha, incluidas configuraciones de cine en casa 3D, sistemas de altavoces 22.2, sistemas de entretenimiento automotriz y reproducción a través de auriculares conectados a una tablet o teléfono inteligente.
[0004] En Boehm et al., "Scalable Decoding Mode for MPEG-H 3D Audio HOA" (108a reunión de MPEG; 31-3­ 2014-4-4-2014; Valencia; 2014-03-26; documento n.° M33195), se propuso una modificación del procedimiento de compresión HOA existente en el estándar de HOA de audio MPEG-H3D en desarrollo para poder proporcionar una representación comprimida que consta de una capa base de baja calidad y una capa de mejora de alta calidad.
[0005] En el documento US 2014/0288940 A1, se establece un procedimiento que incluye los pasos de evaluar al menos dos parámetros de metadatos asociados con un flujo de bits de audio (por ejemplo, un flujo de bits Dolby Digital (AC-3), Dolby Digital Plus o Dolby E codificado), determinar valores de calidad de parámetros de metadatos individuales, siendo cada uno de los valores de calidad de parámetros de metadatos individuales indicativos de la calidad (por ejemplo, corrección) de uno diferente de los al menos dos parámetros de metadatos, y generar datos indicativos de una puntuación de metadatos, donde la puntuación de metadatos es un valor determinado por una combinación (por ejemplo, una combinación lineal u otra combinación ponderada) de los valores de calidad de los parámetros de metadatos individuales. La puntuación de los metadatos es indicativa de la calidad general (por ejemplo, corrección) de al menos dos parámetros de metadatos.
BREVE EXPLICACIÓN
[0006] En general, se describen técnicas para la codificación escalable de datos de audio ambisónico de orden superior. Los datos de audio ambisónico de orden superior pueden comprender al menos un coeficiente ambisónico de orden superior (HOA) correspondiente a una función de base armónica esférica que tiene un orden mayor que uno. Las técnicas pueden proporcionar una codificación escalable de los coeficientes de HOA codificando los coeficientes de HOA utilizando múltiples capas, como una capa base y una o más capas de mejora. La capa base puede permitir la reproducción de un campo de sonido representado por los coeficientes de HOA que pueden ser mejorados por una o más capas de mejora. En otras palabras, las capas de mejora (en combinación con la capa base) pueden proporcionar una resolución adicional que permite una reproducción más completa (o más precisa) del campo de sonido en comparación con la capa base sola.
[0007] La invención se define mediante las reivindicaciones independientes.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
[0008]
La FIG. 1 es un diagrama que ilustra funciones de base armónicas esféricas de varios órdenes y subórdenes.
La FIG. 2 es un diagrama que ilustra un sistema que puede realizar diversos aspectos de las técnicas descritas en esta divulgación.
La FIG. 3 es un diagrama de bloques que ilustra, con mayor detalle, otro ejemplo de un dispositivo de codificación de audio mostrado en el ejemplo de la FIG. 2 que puede realizar diversos aspectos de las técnicas descritas en esta divulgación.
La FIG. 4 es un diagrama de bloques que ilustra el dispositivo de descodificación de audio de la FIG. 2 con mayor detalle.
La FIG. 5 es un diagrama que ilustra, con más detalle, la unidad de generación de flujo de bits de la FIG. 3 cuando se configura para realizar una primera de las posibles versiones de las técnicas de codificación de audio escalables descritas en esta divulgación.
La FIG. 6 es un diagrama que ilustra, con más detalle, la unidad de extracción de la FIG.4 cuando se configura para realizar la primera de las posibles versiones de las técnicas de descodificación de audio escalables descritas en esta divulgación.
Las FIGS. 7A-7D son diagramas de flujo que ilustran el funcionamiento de ejemplo del dispositivo de codificación de audio al generar una representación codificada de dos capas de los coeficientes ambisónicos de orden superior (HOA).
Las FIGS. 8A y 8B son diagramas de flujo que ilustran el funcionamiento de ejemplo del dispositivo de codificación de audio al generar una representación codificada de tres capas de los coeficientes de HOA. Las FIGS. 9A y 9B son diagramas de flujo que ilustran el funcionamiento de ejemplo del dispositivo de codificación de audio al generar una representación codificada de cuatro capas de los coeficientes de HOA. La FIG. 10 es un diagrama que ilustra un objeto de configuración de HOA especificado en el flujo de bits de acuerdo con diversos aspectos de las técnicas.
La FIG. 11 es un diagrama que ilustra la información de banda lateral generada por la unidad de generación de flujo de bits para la primera y segunda capas.
Las FIGS. 12A y 12B son diagramas que ilustran información de banda lateral generada de acuerdo con los aspectos de codificación escalables de las técnicas descritas en esta divulgación.
Las FIGS. 13A y 13B son diagramas que ilustran información de banda lateral generada de acuerdo con los aspectos de codificación escalables de las técnicas descritas en esta divulgación.
Las FIGS. 14A y 14B son diagramas de flujo que ilustran funcionamientos de ejemplo de un dispositivo de codificación de audio en la realización de varios aspectos de las técnicas descritas en esta divulgación. Las FIGS. 15A y 15B son diagramas de flujo que ilustran funcionamientos de ejemplo de un dispositivo de descodificación de audio en la realización de varios aspectos de las técnicas descritas en esta divulgación. La FIG. 16 es un diagrama que ilustra codificación de audio escalable de la forma realizada por la unidad de generación de flujo de bits mostrada en el ejemplo de la FIG. 16 de acuerdo con varios aspectos de las técnicas descritas en esta divulgación.
La FIG. 17 es un diagrama conceptual de un ejemplo en el que los elementos de sintaxis indican que hay dos capas con cuatro coeficientes de HOA ambientales codificados especificados en una capa base y dos señales en primer plano codificadas se especifican en la capa de mejora.
La FIG. 18 es un diagrama que ilustra, con más detalle, la unidad de generación de flujo de bits de la FIG. 3 cuando se configura para realizar una segunda de las posibles versiones de las técnicas de codificación de audio escalables descritas en esta divulgación.
La FIG. 19 es un diagrama que ilustra, con más detalle, la unidad de extracción de la FIG. 3 cuando se configura para realizar la segunda de las posibles versiones de las técnicas de descodificación de audio escalables descritas en esta divulgación.
La FIG. 20 es un diagrama que ilustra un segundo caso de uso mediante el cual la unidad de generación de flujo de bits de la FIG. 18 y la unidad de extracción de la FIG. 19 puede realizar la segunda de la posible versión de las técnicas descritas en esta divulgación.
La FIG. 21 es un diagrama conceptual de un ejemplo en el que los elementos de sintaxis indican que hay tres capas con dos coeficientes de HOA ambientales codificados especificados en una capa base, dos señales en primer plano codificadas se especifican en una primera capa de mejora y dos señales en primer plano codificadas se especifican en una segunda capa de mejora.
La FIG. 22 es un diagrama que ilustra, con más detalle, la unidad de generación de flujo de bits de la FIG. 3 cuando se configura para realizar una tercera de las posibles versiones de las técnicas de codificación de audio escalables descritas en esta divulgación.
La FIG. 23 es un diagrama que ilustra, con más detalle, la unidad de extracción de la FIG. 4 cuando se configura para realizar la tercera de las posibles versiones de las técnicas de descodificación de audio escalables descritas en esta divulgación.
La FIG. 24 es un diagrama que ilustra un tercer caso de uso mediante el cual un dispositivo de codificación de audio puede especificar múltiples capas en un flujo de bits de múltiples capas de acuerdo con las técnicas descritas en esta divulgación.
La FIG. 25 es un diagrama conceptual de un ejemplo donde los elementos de sintaxis indican que hay tres capas con dos señales en primer plano codificadas especificadas en una capa base, dos señales en primer plano codificadas se especifican en una primera capa de mejora y dos señales en primer plano codificadas se especifican en una segunda capa de mejora.
La FIG. 26 es un diagrama que ilustra un tercer caso de uso mediante el cual un dispositivo de codificación de audio puede especificar múltiples capas en un flujo de bits de múltiples capas de acuerdo con las técnicas descritas en esta divulgación.
Las FIGS. 27 y 28 son diagramas de bloques que ilustran una unidad de generación de flujo de bits escalable y una unidad de extracción de flujo de bits escalable que pueden configurarse para realizar varios aspectos de las técnicas descritas en esta divulgación.
La FIG. 29 representa un diagrama conceptual que representa un codificador que puede configurarse para funcionar de acuerdo con varios aspectos de las técnicas descritas en esta divulgación.
La FIG. 30 es un diagrama que ilustra el codificador mostrado en el ejemplo de la FIG. 27 con más detalle.
La FIG. 31 es un diagrama de bloques que ilustra un descodificador de audio que puede configurarse para funcionar de acuerdo con diversos aspectos de las técnicas descritas en esta divulgación.
DESCRIPCIÓN DETALLADA
[0009] La evolución del sonido envolvente ha dejado disponibles muchos formatos de salida para el entretenimiento de hoy en día. Los ejemplos de tales formatos de sonido envolvente para el consumidor son en su mayoría "canales" basados en que, implícitamente, especifican las señales a los altavoces en ciertas coordenadas geométricas. Los formatos de sonido envolvente para el consumidor incluyen el popular formato 5.1 (que incluye los siguientes seis canales: delantero izquierdo (FL), delantero derecho (FR), central o delantero central, posterior izquierdo o envolvente izquierdo, posterior derecho o envolvente derecho, y los efectos de baja frecuencia (LFE)), el formato creciente 7.1, varios formatos que incluyen altavoces de altura tales como el formato 7.1.4 y el formato 22.2 (por ejemplo, para usar con la norma de Televisión de Ultra Alta Definición). Los formatos que no son para el consumidor pueden abarcar cualquier número de altavoces (en geometrías simétricas y no simétricas) a menudo denominados "formaciones envolventes". Un ejemplo de una configuración de este tipo incluye 32 altavoces colocados en coordenadas en las esquinas de un icosaedro truncado.
[0010] La entrada a un futuro codificador de MPEG es, opcionalmente, uno de tres formatos posibles: (i) audio tradicional basado en canales (como se ha analizado anteriormente), que está destinado a ser reproducido mediante altavoces en posiciones preestablecidas; (ii) audio basado en objetos, que implica datos discretos de modulación por código de pulso (PCM) para objetos de audio individuales con metadatos asociados que contienen sus coordenadas de ubicación (entre otra información); y (iii) audio basado en la escena, que implica la representación del campo sonoro utilizando coeficientes de funciones de base armónica esférica (también llamados "coeficientes armónicos esféricos" o SHC, "ambisónicos de orden superior" o HOA y "coeficientes de HOA"). El futuro codificador de MPEG se puede describir con mayor detalle en un documento titulado "Convocatoria de propuestas para audio 3D", de la Organización Internacional para la Estandarización/Comisión Electrotécnica Internacional (ISO)/(IEC) JTC1/SC29/WG11/N13411, publicado en enero de 2013 en Ginebra, Suiza, y disponible en http://mpeg.chiariglione.org/sites/default/files/files/standards/parts/docs/w13411.zip.
[0011] Hay varios formatos basados en canales de "sonido envolvente" en el mercado. Varían, por ejemplo, desde el sistema de cine en casa 5.1 (que es el que ha tenido el mayor éxito en cuanto a irrumpir en las salas de estar, más allá del estéreo) hasta el sistema 22.2 desarrollado por NHK (Nippon Hoso Kyokai o Corporación Difusora de Japón). Los creadores de contenido (por ejemplo, los estudios de Hollywood) desearían producir la banda sonora de una película una vez y no gastar esfuerzos en remezclarla para cada configuración de altavoces. Recientemente, las Organizaciones de Desarrollo de Normas han estado considerando maneras de proporcionar una codificación en un flujo de bits estandarizado y una descodificación subsiguiente que sea adaptable e indiferente con respecto a la geometría (y número) de los altavoces y a las condiciones acústicas en la ubicación de la reproducción (que implica un reproductor).
[0012] Para proporcionar dicha flexibilidad a los creadores de contenido, se puede usar un conjunto jerárquico de elementos para representar un campo sonoro. El conjunto jerárquico de elementos puede referirse a un conjunto de elementos en el que los elementos están ordenados de tal manera que un conjunto básico de elementos de orden inferior proporciona una representación completa del campo sonoro modelado. A medida que el conjunto se extiende para incluir elementos de orden superior, la representación se torna más detallada, aumentando la resolución.
[0013] Un ejemplo de un conjunto jerárquico de elementos es un conjunto de coeficientes armónicos esféricos (SHC). La siguiente expresión demuestra una descripción o representación de un campo sonoro usando SHC:
Figure imgf000005_0001
[0014] La expresión muestra que la presión en cualquier punto [r r, Gr, fyi} del campo sonoro, en el tiempo t, puede representarse únicamente mediante el SHC. A^ik). Aquí, k = ^ c es la velocidad del sonido (~343 m/s), [r r, Gr, 0r| es un punto de referencia (o punto de observación), jn(-) es la función de Bessel esférica de orden n, y Sm(Gr, y r) son las funciones de base armónica esférica de orden n y suborden m. Se puede reconocer que el término entre corchetes es una representación de la señal en el dominio de la frecuencia (es decir, S(w, rr, Gr, §r)) que se puede aproximar mediante varias transformaciones de tiempo-frecuencia, como la transformada de Fourier discreta (DFT), la transformada de coseno discreta (DCT), o una transformada de ondículas. Otros ejemplos de conjuntos jerárquicos incluyen conjuntos de coeficientes de transformada de ondículas y otros conjuntos de coeficientes de funciones de base de multirresolución.
[0015] La FIG. 1 es un diagrama que ilustra las funciones de base armónicas esféricas desde el orden cero (n = 0) hasta el cuarto orden (n = 4). Como puede verse, para cada orden, hay una expansión de los subórdenes m que se muestran pero no se señalan explícitamente en el ejemplo de la FIG. 1, con fines de facilidad de ilustración.
[0016] Los SHC A^(k) pueden adquirirse físicamente (por ejemplo, registrarse) con varias configuraciones de formaciones de micrófonos o, de forma alternativa, se pueden obtener a partir de descripciones basadas en canales o basadas en objetos del campo sonoro. Los SHC representan el audio basado en la escena, donde los SHC pueden ser introducidos en un codificador de audio para obtener SHC codificados que pueden fomentar una transmisión o un almacenamiento más eficaz. Por ejemplo, puede utilizarse una representación de cuarto orden que implique coeficientes (1+4)2 (25 y, por lo tanto, de cuarto orden).
[0017] Como se ha señalado anteriormente, los SHC pueden obtenerse de una grabación con micrófono utilizando una formación de micrófonos. En el artículo de Poletti, M., "Three-Dimensional Surround Sound Systems Based on Spherical Harmonics", J. Audio Eng. Soc., Vol. 53, n.° 11, noviembre de 2005, págs. 1004 a 1025, se describen varios ejemplos de cómo se pueden obtener los SHC a partir de formaciones de micrófonos.
[0018] Para ilustrar cómo los SHC se pueden obtener a partir de una descripción basada en objetos, considérese la siguiente ecuación. Los coeficientes A^(k) para el campo sonoro correspondiente a un objeto de audio individual pueden expresarse como:
Figure imgf000005_0002
donde i es 1, h ^ (•) es la función esférica de Hankel (del segundo tipo) de orden n y [rs, Gs, 0s} es la ubicación del objeto. Conocer la energía fuente del objeto g(w) como función de la frecuencia (por ejemplo, utilizando técnicas de análisis de tiempo-frecuencia, tales como realizar una transformada rápida de Fourier en el flujo de PCM) nos permite convertir cada objeto de PCM y la ubicación correspondiente en el SHC A^ik). Además, se puede mostrar (dado que lo anterior es una descomposición lineal y ortogonal) que los coeficientes A^(k) para cada objeto son aditivos. De esta manera, una multitud de objetos PCM se puede representar mediante los coeficientes A^(k) (por ejemplo, como una suma de los vectores de coeficientes para los objetos individuales). Esencialmente, los coeficientes contienen información sobre el campo sonoro (la presión como una función de las coordenadas 3D), y lo anterior representa la transformación de los objetos individuales a una representación del campo sonoro global en las proximidades del punto de observación [ i r, Gr, 0r}. Las cifras restantes se describen a continuación en el contexto de la codificación de audio basada en objetos y basada en SHC.
[0019] La FIG. 2 es un diagrama que ilustra un sistema 10 que puede realizar diversos aspectos de las técnicas descritas en esta divulgación. Como se muestra en el ejemplo de la FIG. 2, el sistema 10 incluye un dispositivo creador de contenido 12 y un dispositivo de consumo de contenido 14. Aunque se describen en el contexto del dispositivo creador de contenido 12 y del dispositivo de consumo de contenido 14, las técnicas pueden implementarse en cualquier contexto en el que los SHC (que también pueden denominarse coeficientes de HOA), o cualquier otra representación jerárquica de un campo sonoro, se codifican para formar un flujo de bits representativo de los datos de audio. Además, el dispositivo creador de contenido 12 puede representar cualquier forma de dispositivo informático capaz de implementar las técnicas descritas en esta divulgación, incluido un equipo manual (o teléfono celular), un ordenador tipo tablet, un teléfono inteligente o un ordenador de escritorio, para proporcionar unos pocos ejemplos. Del mismo modo, el dispositivo de consumo de contenido 14 puede representar cualquier forma de dispositivo informático capaz de implementar las técnicas descritas en esta divulgación, incluido un equipo manual (o teléfono celular), un ordenador tipo tablet, un teléfono inteligente, un descodificador o un ordenador de escritorio, para proporcionar unos pocos ejemplos.
[0020] El dispositivo creador de contenido 12 puede ser operado por un estudio de cine u otra entidad que pueda generar contenido de audio multicanal para el consumo por parte de los operadores de los dispositivos consumidores de contenido, tales como el dispositivo de consumo de contenido 14. En algunos ejemplos, el dispositivo creador de contenido 12 puede ser operado por un usuario individual que desea comprimir los coeficientes de HOA 11. A menudo, este creador de contenido genera contenido de audio junto con el contenido de vídeo. El dispositivo de consumo de contenido 14 puede ser operado por un individuo. El dispositivo de consumo de contenido 14 puede incluir un sistema de reproducción de audio 16, que puede referirse a cualquier forma de sistema de reproducción de audio capaz de representar los SHC para su reproducción como contenido de audio multicanal.
[0021] El dispositivo creador de contenido 12 incluye un sistema de edición de audio 18. El dispositivo creador de contenido 12 obtiene grabaciones en vivo 7 en diversos formatos (incluso directamente como coeficientes de HOA) y objetos de audio 9, que el dispositivo creador de contenido 12 puede editar utilizando el sistema de edición de audio 18. Un micrófono 5 puede capturar las grabaciones en vivo 7. El creador de contenido puede, durante el proceso de edición, representar los coeficientes de HOA 11 de los objetos de audio 9, escuchando las señales de los altavoces representadas en un intento de identificar varios aspectos del campo sonoro que requieran una edición adicional. A continuación, el dispositivo creador de contenido 12 puede editar los coeficientes de HOA 11 (potencialmente, de manera indirecta mediante la manipulación de diferentes objetos entre los objetos de audio 9 a partir de los cuales pueden obtenerse los coeficientes de HOA originales, de la manera descrita anteriormente). El dispositivo creador de contenido 12 puede emplear el sistema de edición de audio 18 para generar los coeficientes de HOA 11. El sistema de edición de audio 18 representa cualquier sistema capaz de editar datos de audio y emitir los datos de audio como uno o más coeficientes armónicos esféricos originales.
[0022] Cuando se completa el proceso de edición, el dispositivo creador de contenido 12 puede generar un flujo de bits 21 basándose en los coeficientes de HOA 11. Es decir, el dispositivo creador de contenido 12 incluye un dispositivo de codificación de audio 20 que representa un dispositivo configurado para codificar o comprimir de otro modo los coeficientes de HOA 11 de acuerdo con diversos aspectos de las técnicas descritas en esta divulgación para generar el flujo de bits 21. El dispositivo de codificación de audio 20 puede generar el flujo de bits 21 para su transmisión, por ejemplo, a través de un canal de transmisión, que puede ser un canal cableado o inalámbrico, un dispositivo de almacenamiento de datos o algo similar. El flujo de bits 21 puede representar una versión codificada de los coeficientes de HOA 11 y puede incluir un flujo de bits primario y otro flujo de bits lateral, que se puede denominar información de canal lateral.
[0023] Mientras se muestra en la FIG. 2 como transmitido directamente al dispositivo consumidor de contenido 14, el dispositivo creador de contenido 12 puede emitir el flujo de bits 21 a un dispositivo intermedio situado entre el dispositivo creador de contenido 12 y el dispositivo consumidor de contenido 14. Este dispositivo intermedio puede almacenar el flujo de bits 21 para su posterior suministro al dispositivo consumidor de contenido 14, que puede solicitar el flujo de bits. El dispositivo intermedio puede comprender un servidor de archivos, un servidor de la Red, un ordenador de escritorio, un ordenador portátil, un ordenador de tipo tablet, un teléfono móvil, un teléfono inteligente o cualquier otro dispositivo que pueda almacenar el flujo de bits 21 para su posterior recuperación mediante un descodificador de audio. Este dispositivo intermedio puede residir en una red de suministro de contenido, capaz de transmitir en flujo continuo el flujo de bits 21 (y posiblemente junto con la transmisión de un correspondiente flujo de bits de datos de vídeo) a los abonados, tales como el dispositivo consumidor de contenido 14 que solicita el flujo de bits 21.
[0024] De forma alternativa, el dispositivo creador de contenido 12 puede almacenar el flujo de bits 21 en un medio de almacenamiento, tal como un disco compacto, un disco de vídeo digital, un disco de vídeo de alta definición u otros medios de almacenamiento, la mayoría de los cuales pueden ser leídos por un ordenador y, por lo tanto, pueden denominarse medios de almacenamiento legibles por ordenador o medios de almacenamiento no transitorio legibles por ordenador. En este contexto, el canal de transmisión puede referirse a aquellos canales por los cuales se transmiten contenidos almacenados en los medios (y pueden incluir tiendas minoristas y otros mecanismos de suministro basados en almacenes). En cualquier caso, las técnicas de la presente divulgación, por lo tanto, no se deben limitar, en este sentido, al ejemplo de la FIG. 2.
[0025] Como se muestra adicionalmente en el ejemplo de la FIG. 2, el dispositivo de consumo de contenido 14 incluye el sistema de reproducción de audio 16. El sistema de reproducción de audio 16 puede representar cualquier sistema de reproducción de audio que pueda reproducir datos de audio multicanal. El sistema de reproducción de audio 16 puede incluir un número de diferentes reproductores 22. Los reproductores 22 pueden proporcionar, cada uno, una forma diferente de reproducción, donde las diferentes formas de reproducción pueden incluir una o más de las diversas formas de realizar la exploración de amplitud de base vectorial (VBAP) y/o una o más de las diversas formas de realizar la síntesis del campo sonoro. Como se usa en el presente documento, "A y/o B" significa "A o B" o ambos "A y B".
[0026] El sistema de reproducción de audio 16 puede incluir además un dispositivo de descodificación de audio 24. El dispositivo de descodificación de audio 24 puede representar un dispositivo configurado para descodificar los coeficientes de HOA 11' a partir del flujo de bits 21, donde los coeficientes de HOA 11' pueden ser similares a los coeficientes de HOA 11, pero difieren debido a las operaciones con pérdidas (por ejemplo, cuantificación) y/o a la transmisión mediante el canal de transmisión. El sistema de reproducción de audio 16 puede, después de descodificar el flujo de bits 21, obtener los coeficientes de HOA 11' y reproducir los coeficientes de HOA 11' en las señales de salida de los altavoces 25. Las señales de los altavoces 25 pueden accionar uno o más altavoces (que no se muestran en el ejemplo de la FIG. 2, con fines de facilidad de ilustración).
[0027] Para seleccionar el reproductor apropiado o, en algunos casos, generar un reproductor apropiado, el sistema de reproducción de audio 16 puede obtener información de los altavoces 13 indicativa de un número de altavoces y/o una geometría espacial de los altavoces. En algunos casos, el sistema de reproducción de audio 16 puede obtener la información de los altavoces 13 usando un micrófono de referencia y accionando los altavoces de tal manera como para determinar dinámicamente la información de los altavoces 13. En otros casos, o conjuntamente con la determinación dinámica de la información de los altavoces 13, el sistema de reproducción de audio 16 puede inducir a un usuario a interactuar con el sistema de reproducción de audio 16 e introducir la información de los altavoces 13.
[0028] A continuación, el sistema de reproducción de audio 16 puede seleccionar uno de los reproductores de audio 22 basándose en la información de los altavoces 13. En algunos casos, el sistema de reproducción de audio 16 puede, cuando ninguno de los reproductores de audio 22 está dentro de ninguna medición de similitud de umbral (en cuanto a geometría de altavoces) con la geometría de los altavoces especificada en la información de los altavoces 13, generar uno de los reproductores de audio 22 basándose en la información de los altavoces 13. El sistema de reproducción de audio 16 puede, en algunos casos, generar uno de los reproductores de audio 22 basándose en la información de los altavoces 13 sin intentar primero seleccionar un reproductor existente entre los reproductores de audio 22. Uno o más altavoces 3 pueden a continuación reproducir las señales de altavoz representadas 25. En otras palabras, los altavoces 3 pueden configurarse para reproducir un campo de sonido basado en datos de audio ambisónico de orden superior.
[0029] La FIG. 3 es un diagrama de bloques que ilustra, con mayor detalle, un ejemplo del dispositivo de codificación de audio 20 mostrado en el ejemplo de la FIG. 2 que puede realizar diversos aspectos de las técnicas descritas en esta divulgación. El dispositivo de codificación de audio 20 incluye una unidad de análisis de contenido 26, una unidad de descomposición basada en vectores 27 y una unidad de descomposición basada en la dirección 28.
[0030] Aunque se describe brevemente a continuación, más información sobre la unidad de descomposición basada en vectores 27 y los diversos aspectos de la compresión de los coeficientes de HOA está disponible en la publicación de solicitud de patente internacional n. ° WO2014/194099, titulada
"INTERPOLATION FOR DECOMPOSED REPRESENTATIONS OF A SOUND
[0031] FIELD [Interpolación para representaciones descompuestas de un campo sonoro]", presentada el 29 de mayo de 2014. Además, se pueden encontrar más detalles de varios aspectos de la compresión de los coeficientes de HOA de acuerdo con el estándar de audio MPEG-H3D, incluido un análisis de la descomposición basada en vectores resumida a continuación, en:
Documento ISO/IEC DIS 23008-3, titulado "Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 3: 3D audio", de ISO/IEC JTC 1/SC29/WG11, de fecha 2014-07-25 (disponible en: http://mpeg.chiariglione.org/standards/mpeg-h/3d-audio/dis-mpeg-h-3d-audio, en lo sucesivo denominada "fase I del estándar de audio MPEG-H3D");
Documento ISO/IEC DIS 23008-3:2015/ PDAM3, titulado "Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 3: 3D audio, AMENDMENT 3: MPEG-H 3D Audio Phase 2", de ISO/IEC JTC 1/SC29/WG11, de fecha 2015-07-25 (disponible en: http://mpeg.chiariglione.org/standards/mpeg-h/3d- audio/text-isoiec-23008-3201xpdam-3-mpeg-h-3d-audiophase-2, y en lo sucesivo denominada "fase II del estándar de audio MPEG-H3D"); y
Jürgen Herre, etal., titulado "MPEG-H 3D Audio - The New Standard for Coding of Immersive Spatial Audio", con fecha de agosto de 2015 y publicado en el vol. 9, n. ° 5 de la Revista IEEE Journal of Selected Topics in Signal Processing.
[0032] La unidad de análisis de contenido 26 representa una unidad configurada para analizar el contenido de los coeficientes de HOA 11 y que identifica si los coeficientes de HOA 11 representan contenido generado a partir de una grabación en directo o un objeto de audio. La unidad de análisis de contenido 26 puede determinar si los coeficientes de HOA 11 se generaron a partir de una grabación de un campo sonoro real o de un objeto de audio artificial. En algunos casos, cuando los coeficientes de HOA en tramas 11 se generaron a partir de una grabación, la unidad de análisis de contenido 26 pasa los coeficientes de HOA 11 a la unidad de descomposición basada en vectores 27. En algunos casos, cuando los coeficientes de HOA por tramas 11 se generaron a partir de un objeto de audio sintético, la unidad de análisis de contenido 26 pasa los coeficientes de HOA 11 a la unidad de síntesis basada en la dirección 28. La unidad de síntesis basada en la dirección 28 puede representar una unidad configurada para realizar una síntesis basada en la dirección de los coeficientes de HOA 11 para generar un flujo de bits 21 basado en la dirección.
[0033] Como se muestra en el ejemplo de la FIG. 3, la unidad de descomposición basada en vectores 27 puede incluir una unidad de transformada invertible lineal (LIT) 30, una unidad de cálculo de parámetros 32, una unidad de reordenamiento 34, una unidad de selección del primer plano 36, una unidad de compensación de energía 38, una unidad de descorrelación 60 (mostrada como "decorr unit 60"), una unidad de control de ganancia 62, una unidad de codificador de audio psicoacústico 40, una unidad de generación de flujo de bits 42, una unidad de análisis del campo sonoro 44, una unidad de reducción de coeficientes 46, una unidad de selección de fondo (BG) 48, una unidad de interpolación espacio-temporal 50 y una unidad de cuantificación 52.
[0034] La unidad de transformada lineal invertible (LIT) 30 recibe los coeficientes de HOA 11 en forma de canales HOA, cada canal representativo de un bloque o trama de un coeficiente asociado con un orden dado, suborden de las funciones de base esférica (que se puede indicar como HOA[k], donde k puede indicar la trama o bloque actual de muestras). La matriz de coeficientes de HOA 11 puede tener las dimensiones D: M x (N+1)2.
[0035] La unidad de LIT30 puede representar una unidad configurada para realizar una forma de análisis denominada descomposición en valores singulares. Aunque se describen con respecto a la SVD, las técnicas descritas en esta divulgación pueden realizarse con respecto a cualquier transformación o descomposición similar que proporcione conjuntos de salida de energía compactada y no correlacionada linealmente. También, la referencia a "conjuntos" en esta divulgación está en general concebida para referirse a conjuntos no nulos, a menos que se indique específicamente lo contrario y no se pretende referir a la definición matemática clásica de conjuntos que incluye el denominado "conjunto vacío". Una transformación alternativa puede comprender un análisis de componentes principales, que se denomina a menudo "PCA". Dependiendo del contexto, un PCA se puede denominar mediante un número de nombres diferentes, tales como la transformada de Karhunen-Loeve discreta, la transformada de Hotelling, la descomposición ortogonal propia (POD) y la descomposición en autovalores (EVD), para nombrar unos pocos ejemplos. Entre las propiedades de dichas operaciones que conducen a uno de los posibles objetivos subyacentes de datos de audio de compresión puede incluirse una o más de "compactación energética" y "descorrelación" de los datos de audio multicanal.
[0036] En cualquier caso, suponiendo que la unidad de LIT30 realiza una descomposición en valores singulares (que, de nuevo, puede denominarse "SVD") con fines de ejemplo, la unidad de LIT30 puede transformar los coeficientes de HOA 11 en dos o más conjuntos de coeficientes de HOA transformados. Estos "conjuntos" de coeficientes de HOA transformados pueden incluir vectores de coeficientes de HOA transformados. En el ejemplo de la FIG. 3, la unidad de LIT30 puede realizar la SVD con respecto a los coeficientes de HOA 11 para generar una matriz llamada V, una matriz S y una matriz U. La SVD, en álgebra lineal, puede representar una factorización de una matriz X real o compleja de y por z (donde X puede representar datos de audio multicanal, tales como los coeficientes de HOA 11) de la siguiente forma:
Figure imgf000008_0001
U puede representar una matriz unitaria real o compleja de y por y, donde las y columnas de U se conocen como los vectores singulares izquierdos de los datos de audio multicanal. S puede representar una matriz diagonal rectangular de y por z con números reales no negativos en la diagonal, donde los valores diagonales de S se conocen comúnmente como los valores singulares de los datos de audio multicanal. V* (que puede indicar una traspuesta conjugada de V) puede representar una matriz unitaria real o compleja de z por z, donde las z columnas de V* son conocidas como vectores singulares derechos de los datos de audio multicanal.
[0037] En algunos ejemplos, la matriz V* en la expresión matemática de SVD mencionada anteriormente se indica como la traspuesta conjugada de la matriz V para reflejar que la SVD se puede aplicar a matrices que comprenden números complejos. Cuando se aplica a matrices que comprenden solo números reales, la conjugada compleja de la matriz V (o, en otras palabras, la matriz V*) puede considerarse como la traspuesta de la matriz V. A continuación se supone, con fines de facilitar la ilustración, que los coeficientes de HOA 11 comprenden números reales, con el resultado de que la matriz V se emite mediante la SVD, en lugar de la matriz V*. Además, aunque se indica como la matriz V en esta divulgación, la referencia a la matriz V debería entenderse como referencia a la traspuesta de la matriz V cuando corresponda. Aunque se supone que es la matriz V, las técnicas pueden aplicarse de manera similar a los coeficientes de HOA 11 que tienen coeficientes complejos, donde la salida de la SVD es la matriz V*. Por consiguiente, las técnicas no deberían estar limitadas a este respecto para proporcionar solamente la aplicación de la SVD para generar una matriz V, sino que pueden incluir la aplicación de la SVD a coeficientes de HOA 11 que tengan componentes complejos para generar una matriz V*.
[0038] De esta manera, la unidad de LIT30 puede realizar una SVD con respecto a los coeficientes de HOA 11 para emitir vectores US[k] 33 (que pueden representar una versión combinada de los vectores S y los vectores U) que tienen dimensiones D: M x (N+1)2, y V[k] vectores 35 con dimensiones D: (N+1)2 x (N+1)2. Los elementos vectoriales individuales en la matriz US[k] también pueden denominarse Xp s(k), mientras que los vectores individuales de la matriz V[k] también pueden denominarse v(k).
[0039] Un análisis de las matrices U, S y V puede revelar que las matrices llevan o representan características espaciales y temporales del campo sonoro subyacente representado anteriormente por X. Cada uno de los N vectores en U (de muestras de longitud M) puede representar señales de audio normalizadas separadas como una función del tiempo (para el período de tiempo representado por las M muestras), que son ortogonales entre sí y que han sido desacopladas de cualquier característica espacial (que también puede denominarse información direccional). Las características espaciales, que representan la forma y la posición espacial (r, theta, phi), pueden representarse en cambio por vectores résimos individuales, v(i)(k), en la matriz V (cada uno de longitud (N+1)2).
[0040] Los elementos individuales de cada uno de los vectores v(i)(k) pueden representar un coeficiente de HOA que describe la forma (incluida la anchura) y la posición del campo sonoro para un objeto de audio asociado. Tanto los vectores de la matriz U como los de la matriz V se normalizan de tal manera que sus energías de media cuadrática son iguales a la unidad. La energía de las señales de audio en U está de este modo representada por los elementos diagonales en S. Multiplicar U por S para formar US[k] (con los elementos vectoriales individuales Xp s(k)), representa de este modo la señal de audio con energías. La capacidad de la descomposición SVD para desacoplar las señales de tiempo de audio (en U), sus energías (en S) y sus características espaciales (en V) puede dar soporte a varios aspectos de las técnicas descritas en esta divulgación. Además, el modelo de síntesis de los coeficientes de HOA[k] subyacentes, X, por una multiplicación de vectores de US[k] y V[k] da lugar al término "descomposición basada en vectores" que se utiliza en todo este documento.
[0041] Aunque se describe como realizada directamente con respecto a los coeficientes de HOA 11, la unidad de LIT30 puede aplicar la trasformada invertible lineal a los derivados de los coeficientes de HOA 11. Por ejemplo, la unidad de LIT30 puede aplicar una SVD con respecto a una matriz de densidad espectral de potencia obtenida a partir de los coeficientes de HOA 11. Mediante el modo de realización de la SVD con respecto a la densidad espectral de potencia (PSD) de los coeficientes de HOA, en lugar de los coeficientes en sí, la unidad de LIT30 puede reducir potencialmente la complejidad de cálculo para realizar la SVD en términos de uno o más ciclos de procesador y espacio de almacenamiento, mientras se consigue la misma eficacia en la codificación de la fuente de audio como si la SVD se aplicara directamente a los coeficientes de HOA.
[0042] La unidad de cálculo de parámetros 32 representa una unidad configurada para calcular varios parámetros, tales como un parámetro de correlación (R), parámetros de propiedades direccionales (0, 0, r), y una propiedad de energía (e). Cada uno de los parámetros para la trama actual puede indicarse como R[k], 0[k], 0[k], r[k] y e[k]. La unidad de cálculo de parámetros 32 puede realizar un análisis de energía y/o correlación (o lo que se denomina correlación cruzada) con respecto a los vectores US[k] 33 para identificar los parámetros. La unidad de cálculo de parámetros 32 también puede determinar los parámetros para la trama anterior, donde los parámetros de la trama anterior pueden indicarse como R[k-1], 0[k-1], 0[k-1], r[k-1] y e[k-1], basándose en la trama anterior del vector US[k-1 ] y los vectores V[k-1]. La unidad de cálculo de parámetros 32 puede emitir los parámetros actuales 37 y los parámetros anteriores 39 para reordenar la unidad 34.
[0043] Los parámetros calculados por la unidad de cálculo de parámetros 32 pueden ser utilizados por la unidad de reordenación 34 para reordenar los objetos de audio para representar su evaluación natural o su continuidad en el tiempo. La unidad de reordenación 34 puede comparar cada uno de los parámetros 37 de los primeros vectores US[k] 33, por orden, con cada uno de los parámetros 39 para los segundos vectores US[k-1] 33. La unidad de reordenación 34 puede reordenar (utilizando como ejemplo un algoritmo húngaro) los diversos vectores dentro de la matriz US[k] 33 y la matriz V[k] 35 basándose en los parámetros actuales 37 y los parámetros anteriores 39 para emitir una matriz US[k] reordenada 33' (que se puede indicar matemáticamente como US[k]) y una matriz V[k] reordenada 35' (que se puede indicar matemáticamente como V[k]) a una unidad de selección de sonido en primer plano 36 (o sonido predominante-PS) ("unidad de selección del primer plano 36") y una unidad de compensación de energía 38.
[0044] La unidad de análisis del campo sonoro 44 puede representar una unidad configurada para realizar un análisis de campo sonoro con respecto a los coeficientes de HOA 11 para alcanzar potencialmente una velocidad de bits deseada 41. La unidad de análisis del campo sonoro 44 puede, basándose en este análisis y/o en una velocidad de bits deseada recibida 41, determinar el número total de instanciaciones del codificador psicoacústico (que puede ser una función del número total de canales ambientales o de fondo (BGtot) y el número de canales en primer plano o, en otras palabras, canales predominantes. El número total de instanciaciones del codificador psicoacústico se puede indicar como numCanalesTransporteHOA.
[0045] La unidad de análisis del campo sonoro 44 también puede determinar, de nuevo para alcanzar potencialmente la velocidad de bits objetivo 41, el número total de canales en primer plano (nFG) 45, el orden mínimo del campo sonoro de fondo (o, en otras palabras, ambiente) (NBG o, de forma alternativa, MinOrdenHOAAmb), el número correspondiente de canales reales representativos del orden mínimo del campo sonoro de fondo (nBGa = (MinOrdenHOAAmb+1 )2), y los índices (i) de los canales adicionales de BG HOA a enviar (que pueden indicarse colectivamente como información de canal de fondo 43 en el ejemplo de la FIG. 3). La información de canal de fondo 42 también puede denominarse información de canal ambiental 43. Cada uno de los canales que queda de numHOATransportChannels- nBGa puede ser un "canal de fondo/ambiental adicional", un "canal predominante basado en un vector activo", una "señal predominante basada en dirección activa" o estar "completamente inactivo". En un aspecto, los tipos de canales se pueden indicar como un elemento de sintaxis ("ChannelType") con dos bits (por ejemplo, 00: señal basada en dirección; 01: señal predominante basada en vectores; 10: señal ambiental adicional; 11: señal inactiva). El número total de señales de fondo o de ambiente, nBGa, puede estar dado por (MinOrdenHOAAmb 1 )2+el número de veces que el índice 10 (en el ejemplo anterior) aparece como un tipo de canal en el flujo de bits para esa trama.
[0046] La unidad de análisis del campo sonoro 44 puede seleccionar el número de canales de fondo (o, en otras palabras, de ambiente) y el número de canales en primer plano (o, en otras palabras, predominantes) basándose en la velocidad de bits deseada 41, seleccionando más canales de fondo y/o en primer plano cuando la velocidad de bits deseada 41 es relativamente mayor (por ejemplo, cuando la velocidad de bits deseada 41 es igual o mayor que 512 Kbps). En un aspecto, el numCanalesTransporteHOA se puede fijar en 8 mientras que el MinOrdenHOAAmb puede ser fijado en 1 en la sección de cabecera del flujo de bits. En este escenario, en cada trama se pueden dedicar cuatro canales para representar la parte de fondo o de ambiente del campo sonoro, mientras que los otros 4 canales pueden variar, de trama a trama, según el tipo de canal, por ejemplo, usado como un canal de fondo/ambiente adicional o un canal en primer plano/predominante. Las señales en primer plano/predominantes pueden ser una entre señales basadas en vectores o en la dirección, como se ha descrito anteriormente.
[0047] En algunos casos, el número total de señales predominantes basadas en vectores para una trama puede estar dado por el número de veces que el índice ChannelType es 01 en el flujo de bits de dicha trama. En el aspecto anterior, para cada canal de fondo/ambiental adicional (por ejemplo, correspondiente a un ChannelType de 10), información correspondiente de cuál de los posibles coeficientes de HOA (más allá de los cuatro primeros) se puede representar en ese canal. La información, para contenido HOA de cuarto orden, puede ser un índice para indicar los coeficientes de HOA5 a 25. Los cuatro primeros coeficientes de HOA ambientales 1 a 4 pueden enviarse todo el tiempo cuando minOrdenHOAAmb se fija en 1, por lo tanto, el dispositivo de codificación de audio solo puede necesitar indicar uno de los coeficientes de HOA ambientales adicionales que tengan un índice de 5 a 25. Esta información, por tanto, podría ser enviada utilizando un elemento de sintaxis de 5 bits (para el contenido de 4° orden), que puede denominarse "IndCoefAmbCodif". En cualquier caso, la unidad de análisis del campo sonoro 44 emite la información de canal de fondo 43 y los coeficientes de HOA 11 a la unidad de selección de fondo (BG) 36, la información de canal de fondo 43 a la unidad de reducción de coeficientes 46 y a la unidad de generación del flujo de bits 42, y el nFG45 a una unidad de selección en primer plano 36.
[0048] La unidad de selección de fondo 48 puede representar una unidad configurada para determinar los coeficientes de HOA de fondo o ambientales 47 basándose en la información de canal de fondo (por ejemplo, el campo sonoro de fondo (Nbg) y el número (nBGa) y los índices (i) de los canales HOA de BG adicionales a enviar). Por ejemplo, cuando Nbg es igual a uno, la unidad de selección de fondo 48 puede seleccionar los coeficientes de HOA 11 para cada muestra de la trama de audio que tenga un orden igual o inferior a uno. A continuación, la unidad de selección de fondo 48 puede, en este ejemplo, seleccionar los coeficientes de HOA 11 que tengan un índice identificado por uno de los índices (i) como coeficientes adicionales HOA de BG, donde el nBGa se proporciona a la unidad de generación del flujo de bits 42 para que se especifique en el flujo de bits 21 para permitir al dispositivo de descodificación de audio, tal como el dispositivo de descodificación de audio 24, que se muestra en el ejemplo de las FIGs. 2 y 4, analizar los coeficientes de HOA de fondo 47 del flujo de bits 21. A continuación, la unidad de selección de fondo 48 puede emitir los coeficientes de HOA ambientales 47 a la unidad de compensación de energía 38. Los coeficientes de HOA ambientales 47 pueden tener dimensiones D: M x [(Nbg+1)2 + nBGa]. Los coeficientes de HOA ambientales 47 también pueden denominarse "coeficientes de HOA ambientales 47", donde cada uno de los coeficientes de HOA ambientales 47 corresponde a un cana1 HOA ambientales independiente 47, a codificar por la unidad codificadora de audio psicoacústica 40.
[0049] La unidad de selección del primer plano 36 puede representar una unidad configurada para seleccionar la matriz US[k] reordenada 33' y la matriz V[k] reordenada 35', que representan componentes en primer plano, o distintos, del campo sonoro basándose en nFG45 (que pueden representar uno o más índices que identifican los vectores en primer plano). La unidad de selección del primer plano 36 puede emitir nFG señales 49 (que se pueden indicar como una US[k]1,..., nFG reordenada 49, FGi, ...nFG[k] 49, o Xp'SnFG\k ) 49) a la unidad codificadora de audio psicoacústica 40, donde las nFG señales 49 pueden tener dimensiones D: M x nFG y cada una representa objetos de monoaudio. La unidad de selección del primer plano 36 también pueden emitir la matriz V[k] reordenada 35' (o v(1nFG)(k) 35'), correspondiente a los componentes en primer plano del campo sonoro, a la unidad de interpolación espacio-temporal 50, donde un subconjunto de la matriz V[k] reordenada 35', correspondiente a los componentes en primer plano, se puede indicar como la matriz V[k] en primer plano 51 k (que se puede indicar matemáticamente como V1,..., nFG[k]) con dimensiones D: (N+1 )2 x nFG.
[0050] La unidad de compensación de energía 38 puede representar una unidad configurada para realizar compensación de energía con respecto a los coeficientes de HOA ambientales 47, para compensar la pérdida de energía debida a la eliminación de varios de los canales HOA por la unidad de selección de fondo 48. La unidad de compensación de energía 38 puede realizar un análisis energético con respecto a una o más entre la matriz US[k] reordenada 33', la matriz V[k] reordenada 35', las nFG señales 49, los vectores V[k] en primer plano 51k y los coeficientes de HOA ambientales 47, y luego realizar una compensación de energía basándose en el análisis de energía para generar los coeficientes 47' de HOA ambientales compensados en energía. La unidad de compensación de energía 38 puede emitir los coeficientes 47' de HOA ambientales compensados en energía a la unidad de descorrelación 60.
[0051] La unidad de descorrelación 60 puede representar una unidad configurada para implementar varios aspectos de las técnicas descritas en esta divulgación para reducir o eliminar la correlación entre los coeficientes 47' de HOA ambientales con compensación de energía para formar una o más señales 67 de audio de HOA ambientales descorrelacionadas. La unidad de descorrelación 40' puede emitir las señales de audio de HOA descorrelacionadas 67 a la unidad de control de ganancia 62. La unidad de control de ganancia 62 puede representar una unidad configurada para realizar control automático de ganancia (que puede abreviarse como "AGC") con respecto a las señales 67' de audio de HOA ambientales descorrelacionadas para obtener señales 67' de audio de HOA ambientales controladas por ganancia. Después de aplicar el control de ganancia, la unidad 62 de control automático de ganancia puede proporcionar las señales 67' de audio de HOA ambientales controladas por ganancia a la unidad codificadora de audio psicoacústica 40.
[0052] La unidad de descorrelación 60 incluida dentro del dispositivo de codificación de audio 20 puede representar instancias únicas o múltiples de una unidad configurada para aplicar una o más transformadas de descorrelación a los coeficientes 47' de HOA ambientales con compensación de energía, para obtener las señales de audio de HOA descorrelacionadas 67. En algunos ejemplos, la unidad de descorrelación 40' puede aplicar una matriz UHJ a los coeficientes 47' de HOA ambientales con compensación de energía. En varios casos de esta divulgación, la matriz UHJ también puede denominarse "transformada basada en fase". La aplicación de la transformada basada en fase también puede denominarse en el presente documento "descorrelación de desplazamiento de fase".
[0053] El formato UHJ ambisónico es un desarrollo del sistema de sonido envolvente ambisónico diseñado para ser compatible con medios mono y estéreo. El formato UHJ incluye una jerarquía de sistemas en los que el campo sonoro grabado se reproducirá con un grado de precisión que varía de acuerdo con los canales disponibles. En varios casos, UHJ también se conoce como "formato C". Las iniciales indican algunas de las fuentes incorporadas al sistema: U de Universal (UD-4); H de la Matriz H; y J del sistema 45J.
[0054] UHJ es un sistema jerárquico de codificación y descodificación de información de sonido direccional dentro de la tecnología ambisónica. Dependiendo de la cantidad de canales disponibles, un sistema puede transportar más o menos información. UHJ es totalmente compatible con estéreo y mono. Se pueden utilizar hasta cuatro canales (L, R, T, Q).
[0055] En una forma, la información envolvente horizontal (o "planar") UHJ de 2 canales (L, R) se puede transportar mediante canales de señal estéreo normales (CD, FM o radio digital, etc.) que se pueden recuperar utilizando un descodificador UHJ en el extremo de escucha. La suma de los dos canales puede producir una señal mono compatible, que puede ser una representación más precisa de la versión de dos canales que la suma de una fuente convencional "mono panoramizado". Si hay un tercer canal (T) disponible, el tercer canal se puede utilizar para producir una precisión de localización mejorada para el efecto envolvente plano cuando se descodifica mediante un descodificador UHJ de 3 canales. Puede que no se requiera que el tercer canal tenga un ancho de banda de audio completo para este propósito, lo cual da lugar a la posibilidad de los denominados sistemas de "21/2 canales", donde el tercer canal tiene un ancho de banda limitado. En un ejemplo, el límite puede ser de 5 kHz. El tercer canal se puede emitir a través de radio FM, por ejemplo, mediante modulación en cuadratura de fase. Agregar un cuarto canal (Q) al sistema UHJ puede permitir la codificación de sonido envolvente completo con altura, a veces denominado n como perifonía, con un nivel de precisión idéntico al formato B de 4 canales.
[0056] UHJ de 2 canales es un formato comúnmente utilizado para la distribución de grabaciones ambisónicas.
Las grabaciones UHJ de 2 canales se pueden transmitir a través de todos los canales estéreo normales y se puede utilizar cualquiera de los medios de 2 canales normales sin alteraciones. UHJ es compatible con estéreo en el sentido de que, sin descodificación, el oyente puede percibir una imagen estéreo, pero una que es significativamente más ancha que el estéreo convencional (por ejemplo, el llamado "súper estéreo"). Los canales izquierdo y derecho también se pueden sumar para obtener un grado muy alto de compatibilidad mono. Reproducido a través de un descodificador UHJ, la capacidad de sonido envolvente puede revelarse.
[0057] Una representación matemática de ejemplo de la unidad de descorrelación 60 que aplica la matriz UHJ (o transformada basada en fase) es la siguiente:
Codificación UHJ:
S = (0,9397 * W) (0,1856 * X);
D = imag(hilbert( (-0,3420 * W) (0,5099 *X ))) (0,6555 * Y);
T = imag(hilbert( (-0,1432 * W) (0,6512 * X ))) -(0,7071 * Y);
Q - 0,9772 * Z;
conversión de S y D a izquierda y derecha:
Izquierda = (S+D)/2
Derecha = (S-D)/2
[0058] De acuerdo con algunas implementaciones de los cálculos anteriores, las suposiciones con respecto a los cálculos anteriores pueden incluir lo siguiente: Los canales de fondo de HOA son ambisónicos de 1.er orden, FuMa normalizados, en el orden de numeración de canales ambisónicos W(a00), X(a11), Y(a11 -), Z(a10).
[0059] En los cálculos enumerados anteriormente, la unidad de descorrelación 40' puede realizar una multiplicación escalar de varias matrices por valores constantes. Por ejemplo, para obtener la señal S, la unidad de descorrelación 60 puede realizar una multiplicación escalar de una matriz W por el valor constante de 0,9397 (por ejemplo, por multiplicación escalar), y de una matriz X por el valor constante de 0,1856. Como también se ilustra en los cálculos enumerados anteriormente, la unidad de descorrelación 60 puede aplicar una transformada de Hilbert (indicada por la función "HilbertO" en la codificación UHJ anterior) para obtener cada una de las señales D y T. La función "imagO" en la codificación UHJ anterior indica que se obtiene el imaginario (en el sentido matemático) del resultado de la transformada de Hilbert.
[0060] Otro ejemplo de representación matemática de la unidad de descorrelación 60 que aplica la matriz UHJ (o transformada basada en fase) es la siguiente:
Codificación UHJ:
S - (0,9396926 * W) (0,151520536509082 * X);
D = imag(hilbert( (-0,3420201 * W) (0,416299273350443 4 X ) ))
(0,535173990363608 * Y);
T - 0,940604061228740 * (imag(hilbert( (-0,1432 * W) (0,531702573500135 *
X ) )) -(0,577350269189626 * Y));
Q = Z;
conversión de S y D a izquierda y derecha:
Izquierda = (S+D)/2
Derecha = (S-D)/2
[0061] En algunas implementaciones de ejemplo de los cálculos anteriores, las suposiciones con respecto a los cálculos anteriores pueden incluir lo siguiente: Los canales de fondo HOA son ambisónicos de 1.er orden, N3D (o "tres D completo") normalizados, en el orden de numeración de canales ambisónicos W (a00), X(a11), Y(a11), Z(a10). Aunque se describe en el presente documento con respecto a la normalización de N3D, se apreciará que los cálculos de ejemplo también se pueden aplicar a canales de fondo HOA que están normalizados por SN3D (o "semi-normalizados por Schmidt). La normalización de N3D y SN3D puede diferir en términos de los factores de escala utilizados. A continuación se expresa un ejemplo de representación de la normalización N3D, en relación con la normalización SN3D:
N3D SN3D
N = N V2¡ 1
l ,m l m
[0062] A continuación se expresa un ejemplo de coeficientes de ponderación utilizados en la normalización SN3D:
Figure imgf000013_0001
[0063] En los cálculos enumerados anteriormente, la unidad de descorrelación 60 puede realizar una multiplicación escalar de varias matrices por valores constantes. Por ejemplo, para obtener la señal S, la unidad de descorrelación 60 puede realizar una multiplicación escalar de una matriz W por el valor constante de 0. 9396926 (por ejemplo, mediante multiplicación escalar) y de una matriz X por el valor constante de 0. 151520536509082. Como también se ilustra en los cálculos enumerados anteriormente, la unidad de descorrelación 60 puede aplicar una transformada de Hilbert (indicada por la función "Hilbert()" en la codificación UHJ anterior o descorrelación por desplazamiento de fase) para obtener cada una de las señales D y T. La función "imag()" en la codificación UHJ anterior indica que se obtiene el imaginario (en el sentido matemático) del resultado de la transformada de Hilbert.
[0064] La unidad de descorrelación 60 puede realizar los cálculos enumerados anteriormente, de modo que las señales S y D resultantes representen señales de audio izquierda y derecha (o en otras palabras, señales de audio estéreo). En algunos de estos escenarios, la unidad de descorrelación 60 puede emitir las señales T y Q como parte de las señales 67 de audio de HOA ambientales descorrelacionadas, pero un dispositivo de descodificación que recibe el flujo de bits 21 puede no procesar las señales T y Q cuando se renderiza a una geometría de altavoces estéreo (o, en otras palabras, configuración de altavoces estéreo). En los ejemplos, los coeficientes de HOA ambientales 47' pueden representar un campo de sonido a reproducir en un sistema de reproducción de audio mono. La unidad de descorrelación 60 puede emitir las señales S y D como parte de las señales 67 de audio de HOA ambientales descorrelacionadas, y un dispositivo descodificador que recibe el flujo de bits 21 puede combinar (o "mezclar") las señales S y D para formar una señal de audio para renderizarse y/o emitirse en formato de audio mono.
[0065] En estos ejemplos, el dispositivo de descodificación y/o el dispositivo de reproducción pueden recuperar la señal de audio mono de varias formas. Un ejemplo es mezclando las señales izquierda y derecha (representadas por las señales S y D). Otro ejemplo es aplicar una matriz UHJ (o transformación basada en fase) para descodificar una señal W. Al producir una señal izquierda natural y una señal derecha natural en forma de las señales S y D aplicando la matriz UHJ (o transformada basada en fase), la unidad de descorrelación 60 puede implementar técnicas de esta divulgación para proporcionar posibles ventajas y/o posibles mejoras sobre las técnicas que aplican otras transformadas de descorrelación (como una matriz de modo descrita en el estándar MPEG-H).
[0066] En varios ejemplos, la unidad de descorrelación 60 puede aplicar diferentes transformadas de descorrelación, basándose en una frecuencia de bits de los coeficientes 47' de HOA ambientales con compensación de energía recibida. Por ejemplo, la unidad de descorrelación 60 puede aplicar la matriz UHJ (o transformada basada en fase) descrita anteriormente en escenarios en los que los coeficientes 47' de HOA ambientales con compensación de energía representan una entrada de cuatro canales. Más específicamente, basándose en los coeficientes 47' de HOA ambientales con compensación de energía que representan una entrada de cuatro canales, la unidad de descorrelación 60 puede aplicar una matriz UHJ de 4 x 4 (o transformada basada en fase). Por ejemplo, la matriz de 4 x 4 puede ser ortogonal a la entrada de cuatro canales de los coeficientes 47' de HOA ambientales con compensación de energía. En otras palabras, en los casos en los que los coeficientes 47' de HOA ambientales con compensación de energía representan un número menor de canales (por ejemplo, cuatro), la unidad de descorrelación 60 puede aplicar la matriz UHJ como la transformada de descorrelación seleccionada, para descorrelacionar las señales de fondo de las señales de HOA ambientales compensadas por energía 47' para obtener las señales 67 de audio de HOA ambientales descorrelacionadas.
[0067] De acuerdo con este ejemplo, si los coeficientes 47' de HOA ambientales con compensación de energía representan un mayor número de canales (por ejemplo, nueve), la unidad de descorrelación 60 puede aplicar una transformada de descorrelación diferente de la matriz UHJ (o transformada basada en fase). Por ejemplo, en un escenario en el que los coeficientes 47' de HOA ambientales con compensación de energía representan una entrada de nueve canales, la unidad de descorrelación 60 puede aplicar una matriz de modo (por ejemplo, como se describe en la fase I del estándar de audio MPEG-H3D mencionado anteriormente), para descorrelacionar los coeficientes 47' de HOA ambientales con compensación de energía. En los ejemplos en los que los coeficientes 47' de HOA ambientales con compensación de energía representan una entrada de nueve canales, la unidad de descorrelación 60 puede aplicar una matriz de modo 9 x 9 para obtener las señales 67 de audio de HOA ambientales descorrelacionada.
[0068] A su vez, varios componentes del dispositivo 20 de codificación de audio (como el codificador 40 de audio psicoacústico) pueden codificar perceptualmente las señales 67 de audio de HOA ambientales descorrelacionadas de acuerdo con AAC o USAC. La unidad de descorrelación 60 puede aplicar la transformada de descorrelación de desplazamiento de fase (por ejemplo, la matriz UHJ o la transformada basada en fase en el caso de una entrada de cuatro canales), para optimizar potencialmente la codificación AAC/USAC para HOA. En los ejemplos en los que los coeficientes 47' de HOA ambientales con compensación de energía (y por lo tanto, las señales 67 de audio de HOA ambientales descorrelacionadas) representan datos de audio que se reproducirán en un sistema de reproducción estéreo, la unidad de descorrelación 60 puede aplicar las técnicas de esta divulgación para mejorar u optimizar compresión, basándose en que AAC y USAC están relativamente orientadas (u optimizadas para) datos de audio estéreo.
[0069] Se entenderá que la unidad de descorrelación 60 puede aplicar las técnicas descritas en el presente documento en situaciones en las que los coeficientes 47' de HOA ambientales con compensación de energía incluyen canales en primer plano, así como en situaciones en las que los coeficientes 47' de HOA ambientales con compensación de energía no incluyen ningún canal en primer plano. Como un ejemplo, la unidad de descorrelación 40' puede aplicar las técnicas y/o cálculos descritos anteriormente, en un escenario donde los coeficientes 47' de HOA ambientales con compensación de energía incluyen cero (0) canales en primer plano y cuatro (4) canales de fondo (por ejemplo, un escenario de una frecuencia de bits menor/menor).
[0070] En algunos ejemplos, la unidad de descorrelación 60 puede hacer que la unidad de generación de flujo de bits 42 señale, como parte del flujo de bits basado en vectores 21, uno o más elementos de sintaxis que indican que la unidad de descorrelación 60 aplicó una transformada de descorrelación a los coeficientes 47' de1HOA ambientales con compensación de energía. Al proporcionar dicha indicación a un dispositivo de descodificación, la unidad de descorrelación 60 puede permitir que el dispositivo de descodificación realice transformaciones de descorrelación recíprocas en datos de audio en el dominio HOA. En algunos ejemplos, la unidad de descorrelación 60 puede hacer que la unidad de generación de flujo de bits 42 señale elementos de sintaxis que indican qué transformada de descorrelación se aplicó, tal como la matriz UHJ (u otra transformada basada en fase) o la matriz de modo.
[0071] La unidad de descorrelación 60 puede aplicar una transformada basada en fase al coeficiente 47' de HOA ambiental con compensación de energía. La transformada basada en fase para las primeras secuencias de coeficientes Omin h Oa de Camb (k - 1) se define por
Figure imgf000014_0001
con los coeficientes d como se define en la Tabla 1, las tramas de señal S(k - 2) y M(k - 2) están definidas por S(k 2) — A+go(k 2) d(6) ■ cAMB2(k 2)
M(k — 2) = d(4) ■ cAMB1(k - 2) d(5) ■ cAMB4(k — 2)
y A+90 (k - 2) y B+90 (k - 2) son las tramas de las señales A y B con desfase de 90 grados definidas por
A(k — 2) = d(0) • cAMBBAJOii(k — 2) d(l) ■ cAMB4(k — 2)
B(k 2) — d(2) • cAMBBAJ01(k 2) d(3) • cAMB4(k 2)
La transformada basada en fase para las primeras secuencias de coeficientes Omin HOA de Cp,amb (k - 1) se define en consecuencia. La transformada descrita puede introducir un retardo de una trama.
[0072] En lo que antecede, xamb,bajo,1 (k - 2) a xamb,bajo,4 (k - 2) pueden corresponder a señales 67 de audio de HOA ambientales descorrelacionadas. En la ecuación anterior, la variable Camb.i (k) variable denota los coeficientes de HOA para la k-ésima trama correspondiente a las funciones de base esférica que tienen un (orden: suborden) de (0:0), que también puede denominarse canal o componente 'W'. La variable CAMB,2 (k) variable denota los coeficientes de HOA para la k-ésima trama correspondiente a las funciones de base esférica que tienen un (orden: suborden) de (1:-1), que también puede denominarse el canal o componente 'Y'. La variable CAMB,3 (k) variable denota los coeficientes de HOA para la k-ésima trama correspondiente a las funciones de base esférica que tienen un (orden: suborden) de (1:0), que también puede denominarse canal o componente 'Z'. La variable Camba (K) variable denota los coeficientes de HOA para la k-ésima trama correspondiente a las funciones de base esférica que tienen un (orden: suborden) de (1:1), que también puede denominarse canal o componente 'X'. El Cam bj (K) a CAMB,3(k) puede corresponder a los coeficientes 47' de HOA ambientales.
[0073] La Tabla 1 siguiente ilustra un ejemplo de coeficientes que la unidad de descorrelación 40 puede usar para realizar una transformada basada en fase.
Tabla 1 Coeficientes para transformada basada en fase
Figure imgf000015_0001
[0074] En algunos ejemplos, varios componentes del dispositivo de codificación de audio 20 (tal como la unidad de generación de flujo de bits 42) pueden configurarse para transmitir solo representaciones HOA de primer orden para frecuencias de bits de destino más bajas (por ejemplo, una frecuencia de bits de destino de 128 K o 256 K). De acuerdo con algunos de estos ejemplos, el dispositivo de codificación de audio 20 (o componentes del mismo, como la unidad de generación de flujo de bits 42) puede configurarse para descartar coeficientes de HOA de orden superior (por ejemplo, coeficientes con un orden mayor que el primer orden, o en otras palabras, N>1). Sin embargo, en los ejemplos en los que el dispositivo de codificación de audio 20 determina que la frecuencia de bits de destino es relativamente alta, el dispositivo de codificación de audio 20 (por ejemplo, la unidad de generación de flujo de bits 42) puede separar los canales en primer plano y de fondo, y puede asignar bits (por ejemplo, en mayores cantidades) a los canales en primer plano.
[0075] Aunque se describe que se aplica a los coeficientes 47' de HOA ambientales con compensación de energía, el dispositivo 20 de codificación de audio puede no aplicar la descorrelación a los coeficientes 47' de HOA ambientales con compensación de energía. En su lugar, la unidad de compensación de energía 38 puede proporcionar los coeficientes 47' de HOA ambientales con compensación de energía directamente a la unidad de control de ganancia 62, que puede realizar un control automático de ganancia con respecto a los coeficientes 47' de HOA ambientales con compensación de energía. Como tal, la unidad de descorrelación 60 se muestra como una línea discontinua para indicar que la unidad de descorrelación no siempre puede realizar la descorrelación o estar incluida en el dispositivo de descodificación de audio 20.
[0076] La unidad de interpolación espacio-temporal 50 puede representar una unidad configurada para recibir los vectores V[*] en primer plano 51* para la k-ésima trama y los vectores en primer plano V[*-1] 51 *-1 para la trama anterior (de ahí la notación k-1) y realizar una interpolación espacio-temporal para generar los vectores V[k] en primer plano interpolados. La unidad de interpolación espacio-temporal 50 puede recombinar las nFG señales 49 con los vectores V[k] en primer plano 51* para recuperar los coeficientes de HOA en primer plano reordenados. A continuación, la unidad de interpolación espacio-temporal 50 puede dividir los coeficientes de HOA en primer plano reordenados por los vectores V[*] interpolados para generar nFG señales interpoladas 49'.
[0077] La unidad de interpolación espacio-temporal 50 también puede emitir los vectores V[k] en primer plano 51* que se usaron para generar los vectores V[*] en primer plano interpolados, de modo que un dispositivo de descodificación de audio, tal como el dispositivo de descodificación de audio 24, pueda generar los vectores V[*] en primer plano interpolados y recuperar así los vectores V[*] en primer plano 51*. Los vectores V[*] en primer plano 51 * utilizados para generar los vectores V[*] en primer plano interpolados se indican como los vectores V[*] en primer plano restantes 53. Con el fin de asegurar que los mismos V[k] y V[k-1] se usen en el codificador y el descodificador (para crear los vectores interpolados V[k]) se pueden usar versiones cuantificadas/descuantificadas de los vectores en el codificador y el descodificador. La unidad de interpolación espacio-temporal 50 puede emitir las nFG señales interpoladas 49' a la unidad de control de ganancia 62 y los vectores V[*] en primer plano interpolados 51* a la unidad de reducción de coeficientes 46.
[0078] La unidad de control de ganancia 62 también puede representar una unidad configurada para realizar control automático de ganancia (que puede abreviarse como "AGC") con respecto a las señales nFG interpoladas 49' para obtener señales nFG controladas por ganancia 49". Después de aplicar el control de ganancia, la unidad 62 de control automático de ganancia puede proporcionar las señales 49” nFG controladas por ganancia a la unidad codificadora de audio psicoacústica 40.
[0079] La unidad de reducción de coeficientes 46 puede representar una unidad configurada para realizar una reducción de coeficientes con respecto a los restantes vectores V[*] en primer plano 53, basándose en la información de canal de fondo 43 para emitir los vectores en primer plano reducidos V[*] 55 a la unidad de cuantificación 52. Los vectores V[*] en primer plano reducidos 55 pueden tener dimensiones D: [(N+1 )2 -(Nbg+1 )2-BGtot] x nFG. La unidad de reducción de coeficientes 46 puede, a este respecto, representar una unidad configurada para reducir el número de coeficientes de los restantes vectores V[*] en primer plano 53. En otras palabras, la unidad de reducción de coeficientes 46 puede representar una unidad configurada para eliminar los coeficientes en los vectores V[*] en primer plano (que forman los restantes vectores V[*] en primer plano 53) que tienen poca o ninguna información direccional. En algunos ejemplos, los coeficientes de los vectores V[*] distintos o, en otras palabras, en primer plano que corresponden a funciones de base de primer orden y de orden cero (que pueden indicarse como Nbg) proporcionan poca información direccional y por lo tanto pueden ser eliminados de los vectores V en primer plano (mediante un proceso que se puede denominar "reducción de coeficientes"). En este ejemplo, se puede proporcionar mayor flexibilidad para identificar no solo los coeficientes que corresponden a Nbg, sino para identificar canales HOA adicionales (que pueden indicarse con la variable TotalOfAddAmbHOAChan) a partir del conjunto de [(Nbg+1 )2+1, (N+1 )2].
[0080] La unidad de cuantificación 52 puede representar una unidad configurada para realizar cualquier forma de cuantificación para comprimir los vectores V[*] en primer plano reducidos 55 y generar vectores en primer plano V[*] codificados 57, emitiendo los vectores en primer plano codificados V[*] 57 a la unidad de generación del flujo de bits 42. En funcionamiento, la unidad de cuantificación 52 puede representar una unidad configurada para comprimir un componente espacial del campo sonoro, es decir, uno o más de los vectores V[*] en primer plano reducidos 55 en este ejemplo. La unidad de cuantificación 52 puede realizar cualquiera de los siguientes 12 modos de cuantificación establecidos en la fase I o la fase II del estándar de codificación de audio MPEG-H3D mencionado anteriormente. La unidad de cuantificación 52 también puede realizar versiones predichas de cualquiera de los tipos anteriores de modos de cuantificación, donde se determina una diferencia entre un elemento de (o una ponderación cuando se realiza la cuantificación del vector) del vector V de una trama previa y el elemento (o ponderación cuando se realiza la cuantificación del vector) del vector V de una trama actual. A continuación, la unidad de cuantificación 52 puede cuantificar la diferencia entre los elementos o ponderaciones de la trama actual y de la trama anterior en lugar del valor del elemento del vector V de la propia trama actual. La unidad de cuantificación 52 puede enviar los vectores V[*] en primer plano codificados 57 a la unidad de generación de flujo de bits 42. La unidad de cuantificación 52 también puede proporcionar los elementos de sintaxis indicativos del modo de cuantificación (por ejemplo, el elemento de sintaxis NbitsQ) y cualquier otro elemento de sintaxis utilizado para descuantificar o reconstruir de otro modo el vector V.
[0081] La unidad codificadora de audio psicoacústica 40 incluida dentro del dispositivo de codificación de audio 20 puede representar múltiples instancias de un codificador de audio psicoacústico, cada una de las cuales se utiliza para codificar un objeto de audio diferente o canal HOA de cada uno de los coeficientes 47' de HOA ambientales compensados en energía y las nFG señales interpoladas 49' para generar los coeficientes de HOA ambientales codificados 59 y las nFG señales codificadas 61. La unidad codificadora de audio psicoacústica 40 puede emitir los coeficientes de HOA ambientales codificados 59 y las nFG señales codificadas 61 a la unidad de generación de flujo de bits 42.
[0082] La unidad de generación del flujo de bits 42 incluida dentro del dispositivo de codificación de audio 20 representa una unidad que formatea datos para adaptarse a un formato conocido (que puede referirse a un formato conocido por un dispositivo de descodificación), generando de este modo el flujo de bits basado en vectores 21. El flujo de bits 21 puede, en otras palabras, representar datos de audio codificados, que se han codificado de la manera descrita anteriormente. La unidad de generación de flujo de bits 42 puede representar un multiplexor en algunos ejemplos, que puede recibir los vectores codificados V[k] en primer plano 57, los coeficientes de HOA ambientales codificados 59, las nFG señales codificadas 61 y la información de canal de fondo 43. A continuación, la unidad de generación del flujo de bits 42 puede generar un flujo de bits 21 basado en los vectores codificados V[k] en primer plano 57, los coeficientes de HOA ambientales codificados 59, las nFG señales codificadas 61 y la información de canal de fondo 43. De esta forma, la unidad de generación de flujo de bits 42 puede especificar de ese modo los vectores 57 en el flujo de bits 21 para obtener el flujo de bits 21. El flujo de bits 21 puede incluir un flujo de bits primario o principal y uno o más flujos de bits de canal lateral.
[0083] Aunque no se muestra en el ejemplo de la FIG. 3, el dispositivo de codificación de audio 20 también puede incluir una unidad de salida de flujo de bits que conmuta la salida del flujo de bits desde el dispositivo de codificación de audio 20 (por ejemplo, entre el flujo de bits basado en la direccionalidad 21 y el flujo de bits basado en vectores 21), basándose en si una trama actual va a ser codificada usando la síntesis basada en la dirección o la síntesis basada en vectores. La unidad de salida de flujo de bits puede realizar la conmutación basándose en el elemento de sintaxis emitido por la unidad de análisis de contenido 26, indicando si se realizó una síntesis basada en la dirección (como resultado de detectar que los coeficientes de HOA 11 se generaron a partir de un objeto de audio sintético) o si se realizó una síntesis basada en vectores (como resultado de detectar que se registraron los coeficientes de HOA). La unidad de salida del flujo de bits puede especificar la sintaxis de cabecera correcta para indicar la conmutación o codificación actual utilizada para la trama actual, junto con la respectiva de los flujos de bits 21.
[0084] Además, como se ha indicado anteriormente, la unidad de análisis del campo sonoro 44 puede identificar BGtot coeficientes de HOA ambientales 47, que pueden cambiar de trama a trama (aunque a veces BGtot puede permanecer constante o igual entre dos o más tramas adyacentes (en el tiempo)). El cambio en BGtot puede dar como resultado cambios en los coeficientes expresados en los vectores V[ft] en primer plano reducidos 55. El cambio en BGtot puede dar como resultado los coeficientes de HOA de fondo (que también pueden denominarse "coeficientes de HOA ambientales") que cambian de trama a trama (aunque, de nuevo, a veces BGtot puede permanecer constante o igual entre dos o más tramas adyacentes (en el tiempo)). Los cambios a menudo dan como resultado un cambio de energía para los aspectos del campo de sonido representados por la adición o eliminación de los coeficientes de HOA ambientales adicionales y la correspondiente eliminación de coeficientes de, o adición de coeficientes a, los vectores V[ft] en primer plano reducidos 55.
[0085] Como resultado, la unidad de análisis del campo sonoro 44 puede determinar además cuándo los coeficientes de HOA ambientales cambian de trama a trama, y generar un indicador u otro elemento de sintaxis indicativo del cambio para el coeficiente de HOA ambientales, en términos de ser utilizado para representar los componentes ambientales del campo sonoro (donde el cambio también puede denominarse una "transición" del coeficiente de HOA ambientales o una "transición" del coeficiente de HOA ambientales). En particular, la unidad de reducción de coeficientes 46 puede generar el indicador (que puede indicarse como un indicador AmbCoeffT ransition o un indicador AmbCoeffIdxT ransition), proporcionando el indicador a la unidad de generación de flujo de bits 42 para que el indicador pueda incluirse en el flujo de bits 21 (posiblemente como parte de la información de canal lateral).
[0086] La unidad de reducción de coeficientes 46 puede, además de especificar el indicador de transición de coeficientes ambientales, también modificar cómo se generan los vectores V[ft] en primer plano reducidos 55. En un ejemplo, al determinar que uno de los coeficientes de HOA ambientales está en transición durante la trama actual, la unidad de reducción de coeficientes 46 puede especificar un coeficiente vectorial (que también puede denominarse "elemento vectorial" o "elemento") para cada uno de los vectores V de los vectores V[ft] en primer plano reducidos 55, que corresponde al coeficiente de HOA ambientales en transición. De nuevo, el coeficiente de HOA ambientales en transición puede agregar o eliminar del número total BGtot de coeficientes de fondo. Por lo tanto, el cambio resultante en el número total de coeficientes de fondo afecta si el coeficiente de HOA ambientales se incluye o no en el flujo de bits, y si el elemento correspondiente de los vectores V se incluye para los vectores V especificados en el flujo de bits en los modos de configuración segundo y tercero, descritos anteriormente. Se proporciona más información sobre cómo la unidad de reducción de coeficientes 46 puede especificar los vectores V[ft] en primer plano reducidos 55 para superar los cambios en la energía en la Solicitud de EE. UU. con n.° de serie 14/594,533, titulada "TRANSITIONING OF AMBIENT HIGHER_ORDER AMBISONIC COEFFICIENTS [TRANSICIÓN DE COEFICIENTES AMBISÓNICOS DE ORDEN SUPERIOR AMBIENTALES]", presentada el 12 de enero de 2015.
[0087] A este respecto, la unidad de generación de flujo de bits 42 puede generar un flujo de bits 21 en una amplia variedad de esquemas de codificación diferentes, lo cual puede facilitar la generación de flujo de bits flexible para adaptarse a un gran número de contextos de entrega de contenido diferentes. Un contexto que parece estar ganando terreno dentro de la industria del audio es la entrega (o, en otras palabras, "transmisión") de datos de audio a través de redes a un número creciente de dispositivos de reproducción diferentes. La entrega de contenido de audio a través de redes con ancho de banda restringido a dispositivos que tienen diferentes grados de capacidad de reproducción puede ser difícil, especialmente en el contexto de datos de audio de HOA que permiten un alto grado de fidelidad de audio 3D durante la reproducción a expensas de un gran consumo de ancho de banda (relativo a datos de audio basados en objetos o canales).
[0088] De acuerdo con las técnicas descritas en esta divulgación, la unidad de generación de flujo de bits 42 puede utilizar una o más capas escalables para permitir varias reconstrucciones de los coeficientes 11 HOA. Cada una de las capas puede ser jerárquica. Por ejemplo, una primera capa (que puede denominarse "capa base") puede proporcionar una primera reconstrucción de los coeficientes de HOA que permite la reproducción de las señales de los altavoces estéreo. Una segunda capa (que puede denominarse una primera "capa de mejora") puede, cuando se aplica a la primera reconstrucción de los coeficientes de HOA, escalar la primera reconstrucción del coeficiente de HOA para permitir la alimentación de altavoces de sonido envolvente horizontal (por ejemplo, 5.1 alimentaciones de altavoz) para renderizarse. Una tercera capa (que puede denominarse una segunda "capa de mejora") puede proporcionar, cuando se aplica a la segunda reconstrucción de los coeficientes de HOA, escalar la primera reconstrucción del coeficiente de HOA para permitir las alimentaciones de altavoces de sonido envolvente 3D (por ejemplo, 22.2 alimentaciones de altavoces) para renderizarse. En este sentido, las capas pueden considerarse a escalar jerárquicamente una capa anterior. En otras palabras, las capas son jerárquicas de manera que una primera capa, cuando se combina con una segunda capa, proporciona una representación de mayor resolución de la señal de audio ambisónico de orden superior.
[0089] Aunque se describió anteriormente para permitir el escalado de una capa inmediatamente anterior, cualquier capa por encima de otra capa puede escalar la capa inferior. En otras palabras, la tercera capa descrita anteriormente se puede utilizar para escalar la primera capa, incluso aunque la primera capa no haya sido "escalada" por la segunda capa. La tercera capa, cuando se aplica directamente a la primera capa, puede proporcionar información de altura y, por lo tanto, permitir que se representen alimentaciones de altavoces irregulares correspondientes a geometrías de altavoces dispuestas irregularmente.
[0090] La unidad de generación de flujo de bits 42 puede, para permitir que las capas se extraigan del flujo de bits 21, especificar una indicación de un número de capas especificadas en el flujo de bits. La unidad de generación de flujo de bits 42 puede generar el flujo de bits 21 que incluye el número indicado de capas. La unidad de generación de flujo de bits 42 se describe con más detalle con respecto a la FIG. 5. En las siguientes FIGS. 7A-9B se describen varios ejemplos diferentes de generación de datos de audio de HOA escalables, con un ejemplo de la información de banda lateral para cada uno de los ejemplos anteriores en las FIGS. 10-13B.
[0091] La FIG. 5 es un diagrama que ilustra, con más detalle, la unidad de generación de flujo de bits 42 de la FIG. 3 cuando se configura para realizar una primera de las posibles versiones de las técnicas de codificación de audio escalables descritas en esta divulgación. En el ejemplo de la FIG. 5, la unidad de generación de flujo de bits 42 incluye una unidad de generación de flujo de bits escalable 1000 y una unidad de generación de flujo de bits no escalable 1002. La unidad de generación de flujo de bits escalable 1000 representa una unidad configurada para generar un flujo de bits escalable 21 que comprende dos o más capas (aunque en algunos casos un flujo de bits escalable puede comprender una sola capa para ciertos contextos de audio) que tiene HOAframes() similares a las mostradas y descritas a continuación con respecto a los ejemplos de las FIGS. 11-13B. La unidad de generación de flujo de bits no escalable 1002 puede representar una unidad configurada para generar un flujo de bits 21 no escalable que no proporciona capas o, en otras palabras, escalabilidad.
[0092] Tanto el flujo de bits 21 no escalable como el flujo de bits escalable 21 pueden denominarse "flujo de bits 21" dado que ambos incluyen típicamente los mismos datos subyacentes en términos de los coeficientes de HOA ambientales codificados 59, las señales nFG codificadas 61 y los vectores V[ft] en primer plano codificados 57. Sin embargo, una diferencia entre el flujo de bits no escalable 21 y el flujo de bits escalable 21 es que el flujo de bits escalable 21 incluye capas, que pueden denominarse capas 21A, 21B, etc. Las capas 21A pueden incluir subconjuntos de los coeficientes de HOA ambientales codificados 59, las señales nFG codificadas 61 y los vectores V[ft] en primer plano codificados 57, como se describe con más detalle a continuación.
[0093] Aunque los flujos 21 de bits escalables y no escalables pueden ser efectivamente diferentes representaciones del mismo flujo de bits 21, el flujo de bits no escalable 21 se indica como flujo de bits no escalable 21' para diferenciar el flujo de bits escalable 21 del flujo de bits no escalable 21'. Además, en algunos casos, el flujo de bits escalable 21 puede incluir varias capas que se ajustan al flujo de bits no escalable 21. Por ejemplo, el flujo de bits escalable 21 puede incluir una capa base que se ajuste al flujo de bits no escalable 21. En estos casos, el flujo de bits no escalable 21' puede representar un subflujo de bits del flujo de bits escalable 21, donde este subflujo de bits no escalable 21' puede mejorarse con capas adicionales del flujo de bits escalable 21 (que se denominan capas de mejora).
[0094] La unidad de generación de flujo de bits 42 puede obtener información de escalabilidad 1003 indicativa de si se debe invocar la unidad de generación de flujo de bits escalable 1000 o la unidad de generación de flujo de bits no escalable 1002. En otras palabras, la información de escalabilidad 1003 puede indicar si la unidad de generación de flujo de bits 42 debe generar un flujo de bits escalable 21 o un flujo de bits no escalable 21'. Con fines ilustrativos, se supone que la información de escalabilidad 1003 indica que la unidad de generación de flujo de bits 42 debe invocar la unidad de generación de flujo de bits escalable 1000 para generar el flujo de bits escalable 21'.
[0095] Como se muestra además en el ejemplo de la FIG. 5, la unidad de generación de flujo de bits 42 puede recibir los coeficientes de HOA ambientales codificados 59A-59D, las señales nFG codificadas 61A y 61B y los vectores V[k] codificados en primer plano 57A y 57B. Los coeficientes de HOA ambientales codificados 59A pueden representar coeficientes de HOA ambientales codificados asociados con una función de base esférica que tiene un orden de cero y un suborden de cero. Los coeficientes de HOA ambientales codificados 59B pueden representar coeficientes de HOA ambientales codificados asociados con una función de base esférica que tiene un orden de uno y un suborden de cero. Los coeficientes de HOA ambientales codificados 59C pueden representar coeficientes de HOA ambientales codificados asociados con una función de base esférica que tiene un orden de uno y un suborden de uno negativo. Los coeficientes de HOA ambientales codificados 59D pueden representar coeficientes de HOA ambientales codificados asociados con una función de base esférica que tiene un orden de uno y un suborden de uno positivo. Los coeficientes de HOA ambientales codificados 59A-59D pueden representar un ejemplo de, y como resultado, pueden denominarse colectivamente como, los coeficientes de HOA ambientales codificados 59 analizados anteriormente.
[0096] Cada una de las señales nFG codificadas 61A y 61B puede representar un objeto de audio de EE. UU. representativo de, en este ejemplo, los dos aspectos en primer plano más predominantes del campo de sonido. Los vectores V[k] codificados en primer plano 57A y 57B pueden representar información direccional (que también puede especificar el ancho además de la dirección) para las señales nFG codificadas 61A y 61B respectivamente. Las señales nFG codificadas 61A y 61B pueden representar un ejemplo de, y como resultado, pueden denominarse colectivamente como las señales nFG codificadas 61 descritas anteriormente. Los vectores V[ft] codificados en primer plano 57A y 57B pueden representar un ejemplo de, y como resultado, pueden denominarse colectivamente como, los vectores V[ft] codificados en primer plano 57 descritos anteriormente.
[0097] Una vez invocada, la unidad de generación de flujo de bits escalable 1000 puede generar el flujo de bits escalable 21 para incluir las capas 21A y 21B de una manera sustancialmente similar a la descrita a continuación con respecto a las FIGS. 7A-9B. La unidad de generación de flujo de bits escalable 1000 puede especificar una indicación del número de capas en el flujo de bits escalable 21 así como el número de elementos en primer plano y elementos de fondo en cada una de las capas 21A y 21B. La unidad de generación de flujo de bits escalable 1000 puede, como un ejemplo, especificar un elemento de sintaxis NumberOfLayers que puede especificar L número de capas, donde la variable L puede indicar el número de capas. A continuación, la unidad de generación de flujo de bits escalable 1000 puede especificar, para cada capa (que puede indicarse como la variable i = 1 a L), el número Bi de los coeficientes de HOA ambientales codificados 59 y el número Fi de las señales 61 nFG codificadas enviadas para cada capa (que también o de forma alternativa puede indicar el número de vectores V[ft] en primer plano codificados correspondientes 57).
[0098] En el ejemplo de la FIG. 5, la unidad de generación de flujo de bits escalable 1000 puede especificar en el flujo de bits escalable 21 que se ha habilitado la codificación escalable y que se incluyen dos capas en el flujo de bits escalable 21, que la primera capa 21A incluye cuatro coeficientes de HOA ambientales codificados 59 y señales nFG codificadas en cero 61, y que la segunda capa 21A incluye coeficientes de HOA ambientales codificados 59 en cero y señales 61 nFG codificadas con w. La unidad de generación de flujo de bits escalable 1000 también puede generar la primera capa 21A (que también puede denominarse "capa base 21A") para incluir los coeficientes de HOA ambientales codificados 59. La unidad de generación de flujo de bits escalable 1000 puede generar además la segunda capa 21A (que puede denominarse una "capa de mejora 21B") para incluir las señales nFG codificadas 61 y los vectores V[ftj codificados en primer plano 57. La unidad de generación de flujo de bits escalable 1000 puede generar las capas 21A y 21B como flujo de bits escalable 21. En algunos ejemplos, la unidad de generación de flujo de bits escalable 1000 puede almacenar el flujo de bits escalable 21' en una memoria (interna o externa al codificador 20).
[0099] En algunos casos, es posible que la unidad de generación de flujo de bits escalable 1000 no especifique una o más o ninguna de las indicaciones del número de capas, el número de componentes en primer plano (por ejemplo, el número de señales nFG codificadas 61 y los vectores V[ft] codificados en primer plano 57) en una o más capas, y el número de componentes de fondo (por ejemplo, los coeficientes de HOA ambientales codificados 59) en una o más capas. Los componentes también pueden denominarse canales en esta divulgación. En su lugar, la unidad de generación de flujo de bits escalable 1000 puede comparar el número de capas de una trama actual con el número de capas de una trama anterior (por ejemplo, la trama anterior más reciente temporalmente). Cuando la comparación no da como resultado diferencias (lo que significa que el número de capas en la trama actual es igual al número de capas en la trama anterior, la unidad de generación de flujo de bits escalable 1000 puede comparar el número de componentes de fondo y primer plano en cada capa en una manera similar.
[0100] En otras palabras, la unidad de generación de flujo de bits escalable 1000 puede comparar el número de componentes de fondo en una o más capas para la trama actual con el número de componentes de fondo en la una o más capas para una trama anterior. La unidad de generación de flujo de bits escalable 1000 puede comparar además el número de componentes en primer plano en una o más capas para la trama actual con el número de componentes en primer plano en la una o más capas para la trama anterior.
[0101] Cuando ambas comparaciones basadas en componentes no dan como resultado diferencias (lo cual significa que el número de componentes en primer plano y de fondo en la trama anterior es igual al número de componentes en primer plano y de fondo en la trama actual), la unidad de generación de flujo de bits escalable 1000 puede especificar una indicación (por ejemplo, un elemento de sintaxis HOABaseLayerConfigurationFlag) en el flujo de bits escalable 21 de que el número de capas en la trama actual es igual al número de capas en la trama anterior en lugar de especificar una o más o cualquiera de las indicaciones del número de capas, el número de componentes en primer plano (por ejemplo, número de señales nFG codificadas 61 y vectores V[ft] codificados en primer plano 57) en una o más capas, y el número de componentes de fondo (por ejemplo, los coeficientes de HOA ambientales codificados 59) en una o más capas. A continuación, el dispositivo de descodificación de audio 24 puede determinar que las indicaciones de la trama anterior del número de capas, componentes de fondo y componentes del primer plano son iguales a la indicación de la trama actual del número del número de capas, componentes del fondo y componentes del primer plano, como se describe a continuación con más detalle.
[0102] Cuando cualquiera de las comparaciones indicadas anteriormente da como resultado diferencias, la unidad de generación de flujo de bits escalable 1000 puede especificar una indicación (por ejemplo, un elemento de sintaxis HOABaseLayerConfigurationFlag) en el flujo de bits escalable 21 de que el número de capas en la trama actual no es igual al número de capas en la trama anterior. La unidad de generación de flujo de bits escalable 1000 puede especificar las indicaciones del número de capas, el número de componentes en primer plano (por ejemplo, el número de señales nFG codificadas 61 y vectores V[ft] codificados en primer plano 57) en una o más capas, y el número de componentes de fondo (por ejemplo, los coeficientes de HOA ambientales codificados 59) en una o más capas, como se indicó anteriormente. A este respecto, la unidad de generación de flujo de bits escalable 1000 puede especificar, en el flujo de bits, una indicación de si un número de capas del flujo de bits ha cambiado en una trama actual en comparación con un número de capas del flujo de bits en una trama anterior, y especificar el número indicado de capas del flujo de bits en la trama actual.
[0103] En algunos ejemplos, en lugar de no especificar una indicación de la cantidad de componentes en primer plano y la indicación de la cantidad de componentes de fondo, la unidad de generación de flujo de bits escalable 1000 puede no especificar una indicación de una cantidad de componentes (por ejemplo, una sintaxis "NumChannels" elemento, que puede ser una matriz que tiene [/] entradas donde i es igual al número de capas) en el flujo de bits escalable 21. Es posible que la unidad de generación de flujo de bits escalable 1000 no especifique esta indicación del número de componentes (donde estos componentes también se pueden denominar "canales") en lugar de no especificar el número de componentes en primer plano y de fondo dado que el número de componentes en primer plano y segundo plano pueden obtenerse a partir del número más general de canales. La obtención de la indicación del número de componentes en primer plano y la indicación del número de canales en segundo plano pueden, en algunos ejemplos, proceder de acuerdo con la siguiente tabla:
Tabla - Sintaxis de ChannelSidelnfoData(i)
Figure imgf000021_0001
Figure imgf000022_0001
donde la descripción del ChannelType se da de la siguiente manera: ChannelType:
0: Señal basada en dirección
1: Señal basada en vectores (que puede representar una señal en primer plano)
2: Coeficiente de HOA ambiental adicional (que puede representar una señal ambiental o de fondo)
3: Vacío
Como resultado de señalar el ChannelType según la tabla de sintaxis SideChannelInfo anterior, el número de componentes en primer plano por capa se puede determinar como una función del número de elementos de sintaxis de ChannelType establecidos en 1 y el número de componentes de fondo por capa se puede determinar como una función del número de elementos de sintaxis ChannelType establecidos en 2.
[0104] La unidad de generación de flujo de bits escalable 1000 puede, en algunos ejemplos, especificar un HOADecoderConfig trama a trama, lo cual proporciona la información de configuración para extraer las capas del flujo de bits 21. El HOADecoderConfig se puede especificar como una alternativa o junto con la tabla anterior. La siguiente tabla puede definir la sintaxis del objeto HOADecoderConfig_FrameByFrame() en el flujo de bits 21.
Figure imgf000023_0001
Figure imgf000024_0002
________________________________________
[0105] En la tabla anterior, el elemento de sintaxis HOABaseLayerPresent puede representar un indicador que indica si la capa base del flujo de bits escalable 21 está presente. Cuando está presente, la unidad de generación de flujo de bits escalable 1000 especifica un elemento de sintaxis HOABaseLayerConfigurationFlag, que puede representar un elemento de sintaxis que indica si la información de configuración para la capa base está presente en el flujo de bits 21. Cuando la información de configuración para la capa base está presente en el flujo de bits 21, la unidad de generación de flujo de bits escalable 1000 especifica un número de capas (es decir, el elemento de sintaxis NumLayers en el ejemplo), un número de canales en primer plano (es decir, el elemento de sintaxis NumFGchannels en el ejemplo) para cada una de las capas, y un número de canales de fondo (es decir, el elemento de sintaxis NumBGchannels en el ejemplo) para cada una de las capas. Cuando HOABaseLayerPresent indica que la configuración de la capa base no está presente, la unidad de generación de flujo de bits escalable 1000 puede no proporcionar ningún elemento de sintaxis adicional y el dispositivo de descodificación de audio 24 puede determinar que los datos de configuración para la trama actual son los mismos que para una trama anterior.
[0106] En algunos ejemplos, la unidad de generación de flujo de bits escalable 1000 puede especificar el objeto HOADecoderConfig en el flujo de bits escalable 21 pero no especificar el número de canales en primer plano y de fondo por capa, donde el número de canales en primer plano y de fondo puede ser estático o determinado como se describe anteriormente con respecto a la tabla ChannelSideInfo. El HOADecoderConfig puede, en este ejemplo, definirse de acuerdo con la siguiente tabla.
Figure imgf000024_0001
_________________________________________
Figure imgf000025_0001
[0107] Como otra alternativa más, las tablas de sintaxis anteriores para HOADecoderConfig pueden reemplazarse por la siguiente tabla de sintaxis para HOADecoderConfig.
Figure imgf000025_0002
NumOfAdditionalCoders = escapeValue(5,8,16) 1 uimsb NumOfAdditionalCoders; f HOALayerChBits = ceil(log2(NumOfAdditionalCoders));
NumHOAChannelsLayer[0] = codedLayerCh + HOALayer uimsb MinNumOfCocffsForAmbHOA; ChBits f rcmainingCh = numHOATransportChannels -NumHOACannclsLaycr[0];
NumLayers = 1;
while (remainingCh>l) {
HOALayerChBits = ceil(log2(remainingCh));
NumHOAChannelsLayer[NumLayers] = HOALayer uimsb codedLayerCh 1; ChBits f remainingCh = remainingCh -NumHOAChannclsLaycr[NumLaycrs];
NumLaycrs++;
}
if (remainingCh) {
NumHOAChannelsLayer[NumLayers] = 1;
NumLayers++;
i i
}
MaxNoOfDirSigsForPrcdiction = 2 uimsbf MaxNoOfDirSigsForPrediction 1;
NoOfBitsPerScalefactor = NoOfBitsPerScalefactor + 1; 4 uimsbf CodedSpatialInterpolationTime; 3 uimsbf SpatiallnterpolationMethod; 1 bslbf CodedWecLength; 2 uimsbf MaxGainCorrAmpExp; 3 uimsbf MaxNumAddActiveAmbCoeffs = NumOfHoaCoeffs -MinNumOfCoeffsForAmbHOA;
AmbAsignmBits =
ceil( log2( MaxNumAddActiveAmbCoeffs ) );
ActivePrcdldsBits = ccil( log2( NumOfHoaCoeffs ) );
Figure imgf000027_0001
[0108] A este respecto, la unidad de generación de flujo de bits escalable 1000 puede configurarse para, como se describió anteriormente, especificar, en el flujo de bits, una indicación de un número de canales especificados en una o más capas del flujo de bits, y especificar el número indicado de canales en una o más capas del flujo de bits.
[0109] Además, la unidad de generación de flujo de bits escalable 1000 puede configurarse para especificar un elemento de sintaxis (por ejemplo, en forma de un elemento de sintaxis NumLayers o un elemento de sintaxis codedLayerCh como se describe a continuación con más detalle) indicativo del número de canales.
[0110] En algunos ejemplos, la unidad de generación de flujo de bits escalable 1000 puede configurarse para especificar una indicación de un número total de canales especificados en el flujo de bits. La unidad de generación de flujo de bits escalable 1000 puede configurarse para, en estos casos, especificar el número total indicado de canales en una o más capas del flujo de bits. En estos casos, la unidad de generación de flujo de bits escalable 1000 puede configurarse para especificar un elemento de sintaxis (por ejemplo, un elemento de sintaxis numHOATransportChannels como se describe a continuación con más detalle) indicativo del número total de canales.
[0111] En estos y otros ejemplos, la unidad de generación de flujo de bits escalable 1000 puede configurarse para especificar una indicación de un tipo de uno de los canales especificados en una o más capas en el flujo de bits. En estos casos, la unidad de generación de flujo de bits escalable 1000 puede configurarse para especificar el número indicado del tipo indicado de uno de los canales en una o más capas del flujo de bits. El canal en primer plano puede comprender un objeto de audio de EE.UU. y un vector V correspondiente.
[0112] En estos y otros ejemplos, la unidad de generación de flujo de bits escalable 1000 puede configurarse para especificar una indicación de un tipo de uno de los canales especificados en una o más capas en el flujo de bits, indicando la indicación del tipo de uno de los canales que el uno de los canales es un canal en primer plano. En estos casos, la unidad de generación de flujo de bits escalable 1000 puede configurarse para especificar el canal en primer plano en una o más capas del flujo de bits.
[0113] En estos y otros ejemplos, la unidad de generación de flujo de bits escalable 1000 puede configurarse para especificar una indicación de un tipo de uno de los canales especificados en una o más capas en el flujo de bits, indicando la indicación del tipo de uno de los canales que uno de los canales es un canal de fondo. En estos casos, la unidad de generación de flujo de bits escalable 1000 puede configurarse para especificar el canal de fondo en una o más capas del flujo de bits. El canal de fondo puede comprender un coeficiente de HOA ambientales.
[0114] En estos y otros ejemplos, la unidad de generación de flujo de bits escalable 1000 puede configurarse para especificar un elemento de sintaxis (por ejemplo, un elemento de sintaxis ChannelType) indicativo del tipo de uno de los canales.
[0115] En estos y otros ejemplos, la unidad de generación de flujo de bits escalable 1000 puede configurarse para especificar la indicación del número de canales basándose en un número de canales que quedan en el flujo de bits después de que se obtiene una de las capas (como se define, por ejemplo, por un elemento de sintaxis de Ch restante o un elemento de sintaxis numAvailableTransportChannels como se describe con más detalle a continuación.
[0116] Las FIGS. 7A-7D son diagramas de flujo que ilustran el funcionamiento de ejemplo del dispositivo 20 de codificación de audio al generar una representación codificada de dos capas de los coeficientes 11 HOA. Haciendo referencia primero al ejemplo de la FIG. 7A, la unidad de descorrelación 60 puede aplicar primero la descorrelación UHJ con respecto al fondo ambisónico de primer orden (donde "fondo ambisónico" puede referirse a coeficientes ambisónicos que describen un componente de fondo de un campo sonoro) representado como coeficientes de HOA de fondo con compensación de energía 47A'-47D' (300). El fondo ambisónico de primer orden 47A'-47D' puede incluir los coeficientes de HOA correspondientes a funciones de base esférica que tienen lo siguiente (orden, suborden): (0, 0), (1,0), (1, -1), (1, 1).
[0117] La unidad de descorrelación 60 puede emitir las señales 67 de audio de HOA ambientales descorrelacionadas como las señales de audio Q, T, L y R indicadas anteriormente. La señal de audio Q puede proporcionar información sobre la altura. La señal de audio T puede proporcionar información horizontal (incluida información para representar canales detrás del punto óptimo). La señal de audio L proporciona un canal estéreo izquierdo. La señal de audio R proporciona un canal estéreo derecho.
[0118] En algunos ejemplos, la matriz UHJ puede comprender al menos datos de audio ambisónico de orden superior asociados con un canal de audio izquierdo. En otros ejemplos, la matriz UHJ puede comprender al menos datos de audio ambisónico de orden superior asociados con un canal de audio derecho. En otros ejemplos más, la matriz UHJ puede comprender al menos datos de audio ambisónico de orden superior asociados con un canal de localización. En otros ejemplos, la matriz UHJ puede comprender al menos datos de audio ambisónico de orden superior asociados con un canal de altura. En otros ejemplos, la matriz UHJ puede comprender al menos datos de audio ambisónico de orden superior asociados con una banda lateral para la corrección automática de ganancia. En otros ejemplos, la matriz UHJ puede comprender al menos datos de audio ambisónico de orden superior asociados con un canal de audio izquierdo, un canal de audio derecho, un canal de localización y un canal de altura, y una banda lateral para la corrección automática de ganancia.
[0119] La unidad de control de ganancia 62 puede aplicar control automático de ganancia (AGC) a las señales de audio de HOA ambientales descorrelacionadas 67 (302). La unidad de control de ganancia 62 puede pasar las señales 67' de audio de HOA ambientales ajustadas a la unidad de generación de flujo de bits 42, que puede formar la capa base basándose en las señales 67' audio de HOA ambientales ajustadas y al menos parte del canal de banda lateral basado en la pedir datos de control de ganancia ambisónicos (HOAGCD) (304).
[0120] La unidad de control de ganancia 62 también puede aplicar el control automático de ganancia con respecto a las señales 49' de audio nFG interpoladas (que también pueden denominarse "señales predominantes basadas en vectores") (306). La unidad de control de ganancia 62 puede emitir las señales 49 "de audio nFG ajustadas junto con el HOAGCD para las señales 49" de audio nFG ajustadas a la unidad de generación de flujo de bits 42. La unidad de generación de flujo de bits 42 puede formar la segunda capa basada en las señales de audio nFG ajustadas 49" mientras forma parte de la información de banda lateral basada en e1HOAGCD para las señales de audio nFG ajustadas 49" y los correspondientes vectores V[ft] codificados en primer plano 57 (308).
[0121] La primera capa (es decir, una capa base) de las dos o más capas de datos de audio ambisónico de orden superior puede comprender coeficientes ambisónicos de orden superior correspondientes a una o más funciones de base esféricas que tienen un orden igual o menor que uno. En algunos ejemplos, la segunda capa (es decir, una capa de mejora) comprende datos de audio predominantes basados en vectores.
[0122] En algunos ejemplos, el audio predominante basado en vectores comprende al menos datos de audio predominantes y un codificado vector V. Como se describió anteriormente, el vector V codificado puede descomponerse de los datos de audio ambisónico de orden superior mediante la aplicación de una transformada lineal invertible por la unidad LIT30 del dispositivo de codificación de audio 20. En otros ejemplos, los datos de audio predominantes basados en vectores comprenden al menos un canal ambisónico de orden superior adicional. En otros ejemplos más, los datos de audio predominantes basados en vectores comprenden al menos una banda lateral de corrección de ganancia automática. En otros ejemplos, los datos de audio predominantes basados en vectores comprenden al menos datos de audio predominantes, un vector V codificado, un canal ambisónico de orden superior adicional y una banda lateral de corrección de ganancia automática.
[0123] Al formar la primera capa y la segunda capa, la unidad de generación de flujo de bits 42 puede realizar procesos de comprobación de errores que proporcionan detección de errores, corrección de errores o detección y corrección de errores. En algunos ejemplos, la unidad de generación de flujo de bits 42 puede realizar un proceso de comprobación de errores en la primera capa (es decir, la capa base). En otro ejemplo, el dispositivo de codificación de audio puede realizar un proceso de comprobación de errores en la primera capa (es decir, la capa base) y abstenerse de realizar un proceso de comprobación de errores en la segunda capa (es decir, la capa de mejora). En otro ejemplo más, la unidad de generación de flujo de bits 42 puede realizar un proceso de comprobación de errores en la primera capa (es decir, la capa base) y, en respuesta a determinar que la primera capa está libre de errores, el dispositivo de codificación de audio puede realizar un proceso de comprobación de errores en la segunda capa (es decir, la capa de mejora). En cualquiera de los ejemplos anteriores en los que la unidad de generación de flujo de bits 42 realiza el proceso de comprobación de errores en la primera capa (es decir, la capa base), la primera capa puede considerarse una capa robusta que es resistente a errores.
[0124] Haciendo referencia a continuación a la FIG. 7B, la unidad de control de ganancia 62 y la unidad de generación de flujo de bits 42 realizan operaciones similares a las de la unidad de control de ganancia 62 y la unidad de generación de flujo de bits 42 descritas anteriormente con respecto a la FIG. 7A. Sin embargo, la unidad de descorrelación 60 puede aplicar una descorrelación de matriz de modo, en lugar de la descorrelación UHJ, al fondo ambisónico de primer orden 47A'-47D' (301).
[0125] Haciendo referencia a continuación a la FIG. 7C, la unidad de control de ganancia 62 y la unidad de generación de flujo de bits 42 pueden realizar operaciones similares a las de la unidad de control de ganancia 62 y la unidad de flujo de bits 42 descritas anteriormente con respecto a los ejemplos de las FIGS. 7A y 7B. Sin embargo, en el ejemplo de la FIG. 7C, la unidad de descorrelación 60 no puede aplicar ninguna transformada al fondo 47A'-47D' ambisónico de primer orden. En cada uno de los siguientes ejemplos 8A-10B, se supone, pero no se ilustra, que la unidad de descorrelación 60 puede, de forma alternativa, no aplicar descorrelación con respecto a uno o más de los fondos ambisónicos de primer orden 47A'-47D'.
[0126] Haciendo referencia a continuación a la FIG. 7D, la unidad de descorrelación 60 y la unidad de generación de flujo de bits 42 pueden realizar operaciones similares a las de la unidad de control de ganancia 52 y la unidad de generación de flujo de bits 42 descritas anteriormente con respecto a los ejemplos de las FIGS. 7A y 7B. Sin embargo, en el ejemplo de la FIG. 7D, la unidad de control de ganancia 62 puede no aplicar ningún control de ganancia a las señales 67 de audio de HOA ambientales descorrelacionadas. En cada uno de los siguientes ejemplos 8A-10B, se supone, pero no se ilustra, que la unidad 52 de control de ganancia puede, de forma alternativa, no aplicar la descorrelación con respecto a una o más de las señales 67 de audio de HOA ambientales de descorrelación.
[0127] En cada uno de los ejemplos de las FIGS. 7A-7D, la unidad de generación de flujo de bits 42 puede especificar uno o más elementos de sintaxis en el flujo de bits 21. La FIG. 10 es un diagrama que ilustra un ejemplo de un objeto de configuración HOA especificado en el flujo de bits 21. Para cada uno de los ejemplos de las FIGS.
7A-7D, la unidad de generación de flujo de bits 42 puede establecer el elemento de sintaxis 400 de VVecLength codificado en 1 o 2, lo cual indica que los canales HOA de fondo de 1.er orden contienen el componente de 1.er orden de todos los sonidos predominantes. La unidad de generación de flujo de bits 42 también puede establecer el elemento de sintaxis 402 de procedimiento de corrección de ambiente de modo que el elemento 402 señale el uso de la descorrelación UHJ (por ejemplo, como se describe anteriormente con respecto a la FIG. 7A), señale el uso de la descorrelación en modo matriz (por ejemplo, como se describió anteriormente con respecto a la FIG.
7B), o señale que no se usó descorrelación (por ejemplo, como se describió anteriormente con respecto a la FIG.
7C).
[0128] La FIG. 11 es un diagrama que ilustra la información de banda lateral 410 generada por la unidad de generación de flujo de bits 42 para la primera y segunda capas. La información de banda lateral 410 incluye información de la capa base de banda lateral 412 e información de la segunda capa de banda lateral 414A y 414B. Cuando solo se proporciona la capa base al dispositivo de descodificación de audio 24, el dispositivo de codificación de audio 20 puede proporcionar solo la información de la capa base de banda lateral 412. La información 412 de la capa base de banda lateral incluye el HOAGCD para la capa base. La información 414A de la segunda capa de banda lateral incluye los elementos de sintaxis de los canales de transporte 1-4 y e1HOAGCD correspondiente. La información de la segunda capa de banda lateral 414B incluye los dos vectores V[k] reducidos codificados correspondientes 57 correspondientes a los canales de transporte 1 y 2 (dado que los canales de transporte 3 y 4 están vacíos como se indica por el elemento de sintaxis ChannelType que es igual a 112 o 310.).
[0129] Las FIGS. 8A y 8B son diagramas de flujo que ilustran el funcionamiento de ejemplo del dispositivo de codificación de audio 20 al generar una representación codificada de tres capas de los coeficientes de HOA 11. Haciendo referencia primero al ejemplo de la FIG. 8A, la unidad de descorrelación 60 y la unidad de control de ganancia 62 pueden realizar operaciones similares a las descritas anteriormente con respecto a la FIG. 7A. Sin embargo, la unidad de generación de flujo de bits 42 puede formar la capa base basándose en la señal de audio L y la señal de audio R de las señales de audio de HOA ambientales ajustadas 67 en lugar de todas las señales de audio de HOA ambientales ajustadas 67 (310). La capa base puede, a este respecto, proporcionar canales estéreo cuando se procesa en el dispositivo de descodificación de audio 24. La unidad de generación de flujo de bits 42 también puede generar información de banda lateral para la capa base que incluye e1HOAGCD.
[0130] El funcionamiento de la unidad de generación de flujo de bits 42 también puede diferir del descrito anteriormente con respecto a la FIG. 7A porque la unidad de generación de flujo de bits 42 puede formar una segunda capa basada en las señales de audio Q y T de las señales 67 de audio (312) de HOA ambientales ajustadas. La segunda capa en el ejemplo de la FIG. 8A puede proporcionar canales horizontales y canales de audio 3D cuando se procesan en el dispositivo de descodificación de audio 24. La unidad de generación de flujo de bits 42 también puede generar información de banda lateral para la segunda capa que incluye e1HOAGCD. La unidad de generación de flujo de bits 42 también puede formar una tercera capa de una manera sustancialmente similar a la descrita anteriormente con respecto a la formación de la segunda capa en el ejemplo de la FIG. 7A.
[0131] La unidad de generación de flujo de bits 42 puede especificar el objeto de configuración HOA para el flujo de bits 21 similar al descrito anteriormente con respecto a la FIG. 10. Además, la unidad de generación de flujo de bits 42 del codificador de audio 20 establece el elemento de sintaxis MinAmbHoaOrder 404 en 2 para indicar que se transmite el fondo HOA de 1.er orden.
[0132] La unidad de generación de flujo de bits 42 también puede generar información de banda lateral similar a la información 412 de banda lateral mostrada en el ejemplo de la FIG. 12A. La FIG. 12A es un diagrama que ilustra información de banda lateral 412 generada de acuerdo con los aspectos de codificación escalables de las técnicas descritas en esta divulgación. La información 412 de banda lateral incluye información 416 de capa base de banda lateral, información 418 de la segunda capa de banda lateral e información 420A y 420B de la tercera capa de banda lateral. La información 416 de la capa base de banda lateral puede proporcionar e1HOAGCD para la capa base. La información 418 de la segunda capa de banda lateral puede proporcionar e1HOAGCD para la segunda capa. La información de la tercera capa de banda lateral 420A y 420B puede ser similar a la información de banda lateral 414A y 414B descrita anteriormente con respecto a la FIG. 11.
[0133] Similar a la FIG. 7A, el dispositivo 42 de generación de flujo de bits puede realizar procesos de comprobación de errores. En algunos ejemplos, el dispositivo 42 de generación de flujo de bits puede realizar un proceso de comprobación de errores en la primera capa (es decir, la capa base). En otro ejemplo, el dispositivo de generación de flujo de bits 42 puede realizar un proceso de comprobación de errores en la primera capa (es decir, la capa base) y abstenerse de realizar un proceso de comprobación de errores en la segunda capa (es decir, la capa de mejora). En otro ejemplo más, el dispositivo de generación de flujo de bits 42 puede realizar un proceso de comprobación de errores en la primera capa (es decir, la capa base) y, en respuesta a determinar que la primera capa está libre de errores, el dispositivo de codificación de audio puede realizar un proceso de comprobación de errores en la segunda capa (es decir, la capa de mejora). En cualquiera de los ejemplos anteriores en los que el dispositivo de codificación de audio realiza el proceso de comprobación de errores en la primera capa (es decir, la capa base), la primera capa puede considerarse una capa robusta que es resistente a errores.
[0134] Aunque se describe que proporciona tres capas, en algunos ejemplos, el dispositivo de generación de flujo de bits 42 puede especificar una indicación en el flujo de bits de que solo hay dos capas y especificar una primera de las capas del flujo de bits indicativa de los componentes de fondo de la señal de audio ambisónico de orden superior que proporciona reproducción de canal estéreo, y una segunda de las capas del flujo de bits indicativo de los componentes de fondo de la señal de audio ambisónico de orden superior que proporciona reproducción horizontal multicanal mediante tres o más altavoces dispuestos en un solo plano horizontal. En otras palabras, aunque se muestra que proporciona tres capas, el dispositivo de generación de flujo de bits 42 puede generar solo dos de las tres capas en algunos casos. Debe entenderse que se puede generar cualquier subconjunto de capas, aunque no se describe en detalle en el presente documento.
[0135] Haciendo referencia a continuación a la FIG. 8B, la unidad de control de ganancia 62 y la unidad de generación de flujo de bits 42 realizan operaciones similares a las de la unidad de control de ganancia 62 y la unidad de generación de flujo de bits 42 descritas anteriormente con respecto a la FIG. 8A. Sin embargo, la unidad de descorrelación 60 puede aplicar una descorrelación de matriz de modo, en lugar de la descorrelación UHJ, al fondo ambisónico de primer orden 47A' (316). En algunos ejemplos, el fondo 47A' ambisónico de primer orden puede incluir los coeficientes 47A' ambisónicos de orden cero. La unidad de control de ganancia 62 puede aplicar el control automático de ganancia a los coeficientes ambisónicos de primer orden correspondientes a los coeficientes armónicos esféricos que tienen un primer orden, y la señal de audio ambienta1HOA descorrelacionada 67.
[0136] La unidad de generación de flujo de bits 42 puede formar una capa base basada en la señal de audio de HOA ambientales ajustada 67 y al menos parte de la banda lateral basada en el correspondiente HOAGCD (310). La señal 67 de audio de HOA ambiental puede proporcionar un canal mono cuando se reproduce en el dispositivo de descodificación de audio 24. La unidad de generación de flujo de bits 42 puede formar una segunda capa basada en los coeficientes de HOA ambientales ajustados 47B"-47D" y al menos parte de la banda lateral basada en el HOAGCD correspondiente (318). Los coeficientes de HOA ambientales ajustados 47B'-47D' pueden proporcionar canales X, Y Z (o estéreo, horizontal y de altura) cuando se reproducen en el dispositivo de descodificación de audio 24. La unidad de generación de flujo de bits 42 puede formar la tercera capa y al menos parte de la información de banda lateral de una manera similar a la descrita anteriormente con respecto a la FIG.
8A. La unidad de generación de flujo de bits 42 puede generar información 412 de banda lateral como se describe con más detalle con respecto a la FIG. 12B (326).
[0137] La FIG. 12B es un diagrama que ilustra información de banda lateral 414 generada de acuerdo con los aspectos de codificación escalables de las técnicas descritas en esta divulgación. La información de banda lateral 414 incluye información de la capa base de banda lateral 416, información de la segunda capa de la banda lateral 422 e información de la tercera capa de la banda lateral 424A-424C. La información 416 de la capa base de banda lateral puede proporcionar el HOAGCD para la capa base. La información 422 de la segunda capa de banda lateral puede proporcionar el HOAGCD para la segunda capa. La información de la tercera capa de banda lateral 424A-424C puede ser similar a la información de banda lateral 414A (excepto que la información de banda lateral 414A se especifica como información de la tercera capa de banda lateral 424A y 424B) y 414B descritas anteriormente con respecto a la FIG. 11.
[0138] Las FIGS. 9A y 9B son diagramas de flujo que ilustran el funcionamiento de ejemplo del dispositivo 20 de codificación de audio al generar una representación codificada de cuatro capas de los coeficientes 11 HOA. Haciendo referencia primero al ejemplo de la FIG. 9A, la unidad de descorrelación 60 y la unidad de control de ganancia 62 pueden realizar operaciones similares a las descritas anteriormente con respecto a la FIG. 8A. La unidad de generación de flujo de bits 42 puede formar la capa base de una manera similar a la descrita anteriormente con respecto al ejemplo de la FIG. 8A, es decir, basándose en la señal de audio L y la señal de audio R de las señales 67 de audio de HOA ambientales ajustadas en lugar de todas las señales 67 (310) de audio de HOA ambientales ajustadas. La capa base puede, a este respecto, proporcionar canales estéreo cuando se procesa en el dispositivo de descodificación de audio 24 (o, en otras palabras, proporcionar reproducción de canales estéreo). La unidad de generación de flujo de bits 42 también puede generar información de banda lateral para la capa base que incluye el HOAGCD.
[0139] El funcionamiento de la unidad de generación de flujo de bits 42 puede diferir del descrito anteriormente con respecto a la FIG. 8A porque la unidad de generación de flujo de bits 42 puede formar una segunda capa basada en la señal de audio T (y no la señal de audio Q) de las señales de audio de HOA ambientales ajustadas 67 (322). La segunda capa en el ejemplo de la FIG. 9A puede proporcionar canales horizontales cuando se procesa en el dispositivo de descodificación de audio 24 (o, en otras palabras, reproducción multicanal mediante tres o más altavoces en un solo plano horizontal). La unidad de generación de flujo de bits 42 también puede generar información de banda lateral para la segunda capa que incluye el HOAGCD. La unidad de generación de flujo de bits 42 también puede formar una tercera capa basada en la señal de audio Q de las señales de audio de HOA ambientales ajustadas 67 (324). La tercera capa puede proporcionar una reproducción tridimensional mediante tres o más altavoces dispuestos en uno o más planos horizontales. La unidad de generación de flujo de bits 42 puede formar la cuarta capa de una manera sustancialmente similar a la descrita anteriormente con respecto a la formación de la tercera capa en el ejemplo de la FIG. 8A (326).
[0140] La unidad de generación de flujo de bits 42 puede especificar el objeto de configuración HOA para el flujo de bits 21 similar al descrito anteriormente con respecto a la FIG. 10. Además, la unidad de generación de flujo de bits 42 del codificador de audio 20 establece el elemento de sintaxis MinAmbHoaOrder 404 en 2 para indicar que se transmite el fondo HOA de 1.er orden.
[0141] La unidad de generación de flujo de bits 42 también puede generar información de banda lateral similar a la información 412 de banda lateral mostrada en el ejemplo de la FIG. 13A. La FIG. 13A es un diagrama que ilustra información de banda lateral 430 generada de acuerdo con los aspectos de codificación escalables de las técnicas descritas en esta divulgación. La información 430 de banda lateral incluye información 416 de capa base de banda lateral, información 418 de segunda capa de banda lateral, información 432 de tercera capa de banda lateral e información de cuarta capa de banda lateral 434A y 434B. La información 416 de la capa base de banda lateral puede proporcionar el HOAGCD para la capa base. La información 418 de la segunda capa de banda lateral puede proporcionar el HOAGCD para la segunda capa. La información 430 de la tercera capa de banda lateral puede proporcionar el HOAGCD para la tercera capa. La información de la cuarta capa de banda lateral 434A y 434B puede ser similar a la información de banda lateral 420A y 420B descrita anteriormente con respecto a la FIG. 12A.
[0142] Similar a la FIG. 7A, el dispositivo 42 de generación de flujo de bits puede realizar procesos de comprobación de errores. En algunos ejemplos, el dispositivo 42 de generación de flujo de bits puede realizar un proceso de comprobación de errores en la primera capa (es decir, la capa base). En otro ejemplo, el dispositivo de generación de flujo de bits 42 puede realizar un proceso de comprobación de errores en la primera capa (es decir, la capa base) y abstenerse de realizar un proceso de comprobación de errores en la capa restante (es decir, las capas de mejora). En otro ejemplo más, el dispositivo de generación de flujo de bits 42 puede realizar un proceso de comprobación de errores en la primera capa (es decir, la capa base) y, en respuesta a determinar que la primera capa está libre de errores, el dispositivo de codificación de audio puede realizar un proceso de comprobación de errores en la segunda capa (es decir, la capa de mejora). En cualquiera de los ejemplos anteriores en los que el dispositivo de codificación de audio realiza el proceso de comprobación de errores en la primera capa (es decir, la capa base), la primera capa puede considerarse una capa robusta que es resistente a errores.
[0143] Haciendo referencia a continuación a la FIG. 9B, la unidad de control de ganancia 62 y la unidad de generación de flujo de bits 42 realizan operaciones similares a las de la unidad de control de ganancia 62 y la unidad de generación de flujo de bits 42 descritas anteriormente con respecto a la FIG. 9A. Sin embargo, la unidad de descorrelación 60 puede aplicar una descorrelación de matriz de modo, en lugar de la descorrelación UHJ, al fondo ambisónico de primer orden 47A' (316). En algunos ejemplos, el fondo 47A' ambisónico de primer orden puede incluir los coeficientes 47A' ambisónicos de orden cero. La unidad de control de ganancia 62 puede aplicar el control automático de ganancia a los coeficientes ambisónicos de primer orden correspondientes a los coeficientes armónicos esféricos que tienen un primer orden, y la señal de audio ambienta1HOA descorrelacionada 67 (302).
[0144] La unidad de generación de flujo de bits 42 puede formar una capa base basada en la señal de audio de HOA ambientales ajustada 67 y al menos parte de la banda lateral basada en el correspondiente HOAGCD (310). La señal 67 de audio de HOA ambiental puede proporcionar un canal mono cuando se reproduce en el dispositivo de descodificación de audio 24. La unidad de generación de flujo de bits 42 puede formar una segunda capa basada en los coeficientes de HOA ambientales ajustados 47B" y 47C" y al menos parte de la banda lateral basada en el HOAGCD correspondiente (322). Los coeficientes de HOA ambientales ajustados 47B "y 47C" pueden proporcionar reproducción de canales múltiples horizontales X, Y mediante tres o más altavoces dispuestos en un solo plano horizontal. La unidad de generación de flujo de bits 42 puede formar una tercera capa basada en los coeficientes de HOA ambientales ajustados 47D” y al menos parte de la banda lateral basada en e1HOAGCD correspondiente (324). Los coeficientes de HOA ambientales ajustados 47D" pueden proporcionar una reproducción tridimensional mediante tres o más altavoces dispuestos en uno o más planos horizontales. La unidad de generación de flujo de bits 42 puede formar la cuarta capa y al menos parte de la información de banda lateral de una manera similar a la descrita anteriormente con respecto a la FIG. 8A (326). La unidad de generación de flujo de bits 42 puede generar información 412 de banda lateral como se describe con más detalle con respecto a la FIG. 12B.
[0145] La FIG. 13B es un diagrama que ilustra información de banda lateral 440 generada de acuerdo con los aspectos de codificación escalables de las técnicas descritas en esta divulgación. La información 440 de banda lateral incluye información 416 de capa base de banda lateral, información 442 de segunda capa de banda lateral, información 444 de tercera capa de banda lateral e información 446A-446C de cuarta capa de banda lateral. La información 416 de la capa base de banda lateral puede proporcionar el HOAGCD para la capa base. La información 442 de la segunda capa de banda lateral puede proporcionar el HOAGCD para la segunda capa. La información de la tercera capa de banda lateral puede proporcionar el HOAGCD para la tercera capa. La información de la cuarta capa de banda lateral 446A-446C puede ser similar a la información de banda lateral 424A-424C descrita anteriormente con respecto a la FIG. 12B.
[0146] La FIG. 4 es un diagrama de bloques que ilustra el dispositivo de descodificación de audio 24 de la FIG.
2 con mayor detalle. Como se muestra en el ejemplo de la FIG. 4, el dispositivo de descodificación de audio 24 puede incluir una unidad de extracción 72, una unidad de reconstrucción basada en la direccionalidad 90 y una unidad de reconstrucción basada en vectores 92. Aunque se describe a continuación, en la publicación de solicitud de patente internacional número WO 2014/194099, titulada "INTERPOLATION FOR DECOMPOSED REPRESENTATIONS OF A SOUND FIELD [INTERPOLACIÓN PARA RENDERIZACIONES DESCOMPUESTAS DE UN CAMPO DE SONIDO]" presentada el 29 de mayo de 2014, está disponible más información sobre el dispositivo de descodificación de audio 24 y los diversos aspectos de descompresión, o descodificación de otro modo, de los coeficientes de HOA. También se puede encontrar información adicional en las fases I y II del estándar de codificación de audio MPEG-H3D y el documento correspondiente mencionado anteriormente que resume la fase I del estándar de codificación de audio MPEG-H3D.
[0147] La unidad de extracción 72 puede representar una unidad configurada para recibir el flujo de bits 21 y extraer las diversas versiones codificadas (por ejemplo, una versión codificada basada en la dirección o una versión codificada basada en vector) de los coeficientes de HOA 11. La unidad de extracción 72 puede determinar a partir del elemento de sintaxis indicado anteriormente indicativo de si los coeficientes de HOA 11 se codificaron a través de varias versiones basadas en la dirección o en vectores. Cuando se realizó una codificación basada en la dirección, la unidad de extracción 72 puede extraer la versión basada en la dirección de los coeficientes de HOA 11 y los elementos de sintaxis asociados a la versión codificada (que se indica como información basada en dirección 91 en el ejemplo de la FIG. 4), pasando la información basada en dirección 91 a la unidad de reconstrucción basada en dirección 90. La unidad de reconstrucción basada en la dirección 90 puede representar una unidad configurada para reconstruir los coeficientes de HOA en forma de coeficientes de HOA 11', basándose en la información basada en la dirección 91.
[0148] Cuando el elemento de sintaxis indica que los coeficientes de HOA 11 se codificaron usando una síntesis basada en vectores, la unidad de extracción 72 puede extraer los vectores codificados V[k] en primer plano 57 (que pueden incluir ponderaciones codificadas 57 y/o índices 63 o vectores V con cuantificación escalar), los coeficientes de HOA ambientales codificados 59 y los correspondientes objetos de audio 61 (que también pueden denominarse las señales de nFG codificadas 61). Cada uno de los objetos de audio 61 corresponde a uno de los vectores 57. La unidad de extracción 72 puede pasar los vectores codificados V[k] en primer plano 57 a la unidad de reconstrucción de vectores V74 y los coeficientes de HOA ambientales codificados 59, junto con las nFG señales codificadas 61, a la unidad de descodificación psicoacústica 80. La unidad de extracción 72 se describe con más detalle con respecto al ejemplo de la FIG. 6.
[0149] La FIG. 6 es un diagrama que ilustra, con más detalle, la unidad de extracción 72 de la FIG. 4 cuando se configura para realizar la primera de las posibles versiones de las técnicas de descodificación de audio escalables descritas en esta divulgación. En el ejemplo de la FIG.6, la unidad de extracción 72 incluye una unidad de selección de modo 1010, una unidad de extracción escalable 1012 y una unidad de extracción no escalable 1014. La unidad de selección de modo 1010 representa una unidad configurada para seleccionar si se va a realizar una extracción escalable o no escalable con respecto al flujo de bits 21. La unidad de selección de modo 1010 puede incluir una memoria en la que se almacena el flujo de bits 21. La unidad de selección de modo 1010 puede determinar si se va a realizar una extracción escalable o no escalable basándose en la indicación de si se ha habilitado la codificación escalable. Un elemento de sintaxis HOABaseLayerPresent puede representar la indicación de si se realizó una codificación escalable al codificar el flujo de bits 21.
[0150] Cuando el elemento de sintaxis HOABaseLayerPresent indica que se ha habilitado la codificación escalable, la unidad de selección de modo 1010 puede identificar el flujo de bits 21 como el flujo de bits escalable 21 y enviar el flujo de bits escalable 21 a la unidad de extracción escalable 1012. Cuando el elemento de sintaxis HOABaseLayerPresent indica que no se ha habilitado la codificación escalable, la unidad de selección de modo 1010 puede identificar el flujo de bits 21 como el flujo de bits no escalable 21' y enviar el flujo de bits no escalable 21' a la unidad de extracción no escalable 1014. La unidad de extracción no escalable 1014 representa una unidad configurada para funcionar de acuerdo con la fase I del estándar de codificación de audio MPEG-H3D.
[0151] La unidad de extracción escalable 1012 puede representar una unidad configurada para extraer uno o más de los coeficientes de HOA ambientales 59, las señales 61 de nFG codificadas y los vectores V[k] codificados en primer plano 57 de una o más capas del flujo de bits escalable 21 basándose en varios elementos de sintaxis descritos a continuación con más detalle (y mostrados arriba en varias tablas HOADecoderConfig). En el ejemplo de la FIG. 6, la unidad de extracción escalable 1012 puede extraer, como un ejemplo, los cuatro coeficientes 59A-59D de HOA ambientales codificados de la capa base 21A del flujo de bits escalable 21. La unidad de extracción escalable 1012 también puede extraer, de la capa de mejora 21B del flujo de bits escalable 21, las dos señales nFG codificadas 61A y 61B (como un ejemplo) así como los dos vectores V[k] codificados en primer plano 57A y 57B. La unidad de extracción escalable 1012 puede enviar los coeficientes de HOA ambientales 59, las señales 61 de nFG codificadas y los vectores V[k] codificados en primer plano 57 a la unidad de descodificación basada en vectores 92 mostrada en el ejemplo de la FIG. 4.
[0152] Más específicamente, la unidad de extracción 72 del dispositivo de descodificación de audio 24 puede extraer canales de las L capas como se establece en la tabla de sintaxis HOADecoderCofnig_FrameByFrame anterior.
[0153] De acuerdo con la tabla de sintaxis HOADecoderCofnig_FrameByFrame anterior, la unidad de selección de modo 1010 puede obtener primero el elemento de sintaxis HOABaseLayerPresent, que puede indicar si se realizó una codificación de audio escalable. Cuando no está habilitada según lo especificado por, por ejemplo, un valor cero para el elemento de sintaxis HOABaseLayerPresent, la unidad de selección de modo 1010 puede determinar el elemento de sintaxis MinAmbHoaOrder y proporciona el flujo de bits no escalable a la unidad de extracción no escalable 1014, que realiza procesos de extracción no escalables similares a los descritos anteriormente. Cuando se habilita según lo especificado por, por ejemplo, un valor único para el elemento de sintaxis HOABaseLayerPresent, la unidad de selección de modo 1010 establece el valor del elemento de sintaxis MinAmbHOAOrder en uno negativo (-1) y proporciona el flujo de bits escalable 21' a la unidad de extracción escalable 1012.
[0154] La unidad de extracción escalable 1012 puede obtener una indicación de si varias capas del flujo de bits han cambiado en una trama actual en comparación con un número de capas del flujo de bits en una trama anterior. La indicación de si el número de desolladores del flujo de bits ha cambiado en la trama actual en comparación con el número de capas del flujo de bits en la trama anterior puede denotarse como un elemento de sintaxis "HOABaseLayerConfigurationFlag" en la tabla anterior.
[0155] La unidad de extracción escalable 1012 puede obtener una indicación de varias capas del flujo de bits en la trama actual basándose en la indicación. Cuando la indicación indica que el número de capas del flujo de bits no ha cambiado en la trama actual en comparación con el número de capas del flujo de bits en la trama anterior, la unidad de extracción escalable 1012 puede determinar el número de capas del flujo de bits en la trama actual como igual al número de capas del flujo de bits en la trama anterior de acuerdo con la parte de la tabla de sintaxis anterior que establece:
} else }
NumLayers = NumLayersPrevFrame;
donde "NumLayers" puede representar un elemento de sintaxis que representa el número de capas del flujo de bits en la trama actual y "NumLayersPrevFrame" puede representar un elemento de sintaxis que representa el número de capas del flujo de bits en la trama anterior.
[0156] De acuerdo con la tabla de sintaxis HOADecoderConfig_FrameByFrame anterior, la unidad de extracción escalable 1012 puede, cuando la indicación indica que el número de capas del flujo de bits no ha cambiado en la trama actual en comparación con el número de capas del flujo de bits en la trama anterior, determinar una indicación en primer plano actual de un número actual de componentes en primer plano en una o más de las capas para que la trama actual sea igual a una indicación en primer plano anterior para un número anterior de componentes en primer plano en una o más de las capas de la trama anterior. En otras palabras, la unidad de extracción escalable 1012 puede, cuando HOABaseLayerConfigurationFlag es igual a cero, determinar que el elemento de sintaxis NumFGchannels[i] representativo de la indicación en primer plano actual del número actual de componente en primer plano en una o más de las capas de la trama actual debe ser igual al elemento de sintaxis NumFGchannels_PrevFrame[i] que es representativo de la indicación anterior del primer plano del número previo de componentes del primer plano en la una o más capas de la trama anterior. La unidad de extracción escalable 1012 puede obtener además los componentes en primer plano de una o más capas en la trama actual basándose en la indicación en primer plano actual.
[0157] La unidad de extracción escalable 1012 también puede, cuando la indicación indica que el número de capas del flujo de bits no ha cambiado en la trama actual en comparación con el número de capas del flujo de bits en la trama anterior, determinar que una indicación de fondo actual de un número actual de componentes de fondo en una o más de las capas para la trama actual sea igual a una indicación de fondo anterior para un número previo de componentes de fondo en una o más de las capas de la trama anterior. En otras palabras, la unidad de extracción escalable 1012 puede, cuando HOABaseLayerConfigurationFlag es igual a cero, determinar que el elemento de sintaxis NumBGchannels[i] representativo de la indicación de fondo actual del número actual de componente de fondo en una o más de las capas de la trama actual debe ser igual al elemento de sintaxis NumBGchannels_PrevFrame[i] que es representativo de la indicación de fondo anterior del número anterior de componentes de fondo en una o más capas de la trama anterior. La unidad de extracción escalable 1012 puede obtener además los componentes de fondo de una o más capas en la trama actual basándose en la indicación de fondo actual.
[0158] Para habilitar las técnicas anteriores que pueden reducir potencialmente la señalización de varias indicaciones del número de capas, componentes en primer plano y componentes de fondo, la unidad de extracción escalable 1012 puede establecer el elemento de sintaxis NumFGchannels_PrevFrame[/] y el elemento de sintaxis NumBGchannel_PrevFrame[/] para las indicaciones para la trama actual (por ejemplo, el elemento de sintaxis NumFGchannels/ y el NumBGchannels[/]), iterando a través de todas las i capas. Esto se representa en la siguiente sintaxis:
Figure imgf000034_0001
[0159] Cuando la indicación indica que el número de capas del flujo de bits ha cambiado en la trama actual en comparación con el número de capas del flujo de bits en la trama anterior (por ejemplo, cuando HOABaseLayerConfigurationFlag es igual a uno), la unidad de extracción escalable 1012 obtiene el elemento de sintaxis NumLayerBits en función de numHOATransportChannels, que se pasa a la tabla de sintaxis habiéndose obtenido de acuerdo con otras tablas de sintaxis no descritas en esta divulgación.
[0160] La unidad de extracción escalable 1012 puede obtener una indicación del número de capas especificadas en el flujo de bits (por ejemplo, el elemento de sintaxis de NumLayers), donde la indicación puede tener un número de bits indicados por el elemento de sintaxis de NumLayerBits. El elemento de sintaxis NumLayers puede especificar el número de capas especificadas en el flujo de bits, donde el número de capas puede indicarse como L arriba. La unidad de extracción escalable 1012 puede determinar a continuación los numAvailableTransportChannels como una función de los numHOATransportChannels y los numAvailable T ransportChannelBits como una función de los numAvailableT ransportChannels.
[0161] A continuación, la unidad de extracción escalable 1012 puede iterar a través de NumLayers desde 1 a NumLayers-1 para determinar el número de canales HOA de fondo (B/) y el número de canales HOA en primer plano (F) especificados para la i-ésima capa. La unidad de extracción escalable 1012 no puede iterar a través del número de la última capa (NumLayer) y solo a través del NumLayer-1 como última capa Bl puede determinarse cuando el número total de canales HOA en primer plano y de fondo enviados en el flujo de bits se conoce mediante la unidad de extracción escalable 1012 (por ejemplo, cuando el número total de canales HOA en primer plano y de fondo se señalan como elementos de sintaxis).
[0162] A este respecto, la unidad de extracción escalable 1012 puede obtener las capas del flujo de bits basándose en la indicación del número de capas. La unidad de extracción escalable 1012 puede, como se describió anteriormente, obtener una indicación de un número de canales especificados en el flujo de bits 21 (por ejemplo, numHOATransportChannels), y obtener las capas, al menos en parte, obtener las capas del flujo de bits 21 basándose en la indicación del número de capas y la indicación del número de canales.
[0163] Al iterar a través de cada capa, la unidad de extracción escalable 1012 puede determinar primero el número de canales en primer plano para la i-ésima capa obteniendo el elemento de sintaxis NumFGchannels[i]. A continuación, la unidad de extracción escalable 1012 puede restar los NumFGchannels[i] de los numAvailableTransportChannels para actualizar los NumAvailableTransportChannels y reflejar que los NumFGchannels[i] de los canales HOA en primer plano 61 (que también pueden denominarse las "señales nFG codificadas 61") se han extraído del flujo de bits. De esta manera, la unidad de extracción escalable 1012 puede obtener una indicación de un número de canales en primer plano especificados en el flujo de bits 21 para al menos una de las capas (por ejemplo, NumFGchannels) y obtener los canales en primer plano para al menos una de las capas del flujo de bits basándose en la indicación del número de canales en primer plano.
[0164] Asimismo, la unidad de extracción escalable 1012 puede determinar el número de canales de fondo para la i-ésima capa obteniendo el elemento de sintaxis NumBGchannels[i]. A continuación, la unidad de extracción escalable 1012 puede restar los NumBGchannels[i] de los numAvailableTransportChannels para reflejar que NumBGchannels[i]de los canales de HOA de fondo 59 (que también pueden denominarse los "coeficientes de HOA ambientales codificados 59") se han extraído del flujo de bits. De esta manera, la unidad de extracción escalable 1012 puede obtener una indicación de un número de canales de fondo (por ejemplo, NumBGChannels) especificados en el flujo de bits 21 para al menos una de las capas, y obtener los canales de fondo para al menos una de las capas. del flujo de bits basándose en la indicación del número de canales de fondo.
[0165] La unidad de extracción escalable 1012 puede continuar obteniendo los numAvailableT ransportChannelsBits en función de los numAvailableT ransports. Según la tabla de sintaxis anterior, la unidad de extracción escalable 1012 puede analizar el número de bits especificado por numAvailableTransportChannelsBits para determinar los NumFGchannels[i]y los NumBGchannels[i]. Dado que numAvailableTransportChannelBits cambia (por ejemplo, se vuelve más pequeño después de cada iteración), el número de bits utilizados para representar el elemento de sintaxis NumFGchannels[i] y el elemento de sintaxis NumBGchannels[i] se reduce, por lo que proporciona una forma de codificación de longitud variable que potencialmente reduce sobrecarga en la señalización del elemento de sintaxis NumFGchannels[i]y el elemento de sintaxis NumBGchannels[i].
[0166] Como se indicó anteriormente, la unidad de generación de flujo de bits escalable 1000 puede especificar el elemento de sintaxis NumChannels en lugar de los elementos de sintaxis NumFGchannels y NumBGchannels. En este caso, la unidad de extracción escalable 1012 puede configurarse para funcionar de acuerdo con la segunda tabla de sintaxis HOADecoderConfig mostrada anteriormente.
[0167] A este respecto, la unidad de extracción escalable 1012 puede, cuando la indicación indica que el número de capas del flujo de bits ha cambiado en la trama actual en comparación con el número de capas del flujo de bits en la trama anterior, obtener una indicación de un número de componentes en una o más de las capas para la trama actual basándose en el número de componentes en una o más de las capas de la trama anterior. La unidad de extracción escalable 1012 puede obtener además una indicación de un número de componentes de fondo en una o más capas para la trama actual basándose en la indicación del número de componentes. La unidad de extracción escalable 1012 también puede obtener una indicación de un número de componentes en primer plano en una o más capas para la trama actual basándose en la indicación del número de componentes.
[0168] Dado que el número de capas puede cambiar de una trama a otra y que la indicación del número de canales en primer plano y de fondo puede cambiar de una trama a otra, la indicación de que el número de capas ha cambiado también puede indicar efectivamente que el número de canales ha cambiado. Como resultado, la indicación de que el número de capas ha cambiado puede dar como resultado que la unidad de extracción escalable 1012 obtenga una indicación de si el número de canales especificados en una o más capas en el flujo de bits 21 ha cambiado en una trama actual en comparación con un número de canales especificados en una o más capas en el flujo de bits de la trama anterior. Como tal, la unidad de extracción escalable 1012 puede obtener uno de los canales basándose en la indicación de si el número de canales especificados en una o más capas en el flujo de bits ha cambiado en la trama actual.
[0169] Además, la unidad de extracción escalable 1012 puede determinar el número de canales especificados en una o más capas del flujo de bits 21 en la trama actual como el mismo que el número de canales especificados en una o más capas del flujo de bits 21 en la trama anterior cuando la indicación indica que el número de canales especificados en una o más capas de la corriente de bits 21 no ha cambiado en la trama actual en comparación con el número de canales especificados en una o más capas de la corriente de bits en la trama anterior.
[0170] Además, la unidad de extracción escalable 1012 puede, cuando la indicación indica que el número de canales especificados en una o más capas del flujo de bits 21 no ha cambiado en la trama actual en comparación con el número de canales especificados en la una o más capas del flujo de bits en la trama anterior, obtener una indicación de un número actual de canales en una o más de las capas para que la trama actual sea la misma que un número anterior de canales en una o más de las capas de la trama anterior.
[0171] Para habilitar las técnicas anteriores que pueden reducir potencialmente la señalización de varias indicaciones del número de capas y componentes (que también pueden denominarse "canales" en esta divulgación), la unidad de extracción escalable 1012 puede establecer el elemento de sintaxis NumChannels_PrevFrame[/] a las indicaciones para la trama actual (por ejemplo, el elemento de sintaxis NumChannels[/]), iterando a través de todas las i capas. Esto se representa en la siguiente sintaxis:
Figure imgf000036_0002
[0172] De forma alternativa, se puede omitir la sintaxis anterior (NumLayersPrevFrame=NumLayers, etc.) y la tabla de sintaxis HOADecoderConfig (numHOATransportChannels) enumerada anteriormente puede actualizarse como se establece en la siguiente tabla:
Figure imgf000036_0001
[0173] Como otra alternativa más, la unidad de extracción 72 puede funcionar de acuerdo con la tercera configuración HOADecoder listada anteriormente. De acuerdo con la tercera tabla de sintaxis HOADecoderConfig enumerada anteriormente, la unidad de extracción escalable 1012 puede configurarse para obtener, a partir del flujo de bits escalable 21, una indicación de un número de canales especificados en una o más capas en el flujo de bits, y obtener los canales especificados en una o más capas del flujo de bits basándose en la indicación del número de canales (que puede referirse a un componente de fondo o un componente en primer plano del campo de sonido). En estos y otros casos, la unidad de extracción escalable 1012 puede configurarse para obtener un elemento de sintaxis (por ejemplo, el codedLayerCh en la tabla indicada anteriormente) indicativo del número de canales.
[0174] En estos y otros casos, la unidad de extracción escalable 1012 puede configurarse para obtener una indicación de un número total de canales especificados en el flujo de bits. La unidad de extracción escalable 1012 también puede configurarse para obtener los canales especificados en una o más capas basándose en la indicación del número de canales especificados en la una o más capas y la indicación del número total de canales. En estos y otros casos, la unidad de extracción escalable 1012 puede configurarse para obtener un elemento de sintaxis (por ejemplo, el elemento de sintaxis NumHOATransportChannels indicado anteriormente) indicativo del número total de canales.
[0175] En estos y otros casos, la unidad de extracción escalable 1012 puede configurarse para obtener una indicación de un tipo de uno de los canales especificados en la una o más capas en el flujo de bits. La unidad de extracción escalable 1012 también puede configurarse para obtener uno de los canales basándose en la indicación del número de capas y la indicación del tipo de uno de los canales.
[0176] En estos y otros casos, la unidad de extracción escalable 1012 puede configurarse para obtener una indicación de un tipo de uno de los canales especificados en la una o más capas en el flujo de bits, indicando la indicación del tipo de uno de los canales que el uno de los canales es un canal en primer plano. La unidad de extracción escalable 1012 puede configurarse para obtener uno de los canales basándose en la indicación del número de capas y la indicación de que el tipo de uno de los canales es el canal en primer plano. En estos casos, uno de los canales comprende un objeto de audio de EE.UU. y un vector V correspondiente.
[0177] En estos y otros casos, la unidad de extracción escalable 1012 puede configurarse para obtener una indicación de un tipo de uno de los canales especificados en la una o más capas en el flujo de bits, indicando la indicación del tipo de uno de los canales que el uno de los canales es un canal de fondo. En estos casos, la unidad de extracción escalable 1012 también puede configurarse para obtener uno de los canales basándose en la indicación del número de capas y la indicación de que el tipo de uno de los canales es el canal de fondo. En estos casos, uno de los canales comprende un coeficiente ambisónico de fondo de orden superior.
[0178] En estos y otros casos, la unidad de extracción escalable 1012 puede configurarse para obtener un elemento de sintaxis (por ejemplo, el elemento de sintaxis ChannelType descrito anteriormente con respecto a la FIG. 30) indicativo del tipo de uno de los canales.
[0179] En estos y otros casos, la unidad de extracción escalable 1012 puede configurarse para obtener la indicación del número de canales basándose en un número de canales que quedan en el flujo de bits después de que se obtiene una de las capas. Es decir, el valor del elemento de sintaxis HOALayerChBits varía en función del elemento de sintaxis de Ch restante como se establece en la tabla de sintaxis anterior a lo largo del curso del ciclo actual. A continuación, la unidad de extracción escalable 1012 puede analizar el elemento de sintaxis codedLayerCh basándose en el elemento de sintaxis de HOALayerChBits cambiante.
[0180] Volviendo al ejemplo de los cuatro canales de fondo y los dos canales en primer plano, la unidad de extracción escalable 1012 puede recibir una indicación de que el número de capas es dos, es decir, la capa base 21A y la capa de mejora 21B en el ejemplo de la FIG. 6. La unidad de extracción escalable 1012 puede obtener una indicación de que el número de canales en primer plano es cero para la capa base 21A (por ejemplo, de NumFGchannels[0]) y dos para la capa de mejora 21B (por ejemplo, de NumFGchannels[1]). La unidad de extracción escalable 1012 puede, en este ejemplo, también obtener una indicación de que el número de canales de fondo es cuatro para la capa base 21A (por ejemplo, de NumBGchannels[0]) y cero para la capa de mejora 21B (por ejemplo, de NumBGchannels[1]). Aunque se describe con respecto a un ejemplo particular, se puede indicar cualquier combinación diferente de canales de fondo y en primer plano. La unidad de extracción escalable 1012 puede extraer los cuatro canales de fondo especificados 59A-59D de la capa base 21A y los dos canales en primer plano 61A y 61B de la capa de mejora 21B (junto con la información correspondiente del vector V57A y 57B de la información de banda lateral).
[0181] Aunque se describió anteriormente con respecto a los elementos de sintaxis NumFGchannels y NumBGchannels, las técnicas también se pueden realizar utilizando el elemento de sintaxis ChannelType de la tabla de sintaxis ChannelSideInfo anterior. A este respecto, los canales NumFG y los canales NumBG también pueden representar una indicación de un tipo de uno de los canales. En otras palabras, los canales NumBG pueden representar una indicación de que un tipo de uno de los canales es un canal de fondo. Los canales NumFG pueden representar una indicación de que un tipo de uno de los canales es un canal en primer plano.
[0182] Como tal, si se usa el elemento de sintaxis ChannelType o el elemento de sintaxis NumFGchannels con el elemento de sintaxis NumBGchannels (o potencialmente ambos o algún subconjunto de cualquiera de ellos), la unidad de extracción de flujo de bits escalable 1012 puede obtener una indicación de un tipo de uno de los canales especificados en una o más capas del flujo de bits. La unidad de extracción de flujo de bits escalable 1012 puede, cuando la indicación del tipo indica que uno de los canales es un canal de fondo, obtener el uno de los canales basándose en la indicación del número de capas y la indicación de que el tipo de uno de los canales es el canal de fondo. La unidad de extracción de flujo de bits escalable 1012 puede, cuando la indicación del tipo indica que uno de los canales es un canal en primer plano, obtener el de los canales basándose en la indicación del número de capas y la indicación de que el tipo de uno de los canales es el canal en primer plano.
[0183] La unidad de reconstrucción de vectores V74 puede representar una unidad configurada para reconstruir los vectores V a partir de los vectores V[k] en primer plano codificados 57. La unidad de reconstrucción de vectores V74 puede funcionar de una manera recíproca a la de la unidad de cuantificación 52.
[0184] La unidad de descodificación psicoacústica 80 puede funcionar de una manera recíproca a la unidad de codificador de audio psicoacústica 40 mostrada en el ejemplo de la FIG. 3 para descodificar los coeficientes de HOA ambientales codificados 59 y las señales de nFG codificadas 61 y generar de ese modo señales de audio de HOA ambientales ajustadas 67' y las señales nFG interpoladas ajustadas 49' (que también pueden denominarse objetos de audio nFG interpolados ajustados 49'). La unidad de descodificación psicoacústica 80 puede pasar las señales de audio de HOA ambientales ajustadas 67' y las señales nFG interpoladas ajustadas 49” a la unidad de control de ganancia inversa 86.
[0185] La unidad de control de ganancia inversa 86 puede representar una unidad configurada para realizar un control de ganancia inversa con respecto a cada una de las señales de audio de HOA ambientales ajustadas 67' y las señales nFG interpoladas ajustadas 49", donde este control de ganancia inversa es recíproco al control de ganancia realizado por la unidad de control de ganancia 62. La unidad de control de ganancia inversa 86 puede realizar el control de ganancia inversa de acuerdo con el HOAGCD correspondiente especificado en la información de banda lateral analizada anteriormente con respecto a los ejemplos de las FIGS. 11-13B. La unidad de control de ganancia inversa 86 puede emitir señales 67 de audio de HOA ambientales descorrelacionadas a la unidad de relación de grabación 88 (mostrada como "unidad de recorr. 88" en el ejemplo de la FIG. 4) y las señales 49 de audio nFG interpoladas a la unidad de formulación en primer plano 78.
[0186] La unidad de grabación 88 puede implementar técnicas de esta divulgación para reducir la correlación entre los canales de fondo de las señales 67 de audio de HOA ambientales descorrelacionadas para reducir o mitigar el desenmascaramiento de ruido. En los ejemplos en los que la unidad de registro 88 aplica una matriz UHJ (por ejemplo, una matriz UHJ inversa) como la transformada de registro seleccionada, la unidad de registro 81 puede mejorar las frecuencias de compresión y conservar los recursos informáticos reduciendo las operaciones de procesamiento de datos.
[0187] En algunos ejemplos, el flujo de bits escalable 21 puede incluir uno o más elementos de sintaxis que indican que se aplicó una transformada de descorrelación durante la codificación. La inclusión de tales elementos de sintaxis en el flujo de bits 21 basado en vectores puede permitir que la unidad de relación de grabación 88 realice transformaciones de descorrelación recíproca (por ejemplo, correlación o relación de grabación) en las señales 67 de audio de HOA ambientales descorrelacionadas. En algunos ejemplos, los elementos de sintaxis de señal pueden indicar qué transformada de descorrelación se aplicó, como la matriz UHJ o la matriz de modo, permitiendo así que la unidad de grabación 88 seleccione la transformada de grabación apropiada para aplicar a las señales 67 de audio de HOA descorrelacionadas.
[0188] La unidad de grabación 88 puede realizar la grabación con respecto a las señales de audio de HOA ambientales descorrelacionadas 67 para obtener coeficientes 47' de HOA ambientales con compensación de energía. La unidad de recorrelación 88 puede emitir los coeficientes 47' de HOA ambientales compensados en energía a la unidad codificadora de audio psicoacústica 770. Aunque se describe que realiza la descorrelación, en algunos ejemplos puede que no se haya realizado ninguna descorrelación. Como tal, la unidad de reconstrucción basada en vectores 92 puede no funcionar o en algunos ejemplos incluir una unidad de registro 88. La ausencia de la unidad de registro 88 en algunos ejemplos se indica mediante la línea discontinua de la unidad de registro 88.
[0189] La unidad de interpolación espacio-temporal 76 puede funcionar de una manera similar a la descrita anteriormente con respecto a la unidad de interpolación espacio-temporal 50. La unidad de interpolación espaciotemporal 76 puede recibir los vectores V[k] en primer plano reducidos 55k y realizar la interpolación espaciotemporal con respecto a los vectores V[k] en primer plano 55k y los vectores V[k-1] en primer plano reducidos 55k-1 para generar vectores V[k] en primer plano interpolados 55k". La unidad de interpolación espacio-temporal 76 puede reenviar los vectores V[k] en primer plano interpolados 55k'' a la unidad de fundido 770.
[0190] La unidad de extracción 72 también puede emitir una señal 757 indicativa de cuándo uno de los coeficientes de HOA ambientales está en transición hacia la unidad de fundido 770, que a continuación puede determinar cuál de los SHCbg 47' (donde los SHCbg 47' también se pueden indicar como "canales HOA ambientales 47'" o "coeficientes de HOA ambientales 47'") y los elementos de los vectores V[k] en primer plano interpolados 55k" han de incorporarse o eliminarse. En algunos ejemplos, la unidad de fundido 770 puede funcionar opuesta con respecto a cada uno de los coeficientes de HOA ambientales 47' y los elementos de los vectores V[k] en primer plano interpolados 55k". Es decir, la unidad de fundido 770 puede realizar un fundido de entrada o un fundido de salida o tanto un fundido de entrada como un fundido de salida, con respecto al correspondiente de los coeficientes de HOA ambientales 47', mientras realiza un fundido de entrada o un fundido de salida, o tanto un fundido de entrada como un fundido de salida, con respecto al correspondiente de los elementos de los vectores V[*] en primer plano interpolados 55*". La unidad de fundido 770 puede emitir coeficientes de HOA ambientales ajustados 47'' a la unidad de formulación de coeficientes de HOA82 y los vectores V[*] en primer plano ajustados 55*"' a la unidad de formulación en primer plano 78. A este respecto, la unidad de fundido 770 representa una unidad configurada para realizar una operación de fundido con respecto a diversos aspectos de los coeficientes de HOA o sus derivados, por ejemplo, en forma de los coeficientes de HOA ambientales 47' y los elementos de los vectores V[*] interpolados en primer plano 55*".
[0191] La unidad de formulación del primer plano 78 puede representar una unidad configurada para realizar la multiplicación matricial con respecto a los vectores V[*] en primer plano ajustados 55*" y las nFG señales interpoladas 49' para generar los coeficientes de HOA en primer plano 65. A este respecto, la unidad de formulación en primer plano 78 puede combinar los objetos de audio 49' (que es otra manera mediante la cual denotar las nFG señales interpoladas 49') con los vectores 55*"' para reconstruir el primer plano o, en otras palabras, los aspectos predominantes de los coeficientes de HOA 11'. La unidad de formulación en primer plano 78 puede realizar una multiplicación matricial de las nFG señales interpoladas 49' por los vectores V[*] en primer plano ajustados 55*"'.
[0192] La unidad de formulación de coeficientes de HOA82 puede representar una unidad configurada para combinar los coeficientes de HOA en primer plano 65 a los coeficientes de HOA ambientales ajustados 47" para obtener los coeficientes de HOA 11'. La notación principal refleja que los coeficientes de HOA 11' pueden ser similares pero no iguales a los coeficientes de HOA 11. Las diferencias entre los coeficientes de HOA 11 y 11' pueden ser el resultado de pérdidas debidas a la transmisión por un medio de transmisión con pérdidas, cuantificación u otras operaciones con pérdidas.
[0193] Las FIGs. 14A y 14B son diagramas de flujo que ilustran funcionamientos de ejemplo del dispositivo de codificación de audio 20 en la realización de varios aspectos de las técnicas descritas en esta divulgación. Haciendo referencia primero al ejemplo de la FIG. 14A, el dispositivo de codificación de audio 20 puede obtener canales para una trama actual de coeficientes de HOA 11 de la manera descrita anteriormente (por ejemplo, una descomposición lineal, interpolación, etc.) (500). Los canales pueden comprender coeficientes de HOA ambientales codificados 59, señales 61 nFG codificadas (y la banda lateral correspondiente en forma de vectores V57 en primer plano codificados) o tanto el coeficiente 59 HOA ambiental codificado como las señales 61 nFG codificadas (y la banda lateral correspondiente en forma de vectores V en primer plano 57).
[0194] A continuación, la unidad de generación de flujo de bits 42 del dispositivo de codificación de audio 20 puede especificar una indicación de un número de capas en el flujo de bits escalable 21 de la manera descrita anteriormente (502). La unidad de generación de flujo de bits 42 puede especificar un subconjunto de los canales en la capa actual del flujo de bits escalable 21 (504). La unidad de generación de flujo de bits 42 puede mantener un contador para la capa actual, donde el contador proporciona una indicación de la capa actual. Después de especificar los canales en la capa actual, la unidad de generación de flujo de bits 42 puede incrementar el contador.
[0195] A continuación, la unidad de generación de flujo de bits 42 puede determinar si la capa actual (por ejemplo, el contador) es mayor que el número de capas especificado en el flujo de bits (506). Cuando la capa actual no es mayor que el número de capas ("NO" 506), la unidad de generación de flujo de bits 42 puede especificar un subconjunto diferente de los canales en la capa actual (que cambió cuando se incrementó el contador) (504). La unidad de generación de flujo de bits 42 puede continuar de esta manera hasta que la capa actual sea mayor que el número de capas ("SÍ" 506). Cuando la capa actual es mayor que el número de capas ("SÍ" 506), la unidad de generación de flujo de bits puede pasar a la siguiente trama con la trama actual convirtiéndose en la trama anterior y obtener los canales para la trama ahora actual del flujo de bits escalable 21 (500). El proceso puede continuar hasta alcanzar la última trama de los coeficientes de HOA 11 (500-506). Como se señaló anteriormente, en algunos ejemplos, la indicación del número de capas puede no indicarse explícitamente sino especificarse implícitamente en el flujo de bits escalable 21 (por ejemplo, cuando el número de capas no ha cambiado desde la trama anterior a la trama actual).
[0196] Haciendo referencia a continuación al ejemplo de la FIG. 14B, el dispositivo de codificación de audio 20 puede obtener canales para una trama actual de coeficientes de HOA 11 de la manera descrita anteriormente (por ejemplo, una descomposición lineal, interpolación, etc.) (510). Los canales pueden comprender coeficientes de HOA ambientales codificados 59, señales 61 nFG codificadas (y la banda lateral correspondiente en forma de vectores V57 en primer plano codificados) o tanto el coeficiente 59 HOA ambiental codificado como las señales 61 nFG codificadas (y la banda lateral correspondiente en forma de vectores V en primer plano 57).
[0197] A continuación, la unidad de generación de flujo de bits 42 del dispositivo de codificación de audio 20 puede especificar una indicación de un número de canales en una capa del flujo de bits escalable 21 de la manera descrita anteriormente (512). La unidad de generación de flujo de bits 42 puede especificar los canales correspondientes en la capa actual del flujo de bits escalable 21 (514).
[0198] A continuación, la unidad de generación de flujo de bits 42 puede determinar si la capa actual (por ejemplo, el contador) es mayor que varias capas (516). Es decir, en el ejemplo de la FIG. 14B, el número de capas puede ser estático o fijo (en lugar de estar especificado en el flujo de bits escalable 21), mientras que puede especificarse el número de canales por capa, a diferencia del ejemplo de la FIG. 14A donde el número de canales puede ser estático o fijo y no señalizado. La unidad de generación de flujo de bits 42 aún puede mantener el contador indicativo de la capa actual.
[0199] Cuando la capa actual (como indica el contador) no es mayor que el número de capas ("NO" 516), la unidad de generación de flujo de bits 42 puede especificar otra indicación del número de canales en otra capa del flujo de bits escalable 21 para la ahora la capa actual (que cambió debido al incremento del contador) (512). La unidad de generación de flujo de bits 42 también puede especificar el número correspondiente de canales en la capa adicional del flujo de bits 21 (514). La unidad de generación de flujo de bits 42 puede continuar de esta manera hasta que la capa actual sea mayor que el número de capas ("SÍ" 516). Cuando la capa actual es mayor que el número de capas ("SÍ" 516), la unidad de generación de flujo de bits puede pasar a la siguiente trama con la trama actual convirtiéndose en la trama anterior y obtener los canales para la trama ahora actual del flujo de bits escalable 21 (510). El proceso puede continuar hasta alcanzar la última trama de los coeficientes de HOA 11 (510­ 516).
[0200] Como se señaló anteriormente, en algunos ejemplos, la indicación del número de canales puede no indicarse explícitamente sino especificarse implícitamente en el flujo de bits escalable 21 (por ejemplo, cuando el número de capas no ha cambiado desde la trama anterior a la trama actual). Además, aunque se describen como procesos separados, las técnicas descritas con respecto a las FIGS. 14A y 14B pueden realizarse en combinación de la manera descrita anteriormente.
[0201] Las FIGs. 15A y 15B, son diagramas de flujo que ilustran funcionamientos de ejemplo del dispositivo de descodificación de audio 24 en la realización de varios aspectos de las técnicas descritas en esta divulgación. Haciendo referencia primero al ejemplo de la FIG. 15A, el dispositivo de descodificación de audio 24 puede obtener una trama actual del flujo de bits escalable 21 (520). La trama actual puede incluir una o más capas, cada una de las cuales puede incluir uno o más canales. Los canales pueden comprender coeficientes de HOA ambientales codificados 59, señales 61 nFG codificadas (y la banda lateral correspondiente en forma de vectores V57 en primer plano codificados) o tanto el coeficiente 59 HOA ambiental codificado como las señales 61 nFG codificadas (y la banda lateral correspondiente en forma de vectores V en primer plano 57).
[0202] A continuación, la unidad de extracción 72 del dispositivo de descodificación de audio 24 puede obtener una indicación de un número de capas en la trama actual del flujo de bits escalable 21 de la manera descrita anteriormente (522). La unidad de extracción 72 puede obtener un subconjunto de los canales en la capa actual del flujo de bits escalable 21 (524). La unidad de extracción 72 puede mantener un contador para la capa actual, donde el contador proporciona una indicación de la capa actual. Después de especificar los canales en la capa actual, la unidad de extracción 72 puede incrementar el contador.
[0203] A continuación, la unidad de extracción 72 puede determinar si la capa actual (por ejemplo, el contador) es mayor que el número de capas especificado en el flujo de bits (526). Cuando la capa actual no es mayor que el número de capas ("NO" 526), la unidad de extracción 72 puede obtener un subconjunto diferente de los canales en la capa actual (que cambió cuando se incrementó el contador) (524). La unidad de extracción 72 puede continuar de esta manera hasta que la capa actual sea mayor que el número de capas ("SÍ" 526). Cuando la capa actual es mayor que el número de capas ("SÍ" 526), la unidad de extracción 72 puede pasar a la siguiente trama con la trama actual convirtiéndose en la trama anterior y obtener la trama actual del flujo de bits escalable 21 (520). El proceso puede continuar hasta alcanzar la última trama del flujo de bits escalable 21 (520-526). Como se señaló anteriormente, en algunos ejemplos, la indicación del número de capas puede no indicarse explícitamente sino especificarse implícitamente en el flujo de bits escalable 21 (por ejemplo, cuando el número de capas no ha cambiado desde la trama anterior a la trama actual).
[0204] Haciendo referencia a continuación al ejemplo de la FIG. 15B, el dispositivo de descodificación de audio 24 puede obtener una trama actual del flujo de bits escalable 21 (530). La trama actual puede incluir una o más capas, cada una de las cuales puede incluir uno o más canales. Los canales pueden comprender coeficientes de HOA ambientales codificados 59, señales 61 nFG codificadas (y la banda lateral correspondiente en forma de vectores V57 en primer plano codificados) o tanto el coeficiente 59 HOA ambiental codificado como las señales 61 nFG codificadas (y la banda lateral correspondiente en forma de vectores V en primer plano 57).
[0205] A continuación, la unidad de extracción 72 del dispositivo de descodificación de audio 24 puede obtener una indicación de un número de canales en una capa del flujo de bits escalable 21 de la manera descrita anteriormente (532). La unidad de generación de flujo de bits 42 puede obtener el número correspondiente de canales de la capa actual del flujo de bits escalable 21 (534).
[0206] A continuación, la unidad de extracción 72 puede determinar si la capa actual (por ejemplo, el contador) es mayor que varias capas (536). Es decir, en el ejemplo de la FIG. 15B, el número de capas puede ser estático o fijo (en lugar de estar especificado en el flujo de bits escalable 21), mientras que puede especificarse el número de canales por capa, a diferencia del ejemplo de la FIG. 15A donde el número de canales puede ser estático o fijo y no señalizado. La unidad de extracción 72 todavía puede mantener el contador indicativo de la capa actual.
[0207] Cuando la capa actual (como lo indica el contador) no es mayor que el número de capas ("NO" 536), la unidad de extracción 72 puede obtener otra indicación del número de canales en otra capa del flujo de bits escalable 21 para la capa ahora actual (que cambió debido al incremento del contador) (532). La unidad de extracción 72 también puede especificar el número correspondiente de canales en la capa adicional del flujo de bits 21 (514). La unidad de extracción 72 puede continuar de esta manera hasta que la capa actual sea mayor que el número de capas ("SÍ" 516). Cuando la capa actual es mayor que el número de capas ("SÍ" 516), la unidad de generación de flujo de bits puede pasar a la siguiente trama con la trama actual convirtiéndose en la trama anterior y obtener los canales para la trama ahora actual del flujo de bits escalable 21 (510). El proceso puede continuar hasta alcanzar la última trama de los coeficientes de HOA 11 (510-516).
[0208] Como se señaló anteriormente, en algunos ejemplos, la indicación del número de canales puede no indicarse explícitamente sino especificarse implícitamente en el flujo de bits escalable 21 (por ejemplo, cuando el número de capas no ha cambiado desde la trama anterior a la trama actual). Además, aunque se describen como procesos separados, las técnicas descritas con respecto a las FIGS. 15A y 15B pueden realizarse en combinación de la manera descrita anteriormente.
[0209] La FIG. 16 es un diagrama que ilustra codificación de audio escalable como se realiza mediante la unidad de generación de flujo de bits 42 mostrada en el ejemplo de la FIG. 16 de acuerdo con varios aspectos de las técnicas descritas en esta divulgación. En el ejemplo de la FIG. 16, un codificador de audio de HOA, tal como el dispositivo de codificación de audio 20 mostrado en los ejemplos de las FIGS.2 y 3, puede codificar los coeficientes de HOA 11 (que también pueden denominarse "señal de HOA 11"). La señal de HOA 11 puede comprender 24 canales, teniendo cada canal 1024 muestras. Como se indicó anteriormente, cada canal incluye 1024 muestras, que pueden referirse a 1024 coeficientes de HOA correspondientes a una de las funciones de base esférica. El dispositivo de codificación de audio 20 puede, como se describió anteriormente con respecto a la unidad de generación de flujo de bits 42 mostrada en el ejemplo de la FIG. 5, realizar varias operaciones para obtener los coeficientes de HOA ambientales codificados 59 (que también pueden denominarse "canales de HOA de fondo 59") a partir de la señal 11 de HOA.
[0210] Como se muestra además en el ejemplo de la FIG. 16, el dispositivo 20 de codificación de audio obtiene los canales de HOA de fondo 59 como los primeros cuatro canales de la señal 11 de HOA. Los canales de HOA de fondo 59 se indican como H f®, donde 1:4 refleja que los primeros cuatro canales de la señal de HOA 11 se seleccionaron para representar los componentes de fondo del campo de sonido. Esta selección de canal puede indicarse como B = 4 en un elemento de sintaxis. A continuación, la unidad de generación de flujo de bits escalable 1000 del dispositivo 20 de codificación de audio puede especificar los canales de fondo HOA 59 en la capa base 21A (que puede denominarse una primera capa de las dos o más capas).
[0211] La unidad de generación de flujo de bits escalable 1000 puede generar la capa base 21A para incluir los canales de fondo 59 y obtener información como se especifica de acuerdo con la siguiente ecuación:
Figure imgf000041_0001
[0212] Como se muestra además en el ejemplo de la FIG. 16, el dispositivo de codificación de audio 20 puede obtener F canales HOA en primer plano, que pueden expresarse como los objetos de audio de EE. UU. y el vector V correspondiente. Se supone, con fines ilustrativos, que F = 2. Por lo tanto, el dispositivo de codificación de audio 20 puede seleccionar el primer y segundo objetos de audio de EE. UU. 61 (que también pueden denominarse "señales nFG codificadas 61") y el primer y segundo vectores V 57 (que también pueden denominarse " vectores V[ft] codificados en primer plano 57 "), donde la selección se indica en el ejemplo de la FIG. 5 como USv2 y V12 , respectivamente. A continuación, la unidad de generación de flujo de bits escalable 1000 puede generar la segunda capa 21B del flujo de bits escalable 21 para incluir el primer y segundo objetos de audio 61 y el primer y segundo vectores V 57.
[0213] La unidad de generación de flujo de bits escalable 1000 también puede generar la capa de mejora 21B para incluir los canales HOA en primer plano 61 y obtener información junto con los vectores V 57 como se especifica de acuerdo con la siguiente ecuación:
US[G (S eñ a l de a u d io d e l l . er cana l F G ) G[u (1.a g a na nc ia de F G ) F¡r a ( l . er v e c to r V )
US*G (S e ñ a l de a u d io d e l 2.° ca n a l F G ) GÍ¡°(2.a ga n a n c ia de F G ) F,K' (2.° v e c to r V)
US~Ü (S eñ a l de a u d io d e l 3.er ca n a l F G ) G!ü (3.a ga n a n c ia de F G ) V*a (3.er v e c to r V )
[0214] Para obtener los coeficientes de HOA 11’ del flujo de bits escalable 21', el dispositivo descodificador de audio 24 mostrado en los ejemplos de las FIGS. 2 y 3 puede invocar la unidad de extracción 72 mostrada con más detalle en el ejemplo de la FIG. 6. La unidad de extracción 72 que puede extraer los coeficientes de HOA ambientales codificados 59A-59D, las señales nFG codificadas 61A y 61B, y los vectores V[k] codificados en primer plano 57A y 57B de la manera descrita anteriormente con respecto a la FIG. 6. A continuación, la unidad de extracción 72 puede emitir los coeficientes de HOA ambientales codificados 59A-59D, las señales nFG codificadas 61A y 61B, y los vectores V[k] codificados en primer plano 57A y 57B a la unidad de descodificación basada en vectores 92.
[0215] A continuación, la unidad de descodificación basada en vectores 92 puede multiplicar los objetos de audio 61 de EE.UU. por los vectores V 57 de acuerdo con las siguientes ecuaciones:
Figure imgf000042_0001
:H ™ = 2uS,r,T
La primera ecuación proporciona la expresión matemática de la operación genérica con respecto a F. La segunda ecuación proporciona la expresión matemática en el ejemplo donde se supone que F es igual a dos. El resultado de esta multiplicación se indica como la señal de HOA en primer plano 1020. A continuación, la unidad de descodificación basada en vectores 92 selecciona los canales más altos (dado que los cuatro coeficientes más bajos ya fueron seleccionados como los canales de fondo HOA 59), donde estos canales más altos se indican como H F5G25r2. En otras palabras, la unidad de descodificación basada en vectores 92 obtiene los canales 65 en primer plano de HOA a partir de la señal de HOA en primer plano 1020.
[0216] Como resultado, las técnicas pueden facilitar la estratificación variable (en lugar de requerir un número estático de capas) para acomodar una gran cantidad de contextos de codificación y potencialmente proporcionar mucha más flexibilidad al especificar los componentes de fondo y primer plano del campo de sonido. Las técnicas pueden proporcionar muchos otros casos de uso, como se describe con respecto a las FIGS. 17-26. Estos diversos casos de uso se pueden realizar por separado o juntos dentro de un flujo de audio determinado. Además, la flexibilidad para especificar estos componentes dentro de las técnicas de codificación de audio escalables puede permitir muchos más casos de uso. En otras palabras, las técnicas no deben limitarse a los casos de uso que se describen a continuación, sino que pueden incluir cualquier forma en la que los componentes de fondo y en primer plano puedan señalizarse en una o más capas de un flujo de bits escalable.
[0217] La FIG. 17 es un diagrama conceptual de un ejemplo en el que los elementos de sintaxis indican que hay dos capas con cuatro coeficientes de HOA ambientales codificados especificados en una capa base y dos señales nFG codificadas se especifican en la capa de mejora. El ejemplo de la FIG. 17 muestra la trama de HOA en cuanto a que la unidad de generación de flujo de bits escalable 1000 mostrada en el ejemplo de la FIG.5 puede segmentar la trama para formar la capa base que incluye datos de corrección de ganancia DE HOA de banda lateral para los coeficientes de HOA ambientales codificados 59A-59D. La unidad de generación de flujo de bits escalable 1000 también puede segmentar la trama de HOA para formar una capa 21 de mejora que incluye los dos vectores V[k] codificados en primer plano 57 y los datos de corrección de ganancia de HOA para las señales 61 nFG ambientales codificadas.
[0218] Como se muestra además en el ejemplo de la FIG. 17, la unidad de codificación de audio psicoacústico 40 se muestra dividida en instancias separadas del codificador 40A de audio psicoacústico, que pueden denominarse codificadores 40A temporales de capa base, y codificadores 40B de audio psicoacústico, que pueden denominarse codificadores 40B temporales de capa de mejora. Los codificadores temporales de la capa base 40A representan cuatro instancias de codificadores de audio psicoacústicos que procesan los cuatro componentes de la capa base. Los codificadores temporales de la capa de mejora 40B representan dos instanciaciones de codificadores de audio psicoacústicos que procesan los dos componentes de la capa de mejora.
[0219] La FIG. 18 es un diagrama que ilustra, con más detalle, la unidad de generación de flujo de bits 42 de la FIG. 3 cuando se configura para realizar una segunda de las posibles versiones de las técnicas de codificación de audio escalables descritas en esta divulgación. En este ejemplo, la unidad de generación de flujo de bits 42 es sustancialmente similar a la unidad de generación de flujo de bits 42 descrita anteriormente con respecto al ejemplo de la FIG. 5. Sin embargo, la unidad de generación de flujo de bits 42 realiza la segunda versión de las técnicas de codificación escalables para especificar tres capas 21A-21C en lugar de dos capas 21A y 21B. La unidad de generación de flujo de bits escalable 1000 puede especificar indicaciones de que se especifican dos coeficientes de HOA ambientales codificados y señales nFG codificadas cero en la capa base 21A, indicaciones de que se especifican los coeficientes de HOA ambientales codificados cero y dos señales nFG codificadas en una primera capa de mejora 21B, e indicaciones de que se especifican los coeficientes de HOA ambientales codificados cero y dos señales nFG codificadas 61 en una segunda capa de mejora 21C. La unidad de generación de flujo de bits escalable 1000 puede especificar los dos coeficientes de HOA ambientales codificados 59A y 59B en la capa base 21A, las dos señales nFG codificadas 61A y 61B con los dos vectores V[k] codificados en primer plano correspondientes 57A y 57B en la primera capa de mejora 21B, y las dos señales nFG codificadas 61c y 61D con los dos vectores V[k] en primer plano codificados correspondientes 57C y 57D en la segunda capa de mejora 21C. A continuación, la unidad de generación de flujo de bits escalable 1000 puede generar estas capas como flujo de bits escalable 21.
[0220] La FIG. 19 es un diagrama que ilustra, con más detalle, la unidad de extracción 72 de la FIG. 3 cuando se configura para realizar la segunda de las posibles versiones de las técnicas de descodificación de audio escalables descritas en esta divulgación. En este ejemplo, la unidad de extracción de flujo de bits 72 es sustancialmente similar a la unidad de extracción de flujo de bits 72 descrita anteriormente con respecto al ejemplo de la FIG. 6. Sin embargo, la unidad de extracción de flujo de bits 72 realiza la segunda versión de las técnicas de codificación escalables con respecto a tres capas 21A-21C en lugar de dos capas 21A y 21B. La unidad de extracción de flujo de bits escalable 1012 puede obtener indicaciones de que se especifican dos coeficientes de HOA ambientales codificados y señales nFG codificadas en cero en la capa base 21A, indicaciones de que se especifican los coeficientes de HOA ambientales codificados cero y dos señales nFG codificadas en una primera capa de mejora 21B, e indicaciones de que se especifican coeficientes de HOA ambientales codificados cero y dos señales nFG codificadas en una segunda capa de mejora 21C. La unidad de extracción de flujo de bits escalable 1012 puede obtener los dos coeficientes de HOA ambientales codificados 59A y 59B de la capa base 21A, las dos señales nFG codificadas 61A y 61B con los dos vectores V[A] en primer plano codificados correspondientes 57A y 57B de la primera capa de mejora 21B, y las dos señales nFG codificadas 61C y 61D con los dos vectores V[ft] en primer plano codificados correspondientes 57C y 57D de la segunda capa de mejora 21C. La unidad de extracción de flujo de bits escalable 1012 puede enviar los coeficientes de HOA ambientales codificados 59, las señales 61 de nFG codificadas y los vectores V[ft] codificados en primer plano 57 a la unidad de descodificación basada en vectores 92.
[0221] La FIG. 20 es un diagrama que ilustra un segundo caso de uso mediante el cual la unidad de generación de flujo de bits de la FIG. 18 y la unidad de extracción de la FIG. 19 puede realizar la segunda de la posible versión de las técnicas descritas en esta divulgación. Por ejemplo, la unidad de generación de flujo de bits 42 mostrada en el ejemplo de la FIG. 18 puede especificar el elemento de sintaxis NumLayer (que se muestra como "NumberOfLayers" para facilitar la comprensión) para indicar que el número de capas especificado en el flujo de bits escalable 21 es tres. La unidad de generación de flujo de bits 42 puede especificar además que el número de canales de fondo especificados en la primera capa 21A (que también se conoce como la "capa base") es dos mientras que el número de canales en primer plano especificado en la primera capa 21B es cero (es decir, Bi = 2, Fi = 0 en el ejemplo de la FIG. 20). La unidad de generación de flujo de bits 42 puede especificar además que el número de canales de fondo especificados en la segunda capa 21B (que también se conoce como la "capa de mejora") es cero mientras que el número de canales en primer plano especificados en la segunda capa 21B es dos (es decir, B2 = 0, F2 = 2 en el ejemplo de la FIG. 20). La unidad de generación de flujo de bits 42 puede especificar además que el número de canales de fondo especificados en la segunda capa 21C (que también se conoce como la "capa de mejora") es cero mientras que el número de canales en primer plano especificado en la segunda capa 21C es dos (es decir, B3 = 0, F3 = 2 en el ejemplo de la FIG. 20). Sin embargo, el dispositivo de codificación de audio 20 puede no señalar necesariamente la información del canal de fondo y en primer plano de la tercera capa cuando el número total de canales en primer plano y de fondo ya se conoce en el descodificador (por ejemplo, a través de elementos de sintaxis adicionales, como totalNumBGchannels y totalNumFGchannels).
[0222] La unidad de generación de flujo de bits 42 puede especificar estos valores Bi y Fi como NumBGchannels[i] y NumFGchannels[i]. Para el ejemplo anterior, el dispositivo de codificación de audio 20 puede especificar el elemento de sintaxis NumBGchannels como {2, 0, 0} y el elemento de sintaxis NumFGchannels como {0, 2, 2}. La unidad de generación de flujo de bits 42 también puede especificar los canales de audio de HOA de fondo 59, los canales de HOA en primer plano 61 y los vectores V57 en el flujo de bits escalable 21.
[0223] El dispositivo de descodificación de audio 24 mostrado en los ejemplos de las FIGS. 2 y 4 pueden funcionar de manera recíproca a la del dispositivo de codificación de audio 20 para analizar estos elementos de sintaxis del flujo de bits (por ejemplo, como se establece en la tabla de sintaxis HOADecoderConfig anterior), como se describe anteriormente con respecto a la unidad de extracción de flujo de bits 72 de la FIG. 19. El dispositivo de descodificación de audio 24 también puede analizar los correspondientes canales de audio de HOA de fondo 1002 y los canales en primer plano HOA1010 del flujo de bits 21 de acuerdo con los elementos de sintaxis analizados, de nuevo como se describió anteriormente con respecto a la unidad de extracción de flujo de bits 72 de la FIG. 19.
[0224] La FIG. 21 es un diagrama conceptual de un ejemplo donde los elementos de sintaxis indican que hay tres capas con dos coeficientes de HOA ambientales codificados especificados en una capa base, dos señales nFG codificadas se especifican en una primera capa de mejora y dos señales nFG codificadas se especifican en una segunda capa de mejora. El ejemplo de la FIG. 21 muestra la trama de HOA en cuanto a que la unidad de generación de flujo de bits escalable 1000 mostrada en el ejemplo de la FIG. 18 puede segmentar la trama para formar la capa base que incluye datos de corrección de ganancia de HOA de banda lateral para los coeficientes de HOA ambientales codificados 59A y 59B. La unidad de generación de flujo de bits escalable 1000 también puede segmentar la trama de HOA para formar una capa de mejora 21B que incluye los dos vectores V[k] codificados en primer plano 57 y los datos de corrección de ganancia de HOA para las señales ambientales nFG codificadas 61 y una capa de mejora 21C que incluye los dos vectores V[k] en primer plano codificados adicionales 57 y los datos de corrección de ganancia de HOA para las señales nFG ambientales codificadas 61.
[0225] Como se muestra además en el ejemplo de la FIG. 21, la unidad de codificación de audio psicoacústico 40 se muestra dividida en instancias separadas del codificador 40A de audio psicoacústico, que pueden denominarse codificadores 40A temporales de capa base, y codificadores 40B de audio psicoacústico, que pueden denominarse codificadores 40B temporales de capa de mejora. Los codificadores temporales de la capa base 40A representan dos instanciaciones de codificadores de audio psicoacústicos que procesan los cuatro componentes de la capa base. Los codificadores temporales de la capa de mejora 40B representan cuatro instancias de codificadores de audio psicoacústicos que procesan los dos componentes de la capa de mejora.
[0226] La FIG. 22 es un diagrama que ilustra, con más detalle, la unidad de generación de flujo de bits 42 de la FIG. 3 cuando se configura para realizar una tercera de las posibles versiones de las técnicas de codificación de audio escalables descritas en esta divulgación. En este ejemplo, la unidad de generación de flujo de bits 42 es sustancialmente similar a la unidad de generación de flujo de bits 42 descrita anteriormente con respecto al ejemplo de la FIG. 18. Sin embargo, la unidad de generación de flujo de bits 42 realiza la tercera versión de las técnicas de codificación escalables para especificar tres capas 21A-21C en lugar de dos capas 21A y 21B. Además, la unidad de generación de flujo de bits escalable 1000 puede especificar indicaciones de que se especifican coeficientes de HOA ambientales codificados cero y dos señales nFG codificadas en la capa base 21A, indicaciones de que se especifican los coeficientes de HOA ambientales codificados cero y dos señales nFG codificadas en una primera capa de mejora 21B e indicaciones de que se especifican los coeficientes de HOA ambientales codificados en cero y dos señales nFG codificadas en una segunda capa de mejora 21C. A continuación, la unidad de generación de flujo de bits escalable 1000 puede especificar las dos señales nFG codificadas 61A y 61B con los dos vectores V[k] en primer plano codificados correspondientes 57A y 57B en la capa base 21A, las dos señales nFG codificadas 61C y 61D con las dos señales codificadas correspondientes los vectores V[k] en primer plano 57C y 57D en la primera capa de mejora 21B, y las dos señales nFG codificadas 61E y 61F con los dos vectores V[k] en primer plano codificados correspondientes 57E y 57F en la segunda capa de mejora 21C. A continuación, la unidad de generación de flujo de bits escalable 1000 puede generar estas capas como flujo de bits escalable 21.
[0227] La FIG. 23 es un diagrama que ilustra, con más detalle, la unidad de extracción 72 de la FIG. 4 cuando se configura para realizar la tercera de las posibles versiones de las técnicas de descodificación de audio escalables descritas en esta divulgación. En este ejemplo, la unidad de extracción de flujo de bits 72 es sustancialmente similar a la unidad de extracción de flujo de bits 72 descrita anteriormente con respecto al ejemplo de la FIG. 19. Sin embargo, la unidad de extracción de flujo de bits 72 realiza la tercera versión de las técnicas de codificación escalables con respecto a tres capas 21A-21C en lugar de dos capas 21A y 21B. Además, la unidad de extracción de flujo de bits escalable 1012 puede obtener indicaciones de que se especifican coeficientes de HOA ambientales codificados cero y dos señales nFG codificadas en la capa base 21A, indicaciones de que se especifican los coeficientes de HOA ambientales codificados cero y dos señales nFG codificadas en una primera capa 21B de mejora. e indicaciones de que se especifican los coeficientes de HOA ambientales codificados en cero y dos señales nFG codificadas en una segunda capa de mejora 21C. A continuación, la unidad de extracción de flujo de bits escalable 1012 puede obtener las dos señales nFG codificadas 61A y 61B con los dos vectores V[ft] en primer plano codificados correspondientes 57A y 57B de la capa base 21A, las dos señales nFG codificadas 61C y 61D con los dos vectores V[ft] en primer plano codificados correspondientes 57C y 57D de la primera capa de mejora 21B, y las dos señales nFG codificadas 61E y 61F con los dos vectores V[ft] en primer plano codificados correspondientes 57E y 57F de la segunda capa de mejora 21C. La unidad de extracción de flujo de bits escalable 1012 puede enviar las señales nFG codificadas 61 y los vectores V[ft] codificados en primer plano 57 a la unidad de descodificación basada en vectores 92.
[0228] La FIG. 24 es un diagrama que ilustra un tercer caso de uso mediante el cual un dispositivo de codificación de audio puede especificar múltiples capas en un flujo de bits de múltiples capas de acuerdo con las técnicas descritas en esta divulgación. Por ejemplo, la unidad de generación de flujo de bits 42 de la FIG. 22 puede especificar el elemento de sintaxis NumLayer (que se muestra como "NumberOfLayers" para facilitar la comprensión) para indicar que el número de capas especificado en el flujo de bits 21 es tres. La unidad de generación de flujo de bits 42 puede especificar además que el número de canales de fondo especificados en la primera capa (que también se conoce como la "capa base") es cero mientras que el número de canales en primer plano especificados en la primera capa es dos (es decir, Bi = 0, Fi = 2 en el ejemplo de la FIG. 24). En otras palabras, la capa base no siempre proporciona solo el transporte de coeficientes de HOA ambientales, sino que puede permitir la especificación de señales de audio de HOA predominantes o, en otras palabras, en primer plano.
[0229] Estos dos canales de audio en primer plano se indican como las señales nFG codificadas 61A/B y los vectores V[k] codificados en primer plano 57A/B y pueden representarse matemáticamente mediante la siguiente ecuación:
Figure imgf000045_0001
El H f'251:2 indica los dos canales de audio en primer plano, que pueden estar representados por el primer y segundo objetos de audio (USi y US2) junto con los vectores V correspondientes (Vi y V2).
[0230] El dispositivo de generación de flujo de bits 42 puede especificar además que el número de canales de fondo especificados en la segunda capa (que también se conoce como la "capa de mejora") es cero mientras que el número de canales en primer plano especificados en la segunda capa es dos (es decir, B2 = 0, F2 = 2 en el ejemplo de la FIG. 24). Estos dos canales de audio en primer plano se indican como las señales nFG codificadas 61C/D y los vectores V[k] en primer plano codificados 57C/D y pueden representarse matemáticamente mediante la siguiente ecuación:
Figure imgf000045_0002
El H 1G53:4 indica los dos canales de audio en primer plano, que pueden estar representados por el tercer y cuarto objetos de audio (US3 y US4) junto con los vectores V correspondientes (V3 y V4).
[0231] Además, la unidad de generación de flujo de bits 42 puede especificar que el número de canales de fondo especificados en la tercera capa (que también se conoce como la "capa de mejora") es cero mientras que el número de canales en primer plano especificados en la tercera capa es dos (es decir, B3 = 0, F3 = 2 en el ejemplo de la FIG. 24). Estos dos canales de audio en primer plano se indican como canales de audio en primer plano 1024 y se pueden representar matemáticamente mediante la siguiente ecuación:
Figure imgf000045_0003
El h FG255:6 indica los dos canales de audio en primer plano 1024, que pueden estar representados por el quinto y sexto objeto de audio (US5 y USe) junto con los vectores V correspondientes (V5 y Ve). Sin embargo, la unidad de generación de flujo de bits 42 puede no señalar necesariamente esta información de canal de fondo y en primer plano de la tercera capa cuando el número total de canales en primer plano y de fondo ya se conoce en el descodificador (por ejemplo, por medio de elementos de sintaxis adicionales, como totalNumBGchannels y totalNumFGchannels). Sin embargo, la unidad de generación de flujo de bits 42 puede no señalar la información del canal de fondo y en primer plano de la tercera capa cuando el número total de canales en primer plano y de fondo ya se conoce en el descodificador (por ejemplo, mediante elementos de sintaxis adicionales, como totalNumBGchannels y totalNumFGchannels).
[0232] La unidad de generación de flujo de bits 42 puede especificar estos valores Bi y Fi como NumBGchannels[i] y NumFGchannels[i]. Para el ejemplo anterior, el dispositivo de codificación de audio 20 puede especificar el elemento de sintaxis NumBGchannels como {0, 0, 0} y el elemento de sintaxis NumFGchannels como {2, 2, 2}. El dispositivo de codificación de audio 20 también puede especificar los canales HOA en primer plano 1020-1024 en el flujo de bits 21.
[0233] El dispositivo de descodificación de audio 24 mostrado en los ejemplos de las FIGS. 2 y 4 puede funcionar de una manera recíproca a la del dispositivo de codificación de audio 20 para analizar, como se describió anteriormente con respecto a la unidad de extracción de flujo de bits 72 de la FIG. 23, estos elementos de sintaxis del flujo de bits (por ejemplo, como se establece en la tabla de sintaxis HOADecoderConfig anterior). El dispositivo de descodificación de audio 24 también puede analizar, de nuevo como se describió anteriormente con respecto a la unidad de extracción de flujo de bits 72 de la FIG. 23, los correspondientes canales de audio de HOA en primer plano 1020-1024 del flujo de bits 21 de acuerdo con los elementos de sintaxis analizados y reconstruir los coeficientes de HOA1026 mediante la suma de los canales de audio de HOA en primer plano 1020-1024.
[0234] La FIG. 25 es un diagrama conceptual de un ejemplo en el que los elementos de sintaxis indican que hay tres capas con dos señales nFG codificadas especificadas en una capa base, dos señales nFG codificadas se especifican en una primera capa de mejora y dos señales nFG codificadas se especifican en una segunda capa de mejora. El ejemplo de la FIG. 25 muestra la trama de HOA en cuanto a que la unidad de generación de flujo de bits escalable 1000 mostrada en el ejemplo de la FIG. 22 puede segmentar la trama para formar la capa base que incluye datos de corrección de ganancia de HOA de banda lateral para las señales nFG codificadas 61A y 61B y dos vectores V[ft] en primer plano codificados 57. La unidad de generación de flujo de bits escalable 1000 también puede segmentar la trama de HOA para formar una capa de mejora 21B que incluye los dos vectores V[ft] en primer plano codificados 57 y los datos de corrección de ganancia de HOA para las señales nFG ambientales codificadas 61 y una capa de mejora 21C que incluye los dos vectores V[ft] en primer plano codificados adicionales 57 y los datos de corrección de ganancia de HOA para las señales nFG ambientales codificadas 61.
[0235] Como se muestra además en el ejemplo de la FIG. 25, la unidad de codificación de audio psicoacústico 40 se muestra dividida en instancias separadas del codificador 40A de audio psicoacústico, que pueden denominarse codificadores 40A temporales de capa base, y codificadores 40B de audio psicoacústico, que pueden denominarse codificadores 40B temporales de capa de mejora. Los codificadores temporales de la capa base 40A representan dos instanciaciones de codificadores de audio psicoacústicos que procesan los cuatro componentes de la capa base. Los codificadores temporales de la capa de mejora 40B representan cuatro instancias de codificadores de audio psicoacústicos que procesan los dos componentes de la capa de mejora.
[0236] La FIG. 26 es un diagrama que ilustra un tercer caso de uso mediante el cual un dispositivo de codificación de audio puede especificar múltiples capas en un flujo de bits de múltiples capas de acuerdo con las técnicas descritas en esta divulgación. Por ejemplo, el dispositivo de codificación de audio 20 mostrado en el ejemplo de las FIGS. 2 y 3 puede especificar el elemento de sintaxis NumLayer (que se muestra como "NumberOfLayers" para facilitar la comprensión) para indicar que el número de capas especificado en el flujo de bits 21 es cuatro. El dispositivo de codificación de audio 20 puede especificar además que el número de canales de fondo especificados en la primera capa (que también se conoce como la "capa base") es uno mientras que el número de canales en primer plano especificado en la primera capa es cero (es decir, Bi = 1, Fi = 0 en el ejemplo de la FIG. 26).
[0237] El dispositivo de codificación de audio 20 puede especificar además que el número de canales de fondo especificado en la segunda capa (que también se conoce como una "primera capa de mejora") es uno mientras que el número de canales en primer plano especificado en la segunda capa es cero (es decir, B2 = 1, F2 = 0 en el ejemplo de la FIG. 26). El dispositivo de codificación de audio 20 también puede especificar que el número de canales de fondo especificados en la tercera capa (que también se conoce como una "segunda capa de mejora") es uno mientras que el número de canales en primer plano especificado en la tercera capa es cero (es decir, B3 = 1, F3 = 0 en el ejemplo de la FIG. 26). Además, el dispositivo de codificación de audio 20 puede especificar que el número de canales de fondo especificado en la cuarta capa (que también se conoce como la "capa de mejora") es uno mientras que el número de canales en primer plano especificado en la tercera capa es cero (es decir, B4 = 1, F4 = 0 en el ejemplo de la FIG. 26). Sin embargo, es posible que el dispositivo de codificación de audio 20 no indique necesariamente la información del canal de fondo y en primer plano de la cuarta capa cuando el número total de canales en primer plano y de fondo ya se conoce en el descodificador (por ejemplo, mediante elementos de sintaxis adicionales, como totalNumBGchannels y totalNumFGchannels).
[0238] El dispositivo de codificación de audio 20 puede especificar estos valores Bi y Fi como NumBGchannels[i]y NumFGchannels[i]. Para el ejemplo anterior, el dispositivo de codificación de audio 20 puede especificar el elemento de sintaxis NumBGchannels como {1, 1, 1, 1} y el elemento de sintaxis NumFGchannels como {0, 0, 0, 0}. El dispositivo de codificación de audio 20 también puede especificar los canales de audio de HOA de fondo 1030 en el flujo de bits 21. A este respecto, las técnicas pueden permitir que las capas de mejora especifiquen el ambiente o, en otras palabras, los canales 1030 de HOA de fondo, que pueden haber sido descorrelacionados antes de ser especificados en las capas base y de mejora del flujo de bits 21 como se describió anteriormente con respecto a los ejemplos de las FIGS. 7A-9B. Sin embargo, de nuevo, las técnicas expuestas en esta divulgación no se limitan necesariamente a la descorrelación y pueden no proporcionar elementos de sintaxis o cualquier otra indicación en el flujo de bits relevante para la descorrelación como se describe anteriormente.
[0239] El dispositivo de descodificación de audio 24 mostrado en los ejemplos de las FIGS. 2 y 4 pueden funcionar de una manera recíproca a la del dispositivo de codificación de audio 20 para analizar estos elementos de sintaxis del flujo de bits (por ejemplo, como se establece en la tabla de sintaxis de HOADecoderConfig anterior). El dispositivo de descodificación de audio 24 también puede analizar los correspondientes canales de audio de HOA de fondo 1030 del flujo de bits 21 de acuerdo con los elementos de sintaxis analizados.
[0240] Como se indicó anteriormente, en algunos casos, el flujo de bits escalable 21 puede incluir varias capas que se ajustan al flujo de bits no escalable 21. Por ejemplo, el flujo de bits escalable 21 puede incluir una capa base que se ajuste al flujo de bits no escalable 21. En estos casos, el flujo de bits no escalable 21 puede representar un subflujo de bits del flujo de bits escalable 21, donde este subflujo de bits no escalable 21 puede mejorarse con capas adicionales del flujo de bits escalable 21 (que se denominan capas de mejora).
[0241] Las FIGS. 27 y 28 son diagramas de bloques que ilustran una unidad de generación de flujo de bits 42 escalable y una unidad de extracción de flujo de bits 72 escalable que pueden configurarse para realizar varios aspectos de las técnicas descritas en esta divulgación. En el ejemplo de la FIG. 27, la unidad de generación de flujo de bits 42 escalable puede representar un ejemplo de la unidad de generación de flujo de bits 42 descrita anteriormente con respecto al ejemplo de la FIG. 3. La unidad de generación de flujo de bits 42 escalable puede generar una capa base 21 que se ajuste (en términos de sintaxis y capacidad para ser descodificada por descodificadores de audio que no soportan codificación escalable) a un flujo de bits no escalable 21. La unidad de generación de flujo de bits 42 escalable puede funcionar de las formas descritas anteriormente con respecto a cualquiera de las unidades 42 de generación de flujo de bits anteriores, excepto que la unidad de generación de flujo de bits 42 escalable no incluye una unidad 1002 de generación de flujo de bits no escalable. En cambio, la unidad de generación de flujo de bits 42 escalable genera una capa base 21 que se ajusta a un flujo de bits no escalable y, como tal, no requiere una unidad 1000 de generación de flujo de bits no escalable separada. En el ejemplo de la FIG. 28, la unidad de extracción de flujo de bits escalable 72 puede funcionar recíprocamente a la unidad de generación de flujo de bits escalable 42.
[0242] La FIG. 29 representa un diagrama conceptual que representa un codificador 900 que puede configurarse para funcionar de acuerdo con varios aspectos de las técnicas descritas en esta divulgación. El codificador 900 puede representar otro ejemplo del dispositivo de codificación de audio 20. El codificador 900 puede incluir una unidad de descomposición espacial 902, una unidad de descorrelación 904 y una unidad de codificación temporal 906. La unidad de descomposición espacial 902 puede representar una unidad configurada para emitir los sonidos predominantes basados en vectores (en la forma de los objetos de audio indicados anteriormente), los vectores V correspondientes asociados con estos sonidos predominantes basados en vectores y los coeficientes 903 de HOA ambientales horizontales. La unidad de descomposición espacial 902 puede diferir de una descomposición basada en la dirección en que los vectores V describen tanto la dirección como el ancho del correspondiente de los objetos de audio a medida que cada objeto de audio se mueve a lo largo del tiempo dentro del campo de sonido.
[0243] La unidad de descomposición espacial 902 puede incluir las unidades 30-38 y 44-52 de la unidad de síntesis basada en vectores 27 mostrada en el ejemplo de la FIG. 3 y en general funcionan de la manera descrita anteriormente con respecto a las unidades 30-38 y 44-52. La unidad de descomposición espacial 902 puede diferir de la unidad de síntesis basada en vectores 27 en que la unidad de descomposición espacial 902 puede no realizar codificación psicoacústica o incluir de otro modo la unidad codificadora psicoacústica 40 y puede no incluir una unidad de generación de flujo de bits 42. Además, en el contexto de codificación de audio escalable, la unidad de descomposición espacial 902 puede pasar a través de los coeficientes de HOA ambientales horizontales 903 (lo cual significa, en algunos ejemplos, que estos coeficientes de HOA horizontales pueden no modificarse o ajustarse de otro modo y se analizan a partir de los coeficientes de HOA901).
[0244] Los coeficientes de HOA ambientales horizontales 903 pueden hacer referencia a cualquiera de los coeficientes de HOA901 (que también pueden denominarse datos de audio de HOA901) que describen una componente horizontal del campo de sonido. Por ejemplo, los coeficientes de HOA ambientales horizontales 903 pueden incluir coeficientes de HOA asociados con una función de base esférica que tiene un orden de cero y un suborden de cero, coeficientes ambisónicos de orden superior correspondientes a una función de base esférica que tiene un orden de uno y un suborden de uno negativo, y coeficientes ambisónicos de tercer orden superior correspondientes a una función de base esférica que tiene un orden de uno y un suborden de uno.
[0245] La unidad de descorrelación 904 representa una unidad configurada para realizar la descorrelación con respecto a una primera capa de dos o más capas de los datos de audio ambisónico de orden superior 903 (donde los coeficientes de HOA ambientales 903 son un ejemplo de estos datos de audio de HOA) para obtener una representación descorrelacionada 905 de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior. La capa base 903 puede ser similar a cualquiera de las primeras capas, capas base o subcapas base descritas anteriormente con respecto a las FIGS. 21-26. La unidad de descorrelación 904 puede realizar la descorrelación utilizando la matriz UHJ o la matriz de modos antes indicada. La unidad de descorrelación 904 también puede realizar una descorrelación usando una transformación, como la rotación, de una manera similar a la descrita en la Solicitud de EE. UU con número de serie 14/192,829, titulada "TRAn SfORMING SPHERICAL HARMONIC COEFFICIENTS [TRANSFORMACIÓN DE COEFICIENTES ARMÓNICOS ESFÉRICOS]", presentada el 27 de febrero de 2014, excepto en que la rotación se realiza para obtener una representación descorrelacionada de la primera capa en lugar de reducir el número de coeficientes.
[0246] En otras palabras, la unidad de descorrelación 904 puede realizar una rotación del campo de sonido para alinear la energía de los coeficientes de HOA ambientales 903 a lo largo de tres ejes horizontales diferentes separados por 120 grados (tales como 0 grados azimutales/0 grados de elevación, 120 grados azimutales/0 grados de elevación y 240 grados azimutales/0 grados de elevación). Al alinear estas energías con los tres ejes horizontales, la unidad de descorrelación 904 puede intentar descorrelacionar las energías entre sí de modo que la unidad de descorrelación 904 pueda utilizar una transformación espacial para reproducir eficazmente tres canales 905 de audio de descorrelación. La unidad de descorrelación 904 puede aplicar esta transformación espacial para calcular las señales de audio espaciales 905 en los ángulos de azimut de 0 grados, 120 grados y 240 grados.
[0247] Aunque se describen con respecto a ángulos azimutales de 0 grados, 120 grados y 240 grados, las técnicas se pueden aplicar con respecto a tres ángulos azimutales cualesquiera que dividan uniformemente o casi uniformemente los 360 grados azimutales del círculo. Por ejemplo, las técnicas también se pueden realizar con respecto a una transformación que calcula las señales de audio espaciales 905 en los ángulos de azimut de 60 grados, 180 grados y 300 grados. Además, aunque se describen con respecto a tres coeficientes de HOA ambientales 901, las técnicas pueden realizarse de manera más general con respecto a cualquier coeficiente de HOA horizontal, incluidos los descritos anteriormente y cualquier otro coeficiente de HOA horizontal, como los asociados con una función de base esférica que tiene un orden de dos y suborden de dos, una función de base esférica que tiene un orden de dos y un suborden de dos negativos,..., una función de base esférica que tiene un orden de X y un suborden de X, y una función de base esférica que tiene un orden de X y un suborden de X negativo, donde X puede representar cualquier número, incluidos 3, 4, 5, 6, etc.
[0248] A medida que aumenta el número de coeficientes de HOA horizontales, puede aumentar el número de partes pares o casi pares del círculo de 360 grados. Por ejemplo, cuando el número de coeficientes de HOA horizontales aumenta a cinco, la unidad de descorrelación 904 puede segmentar el círculo en cinco particiones pares (por ejemplo, de aproximadamente 72 grados cada una). El número de coeficientes de HOA horizontales de X puede, como otro ejemplo, dar como resultado X particiones pares, teniendo cada partición 360 grados/X grados.
[0249] La unidad de descorrelación 904 puede, para identificar la información de rotación indicativa de la cantidad de rotación del campo de sonido representado por los coeficientes 903 de HOA ambientales horizontales, realizar un análisis de campo de sonido, análisis de características de contenido y/o análisis espacial. Basándose en uno o más de estos análisis, la unidad de descorrelación 904 puede identificar la información de rotación (u otra información de transformación de la cual la información de rotación es un ejemplo) como un número de grados para rotar horizontalmente el campo de sonido y rotar el campo de sonido, obteniendo efectivamente una representación rotada (que es un ejemplo de la representación transformada más general) de la capa base de los datos de audio ambisónico de orden superior.
[0250] A continuación, la unidad de descorrelación 904 puede aplicar una transformación espacial a la representación rotada de la capa base 903 (que también puede denominarse una primera capa 903 de dos o más capas) de los datos de audio ambisónico de orden superior. La transformación espacial puede convertir la representación rotada de la capa base de las dos o más capas de los datos de audio ambisónico de orden superior de un dominio armónico esférico a un dominio espacial para obtener una representación descorrelacionada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior. La representación de descorrelación de la primera capa puede incluir señales de audio espaciales 905 emitidas en los tres ángulos de azimut correspondientes de 0 grados, 120 grados y 240 grados, como se indicó anteriormente. A continuación, la unidad de descorrelación 904 puede pasar las señales 905 de audio espaciales ambiental horizontal a la unidad 906 de codificación temporal.
[0251] La unidad de codificación temporal 906 puede representar una unidad configurada para realizar codificación de audio psicoacústica. La unidad de codificación temporal 906 puede representar un codificador AAC o un codificador unificado de voz y audio (USAC) para proporcionar dos ejemplos. Las unidades de codificación de audio temporal, como la unidad de codificación temporal 906, pueden funcionar normalmente con respecto a datos de audio descorrelacionados, como los 6 canales de una configuración de altavoces 5.1, habiéndose convertido estos 6 canales en canales descorrelacionados. Sin embargo, los coeficientes 903 de HOA ambientales horizontales son de naturaleza aditiva y, por lo tanto, se correlacionan en cierto sentido. Proporcionar estos coeficientes de HOA ambientales horizontales 903 directamente a la unidad de codificación temporal 906 sin realizar primero alguna forma de descorrelación puede dar como resultado el desenmascaramiento del ruido espacial en el que los sonidos aparecen en ubicaciones no previstas. Estas distorsiones perceptuales, tales como el desenmascaramiento del ruido espacial, pueden reducirse realizando la descorrelación basada en transformación (o, más específicamente, basada en rotación en el ejemplo de la FIG. 29) descrita anteriormente.
[0252] La FIG. 30 es un diagrama de bloques que ilustra el codificador 900 mostrado en el ejemplo de la FIG. 27 con más detalle. En el ejemplo de la FIG. 30, el codificador 900 puede representar un codificador 900 de la capa base que codifica la capa base 903 solo horizontal de primer orden de HOA y no muestra la unidad 902 de descomposición espacial ya que esta unidad 902 no realiza, en este ejemplo de paso a través, operaciones significativas distintas de proporcionar la capa base 903 a una unidad de análisis de campo sonoro 910 y una unidad de rotación bidimensional (2D) 912 de la unidad de descorrelación 904.
[0253] Es decir, la unidad de descorrelación 904 incluye la unidad de análisis de campo de sonido 910 y la unidad de rotación 2D 912. La unidad de análisis de campo de sonido 910 representa una unidad configurada para realizar el análisis de campo de sonido descrito anteriormente con más detalle para obtener un parámetro de ángulo de rotación 911. El parámetro de ángulo de rotación 911 representa un ejemplo de información de transformación en forma de información de rotación. La unidad de rotación 2D 912 representa una unidad configurada para realizar una rotación horizontal alrededor del eje Z del campo de sonido basándose en el parámetro de ángulo de rotación 911. Esta rotación es bidimensional porque la rotación solo involucra un solo eje de rotación y no incluye ninguna, en este ejemplo, rotación de elevación. La unidad de rotación 2D 912 puede obtener información de rotación inversa 913 (invirtiendo, como un ejemplo, el parámetro de ángulo de rotación 911 para obtener el parámetro de ángulo de rotación inverso 913), que puede ser un ejemplo de información de transformación inversa más general. La unidad de rotación 2D 912 puede proporcionar el parámetro de ángulo de rotación inverso 913 de manera que el codificador 900 puede especificar el parámetro de ángulo de rotación inverso 913 en el flujo de bits.
[0254] En otras palabras, la unidad de rotación 2D 912 puede, basándose en el análisis del campo de sonido, rotar el campo de sonido 2D de modo que la energía predominante llegue potencialmente desde uno de los puntos de muestreo espacial utilizados en el módulo de transformada espacial 2D (0°, 120°, 240°). La unidad de rotación 2D 912 puede, como ejemplo, aplicar la siguiente matriz de rotación:
o o -0 sen (0)
Figure imgf000049_0001
0 cos(0).
En algunos ejemplos, la unidad de rotación 2D 912 puede, para evitar distorsiones de trama, aplicar una función de suavizado (interpolación) para asegurar una transición suave del ángulo de rotación variable en el tiempo. Esta función de suavizado puede comprender una función de suavizado lineal. Sin embargo, se pueden utilizar otras funciones de suavizado, incluidas funciones de suavizado no lineales. La unidad de rotación 2D 912 puede, por ejemplo, usar una función de suavizado de ranuras.
[0255] Para ilustrar, cuando el módulo de la unidad de análisis de campo de sonido 910 indica que la dirección dominante del campo de sonido está en un azimut de 70° dentro de una trama de análisis, la unidad de rotación 2D 912 puede rotar suavemente el campo de sonido y = -70° de modo que la dirección dominante sea ahora 0°. Como otra posibilidad, la unidad de rotación 2D 912 puede rotar el campo de sonido y = 50°, de modo que la dirección dominante sea ahora 120°. A continuación, la unidad de rotación 2D 912 puede señalar el ángulo de rotación aplicado 913 como un parámetro de banda lateral adicional dentro del flujo de bits, de modo que un descodificador pueda aplicar la operación de rotación inversa correcta.
[0256] Como se muestra además en el ejemplo de la FIG. 30, la unidad de descorrelación 904 también incluye una unidad 914 de transformación espacial 2D. La unidad de transformación espacial 2D 914 representa una unidad configurada para convertir la representación rotada de la capa base del dominio armónico esférico al dominio espacial, convirtiendo efectivamente la capa base rotada 915 en los tres ángulos azimutales (por ejemplo, 0, 120 y 240). La unidad de transformación espacial 2D 914 puede multiplicar los coeficientes de la capa base rotada 915 con la siguiente matriz de transformación, que asume el orden de coeficientes de HOA '00+711-711+' y normalización N3D:
1/3 0 0,384900179459750
1/3 1 /3 -0 ,192450089729875
.1/3 - 1 / 3 -0,192450089729875.
La matriz anterior calcula las señales de audio espaciales 905 en los ángulos de azimut 0°, 120° y 240°, de modo que el círculo de 360° se divide uniformemente en 3 partes. Como se indicó anteriormente, son posibles otras separaciones, siempre que cada parte cubra 120 grados, por ejemplo, calculando las señales espaciales a 60°, 180° y 300°.
[0257] De esta manera, las técnicas pueden proporcionar un dispositivo 900 configurado para realizar una codificación de datos de audio ambisónico de orden superior escalable. El dispositivo 900 puede configurarse para realizar una descorrelación con respecto a una primera capa 903 de dos o más capas de los datos de audio ambisónico de orden superior para obtener una representación 905 descorrelacionada de la primera capa de las dos o más capas del audio ambisónico de orden superior. datos.
[0258] En estos y otros casos, la primera capa 903 de las dos o más capas de datos de audio ambisónico de orden superior comprende coeficientes ambisónicos de orden superior ambientales correspondientes a una o más funciones de base esféricas que tienen un orden igual o menor que uno. En estos y otros casos, la primera capa 903 de las dos o más capas de datos de audio ambisónico de orden superior comprende coeficientes ambisónicos de orden superior ambientales que corresponden únicamente a funciones de base esférica descriptivas de aspectos horizontales del campo de sonido. En estos y otros casos, los coeficientes ambisónicos de orden superior ambientales que corresponden solo a funciones de base esférica descriptivas de los aspectos horizontales del campo sonoro pueden comprender coeficientes ambisónicos de orden superior ambientales en primer lugar correspondientes a una función de base esférica que tiene un orden de cero y un suborden de cero, coeficientes ambisónicos de segundo orden superior correspondientes a una función de base esférica que tiene un orden de uno y un suborden de uno negativo, y coeficientes ambisónicos de tercer orden superior correspondientes a una función de base esférica que tiene un orden de uno y un suborden de uno.
[0259] En estos y otros casos, el dispositivo 900 se puede configurar para realizar una transformación (por ejemplo, mediante la unidad de rotación 2D 912) con respecto a la primera capa 903 de los datos de audio ambisónico de orden superior.
[0260] En estos y otros casos, el dispositivo 900 se puede configurar para realizar una rotación (por ejemplo, mediante la unidad de rotación 2D 912) con respecto a la primera capa 903 de los datos de audio ambisónico de orden superior.
[0261] En estos y otros casos, el dispositivo 900 se puede configurar para aplicar una transformación (por ejemplo, mediante la unidad de rotación 2D 912) con respecto a la primera capa 903 de las dos o más capas de los datos de audio ambisónico de orden superior para obtener una representación transformada 915 de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior, y convertir la representación 915 transformada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior (por ejemplo, por medio de la unidad de transformación espacial 2D 914) de un dominio armónico esférico a un dominio espacial para obtener una representación 905 descorrelacionada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior.
[0262] En estos y otros casos, el dispositivo 900 puede configurarse para aplicar una rotación con respecto a la primera capa 903 de las dos o más capas de los datos de audio ambisónico de orden superior para obtener una representación rotada 915 de la primera capa de las dos o más capas de datos de audio ambisónico de orden superior, y convertir la representación rotada 915 de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior de un dominio armónico esférico a un dominio espacial para obtener una representación 905 descorrelacionada del primera capa de las dos o más capas de datos de audio ambisónico de orden superior.
[0263] En estos y otros casos, el dispositivo 900 puede configurarse para obtener información de transformación 911, aplicar una transformación con respecto a la primera capa 903 de las dos o más capas de los datos de audio ambisónico de orden superior basándose en la información de transformación 911 para obtener una la representación transformada 915 de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior, y convertir la representación 915 transformada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior de un dominio armónico esférico a un dominio espacial para obtener una representación 905 descorrelacionada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior.
[0264] En estos y otros casos, el dispositivo 900 puede configurarse para obtener información de rotación 911 y aplicar una rotación con respecto a la primera capa 903 de las dos o más capas de datos de audio ambisónico de orden superior basándose en la información de rotación 911 para obtener una representación rotada 915 de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior, y convertir la representación rotada 915 de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior de un dominio armónico esférico a un dominio espacial para obtener una representación 905 descorrelacionada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior.
[0265] En estos y otros casos, el dispositivo 900 puede configurarse para aplicar una transformación con respecto a la primera capa 903 de las dos o más capas de los datos de audio ambisónico de orden superior usando al menos en parte una función de suavizado para obtener una representación transformada 915 de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior, y convertir la representación transformada 915 de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior de un dominio armónico esférico a un dominio espacial para obtener una representación 905 descorrelacionada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior.
[0266] En estos y otros casos, el dispositivo 900 puede configurarse para aplicar una rotación con respecto a la primera capa 903 de las dos o más capas de los datos de audio ambisónico de orden superior usando al menos en parte una función de suavizado para obtener una representación rotada 915 de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior, y convertir la representación rotada 915 de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior de un dominio armónico esférico a un dominio espacial para obtener una representación descorrelacionada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior.
[0267] En estos y otros casos, el dispositivo 900 puede configurarse para especificar una indicación de la función de suavizado que se utilizará cuando se aplique una transformación inversa o una rotación inversa.
[0268] En estos y otros casos, el dispositivo 900 puede configurarse además para aplicar una transformada lineal invertible a los datos de audio ambisónico de orden superior para obtener un vector V, y especificar el vector V como una segunda capa de las dos o más capas de los datos de audio ambisónico de orden superior, como se describió anteriormente con respecto a la FIG. 3.
[0269] En estos y otros casos, el dispositivo 900 puede configurarse además para obtener coeficientes ambisónicos de orden superior asociados con una función de base esférica que tiene un orden de uno y un suborden de cero, y especificar los coeficientes ambisónicos de orden superior como una segunda capa de las dos o más capas de los datos de audio ambisónico de orden superior.
[0270] En estos y otros casos, el dispositivo 900 puede configurarse además para realizar una codificación temporal con respecto a la representación descorrelacionada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior.
[0271] La FIG. 31 es un diagrama de bloques que ilustra un descodificador de audio 920 que puede configurarse para funcionar de acuerdo con diversos aspectos de las técnicas descritas en esta divulgación. El descodificador 920 puede representar otro ejemplo del dispositivo de descodificación de audio 24 mostrado en el ejemplo de la FIG. 2 en términos de reconstruir los coeficientes de HOA, reconstruir vectores V de las capas de mejora, realizar descodificación de audio temporal (como lo realiza una unidad de descodificación de audio temporal 922), etc. Sin embargo, el descodificador 920 difiere en que el descodificador 920 funcionar con respecto a datos de audio ambisónico de orden superior codificados escalables como se especifica en el flujo de bits.
[0272] Como se muestra en el ejemplo de la FIG. 31, el descodificador de audio 920 incluye una unidad de descodificación temporal 922, una unidad de transformación espacial 2D inversa 924, una unidad de reproducción de capa base 928 y una unidad de procesamiento de capa de mejora 930. La unidad de descodificación temporal 922 puede configurarse para funcionar de una manera recíproca a la de la unidad de codificación temporal 906. La unidad de transformación espacial 2D inversa 924 puede representar una unidad configurada para funcionar de manera recíproca a la de la unidad 914 de transformación espacial 2D.
[0273] En otras palabras, la unidad de transformación espacial 2D inversa 924 puede configurarse para aplicar la matriz de abajo a las señales de audio espaciales 905 para obtener los coeficientes de HOA ambientales horizontales rotados 915 (que también pueden denominarse "la capa base rotada 915"). La unidad de transformación espacial 2D inversa 924 puede transformar las 3 señales de audio transmitidas 905 de nuevo en el dominio HOA utilizando la siguiente matriz de transformación, que como la matriz anterior asume el orden de coeficientes de HOA '00+', '11-', '11+' y normalización N3D:
Figure imgf000051_0001
La matriz anterior es la inversa de la matriz de transformación utilizada en el descodificador.
[0274] La unidad de rotación 2D inversa 926 puede configurarse para funcionar de una manera recíproca a la descrita anteriormente con respecto a la unidad de rotación 2D 912. A este respecto, la unidad de rotación 2D 912 puede realizar una rotación de acuerdo con la matriz de rotación indicada anteriormente basándose en el parámetro de ángulo de rotación inverso 913 en lugar del parámetro de ángulo de rotación 911. En otras palabras, la unidad de rotación inversa 926 puede, basándose en la rotación señalizada 9, aplicar la siguiente matriz, que nuevamente asume el orden de coeficientes de HOA '00+', '11-', '11+' y normalización N3D:
1 0 0
eos (0) 0 sen(0)
sen(0) 0 cos(0)_
La unidad de rotación 2D inversa 926 puede utilizar la misma función de suavizado (interpolación) utilizada en el descodificador para asegurar una transición suave para el ángulo de rotación variable en el tiempo, que puede indicarse en el flujo de bits o configurarse a priori.
[0275] La unidad de renderización de la capa base 928 puede representar una unidad configurada para renderizar los coeficientes de HOA ambientales solo horizontales de la capa base a las alimentaciones de los altavoces. La unidad de procesamiento de la capa de mejora 930 puede representar una unidad configurada para realizar un procesamiento adicional de la capa base con cualquier capa de mejora recibida (descodificada a través de una ruta de descodificación de la capa de mejora separada que involucra gran parte de la descodificación descrita anteriormente con respecto a los coeficientes de HOA ambientales adicionales y los vectores V junto con los objetos de audio correspondientes a los vectores V) para renderizar las señales de los altavoces. La unidad de procesamiento de la capa de mejora 930 puede aumentar efectivamente la capa base para proporcionar una representación de mayor resolución del campo de sonido que puede proporcionar una experiencia de audio más inmersiva con sonidos que potencialmente se mueven de manera realista dentro del campo de sonido. La capa base puede ser similar a cualquiera de las primeras capas, capas base o subcapas base descritas anteriormente con respecto a las FIGS. 11 -13b . Las capas de mejora pueden ser similares a cualquiera de las segundas capas, capas de mejora o subcapas de mejora descritas anteriormente con respecto a las FIGS. 11-13B.
[0276] A este respecto, las técnicas proporcionan un dispositivo 920 configurado para realizar descodificación de datos de audio ambisónico de orden superior escalable. El dispositivo puede configurarse para obtener una representación descorrelacionada de una primera capa de dos o más capas de datos de audio ambisónico de orden superior (por ejemplo, señales de audio espaciales 905), con los datos de audio ambisónico de orden superior descriptivos de un campo de sonido. La representación descorrelacionada de la primera capa se descorrelaciona realizando una descorrelación con respecto a la primera capa de los datos de audio ambisónico de orden superior.
[0277] En algunos casos, la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior comprende coeficientes ambisónicos de orden superior ambientales correspondientes a una o más funciones de base esféricas que tienen un orden igual o menor que uno. En estos y otros casos, la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior comprende coeficientes ambisónicos de orden superior ambientales que corresponden únicamente a funciones de base esférica descriptivas de aspectos horizontales del campo sonoro. En estos y otros casos, los coeficientes ambisónicos de orden superior ambientales que corresponden solo a las funciones de base esférica descriptivas de los aspectos horizontales del campo sonoro comprenden coeficientes ambisónicos de orden superior ambientales en primer lugar correspondientes a una función de base esférica que tiene un orden de cero y un suborden de cero, coeficientes ambisónicos de segundo orden superior correspondientes a una función de base esférica que tiene un orden de uno y un suborden de uno negativo, y coeficientes ambisónicos de tercer orden superior correspondientes a una función de base esférica que tiene un orden de uno y un suborden de uno.
[0278] En estos y otros casos, la representación descorrelacionada de la primera capa se descorrelaciona realizando una transformación con respecto a la primera capa de los datos de audio ambisónico de orden superior, como se describió anteriormente con respecto al codificador 900.
[0279] En estos y otros casos, el dispositivo 920 puede configurarse para realizar una rotación (por ejemplo, mediante la unidad de rotación 2D inversa 926) con respecto a la primera capa de los datos de audio ambisónico de orden superior.
[0280] En estos y otros casos, el dispositivo 920 puede configurarse para grabar la representación descorrelacionada de la primera capa de dos o más capas de los datos de audio ambisónico de orden superior para obtener la primera capa de las dos o más capas de datos de audio ambisónico de orden superior como se describió anteriormente, por ejemplo, con respecto a la unidad de transformación espacial 2D inversa 924 y la unidad de rotación 2D inversa 926.
[0281] En estos y otros casos, el dispositivo 920 puede configurarse para convertir la representación 905 descorrelacionada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior de un dominio espacial a un dominio armónico esférico para obtener una representación 915 transformada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior, y aplicar una transformación inversa (por ejemplo, como se describe anteriormente con respecto a la unidad de rotación 2D inversa 926) con respecto a la representación transformada 915 de la primera capa de las dos o más capas de datos de audio ambisónico de orden superior para obtener la primera capa de las dos o más capas de datos de audio ambisónico de orden superior.
[0282] En estos y otros casos, el dispositivo 920 puede configurarse para convertir la representación 905 descorrelacionada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior de un dominio espacial a un dominio armónico esférico para obtener una representación 915 transformada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior, y aplicar una rotación inversa con respecto a la representación transformada 915 de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior para obtener la primera capa de las dos o más capas de datos de audio ambisónico de orden superior.
[0283] En estos y otros casos, el dispositivo 920 puede configurarse para convertir la representación 905 descorrelacionada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior de un dominio espacial a un dominio armónico esférico para obtener una representación 915 transformada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior, obtener información de transformación 913, y aplicar una transformación inversa con respecto a la representación transformada 915 de la primera capa de las dos o más capas de datos de audio ambisónico de orden superior basándose en la información de transformación 913 para obtener la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior.
[0284] En estos y otros casos, el dispositivo 920 puede configurarse para convertir la representación 905 descorrelacionada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior de un dominio espacial a un dominio armónico esférico para obtener una representación 915 transformada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior, obtener información de rotación 913, y aplicar una rotación inversa con respecto a la representación transformada 915 de la primera capa de las dos o más capas de datos de audio ambisónico de orden superior basándose en la información de rotación 913 para obtener la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior.
[0285] En estos y otros casos, el dispositivo 920 puede configurarse para convertir la representación 905 descorrelacionada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior de un dominio espacial a un dominio armónico esférico para obtener una representación 915 transformada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior, y aplicar una transformación inversa con respecto a la representación transformada 915 de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior usando, en al menos en parte, una función de suavizado para obtener la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior.
[0286] En estos y otros casos, el dispositivo 920 puede configurarse para convertir la representación 905 descorrelacionada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior de un dominio espacial a un dominio armónico esférico para obtener una representación 915 transformada de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior, y aplicar una rotación inversa con respecto a la representación transformada 915 de la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior usando, en al menos en parte, una función de suavizado para obtener la primera capa de las dos o más capas de los datos de audio ambisónico de orden superior.
[0287] En estos y otros casos, el dispositivo 920 puede configurarse además para obtener una indicación de la función de suavizado que se utilizará al aplicar la transformación inversa o la rotación inversa.
[0288] En estos y otros casos, el dispositivo 920 puede configurarse además para obtener una representación de una segunda capa de las dos o más capas de los datos de audio ambisónico de orden superior, donde la representación de la segunda capa comprende datos de audio predominantes basados en vectores, los datos de audio predominantes basados en vectores comprenden al menos un dato de audio predominante y un vector V codificado, y el vector V codificado se descompone de los datos de audio ambisónico de orden superior mediante la aplicación de una transformada lineal invertible, como se describe anteriormente con el ejemplo de la FIG. 3.
[0289] En estos y otros casos, el dispositivo 920 puede configurarse además para obtener una representación de una segunda capa de las dos o más capas de los datos de audio ambisónico de orden superior, donde la representación de la segunda capa comprende coeficientes ambisónicos de orden superior asociados con una función de base esférica que tiene un orden de uno y un suborden de cero.
[0290] Las técnicas anteriores pueden realizarse con respecto a cualquier cantidad de contextos y ecosistemas de audio diferentes. A continuación se describen varios contextos a modo de ejemplo, aunque las técnicas deberían limitarse a los contextos a modo de ejemplo. Un ecosistema a modo de ejemplo de audio puede incluir contenido de audio, estudios de cine, estudios de música, estudios de audio de juegos, contenido de audio basado en canales, motores de codificación, derivaciones de audio de juegos, motores de codificación/reproducción de audio de juegos y sistemas de suministro.
[0291] Los estudios de cine, los estudios de música y los estudios de audio de juegos pueden recibir contenido de audio. En algunos ejemplos, el contenido de audio puede representar el resultado de una adquisición. Los estudios de cine pueden emitir contenido de audio basado en canales (por ejemplo, en 2.0, 5.1 y 7.1), tal como utilizando una estación de trabajo de audio digital (DAW). Los estudios de música pueden emitir contenido de audio basado en canales (por ejemplo, en 2.0 y 5.1), tal como utilizando una DAW. En cualquier caso, los motores de codificación pueden recibir y codificar el contenido de audio basado en canales basándose en uno o más códecs (por ejemplo, AAC, AC3, Dolby True HD, Dolby Digital Plus y DTS Master Audio) para emitir por los sistemas de suministro. Los estudios de audio de juegos pueden emitir uno o más fragmentos de audio de juego, por ejemplo, mediante una DAW. Los motores de codificación/reproducción de audios de juego pueden codificar y/o reproducir las derivaciones de audio como contenido de audio basado en canales para su emisión por los sistemas de suministro. Otro ejemplo de contexto en el que se pueden realizar las técnicas comprende un ecosistema de audio que puede incluir grabación difundida de objetos de audio, sistemas de audio profesionales, captura de consumidores en el dispositivo, formato de audio de HOA, renderización en el dispositivo, audio del consumidor, televisión y accesorios, y sistemas de audio para el automóvil.
[0292] Los objetos de audio de grabación difundida, los sistemas de audio profesionales 320 y la captura de consumidores en el dispositivo pueden codificar todos sus resultados utilizando el formato de audio de HOA. De esta manera, el contenido de audio puede codificarse utilizando el formato de audio de HOA en una representación única que puede reproducirse utilizando la reproducción en dispositivo, el audio de consumidor, la televisión y accesorios y los sistemas de audio para automóviles. En otras palabras, la representación única del contenido de audio se puede reproducir en un sistema genérico de reproducción de audio (es decir, en lugar de requerir una configuración particular tal como 5.1,7.1, etc.), tal como un sistema de reproducción de audio 16.
[0293] Otros ejemplos de contexto en los que se pueden realizar las técnicas incluyen un ecosistema de audio que puede incluir elementos de adquisición y elementos de reproducción. Los elementos de adquisición pueden incluir dispositivos de adquisición alámbricos y/o inalámbricos (por ejemplo, micrófonos Figen), captura de sonido envolvente en dispositivo y dispositivos móviles (por ejemplo, teléfonos inteligentes y tablets). En algunos ejemplos, los dispositivos de adquisición alámbricos y/o inalámbricos pueden estar acoplados al dispositivo móvil mediante uno o más canales de comunicación alámbricos y/o inalámbricos.
[0294] De acuerdo con una o más técnicas de esta divulgación, el dispositivo móvil puede usarse para adquirir un campo sonoro. Por ejemplo, el dispositivo móvil puede adquirir un campo sonoro mediante dispositivos de adquisición alámbricos y/o inalámbricos y/o la captura de sonido envolvente en el dispositivo (por ejemplo, una pluralidad de micrófonos integrados en el dispositivo móvil). A continuación, el dispositivo móvil puede codificar el campo sonoro adquirido en los coeficientes de HOA para la reproducción por uno o más de los elementos de reproducción. Por ejemplo, un usuario del dispositivo móvil puede grabar (adquirir un campo sonoro de) un suceso en vivo (por ejemplo, una reunión, una conferencia, una obra de teatro, un concierto, etc.) y codificar la grabación en coeficientes de HOA.
[0295] El dispositivo móvil también puede usar uno o más de los elementos de reproducción para reproducir el campo sonoro codificado por HOA. Por ejemplo, el dispositivo móvil puede descodificar el campo sonoro codificado por HOA y emitir una señal a uno o más de los elementos de reproducción, que hace que los uno o más de los elementos de reproducción recreen el campo sonoro. Como ejemplo, el dispositivo móvil puede usar los canales de comunicación inalámbricos y/o inalámbricos para emitir la señal a uno o más altavoces (por ejemplo, matrices de altavoces, barras de sonido, etc.). Como otro ejemplo, el dispositivo móvil puede usar soluciones de acoplamiento para emitir la señal a una o más estaciones de acoplamiento y/o uno o más altavoces acoplados (por ejemplo, sistemas de sonido en coches inteligentes y/u hogares). Como otro ejemplo, el dispositivo móvil puede usar la reproducción de auriculares para emitir la señal a un conjunto de auriculares, por ejemplo, para crear un sonido binaural realista.
[0296] En algunos ejemplos, un dispositivo móvil particular puede adquirir un campo sonoro 3D y reproducir el mismo campo sonoro 3D en un momento posterior. En algunos ejemplos, el dispositivo móvil puede adquirir un campo sonoro 3D, codificar el campo sonoro 3D en HOA y transmitir el campo sonoro 3D codificado a otros uno o más dispositivos (por ejemplo, otros dispositivos móviles y/u otros dispositivos no móviles) para su reproducción.
[0297] Otro contexto más en el que las técnicas se pueden realizar incluye un ecosistema de audio que puede incluir contenido de audio, estudios de juegos, contenido de audio codificado, motores de reproducción y sistemas de suministro. En algunos ejemplos, los estudios de juego pueden incluir una o más DAW que pueden prestar soporte a la edición de señales de HOA. Por ejemplo, las una o más DAW pueden incluir acoples HOA y/o herramientas que pueden ser configuradas para funcionar con (por ejemplo, trabajar con) uno o más sistemas de audio de juegos. En algunos ejemplos, los estudios de juego pueden producir nuevos formatos de derivación que den soporte a HOA. En cualquier caso, los estudios de juego pueden emitir contenido de audio codificado a los motores de reproducción que pueden representar un campo sonoro para su reproducción mediante los sistemas de suministro.
[0298] Las técnicas también se pueden realizar con respecto a dispositivos a modo de ejemplo de adquisición de audio. Por ejemplo, las técnicas se pueden realizar con respecto a un micrófono Figen que puede incluir una pluralidad de micrófonos que están configurados colectivamente para grabar un campo sonoro 3D. En algunos ejemplos, la pluralidad de micrófonos del micrófono Figen puede estar situada en la superficie de una bola esencialmente esférica con un radio de aproximadamente 4 cm. En algunos ejemplos, el dispositivo de codificación de audio 20 puede estar integrado en el micrófono Figen a fin de emitir un flujo de bits 21 directamente desde el micrófono.
[0299] Otro contexto a modo de ejemplo de adquisición de audio puede incluir un camión de producción que puede configurarse para recibir una señal desde uno o más micrófonos, tal como uno o más micrófonos Figen. La línea producción también puede incluir un codificador de audio, tal como el codificador de audio 20 de la FIG. 3.
[0300] El dispositivo móvil puede incluir también, en algunos casos, una pluralidad de micrófonos que están configurados colectivamente para grabar un campo sonoro 3D. En otras palabras, la pluralidad de micrófonos puede tener diversidad X, Y, Z. En algunos ejemplos, el dispositivo móvil puede incluir un micrófono que puede ser girado para proporcionar diversidad X, Y, Z con respecto a otros uno o más micrófonos del dispositivo móvil. El dispositivo móvil también puede incluir un codificador de audio, tal como el codificador de audio 20 de la FIG. 3.
[0301] Un dispositivo de captura de vídeo robustecido puede configurarse adicionalmente para grabar un campo sonoro 3D. En algunos ejemplos, el dispositivo de captura de vídeo robustecido puede estar unido a un casco de un usuario que participa en una actividad. Por ejemplo, el dispositivo de captura de vídeo robustecido puede estar unido a un casco de un usuario que realiza descenso de ríos. De esta manera, el dispositivo de captura de vídeo robustecido puede capturar un campo sonoro 3D que representa la acción alrededor del usuario (por ejemplo, agua que se estrella detrás del usuario, otro navegante que habla delante del usuario, etc.).
[0302] Las técnicas también se pueden realizar con respecto a un dispositivo móvil mejorado accesorio, que se puede configurar para grabar un campo sonoro 3D. En algunos ejemplos, el dispositivo móvil puede ser similar a los dispositivos móviles analizados anteriormente, con la adición de uno o más accesorios. Por ejemplo, un micrófono Figen se puede unir al dispositivo móvil mencionado anteriormente para formar un dispositivo móvil mejorado accesorio. De esta manera, el dispositivo móvil mejorado accesorio puede capturar una versión del campo sonoro 3D de calidad superior que utilizando únicamente componentes de captura de sonido integrados en el dispositivo móvil mejorado accesorio.
[0303] Los dispositivos a modo de ejemplo de reproducción de audio que pueden llevar a cabo diversos aspectos de las técnicas descritas en esta divulgación se analizan adicionalmente a continuación. De acuerdo con una o más técnicas de esta divulgación, los altavoces y/o las barras de sonido pueden disponerse en cualquier configuración arbitraria mientras se sigue reproduciendo un campo sonoro 3D. Además, en algunos ejemplos, los dispositivos de reproducción de auriculares pueden estar acoplados a un descodificador 24 mediante una conexión por cable o bien inalámbrica. De acuerdo con una o más técnicas de esta divulgación, se puede usar una única representación genérica de un campo sonoro para reproducir el campo sonoro sobre cualquier combinación de altavoces, barras de sonido y dispositivos de reproducción de auriculares.
[0304] Un cierto número de diferentes entornos de reproducción de audio de ejemplo también pueden ser adecuados para realizar diversos aspectos de las técnicas descritas en esta divulgación. Por ejemplo, un entorno de reproducción de altavoces 5.1, un entorno de reproducción de altavoces 2.0 (por ejemplo, estéreo), un entorno de reproducción de altavoces 9.1 con altavoces frontales de altura completa, un entorno de reproducción de altavoces 22.2, un entorno de reproducción de altavoces 16.0, un entorno de reproducción de altavoces automotrices y un dispositivo móvil con entorno de reproducción por audífono pueden ser entornos adecuados para realizar diversos aspectos de las técnicas descritas en esta divulgación.
[0305] De acuerdo con una o más técnicas de esta divulgación, se puede usar una única representación genérica de un campo sonoro para representar el campo sonoro en cualquiera de los entornos de reproducción precedentes. Adicionalmente, las técnicas de esta divulgación permiten a un reproductor reproducir un campo sonoro a partir de una representación genérica para la reproducción en entornos de reproducción distintos al descrito anteriormente. Por ejemplo, si las consideraciones de diseño prohíben la colocación correcta de los altavoces de acuerdo con un entorno de reproducción de altavoces 7.1 (por ejemplo, si no es posible colocar un altavoz envolvente derecho), las técnicas de esta divulgación permiten que un reproductor compense con los otros 6 altavoces de modo que la reproducción se pueda lograr en un entorno de reproducción de altavoces 6.1.
[0306] Además, un usuario puede observar un juego deportivo mientras utiliza los auriculares. De acuerdo con una o más técnicas de esta divulgación, el campo sonoro 3D del juego deportivo puede ser adquirido (por ejemplo, uno o más micrófonos Figen pueden ser colocados en y/o alrededor del estadio de béisbol), los coeficientes de HOA correspondientes al campo sonoro 3D pueden obtenerse y transmitirse a un descodificador, el descodificador puede reconstruir el campo sonoro 3D basándose en los coeficientes de HOA y emitir el campo sonoro 3D reconstruido a un reproductor, el reproductor puede obtener una indicación en cuanto al tipo de entorno de reproducción (por ejemplo, los auriculares) y reproducir el campo sonoro 3D reconstruido en señales que hacen que los auriculares emitan una representación del campo sonoro 3D del juego deportivo.
[0307] En cada uno de los diversos casos descritos anteriormente, debería entenderse que el dispositivo de codificación de audio 20 puede realizar un procedimiento o comprender de otro modo medios para realizar cada etapa del procedimiento, para el cual el dispositivo de codificación de audio 20 está configurado, en algunos casos; estos medios pueden comprender uno o más procesadores. En algunos casos, los uno o más procesadores pueden representar un procesador de propósito especial configurado por medio de instrucciones almacenadas en un medio de almacenamiento no transitorio legible por ordenador. En otras palabras, varios aspectos de las técnicas en cada uno de los conjuntos de ejemplos de codificación pueden proporcionar un medio de almacenamiento no transitorio legible por ordenador que tiene almacenadas en el mismo instrucciones que, cuando se ejecutan, hacen que los uno o más procesadores realicen el procedimiento, para el cual el dispositivo de codificación de audio 20 ha sido configurado.
[0308] En uno o más ejemplos, las funciones descritas se pueden implementar en hardware, software, firmware o en cualquier combinación de los mismos. Si se implementan en software, las funciones se pueden almacenar en, o transmitir por, un medio legible por ordenador como una o más instrucciones o código, y ejecutar mediante una unidad de procesamiento basada en hardware. Los medios legibles por ordenador pueden incluir medios de almacenamiento legibles por ordenador, que correspondan a un medio tangible tal como medios de almacenamiento de datos. Los medios de almacenamiento de datos pueden ser cualquier medio disponible al que se pueda acceder desde uno o más ordenadores o uno o más procesadores para recuperar instrucciones, código y/o estructuras de datos para la implementación de las técnicas descritas en la presente divulgación. Un producto de programa informático puede incluir un medio legible por ordenador.
[0309] Análogamente, en cada uno de los diversos casos descritos anteriormente, debería entenderse que el dispositivo de descodificación de audio 24 puede realizar un procedimiento o comprender de otro modo medios para realizar cada etapa del procedimiento para realizar el cual está configurado el dispositivo de descodificación de audio 24. En algunos casos, estos medios pueden comprender uno o más procesadores. En algunos casos, los uno o más procesadores pueden representar un procesador de propósito especial configurado por medio de instrucciones almacenadas en un medio de almacenamiento no transitorio legible por ordenador. En otras palabras, varios aspectos de las técnicas en cada uno de los conjuntos de ejemplos de codificación pueden proporcionar un medio de almacenamiento no transitorio legible por ordenador que tiene almacenadas en él instrucciones que, cuando se ejecutan, hacen que uno o más procesadores realicen el procedimiento para realizar el cual el dispositivo de descodificación de audio 24 ha sido configurado.
[0310] A modo de ejemplo, y no de limitación, dichos medios de almacenamiento legibles por ordenador pueden comprender RAM, ROM, EEPROM, CD-ROM u otro almacenamiento en disco óptico, almacenamiento en disco magnético u otros dispositivos de almacenamiento magnético, memoria flash o cualquier otro medio que se pueda usar para almacenar el código de programa deseado en forma de instrucciones o estructuras de datos y al que se pueda acceder mediante un ordenador. Sin embargo, se deberá entender que los medios de almacenamiento legibles por ordenador y los medios de almacenamiento de datos no incluyen conexiones, ondas portadoras, señales u otros medios transitorios, sino que, en cambio, están dirigidos a medios de almacenamiento no transitorios tangibles. El término disco, como se usa en el presente documento, incluye disco compacto (CD), disco láser, disco óptico, disco versátil digital (DVD), disco flexible y disco Blu-ray, donde unos discos reproducen habitualmente los datos magnéticamente, mientras que otros discos reproducen datos ópticamente con láseres. Las combinaciones de lo anterior también se deben incluir dentro del alcance de los medios legibles por ordenador.
[0311] Uno o más procesadores, tales como uno o más procesadores de señales digitales (DSP), microprocesadores de propósito general, circuitos integrados específicos de la aplicación (ASIC), matrices lógicas programables in situ (FPGA) u otros circuitos lógicos integrados o discretos equivalentes pueden ejecutar instrucciones. En consecuencia, el término "procesador", como se usa en el presente documento, se puede referir a cualquiera de las estructuras anteriores o a cualquier otra estructura adecuada para la implementación de las técnicas descritas en el presente documento. Además, en algunos aspectos, la funcionalidad descrita en el presente documento se puede proporcionar dentro de módulos de hardware y/o de software dedicados configurados para codificar y descodificar, o incorporar en un códec combinado. Además, las técnicas se podrían implementar por completo en uno o más circuitos o elementos lógicos.
[0312] Las técnicas de la presente divulgación se pueden implementar en una amplia variedad de dispositivos o aparatos, incluyendo un teléfono inalámbrico, un circuito integrado (IC) o un conjunto de IC (por ejemplo, un conjunto de chips). En la presente divulgación se describen diversos componentes, módulos o unidades para destacar aspectos funcionales de dispositivos configurados para realizar las técnicas divulgadas, pero no se requiere necesariamente su realización mediante diferentes unidades de hardware. En su lugar, como se describe anteriormente, diversas unidades se pueden combinar en una unidad de hardware de códec o proporcionar mediante un grupo de unidades de hardware interoperativas, que incluya uno o más procesadores como se describe anteriormente, junto con software y/o firmware adecuados.

Claims (1)

  1. REIVINDICACIONES
    1. Un dispositivo configurado para descodificar un flujo de bits representativo de una señal de audio ambisónico de orden superior, comprendiendo el flujo de bits una pluralidad de capas jerárquicas que incluyen una capa base y una o más capas de mejora, comprendiendo el dispositivo:
    una memoria configurada para almacenar el flujo de bits representativo de la señal de audio ambisónico de orden superior; y
    uno o más procesadores configurados para:
    obtener, del flujo de bits (21), una indicación de un número total de canales (59A-D, 61A-B) especificados en el flujo de bits;
    obtener, a partir del flujo de bits, una indicación de un número de canales especificados en cada capa de la pluralidad de capas en el flujo de bits;
    obtener, del flujo de bits, para cada capa de la pluralidad de capas, una indicación del tipo de cada canal especificado en la capa, con la indicación del tipo de canal que indica si el canal es un canal en primer plano o un canal de fondo; y
    obtener los canales especificados en las capas del flujo de bits basándose en la indicación del número de canales especificados en cada una de las capas y la indicación para cada canal del tipo de canal y la indicación del número total de canales especificados en el flujo de bits, en el que las capas son jerárquicas de modo que la capa base se puede descodificar independientemente de una o más capas de mejora para proporcionar una primera representación de la señal de audio ambisónico de orden superior y la una o más capas de mejora contienen datos de audio ambisónico de orden superior adicionales que, cuando se descodifican en combinación con la capa base, proporcionan una representación de mayor resolución de la señal de audio ambisónico de orden superior,
    en el que los canales son canales de transporte ambisónicos de orden superior.
    2. El dispositivo según la reivindicación 1,
    en el que los procesadores están configurados además para obtener una indicación de un número de capas especificadas en el flujo de bits, y
    en el que los procesadores están configurados para obtener uno de los canales basándose en la indicación del número de canales especificados en cada una de las capas, la indicación del número total de canales especificados en el flujo de bits y la indicación del número de capas.
    3. El dispositivo según la reivindicación 2,
    en el que la indicación del número de capas comprende una indicación de un número de capas en una trama anterior del flujo de bits,
    en el que el uno o más procesadores se configuran además para obtener una indicación de si el número de canales especificados en capas en el flujo de bits ha cambiado en una trama actual en comparación con un número de canales especificados en capas en el flujo de bits de la trama anterior, y
    en el que los procesadores están configurados para obtener uno de los canales basándose en la indicación de si el número de canales especificados en capas en el flujo de bits ha cambiado en la trama actual. 4. El dispositivo según la reivindicación 2, en el que el uno o más procesadores están configurados además para determinar el número de canales especificados en las capas del flujo de bits en la trama actual como el mismo que el número de canales especificados en las capas del flujo de bits en la trama anterior cuando la indicación indica que el número de canales especificados en las capas del flujo de bits no ha cambiado en la trama actual en comparación con el número de canales especificados en las capas del flujo de bits en la trama anterior.
    5. El dispositivo según la reivindicación 2, en el que uno o más procesadores están configurados además para, cuando la indicación indica que el número de canales especificados en las capas del flujo de bits no ha cambiado en la trama actual en comparación con el número de canales especificados en el capas del flujo de bits en la trama anterior, obtener una indicación de un número actual de canales en una o más de las capas para que la trama actual sea la misma que un número anterior de canales en una o más de las capas de la trama anterior.
    6. El dispositivo según la reivindicación 1, que comprende además un altavoz configurado para reproducir un campo de sonido basándose en la señal de audio ambisónico de orden superior.
    7. El dispositivo según la reivindicación 1, en el que el dispositivo es uno de: un teléfono móvil, una tablet, un descodificador y un ordenador de escritorio.
    8. Un procedimiento para descodificar un flujo de bits representativo de una señal de audio ambisónico de orden superior, comprendiendo el flujo de bits una pluralidad de capas jerárquicas que incluyen una capa base y una o más capas de mejora, comprendiendo el procedimiento:
    obtener, a partir del flujo de bits (21) representativo de la señal de audio ambisónico de orden superior, una indicación de un número total de canales (59A-D, 61A-B) especificados en el flujo de bits; obtener, a partir del flujo de bits, una indicación de un número de canales especificados en cada capa de la pluralidad de capas en el flujo de bits;
    obtener, a partir del flujo de bits, para cada capa de la pluralidad de capas, una indicación del tipo de cada canal especificado en la capa, con la indicación del tipo de canal que indica si el canal es un canal en primer plano o un canal de fondo; y
    obtener los canales especificados en las capas en el flujo de bits basándose en la indicación del número de canales especificados en cada una de las capas y la indicación para cada canal del tipo de canal y la indicación del número total de canales especificados en el flujo de bits,
    en el que las capas son jerárquicas de modo que la capa base se puede descodificar independientemente de una o más capas de mejora para proporcionar una primera representación de la señal de audio ambisónico de orden superior y la una o más capas de mejora contienen datos de audio ambisónico de orden superior adicionales que, cuando se descodifican en combinación con la capa base, proporcionan una representación de mayor resolución de la señal de audio ambisónico de orden superior,
    en el que los canales son canales de transporte ambisónicos de orden superior.
    9. Un medio de almacenamiento legible por ordenador no transitorio que tiene almacenadas en el mismo instrucciones que, cuando se ejecutan, hacen que uno o más procesadores lleven a cabo un procedimiento de acuerdo con la reivindicación 8.
    10. Un dispositivo configurado para codificar una señal de audio ambisónico de orden superior para generar un flujo de bits, comprendiendo el flujo de bits una pluralidad de capas jerárquicas que incluyen una capa base y una o más capas de mejora, comprendiendo el dispositivo:
    uno o más procesadores configurados para:
    especificar, en el flujo de bits (21) representativo de la señal de audio ambisónico de orden superior, una indicación de un número total de canales (59A-D, 61A-B) especificados en el flujo de bits;
    especificar, en el flujo de bits, una indicación de un número de canales especificados en cada una de las capas del flujo de bits;
    especificar, en el flujo de bits, para cada capa de la pluralidad de capas, una indicación del tipo de cada canal especificado en la capa, con la indicación del tipo de canal que indica si el canal es un canal en primer plano o un canal de fondo; y
    especificar el número total indicado de canales en el flujo de bits de modo que cada una de las más capas incluya el número indicado de canales; y
    una memoria configurada para almacenar el flujo de bits,
    en el que las capas son jerárquicas de modo que la capa base se puede descodificar independientemente de una o más capas de mejora para proporcionar una primera representación de la señal de audio ambisónico de orden superior y la una o más capas de mejora contienen datos de audio ambisónico de orden superior adicionales que, cuando se descodifican en combinación con la capa base, proporcionan una representación de mayor resolución de la señal de audio ambisónico de orden superior,
    en el que los canales son canales de transporte ambisónicos de orden superior.
    11. El dispositivo según la reivindicación 10, en el que uno o más procesadores están configurados además para especificar una indicación, en el flujo de bits, de un número de capas especificadas en el flujo de bits.
    12. El dispositivo según la reivindicación 10, que comprende además un micrófono configurado para capturar la señal de audio ambisónica de orden superior.
    13. El dispositivo según la reivindicación 10, en el que el dispositivo es uno de: un teléfono móvil, una tablet y un ordenador de escritorio.
    14. Un procedimiento para codificar una señal de audio ambisónico de orden superior para generar un flujo de bits, comprendiendo el flujo de bits una pluralidad de capas jerárquicas que incluyen una capa base y una o más capas de mejora, comprendiendo el procedimiento:
    especificar, en el flujo de bits (21) representativo de la señal de audio ambisónico de orden superior, una indicación de un número total de canales (59A-D, 61A-B) especificados en el flujo de bits, especificar, en el flujo de bits, una indicación de un número de canales especificados en cada una de las capas del flujo de bits;
    especificar, en el flujo de bits, para cada capa de la pluralidad de capas, una indicación del tipo de cada canal especificado en la capa, con la indicación del tipo de canal que indica si el canal es un canal en primer plano o un canal de fondo; y
    especificar el número total indicado de los canales en el flujo de bits de modo que cada una de las capas incluya el número indicado de canales,
    en el que las capas son jerárquicas de modo que la capa base se puede descodificar independientemente de una o más capas de mejora para proporcionar una primera representación de la señal de audio ambisónico de orden superior y la una o más capas de mejora contienen datos de audio ambisónico de orden superior adicionales que, cuando se descodifican en combinación con la capa base, proporcionan una representación de mayor resolución de la señal de audio ambisónico de orden superior,
    en el que los canales son canales de transporte ambisónicos de orden superior.
    15. Un medio de almacenamiento legible por ordenador no transitorio que tiene almacenadas en el mismo instrucciones que, cuando se ejecutan, hacen que uno o más procesadores lleven a cabo un procedimiento de acuerdo con la reivindicación 14.
ES15788498T 2014-10-10 2015-10-09 Canales de señalización para codificación escalable de datos de audio ambisónico de orden superior Active ES2841419T3 (es)

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
US201462062584P 2014-10-10 2014-10-10
US201462084461P 2014-11-25 2014-11-25
US201462087209P 2014-12-03 2014-12-03
US201462088445P 2014-12-05 2014-12-05
US201562145960P 2015-04-10 2015-04-10
US201562175185P 2015-06-12 2015-06-12
US201562187799P 2015-07-01 2015-07-01
US201562209764P 2015-08-25 2015-08-25
US14/878,729 US9984693B2 (en) 2014-10-10 2015-10-08 Signaling channels for scalable coding of higher order ambisonic audio data
PCT/US2015/054951 WO2016057926A1 (en) 2014-10-10 2015-10-09 Signaling channels for scalable coding of higher order ambisonic audio data

Publications (1)

Publication Number Publication Date
ES2841419T3 true ES2841419T3 (es) 2021-07-08

Family

ID=54366497

Family Applications (1)

Application Number Title Priority Date Filing Date
ES15788498T Active ES2841419T3 (es) 2014-10-10 2015-10-09 Canales de señalización para codificación escalable de datos de audio ambisónico de orden superior

Country Status (13)

Country Link
US (1) US9984693B2 (es)
EP (1) EP3204942B1 (es)
JP (1) JP6549225B2 (es)
KR (1) KR102053508B1 (es)
CN (1) CN106796796B (es)
AU (1) AU2015330759B2 (es)
CA (1) CA2961292C (es)
CL (1) CL2017000822A1 (es)
CO (1) CO2017003348A2 (es)
ES (1) ES2841419T3 (es)
HU (1) HUE051376T2 (es)
SG (1) SG11201701626RA (es)
WO (1) WO2016057926A1 (es)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2922057A1 (en) 2014-03-21 2015-09-23 Thomson Licensing Method for compressing a Higher Order Ambisonics (HOA) signal, method for decompressing a compressed HOA signal, apparatus for compressing a HOA signal, and apparatus for decompressing a compressed HOA signal
KR20230156153A (ko) * 2014-03-24 2023-11-13 돌비 인터네셔널 에이비 고차 앰비소닉스 신호에 동적 범위 압축을 적용하는 방법 및 디바이스
US9736606B2 (en) 2014-08-01 2017-08-15 Qualcomm Incorporated Editing of higher-order ambisonic audio data
US10140996B2 (en) 2014-10-10 2018-11-27 Qualcomm Incorporated Signaling layers for scalable coding of higher order ambisonic audio data
US10241748B2 (en) * 2016-12-13 2019-03-26 EVA Automation, Inc. Schedule-based coordination of audio sources
US10405126B2 (en) * 2017-06-30 2019-09-03 Qualcomm Incorporated Mixed-order ambisonics (MOA) audio data for computer-mediated reality systems
WO2019197404A1 (en) 2018-04-11 2019-10-17 Dolby International Ab Methods, apparatus and systems for 6dof audio rendering and data representations and bitstream structures for 6dof audio rendering
US20200402521A1 (en) * 2019-06-24 2020-12-24 Qualcomm Incorporated Performing psychoacoustic audio coding based on operating conditions
CN110544484B (zh) * 2019-09-23 2021-12-21 中科超影(北京)传媒科技有限公司 高阶Ambisonic音频编解码方法及装置
US11430451B2 (en) * 2019-09-26 2022-08-30 Apple Inc. Layered coding of audio with discrete objects
US20240013793A1 (en) * 2020-12-02 2024-01-11 Dolby Laboratories Licensing Corporation Rotation of sound components for orientation-dependent coding schemes
US20220383881A1 (en) * 2021-05-27 2022-12-01 Qualcomm Incorporated Audio encoding based on link data
FR3136099A1 (fr) * 2022-05-30 2023-12-01 Orange Codage audio spatialisé avec adaptation d’un traitement de décorrélation

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020126759A1 (en) * 2001-01-10 2002-09-12 Wen-Hsiao Peng Method and apparatus for providing prediction mode fine granularity scalability
KR100571824B1 (ko) * 2003-11-26 2006-04-17 삼성전자주식회사 부가정보 삽입된 mpeg-4 오디오 bsac부호화/복호화 방법 및 장치
SE0400998D0 (sv) * 2004-04-16 2004-04-16 Cooding Technologies Sweden Ab Method for representing multi-channel audio signals
US8423372B2 (en) * 2004-08-26 2013-04-16 Sisvel International S.A. Processing of encoded signals
EP1881485A1 (en) 2006-07-18 2008-01-23 Deutsche Thomson-Brandt Gmbh Audio bitstream data structure arrangement of a lossy encoded signal together with lossless encoded extension data for said signal
CN101170590B (zh) * 2006-10-27 2011-04-27 华为技术有限公司 一种背景噪声的编码码流传输的方法、系统及装置
CN101578864A (zh) * 2006-12-22 2009-11-11 高通股份有限公司 增强层中的参考帧放置
US8032359B2 (en) * 2007-02-14 2011-10-04 Mindspeed Technologies, Inc. Embedded silence and background noise compression
US7885819B2 (en) * 2007-06-29 2011-02-08 Microsoft Corporation Bitstream syntax for multi-process audio decoding
WO2009067741A1 (en) * 2007-11-27 2009-06-04 Acouity Pty Ltd Bandwidth compression of parametric soundfield representations for transmission and storage
EP2154911A1 (en) * 2008-08-13 2010-02-17 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. An apparatus for determining a spatial output multi-channel audio signal
EP2374123B1 (fr) 2008-12-15 2019-04-10 Orange Codage perfectionne de signaux audionumeriques multicanaux
CN101556799B (zh) * 2009-05-14 2013-08-28 华为技术有限公司 一种音频解码方法和音频解码器
US20100324915A1 (en) * 2009-06-23 2010-12-23 Electronic And Telecommunications Research Institute Encoding and decoding apparatuses for high quality multi-channel audio codec
EP2469741A1 (en) * 2010-12-21 2012-06-27 Thomson Licensing Method and apparatus for encoding and decoding successive frames of an ambisonics representation of a 2- or 3-dimensional sound field
WO2013028393A1 (en) 2011-08-23 2013-02-28 Dolby Laboratories Licensing Corporation Method and system for generating a matrix-encoded two-channel audio signal
US9373334B2 (en) 2011-11-22 2016-06-21 Dolby Laboratories Licensing Corporation Method and system for generating an audio metadata quality score
EP2600343A1 (en) 2011-12-02 2013-06-05 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for merging geometry - based spatial audio coding streams
EP2829083B1 (en) 2012-03-23 2016-08-10 Dolby Laboratories Licensing Corporation System and method of speaker cluster design and rendering
US9288603B2 (en) * 2012-07-15 2016-03-15 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for backward-compatible audio coding
EP2688066A1 (en) 2012-07-16 2014-01-22 Thomson Licensing Method and apparatus for encoding multi-channel HOA audio signals for noise reduction, and method and apparatus for decoding multi-channel HOA audio signals for noise reduction
US9761229B2 (en) * 2012-07-20 2017-09-12 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for audio object clustering
US9479886B2 (en) * 2012-07-20 2016-10-25 Qualcomm Incorporated Scalable downmix design with feedback for object-based surround codec
WO2014046916A1 (en) 2012-09-21 2014-03-27 Dolby Laboratories Licensing Corporation Layered approach to spatial audio coding
WO2014052429A1 (en) 2012-09-27 2014-04-03 Dolby Laboratories Licensing Corporation Spatial multiplexing in a soundfield teleconferencing system
US9502044B2 (en) 2013-05-29 2016-11-22 Qualcomm Incorporated Compression of decomposed representations of a sound field
US9922656B2 (en) 2014-01-30 2018-03-20 Qualcomm Incorporated Transitioning of ambient higher-order ambisonic coefficients
WO2015140292A1 (en) 2014-03-21 2015-09-24 Thomson Licensing Method for compressing a higher order ambisonics (hoa) signal, method for decompressing a compressed hoa signal, apparatus for compressing a hoa signal, and apparatus for decompressing a compressed hoa signal
KR102428794B1 (ko) 2014-03-21 2022-08-04 돌비 인터네셔널 에이비 고차 앰비소닉스(hoa) 신호를 압축하는 방법, 압축된 hoa 신호를 압축 해제하는 방법, hoa 신호를 압축하기 위한 장치, 및 압축된 hoa 신호를 압축 해제하기 위한 장치
EP2922057A1 (en) 2014-03-21 2015-09-23 Thomson Licensing Method for compressing a Higher Order Ambisonics (HOA) signal, method for decompressing a compressed HOA signal, apparatus for compressing a HOA signal, and apparatus for decompressing a compressed HOA signal
US10140996B2 (en) 2014-10-10 2018-11-27 Qualcomm Incorporated Signaling layers for scalable coding of higher order ambisonic audio data

Also Published As

Publication number Publication date
US20160104494A1 (en) 2016-04-14
JP6549225B2 (ja) 2019-07-24
CN106796796A (zh) 2017-05-31
EP3204942A1 (en) 2017-08-16
JP2017534910A (ja) 2017-11-24
EP3204942B1 (en) 2020-09-23
KR102053508B1 (ko) 2019-12-06
HUE051376T2 (hu) 2021-03-01
AU2015330759B2 (en) 2020-08-27
CO2017003348A2 (es) 2017-09-29
WO2016057926A1 (en) 2016-04-14
US9984693B2 (en) 2018-05-29
CL2017000822A1 (es) 2018-04-06
CA2961292A1 (en) 2016-04-14
AU2015330759A1 (en) 2017-03-23
KR20170067758A (ko) 2017-06-16
BR112017007153A2 (pt) 2017-12-19
CA2961292C (en) 2022-03-15
SG11201701626RA (en) 2017-04-27
CN106796796B (zh) 2021-06-18

Similar Documents

Publication Publication Date Title
ES2841419T3 (es) Canales de señalización para codificación escalable de datos de audio ambisónico de orden superior
US11664035B2 (en) Spatial transformation of ambisonic audio data
ES2729624T3 (es) Reducción de la correlación entre canales de fondo ambisónicos de orden superior (HOA)
ES2774449T3 (es) Adaptación relacionada con pantalla de contenido de HOA
US20150332682A1 (en) Spatial relation coding for higher order ambisonic coefficients
BR112017007153B1 (pt) Canais de sinalização para codificação escalonável de dados de áudio ambisonic de ordem superior