ES2635327T3 - Compresión de las representaciones descompuestas de un campo sonoro - Google Patents

Compresión de las representaciones descompuestas de un campo sonoro Download PDF

Info

Publication number
ES2635327T3
ES2635327T3 ES14733873.5T ES14733873T ES2635327T3 ES 2635327 T3 ES2635327 T3 ES 2635327T3 ES 14733873 T ES14733873 T ES 14733873T ES 2635327 T3 ES2635327 T3 ES 2635327T3
Authority
ES
Spain
Prior art keywords
vectors
coefficients
matrix
vector
audio
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
ES14733873.5T
Other languages
English (en)
Inventor
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 ES2635327T3 publication Critical patent/ES2635327T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S5/00Pseudo-stereo systems, e.g. in which additional channel signals are derived from monophonic signals by means of phase shifting, time delay or reverberation 
    • H04S5/005Pseudo-stereo systems, e.g. in which additional channel signals are derived from monophonic signals by means of phase shifting, time delay or reverberation  of the pseudo five- or more-channel type, e.g. virtual surround
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • 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/002Dynamic bit allocation
    • 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/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0204Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using subband decomposition
    • 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/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/038Vector quantisation, e.g. TwinVQ audio
    • 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/06Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
    • 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
    • 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/18Vocoders using multiple modes
    • G10L19/20Vocoders using multiple modes using sound class specific coding, hybrid encoders or object based coding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/18Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being spectral information of each sub-band
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R5/00Stereophonic arrangements
    • 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 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/302Electronic adaptation of stereophonic sound system to listener position or orientation
    • H04S7/303Tracking of listener position or orientation
    • H04S7/304For headphones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/40Visual indication of stereophonic sound image
    • 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
    • G10L2019/0001Codebooks
    • 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
    • G10L2019/0001Codebooks
    • G10L2019/0004Design or structure of the codebook
    • G10L2019/0005Multi-stage vector quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2205/00Details of stereophonic arrangements covered by H04R5/00 but not provided for in any of its subgroups
    • H04R2205/021Aspects relating to docking-station type assemblies to obtain an acoustical effect, e.g. the type of connection to external loudspeakers or housings, frequency improvement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2400/00Details of stereophonic systems covered by H04S but not provided for in its groups
    • H04S2400/01Multi-channel, i.e. more than two input channels, sound reproduction with two speakers wherein the multi-channel information is substantially preserved
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2400/00Details of stereophonic systems covered by H04S but not provided for in its groups
    • H04S2400/15Aspects of sound capture and related signal processing for recording or reproduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2420/00Techniques used stereophonic systems covered by H04S but not provided for in its groups
    • H04S2420/01Enhancing the perception of the sound image or of the spatial distribution using head related transfer functions [HRTF's] or equivalents thereof, e.g. interaural time difference [ITD] or interaural level difference [ILD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2420/00Techniques used stereophonic systems covered by H04S but not provided for in its groups
    • H04S2420/03Application of parametric coding in stereophonic audio systems
    • 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)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Stereophonic System (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Complex Calculations (AREA)
  • General Health & Medical Sciences (AREA)
  • Otolaryngology (AREA)

Abstract

Procedimiento que comprende: obtener un primer conjunto distinto de cero de coeficientes de un vector 5 (717) representativo de un componente de primer plano de un campo sonoro, habiéndose descompuesto linealmente el vector a partir de una pluralidad de coeficientes armónicos esféricos que describen el campo sonoro; obtener uno de una pluralidad de modos de configuración (760) mediante los cuales extraer el conjunto de coeficientes distintos del cero del vector de acuerdo con uno de la pluralidad de modos de configuración, en el que uno de la pluralidad de modos de configuración indica que el conjunto distinto de cero de los coeficientes incluye todos los coeficientes; y extraer el conjunto distinto de cero de los coeficientes del vector (717) basándose en el modo obtenido de la pluralidad de modos de configuración.

Description

5
10
15
20
25
30
35
40
45
50
55
60
65
DESCRIPCION
Compresion de las representaciones descompuestas de un campo sonoro CAMPO TECNICO
Esta divulgacion se refiere a datos de audio y, mas especfficamente, a la compresion de datos de audio. ANTECEDENTES
Una senal ambisonica de orden superior (HOA) (a menudo representada por una pluralidad de coeficientes armonicos esfericos (SHC) u otros elementos jerarquicos) es una representacion tridimensional de un campo sonoro. Esta representacion de HOA o SHC puede representar este campo sonoro de una manera que es independiente de la geometrfa del altavoz local utilizado para reproducir una senal de audio multicanal producida a partir de esta senal SHC. Esta senal SHC tambien puede facilitar la compatibilidad hacia atras, ya que esta senal SHC puede reproducirse en formatos multicanal bien conocidos y altamente adoptados, tales como un formato de canal de audio 5.1 o un formato de canal de audio 7.1. La representacion SHC puede, por lo tanto, permitir una mejor representacion de un campo sonoro que tambien acomoda la compatibilidad hacia atras.
En el "Proyecto de redaccion RM1-HOA" de Deep Sen et al. (107a Reunion MPEG, San Jose (Grupo de Expertos en Pelfculas, ISO/IEC JTC1/SC29/WG11), documento n° m31827, 11 de enero de 2014) se divulgo el "Modelo de referencia 1" para la codificacion del contenido HOA en el estandar de audio 3D MPEG-H previsto. En el Anexo B del proyecto de redaccion RM1-HOA se describen las herramientas del codificador para convertir los parametros HOA en el flujo de bits.
RESUMEN
En general, se describen tecnicas para la compresion y descompresion de datos de audio ambisonicos de orden superior.
En un primer aspecto, un procedimiento comprende: obtener un primer conjunto diferente de cero de coeficientes de un vector que representa una componente de primer plano de un campo sonoro, habiendose descompuesto el vector a partir de una pluralidad de coeficientes armonicos esfericos que describen el campo sonoro; obtener un modo entre una pluralidad de modos de configuracion mediante los cuales extraer el conjunto de coeficientes diferente de cero del vector de acuerdo con un modo entre la pluralidad de modos de configuracion, en el que un modo entre la pluralidad de modos de configuracion indica que el conjunto distinto de cero de los coeficientes incluye todos los coeficientes; y extraer el conjunto diferente de cero de los coeficientes del vector basado en el modo obtenido entre la pluralidad de modos de configuracion.
En un modo de realizacion, el procedimiento comprende ademas extraer el primer conjunto diferente de cero de los coeficientes como una primera parte del vector.
En un modo de realizacion alternativa, el procedimiento comprende ademas extraer el primer conjunto distinto de cero del vector de la informacion de canal lateral; y obtener una version recompuesta de la pluralidad de coeficientes armonicos esfericos basandose en el primer conjunto diferente de cero de los coeficientes del vector.
En un modo de realizacion alternativa, el vector comprende un vector descompuesto linealmente a partir de la pluralidad de coeficientes armonicos esfericos usando una descomposicion lineal, preferentemente, una descomposicion en valores singulares.
En un modo de realizacion alternativa, la obtencion de un modo entre la pluralidad de modos de configuracion comprende obtener un modo entre la pluralidad de modos de configuracion basandose en un valor senalado en un flujo de bits.
Segun un segundo aspecto, se proporciona un dispositivo que comprende uno o mas procesadores configurados para: obtener un primer conjunto diferente de cero de coeficientes de un vector representativo de un componente de primer plano de un campo sonoro, habiendo sido el vector descompuesto linealmente a partir de una pluralidad de coeficientes armonicos esfericos que describen el campo sonoro; obtener un modo entre una pluralidad de modos de configuracion mediante los cuales extraer el conjunto de coeficientes distintos del cero del vector de acuerdo con un modo entre la pluralidad de modos de configuracion, en el que un modo entre la pluralidad de modos de configuracion indica que el conjunto distinto de cero de los coeficientes incluye todos los coeficientes; y extraer el conjunto diferente de cero de los coeficientes del vector basado en el modo obtenido entre la pluralidad de modos de configuracion.
5
10
15
20
25
30
35
40
45
50
55
60
65
En un modo de realizacion alternativa, uno o mas procesadores estan configurados adicionalmente para extraer el primer conjunto diferente de cero del vector a partir de informacion de canal lateral, y obtener una version recompuesta de la pluralidad de coeficientes armonicos esfericos basados en el primer conjunto diferente de cero de los coeficientes del vector.
En un modo de realizacion alternativa, el vector comprende un vector descompuesto linealmente a partir de la pluralidad de coeficientes armonicos esfericos usando una descomposicion lineal.
Preferentemente, la descomposicion lineal comprende una descomposicion en valores singulares.
En un modo de realizacion alternativa, uno o mas procesadores estan configurados para determinar un modo entre la pluralidad de modos de configuracion basandose en un valor senalado en un flujo de bits.
En otro aspecto, un medio de almacenamiento no transitorio legible por ordenador ha almacenado en el instrucciones que, cuando se ejecutan, hacen que uno o mas procesadores: obtengan un primer conjunto diferente de cero de coeficientes de un vector que representan un componente de primer plano de un campo sonoro, habiendose descompuesto el vector a partir de una pluralidad de coeficientes armonicos esfericos que describen el campo sonoro; obtengan un modo entre una pluralidad de modos de configuracion mediante los cuales extraer el conjunto diferente de cero de coeficientes del vector de acuerdo con uno entre la pluralidad de modos de configuracion, en el que un modo entre la pluralidad de modos de configuracion indica que el conjunto distinto de cero de los coeficientes incluye todos los coeficientes; y extraigan el conjunto diferente de cero de los coeficientes del vector basado en el modo obtenido entre la pluralidad de modos de configuracion.
Los detalles de uno o mas aspectos de la divulgacion se exponen en los dibujos adjuntos y la descripcion a continuacion. Otras caracterfsticas, objetivos y ventajas de la divulgacion seran evidentes a partir de la descripcion y dibujos, y a partir de las reivindicaciones.
BREVE DESCRIPCION DE LOS DIBUJOS
Las Figs. 1 y 2 son diagramas que ilustran funciones de base armonicas esfericas de varios ordenes y subordenes.
La Fig. 3 es un diagrama de bloques que ilustra un dispositivo que puede implementar una o mas tecnicas ejemplares descritas en esta divulgacion.
La Fig. 4 es un diagrama de bloques que ilustra, mas en detalle, un ejemplo del codificador de audio que se muestra en el ejemplo de la Fig. 3 que puede realizar diversos aspectos de las tecnicas descritas en esta divulgacion.
La Fig. 5 es un diagrama de bloques que ilustra el dispositivo de descodificacion de audio que se muestra en el ejemplo de la Fig. 3 con mayor detalle.
La Fig. 6 es un diagrama de flujo que ilustra el funcionamiento ejemplar de una unidad de analisis de contenido de un dispositivo de codificacion de audio en la realizacion de varios aspectos de las tecnicas descritas en esta divulgacion.
La Fig. 7 es un diagrama de flujo que ilustra el funcionamiento ejemplar de un dispositivo de codificacion de audio en la realizacion de diversos aspectos de las tecnicas de sfntesis basadas en vectores descritas en esta divulgacion.
La Fig. 8 es un diagrama de flujo que ilustra el funcionamiento ejemplar de un dispositivo de descodificacion de audio en la realizacion de varios aspectos de las tecnicas descritas en esta divulgacion.
Las Figs. 9A-9L son diagramas de bloques que ilustran diversos aspectos del dispositivo de codificacion de audio del ejemplo de la Fig. 4 con mayor detalle.
Las Figs. 10A-10O (ii) son diagramas que ilustran una parte de la informacion del canal de bits o del canal lateral que puede especificar los componentes espaciales comprimidos con mas detalle.
Las Figs. 11A a 11G son diagramas de bloques que ilustran, con mas detalle, varias unidades del dispositivo de descodificacion de audio mostrado en el ejemplo de la Fig. 5.
La Fig. 12 es un diagrama de bloques que ilustra un ecosistema de audio ejemplar que puede realizar diferentes aspectos de las tecnicas descritas en esta divulgacion.
5
10
15
20
25
30
35
40
45
50
55
60
65
La Fig. 13 es un diagrama de bloques que ilustra un ejemplo del ecosistema de audio de la Fig. 12 con mayor detalle.
La Fig. 14 es un diagrama de bloques que ilustra un ejemplo del ecosistema de audio de la Fig. 12 con mayor detalle.
Las Figs. 15A y 15B son diagramas que ilustran otros ejemplos del ecosistema de audio de la Fig. 12 con mayor detalle.
La Fig. 16 es un diagrama de bloques que ilustra un dispositivo de codificacion de video ejemplar que puede realizar diferentes aspectos de las tecnicas descritas en esta divulgacion.
La Fig. 17 es un diagrama de bloques que ilustra un ejemplo del dispositivo de codificacion de audio de la Fig. 16 con mayor detalle.
La Fig. 18 es un diagrama de bloques que ilustra un dispositivo de descodificacion de audio ejemplar que puede implementar diferentes aspectos de las tecnicas descritas en esta divulgacion.
La Fig. 19 es un diagrama de bloques que ilustra un ejemplo del dispositivo de descodificacion de audio de la Fig. 18 con mayor detalle.
Las Figs. 20A a 20G son diagramas que ilustran ejemplos de dispositivos de adquisicion de audio que pueden realizar diversos aspectos de las tecnicas descritas en esta divulgacion.
Las Figs. 21A-21E son diagramas que ilustran ejemplos de dispositivos de reproduccion de audio que pueden realizar diversos aspectos de las tecnicas descritas en esta divulgacion.
Las Figs. 22A a 22H son diagramas que ilustran ejemplos de entornos de reproduccion de audio de acuerdo con una o mas tecnicas descritas en esta divulgacion.
La Fig. 23 es un diagrama que ilustra un ejemplo de caso de uso en el que un usuario puede experimentar un campo sonoro 3D de un juego deportivo mientras lleva auriculares de acuerdo con una o mas tecnicas descritas en esta divulgacion.
La Fig. La figura 24 es un diagrama que ilustra un estadio deportivo al que se puede grabar un campo sonoro 3D de acuerdo con una o mas tecnicas descritas en esta divulgacion.
La Fig. 25 es un diagrama de flujo que ilustra una tecnica para reproducir un campo sonoro 3D basado en un paisaje de audio local de acuerdo con una o mas tecnicas descritas en esta divulgacion.
La Fig. 26 es un diagrama de flujo que ilustra un juego de estudio ejemplar de acuerdo con una o mas tecnicas descritas en esta divulgacion.
La Fig. La figura 27 es un diagrama que ilustra una pluralidad de sistemas de juego que incluyen motores de reproduccion de acuerdo con una o mas tecnicas descritas en esta divulgacion.
La Fig. 28 es un diagrama que ilustra una configuracion de altavoz que puede ser simulada con auriculares de acuerdo con una o mas tecnicas descritas en esta divulgacion.
La Fig. 29 es un diagrama que ilustra una pluralidad de dispositivos moviles que pueden usarse para adquirir y/o editar un campo sonoro 3D de acuerdo con una o mas tecnicas descritas en esta divulgacion.
La Fig. 30 es un diagrama que ilustra una trama de video asociada con un campo sonoro 3D que puede procesarse de acuerdo con una o mas tecnicas descritas en esta divulgacion.
Las Figs. 31A a 31M son diagramas que ilustran graficas que muestran diversos resultados de la simulacion de realizar una categorizacion sintetica o registrada del campo sonoro de acuerdo con diversos aspectos de las tecnicas descritas en esta divulgacion.
La Fig. 32 es un diagrama que ilustra un grafico de valores singulares de una matriz S descompuesta a partir de coeficientes ambisonicos de orden superior de acuerdo con las tecnicas descritas en esta divulgacion.
Las Figs. 33A y 33B son diagramas que ilustran graficas respectivas que muestran un impacto potencial que tiene la reordenacion cuando se codifican los vectores que describen los componentes de primer plano del campo sonoro de acuerdo con las tecnicas descritas en esta divulgacion.
5
10
15
20
25
30
35
40
45
50
55
60
65
Las Figs. 34 y 35 son diagramas conceptuales que ilustran diferencias entre unicamente la identificacion basada en energfa y la direccionalidad de distintos objetos de audio, de acuerdo con esta divulgacion.
Las Figs. 36A a 36G son diagramas que ilustran proyecciones de, al menos, una parte de la version descompuesta de los coeficientes armonicos esfericos en el dominio espacial para realizar la interpolacion de acuerdo con diversos aspectos de las tecnicas descritas en esta divulgacion.
La Fig. 37 ilustra una representacion de tecnicas para obtener una interpolacion espacio-temporal como se describe en el presente documento.
La Fig. 38 es un diagrama de bloques que ilustra las matrices US artificiales, US 1 y US 2, para los bloques SVD secuenciales de una senal multidimensional de acuerdo con las tecnicas descritas en el presente documento.
La Fig. 39 es un diagrama de bloques que ilustra la descomposicion de las tramas subsiguientes de una senal ambisonica de orden superior (HOA) usando la descomposicion en valores singulares y el suavizado de los componentes espacio-temporales de acuerdo con las tecnicas descritas en esta divulgacion.
Las Figs. 40A a 40J son cada una un diagrama de bloques que ilustra ejemplos de dispositivos de codificacion de audio que pueden realizar diversos aspectos de las tecnicas descritas en esta divulgacion para comprimir coeficientes armonicos esfericos que describen campos sonoros bidimensionales o tridimensionales.
La Fig. 41A-41D son diagramas de bloques que ilustran cada uno un ejemplo de dispositivo de descodificacion de audio que puede realizar diversos aspectos de las tecnicas descritas en esta divulgacion para descodificar coeficientes armonicos esfericos que describen campos sonoros bidimensionales o tridimensionales.
Las Figs. 42A-42C son diagramas de bloques que ilustran la unidad de reduccion de orden mostrada en los ejemplos de las Figs. 40B-40J con mas detalle.
La Fig. 43 es un diagrama que ilustra la unidad de compresion V mostrada en la Fig. 1 con mayor detalle.
La Fig. 44 es una ilustracion del diagrama de operaciones ejemplares realizadas por el dispositivo de codificacion de audio para compensar el error de cuantizacion de acuerdo con diversos aspectos de las tecnicas descritas en esta divulgacion.
Las Figs. 45A y 45B son diagramas que ilustran la interpolacion de subtramas de partes de dos tramas de acuerdo con diversos aspectos de las tecnicas descritas en esta divulgacion.
Las Figs. 46A a 46E son diagramas que ilustran una seccion transversal de una proyeccion de uno o mas vectores de una version descompuesta de una pluralidad de coeficientes armonicos esfericos que han sido interpolados de acuerdo con las tecnicas descritas en esta divulgacion.
La Fig. 47 es un diagrama de bloques que ilustra, con mas detalle, la unidad de extraccion de los dispositivos de descodificacion de audio mostrados en los ejemplos de las Figs. 41A - 41D.
La Fig. 48 es un diagrama de bloques que ilustra la unidad de reproduccion de audio del dispositivo de descodificacion de audio mostrado en los ejemplos de la Figs. 41A-41D con mas detalle.
Las Figs. 49A - 49E (ii) son diagramas que ilustran sistemas de codificacion de audio respectivos que pueden implementar diversos aspectos de las tecnicas descritas en esta divulgacion.
Las Figs. 50A y 50B son diagramas de bloques que ilustran cada uno de dos enfoques diferentes para reducir potencialmente el orden del contenido de fondo de acuerdo con las tecnicas descritas en esta divulgacion.
La Fig. 51 es un diagrama de bloques que ilustra ejemplos de una trayectoria de compresion de componente distinta de un dispositivo de codificacion de audio que puede implementar diversos aspectos de las tecnicas descritas en esta divulgacion para comprimir coeficientes armonicos esfericos.
Las Figs. 52 es un diagrama de bloques que ilustra otro ejemplo de un dispositivo de descodificacion de audio que puede implementar diversos aspectos de las tecnicas descritas en esta divulgacion para reconstruir o casi reconstruir coeficientes armonicos esfericos (SHC).
La Fig. 53 es un diagrama de bloques que ilustra otro ejemplo de un dispositivo de codificacion de audio que puede realizar diversos aspectos de las tecnicas descritas en esta divulgacion.
La Fig. 54 es un diagrama de bloques que ilustra, con mas detalle, el dispositivo de codificacion de audio mostrado en el ejemplo de la Fig. 53.
5
10
15
20
25
30
35
40
45
50
55
60
Las Figs. 55A y 55B son diagramas que ilustran un ejemplo de realizacion de diversos aspectos de las tecnicas descritas en esta divulgacion para girar un campo sonoro.
La Fig. 56 es un diagrama que ilustra un campo sonoro ejemplar capturado de acuerdo con una primera trama de referencia que se hace girar de acuerdo con las tecnicas descritas en esta divulgacion para expresar el campo sonoro en terminos de una segunda trama de referencia.
Las Figs. 57A-57E son cada una un diagrama que ilustra los flujos de bits formados de acuerdo con las tecnicas descritas en esta divulgacion.
La Fig. 58 es un diagrama de flujo que ilustra el ejemplo de funcionamiento del dispositivo de codificacion de audio mostrado en el ejemplo de la Fig. 53 en la implementacion de los aspectos de rotacion de las tecnicas descritas en esta divulgacion.
La Fig. 59 es un diagrama de flujo que ilustra el ejemplo de funcionamiento del dispositivo de codificacion de audio mostrado en el ejemplo de la Fig. 53 en la realizacion de los aspectos de transformacion de las tecnicas descritas en esta divulgacion.
DESCRIPCION DETALLADA
La evolucion del sonido envolvente ha puesto a disposicion muchos formatos de salida para el entretenimiento de hoy en dfa. Los ejemplos de tales formatos de sonido envolvente de consumo son en su mayorfa "canales" basados en que, implfcitamente, especifican las senales a los altavoces en ciertas coordenadas geometricas. Estos 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 de sonido envolvente izquierdo, posterior derecho o de sonido envolvente derecho y efectos de baja frecuencia (LFE) ), el creciente formato 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 el estandar de Television de Alta Definicion). Los formatos no consumidores pueden abarcar cualquier numero de altavoces (en geometrfas simetricas y no simetricas) a menudo denominados "configuraciones de sonido envolvente". Un ejemplo de una configuracion de este tipo incluye 32 altavoces colocados en coordenadas en las esquinas de un icosaedro truncado.
La entrada a un futuro codificador MPEG es, opcionalmente, uno de tres formatos posibles: (I) audio basado en un canal tradicional (como se ha comentado anteriormente), que esta destinado a ser reproducido a traves de altavoces en posiciones preestablecidas; (li) audio basado en objetos, que implica datos de modulacion por codigo de pulso (PCM) discretos para objetos de audio individuales con metadatos asociados que contienen sus coordenadas de ubicacion (entre otra informacion); y iii) audio basado en la escena, que implica la representacion del campo sonoro utilizando coeficientes de funciones de base armonicas esfericas (tambien llamados "coeficientes armonicos esfericos" o SHC, "Ambisonicos de Orden Superior" o HOA y "coeficientes HOA"). Este futuro codificador MPEG se puede describir con mayor detalle en un documento titulado "Convocatoria de propuestas para audio 3D", de la Organizacion Internacional para la Estandarizacion/Comision Electrotecnica Internacional (ISO)/(IEC)
JTC1/SC29/WG11/N13411, publicado en enero 2013 en Ginebra, Suiza, y disponible en

http://mpeg.chiariglione.org/sites/default/files/files/standards/parts/docs/w13411.zip.
Hay varios formatos de "sonido envolvente" en el mercado. Por ejemplo, desde el sistema de cine en casa 5.1 (que es el que ha tenido mas exito en cuanto a entrar en las salas de estar mas alla del estereo) hasta el sistema 22.2 desarrollado por NHK (Nippon Hoso Kyokai o Japan Broadcasting Corporation). Los creadores de contenido (por ejemplo, los estudios de Hollywood) desean producir la banda sonora de una pelfcula una vez y no gastar los esfuerzos en volver a mezclarla para cada configuracion de altavoz. Recientemente, las Organizaciones de Desarrollo de Normas han estado considerando maneras de proporcionar una codificacion en un flujo de bits estandarizado y una descodificacion subsiguiente que sea adaptable e indiferente con respecto a la geometrfa (y numero) del altavoz y a las condiciones acusticas en la ubicacion de la reproduccion (que implica un reproductor).
Para proporcionar dicha flexibilidad a los creadores de contenido, se puede usar un conjunto jerarquico de elementos para representar un campo sonoro. El conjunto jerarquico de elementos puede referirse a un conjunto de elementos en el que los elementos estan ordenados de tal manera que un conjunto basico de elementos de orden inferior proporciona una representacion completa del campo sonoro modelado. A medida que el conjunto se extiende para incluir elementos de orden superior, la representacion se hace mas detallada, aumentando la resolucion.
Un ejemplo de un conjunto jerarquico de elementos es un conjunto de coeficientes armonicos esfericos (SHC). La siguiente expresion demuestra una descripcion o representacion de un campo sonoro usando SHC:
5
10
15
20
25
30
35
40
45
50
55
imagen1
Esta expresion muestra que la presion p, en cualquier punto {/>, 9 r, <p r) del campo sonoro, en el tiempo t, puede
k=- c
representarse unicamente por el SHC, Anm(k). Aqui, c' es la velocidad del sonido (~343 m/s), {/>, 9r, <pr} es un punto de referenda (o punto de observacion), j„ (■) es la funcion esferica de Bessel de orden n, y Ynm (9r, <pr) son las funciones de base armonicas esfericas de orden n y suborden m. Se puede reconocer que el termino entre corchetes es una representacion en el dominio de la frecuencia de la senal (es decir, S(w, rr, 9r , p)) que puede ser aproximada por varias transformaciones tiempo-frecuencia, tales como la transformada discreta de Fourier (DFT), la transformada de coseno discreta (DCT) o una transformada de ondfcula. Otros ejemplos de conjuntos jerarquicos incluyen conjuntos de coeficientes de transformada de ondfcula y otros conjuntos de coeficientes de funciones de base a partir de multirresolucion.
La Fig. 1 es un diagrama que ilustra las funciones de base armonicas esfericas desde el orden cero (n = 0) hasta el cuarto orden (n = 4). Como puede verse, para cada orden, hay una expansion de los subordenes m que se muestran pero no se anotan explfcitamente en el ejemplo de la Fig. 1 para facilitar la ilustracion.
La Fig. 2 es otro diagrama que ilustra las funciones de base armonicas esfericas desde el orden cero (n = 0) hasta el cuarto orden (n = 4). En la Fig. 2, las funciones de la base armonica esferica se muestran en el espacio de coordenadas tridimensional con el orden y el suborden mostrados.
El SHC Anm(k) puede ser ffsicamente adquirido (por ejemplo, registrado) con varias configuraciones de microfono o, alternativamente, se puede obtener de descripciones basadas en canales o basadas en objetos del campo sonoro. El SHC representa el audio basado en escenas, donde el SHC puede ser introducido en un codificador de audio para obtener el SHC codificado que puede fomentar una transmision o un almacenamiento mas eficiente. Por ejemplo, puede utilizarse una representacion de cuarto orden que implique coeficientes (1 + 4)2 (25 y, por lo tanto, de cuarto orden).
Como se ha indicado anteriormente, el SHC puede obtenerse de una grabacion con microfono utilizando un microfono. En Poletti, M., "Three-Dimensional Surround Sound Systems Based on Spherical Harmonics", se describen varios ejemplos de como se puede obtener el SHC a partir de configuraciones de microfonos, J. Audio Eng. Soc., Vol. 53, N.° 11, 2005 Noviembre, pags. 1004 - 1025.
Para ilustrar como estos SHCs se pueden obtener a partir de una descripcion basada en objetos, considere la siguiente ecuacion. Los coeficientes Anm(k) del campo sonoro correspondiente a un objeto de audio individual pueden expresarse como:
imagen2
donde i es V-1, h n(2)( ) es la funcion esferica de Hankel (del segundo tipo) de orden n, y {rs, 9S, ps } es la ubicacion del objeto. El hecho de conocer la fuente de energfa del objeto g(w) como una funcion de la frecuencia (por ejemplo, utilizando tecnicas de analisis de tiempo-frecuencia, tales como la realizacion de una transformada rapida de Fourier en el flujo PCM) nos permite convertir cada objeto PCM y su ubicacion en el SHC Anm(k). Ademas, se puede demostrar (ya que lo anterior es una descomposicion lineal y ortogonal) que los coeficientes Anm(k) para cada objeto son aditivos. De esta manera, una multitud de objetos PCM puede ser representada con los coeficientes Anm(k) (por ejemplo, como una suma de los vectores de coeficientes para los objetos individuales). Esencialmente, estos coeficientes contienen informacion sobre el campo sonoro (la presion como una funcion de las coordenadas 3D), y lo anterior representa la transformacion de los objetos individuales a una representacion del campo sonoro global en las proximidades del punto de observacion {rr, 9r, p}. Las cifras restantes se describen a continuacion en el contexto de la codificacion de audio basada en objetos y basada en SHC.
La Fig. 3 es un diagrama de bloques que ilustra un sistema 10 que puede realizar diversos aspectos de las tecnicas descritas en esta divulgacion. Como se muestra en el ejemplo de la Fig. 3, el sistema 10 incluye un creador de contenido 12 y un consumidor de contenido 14. Aunque se describen en el contexto del creador de contenido 12 y del consumidor de contenido 14, las tecnicas pueden implementarse en cualquier contexto en el que los SHC (que tambien pueden denominarse coeficientes HOA) o cualquier otra representacion jerarquica de un campo sonoro se codifican para formar un flujo de bits representativo de los datos de audio. Ademas, el creador de contenido 12 puede representar cualquier forma de dispositivo informatico capaz de implementar las tecnicas descritas en esta divulgacion, incluido un telefono movil (o telefono celular), un ordenador de tableta, un telefono inteligente o un
5
10
15
20
25
30
35
40
45
50
55
60
65
ordenador de sobremesa para proporcionar algunos ejemplos. Del mismo modo, el consumidor de contenido 14 puede representar cualquier forma de dispositivo informatico capaz de implementar las tecnicas descritas en esta divulgacion, incluido un telefono movil, una tableta, un telefono inteligente, un descodificador o un ordenador de sobremesa para proporcionar algunos ejemplos.
El creador de contenido 12 puede representar un estudio de cine u otra entidad que puede generar contenido de audio multicanal para el consumo de los consumidores de contenido, tal como el consumidor de contenido 14. En algunos ejemplos, el creador de contenido 12 puede representar a un usuario individual que desea comprimir los coeficientes HOA 11. A menudo, este creador de contenido genera contenido de audio junto con el contenido de video. El consumidor de contenido 14 representa un individuo que posee o tiene acceso a un sistema de reproduccion de audio, que puede referirse a cualquier forma de sistema de reproduccion de audio capaz de reproducir SHC para reproducirlo como contenido de audio multicanal. En el ejemplo de la Fig. 3, el consumidor de contenido 14 incluye un sistema de reproduccion de audio 16.
El creador de contenido 12 incluye un sistema de edicion de audio 18. El creador de contenido 12 obtiene grabaciones en directo 7 en diversos formatos (incluidos directamente como coeficientes HOA) y objetos de audio 9, que el creador de contenido 12 puede editar utilizando el sistema de edicion de audio 18. El creador de contenido puede, durante el proceso de edicion, reproducir los coeficientes HOA 11 de los objetos de audio 9, escuchando las senales de los altavoces reproducidas en un intento de identificar varios aspectos del campo sonoro que requieran una edicion adicional. El creador de contenido 12 puede entonces editar los coeficientes HOA 11 (potencialmente indirectamente a traves de la manipulacion de diferentes objetos de audio 9 a partir de los cuales pueden obtenerse los coeficientes HOA originales de la manera descrita anteriormente). El creador de contenido 12 puede emplear el sistema de edicion de audio 18 para generar los coeficientes HOA 11. El sistema de edicion de audio 18 representa cualquier sistema capaz de editar datos de audio y emitir estos datos de audio como uno o mas coeficientes armonicos esfericos originales.
Cuando se completa el proceso de edicion, el creador de contenido 12 puede generar un flujo de bits 21 basado en los coeficientes HOA 11. Es decir, el creador de contenido 12 incluye un dispositivo de codificacion de audio 20 que representa un dispositivo configurado para codificar o, de algun modo, comprimir los coeficientes HOA 11 de acuerdo con diversos aspectos de las tecnicas descritas en esta divulgacion para generar el flujo de bits 21. El dispositivo de codificacion de audio 20 puede generar el flujo de bits 21 para la transmision, por ejemplo, a traves de un canal de transmision, que puede ser un canal cableado o inalambrico, un dispositivo de almacenamiento de datos o algo similar. El flujo de bits 21 puede representar una version codificada de los coeficientes HOA 11 y puede incluir un flujo de bits primario y otro flujo de bits lateral, que se puede denominar informacion de canal lateral.
Aunque se describe con mas detalle a continuacion, el dispositivo de codificacion de audio 20 puede configurarse para codificar los coeficientes HOA 11 basandose en una sintesis basada en vectores o una sintesis basada en la direccion. Para determinar si se debe realizar la metodologfa de sintesis basada en vectores o una metodologfa de sintesis basada en la direccion, el dispositivo de codificacion de audio 20 puede determinar, en base al menos en parte en los coeficientes HOA 11, si los coeficientes HOA 11 se generaron a traves de una grabacion natural de un campo sonoro (por ejemplo, grabacion en directo 7) o se produjeron artificialmente (es decir, sinteticamente) a partir de, por ejemplo, objetos de audio 9, tales como un objeto PCM. Cuando los coeficientes HOA 11 se generaron a partir de los objetos de audio 9, el dispositivo de codificacion de audio 20 puede codificar los coeficientes HOA 11 usando la metodologfa de sintesis basada en la direccion. Cuando los coeficientes HOA 11 se capturaron en directo usando, por ejemplo, un eigenmike, el dispositivo de codificacion de audio 20 puede codificar los coeficientes HOA 11 basados en la metodologfa de sintesis basada en vectores. La distincion anterior representa un ejemplo de donde puede implantarse la metodologfa de sintesis basada en vectores o direccional. Puede haber otros casos en que uno o ambos pueden ser utiles para las grabaciones naturales, el contenido generado artificialmente o una mezcla de ambos (contenido hfbrido). Ademas, tambien es posible utilizar ambas metodologfas simultaneamente para codificar un solo intervalo de tiempo de los coeficientes HOA.
Asumiendo con fines de ilustracion que el dispositivo de codificacion de audio 20 determina que los coeficientes HOA 11 se capturaron en directo o, de algun modo, representan grabaciones en directo, tales como la grabacion en directo 7, el dispositivo de codificacion de audio 20 puede configurarse para codificar los coeficientes HOA 11 utilizando un vector basado en la aplicacion de una transformada lineal invertible (LIT). Un ejemplo de la transformada lineal invertible se denomina "descomposicion en valores singulares" (o "SVD"). En este ejemplo, el dispositivo de codificacion de audio 20 puede aplicar una SVD a los coeficientes HOA 11 para determinar una version descompuesta de los coeficientes HOA 11. El dispositivo de codificacion de audio 20 puede entonces analizar la version descompuesta de los coeficientes HOA 11 para identificar varios parametros, lo que puede facilitar la reordenacion de la version descompuesta de los coeficientes HOA 11. El dispositivo de codificacion de audio 20 puede entonces reordenar la version descompuesta de los coeficientes HOA 11 basandose en los parametros identificados, donde dicha reordenacion, tal como se describe con mas detalle a continuacion, puede mejorar la eficacia de la codificacion dado que la transformacion puede reordenar los coeficientes HOA a traves de las tramas de los coeficientes HOA (donde una trama comunmente incluye M muestras de los coeficientes HOA 11 y M es, en algunos ejemplos, establecido en 1024). Despues de reordenar la version descompuesta de los coeficientes HOA 11, el dispositivo de codificacion de audio 20 puede seleccionar aquellos coeficientes de la version
5
10
15
20
25
30
35
40
45
50
55
60
65
descompuesta de los coeficientes HOA 11 representatives de los componentes de primer plano (o, en otras palabras, distintos, predominantes o salientes) del campo sonoro. El dispositivo de codificacion de audio 20 puede especificar la version descompuesta de los coeficientes HOA 11 representativos de los componentes de primer plano como un objeto de audio y la informacion direccional asociada.
El dispositivo de codificacion de audio 20 tambien puede realizar un analisis de campo sonoro con respecto a los coeficientes HOA 11 con el fin, al menos en parte, de identificar aquellos coeficientes de los coeficientes HOA 11 representativos de uno o mas componentes de fondo del campo sonoro. El dispositivo de codificacion de audio 20 puede realizar compensacion de energfa con respecto a los componentes de fondo dado que, en algunos ejemplos, los componentes de fondo solo pueden incluir un subconjunto de cualquier muestra dada de los coeficientes HOA 11 (por ejemplo, los correspondientes a las funciones de base esferica de cero y primer orden y no las correspondientes a las funciones de base esferica de segundo o de orden superior). Cuando se realiza la reduccion de orden, en otras palabras, el dispositivo de codificacion de audio 20 puede aumentar (por ejemplo, sumar/restar energfa a/desde) los coeficientes HOA de fondo restantes de los coeficientes HOA 11 para compensar el cambio en la energfa total que resulta de realizar la reduccion de orden.
El dispositivo de codificacion de audio 20 puede realizar, a continuacion, una forma de codificacion psicoacustica (tal como la envolvente MPEG, MPEG-AAC, MPEG-USAC u otras formas conocidas de codificacion psicoacustica) con respecto a cada uno de los coeficientes HOA 11 representativos de los componentes de fondo y de cada uno de los objetos de audio de primer plano. El dispositivo de codificacion de audio 20 puede realizar una forma de interpolacion con respecto a la informacion direccional de primer plano y luego realizar una reduccion de orden con respecto a la informacion direccional de primer plano interpolada para generar informacion direccional de primer plano reducida por orden. El dispositivo de codificacion de audio 20 puede realizar adicionalmente, en algunos ejemplos, una cuantizacion con respecto a la informacion direccional de primer plano reducida por orden, que proporciona informacion direccional de primer plano codificada. En algunos casos, esta cuantizacion puede comprender una cuantizacion escalar/entropica. El dispositivo de codificacion de audio 20 puede formar entonces el flujo de bits 21 para incluir los componentes de fondo codificados, los objetos de audio de primer plano codificados y la informacion direccional cuantizada. El dispositivo de codificacion de audio 20 puede entonces transmitir o, de algun modo, emitir el flujo de bits 21 al consumidor de contenido 14.
Como se muestra en la Fig. 3 como transmitido directamente al consumidor de contenido 14, el creador de contenido 12 puede emitir el flujo de bits 21 a un dispositivo intermedio situado entre el creador de contenido 12 y el consumidor de contenido 14. Este dispositivo intermedio puede almacenar el flujo de bits 21 para su posterior suministro al consumidor de contenido 14, que puede solicitar este flujo de bits. El dispositivo intermedio puede comprender un servidor de archivos, un servidor web, un ordenador de sobremesa, un ordenador portatil, un ordenador de tabletas, un telefono movil, un telefono inteligente o cualquier otro dispositivo capaz de almacenar el flujo de bits 21 para su posterior recuperacion 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 transmision de un flujo de bits de datos de video correspondiente) a los suscriptores, como el consumidor de contenido 14 que solicita el flujo de bits 21.
Alternativamente, el creador de contenido 12 puede almacenar el flujo de bits 21 en un medio de almacenamiento, tal como un disco compacto, un disco de video digital, un disco de video de alta definicion u otros medios de almacenamiento, la mayorfa de los cuales pueden ser lefdos por un ordenador y, por lo tanto, pueden denominarse medios de almacenamiento legibles por ordenador o medios de almacenamiento no transitorios legibles por ordenador. En este contexto, el canal de transmision puede referirse a aquellos canales a traves de los cuales se transmiten contenidos almacenados en estos medios (y pueden incluir tiendas minoristas y otros mecanismos de suministro basados en almacen). En cualquier caso, las tecnicas de esta divulgacion no deben, por lo tanto, estar limitadas a este respecto al ejemplo de la Fig. 3.
Como se muestra adicionalmente en el ejemplo de la Fig. 3, el consumidor de contenido 14 incluye el sistema de reproduccion de audio 16. El sistema de reproduccion de audio 16 puede representar cualquier sistema de reproduccion de audio capaz de reproducir datos de audio multicanal. El sistema de reproduccion de audio 16 puede incluir un numero de diferentes procesadores 22. Los reproductores 22 pueden proporcionar cada uno una forma diferente de reproduccion, en la que las diferentes formas de reproduccion pueden incluir una o mas de las diversas formas de realizar la exploracion de amplitud de base vectorial (VBAP) y/o una o mas de las diversas formas de realizar la sfntesis del campo sonoro. Como se usa en el presente documento, "A y/o B" significa "A o B" o ambos "A y B".
El sistema de reproduccion de audio 16 puede incluir ademas un dispositivo de descodificacion de audio 24. El dispositivo de descodificacion de audio 24 puede representar un dispositivo configurado para descodificar los coeficientes HOA 11' desde el flujo de bits 21, donde los coeficientes HOA 11' pueden ser similares a los coeficientes HOA 11, pero difieren debido a las operaciones con perdida (por ejemplo, cuantizacion) y/o la transmision a traves del canal de transmision. Es decir, el dispositivo de descodificacion de audio 24 puede desquantizar la informacion direccional de primer plano especificada en el flujo de bits 21, al mismo tiempo que realiza la descodificacion psicoacustica con respecto a los objetos de audio de primer plano especificados en el flujo
5
10
15
20
25
30
35
40
45
50
55
60
65
de bits 21 y los coeficientes HOA codificados representatives de componentes de fondo. El dispositivo de descodificacion de audio 24 puede realizar ademas la interpolacion con respecto a la informacion direccional de primer plano descodificada y luego determinar los coeficientes HOA representativos de los componentes de primer plano basados en los objetos de audio de primer plano descodificados y la informacion direccional de primer plano interpolada. El dispositivo de descodificacion de audio 24 puede entonces determinar los coeficientes HOA 11' basandose en los coeficientes HOA determinados representativos de los componentes de primer plano y los coeficientes HOA descodificados representativos de los componentes de fondo.
El sistema de reproduccion de audio 16 puede, despues de descodificar el flujo de bits 21, obtener los coeficientes HOA 11' y reproducir los coeficientes HOA 11' en las senales de salida de los altavoces 25. Las senales de los altavoces 25 pueden accionar uno o mas altavoces (que no se muestran en el ejemplo de la Fig. 3 para facilitar la ilustracion).
Para seleccionar el reproductor apropiado o, en algunos casos, generar un reproductor apropiado, el sistema de reproduccion de audio 16 puede obtener informacion de los altavoces 13 indicativa de un numero de altavoces y/o una geometrfa espacial de los altavoces. En algunos casos, el sistema de reproduccion de audio 16 puede obtener la informacion de los altavoces 13 usando un microfono de referencia y accionando los altavoces de tal manera que determina dinamicamente la informacion de los altavoces 13. En otros casos o, junto con la determinacion dinamica de la informacion de los altavoces 13, el sistema de reproduccion de audio 16 puede pedirle a un usuario que interconecte con el sistema de reproduccion de audio 16 e introduzca la informacion de los altavoces 16.
El sistema de reproduccion de audio 16 puede entonces seleccionar una informacion de los reproductores de audio 22 en base a la informacion de los altavoces 13. En algunos casos, el sistema de reproduccion de audio 16 puede, cuando ninguno de los procesadores de audio 22 estan dentro de una medida de similitud de umbral (altavoz geometrica) con respecto a la especificada en la informacion de los altavoces 13, el sistema de reproduccion de audio 16 puede generar la informacion de reproduccion de audio 22 en base a la informacion de los altavoces 13. El sistema de reproduccion de audio 16 puede, en algunos casos, generar la informacion de los procesadores de audio 22 en base a la informacion de los altavoces 13 sin intentar primero seleccionar una informacion existente de los procesadores de audio 22.
La Fig. 4 es un diagrama de bloques que ilustra, en mas detalle, un ejemplo del dispositivo de codificacion de audio 20 mostrado en el ejemplo de la Fig. 3 que puede realizar diversos aspectos de las tecnicas descritas en esta divulgacion. El dispositivo de codificacion de audio 20 incluye una unidad de analisis de contenido 26, una unidad de metodologfa de sfntesis basada en vectores 27 y una unidad de metodologfa de sfntesis basada en la direccion 28.
La unidad de analisis de contenido 26 representa una unidad configurada para analizar el contenido de los coeficientes HOA 11 y que identifica si los coeficientes HOA 11 representan contenido generado a partir de una grabacion en directo o un objeto de audio. La unidad de analisis de contenido 26 puede determinar si los coeficientes HOA 11 se generaron a partir de una grabacion de un campo sonoro real o de un objeto audio artificial. La unidad de analisis de contenido 26 puede realizar esta determinacion de varias maneras. Por ejemplo, la unidad de analisis de contenido 26 puede codificar (N+1)2 -1 canales y predecir el ultimo canal restante (que puede representarse como un vector). La unidad de analisis de contenido 26 puede aplicar escalares a, al menos algunos de los canales (N+1)2- 1, y anadir los valores resultantes para determinar el ultimo canal restante. Ademas, en este ejemplo, la unidad de analisis de contenido 26 puede determinar una precision del canal predicho. En este ejemplo, si la precision del canal predicho es relativamente alta (por ejemplo, la precision excede un umbral particular), es probable que los coeficientes HOA 11 se generen a partir de un objeto de audio sintetico. Por el contrario, si la precision del canal predicho es relativamente baja (por ejemplo, la precision esta por debajo del umbral particular), es mas probable que los coeficientes HOA 11 representen un campo sonoro registrado. Por ejemplo, en este ejemplo, si una relacion senal-ruido (SNR) del canal predicho es superior a 100 decibeles (dbs), los coeficientes HOA 11 son mas propensos a representar un campo sonoro generado a partir de un objeto de audio sintetico. En contraste, la SNR de un campo sonoro grabado utilizando un microfono propio puede ser de 5 a 20 dbs. Por lo tanto, puede haber una demarcacion aparente en las relaciones SNR entre el campo sonoro representado con los coeficientes HOA 11 generados a partir de una grabacion directa real y desde un objeto de audio sintetico.
Mas especfficamente, la unidad de analisis de contenido 26 puede, al determinar si los coeficientes HOA 11 representativos de un campo sonoro se generan a partir de un objeto de audio sintetico, obtener unos coeficientes hOa por trama, que puede ser del tamano 25 por 1024 para una representacion de cuarto orden (es decir, N = 4). Despues de obtener los coeficientes HOA por trama (que tambien se pueden indicar en el presente documento como una matriz de SHC por trama 11 y las matrices SHC por trama subsiguiente se pueden indicar como matrices SHC por trama 27B, 27C, etc.). La unidad de analisis de contenido 26 puede excluir entonces el primer vector de los coeficientes en HOA por trama 11 para generar coeficientes HOA reducidos por trama. En algunos ejemplos, este primer vector excluido de los coeficientes HOA por trama 11 puede corresponder a los de los coeficientes HOA 11 asociados con la funcion de base armonica esferica de orden cero y suborden cero.
La unidad de analisis de contenido 26 puede entonces predecir el primer vector distinto de cero de los coeficientes HOA reducidos por trama a partir de los vectores restantes de los coeficientes HOA reducidos por trama. El primer
5
10
15
20
25
30
35
40
45
50
55
60
vector distinto de cero puede referirse a un primer vector que va desde el primer orden (y considerando cada uno de los subordenes dependientes del orden) al cuarto orden (y considerando cada uno de los subordenes dependientes del orden) que tiene valores distintos de cero. En algunos ejemplos, el primer vector distinto de cero de los coeficientes HOA reducidos por trama se refiere a los de los coeficientes HOA 11 asociados con la funcion de base armonica esferica de primer orden y suborden cero. Aunque se describen con respecto al primer vector distinto de cero, las tecnicas pueden predecir otros vectores de los coeficientes HOA reducidos por trama de los vectores restantes de los coeficientes HOA reducidos por trama. Por ejemplo, la unidad de analisis de contenido 26 puede predecir los de los coeficientes HOA reducidos por trama asociados con una funcion de base armonica esferica de primer orden y primer suborden o una funcion de base armonica esferica de primer orden y primer orden negativo. Aun otros ejemplos, la unidad de analisis de contenido 26 puede predecir los de los coeficientes HOA reducidos por trama asociados con una funcion de base armonica esferica de segundo orden y orden cero.
Para predecir el primer vector distinto de cero, la unidad de analisis de contenido 26 puede funcionar de acuerdo con la siguiente ecuacion:
I
donde i es de 1 a (N + 1)2-2, que es 23 para una representacion de cuarto orden, a denota alguna constante para el i-esimo vector y n se refiere al i- esimo vector. Despues de predecir el primer vector distinto de cero, la unidad de analisis de contenido 26 puede obtener un error basado en el primer vector distinto de cero predicho y el vector distinto de cero real. En algunos ejemplos, la unidad de analisis de contenido 26 substrae el primer vector distinto de cero predicho del primer vector distinto de cero real para derivar el error. La unidad de analisis de contenido 26 puede calcular el error como una suma del valor absoluto de las diferencias entre cada entrada en el primer vector distinto de cero predicho y el primer vector distinto de cero real.
Una vez obtenido el error, la unidad de analisis de contenido 26 puede calcular una relacion basada en una energfa del primer vector distinto de cero real y del error. La unidad de analisis de contenido 26 puede determinar esta energfa cuadrando cada entrada del primer vector distinto de cero y anadiendo las entradas cuadradas una a otra. La unidad de analisis de contenido 26 puede entonces comparar esta relacion con un umbral. Cuando la relacion no excede el umbral, la unidad de analisis de contenido 26 puede determinar que los coeficientes HOA por trama 11 se generan a partir de una grabacion e indica en el flujo de bits que la representacion codificada correspondiente de los coeficientes HOA 11 se genero a partir de una grabacion. Cuando la relacion excede el umbral, la unidad de analisis de contenido 26 puede determinar que los coeficientes HOA por trama 11 se generan a partir de un objeto de audio sintetico e indica en el flujo de bits que la representacion codificada correspondiente de los coeficientes HOA por trama 11 se genero a partir de un objeto de audio sintetico.
La indicacion de si los coeficientes HOA por trama 11 se generaron a partir de una grabacion o de un objeto de audio sintetico puede comprender un solo bit para cada trama. El bit unico puede indicar que se usaron diferentes codificaciones para cada trama de manera eficaz, intercambiando entre diferentes maneras de codificar la trama correspondiente. En algunos casos, cuando los coeficientes HOA por trama 11 se generaron a partir de una grabacion, la unidad de analisis de contenido 26 pasa los coeficientes HOA 11 a la unidad de sfntesis basada en vectores 27. En algunos casos, cuando los coeficientes HOA por trama 11 se generaron a partir de un objeto de audio sintetico, la unidad de analisis de contenido 26 pasa los coeficientes HOA 11 a la unidad de sfntesis basada en la direccion 28. La unidad de sfntesis basada en la direccion 28 puede representar una unidad configurada para realizar una sfntesis basada en la direccion de los coeficientes HOA 11 para generar un flujo de bits basado en la direccion 21.
En otras palabras, las tecnicas se basan en la codificacion de los coeficientes HOA utilizando un clasificador de entrada. El clasificador puede funcionar de la siguiente manera:
Comienza con una matriz SH por trama (supongamos de 4° orden, tamano de trama de 1024, que tambien se pueden denominar coeficientes HOA por trama o como coeficientes HOA), en la que se obtiene una matriz de tamano 25 x 1024.
Excluye el primer vector (SH de orden 0) de manera que hay una matriz de tamano 24 x 1024.
Predice el primer vector distinto de cero en la matriz (vector de tamano a1 x 1024) del resto de los vectores de la matriz (23 vectores de tamano 1x1024).
La prediccion es la siguiente: vector predicho = suma-sobre-i [alfa-i x vector-I] (donde la suma sobre I se hace sobre 23 indices, i = 1 ... 23).
A continuacion, compruebe el error: vector real - vector predicho = error.
5
10
15
20
25
30
35
40
45
50
55
60
65
Si la relacion de la energfa del vector/error es grande (es decir, el error es pequeno), entonces el campo sonoro subyacente (en esa trama) es escaso/sintetico. De lo contrario, el campo sonoro subyacente es un campo sonoro grabado (usando una configuracion de microfonos).
En funcion de la decision grabada vs. sintetica, lleva a cabo la codificacion / descodificacion (que puede referirse a la compresion del ancho de banda) de diferentes maneras. La decision es una decision de 1 bit que se envfa a traves del flujo de bits para cada trama.
Como se muestra en el ejemplo de la Fig. 4, la unidad de sfntesis basada en vectores 27 puede incluir una unidad de transformada lineal invertible (LIT) 30, una unidad de calculo de parametros 32, una unidad de reordenacion 34, una unidad de seleccion del primer plano 36, una unidad de compensacion de energfa 38, una unidad codificadora de audio psicoacustico 40, una unidad de generacion del flujo de bits 42, una unidad de analisis del campo sonoro 44, una unidad de reduccion de coeficientes 46, una unidad de seleccion de fondo 48 (BG), una unidad de interpolacion espacio-temporal 50 y una unidad de cuantizacion 52.
La unidad de transformada lineal invertible (LIT) 30 recibe los coeficientes 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 esferica (que se puede indicar como HOA [k], donde k puede indicar la trama o bloque actual de muestras). La matriz de coeficientes HOA 11 puede tener D dimensiones: M x (N+1)2
Es decir, la unidad LIT 30 puede representar una unidad configurada para realizar una forma de analisis denominada descomposicion en valores singulares. Aunque se describe con respecto a la SVD, las tecnicas descritas en esta divulgacion pueden realizarse con respecto a cualquier transformacion o descomposicion similar que proporcione conjuntos de salida de energfa compacta y no correlacionada linealmente. Tambien, la referencia a "conjuntos" en esta divulgacion generalmente se refiere a conjuntos diferentes de cero a menos que se indique especfficamente lo contrario y no se pretende referir a la definicion matematica clasica de conjuntos que incluye el denominado "conjunto vacfo".
Una transformacion alternativa puede comprender un analisis de componentes principales que se denomina a menudo "PCA". Un PCA se refiere a un procedimiento matematico que emplea una transformacion ortogonal para convertir un conjunto de observaciones de variables posiblemente correlacionadas en un conjunto de variables linealmente no correlacionadas denominadas componentes principales. Las variables linealmente no correlacionadas representan variables que no tienen una relacion estadfstica lineal (o dependencia) entre sf. Estos componentes principales pueden ser descritos como teniendo un pequeno grado de correlacion estadfstica entre sf. En cualquier caso, el numero de componentes denominados principales es menor o igual que el numero de variables originales. En algunos ejemplos, la transformacion se define de tal manera que el primer componente principal tiene la varianza mas grande posible (o, en otras palabras, representa la mayor parte de la variabilidad en los datos como sea posible) y cada componente sucesivo a su vez tiene la mayor varianza posible bajo la restriccion de que este componente sucesivo sea ortogonal (lo que puede ser reexpresado como no correlacionado) con los componentes anteriores. Un PCA puede realizar una forma de reduccion de orden que, en terminos de los coeficientes HOA 11, puede dar lugar a la compresion de los coeficientes HOA 11. En funcion del contexto, el PCA puede ser referido con varios nombres diferentes, tales como la transformada discreta de Karhunen-Loeve, la transformada de Hotelling, la descomposicion ortogonal apropiada (POD) y la descomposicion del valor propio (EVD) para nombrar algunos ejemplos. Las propiedades de dichas operaciones que conducen a la meta subyacente de compresion de datos de audio son la "compactacion energetica" y la "descorrelacion" de los datos de audio multicanal.
En cualquier caso, la unidad LIT 30 realiza una descomposicion en valores singulares (que, de nuevo, puede denominarse "SVD") para transformar los coeficientes hOa 11 en dos o mas conjuntos de coeficientes HOA transformados. Estos "conjuntos" de coeficientes HOA transformados pueden incluir vectores de coeficientes HOA transformados. En el ejemplo de la Fig. 4, la unidad LIT 30 puede realizar la SVD con respecto a los coeficientes HOA 11 para generar una matriz llamada V, una matriz S y una matriz U. La SVD, en algebra lineal, puede representar una factorizacion de una matriz real y-por-z o compleja X (donde X puede representar datos de audio multicanal como los coeficientes HOA 11) de la siguiente forma:
X = USV*
U puede representar una matriz unitaria real y-por-y o compleja, donde las columnas y de U se conocen comunmente como los vectores singulares izquierdos de los datos de audio multicanal. S puede representar una matriz diagonal y-por-z con numeros reales no negativos en la diagonal, donde los valores diagonales de S se conocen comunmente como valores singulares de los datos de audio multicanal. V* (que puede indicar una transposicion conjugada de V) puede representar una matriz unitaria real o compleja z-por-z, donde las columnas z de V* son comunmente conocidas como vectores singulares derechos de los datos de audio multicanal.
Aunque se describe en esta divulgacion como aplicable a datos de audio multicanal que comprenden coeficientes HOA 11, las tecnicas pueden aplicarse a cualquier forma de datos de audio multicanal. De esta manera, el
5
10
15
20
25
30
35
40
45
50
55
60
65
dispositivo de codificacion de audio 20 puede realizar una descomposicion en valores singulares con respecto a datos de audio multicanal representativos de, al menos una parte, del campo sonoro para generar una matriz U representativa de los vectores singulares izquierdos de los datos de audio multicanal, una matriz S representativa de los valores singulares de los datos de audio multicanal y una matriz V representativa de los vectores singulares derechos de los datos de audio multicanal y que representa los datos de audio multicanal como una funcion de, al menos una parte, de una o mas de la matriz U, la matriz S y la matriz V.
En algunos ejemplos, la matriz V* en la expresion matematica SVD mencionada anteriormente se denomina transposicion conjugada de la matriz V para reflejar que la SVD se puede aplicar a matrices que comprenden numeros complejos. Cuando se aplica a matrices que comprenden solo numeros reales, el conjugado complejo de la matriz V (o, en otras palabras, la matriz V*) puede considerarse como la transposicion de la matriz V. A continuacion se supone, para facilitar la ilustracion, que los coeficientes HOA 11 comprenden numeros reales, con el resultado de que la matriz V se emite a traves de la SVD en lugar de la matriz V*. Ademas, aunque se denotan como la matriz V en esta divulgacion, la referencia a la matriz V debe entenderse que hace referencia a la transposicion de la matriz V cuando sea apropiado. Aunque se supone que es la matriz V, las tecnicas pueden aplicarse de manera similar a los coeficientes HOA 11 que tienen coeficientes complejos, donde la salida de la SVD es la matriz V*. Por consiguiente, las tecnicas no deben estar limitadas a este respecto para proporcionar solamente la aplicacion de la SVD para generar una matriz V, sino que pueden incluir la aplicacion de la SVD a coeficientes HOA 11 que tienen componentes complejos para generar una matriz V*.
En cualquier caso, la unidad LIT 30 puede realizar una forma en bloque de SVD con respecto a cada bloque (que puede referirse a una trama) de datos de audio ambisonicos (HOA) de orden superior (donde estos datos de audio ambisonicos incluyen bloques o muestras de los coeficientes HOA 11 o cualquier otra forma de datos de audio multicanal). Como se ha indicado anteriormente, se puede usar una variable M para indicar la longitud de una trama de audio en muestras. Por ejemplo, cuando una trama de audio incluye 1024 muestras de audio, M es igual a 1024. Aunque se describen con respecto a este valor tfpico para M, las tecnicas de esta divulgacion no deben limitarse a este valor tfpico para M. La unidad LIT 30 puede realizar, por lo tanto, una SVD en bloque con respecto a un bloque, con los coeficientes HOA 11 que tienen M-por-(N + 1) 2 coeficientes HOA, donde N, de nuevo, indica el orden de los datos de audio HOA. La unidad LIT 30 puede generar, mediante la realizacion de esta SVD, una matriz V, una matriz S y una matriz U, donde cada una de las matrices puede representar las respectivas matrices V, S y U descritas anteriormente. De esta manera, la unidad de transformada lineal invertible 30 puede realizar una SVD con respecto a los coeficientes HOA 11 para emitir vectores US[k] 33 (que pueden representar una version combinada de los S vectores y los U vectores) que tienen D dimensiones: Vectores Mx (N+1)2 y V[k] 35 con D dimensiones: (N+1)2 x (N+1)2 Los elementos vectoriales individuales en la matriz US [k] tambien pueden denominarse XpS(k), mientras que los vectores individuales de la matriz V [k] tambien pueden denominarse v(k).
Un analisis de las matrices U, S y V puede revelar que estas matrices llevan o representan caracterfsticas espaciales y temporales del campo sonoro subyacente representado anteriormente por X. Cada uno de los N vectores en U (de longitud M muestras) puede representar senales de audio normalizadas separadas en funcion del tiempo (para el perfodo de tiempo representado por M muestras), que son ortogonales entre si y que han sido desacopladas de cualquier caracterfstica espacial (que tambien puede denominarse informacion direccional). Las caracterfsticas espaciales, que representan la anchura de la forma espacial y la posicion (r, theta, phi) pueden representarse en su lugar por vectores ih individuales, v(i)(k) en la matriz V (cada uno de longitud (N+1)2). Ambos vectores de la matriz U y la matriz V se normalizan de tal manera que sus energfas de valor cuadratico medio son iguales a la unidad. La energfa de las senales de audio en U esta representada por los elementos diagonales en S. Multiplicando U y S para formar US [k] (con los elementos vectoriales individuales Xps(k)), representan la senal de audio con energfas verdaderas. La capacidad de la descomposicion SVD para desacoplar las senales de tiempo de audio (en U), sus energfas (en S) y sus caracterfsticas espaciales (en V) pueden soportar varios aspectos de las tecnicas descritas en esta divulgacion. Ademas, este modelo de sfntesis de los coeficientes hOa [k] subyacentes, X, por una multiplicacion de vectores de US [k] y V [k] da lugar al termino "metodologfa de sfntesis basada en vectores" que se utiliza en todo este documento.
Aunque se describe que se realiza directamente con respecto a los coeficientes HOA 11, la unidad LIT 30 puede aplicar la transformada lineal invertible a los derivados de los coeficientes HOA 11. Por ejemplo, la unidad LIT 30 puede aplicar una SVD con respecto a una matriz de densidad espectral de potencia obtenida partir de los coeficientes HOA 11. La matriz de densidad espectral de potencia se puede indicar como PSD y se obtiene mediante la multiplicacion matricial de la transposicion del hoaFrame al hoaFrame, como se indica en el pseudocodigo que sigue a continuacion. La notacion hoaFrame se refiere a una trama de los coeficientes HOA 11.
La unidad LIT 30 puede, despues de aplicar la SVD (svd) a la PSD, puede obtener una matriz S [k] 2 (S_squared) y V [k]. La matriz S [k]2 puede indicar una matriz S[k] al cuadrado, con lo que la unidad LIT 30 puede aplicar una operacion de rafz cuadrada a la matriz S [k]2 para obtener la matriz S [k]. La unidad LIT 30 puede, en algunos casos, realizar la cuantizacion con respecto a la matriz V [k] para obtener una matriz V [k] cuantizada (que puede estar indicada como matriz V [k]'). La unidad LIT 30 puede obtener la matriz U [k] multiplicando primero la matriz S [k] por la matriz cuantizada V[k]' para obtener una matriz SV [k]'. La unidad LIT 30 puede obtener a continuacion la
5
10
15
20
25
30
35
40
45
50
55
60
65
pseudoinversa (pinv) de la matriz SV [k]' y luego multiplicar los coeficientes HOA 11 por la pseudoinversa de la matriz SV[k]' para obtener la matriz U [k]. Lo anterior puede estar representado por el siguiente pseudocodigo:
PSD = hoaFrame '* hoaFrame;
[V, S_squared] = svd (PSD, 'econ');
S = sqrt (S_squared);
U = hoaFrame * pinv (S * V);
Mediante la realizacion de la SVD con respecto a la densidad espectral de potencia (PSD) de los coeficientes HOA en lugar de los coeficientes en si, la unidad LIT 30 puede reducir potencialmente la complejidad computacional de realizar la SVD en terminos de uno o mas ciclos de procesador y espacio de almacenamiento, al mismo tiempo que se consigue la misma eficacia en la codificacion de la fuente de audio como si la SVD se aplicara directamente a los coeficientes HOA. Es decir, la SVD de tipo PSD anteriormente descrita puede ser potencialmente menos exigente de calculo porque la SVD se realiza sobre una matriz F*F (con F el numero de coeficientes HOA). En comparacion con una matriz M*F con M es la longitud de tramas, es decir, 1024 o mas muestras. La complejidad de una SVD puede ahora, a traves de la aplicacion en la PSD en lugar de los coeficientes HOA 11, estar alrededor de O (LA3) en comparacion con O (M*La2) cuando se aplica a los coeficientes HOA 11 (donde O(*) indica la notacion grande-O de la complejidad computacional comun a las artes de la informatica).
La unidad de calculo de parametros 32 representa una unidad configurada para calcular varios parametros, tales como un parametro de correlacion (R), parametros de propiedades direccionales (9, q, r) y una propiedad de energfa (e). Cada uno de estos parametros para la trama actual puede indicarse como R[k], 9[k], q[k], r[k] y e[k]. La unidad de calculo de parametros 32 puede realizar un analisis de energfa y/o correlacion (o lo que se denomina correlacion cruzada) con respecto a los vectores US [k] 33 para identificar estos parametros. La unidad de calculo de parametros 32 tambien puede determinar estos parametros para la trama anterior, donde los parametros de trama anteriores pueden indicarse R[k-1], 9[k-1], q [k-1], r[k-1] y e[ k-1] en base a la trama anterior de vectores US [k-1] y V[k-1]. La unidad de calculo de parametros 32 puede emitir los parametros actuales 37 y los parametros anteriores 39 para reordenar la unidad 34.
Es decir, la unidad de calculo de parametros 32 puede realizar un analisis de energfa con respecto a cada uno de los L primeros US [ k] vectores 33 correspondientes a una primera vez y cada uno de los segundos vectores US [k-1] 33 correspondientes a una segunda vez, calculando una energfa media cuadratica para al menos una parte de la primera trama de audio (pero a menudo la totalidad) y una parte de la segunda trama de audio (pero a menudo la totalidad) y de este modo generar 2L energfas, una para cada uno de los L primeros vectores US [k] 33 de la primera trama de audio y uno para cada uno de los segundos vectores US [k-1] 33 de la segunda trama de audio.
En otros ejemplos, la unidad de calculo de parametros 32 puede realizar una correlacion cruzada entre una parte (si no la totalidad) del conjunto de muestras para cada uno de los primeros vectores US [k] 33 y cada uno de los segundos vectores US [k-1] 33. La correlacion cruzada puede referirse a la correlacion cruzada tal como se entiende en las tecnicas de procesamiento de senales. En otras palabras, la correlacion cruzada puede referirse a una medida de similitud entre dos formas de onda (que en este caso se define como un conjunto discreto de M muestras) como una funcion de un retardo de tiempo aplicada a una de ellas. En algunos ejemplos, para realizar una correlacion cruzada, la unidad de calculo de parametros 32 compara las ultimas L muestras de cada uno de los primeros vectores US [k] 27, por orden, con las L primeras muestras de cada uno de los restantes de los segundos vectores US [k-1] 33 para determinar un parametro de correlacion. Tal como se utiliza en el presente documento, una operacion "por orden" se refiere a una operacion elemento por elemento realizada con respecto a un primer conjunto de elementos y un segundo conjunto de elementos, en el que la operacion extrae un elemento de cada uno de los conjuntos primero y segundo de elementos "uno tras otro" de acuerdo con una ordenacion de los conjuntos.
La unidad de calculo de parametros 32 tambien puede analizar los vectores V[k] y/o V[k-1] 35 para determinar los parametros de propiedad direccionales. Estos parametros de propiedad direccionales pueden proporcionar una indicacion de movimiento y localizacion del objeto de audio representado por los vectores correspondientes US[k] y/o US [k-1] 33. La unidad de calculo de parametros 32 puede proporcionar cualquier combinacion de los parametros actuales anteriores 37 (determinada con respecto a los vectores US[k] 33 y/o los vectores V[k] 35) y cualquier combinacion de los parametros anteriores 39 (determinada con respecto a los vectores US[k-1] 33 y/o los vectores V[k-1] 35) a la unidad de reordenacion 34.
La descomposicion SVD no garantiza que la senal/objeto de audio representada por el p-esimo vector en los vectores US [k-1] 33, que se pueda indicar como vector US [k-1][p] (o, alternativamente, como Xpsp)(k-1)), sera la misma senal/objeto de audio (progresado en el tiempo) representado por el vector p-esimo en los vectores US[k] 33, que tambien se puede indicar como vectores US[k][p] 33 (o, alternativamente, como Xpsp)(k)). Los parametros calculados por la unidad de calculo de parametros 32 pueden ser utilizados por la unidad de reordenacion 34 para reordenar los objetos de audio para representar su evaluacion natural o continuidad en el tiempo.
5
10
15
20
25
30
35
40
45
50
55
Es decir, la unidad de reordenacion 34 puede entonces comparar cada uno de los parametros 37 de los primeros vectores US[k] 33 por orden frente a cada uno de los parametros 39 de los segundos vectores US[k-1] 33. La unidad de reordenacion 34 puede reordenar (utilizando como ejemplo un algoritmo hungaro) los diversos vectores dentro de la matriz US [k] 33 y la matriz V[k ] 35 en base a los parametros actuales 37 y los parametros anteriores 39 para emitir una matriz uS[k] reordenada 33' (que se puede designar matematicamente como US[k]) y una matriz V[ k] reordenada 35 '(que se puede designar matematicamente como V[k]) a una unidad de seleccion de sonido de primer plano 36 (o sonido predominante - PS) ("unidad de seleccion del primer plano 36") y una unidad de compensacion de energfa 38.
En otras palabras, la unidad de reordenacion 34 puede representar una unidad configurada para reordenar los vectores dentro de la matriz US[k] 33 para generar la matriz US[k] reordenada 33'. La unidad de reordenacion 34 puede reordenar la matriz US[k] 33 porque el orden de los vectores US[k] 33 (donde, de nuevo, cada vector de los vectores US [k] 33, que de nuevo se puede indicar como XpsP) (k), puede representar uno o mas objetos monoaudio distintos (o, en otras palabras, predominantes) presentes en el campo sonoro) puede variar a partir de partes de los datos de audio. Es decir, dado que el dispositivo de codificacion de audio 12, en algunos ejemplos, opera en estas partes de los datos de audio denominadas generalmente tramas de audio, la posicion de los vectores correspondientes a estos distintos objetos monoaudio como se representa en la matriz US[k] 33 tal como se obtiene, puede variar desde la trama de audio a la trama de audio debido a la aplicacion de la SVD a las tramas y la notabilidad variable de cada forma de objeto de audio trama a trama.
Pasar los vectores dentro de la matriz US[k] 33 directamente a la unidad codificadora de audio psicoacustico 40 sin reordenar los vectores dentro de la matriz Us [k] 33 desde la trama de audio a la trama de audio puede reducir el alcance de la compresion alcanzable para algunos esquemas de compresion, tales como los esquemas de compresion heredados que funcionan mejor cuando los objetos monoaudio son continuos (en el sentido del canal, que se define en este ejemplo por el orden de posicion de los vectores dentro de la matriz US[k] 33 relativos unos a otros) a traves de tramas de audio. Ademas, cuando no se vuelve a ordenar, la codificacion de los vectores dentro de la matriz US[k] 33 puede reducir la calidad de los datos de audio cuando se descodifican. Por ejemplo, los codificadores AAC que pueden representarse en el ejemplo de la Fig. 3 con la unidad codificadora de audio psicoacustico 40 pueden comprimir mas eficazmente uno o mas de los vectores reordenados dentro de la matriz US[k] 33' trama a trama en comparacion con la compresion lograda al codificar directamente los vectores dentro de la matriz US[k] 33 trama a trama. Aunque se ha descrito anteriormente con respecto a los codificadores AAC, las tecnicas pueden realizarse con respecto a cualquier codificador que proporcione mejor compresion cuando se especifican objetos monoaudio a traves de tramas en un orden o posicion especfficos (sentido del canal).
Varios aspectos de las tecnicas pueden, de este modo, permitir al dispositivo de codificacion de audio 12 reordenar uno o mas vectores (por ejemplo, los vectores dentro de la matriz US [k] 33 para generar uno o mas vectores reordenados dentro de la matriz US [k] reordenada 33' y, de este modo, facilitar la compresion de los vectores dentro de la matriz US[k] 33 mediante un codificador de audio heredado tal como la unidad codificadora de audio psicoacustico 40).
Por ejemplo, la unidad de reordenacion 34 puede reordenar uno o mas vectores dentro de la matriz US[k] 33 desde una primera trama de audio subsiguiente en el tiempo a la segunda trama a la que uno o mas vectores segundos dentro de la matriz US[k-1] 33 corresponden en base a los parametros actuales 37 y los parametros anteriores 39. Aunque se describe en el contexto de una primera trama de audio que es posterior en el tiempo a la segunda trama de audio, la primera trama de audio puede preceder en el tiempo a la segunda trama de audio. Por consiguiente, las tecnicas no deben limitarse al ejemplo descrito en esta divulgacion.
Para ilustrar considere la siguiente Tabla 1 donde cada uno de los p vectores dentro de la matriz US [k] 33 se denomina US[k][p], donde k indica si el vector correspondiente es de la k-esima trama o la trama anterior (k-1) y p indica la fila del vector relativa a los vectores de la misma trama de audio (donde la matriz US[k] tiene (N+1)2 de dichos vectores). Como se ha indicado anteriormente, suponiendo que se determina que N es uno, p puede indicar los vectores uno (1) a (4).
Tabla 1
Energfa bajo consideracion
Comparado con
US[k-1][1]
US[k][1], US[k][2], US[k][3], US[k][4]
US[k-1][2]
US[k][1], US[k][2], US[k][3], US[k][4]
US[k-1][3]
US[k][1], US[k][2], US[k][3], US[k][4]
US[k-1][4]
US[k][1], US[k][2], US[k][3], US[k][4]
5
10
15
20
25
30
35
40
45
En la Tabla 1 anterior, la unidad de reordenacion 34 compara la energfa calculada para US[k-1][1] con la energfa calculada para cada uno de US[k][1], US[k] [2], US[k][3], US[k][4], la energfa calculada para Us[k-1][2] a la energfa calculada para cada uno de US[k][1], US[k][2], US[k][3], US[ k][4], etc. La unidad de reordenacion 34 puede entonces descartar uno o mas de los segundos vectores US[k-1] 33 de la segunda trama de audio anterior (en el tiempo). Para ilustrar, considere la siguiente Tabla 2 que muestra los segundos vectores US[k-1] restantes 33:
Tabla 2
Vector bajo consideracion
Restante bajo consideracion
US[k-1][1]
US[k][1], US[k][2]
US[k-1][2]
US[k][1], US[k][2]
US[k-1][3]
US[k][3], US[k][4]
US[k-1][4]
US[k][3], US[k][4]
En la Tabla 2 anterior, la unidad de reordenacion 34 puede determinar, en base a la comparacion de energfa, que la energfa calculada para US[k-1 [1] es similar a la energfa calculada para cada uno de US[k][1] y US[k][2], la energfa calculada para US[k-1][2] es similar a la energfa calculada para cada uno de US[k][1] y US[k][2], la energfa calculada para US[k-1][3] es similar a la energfa calculada para cada uno de US[k][3] y US[k][4], y la energfa calculada para US[k-1][4] es similar a la energfa calculada para cada uno de US[k][3] y US[k][4]. En algunos ejemplos, la unidad de reordenacion 34 puede realizar un analisis de energfa adicional para identificar una similitud entre cada uno de los primeros vectores de la matriz US[k] 33 y cada uno de los segundos vectores de la matriz US[k-1] 33.
En otros ejemplos, la unidad de reordenacion 32 puede reordenar los vectores basandose en los parametros actuales 37 y los parametros anteriores 39 relativos a la correlacion cruzada. En estos ejemplos, haciendo referencia de nuevo a la Tabla 2 anterior, la unidad de reordenacion 34 puede determinar la siguiente correlacion ejemplar expresada en la Tabla 3 basandose en estos parametros de correlacion cruzada:
Tabla 3
Vector bajo consideracion
Correlaciona con
US[k-1][1]
US[k][2]
US[k-1][2]
US[k][1]
US[k-1][3]
US[k][3]
US[k-1][4]
US[k][4]
A partir de la Tabla 3 anterior, la unidad de reordenacion 34 determina, por ejemplo, que el vector US[k-1][1] correlaciona con el vector US[k][2] posicionado de forma diferente, el vector US[k-1][2] correlaciona con el vector US[k][1] posicionado de forma diferente, el vector US[k-1][3] correlaciona con el vector uS[k][3] posicionado de forma similar y el US[k-1][4] correlaciona con el vector US[k][4] posicionado de forma similar. En otras palabras, la unidad de reordenacion 34 determina lo que puede denominarse informacion de reordenacion que describe como reordenar los primeros vectores de la matriz US[k] 33 de manera que el vector US[k][2] se reposiciona en la primera fila de los primeros vectores de la matriz US[k] 33 y el vector US[k][1] se reposicionan en la segunda fila de los primeros vectores US[k] 33. La unidad de reordenacion 34 puede entonces reordenar los primeros vectores de la matriz US[k] 33 basandose en esta informacion de reordenacion para generar la matriz US[k] reordenada 33'.
Ademas, la unidad de reordenacion 34 puede, aunque no se muestra en el ejemplo de la Fig. 4, proporcionar esta informacion de reordenacion al dispositivo de generacion de flujo de bits 42, que puede generar el flujo de bits 21 para incluir esta informacion de reordenacion de modo que el dispositivo de descodificacion de audio, tal como el dispositivo de descodificacion de audio 24 mostrado en el ejemplo de las Figs. 3 y 5, puede determinar como reordenar los vectores reordenados de la matriz US[k] 33' para recuperar los vectores de la matriz US[k] 33.
Aunque se ha descrito anteriormente que realizan un proceso de dos pasos que implica un analisis basado primero en parametros especfficos de energfa y luego en parametros de correlacion cruzada, la unidad de reordenacion 32 solo puede realizar este analisis solamente con respecto a parametros de energfa para determinar la informacion de reordenacion, realizar este analisis solo con respecto a los parametros de correlacion cruzada para determinar la informacion de reordenacion, o realizar el analisis con respecto tanto a los parametros de energfa como a los parametros de correlacion cruzada de la manera descrita anteriormente. Ademas, las tecnicas pueden emplear otros tipos de procesos para determinar la correlacion que no implican realizar una o ambas de una comparacion de energfa y/o una correlacion cruzada. Por consiguiente, las tecnicas no deben estar limitadas a este respecto a los ejemplos expuestos anteriormente. Ademas, pueden usarse tambien otros parametros obtenidos a partir de la
5
10
15
20
25
30
35
40
45
50
55
unidad de calculo de parametros 32 (tales como los parametros de posicion espaciales obtenidos a partir de los vectores V o la correlacion de los vectores en V[k] y V[k -1]) (simultaneamente/conjuntamente o secuencialmente) con la energfa y los parametros de correlacion cruzada obtenidos de US[k] y US[k-1] para determinar el orden correcto de los vectores en US.
Como ejemplo de utilizacion de la correlacion de los vectores de la matriz V, la unidad de calculo de parametros 34 puede determinar que los vectores de la matriz V[k] 35 estan correlacionados tal como se especifica en la siguiente Tabla 4:
Tabla 4
Vector bajo consideracion
Correlaciona con
V[k-1][1]
V[k][2]
V[k-1][2]
V[k][1]
V[k-1][3]
V[k][3]
V[k-1][4]
V[k][4]
A partir de la Tabla 4 anterior, la unidad de reordenacion 34 determina, por ejemplo, que el vector V[k-1][1] correlaciona con el vector V[k][2] posicionado de forma diferente, el vector V[k-1][2] correlaciona con el vector V[k][1] posicionado de forma diferente, el vector V[k-1][3] correlaciona con el vector V[k][3] posicionado de forma similar y el vector V[k-1][4] correlaciona con el vector V[k][4] posicionado de forma similar. La unidad de reordenacion 34 puede emitir la version reordenada de los vectores de la matriz V[k] 35 como una matriz V[k] reordenada 35'.
En algunos ejemplos, la misma reordenacion que se aplica a los vectores de la matriz US se aplica tambien a los vectores de la matriz V. En otras palabras, cualquier analisis usado para reordenar los vectores V puede usarse junto con cualquier analisis usado para reordenar los vectores US. Para ilustrar un ejemplo en el que la informacion de reordenacion no se determina unicamente con respecto a los parametros de energfa y/o los parametros de correlacion cruzada con respecto a los vectores US[k] 35, la unidad de reordenacion 34 tambien puede realizar este analisis con respecto a los vectores V[k] 35 en base a los parametros de correlacion cruzada y los parametros energeticos de una manera similar a la descrita anteriormente con respecto a los vectores V[k] 35. Ademas, aunque los vectores US[k] 33 no tienen propiedades direccionales, los vectores V[k] 35 pueden proporcionar informacion relativa a la direccionalidad de los correspondientes vectores US[k] 33. En este sentido, la unidad de reordenacion
34 puede identificar correlaciones entre los vectores V[k] 35 y los vectores V[k-1] 35 en base a en un analisis de los correspondientes parametros de propiedades direccionales. Es decir, en algunos ejemplos, el objeto de audio se mueve dentro de un campo sonoro de una manera continua cuando se mueve o permanece en una posicion relativamente estable. Como tal, la unidad de reordenacion 34 puede identificar aquellos vectores de la matriz V[k]
35 y la matriz V[k-1] 35 que exhiben algun movimiento realista ffsicamente conocido o que permanecen estacionarios dentro del campo sonoro como correlacionados, reordenando los vectores US[k] 33 y los vectores V[k] 35 basados en esta correlacion de propiedades direccionales. En cualquier caso, la unidad de reordenacion 34 puede emitir los vectores US[k] reordenados 33' y los vectores V[k] reordenados 35' a la unidad de seleccion del primer plano 36.
Ademas, las tecnicas pueden emplear otros tipos de procesos para determinar el orden correcto que no implican realizar una comparacion de energfa y/o una correlacion cruzada, o ambas. Por consiguiente, las tecnicas no deben estar limitadas a este respecto a los ejemplos expuestos anteriormente.
Aunque se describen anteriormente como reordenando los vectores de la matriz V para reflejar la reordenacion de los vectores de la matriz US, en ciertos casos, los V vectores pueden reordenarse de manera diferente que los vectores US, donde se pueden generar elementos sintacticos separados para indicar la reordenacion de los vectores US y la reordenacion de los vectores V. En algunos casos, los vectores V pueden no ser reordenados y solo los vectores US pueden ser reordenados dado que los vectores V pueden no estar codificados psicoacusticamente.
Un modo de realizacion en el que la reordenacion de los vectores de la matriz V y los vectores de la matriz US son diferentes, es cuando la intencion es intercambiar objetos de audio en el espacio, es decir, alejarlos de la posicion original registrada (cuando el campo sonoro subyacente era una grabacion natural) o la posicion artfsticamente deseada (cuando el campo sonoro subyacente es una mezcla artificial de objetos). Por ejemplo, supongamos que hay dos fuentes de audio A y B, A puede ser el sonido de un gato "miau" que emana de la parte "izquierda" del campo sonoro y B puede ser el sonido de un perro "guau" que emana de la parte "derecha" del campo sonoro. Cuando la reordenacion de V y US es diferente, la posicion de las dos fuentes de sonido es intercambiada. Despues del intercambio, A (el "miau") emana de la parte derecha del campo sonoro, y B ("el guau") emana de la parte izquierda del campo sonoro.
5
10
15
20
25
30
35
40
45
50
55
60
65
La unidad de analisis del campo sonoro 44 puede representar una unidad configurada para realizar un analisis de campo sonoro con respecto a los coeficientes HOA 11 para alcanzar potencialmente una velocidad de bits objetivo 41. La unidad de analisis del campo sonoro 44 puede, en base a este analisis y/o en una velocidad de bits objetivo recibida 41, determinar el numero total de instanciaciones del codificador psicoacustico (que puede ser una funcion del numero total de canales ambientales o de fondo (BGtot) y el numero de canales de primer plano o, en otras palabras, canales predominantes. El numero total de instanciaciones del codificador psicoacustico se puede indicar como numHOATransportChannels. La unidad de analisis del campo sonoro 44 tambien puede determinar, de nuevo para alcanzar potencialmente la velocidad de bits objetivo 41, el numero total de canales de primer plano (nFG) 45, el orden mfnimo del campo sonoro de fondo (o, en otras palabras, ambiente) (Nbg o, alternativamente, MinAmbHoaOrder), el numero correspondiente de canales reales representativos del orden mfnimo del campo sonoro de fondo (nBGa = (MinAmbHoaOrder+1) 2), y los indices (i) de los canales adicionales de BG HOA a enviar (que pueden ser colectivamente indicados como informacion de canal de fondo 43 en el ejemplo de la Fig. 4). La informacion de canal de fondo 42 tambien puede denominarse informacion de canal ambiental 43. Cada uno de los canales que permanece de numHOATransportChannels - nBGa, puede ser un "canal de fondo/ambiental adicional", un "canal predominante basado en un vector activo", una "senal predominante basada en la direccion activa" o "completamente inactivo". En un modo de realizacion, estos tipos de canales se pueden indicar (como un "ChannelType") un elemento de sintaxis con dos bits (por ejemplo, 00: canal de fondo adicional, 01: senal predominante basada en vector, 10: senal inactiva, 11: senal basada la direccion). El numero total de senales de fondo o de ambiente, nBGa, puede ser dado por (MinAmbHoaOrder +1)2 + el numero de veces que el fndice 00 (en el ejemplo anterior) aparece como un tipo de canal en el flujo de bits para esa trama.
En cualquier caso, la unidad de analisis del campo sonoro 44 puede seleccionar el numero de canales de fondo (o, en otras palabras, ambientales) y el numero de canales de primer plano (o, en otras palabras, predominantes) en base a la velocidad de bits objetivo 41, seleccionado mas canales de fondo y/o de primer plano cuando la velocidad de bits objetivo 41 es relativamente mayor (por ejemplo, cuando la velocidad de bits objetivo 41 es igual o mayor que 512 Kbps). En un modo de realizacion, el numHOATransportChannels se puede establecer en 8 mientras que el MinAmbHoaOrder puede ser puesto a 1 en la seccion de encabezamiento del flujo de bits (que se describe con mas detalle con respecto a las Figs. 10-10O (ii)). En este escenario, en cada trama se pueden dedicar cuatro canales para representar la parte de fondo o ambiente del campo sonoro, mientras que los otros 4 canales pueden, en una base trama a trama, variar segun el tipo de canal, por ejemplo, un canal de fondo/ambiente adicional o un canal de primer plano/predominante. Las senales en primer plano/predominantes pueden ser una entre senales basadas en vectores o en la direccion, como se ha descrito anteriormente.
En algunos casos, el numero total de senales predominantes basadas en vectores para una trama, puede darse con el numero de veces que el fndice ChannelType es 01, en el flujo de bits de dicha trama, en el ejemplo anterior. En la realizacion anterior, para cada canal de fondo/ambiente adicional (por ejemplo, correspondiente a un ChannelType de 00), se puede representar en ese canal una informacion correspondiente de los posibles coeficientes HOA (mas alla de los cuatro primeros). Esta informacion, para el contenido HOA de cuarto orden, puede ser un fndice para indicar entre 5-25 (los primeros cuatro 1-4 se pueden enviar todo el tiempo cuando minAmbHoaOrder se establece en 1, por lo tanto, solo es necesario indicar uno entre 5-25). Esta informacion podrfa ser enviada utilizando un elemento de sintaxis de 5 bits (para el contenido de 4° orden), que puede denominarse "CodedAmbCoeffIdx".
En una segunda forma de realizacion, todas las senales de primer plano/predominantes son senales basadas en vectores. En esta segunda forma de realizacion, el numero total de senales en primer plano / predominantes puede darse con nFG = numHOATransportChannels - [(MinAmbHoaOrder +1)2 + el numero de veces del fndice 00].
La unidad de analisis del campo sonoro 44 envfa la informacion de canal de fondo 43 y los coeficientes HOA 11 a la unidad de seleccion de fondo 46, la informacion de canal de fondo 43 a la unidad de reduccion de coeficientes 46 y la unidad de generacion del flujo de bits 42 y el nFG 45 a una unidad de seleccion de primer plano 36.
En algunos ejemplos, la unidad de analisis del campo sonoro 44 puede seleccionar, basandose en un analisis de los vectores de la matriz US[k] 33 y de la velocidad de bits objetivo 41, un numero variable de nFG de estos componentes que tiene el valor maximo. En otras palabras, la unidad de analisis del campo sonoro 44 puede determinar un valor para una variable A (que puede ser similar o sustancialmente similar a Nbg), que separa dos subespacios, analizando la pendiente de la curva creada por los valores diagonales descendentes de los vectores de la matriz S[k] 33, donde los grandes valores singulares representan sonidos de primer plano o distintos y los valores singulares bajos singular representan los componentes de fondo del campo sonoro. Es decir, la variable A puede segmentar el campo sonoro global en un subespacio de primer plano y un subespacio de fondo.
En algunos ejemplos, la unidad de analisis del campo sonoro 44 puede usar una primera y una segunda derivada de la curva de valor singular. La unidad de analisis del campo sonoro 44 puede tambien limitar el valor para la variable A a estar entre uno y cinco. Como otro ejemplo, la unidad de analisis del campo sonoro 44 puede limitar el valor de la variable A a estar entre uno y (N+1)2 Alternativamente, la unidad de analisis del campo sonoro 44 puede predefinir el valor para la variable A, por ejemplo a un valor de cuatro. En cualquier caso, basandose en el valor de A, la unidad de analisis del campo sonoro 44 determina el numero total de canales de primer plano (nFG) 45, el orden del campo sonoro de fondo (Nbg) y el numero (nBGa) y los indices (i) de los canales BG HOA adicionales a enviar.
5
10
15
20
25
30
35
40
45
50
55
60
65
Ademas, la unidad de analisis del campo sonoro 44 puede determinar la energfa de los vectores de la matriz V[^j 35 sobre una base por vector. La unidad de analisis del campo sonoro 44 puede determinar la energfa para cada uno de los vectores de la matriz V[^j 35 e identificar aquellos que tienen una alta energfa como componentes de primer plano.
Ademas, la unidad de analisis del campo sonoro 44 puede realizar otros analisis diversos con respecto a los coeficientes HOA 11, que incluyen un analisis de energfa espacial, un analisis de enmascaramiento espacial, un analisis de difusion u otras formas de analisis auditivo. La unidad de analisis del campo sonoro 44 puede realizar el analisis de energfa espacial a traves de la transformacion de los coeficientes HOA 11 en el dominio espacial e identificar areas de alta energfa representativas de componentes direccionales del campo sonoro que deben conservarse. La unidad de analisis del campo sonoro 44 puede realizar el analisis de enmascaramiento espacial perceptivo de una manera similar a la del analisis de energfa espacial, excepto que la unidad de analisis del campo sonoro 44 puede identificar areas espaciales que estan enmascaradas por sonidos de energfa superior espacialmente proximos. La unidad de analisis del campo sonoro 44 puede entonces, en base a areas perceptualmente enmascaradas, identificar en menor numero de componentes de primer plano en algunos casos. La unidad de analisis del campo sonoro 44 puede realizar ademas un analisis de difusion con respecto a los coeficientes HOA 11 para identificar areas de energfa difusa que pueden representar componentes de fondo del campo sonoro.
La unidad de analisis del campo sonoro 44 tambien puede representar una unidad configurada para determinar la notabilidad, la distincion o el predominio de los datos de audio que representan un campo sonoro, utilizando informacion basada en la direccionalidad asociada con los datos de audio. Mientras que las determinaciones basadas en energfa pueden mejorar la reproduccion de un campo sonoro descompuesto por SVD para identificar componentes de audio distintos del campo sonoro, las determinaciones basadas en energfa tambien pueden hacer que un dispositivo identifique erroneamente componentes de audio de fondo como componentes de audio distintos, en aquellos casos en los que los componentes de audio de fondo exhiben un alto nivel de energfa. Es decir, una separacion de componentes de audio distintos y de fondo, exclusivamente basada en energfa, puede no ser robusta, ya que los componentes de audio de fondo energeticos (por ejemplo, mas altos) pueden identificarse incorrectamente como componentes de audio distintos. Para distinguir mas fuertemente entre componentes de audio distintos y de fondo del campo sonoro, diversos aspectos de las tecnicas descritas en esta divulgacion pueden permitir que la unidad de analisis del campo sonoro 44 realice un analisis basado en direccionalidad de los coeficientes HOA 11 para separar los componentes de audio de primer plano y ambientales de las versiones descompactadas de los coeficientes HOA 11.
A este respecto, la unidad de analisis de campos sonoros 44 puede representar una unidad configurada o, de algun modo, operable para identificar elementos distintos (o de primer plano) a partir de elementos de fondo incluidos en uno o mas de los vectores de la matriz US[^j 33 y los vectores de la matriz V[^j 35. De acuerdo con algunas tecnicas basadas en SVD, los componentes mas energeticos (por ejemplo, los primeros vectores de una o mas de la matriz US[^j 33 y la matriz V[^j 35 o vectores derivados de la misma) pueden tratarse como componentes distintos. Sin embargo, los componentes mas energicos (que estan representados por vectores) de uno o mas de los vectores de la matriz US[^j 33 y los vectores de la matriz V[^j 35 pueden no representar en todos los escenarios, los componentes/senales que son los mas direccionales.
La unidad de analisis del campo sonoro 44 puede implementar uno o mas aspectos de las tecnicas descritas aquf para identificar elementos de primer plano/directo/predominantes basados en la direccionalidad de los vectores de uno o mas de los vectores de la matriz US[^j 33 y los vectores de la matriz V[^j 35 o los vectores derivados de la misma. En algunos ejemplos, la unidad de analisis del campo sonoro 44 puede identificar o seleccionar como componentes de audio distintos (donde los componentes tambien pueden denominarse "objetos"), uno o mas vectores basados tanto en energfa como en la direccionalidad de los vectores. Por ejemplo, la unidad de analisis del campo sonoro 44 puede identificar aquellos vectores de uno o mas de los vectores de la matriz US[^j 33 y los vectores de la matriz V[^j 35 (o vectores derivados de la misma) que muestran tanto una alta energfa como una alta direccionalidad (por ejemplo, representada como un cociente de direccionalidad) como componentes de audio distintos. Como resultado, si la unidad de analisis del campo sonoro 44 determina que un vector particular es relativamente menos direccional cuando se compara con otros vectores de uno o mas de los vectores de la matriz US[^j 33 y los vectores de la matriz V[^j 35 (o vectores derivados de la misma), entonces independientemente del nivel de energfa asociado con el vector particular, la unidad de analisis del campo sonoro 44 puede determinar que el vector particular representa componentes de audio de fondo (o ambiente) del campo sonoro representados por los coeficientes HOA 11.
En algunos ejemplos, la unidad de analisis del campo sonoro 44 puede identificar objetos de audio distintos (que, como se ha indicado anteriormente, tambien pueden denominarse "componentes") basandose en la direccionalidad, realizando las siguientes operaciones. La unidad de analisis del campo sonoro 44 puede multiplicar (por ejemplo, usando uno o mas procesos de multiplicacion de matrices) los vectores de la matriz S[^j (que pueden derivarse a partir de los vectores US[^j 33 o, aunque no se muestra en el ejemplo de la Fig. 4, emitidos por separado mediante la unidad LIT 30) con los vectores de la matriz V[^j 35. Mediante la multiplicacion de la matriz V[^j 35 y de los
5
10
15
20
25
30
35
40
45
50
55
60
65
vectores S[^j, la unidad de analisis del campo sonoro 44 puede obtener la matriz VS[^j. Ademas, la unidad de analisis del campo sonoro 44 puede ser cuadrada (es decir, elevar exponencialmente por una potencia de dos) al menos algunas de las entradas de cada uno de los vectores de la matriz VS[^j. En algunos casos, la unidad de analisis del campo sonoro 44 puede sumar aquellas entradas al cuadrado de cada vector que estan asociadas con un orden mayor que 1.
Por ejemplo, si cada vector de la matriz VS[^j, que incluye 25 entradas, la unidad de analisis del campo sonoro 44 puede, con respecto a cada vector, elevar al cuadrado las entradas de cada vector comenzando por la entrada quinta y terminando por la entrada vigesimo quinta, sumando las entradas al cuadrado para determinar un cociente de direccionalidad (o un indicador de direccionalidad). Cada operacion de suma puede dar como resultado un cociente de direccionalidad para un vector correspondiente. En este ejemplo, la unidad de analisis del campo sonoro 44 puede determinar que aquellas entradas de cada fila que estan asociadas con un orden menor o igual a 1, concretamente, de la primera a la cuarta entradas, se dirigen mas generalmente a la cantidad de energfa y menos a la direccionalidad de esas entradas. Es decir, los ambisonicos de orden inferior asociados a un orden de cero o uno corresponden a funciones de base esferica que, como se ilustra en la Fig. 1 y la Fig. 2, no proporcionan mucho en terminos de la direccion de la onda de presion, sino que proporcionan algo de volumen (que es representativo de la energfa).
Las operaciones descritas en el ejemplo anterior tambien se pueden expresar de acuerdo con el siguiente pseudocodigo. El pseudocodigo siguiente incluye anotaciones, en forma de declaraciones de comentarios que se incluyen en las instancias consecutivas de las cadenas de caracteres "/*" y "*/" (sin comillas).
[U, S, V] = svd(audioframe, 'ecom');
VS = V*S;
/* La lfnea siguiente se dirige a analizar cada fila independientemente y a sumar los valores de la primera fila (por ejemplo) de la quinta entrada a la entrada vigesimo quinta para determinar un cociente de direccionalidad o metrica de direccionalidad para un vector correspondiente. Elevar al cuadrado las entradas antes de sumar. Las entradas en cada fila que estan asociadas con un orden mayor que 1 estan asociadas con ambisonicos de orden superior y, por lo tanto, tienen mas probabilidades de ser direccionales. */
sumVS = sum(VS(5:end,:).A2,1);
/* La lfnea siguiente se dirige a ordenar la suma de los cuadrados de la matriz VS generada, y a seleccionar un conjunto de los valores mas grandes (por ejemplo, tres o cuatro de los valores mas grandes) */
[~,idxVS] = sort(sumVS,'descend');
U = U(:,idxVS);
V = V(:,idxVS);
S = S(idxVS,idxVS);
En otras palabras, de acuerdo con el pseudocodigo anterior, la unidad de analisis del campo sonoro 44 puede seleccionar entradas de cada vector de la matriz VS[^] descompuesta de las de los coeficientes HOA 11 correspondientes a una funcion de base esferica que tiene un orden mayor que uno. La unidad de analisis del campo sonoro 44 puede entonces elevar al cuadrado estas entradas para cada vector de la matriz VS[^], sumando las entradas elevadas al cuadrado para identificar, calcular o, de algun modo, determinar una metrica o cociente de direccionalidad para cada vector de la matriz VS[^]. A continuacion, la unidad de analisis del campo sonoro 44 puede ordenar los vectores de la matriz VS[^] en base a las respectivas metricas de direccionalidad de cada uno de los vectores. La unidad de analisis del campo sonoro 44 puede clasificar estos vectores en un orden descendente de metricas de direccionalidad, de tal manera que los vectores con la direccionalidad correspondiente mas alta son los primeros y aquellos vectores con la direccionalidad correspondiente mas baja son ultimos. La unidad de analisis del campo sonoro 44 puede entonces seleccionar el subconjunto diferente de cero de los vectores que tienen la metrica de direccionalidad relativa mas alta.
La unidad de analisis del campo sonoro 44 puede realizar cualquier combinacion de los analisis anteriores para determinar el numero total de instanciaciones del codificador psicoacustico (que puede ser una funcion del numero total de canales ambientales o de fondo (BGtot) y el numero de canales de primer plano. La unidad de analisis del campo sonoro 44 puede, en base a cualquier combinacion de los analisis anteriores, determinar el numero total de canales de primer plano (nFG) 45, el orden del campo sonoro de fondo (Nbg) y el numero (nBGa) y los indices (i) de los canales BG hOa adicionales para enviar (que pueden indicarse colectivamente como informacion de canal de fondo 43 en el ejemplo de la Fig. 4).
5
10
15
20
25
30
35
40
45
50
55
60
65
En algunos ejemplos, la unidad de analisis del campo sonoro 44 puede realizar este analisis cada M-muestras, las cuales pueden ser reexpresadas en una base de trama por trama. A este respecto, el valor de A puede variar de trama en trama. Un ejemplo de un flujo de bits donde se toma la decision cada M-muestras se muestra en las Figs. 10-10O(ii). En otros ejemplos, la unidad de analisis del campo sonoro 44 puede realizar este analisis mas de una vez por trama, analizando dos o mas partes de la trama. Por consiguiente, las tecnicas no deben estar limitadas a este respecto a los ejemplos descritos en esta divulgacion.
La unidad de seleccion de fondo 48 puede representar una unidad configurada para determinar los coeficientes HOA de fondo o ambientales 47 en base a la informacion de canal de fondo (por ejemplo, el campo sonoro de fondo (Nbg) y el numero (nBGa) y los indices (i) de los canales BG HOA adicionales para enviar). Por ejemplo, cuando Nbg es igual a uno, la unidad de seleccion de fondo 48 puede seleccionar los coeficientes HOA 11 para cada muestra de la trama de audio que tiene un orden igual o inferior a uno. La unidad de seleccion de fondo 48 puede, en este ejemplo, seleccionar entonces los coeficientes HOA 11 que tienen un indice identificado por uno de los indices (i) como coeficientes BG HOA adicionales, en donde el nBGa se proporciona a la unidad de generacion del flujo de bits 42 que se especificara en el flujo de bits 21 para permitir que el dispositivo de descodificacion de audio, tal como el dispositivo de descodificacion de audio 24 que se muestra en el ejemplo de la Fig. 3, para analizar los coeficientes BG HOA 47 del flujo de bits 21. La unidad de seleccion de fondo 48 puede emitir entonces los coeficientes HOA ambientales 47 a la unidad de compensacion de energfa 38. Los coeficientes HOA ambientales 47 pueden tener dimensiones D: Mx [(NBG+1)2+nBGa].
La unidad de seleccion del primer plano 36 puede representar una unidad configurada para seleccionar aquellos vectores de la matriz US[k] reordenada 33' y la matriz V[k] reordenada 35' que representan componentes de primer plano o distintos del campo sonoro en base a nFG 45 (que pueden representar uno o mas indices que identifican estos vectores de primer plano). La unidad de seleccion del primer plano 36 puede emitir senales nFG 49 (que se pueden designar como US[k]1, ..., nFG 49, FG1, ..., nFG[k] 49, o Xps(1nFG) (k) 49) a la unidad codificadora de audio psicoacustico 40, en la que las senales nFG 49 pueden tener dimensiones D:Mx nFG y cada una representa objetos monoaudio. La unidad de seleccion del primer plano 36 tambien puede emitir la matriz V[k] reordenada 35' (o v(lnFG) (k) 35') correspondiente a los componentes de primer plano del campo sonoro a la unidad de interpolacion espacio- temporal 50, donde aquellos componentes de la matriz V[k] reordenada 35 correspondiente a los componentes de primer plano se puede indicar como matriz V[k] de primer plano 51 k (que se puede designar matematicamente como V 1, ..., nFc [k]) con dimensiones D: (N+1)2 x nFG.
La unidad de compensacion de energfa 38 puede representar una unidad configurada para realizar compensacion de energfa con respecto a los coeficientes HOA ambientales 47 y compensar la perdida de energfa debido a la eliminacion de varios de los canales HOA por la unidad de seleccion de fondo 48. La unidad de compensacion de energfa 38 puede realizar un analisis energetico con respecto a una o mas entre la matriz reordenada US[k] 33', la matriz V[k] reordenada 35', las senales nFG 49, los vectores V[k] 51 k y los coeficientes HOA ambientales 47 y luego realizar una compensacion de energfa basada en este analisis de energfa para generar los coeficientes HOA ambientales compensados de energfa 47 '. La unidad de compensacion de energfa 38 puede emitir los coeficientes HOA ambientales compensados de energfa 47' a la unidad codificadora de audio psicoacustico 40.
Efectivamente, la unidad de compensacion de energfa 38 puede utilizarse para compensar posibles reducciones en la energfa global de los componentes de sonido de fondo del campo sonoro causadas por la reduccion del orden de los componentes ambientales del campo sonoro descritos por los coeficientes HOA 11 y generar los coeficientes HOA ambientales de orden reducido 47 (que, en algunos ejemplos, tienen un orden menor que N en terminos de coeficientes solo incluidos que corresponden a funciones de base esferica que tienen los siguientes ordenes/subordenes: [(NBG+1)2+nBGa]). En algunos ejemplos, la unidad de compensacion de energfa 38 compensa esta perdida de energfa determinando una ganancia de compensacion en forma de valores de amplificacion que se aplican a cada una de las columnas [(Nbg+1)2 + nBGa] de los coeficientes HOA ambientales 47 con el fin de aumentar la energfa cuadratica media (RMS) de los coeficientes HOA ambientales 47 para igualar o, al menos aproximar, aproximadamente el RMS de los coeficientes HOA 11 (determinado a traves del analisis de energfa agregado de uno o mas de las matrices US[k] reordenadas 33', la matriz V[k] reordenada 35', las senales nFG 49, los vectores V[k] de primer plano 51 k y los coeficientes HOA ambientales de orden reducido 47) antes de emitir los coeficientes HOA ambientales 47 a la unidad codificadora de audio psicoacustico 40.
En algunos casos, la unidad de compensacion de energfa 38 puede identificar el RMS para cada fila y/o columna de una o mas entre la matriz US[k] reordenada 33' y la matriz V[k] reordenada 35'. La unidad de compensacion de energfa 38 tambien puede identificar el RMS para cada fila y/o columna de uno o mas de los canales de primer plano seleccionados, los cuales pueden incluir las senales nFG 49 y los vectores V[k] de primer plano 51k y los coeficientes HOA ambientales de orden reducido 47. El RMS para cada fila y/o columna de una o mas entre la matriz US[k] reordenada 33' y la matriz V[k] reordenada 35' puede almacenarse en un vector denotado RMScompleto, mientras que el RMS para cada fila y/o columna de una o mas de las senales nFG 49, los vectores V[k] de primer plano 51k y los coeficientes HOA ambientales de orden reducido 47 pueden almacenarse en un vector denotado RMSreduc/do. La unidad de compensacion de energfa 38 puede entonces calcular un vector de valores de amplificacion Z de acuerdo con la siguiente ecuacion: Z = RMScompleto/RMSreduc/do. La unidad de compensacion de energfa 38 puede entonces aplicar este vector de valores de amplificacion Z, o varias partes del mismo, a uno o
5
10
15
20
25
30
35
40
45
50
55
60
65
mas entre las senales nFG 49, los vectores V[*] de primer plano 51* y los coeficientes HOA ambientales de orden reducido 47. En algunos casos, el vector de valor de amplificacion Z se aplica solo a los coeficientes HOA ambientales de orden reducido 47 mediante la siguiente ecuacion HOA bg-red'= HOAbg-redZt, donde HOAbg-red indica los coeficientes HOA ambiental de orden reducido 47, HOAbg-red' indica los coeficientes HOA ambientales reducidos y compensados en energfa 47' y ZT representa la transposicion del vector Z.
En algunos ejemplos, para determinar cada RMS de las respectivas filas y/o columnas de una o mas entre la matriz US[*] reordenada 33', la matriz V[*] reordenada 35', las senales nFG 49, los vectores V[*] de primer plano 51*, y los coeficientes HOA ambientales de orden reducido 47, la unidad de compensacion de energfa 38 puede aplicar primero un coeficiente de armonicos esfericos de referencia (SHC) a las columnas. La aplicacion del reproductor SHC de referencia con la unidad de compensacion de energfa 38 permite la determinacion de RMS en el dominio SHC para determinar la energfa del campo sonoro global descrito por cada fila y/o columna de la trama representado por filas y/o columnas de uno o mas entre la matriz US[*] reordenada 33', la matriz V[*] reordenada 35', las senales nFG 49, los vectores V[3] de primer plano 51* y los coeficientes HOA ambientales de orden reducido 47, como se describe en mas detalle a continuacion.
La unidad de interpolacion espacio-temporal 50 puede representar una unidad configurada para recibir los vectores V[*] de primer plano 51* para la trama k y los vectores de primer plano V[*-1] 51 *-1 para la trama anterior (de ahf el k-1) y realizar una interpolacion espacio-temporal para generar los vectores V[*] de primer plano interpolados. La unidad de interpolacion espacio-temporal 50 puede recombinar las senales nFG 49 con los vectores V[*] de primer plano 51* para recuperar los coeficientes hOa de primer plano reordenados. La unidad de interpolacion espacio- temporal 50 puede entonces dividir los coeficientes HOA de primer plano reordenados por los vectores V[*] interpolados y generar unas senales nFG interpoladas 49'. La unidad de interpolacion espacio-temporal 50 tambien puede emitir los de los vectores V[*] de primer plano 51* que se usaron para generar los vectores V[*] de primer plano interpolados de modo que un dispositivo de descodificacion de audio, tal como el dispositivo de descodificacion de audio 24 puede generar los vectores V[*] de primer plano interpolados y recuperar asf los vectores V[*] de primer plano 51*. Los vectores V[*] de primer plano 51* utilizados para generar los vectores V[*] de primer plano interpolados se indican como los vectores V[*] de primer plano restantes 53. Con el fin de asegurar que los mismos V[*] y V[*-1] se usen en el codificador y el descodificador (para crear los vectores interpolados V[*]) se pueden usar versiones cuantizadas/descuantizadas de estos en el codificador y el descodificador.
A este respecto, la unidad de interpolacion espacio-temporal 50 puede representar una unidad que interpola una primera parte de una primera trama de audio a partir de algunas otras partes de la primera trama de audio y una segunda trama de audio temporalmente subsiguiente o anterior. En algunos ejemplos, las partes pueden indicarse como subtramas, donde la interpolacion realizada con respecto a las subtramas se describe con mas detalle a continuacion con respecto a las Figs. 45-46E. En otros ejemplos, la unidad de interpolacion espacio-temporal 50 puede funcionar con respecto a algun ultimo numero de muestras de la trama anterior y algun primer numero de muestras de la siguiente trama, como se describe con mas detalle con respecto a las Figs. 37-39. La unidad de interpolacion espacio-temporal 50 puede, al realizar esta interpolacion, reducir el numero de muestras de los vectores V[*] de primer plano 51* que se requieren para ser especificados en el flujo de bits 21, ya que solo aquellos de los vectores V[*] de primer plano 51k que se utilizan para generar los vectores V[*] interpolados representan un subconjunto de los vectores V[*] de primer plano 51*. Es decir, con el fin de potencialmente hacer mas eficiente la compresion de los coeficientes HOA 11 (reduciendo el numero de los vectores V[*] de primer plano 51* que se especifican en el flujo de bits 21), diversos aspectos de las tecnicas descritas en esta divulgacion pueden proporcionar la interpolacion de una o mas partes de la primera trama de audio, donde cada una de las partes puede representar versiones descompuestas de los coeficientes HOA 11.
La interpolacion espacio-temporal puede resultar en varias ventajas. En primer lugar, las senales nFG 49 pueden no ser continuas de una trama a otra debido a la naturaleza en bloque en la que se realiza la SVD u otro LIT. Dicho de otro modo, dado que la unidad LIT 30 aplica la SVD en base a cada fotograma, pueden existir ciertas discontinuidades en los coeficientes HOA transformados resultantes como evidencia, por ejemplo, la naturaleza no ordenada de la matriz US[* ] 33 y la matriz V[K] 35. Mediante la realizacion de esta interpolacion, la discontinuidad puede reducirse dado que la interpolacion puede tener un efecto suavizante que potencialmente reduce los artefactos introducidos debido a los lfmites de la trama (o, en otras palabras, la segmentacion de los coeficientes HOA 11 en tramas). Usando los vectores V [*] de primer plano 51 * para realizar esta interpolacion y despues generar las senales nFG interpoladas 49' basadas en los vectores V[3] de primer plano 51* interpolados a partir de los coeficientes HOA reordenados recuperados pueden suavizar al menos algunos efectos debidos a la operacion trama por trama, asf como debido a la reordenacion de las senales nFG 49.
En funcionamiento, la unidad de interpolacion espacio-temporal 50 puede interpolar una o mas subtramas de una primera trama de audio desde una primera descomposicion, por ejemplo, vectores V[*] de primer plano 51*, de una parte de una primera pluralidad de los coeficientes HOA 11 incluidos en la primera trama y una segunda descomposicion, por ejemplo, vectores V[*] de primer plano 51*-i, de una parte de una segunda pluralidad de los coeficientes HOA 11 incluidos en una segunda trama para generar coeficientes armonicos esfericos interpolados descompuestos para una o mas subtramas.
5
10
15
20
25
30
35
40
45
50
55
60
En algunos ejemplos, la primera descomposicion comprende los primeros vectores V[k] de primer plano 51* representatives de los vectores singulares derechos de la parte de los coeficientes HOA 11. De manera similar, en algunos ejemplos, la segunda descomposicion comprende los segundos vectores V[k] de primer plano 51* representativos de los vectores singulares derechos de la parte de los coeficientes HOA 11.
En otras palabras, el audio 3D basado en armonicos esfericos puede ser una representacion parametrica del campo de presion 3D en terminos de funciones de base ortogonales sobre una esfera. Cuanto mayor sea el orden N de la representacion, la resolucion espacial sera potencialmente mas alta y, a menudo, mayor sera el numero de coeficientes armonicos esfericos (SH) (para un total de (N+1)2 coeficientes). Para muchas aplicaciones, puede requerirse una compresion de ancho de banda de los coeficientes para poder transmitir y almacenar los coeficientes de manera eficaz. Estas tecnicas dirigidas en esta divulgacion pueden proporcionar un proceso de reduccion de la dimensionalidad basado en tramas utilizando la descomposicion en valores singulares (SVD). El analisis SVD puede descomponer cada trama de coeficientes en tres matrices U, S y V. En algunos ejemplos, las tecnicas pueden manejar algunos de los vectores de la matriz US[k] como componentes de primer plano del campo sonoro subyacente. Sin embargo, cuando se manejan de esta manera, estos vectores (en la matriz US[k]) son discontinuos de trama en trama, aunque representan el mismo componente de audio distinto. Estas discontinuidades pueden conducir a artefactos significativos cuando los componentes son alimentados a traves de codificadores de audio de transformadas.
Las tecnicas descritas en esta divulgacion pueden abordar esta discontinuidad. Es decir, las tecnicas pueden basarse en la observacion de que la matriz V puede interpretarse como ejes espaciales ortogonales en el dominio de las armonicas esfericas. La matriz U[k] puede representar una proyeccion de los datos de armonicos esfericos (HOA) en terminos de las funciones de base, donde la discontinuidad puede atribuirse al eje espacial ortogonal (V[k]) que cambia cada trama y, por lo tanto, son discontinuas en si mismas. Esto es diferente a la descomposicion similar, como la Transformada de Fourier, donde las funciones de base son, en algunos ejemplos, constantes de una trama a otra. En estos terminos, la SVD puede considerarse como un algoritmo de busqueda por coincidencia. Las tecnicas descritas en esta divulgacion pueden permitir que la unidad de interpolacion espacio-temporal 50 mantenga la continuidad entre las funciones de base (V[k]) de una trama a otra mediante interpolacion entre ellas.
Como se ha indicado anteriormente, la interpolacion puede realizarse con respecto a las muestras. Este caso se generaliza en la descripcion anterior cuando las subtramas comprenden un solo conjunto de muestras. Tanto en el caso de la interpolacion sobre muestras como sobre subtramas, la operacion de interpolacion puede adoptar la forma de la siguiente ecuacion:
vC0=W(l)v(k) + (1 - w(l))v(k- 1).
En esta ecuacion anterior, la interpolacion puede realizarse con respecto al unico vector V v(k) a partir del unico vector Vv(k-1), que en un modo de realizacion podrfa representar V vectores de las tramas adyacentes k y k-1. En la ecuacion anterior, l, representa la resolucion sobre la que se esta llevando a cabo la interpolacion, donde l puede indicar una muestra entera y / = 1, ..., T (donde T es la longitud de las muestras sobre las que se realiza la
interpolacion y sobre la cual los vectores interpolados de salida, VC0 son necesarios y tambien indica que la salida de este proceso produce l de estos vectores). Alternativamente, l podrfa indicar subtramas consistentes en multiples muestras. Cuando, por ejemplo, una trama esta dividida en cuatro subtramas, l puede comprender valores de 1, 2, 3 y 4 para cada una de las subtramas. El valor de l se puede senalar como un campo denominado "CodedSpatialInterpolationTime" a traves de un flujo de bits, de modo que la operacion de interpolacion puede ser replicada en el descodificador. El w(l) puede comprender valores de los pesos de interpolacion. Cuando la interpolacion es lineal, w(l) puede variar linealmente y monotonicamente entre 0 y 1, en funcion de l. En otros casos, w(l) puede variar entre 0 y 1 de una manera no lineal pero monotona (tal como un cuarto de ciclo de un coseno elevado) en funcion de /. La funcion, w(l), puede ser indexada entre unas pocas posibilidades diferentes de funciones y senalada en el flujo de bits como un campo denominado "SpatialInterpolationMethod" de tal manera que la operacion de interpolacion identica pueda ser replicada por el descodificador. Cuando w(l) es un valor cercano a 0,
la salida, vC0puede estar altamente ponderado o influenciado por v(k-1). Mientras que w(/) es un valor cercano a 1,
asegura que la salida, VC0, esta altamente ponderada o influenciada por v(k-1).
La unidad de reduccion de coeficientes 46 puede representar una unidad configurada para realizar una reduccion de coeficiente con respecto a los vectores V[k] de primer plano restantes 53 basados en la informacion de canal de fondo 43 para emitir los vectores reducidos de primer plano V[k] 55 a la unidad de cuantizacion 52. Los vectores V[k] de primer plano reducidos pueden tener dimensiones D: [(W+1)-(WeG+1)2-nBGa] x nFG.
La unidad de reduccion de coeficientes 46 puede, a este respecto, representar una unidad configurada para reducir el numero de coeficientes de los vectores V[k] restantes de primer plano 53. En otras palabras, la unidad de reduccion de coeficientes 46 puede representar una unidad configurada para eliminar aquellos coeficientes de los vectores V[k] de primer plano (que forman los vectores V[k] de primer plano restantes) que tienen poca o ninguna
5
10
15
20
25
30
35
40
45
50
55
60
65
informacion direccional. Como se ha descrito anteriormente, en algunos ejemplos, los coeficientes de los vectores V[^j distintos o, en otras palabras, de primer plano que corresponden a funciones de base de primer orden y de orden cero (que pueden indicarse como Nbg) proporcionan poca informacion direccional y por lo tanto pueden Ser retirados de los V vectores de primer plano (a traves de un proceso que se puede denominar "reduccion de coeficientes"). En este ejemplo, se puede proporcionar una mayor flexibilidad para identificar no solo estos 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, (N+1)2]. La unidad de analisis del campo sonoro 44 puede analizar los coeficientes HOA 11 para determinar BGtot, que puede identificar no solo el (Nbg +1)2, sino el TotalOfAddAmbHOAChan, que se puede denominar colectivamente como la informacion de canal de fondo 43. La unidad de reduccion de coeficientes 46 puede entonces eliminar aquellos coeficientes correspondientes a (Nbg+1)2 y el TotalOfAddAmbHOAChan de los vectores V[^] restantes de primer plano 53 para generar una matriz V[^] dimensional menor 55 de tamano ((N+1)2-(BGtot) x nFG, que tambien se puede denominar los vectores V[^] de primer plano reducidos 55.
La unidad de cuantizacion 52 puede representar una unidad configurada para realizar cualquier forma de cuantizacion para comprimir los vectores V[^] de primer plano reducidos 55 y generar vectores de primer plano V[^] codificados 57, que emiten estos vectores de primer plano codificados V[^] 57 a la unidad de generacion del flujo de bits 42. En funcionamiento, la unidad de cuantizacion 52 puede representar una unidad configurada para comprimir un componente espacial del campo sonoro, es decir, uno o mas de los vectores V[^] de primer plano reducidos 55 de este ejemplo. A efectos de ejemplo, se supone que los vectores V[^] de primer plano reducidos 55 incluyen dos vectores de fila que tienen, como resultado de la reduccion del coeficiente, menos de 25 elementos cada uno (lo que implica una representacion HOA de cuarto orden del campo sonoro). Aunque se describe con respecto a dos vectores de fila, se puede incluir cualquier numero de vectores en los vectores V[^] de primer plano reducidos 55 hasta (n+1)2, donde n indica el orden de la representacion HOA del campo sonoro. Ademas, aunque se describe a continuacion como realizando una cuantizacion escalar y/o entropica, la unidad de cuantizacion 52 puede realizar cualquier forma de cuantizacion que resulte de la compresion de los vectores V[^] de primer plano reducidos 55.
La unidad de cuantizacion 52 puede recibir los vectores V[^] de primer plano reducidos 55 y realizar un esquema de compresion para generar los vectores V[^] de primer plano codificados 57. Este esquema de compresion puede implicar cualquier esquema de compresion concebible para comprimir elementos de un vector o datos en general, y no debe limitarse al ejemplo descrito mas adelante con mas detalle. La unidad de cuantizacion 52 puede realizar, como ejemplo, un esquema de compresion que incluye uno o mas entre una transformacion de representaciones de coma flotante de cada elemento de los vectores reducidos V[^] de primer plano 55 a representaciones enteras de cada elemento de los vectores reducidos V[^] de primer plano 55, una cuantizacion uniforme de las representaciones enteras de los vectores reducidos V[^] de primer plano 55 y la categorizacion y codificacion de las representaciones enteras cuantizadas de los vectores restantes V[^] de primer plano.
En algunos ejemplos, varios entre uno o mas procesos de este esquema de compresion pueden ser controlados dinamicamente por parametros para conseguir, o casi conseguir, por ejemplo, una velocidad de bits objetivo para el flujo de bits resultante 21. Dado que cada uno de los vectores reducidos V[^] de primer plano 55 son ortonormales entre si, cada uno de los vectores reducidos V[^] de primer plano 55 puede codificarse independientemente. En algunos ejemplos, tal como se describe con mas detalle a continuacion, cada elemento de cada vector reducido V[^] de primer plano 55 puede codificarse utilizando el mismo modo de codificacion (definido por varios submodos).
En cualquier caso, tal como se ha indicado anteriormente, este esquema de codificacion puede implicar en primer lugar la transformacion de las representaciones en coma flotante de cada elemento (que es, en algunos ejemplos, un numero de coma flotante de 32 bits) de cada uno de los vectores de fondo reducidos V[^] 55 en una representacion entera de 16 bits. La unidad de cuantizacion 52 puede realizar esta transformacion de coma flotante a entero multiplicando cada elemento de uno dado de los vectores reducidos V[^] de primer plano 55 por 215, que es, en algunos ejemplos, realizado por un desplazamiento a la derecha de 15.
La unidad de cuantizacion 52 puede entonces realizar una cuantizacion uniforme con respecto a todos los elementos del uno dado de los reducidos vectores V[^] de primer plano 55. La unidad de cuantizacion 52 puede identificar un tamano de paso de cuantizacion basado en un valor, que se puede indicar como un parametro de nbits. La unidad de cuantizacion 52 puede determinar dinamicamente este parametro de nbits basado en la velocidad de bits objetivo 41. La unidad de cuantizacion 52 puede determinar el tamano del paso de cuantizacion como una funcion de este parametro de nbits. Por ejemplo, la unidad de cuantizacion 52 puede determinar el tamano del paso de cuantizacion (denominado "delta" o "A" en esta divulgacion) como igual a 2 16-nbits En este ejemplo, si nbits es igual a seis, delta es igual a 210 y hay 2 6 niveles de cuantizacion. A este respecto, para un elemento vectorial v, el elemento vectorial cuantizado Vq es igual a [v/ A] y -2nb,ts"1 <vq<2nblts'\
La unidad de cuantizacion 52 puede realizar entonces la categorizacion y la codificacion residual de los elementos vectoriales cuantizados. Por ejemplo, la unidad de cuantizacion 52 puede, para un elemento vectorial cuantizado dado Vq , identificar una categorfa (mediante la determinacion de un identificador de categorfa cid ) a la que este elemento se corresponde usando la siguiente ecuacion:
(0, if vq = 0
11*002K|]+ 1, ifvq* 0
La unidad de cuantizacion 52 puede entonces codificar con Huffman este indice de categorfa cid, al mismo tiempo que tambien identifica un bit de signo que indica si vq es un valor positivo o un valor negativo. La unidad de 5 cuantizacion 52 puede identificar a continuacion un residuo en esta categorfa. Por ejemplo, la unidad de cuantizacion 52 puede determinar este residuo de acuerdo con la siguiente ecuacion:
residual = |Vq| - 2cid-1
10 La unidad de cuantizacion 52 puede entonces bloquear el codigo de este residuo con cid -1 bits.
El siguiente ejemplo ilustra un ejemplo simplificado de este proceso de categorizacion y codificacion residual. Primero, suponga que nbits es igual a seis, de modo que Vq £ [-31,31]. A continuacion, asuma lo siguiente:
cid
vq Codigo Huffman para cid
0
0
"1"
1
-1, 1 "01"
2
-3, -2, 2, 3 "000"
3
-7, -6, -5, -4, 4, 5, 6, 7 "0010"
4
-15, -14, ...., -8, 8, ..., 14, 15 "00110"
5
-31, -30, ..., -16, 16, ..., 30, 31 "00111"
15
Ademas, asuma lo siguiente:
cid
Codigo de bloque para residuales
0
N/A
1
0, 1
2
01, 00, 10, 11
3
011, 010, 001, 000, 100, 101, 110, 111
4
0111, 0110..., 0000, 1000, ..., 1110, 1111
5
01111,..., 00000, 10000, ..., 11111
Por lo tanto, para un Vq = [6, -17, 0, 0, 3], se puede determinar lo siguiente:
20
» cid = 3, 5, 0, 0, 2 » Signo = 1, 0, x, x, 1 » Residual = 2, 1, x, x, 1 » Bits para 6 = "0010" + "1" + "10"
25 » Bits para -17 = "00111" + "0" + "0001"
» Bits para 0 = "0"
» Bits para 0 = "0"
» Bits para 3 = "000" + "1" + "1"
» Total de bits = 7 + 10 + 1 + 1 + 5 = 24 30 » Promedio de bits = 24/5 = 4,8
Aunque no se muestra en el ejemplo simplificado anterior, la unidad de cuantizacion 52 puede seleccionar diferentes libros de codigo Huffman para diferentes valores de nbits cuando codifica el cid. En algunos ejemplos, la unidad de cuantizacion 52 puede proporcionar una tabla de codificacion Huffman diferente para los valores de nbits 6, ..., 15. 35 Ademas, la unidad de cuantizacion 52 puede incluir cinco libros de codigo de Huffman diferentes para cada uno de los diferentes valores de nbits que van desde 6, ..., 15 para un total de 50 libros de codigo de Huffman. A este respecto, la unidad de cuantizacion 52 puede incluir una pluralidad de diferentes libros de codigo Huffman para acomodar la codificacion del cid en varios contextos estadfsticos diferentes.
5
10
15
20
25
30
35
40
45
50
Para ilustrar, la unidad de cuantizacion 52 puede incluir, para cada uno de los valores de nbits, un primer libro de codigos Huffman para codificar los elementos vectoriales de uno a cuatro, un segundo libro de codigos Huffman para codificar los elementos vectoriales de cinco a nueve, un tercer libro de codigos Huffman para codificar los elementos vectoriales de nueve y por encima. Estos primeros tres libros de codigo de Huffman pueden usarse cuando el vector entre los vectores reducidos V[^j de primer plano 55 a comprimir no se predice a partir de un correspondiente correlativo temporal posterior de los vectores reducidos V[^j reducidos de primer plano 55 y no es representativo de la Informacion espacial de un objeto de audio sintetico (uno definido, por ejemplo, originalmente por un objeto de audio modulado por impulsos codificados (PCM)). La unidad de cuantizacion 52 puede incluir adicionalmente, para cada uno de los valores de nbits, un cuarto libro de codigos de Huffman para codificar uno de los vectores reducidos V[^j de primer plano 55 cuando se predice este vector entre los vectores reducidos V[^j de primer plano 55 se predice a partir de un vector subsiguiente temporal que se corresponde con uno de los vectores reducidos V[^j de primer plano 55. La unidad de cuantizacion 52 puede incluir tambien, para cada uno de los valores de nbits, un quinto libro de codigos de Huffman para codificar uno de los vectores reducidos V[^j de primer plano 55 cuando este vector entre los vectores reducidos V[^j de primer plano 55 es representativo de un objeto de audio sintetico. Los diversos libros de codigo de Huffman pueden desarrollarse para cada uno de estos diferentes contextos estadfsticos, es decir, el contexto no predicho y no sintetico, el contexto predicho y el contexto sintetico en este ejemplo.
La tabla siguiente ilustra la seleccion de la tabla Huffman y los bits que se especificaran en el flujo de bits para permitir que la unidad de descompresion seleccione la tabla Huffman adecuada:
Modo Pred
Info HT Tabla HT
0
0
HT5
0
1 Hut {1,2,3}
1
0 HT4
1
1
HT5
En la tabla anterior, el modo de prediccion ("Modo Pred") indica si se realizo la prediccion para el vector actual, mientras que la Tabla Huffman ("Info HT") indica la informacion adicional del libro de codigos Huffman (o tabla) usada para seleccionar una tabla de Huffman de uno a cinco.
La tabla siguiente ilustra este proceso de seleccion de tablas de Huffman dados diversos contextos o escenarios estadfsticos.
Grabacion Sintetica
W/O Pred
HT{1,2,3} HT5
Con Pred
HT4 HT5
En la tabla anterior, la columna "Grabacion" indica el contexto de codificacion cuando el vector es representativo de un objeto de audio que fue grabado mientras que la columna "sintetica" indica un contexto de codificacion cuando el vector es representativo de un objeto de audio sintetico. La fila "W/O Pred" indica el contexto de codificacion cuando la prediccion no se realiza con respecto a los elementos vectoriales, mientras que la fila "Con Pred" indica el contexto de codificacion cuando se realiza la prediccion con respecto a los elementos vectoriales. Como se muestra en esta tabla, la unidad de cuantizacion 52 selecciona HT {1, 2, 3} cuando el vector es representativo de un objeto de audio grabado y no se realiza la prediccion con respecto a los elementos de vector. La unidad de cuantizacion 52 selecciona HT5 cuando el objeto de audio es representativo de un objeto de audio sintetico y no se realiza la prediccion con respecto a los elementos de vector. La unidad de cuantizacion 52 selecciona HT4 cuando el vector es representativo de un objeto de audio grabado y se realiza la prediccion con respecto a los elementos vectoriales. La unidad de cuantizacion 52 selecciona HT5 cuando el objeto de audio es representativo de un objeto de audio sintetico y se realiza la prediccion con respecto a los elementos de vector.
A este respecto, la unidad de cuantizacion 52 puede realizar la cuantizacion escalar y/o la codificacion de Huffman antes mencionadas para comprimir los vectores reducidos V[^j de primer plano 55, que emiten los vectores codificados V[^j de primer plano 57, que se pueden referir como informacion de canal lateral 57. Esta informacion de canal lateral 57 puede incluir elementos de sintaxis usados para codificar los vectores [V][A] de primer plano restantes. La unidad de cuantizacion 52 puede emitir la informacion de canal lateral 57 de una manera similar a la que se muestra en el ejemplo de una de las Figs. 10B y 10C.
Como se ha indicado anteriormente, la unidad de cuantizacion 52 puede generar elementos de sintaxis para la informacion de canal lateral 57. Por ejemplo, la unidad de cuantizacion 52 puede especificar un elemento de sintaxis en un encabezamiento de una unidad de acceso (que puede incluir uno o mas tramas) que indica cual de la pluralidad de modos de configuracion ha sido seleccionado. Aunque se describe que se especifica en una base de
5
10
15
20
25
30
35
40
45
50
55
60
65
unidad de acceso, la unidad de cuantizacion 52 puede especificar este elemento sintactico sobre una base por trama o cualquier otra base periodica o no periodica (como una vez para el flujo de bits completo). En cualquier caso, este elemento de sintaxis puede comprender dos bits que indican cual de los cuatro modos de configuracion fueron seleccionados para especificar el conjunto de coeficientes diferente de cero de los vectores reducidos V[^j de primer plano 55 para representar los aspectos direccionales de este componente distinto. El elemento de sintaxis se puede indicar como "codedVVecLength". De esta manera, la unidad de cuantizacion 52 puede senalar o especificar de algun modo en el flujo de bits cual de los cuatro modos de configuracion se usaron para especificar los vectores codificados V[^j de primer plano 57 en el flujo de bits. Aunque se describen con respecto a cuatro modos de configuracion, las tecnicas no deben limitarse a cuatro modos de configuracion, sino a cualquier numero de modos de configuracion, incluido un unico modo de configuracion o una pluralidad de modos de configuracion. La unidad de cuantizacion escalar/entropica 53 tambien puede especificar el indicador 63 como otro elemento sintactico en la informacion del canal lateral 57.
La unidad codificadora de audio psicoacustico 40 incluida dentro del dispositivo de codificacion de audio 20 puede representar multiples instancias de un codificador de audio psicoacustico, cada una de las cuales se utiliza para codificar un objeto de audio diferente o canal HOA de cada uno de los coeficientes HOA ambientales compensados de energfa 47 ' y las senales nFG interpoladas 49' para generar los coeficientes HOA ambientales codificados 59 y senales nFG codificadas 61. La unidad codificadora de audio psicoacustico 40 puede emitir los coeficientes HOA ambientales codificados 59 y las senales nFG codificadas 61 a la unidad de generacion de flujo de bits 42.
En algunos casos, esta unidad codificadora de audio psicoacustico 40 puede representar una o mas instancias de una unidad codificadora de codificacion de audio avanzada (AAC). La unidad codificadora de audio psicoacustico 40 puede codificar cada columna o fila de los coeficientes HOA ambientales compensados de energfa 47' y las senales nFG interpoladas 49. A menudo, la unidad codificadora de audio psicoacustico 40 puede invocar una instancia de una unidad de codificacion AAC para cada una de las combinaciones de orden/suborden que permanecen en los coeficientes HOA ambientales compensados de energfa 47' y las senales nFG interpoladas 49'. Puede encontrarse mas informacion sobre como se pueden codificar los coeficientes armonicos esfericos de fondo 31 mediante una unidad de codificacion AAC en un documento de convencion de Eric Hellerud, y col., titulado "Encoding Higher Order Ambisonics with AAC", presentado en la 124a Convencion, 2008 17-20 de mayo y disponible en:
http://ro.uow.edu.au/cgi/viewcontent.cgi?article=8025&context=engpapers. En algunos casos, la unidad de codificacion de audio 14 puede codificar en audio los coeficientes HOA ambientales compensados de energfa 47'' usando una velocidad binaria objetivo inferior que la utilizada para codificar las senales nFG interpoladas 49', comprimiendo potencialmente los coeficientes hOa ambientales compensados de energfa 47' mas en comparacion con las senales nFG interpoladas 49 '.
La unidad de generacion del flujo de bits 42 incluida dentro del dispositivo de codificacion 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 descodificacion), generando de este modo el flujo de bits basado en vectores 21. La unidad de generacion de flujo de bits 42 puede representar un multiplexor en algunos ejemplos, que pueden recibir los vectores codificados V[^j de primer plano 57, los coeficientes de HOA codificados 59, las senales nFG codificadas 61 y la informacion de canal de fondo 43. La unidad de generacion de flujo de bits 42 puede generar entonces un flujo de bits 21 basado en los vectores codificados V[^j de primer plano 57, los coeficientes HOA codificados 59, las senales nFG codificadas 61 y la informacion de canal de fondo 43. El flujo de bits 21 puede incluir un flujo de bits principal o principal y uno o mas flujos de bits de canal lateral.
Aunque no se muestra en el ejemplo de la Fig. 4, el dispositivo de codificacion de audio 20 tambien puede incluir una unidad de salida de flujo de bits que conmuta la salida de flujo de bits del dispositivo de codificacion de audio 20 (por ejemplo, entre el flujo de bits basado en la direccion 21 y el flujo de bits basado en vectores 21) en base a si la trama actual va a codificarse usando la sfntesis basada en la direccion o la sfntesis basada en vectores. Esta unidad de salida de flujo de bits puede realizar esta conmutacion basada en el elemento de sintaxis emitido por la unidad de analisis de contenido 26 indicando si se realizo una sfntesis basada en la direccion (como resultado de detectar que los coeficientes HOA 11 se generaron a partir de un objeto de audio sintetico) o si se realizo la sfntesis basada en vectores (como resultado de detectar que se registraron los coeficientes HOA). La unidad de salida del flujo de bits puede especificar la sintaxis de encabezado correcta para indicar esta conmutacion o codificacion actual utilizada para la trama actual junto con la respectiva de los flujos de bits 21.
En algunos casos, varios aspectos de las tecnicas tambien pueden permitir que el dispositivo de codificacion de audio 20 determine si los coeficientes HOA 11 se generaron a partir de un objeto de audio sintetico. Estos aspectos de las tecnicas pueden permitir que el dispositivo de codificacion de audio 20 sea configurado para obtener una indicacion de si se generan coeficientes armonicos esfericos representativos de un campo sonoro a partir de un objeto de audio sintetico.
5
10
15
20
25
30
35
40
45
50
55
60
65
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para excluir un primer vector de una matriz de coeficientes armonicos esfericos por trama que almacena al menos una parte de los coeficientes armonicos esfericos representativos del campo sonoro para obtener una matriz de coeficientes armonicos esfericos reducida por trama.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para excluir un primer vector de una matriz de coeficientes armonicos esfericos por trama que almacena al menos una parte de los coeficientes armonicos esfericos representativos del campo sonoro para obtener una matriz de coeficientes armonicos esfericos reducida por trama, y predecir un vector de la matriz de coeficientes armonicos esfericos reducida por trama en base a los vectores restantes de la matriz de coeficientes armonicos esfericos reducida.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para excluir un primer vector de una matriz de coeficientes armonicos esfericos por trama que almacena al menos una parte de los coeficientes armonicos esfericos representativos del campo sonoro para obtener una matriz de coeficientes armonicos esfericos enmarcada reducida, Y predecir un vector de la matriz de coeficientes armonicos esfericos enmarcada reducida basada, al menos en parte, en una suma de vectores restantes de la matriz de coeficientes armonicos esfericos enmarcada reducida.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para predecir un vector de una matriz de coeficientes armonicos esfericos enmarcada que almacena al menos una parte de los coeficientes armonicos esfericos basados, al menos en parte, en una suma de vectores restantes del vector enmarcado Matriz de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para configurarse adicionalmente para predecir un vector de una matriz de coeficientes armonicos esfericos enmarcada que almacena al menos una parte de los coeficientes armonicos esfericos basados, al menos en parte, en una suma de vectores restantes De la matriz de coeficientes armonicos esfericos por trama, y calcular un error basado en el vector predicho.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para configurarse para predecir un vector de una matriz de coeficientes armonicos esfericos enmarcada que almacena al menos una parte de los coeficientes armonicos esfericos basado, al menos en parte, en una suma de vectores restantes de La matriz de coeficientes armonicos esfericos por trama, y calcular un error basado en el vector predicho y el correspondiente vector de la matriz de coeficientes armonicos esfericos por trama.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para configurarse para predecir un vector de una matriz de coeficientes armonicos esfericos enmarcada que almacena al menos una parte de los coeficientes armonicos esfericos basado, al menos en parte, en una suma de vectores restantes de La matriz de coeficientes armonicos esfericos por trama y calcular un error como una suma del valor absoluto de la diferencia del vector predicho y el correspondiente vector de la matriz de coeficientes armonicos esfericos por trama.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para configurarse para predecir un vector de una matriz de coeficientes armonicos esfericos enmarcada que almacena al menos una parte de los coeficientes armonicos esfericos basado, al menos en parte, en una suma de vectores restantes de La matriz de coeficientes armonicos esfericos por trama, calcular un error basado en el vector predicho y el correspondiente vector de la matriz de coeficientes armonicos esfericos por trama, calcular una razon basada en una energfa del vector correspondiente de la matriz de coeficientes armonicos esfericos por trama y el error, y Comparar la relacion con un umbral para determinar si los coeficientes armonicos esfericos representativos del campo sonoro se generan a partir del objeto de audio sintetico.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para configurarse para especificar la indicacion en un flujo de bits 21 que almacena una version comprimida de los coeficientes armonicos esfericos.
En algunos casos, las diversas tecnicas pueden permitir que el dispositivo de codificacion de audio 20 realice una transformacion con respecto a los coeficientes HOA 11. En estos y otros casos, el dispositivo de codificacion de audio 20 puede configurarse para obtener uno o mas primeros vectores que describen componentes distintos del campo sonoro y uno o mas segundos vectores que describen componentes de fondo del campo sonoro, tanto uno como mas primeros vectores y el uno O mas segundos vectores generados al menos realizando una transformacion con respecto a la pluralidad de coeficientes armonicos esfericos 11.
En estos y otros casos, el dispositivo de codificacion de audio 20, en el que la transformacion comprende una descomposicion en valores singulares que genera una matriz U representativa de los vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos 11.
5
10
15
20
25
30
35
40
45
50
55
60
65
En estos y otros casos, el dispositivo de codificacion de audio 20, en el que uno o mas primeros vectores comprenden uno o mas vectores Udist * Sdist codificados de audio que, antes de la codificacion de audio, se generaron multiplicando uno o mas vectores Udist codificados de audio de una matriz U por uno o mas vectores Sdist de una matriz S, y en el que la matriz U y la matriz S se generan al menos realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de codificacion de audio 20, en el que uno o mas de los primeros vectores comprenden uno o mas vectores Udist * Sdist codificados de audio que, antes de la codificacion de audio, se generaron multiplicando uno o mas vectores Udist codificados de audio de una matriz U por uno o mas vectores Sdist de una matriz S y uno o mas vectores VTdist de una transposicion de una matriz V, y en el que la matriz U y la matriz S y la matriz V se generan al menos realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos 11.
En estos y otros casos, el dispositivo de codificacion de audio 20, en el que uno o mas primeros vectores comprenden uno o mas vectores Udist * Sdist que, antes de la codificacion de audio, se generaron multiplicando uno o mas vectores Udist codificados por audio de una matriz U por uno o mas vectores Sdist de una matriz S y uno o mas vectores VTdist de una transposicion de una matriz V, en donde la matriz U, la matriz S y la matriz V se generaron al menos realizando la descomposicion de valor singular con respecto a la pluralidad de coeficientes armonicos esfericos y en el que el dispositivo de codificacion de audio 20 esta configurado adicionalmente para obtener un valor D que indica el numero de vectores a extraer de un flujo de bits para formar uno o mas vectores Udist *Sdist y uno o mas vectores VTdist.
En estos y otros casos, el dispositivo de codificacion de audio 20, en el que uno o mas primeros vectores comprenden uno o mas vectores Udist * Sdist que, antes de la codificacion por audio, se generaron multiplicando uno o mas vectores Udist codificados por audio de una matriz U por uno o mas vectores S dist de una matriz S y uno o mas vectores VTdist de una transposicion de una matriz V, en donde la matriz U, la matriz S y la matriz V se generaron al menos realizando la descomposicion singular con respecto a la pluralidad de coeficientes armonicos esfericos, en el que el dispositivo de codificacion de audio 20 esta configurado adicionalmente para obtener un valor D sobre una base de trama de audio por trama de audio que indica el numero de vectores que se van a extraer de un flujo de bits para formar uno o mas vectores Udist * Sdist y uno o mas vectores VTdist.
En estos y otros casos, el dispositivo de codificacion de audio 20, en el que la transformacion comprende un analisis de componente principal para identificar los distintos componentes del campo sonoro y los componentes de fondo del campo sonoro.
Varios aspectos de las tecnicas descritas en esta divulgacion pueden proporcionar el dispositivo de codificacion de audio 20 configurado para compensar el error de cuantizacion.
En algunos casos, el dispositivo de codificacion de audio 20 puede estar configurado para cuantificar uno o mas primeros vectores representativos de uno o mas componentes de un campo sonoro y compensar el error introducido debido a la cuantizacion de uno o mas de los primeros vectores en uno o mas de los segundos vectores que son tambien representativos del mismo o mas componentes del campo sonoro.
En estos y otros casos, el dispositivo de codificacion de audio esta configurado para cuantificar uno o mas vectores de una transposicion de una matriz V generada, al menos en parte, realizando una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos que describen el campo sonoro.
En estos y otros casos, el dispositivo de codificacion de audio esta configurado ademas para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos de un campo sonoro para generar una matriz U representativa de los vectores singulares izquierdos de la pluralidad de armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y configurada para cuantificar uno o mas vectores a partir de una transposicion de la matriz V.
En estos y otros casos, el dispositivo de codificacion de audio esta configurado ademas para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos de un campo sonoro para generar una matriz U representativa de los vectores singulares izquierdos de la pluralidad de armonicos esfericos, una matriz S representativa de los valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, configurada para cuantificar uno o mas vectores de una transposicion de la matriz V, configurada para compensar el error introducido debido a la cuantizacion en uno o mas vectores U * S calculados multiplicando uno o mas vectores U de la matriz U por uno o mas vectores S de la matriz S.
5
10
15
20
25
30
35
40
45
50
55
60
65
representatives de un campo sonoro para generar una matriz U representativa de los vectores singulares izquierdos de la pluralidad de armonicos esfericos, una matriz S representativa de los valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, determinan uno o mas vectores Udist de la matriz U, cada uno de los cuales corresponde a un componente distinto del campo sonoro, determinan uno o mas vectores Sdist de la matriz S, cada uno de los cuales corresponde a la misma componente distinta del campo sonoro, y determinan uno o mas vectores VTdist de una transposicion de la matriz V, cada una de las cuales corresponde a la misma componente distinta del campo sonoro, configurada para cuantificar uno o mas vectores VTdist para generar uno o mas vectores VTq_dist configurados para compensar el error introducido debido a la cuantizacion en uno o mas vectores Udist * Sdist calculados multiplicando uno o mas vectores Udist de la matriz U por uno o mas vectores Sdist de la matriz S para generar uno o mas vectores Udist * Sdist compensados de errores.
En estos y otros casos, el dispositivo de codificacion de audio esta configurado para determinar coeficientes armonicos esfericos distintos basados en uno o mas vectores Udist, uno o mas vectores Sdist y uno o mas vectores V dist y realizar una pseudo inversa con respecto a los vectores V q_dist para dividir los distintos coeficientes armonicos esfericos por uno o mas de los vectores VTq_dist y de este modo generar uno o mas vectores Uc_dist * Sc_dist compensados de errores que compensan, al menos en parte, el error introducido a traves de la cuantizacion de los vectores VTdist.
En estos y otros casos, el dispositivo de codificacion de audio esta configurado ademas para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos de un campo sonoro para generar una matriz U representativa de los vectores singulares izquierdos de la pluralidad de armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, determinan uno o mas vectores Ubg de la matriz U que describen uno o mas componentes de fondo del campo sonoro y uno o mas vectores Udist de la matriz U que describen uno o mas componentes distintos del campo sonoro, determinan uno o mas vectores Sbg de la matriz S que describen uno o mas componentes de fondo del campo sonoro y uno o mas vectores Sdist de la matriz S que describen uno o mas componentes distintos del campo sonoro, y determinan uno o mas vectores VTdist y uno o mas vectores VTbg de una transposicion de la matriz V, en el que los vectores VTdist describen uno o mas componentes distintos del campo sonoro y el VTbg describe uno o mas componentes de fondo del campo sonoro, configurados para cuantificar uno o mas vectores VTdist para generar uno o mas vectores VTq_dist, configurados para compensar el error introducido debido a la cuantizacion en los coeficientes armonicos esfericos de fondo formados multiplicando uno o mas vectores Ubg por uno o mas vectores Sbg y luego por uno o mas vectores VTbg para generar coeficientes armonicos esfericos de fondo compensados de error.
En estos y otros casos, el dispositivo de codificacion de audio esta configurado para determinar el error basado en los vectores VTdist y uno o mas vectores Udist * Sdist formados multiplicando los vectores Udist por los vectores Sdist y anadir el error determinado a los coeficientes armonicos esfericos de fondo para generar los coeficientes armonicos esfericos compensados de error.
En estos y otros casos, el dispositivo de codificacion de audio esta configurado para compensar el error introducido debido a la cuantizacion de uno o mas de los primeros vectores en uno o mas de los segundos vectores que son tambien representativos del mismo o mas componentes del campo sonoro para generar uno o mas segundos vectores compensados de error, configurados adicionalmente para generar un flujo de bits que incluya uno o mas segundos vectores compensados de error y uno o mas de los primeros vectores cuantizados.
En estos y otros casos, el dispositivo de codificacion de audio esta configurado para compensar el error introducido debido a la cuantizacion de uno o mas de los primeros vectores en uno o mas de los segundos vectores que son tambien representativos del mismo o mas componentes del campo sonoro para generar uno o mas segundos vectores compensados de error, configurados adicionalmente para codificar en audio uno o mas vectores secundarios compensados de error, y generar un flujo de bits que incluya el audio codificado de uno o mas segundos vectores compensados de error y uno o mas de los primeros vectores cuantizados.
Los diversos aspectos de las tecnicas pueden permitir ademas que el dispositivo de codificacion de audio 20 genere coeficientes armonicos esfericos reducidos o descomposiciones de los mismos. En algunos casos, el dispositivo de codificacion de audio 20 puede configurarse para realizar, en base a una velocidad de bits objetivo, una reduccion de orden con respecto a una pluralidad de coeficientes armonicos esfericos o descomposiciones de los mismos para generar coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de los mismos, en los que la pluralidad de los coeficientes armonicos esfericos representan un campo sonoro.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para, antes de realizar la reduccion de orden, realizar una descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos para identificar uno o mas de los primeros vectores que describen componentes distintos del campo sonoro, y uno o mas de los segundos vectores que identifican componentes de fondo del campo
5
10
15
20
25
30
35
40
45
50
55
60
65
sonoro, configurados para realizar la reduccion de orden con respecto a uno o mas de los primeros vectores, uno o mas de los segundos vectores o, ambos, uno o mas de los primeros vectores y uno o mas de los segundos vectores.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta ademas configurado para realizar un analisis de contenido con respecto a la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos, y configurado para realizar, basandose en la velocidad de bits objetivo y el analisis de contenido, una reduccion de orden con respecto a la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos para generar los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de los mismos.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para realizar un analisis espacial con respecto a la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para realizar un analisis de difusion con respecto a la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos.
En estos y otros casos, el dispositivo de codificacion de audio 20 es uno o mas procesadores que estan configurados para realizar un analisis espacial y un analisis de difusion con respecto a la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para especificar uno o mas ordenes y/o una o mas subordenes de funciones de base esferica con las que los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de estos se corresponden en un flujo de bits que incluye los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de los mismos.
En estos y otros casos, los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de los mismos tienen valores menores que la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para eliminar aquellos de la pluralidad de coeficientes armonicos esfericos o vectores de las descomposiciones de los mismos que tienen un orden y/o suborden especificados para generar los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de los mismos.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para poner a cero los de la pluralidad de coeficientes armonicos esfericos o aquellos vectores de su descomposicion que tienen un orden y/o suborden especificados para generar los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de los mismos.
Varios aspectos de las tecnicas tambien pueden permitir que el dispositivo de codificacion de audio 20 sea configurado para representar componentes distintos del campo sonoro. En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para obtener un primer conjunto diferente de cero de coeficientes de un vector que se utilizara para representar un componente distinto de un campo sonoro, en el que el vector se descompone a partir de una pluralidad de coeficientes armonicos esfericos que describen el campo sonoro.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para determinar el primer conjunto distinto de cero de los coeficientes del vector para incluir todos los coeficientes.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para determinar el primer conjunto de coeficientes distinto de cero como los de los coeficientes correspondientes a un orden mayor que el orden de una funcion de base con la cual uno o mas de la pluralidad de coeficientes armonicos esfericos se corresponden.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para determinar el primer conjunto de coeficientes distinto de cero para incluir los de los coeficientes correspondientes a un orden mayor que el orden de una funcion base con la cual uno o mas de la pluralidad de coeficientes armonicos esfericos se corresponden y excluyen al menos uno de los coeficientes que corresponde a un orden mayor que el orden de la funcion de base con la cual se corresponden uno o mas de la pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para determinar el primer conjunto de coeficientes distinto de cero para incluir todos los coeficientes excepto por lo menos uno de los coeficientes correspondientes a un orden mayor que el orden de una funcion de base con la cual uno o mas de la pluralidad de coeficientes armonicos esfericos se corresponden.
5
10
15
20
25
30
35
40
45
50
55
60
65
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para especificar el primer conjunto distinto de cero de los coeficientes del vector en la informacion de canal lateral sin codificacion de audio del primer conjunto distinto de cero de los coeficientes del vector.
En estos y otros casos, el vector comprende un vector descompuesto a partir de la pluralidad de coeficientes armonicos esfericos utilizando la sfntesis basada en vectores.
En estos y otros casos, la sfntesis basada en vectores comprende una descomposicion en valores singulares.
En estos y otros casos, el vector comprende un vector V descompuesto a partir de la pluralidad de coeficientes armonicos esfericos utilizando descomposicion en valores singulares.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para seleccionar uno de una pluralidad de modos de configuracion mediante los cuales se especifica el conjunto de coeficientes del vector distinto de cero y se especifica el conjunto distinto de cero de los coeficientes del vector basado en el modo seleccionado de la pluralidad de modos de configuracion.
En estos y otros casos, el modo de la pluralidad de modos de configuracion indica que el conjunto distinto de cero de los coeficientes incluye todos los coeficientes.
En estos y otros casos, el modo de la pluralidad de modos de configuracion indica que el conjunto de coeficientes distinto de cero incluye los de los coeficientes correspondientes a un orden mayor que el orden de una funcion base con la cual uno o mas de la pluralidad de coeficientes armonicos esfericos se corresponden.
En estos y otros casos, el modo de la pluralidad de modos de configuracion indica que el conjunto distinto de cero de los coeficientes incluye los de los coeficientes correspondientes a un orden mayor que el orden de una funcion base con la cual uno o mas de la pluralidad de coeficientes armonicos esfericos se corresponden y excluyen al menos uno de los coeficientes correspondientes a un orden mayor que el orden de la funcion de base con la cual se corresponden uno o mas de la pluralidad de coeficientes armonicos esfericos,
En estos y otros casos, el modo de la pluralidad de modos de configuracion indica que el conjunto de coeficientes distinto de cero incluye todos los coeficientes excepto por lo menos uno de los coeficientes.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para especificar el modo seleccionado de la pluralidad de modos de configuracion en un flujo de bits.
Varios aspectos de las tecnicas descritas en esta descripcion pueden permitir tambien que el dispositivo de codificacion de audio 20 sea configurado para representar de forma diferente dicho componente distinto del campo sonoro. En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para obtener un primer conjunto distinto de cero de coeficientes de un vector que representa un componente distinto de un campo sonoro, habiendose descompuesto el vector a partir de una pluralidad de coeficientes armonicos esfericos que describen el campo sonoro.
En estos y otros casos, el primer conjunto distinto de cero de los coeficientes incluye todos los coeficientes del vector.
En estos y otros casos, el primer conjunto de coeficientes distinto de cero incluye los de los coeficientes correspondientes a un orden mayor que el orden de una funcion de base con la que se corresponden uno o mas de la pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el primer conjunto distinto de cero de los coeficientes incluye los de los coeficientes correspondientes a un orden mayor que el orden de una funcion base con la cual uno o mas de la pluralidad de coeficientes armonicos esfericos se corresponden y excluyen al menos uno de los coeficientes correspondientes a un orden mayor que el orden de la funcion de base con la cual se corresponden uno o mas de la pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el primer conjunto de coeficientes distinto de cero incluye todos los coeficientes excepto por lo menos uno de los coeficientes identificados porque no tienen suficiente informacion direccional.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para extraer el primer conjunto distinto de cero de los coeficientes como una primera parte del vector.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para extraer el primer conjunto distinto de cero del vector de la informacion de canal lateral y obtener una version recompuesta de la pluralidad de coeficientes armonicos esfericos basandose en el primer conjunto distinto de cero de los coeficientes del vector.
5
10
15
20
25
30
35
40
45
50
55
60
65
En estos y otros casos, el vector comprende un vector descompuesto a partir de la pluralidad de coeficientes armonicos esfericos utilizando la sfntesis basada en vectores.
En estos y otros casos, la sfntesis basada en vectores comprende la descomposicion en valores singulares.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para determinar uno modo de una pluralidad de modos de configuracion mediante los cuales extraer el conjunto de coeficientes del vector distinto de cero de acuerdo con el modo de la pluralidad de modos de configuracion y extraer el conjunto distinto de cero de los coeficientes del vector basado en el modo obtenido de la pluralidad de modos de configuracion.
En estos y otros casos, el modo de la pluralidad de modos de configuracion indica que el conjunto distinto de cero de los coeficientes incluye todos los coeficientes.
En estos y otros casos, el modo de la pluralidad de modos de configuracion indica que el conjunto de coeficientes distinto de cero incluye los de los coeficientes correspondientes a un orden mayor que el orden de una funcion base con la cual uno o mas de la pluralidad de coeficientes armonicos esfericos se corresponden.
En estos y otros casos, el modo de la pluralidad de modos de configuracion indica que el conjunto distinto de cero de los coeficientes incluye los de los coeficientes correspondientes a un orden mayor que el orden de una funcion base con la cual uno o mas de la pluralidad de coeficientes armonicos esfericos se corresponden y excluyen al menos uno de los coeficientes correspondientes a un orden mayor que el orden de la funcion de base con la cual se corresponden uno o mas de la pluralidad de coeficientes armonicos esfericos,
En estos y otros casos, el modo de la pluralidad de modos de configuracion indica que el conjunto de coeficientes distinto de cero incluye todos los coeficientes excepto por lo menos uno de los coeficientes.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para determinar el modo de la pluralidad de modos de configuracion basandose en un valor senalado en un flujo de bits.
Varios aspectos de las tecnicas tambien pueden, en algunos casos, permitir que el dispositivo de codificacion de audio 20 identifique uno o mas objetos de audio distintos (o, en otras palabras, objetos de audio predominantes). En algunos casos, el dispositivo de codificacion de audio 20 puede configurarse para identificar uno o mas objetos de audio distintos a partir de uno o mas coeficientes armonicos esfericos (SHC) asociados con los objetos de audio basados en una direccionalidad determinada para uno o mas de los objetos de audio.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para determinar la direccionalidad de uno o mas objetos de audio basandose en los coeficientes armonicos esfericos asociados con los objetos de audio.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para realizar una descomposicion en valores singulares con respecto a los coeficientes armonicos esfericos para generar una matriz U representativa de los vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de los valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y representar la pluralidad de coeficientes armonicos esfericos como una funcion de al menos una parte de una o mas de la matriz U, la matriz S y la matriz V, en la que el dispositivo de codificacion de audio 20 esta configurado para determinar la direccionalidad respectiva de uno o mas objetos de audio y se basa al menos en parte en la matriz V.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para reordenar uno o mas vectores de la matriz V de modo que los vectores que tienen un cociente de direccionalidad mayor esten situados por encima de los vectores que tienen un cociente de direccionalidad menor en la matriz V reordenada.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para determinar que los vectores que tienen el mayor cociente de direccionalidad incluyen una mayor informacion direccional que los vectores que tienen el cociente de direccionalidad menor.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para multiplicar la matriz V por la matriz S para generar una matriz VS, la matriz VS que incluye uno o mas vectores.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para seleccionar entradas de cada fila de la matriz VS que estan asociadas con un orden mayor de 14, cuadrar cada una de las entradas seleccionadas para formar entradas cuadraticas correspondientes y, para cada fila de la matriz VS, sumar todas las entradas al cuadrado para determinar un cociente de direccionalidad para un vector correspondiente.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para seleccionar las entradas de cada fila de la matriz VS asociada con el orden mayor que 14 comprende seleccionar todas las entradas
5
10
15
20
25
30
35
40
45
50
55
60
65
comenzando en una entrada decimoctava de cada fila de la matriz VS y terminando en una entrada 38 de cada fila de la matriz VS.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para seleccionar un subconjunto de los vectores de la matriz VS para representar los distintos objetos de audio. En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para seleccionar cuatro vectores de la matriz VS, y en el que los cuatro vectores seleccionados tienen los cuatro cocientes de direccionalidad mas grandes de todos los vectores de la matriz VS.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para determinar que el subconjunto seleccionado de los vectores representa los distintos objetos de audio y se basa tanto en la direccionalidad como en una energfa de cada vector.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para realizar una comparacion de energfa entre uno o mas primeros vectores y uno o mas segundos vectores representativos de los distintos objetos de audio para determinar uno o mas primeros vectores reordenados, en el que uno o mas primeros vectores describen los distintos objetos de audio una primera parte de datos de audio y uno o mas segundos vectores describen los distintos objetos de audio en una segunda parte de los datos de audio.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para realizar una correlacion cruzada entre uno o mas primeros vectores y uno o mas segundos vectores representativos de los distintos objetos de audio para determinar uno o mas primeros vectores reordenados, en el que uno o mas primeros vectores describen los distintos objetos de audio una primera parte de datos de audio y uno o mas segundos vectores describen los distintos objetos de audio en una segunda parte de los datos de audio.
Varios aspectos de las tecnicas tambien pueden, en algunos casos, permitir que el dispositivo de codificacion de audio 20 este configurado para realizar compensacion de energfa con respecto a las descomposiciones de los coeficientes HOA 11. En estos y otros casos, el dispositivo de codificacion de audio 20 puede estar configurado para realizar una sfntesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos para generar representaciones descompuestas de la pluralidad de coeficientes armonicos esfericos representativos de uno o mas objetos de audio y la correspondiente informacion direccional, en el que los coeficientes armonicos esfericos estan asociados con un orden y describen un campo sonoro, determinan informacion direccional distinta y de fondo a partir de la informacion direccional, reducen un orden de la informacion direccional asociada con los objetos de audio de fondo para generar informacion de direccion de fondo transformada, aplican compensacion para incrementar los valores de la informacion direccional transformada para preservar una energfa global del campo sonoro.
En estos y otros casos, el dispositivo de codificacion de audio 20 puede estar configurado para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos para generar una matriz U y una matriz S representativa de los objetos de audio y una matriz V representativa de la informacion direccional, determinar vectores de columna distintos de la matriz V y vectores de columna de fondo de la matriz V, reducir un orden de los vectores de columna de fondo de la matriz V para generar vectores de columna de fondo transformados de la matriz V y aplicar la compensacion para aumentar los valores de los vectores de columna de fondo transformados de la matriz V para conservar una energfa global del campo sonoro.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para determinar un numero de valores singulares relevantes de la matriz S, en el que un numero de los vectores de columna distintos de la matriz V es el numero de valores singulares relevantes de la matriz S.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para determinar un orden reducido para los coeficientes armonicos esfericos y valores cero para filas de los vectores de columna de fondo de la matriz V asociados a un orden que es mayor que el orden reducido.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para combinar columnas de fondo de la matriz U, columnas de fondo de la matriz S y transposicion de las columnas de fondo transformadas de la matriz V para generar coeficientes armonicos esfericos modificados.
En estos y otros casos, los coeficientes armonicos esfericos modificados describen uno o mas componentes de fondo del campo sonoro.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para determinar una primera energfa de un vector de los vectores de columna de fondo de la matriz V y una segunda energfa de un vector de los vectores de columna de fondo transformados de la matriz V y aplicar un valor de amplificacion a cada elemento del vector de los vectores de columna de fondo transformados de la matriz V, en el que el valor de amplificacion comprende una relacion entre la primera energfa y la segunda energfa.
5
10
15
20
25
30
35
40
45
50
55
60
65
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para determinar una primera energfa media cuadratica de un vector de los vectores de columna de fondo de la matriz V y una segunda energfa media cuadratica de un vector de los vectores de la columna de fondo transformada de la matriz V y aplicar un valor de amplificacion a cada elemento del vector de los vectores de columna de fondo transformados de la matriz V, en el que el valor de amplificacion comprende una relacion entre la primera energfa y la segunda energfa.
Varios aspectos de las tecnicas descritas en esta descripcion pueden tambien permitir que el dispositivo de codificacion de audio 20 realice interpolacion con respecto a versiones descompuestas de los coeficientes HOA 11. En algunos casos, el dispositivo de codificacion de audio 20 puede configurarse para obtener coeficientes armonicos esfericos interpolados descompuestos para un segmento de tiempo, realizando al menos en parte una interpolacion con respecto a una primera descomposicion de una primera pluralidad de coeficientes armonicos esfericos y una segunda descomposicion de una segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, la primera descomposicion comprende una primera matriz V representativa de los vectores singulares derechos de la primera pluralidad de coeficientes armonicos esfericos.
En estos y otros ejemplos, la segunda descomposicion comprende una segunda matriz V representativa de los vectores singulares derechos de la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, la primera descomposicion comprende una primera matriz V representativa de los vectores singulares derechos de la primera pluralidad de coeficientes armonicos esfericos y la segunda descomposicion comprende una segunda matriz V representativa de los vectores singulares derechos de la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el segmento de tiempo comprende una subtrama de una trama de audio.
En estos y otros casos, el segmento de tiempo comprende una muestra de tiempo de una trama de audio.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para obtener una descomposicion interpolada de la primera descomposicion y la segunda descomposicion para un coeficiente armonico esferico de la primera pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para obtener descomposiciones interpoladas de la primera descomposicion para una primera parte de la primera pluralidad de coeficientes armonicos esfericos incluidos en la primera trama y la segunda descomposicion para una segunda parte de la segunda pluralidad de los coeficientes armonicos esfericos incluidos en la segunda trama, y el dispositivo de codificacion de audio 20 esta configurado ademas para aplicar las descomposiciones interpoladas a un primer componente de tiempo de la primera parte de la primera pluralidad de coeficientes armonicos esfericos incluidos en la primera trama para generar un primer componente artificial de tiempo de la primera pluralidad de coeficientes armonicos esfericos y aplicar las respectivas descomposiciones interpoladas a un segundo componente de tiempo de la segunda parte de la segunda pluralidad de coeficientes armonicos esfericos incluidos en la segunda trama para generar un segundo componente artificial de tiempo de la segunda pluralidad de coeficientes armonicos esfericos incluidos.
En estos y otros casos, el primer componente de tiempo se genera realizando una sfntesis basada en vectores con respecto a la primera pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el segundo componente de tiempo se genera realizando una sfntesis basada en vectores con respecto a la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para recibir el primer componente artificial de tiempo y el segundo componente artificial de tiempo, calcular las descomposiciones interpoladas de la primera descomposicion para la primera parte de la primera pluralidad de coeficientes armonicos esfericos y la segunda descomposicion para la segunda parte de la segunda pluralidad de coeficientes armonicos esfericos y aplicar inversos de las descomposiciones interpoladas al primer componente artificial de tiempo para recuperar el componente de primer tiempo y al segundo componente artificial de tiempo para recuperar el segundo componente de tiempo.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para interpolar un primer componente espacial de la primera pluralidad de coeficientes armonicos esfericos y el segundo componente espacial de la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el primer componente espacial comprende una primera matriz U representativa de los vectores singulares izquierdos de la primera pluralidad de coeficientes armonicos esfericos.
5
10
15
20
25
30
35
40
45
50
55
60
65
En estos y otros casos, el segundo componente espacial comprende una segunda matriz U representativa de los vectores singulares izquierdos de la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el primer componente espacial es representativo de M segmentos temporales de coeficientes armonicos esfericos para la primera pluralidad de coeficientes armonicos esfericos y el segundo componente espacial es representativo de M segmentos temporales de coeficientes armonicos esfericos para la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el primer componente espacial es representativo de M segmentos temporales de coeficientes armonicos esfericos para la primera pluralidad de coeficientes armonicos esfericos y el segundo componente espacial es representativo de M segmentos temporales de coeficientes armonicos esfericos para la segunda pluralidad de coeficientes armonicos esfericos y el dispositivo de codificacion de audio 20 esta configurado para interpolar los ultimos N elementos del primer componente espacial y los primeros N elementos del segundo componente espacial.
En estos y otros casos, la segunda pluralidad de coeficientes armonicos esfericos es posterior a la primera pluralidad de coeficientes armonicos esfericos en el dominio del tiempo.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para descomponer la primera pluralidad de coeficientes armonicos esfericos para generar la primera descomposicion de la primera pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para descomponer la segunda pluralidad de coeficientes armonicos esfericos para generar la segunda descomposicion de la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para realizar una descomposicion en valores singulares con respecto a la primera pluralidad de coeficientes armonicos esfericos para generar una matriz U representativa de los vectores singulares izquierdos de la primera pluralidad de coeficientes armonicos esfericos, una matriz S representativa de los valores singulares de la primera pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la primera pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para realizar una descomposicion en valores singulares con respecto a la segunda pluralidad de coeficientes armonicos esfericos para generar una matriz U representativa de los vectores singulares izquierdos de la segunda pluralidad de coeficientes armonicos esfericos, una matriz S representativa de los valores singulares de la segunda pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, la primera y la segunda pluralidad de coeficientes armonicos esfericos representan cada una una representacion de onda plana del campo sonoro.
En estos y otros casos, la primera y la segunda pluralidad de coeficientes armonicos esfericos representan cada uno uno o mas objetos monoaudio mezclados entre si.
En estos y otros casos, la primera y la segunda pluralidad de coeficientes armonicos esfericos comprenden cada uno un primer y segundo coeficientes armonicos esfericos respectivos que representan un campo sonoro tridimensional.
En estos y otros casos, la primera y la segunda pluralidad de coeficientes armonicos esfericos estan asociadas cada una con al menos una funcion de base esferica que tiene un orden mayor que uno.
En estos y otros casos, la primera y la segunda pluralidad de coeficientes armonicos esfericos estan asociadas cada una con al menos una funcion de base esferica que tiene un orden igual a cuatro.
En estos y otros casos, la interpolacion es una interpolacion ponderada de la primera descomposicion y segunda descomposicion, en la que los pesos de la interpolacion ponderada aplicada a la primera descomposicion son inversamente proporcionales a un tiempo representado por los vectores de la primera y segunda descomposicion y en donde los pesos de la interpolacion ponderada aplicada a la segunda descomposicion es proporcional a un tiempo representado por vectores de la primera y segunda descomposicion.
En estos y otros casos, los coeficientes armonicos esfericos interpolados descompuestos suavizan al menos uno de componentes espaciales y los componentes temporales de la primera pluralidad de coeficientes armonicos esfericos y la segunda pluralidad de coeficientes armonicos esfericos.
5
10
15
20
25
30
35
40
45
50
55
60
65
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para calcular US[n] = HOA (n) * (V_vec [n]) - 1 para obtener un escalar.
En estos y otros casos, la interpolacion comprende una interpolacion lineal. En estos y otros casos, la interpolacion comprende una interpolacion no lineal. En estos y otros casos, la interpolacion comprende una interpolacion de coseno. En estos y otros casos, la interpolacion comprende una interpolacion de coseno ponderada. En estos y otros casos, la interpolacion comprende una interpolacion cubica. En estos y otros casos, la interpolacion comprende una interpolacion de spline adaptativa. En estos y otros casos, la interpolacion comprende una interpolacion de curvatura minima.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para generar un flujo de bits que incluye una representacion de los coeficientes armonicos esfericos interpolados descompuestos para el segmento de tiempo y una indicacion de un tipo de interpolacion.
En estos y otros casos, la indicacion comprende uno o mas bits que se corresponden con el tipo de interpolacion.
De esta manera, varios aspectos de las tecnicas descritas en esta descripcion pueden permitir que el dispositivo de codificacion de audio 20 sea configurado para obtener un flujo de bits que incluya una representacion de los coeficientes armonicos esfericos interpolados descompuestos para el segmento de tiempo y una indicacion de un tipo de interpolacion.
En estos y otros casos, la indicacion comprende uno o mas bits que se corresponden con el tipo de interpolacion.
A este respecto, el dispositivo de codificacion de audio 20 puede representar una realizacion de las tecnicas en que el dispositivo de codificacion de audio 20 puede, en algunos casos, configurarse para generar un flujo de bits que comprende una version comprimida de un componente espacial de un campo sonoro, generado mediante la realizacion de una sintesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para generar el flujo de bits para incluir un campo que especifica un modo de prediccion utilizado al comprimir el componente espacial.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para generar el flujo de bits para incluir informacion de tabla Huffman que especifica una tabla Huffman usada al comprimir el componente espacial.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para generar el flujo de bits para incluir un campo que indica un valor que expresa un tamano del paso de cuantizacion o una variable del mismo utilizado al comprimir el componente espacial.
En estos y otros casos, el valor comprende un valor nbits.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para generar el flujo de bits para incluir una version comprimida de una pluralidad de componentes espaciales del campo sonoro de la que esta incluida la version comprimida del componente espacial, donde el valor expresa el tamano del paso de cuantizacion o una variable de la misma utilizada al comprimir la pluralidad de componentes espaciales.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para generar el flujo de bits para incluir un codigo Huffman para representar un identificador de categoria que identifica una categoria de compresion con la que se corresponde el componente espacial.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para generar el flujo de bits para incluir un bit de signo que identifica si el componente espacial es un valor positivo o un valor negativo.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para generar el flujo de bits para incluir un codigo de Huffman para representar un valor residual del componente espacial.
En estos y otros casos, la sintesis basada en vectores comprende una descomposicion en valores singulares.
A este respecto, el dispositivo de codificacion de audio 20 puede implementar adicionalmente diversos aspectos de las tecnicas en que el dispositivo de codificacion de audio 20 puede, en algunos casos, configurarse para identificar un libro de codigos de Huffman para usar al comprimir un componente espacial de una pluralidad de componentes espaciales en base a un orden del componente espacial relativo a los restantes de la pluralidad de componentes espaciales, el componente espacial generado realizando una sintesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
5
10
15
20
25
30
35
40
45
50
55
60
65
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para identificar el libro de codigos de Huffman basado en un modo de prediccion utilizado al comprimir el componente espacial.
En estos y otros casos, una version comprimida del componente espacial se representa en un flujo de bits utilizando, al menos en parte, informacion de la tabla Huffman que identifica el libro de codigos de Huffman.
En estos y otros casos, una version comprimida del componente espacial se representa en un flujo de bits utilizando, al menos en parte, un campo que indica un valor que expresa un tamano del paso de cuantizacion o una variable del mismo utilizado al comprimir el componente espacial.
En estos y otros casos, el valor comprende un valor nbits.
En estos y otros casos, el flujo de bits comprende una version comprimida de una pluralidad de componentes espaciales del campo sonoro de la que esta incluida la version comprimida del componente espacial y el valor expresa el tamano del paso de cuantizacion o una variable del mismo utilizada al comprimir la pluralidad de componentes espaciales.
En estos y otros casos, una version comprimida del componente espacial se representa en un flujo de bits utilizando, al menos en parte, un codigo de Huffman seleccionado del libro de codigos de Huffman identificado para representar un identificador de categorfa que identifica una categorfa de compresion con la que se corresponde el componente espacial.
En estos y otros casos, una version comprimida del componente espacial se representa en un flujo de bits utilizando, al menos en parte, un bit de signo que identifica si el componente espacial es un valor positivo o un valor negativo.
En estos y otros casos, una version comprimida del componente espacial se representa en un flujo de bits utilizando, al menos en parte, un codigo Huffman seleccionado del libro de codigos Huffman identificado para representar un valor residual del componente espacial.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para comprimir el componente espacial basado en el libro de codigos Huffman identificado para generar una version comprimida del componente espacial y generar el flujo de bits para incluir la version comprimida del componente espacial.
Ademas, el dispositivo de codificacion de audio 20 puede, en algunos casos, implementar diversos aspectos de las tecnicas en que el dispositivo de codificacion de audio 20 puede configurarse para determinar un tamano del paso de cuantizacion que se utilizara al comprimir un componente espacial de un campo sonoro, el componente espacial generado mediante la realizacion de una sfntesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para determinar el tamano del paso de cuantizacion basado en una velocidad de bits objetivo.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para determinar una estimacion de un numero de bits utilizados para representar el componente espacial y determinar el tamano del paso de cuantizacion basandose en una diferencia entre la estimacion y una velocidad de bits objetivo.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para determinar una estimacion de un numero de bits utilizados para representar el componente espacial, determinar una diferencia entre la estimacion y una velocidad de bits objetivo y determinar el tamano del paso de cuantizacion anadiendo la diferencia a la velocidad de bits objetivo.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para calcular la estimacion del numero de bits que se van a generar para el componente espacial dado un libro de codigos correspondiente a la velocidad de bits objetivo.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para calcular la estimacion del numero de bits que se van a generar para el componente espacial dado un modo de codificacion utilizado al comprimir el componente espacial.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para calcular una primera estimacion del numero de bits que se van a generar para el componente espacial dado un primer modo de codificacion que se utilizara al comprimir el componente espacial, calcular una segunda estimacion del numero de bits que se van a generar para el componente espacial dado un segundo modo de codificacion que se utilizara al comprimir el componente espacial, seleccionar el de la primera estimacion y la segunda estimacion que tenga el menor numero de bits que se va a utilizar como la estimacion determinada del numero de bits.
5
10
15
20
25
30
35
40
45
50
55
60
65
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado para identificar un identificador de categorfa que identifica una categorfa a la cual corresponde el componente espacial, identificar una longitud de bits de un valor residual para el componente espacial que resultana al comprimir el componente espacial correspondiente a la categorfa y determinar la estimacion del numero de bits mediante, al menos en parte, la adicion de un numero de bits utilizados para representar el identificador de categorfa a la longitud de bits del valor residual.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para seleccionar uno de una pluralidad de libros de codigos que se utilizaran al comprimir el componente espacial.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para determinar una estimacion de un numero de bits utilizados para representar el componente espacial utilizando cada uno de la pluralidad de libros de codigos y seleccionar el libro de la pluralidad de libros de codigo que resulto en la estimacion determinada que tiene el menor numero de bits.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado ademas para determinar una estimacion de un numero de bits utilizados para representar el componente espacial utilizando uno o mas de la pluralidad de libros de codigos, uno o mas de la pluralidad de libros de codigos seleccionados basandose en un orden de elementos del componente espacial que se comprimira con relacion a otros elementos del componente espacial.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para determinar una estimacion de un numero de bits utilizados para representar el componente espacial utilizando uno de la pluralidad de libros de codigos disenados para usarse cuando el componente espacial no se predice desde un componente espacial subsiguiente.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para determinar una estimacion de un numero de bits utilizados para representar el componente espacial utilizando uno de la pluralidad de libros de codigos disenados para usarse cuando el componente espacial se predice a partir de una componente espacial subsiguiente.
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para determinar una estimacion de un numero de bits utilizados para representar el componente espacial utilizando uno de la
pluralidad de libros de codigos disenados para usarse cuando el componente espacial es representativo de un
objeto de audio sintetico en el campo sonoro.
En estos y otros casos, el objeto de audio sintetico comprende un objeto de audio modulado por impulsos codificados (PCM).
En estos y otros casos, el dispositivo de codificacion de audio 20 esta configurado adicionalmente para determinar una estimacion de un numero de bits utilizados para representar el componente espacial utilizando uno de la
pluralidad de libros de codigos disenados para usarse cuando el componente espacial es representativo de un
objeto de audio grabado en el campo sonoro.
En cada una de las diversas instancias descritas anteriormente, debe entenderse que el dispositivo de codificacion de audio 20 puede realizar un procedimiento o comprender de otro modo medios para realizar cada paso del procedimiento para el cual el dispositivo de codificacion de audio 20 esta configurado para llevar a cabo en algunos casos, estos medios pueden comprender uno o mas procesadores. En algunos casos, uno o mas procesadores pueden representar un procesador de proposito especial configurado por medio de instrucciones almacenadas en un medio de almacenamiento no transitorio legible por ordenador. En otras palabras, varios aspectos de las tecnicas en cada uno de los conjuntos de ejemplos de codificacion pueden proporcionar un medio de almacenamiento no transitorio legible por ordenador que tiene almacenadas instrucciones que, cuando se ejecutan, hacen que uno o mas procesadores realicen el procedimiento para el cual el dispositivo de codificacion de audio 20 se ha configurado para llevar a cabo.
La Fig. 5 es un diagrama de bloques que ilustra el dispositivo de descodificacion de audio 24 que se muestra en el ejemplo de la Fig. 3 con mayor detalle. Como se muestra en el ejemplo de la Fig. 5, el dispositivo de decodificacion de audio 24 puede incluir una unidad de extraccion 72, una unidad de reconstruccion basada en la direccionalidad 90 y una unidad de reconstruccion basada en vectores 92.
La unidad de extraccion 72 puede representar una unidad configurada para recibir el flujo de bits 21 y extraer las diversas versiones codificadas (por ejemplo, una version codificada basada en la direccionalidad o una version codificada basada en vector) de los coeficientes HOA 11. La unidad de extraccion 72 puede determinar a partir del elemento de sintaxis anotado anteriormente (por ejemplo, el elemento de sintaxis ChannelType que se muestra en los ejemplos de las Figs. 10E y 10H (i)-10O(ii) si los coeficientes HOA 11 se han codificado a traves de las diversas versiones. Cuando se ha realizado una codificacion basada en la direccion, la unidad de extraccion 72 puede extraer la version basada en la direccion de los coeficientes HOA 11 y los elementos de sintaxis asociados con esta version
5
10
15
20
25
30
35
40
45
50
55
60
65
codificada (que se designa como informacion basada en la direccion 91 en el ejemplo de la Fig. 5), pasando esta informacion basada en la direccion 91 a la unidad de reconstruccion basada en la direccion 90. Esta unidad de reconstruccion basada en la direccion 90 puede representar una unidad configurada para reconstruir los coeficientes HOA en forma de coeficientes HOA 11' basados en la informacion basada en la direccion 91. El flujo de bits y la disposicion de elementos de sintaxis dentro del flujo de bits se describen a continuacion con mas detalle con respecto al ejemplo de las Figs. 10-10O(ii) y 11.
Cuando el elemento de sintaxis indica que los coeficientes HOA 11 se han codificado utilizando una sfntesis basada en vectores, la unidad de extraccion 72 puede extraer los vectores [k] codificados de primer plano 57, los coeficientes HOA codificados 59 y las senales nFG codificadas 59. La unidad de extraccion 72 puede pasar los vectores codificados V[k] de primer plano 57 a la unidad de cuantizacion 74 y los coeficientes HOA ambientales codificados 59 junto con las senales nFG codificadas 61 a la unidad de decodificacion psicoacustica 80.
Para extraer los vectores de primer plano codificados V[k] 57, los coeficientes HOA ambientales codificados 59 y las senales nFG codificadas 59, la unidad de extraccion 72 puede obtener la informacion de canal lateral 57, que incluye el elemento de sintaxis denominado codedVVecLength. La unidad de extraccion 72 puede analizar la codedVVecLength a partir de la informacion de canal lateral 57. La unidad de extraccion 72 puede estar configurada para funcionar en cualquiera de los modos de configuracion descritos anteriormente basandose en el elemento de sintaxis codedVVecLength.
La unidad de extraccion 72 funciona entonces de acuerdo con cualquiera de los modos de configuracion para analizar una forma comprimida de los vectores V[k] de primer plano reducidos 55k a partir de la informacion del canal lateral 57. La unidad de extraccion 72 puede operar de acuerdo con la instruccion de conmutacion que se presenta en el pseudocodigo siguiente con la sintaxis que se presenta en la siguiente tabla de sintaxis para VVectorData:
switch CodedVVecLength {
caso 0:
VVec Longitud = NumOfHoaCoeffs; para (m = 0; m <VVecLength; ++m){
VVecCoeffId [m] = m;
}
break;
caso 1:
VVecLength = NumOfHoaCoeffs - MinNumOfCoeffsForAmbHOA NumOfContAddHoaChans;
n=0
para (m=MinNumOfCoeffsForAmbHOA; m<NumOfHoaCoeffs; ++m){ Coeffldx = m+
si (Coeffldx isNotMemberOf ContAddHoaCoeff) {
VVecCoeffId[n] = Coeffldx-1; n++;
}
}
break;
caso 2:
VVecLength = NumOfHoaCoeffs - MinNumOfCoeffsForAmbHOA;
para (m=0; m< VVecLength; ++m){
VVecCoeffId[m] = m + MinNumOfCoeffsForAmbHOA;
}
break;
caso 3:
VVecLength = NumOfHoaCoeffs - NumOfContAddHoaChans;
n=0
para (m=0; m<NumOfHoaCoeffs; ++m){ c = m+1;
si (c isNotMemberOf ContAddHoaCoeff){
VVecCoeffId[n] = c-1; n++;
}
}
}
5
10
15
20
25
30
Sintaxis No. de bits Mnemotecnico
VVectorData(i)
{
si (NbitsQ(k)[i] == 5){ para (m=0; m< VVecLength; ++m){
VVec[i][VVecCoeffId[m]](k) = (VecVal/128.0)- 1.0; 8 uimsbf
}
sino si (NbitsQ(k)[i] >= 6){ para (m=0; m< VVecLength; ++m){
huffldx = huffSelect(VVecCoeff\d[m], PFIag[i],
CbFlag[i]);
cid = huffDecode{NbitsQ[i], huffldx, huffVal); dinamica huffDecode
aVal[i][m] = 0.0; si (cid > 0) {
aVal[i][m] = sgn = (sgnVal * 2)-1; 1 bslbf
si (cid > 1){
aVal[i][m] = sgn * (2.0A(cid-1) + intAddVal); cid-1 uimsbf
}
}
VVec[i][WecCoeffId[m]](k) = aVal[i][m] *(2A(16
NbitsQ(k)[i])*aVal[i][m])/2A15; si (PFIag(k)[i] ==1){
VVec[i] [VVecCoeffId[m]](k)+=
VVec[i][WecCoeffId[m]](k-1)
}
}
}
En la tabla de sintaxis anterior, la primera instruccion de conmutacion con los cuatro casos (casos 0-3) proporciona una forma mediante la cual se determina la longitud del vector VTdist en terminos del numero (VVecLength) y los indices de coeficientes (VVecCoeffId). El primer caso, caso 0, indica que se especifican todos los coeficientes para los vectores VTdist (NumOfHoaCoeffs). El segundo caso, caso 1, indica que solo se especifican aquellos coeficientes del vector VTdist que corresponden al numero mayor que un MinNumOfCoeffsForAmbHOA, que puede indicar lo que se denomina (Ndist + 1)2 - (Nbg + 1)2 anteriormente. Ademas, estos coeficientes NumOfContAddAmbHoaChan identificados en ContAddAmbHoaChan se suprimen. La lista ContAddAmbHoaChan especifica canales adicionales (donde "canales" se refiere a un coeficiente particular correspondiente a un cierta combinacion de orden y suborden) correspondiente a un orden que excede el orden MinAmbHoaOrder. El tercer caso, caso 2, indica que se especifican aquellos coeficientes del vector VTdist que corresponden al numero mayor que un MinNumOfCoeffsForAmbHOA, que puede indicar lo que se denomina (Ndist + 1)2 - (N bg + 1)2 anteriormente. El cuarto caso, caso 3, indica que se especifican aquellos coeficientes del vector VTdist que quedan despues de eliminar los coeficientes identificados por NumOfContAddAmbHoaChan. Tanto la VVecLength como la lista VVecCoeffId son validas para todos los VVectors dentro de HOAFrame.
Despues de esta instruccion de conmutacion, la decision de realizar una decuantizacion uniforme puede ser controlada por NbitsQ (o, como se ha designado anteriormente nbits) que, si es igual a 5, se realiza una decuantizacion escalar uniforme de 8 bits. Por el contrario, un valor de NbitsQ mayor o igual a 6 puede resultar en la aplicacion de la decodificacion de Huffman. El valor cid mencionado anteriormente puede ser igual a los dos bits menos significativos del valor NbitsQ. El modo de prediccion tratado anteriormente se designa como PFlag en la tabla de sintaxis anterior, mientras que el bit de informacion HT se designa como CbFlag en la tabla de sintaxis anterior. La sintaxis restante especifica como ocurre la decodificacion de una manera sustancialmente similar a la descrita anteriormente. Varios ejemplos del flujo de bits 21 que se adapta a cada uno de los diversos casos mencionados anteriormente se describen con mas detalle a continuacion con respecto a las Figs. 10H (i)-10O(ii).
La unidad de reconstruccion basada en vectores 92 representa una unidad configurada para realizar operaciones reciprocas a las descritas anteriormente con respecto a la unidad de sintesis basada en vectores 27 para reconstruir los coeficientes HOA 11'. La unidad de reconstruccion basada en vectores 92 puede incluir una unidad de cuantizacion 74, una unidad de interpolacion espacio-temporal 76, una unidad de formulacion del primer plano 78, una unidad de decodificacion psicoacustica 80, una unidad de formulacion de coeficientes HOA 82 y una unidad de reordenacion 84.
5
10
15
20
25
30
35
40
45
50
55
60
65
La unidad de cuantizacion 74 puede representar una unidad configurada para operar de manera recfproca con la unidad de cuantizacion 52 que se muestra en el ejemplo de la Fig. 4 a fin de decuantizar los vectores V[k] de primer plano codificados y, de este modo, generar V[k] vectores de primer plano reducidos 55 k. La unidad de decuantizacion 74 puede, en algunos ejemplos, realizar una forma de decodificacion de entropfa y de decuantizacion escalar de una manera recfproca a la descrita anteriormente con respecto a la unidad de cuantizacion 52. La unidad de decuantizacion 74 puede enviar los vectores V[k] de primer plano reducidos 55k a la unidad de reordenacion 84.
La unidad de decodificacion psicoacustica 80 puede operar de manera recfproca con la unidad de codificacion de audio psicoacustica 40 que se muestra en el ejemplo de la Fig. 4 para descifrar los coeficientes HOA codificados 59 y las senales nFG 61 codificadas y, de este modo, generar coeficientes HOA ambientales compensados de energfa 47' y las senales nFG interpoladas 49' (que tambien se pueden denominar objetos de audio nFG interpolados 49'). La unidad de decodificacion psicoacustica 80 puede pasar los coeficientes HOA ambientales compensados de energfa 47' a la unidad de formulacion de coeficientes HOA 82 y las senales nFG 49' a la reordenacion 84.
La unidad de reordenacion 84 puede representar una unidad configurada para operar de una manera similar a la descrita anteriormente con respecto a la unidad de reordenacion 34. La unidad de reordenacion 84 puede recibir elementos de sintaxis indicativos del orden original de los componentes en primer plano de los coeficientes HOA 11. La unidad de reordenacion 84 puede, con base en estos elementos de sintaxis de reordenacion, reordenar las senales nFG interpoladas 49' y los vectores V[k] de primer plano reducidos 55k para generar senales nFG reordenadas 49' y vectores [k] de primer plano reordenados 55 k'. La unidad de reordenacion 84 puede emitir las senales nFG reordenadas 49" a la unidad de formulacion del primer plano 78 y los vectores V[k] de primer plano reordenados 55k' a la unidad de interpolacion espacio-temporal 76.
La unidad de interpolacion espacio-temporal 76 puede funcionar de una manera similar a la descrita anteriormente con respecto a la unidad de interpolacion espacio-temporal 50. La unidad de interpolacion espacio-temporal 76 puede recibir los vectores V[k] reordenados 55k y realizar la interpolacion espacio-temporal con respecto a los vectores V[k] reordenados de primer plano 55k' y los vectores V[k-1] reordenados de primer plano 55k-1 para generar vectores V[k] de primer plano interpolados 55k'. La unidad de interpolacion espacio-temporal 76 puede enviar los vectores V[k] de primer plano interpolados 55k" a la unidad de formulacion del primer plano 78.
La unidad de formulacion del primer plano 78 puede representar una unidad configurada para realizar la multiplicacion matricial con respecto a los vectores V[k] interpolados de primer plano 55k' y las senales nFG reordenadas 49" para generar los coeficientes HOA de primer plano 65. La unidad de formulacion del primer plano 78 puede realizar una multiplicacion matricial de las senales nFG reordenadas 49'' por los vectores V[k] de primer plano interpolados 55k''.
La unidad de formulacion de coeficientes HOA 82 puede representar una unidad configurada para anadir los coeficientes HOA de primer plano 65 a los canales HOA ambientales 47' para obtener los coeficientes HOA 11', donde la notacion primaria refleja que estos coeficientes HOA 11' pueden ser similares a, pero no los mismos que, los coeficientes HOA 11. Las diferencias entre los coeficientes HOA 11 y 11' pueden resultar de perdidas debidas a transmision sobre un medio de transmision con perdidas, cuantizacion u otras operaciones con perdidas.
De esta manera, las tecnicas pueden permitir que un dispositivo de decodificacion de audio, tal como el dispositivo de decodificacion de audio 24, determine, a partir de un flujo de bits, informacion direccional cuantizada, un objeto de audio de primer plano codificado y coeficientes ambisonicos de orden superior (HOA) codificados, en el que la informacion direccional cuantizada y el objeto de audio de primer plano codificado representan coeficientes hOa de primer plano que describen un componente en primer plano de un campo sonoro, y en el que los coeficientes HOA ambientales codificados describen un componente ambiental del campo sonoro, decuantizan la informacion direccional cuantizada para generar informacion direccional, realizan la interpolacion espacio-temporal para generar una informacion direccional interpolada, decodifican por audio el objeto de audio de primer plano codificado para generar un objeto de audio de primer plano y los coeficientes HOA ambientales codificados para generar coeficientes hOa ambientales, determinan los coeficientes HOA de primer plano en funcion de la informacion direccional interpolada y el objeto de audio de primer plano, y determinan los coeficientes HOA como una funcion de los coeficientes HOA de primer plano y los coeficientes HOA ambientales.
De esta manera, varios aspectos de las tecnicas pueden permitir que un dispositivo de decodificacion de audio unificado 24 conmute entre dos esquemas de descompresion diferentes. En algunos casos, el dispositivo de
decodificacion de audio 24 puede estar configurado para seleccionar uno de una pluralidad de esquemas de
descompresion basandose en la indicacion de si se genera una version comprimida de coeficientes armonicos esfericos representativos de un campo sonoro a partir de un objeto de audio sintetico y descomprimir la version comprimida de los coeficientes armonicos esfericos utilizando el esquema seleccionado de la pluralidad de
esquemas de descompresion. En estos y otros casos, el dispositivo de decodificacion de audio 24 comprende un
decodificador integrado.
5
10
15
20
25
30
35
40
45
50
55
60
65
En algunos casos, el dispositivo de decodificacion de audio 24 puede configurarse para obtener una indicacion de si se generan coeficientes armonicos esfericos representativos de un campo sonoro a partir de un objeto de audio sintetico.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado para obtener la indicacion desde un flujo de bits que almacena una version comprimida de los coeficientes armonicos esfericos.
De esta manera, varios aspectos de las tecnicas pueden permitir que el dispositivo de decodificacion de audio 24 obtenga vectores que describen componentes distintos y de fondo del campo sonoro. En algunos casos, el dispositivo de decodificacion de audio 24 puede estar configurado para determinar uno o mas primeros vectores que describen componentes distintos del campo sonoro y uno o mas segundos vectores que describen componentes de fondo del campo sonoro, tanto uno como los mas primeros vectores y uno o los mas segundos vectores generados al menos realizando una transformacion con respecto a la pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de decodificacion de audio 24, en el que la transformacion comprende una descomposicion en valores singulares que genera una matriz U representativa de los vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de los valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de decodificacion de audio 24, en el que uno o mas primeros vectores comprenden uno o mas vectores Udist * Sdist codificados en audio que, antes de la codificacion de audio, se generaron multiplicando uno o mas vectores Udist codificados en audio de una matriz U por uno o mas vectores Sdist de una matriz S, y en el que la matriz U y la matriz S se generan al menos realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado adicionalmente para decodificar en audio uno o mas vectores Udist * Sdist codificados en audio para generar una version decodificada en audio de uno o mas vectores U dist * Sdist codificados en audio.
En estos y otros casos, el dispositivo de decodificacion de audio 24, en el que uno o mas primeros vectores comprenden uno o mas vectores Udist * Sdist codificados en audio que, antes de la codificacion por audio, se generaron multiplicando uno o mas vectores Udist codificados en audio de una matriz U por uno o mas vectores Sdist de una matriz S y uno o mas vectores VTdist de una transposicion de una matriz V, y en el que la matriz U y la matriz S y la matriz V se generan al menos realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado adicionalmente para decodificar en audio uno o mas vectores Udist * Sdist codificados en audio para generar una version decodificada en audio de uno o mas vectores Udist * Sdist codificados en audio.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado ademas para multiplicar los vectores Udist * Sdist por los vectores VTdist para recuperar los de la pluralidad de armonicos esfericos representativos de los distintos componentes del campo sonoro.
En estos y otros casos, el dispositivo de decodificacion de audio 24, en el que el uno o mas segundos vectores comprenden uno o mas vectores Ubg * Sbg * VTbg codificados en audio que, antes de la codificacion de audio, se generaron multiplicando los vectores Ubg incluidos dentro de una matriz U por los vectores Sbg incluidos dentro de una matriz S y luego por vectores VT bg incluidos dentro de una transposicion de una matriz V, y en la que la matriz S, la matriz U y la matriz V se generaron, al menos, realizando una descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de decodificacion de audio 24, en el que el uno o mas segundos vectores comprenden uno o mas vectores Ubg * Sbg * VT bg codificados en audio que, antes de la codificacion de audio, se generaron multiplicando los vectores Ubg incluidos dentro de una matriz U por los vectores S bg incluidos dentro de una matriz S y luego por los vectores VT bg incluidos dentro de una transposicion de una matriz V, en la que la matriz S, la matriz U y la matriz V se generaron al menos realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos y en el que el dispositivo de decodificacion de audio 24 esta configurado adicionalmente para decodificar en audio uno o mas vectores bg * Sbg * VTbg codificados en audio para generar uno o mas vectores Ubg * Sbg * VTbg.
En estos y otros casos, el dispositivo de decodificacion de audio 24, en el que uno o mas primeros vectores comprenden uno o mas vectores Udist * Sdist codificados en audio que, antes de la codificacion de audio, se generaron multiplicando uno o mas vectores U dist codificados en audio de una matriz U por uno o mas vectores S dist de una matriz S, y uno o mas vectores V Tdist de una transposicion de una matriz V, en el que la matriz U, la matriz S y la matriz V se generaron al menos realizando la descomposicion en valores singulares con respecto a la
5
10
15
20
25
30
35
40
45
50
55
60
65
pluralidad de coeficientes armonicos esfericos y en el que el dispositivo de decodificacion de audio 24 esta configurado ademas para decodificar en audio uno o mas vectores Udist * Sdist codificados en audio para generar uno o mas vectores Udist * Sdist y multiplicar los vectores Udist * SdisT por los vectores VTdist para recuperar los de la pluralidad de coeficientes armonicos esfericos que describen los distintos componentes del campo sonoro, en el que uno o mas segundos vectores comprenden uno o mas vectores Ubg * Sbg * VTbg codificados en audio que, antes de la codificacion de audio, se generaron multiplicando los vectores U bg incluidos en la matriz U por los vectores Sbg incluidos en la matriz S y luego por los vectores VTbg incluidos dentro de la transposicion de la matriz V, y en el que el dispositivo de decodificacion de audio 24 esta configurado adicionalmente para decodificar en audio uno o mas vectores Ubg * Sbg * VTbg codificados en audio para recuperar al menos una parte de la pluralidad de coeficientes armonicos esfericos que describen componentes de fondo del campo sonoro y anadir la pluralidad de coeficientes armonicos esfericos que describen los distintos componentes del campo sonoro a la, al menos parte, de la pluralidad de coeficientes armonicos esfericos que describen componentes de fondo del campo sonoro para generar una version reconstruida de la pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de decodificacion de audio 24, en el que uno o mas primeros vectores comprenden uno o mas vectores Udist * Sdist que, antes de la codificacion de audio, se generaron multiplicando uno o mas vectores Udist codificados en audio de una matriz U por uno o mas vectores Sdist de una matriz S y uno o mas vectores VTdist de una transposicion de una matriz V, en donde la matriz U, la matriz S y la matriz V se generaron al menos realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos, y en el que el dispositivo de decodificacion de audio 20 esta configurado ademas para obtener un valor D que indica el numero de vectores a extraer de un flujo de bits para formar uno o mas vectores Udist * Sdist y el uno o mas vectores VTdist.
En estos y otros casos, el dispositivo de decodificacion de audio 24, en el que uno o mas primeros vectores comprenden uno o mas vectores Udist * Sdist que, antes de la codificacion de audio, se generaron multiplicando uno o mas vectores Udist codificados en audio de una matriz U por uno o mas vectores Sdist de una matriz S y uno o mas vectores VTdist de una transposicion de una matriz V, en donde la matriz U, la matriz S y la matriz V se generaron al menos realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos, y en el que el dispositivo de decodificacion de audio 24 esta configurado ademas para obtener un valor D sobre una base de trama de audio por trama de audio que indica el numero de vectores que se van a extraer de un flujo de bits para formar uno o mas vectores Udist * Sdist y el uno o mas vectores VTdist.
En estos y otros casos, el dispositivo de decodificacion de audio 24, en el que la transformacion comprende un analisis de componentes principales para identificar los distintos componentes del campo sonoro y los componentes de fondo del campo sonoro.
Varios aspectos de las tecnicas descritas en esta descripcion pueden tambien permitir que el dispositivo de codificacion de audio 24 realice interpolacion con respecto a las versiones descompuestas de los coeficientes HOA. En algunos casos, el dispositivo de decodificacion de audio 24 puede configurarse para obtener coeficientes armonicos esfericos interpolados descompuestos para un segmento de tiempo, realizando al menos en parte una interpolacion con respecto a una primera descomposicion de una primera pluralidad de coeficientes armonicos esfericos y una segunda descomposicion de una segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, la primera descomposicion comprende una primera matriz V representativa de los vectores singulares derechos de la primera pluralidad de coeficientes armonicos esfericos.
En estos y otros ejemplos, la segunda descomposicion comprende una segunda matriz V representativa de los vectores singulares derechos de la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, la primera descomposicion comprende una primera matriz V representativa de los vectores singulares derechos de la primera pluralidad de coeficientes armonicos esfericos y la segunda descomposicion comprende una segunda matriz V representativa de los vectores singulares derechos de la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el segmento de tiempo comprende una subtrama de una trama de audio.
En estos y otros casos, el segmento de tiempo comprende una muestra de tiempo de una trama de audio.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado para obtener una descomposicion interpolada de la primera descomposicion y la segunda descomposicion de un coeficiente armonico esferico de la primera pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado para obtener descomposiciones interpoladas de la primera descomposicion de una primera parte de la primera pluralidad de coeficientes armonicos esfericos incluidos en la primera trama y la segunda descomposicion de una segunda parte de la segunda pluralidad de los coeficientes armonicos esfericos incluidos en la segunda trama, y el dispositivo de
5
10
15
20
25
30
35
40
45
50
55
60
65
decodificacion de audio 24 esta configurado ademas para aplicar las descomposiciones interpoladas a un primer componente de tiempo de la primera parte de la primera pluralidad de coeficientes armonicos esfericos incluidos en la primera trama para generar una primera componente artificial de tiempo de la primera pluralidad de coeficientes armonicos esfericos y aplicar las respectivas descomposiciones interpoladas a una segunda componente de tiempo de la segunda parte de la segunda pluralidad de coeficientes armonicos esfericos incluidos en la segunda trama para generar un segundo componente artificial de tiempo de la segunda pluralidad de coeficientes armonicos esfericos incluidos.
En estos y otros casos, el primer componente de tiempo se genera realizando una sfntesis basada en vectores con respecto a la primera pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el segundo componente de tiempo se genera realizando una sfntesis basada en vectores con respecto a la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado adicionalmente para recibir el primer componente artificial de tiempo y el segundo componente artificial de tiempo, calcular las descomposiciones interpoladas de la primera descomposicion para la primera parte de la primera pluralidad de coeficientes armonicos esfericos y la segunda Descomponer para la segunda parte de la segunda pluralidad de coeficientes armonicos esfericos y aplicar inversos de las descomposiciones interpoladas en el primer componente artificial de tiempo para recuperar el componente de primer tiempo y en el segundo componente artificial de tiempo para recuperar el segundo componente de tiempo.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado para interpolar un primer componente espacial de la primera pluralidad de coeficientes armonicos esfericos y el segundo componente espacial de la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el primer componente espacial comprende una primera matriz U representativa de los vectores singulares izquierdos de la primera pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el segundo componente espacial comprende una segunda matriz U representativa de los vectores singulares izquierdos de la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el primer componente espacial es representativo de M segmentos temporales de coeficientes armonicos esfericos para la primera pluralidad de coeficientes armonicos esfericos y el segundo componente espacial es representativo de M segmentos temporales de coeficientes armonicos esfericos para la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el primer componente espacial es representativo de M segmentos temporales de coeficientes armonicos esfericos para la primera pluralidad de coeficientes armonicos esfericos y el segundo componente espacial es representativo de M segmentos temporales de coeficientes armonicos esfericos para la segunda pluralidad de coeficientes armonicos esfericos y el dispositivo de decodificacion de audio 24 esta configurado para interpolar los ultimos N elementos del primer componente espacial y los primeros N elementos del segundo componente espacial.
En estos y otros casos, la segunda pluralidad de coeficientes armonicos esfericos es posterior a la primera pluralidad de coeficientes armonicos esfericos en el dominio del tiempo.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado ademas para descomponer la primera pluralidad de coeficientes armonicos esfericos para generar la primera descomposicion de la primera pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado ademas para descomponer la segunda pluralidad de coeficientes armonicos esfericos para generar la segunda descomposicion de la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado ademas para realizar una descomposicion en valores singulares con respecto a la primera pluralidad de coeficientes armonicos esfericos para generar una matriz U representativa de los vectores singulares izquierdos de la primera pluralidad de coeficientes armonicos esfericos, una matriz S representativa de los valores singulares de la primera pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la primera pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado ademas para realizar una descomposicion en valores singulares con respecto a la segunda pluralidad de coeficientes armonicos esfericos para generar una matriz U representativa de los vectores singulares izquierdos de la segunda pluralidad de coeficientes armonicos esfericos, una matriz S representativa de los valores singulares de la segunda pluralidad de coeficientes
5
10
15
20
25
30
35
40
45
50
55
60
65
armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, la primera y la segunda pluralidad de coeficientes armonicos esfericos representan cada una una representacion de onda plana del campo sonoro.
En estos y otros casos, la primera y la segunda pluralidad de coeficientes armonicos esfericos representan cada uno uno o mas objetos monoaudio mezclados entre si.
En estos y otros casos, la primera y la segunda pluralidad de coeficientes armonicos esfericos comprenden cada uno un primer y segundo coeficientes armonicos esfericos respectivos que representan un campo sonoro tridimensional.
En estos y otros casos, la primera y la segunda pluralidad de coeficientes armonicos esfericos estan asociadas cada una con al menos una funcion de base esferica que tiene un orden mayor que uno.
En estos y otros casos, la primera y la segunda pluralidad de coeficientes armonicos esfericos estan asociadas cada una con al menos una funcion de base esferica que tiene un orden igual a cuatro.
En estos y otros casos, la interpolacion es una interpolacion ponderada de la primera descomposicion y segunda descomposicion, en la que los pesos de la interpolacion ponderada aplicada a la primera descomposicion son inversamente proporcionales a un tiempo representado por los vectores de la primera y segunda descomposicion y en donde los pesos de la interpolacion ponderada aplicada a la segunda descomposicion es proporcional a un tiempo representado por vectores de la primera y segunda descomposicion.
En estos y otros casos, los coeficientes armonicos esfericos interpolados descompuestos suavizan al menos uno de componentes espaciales y los componentes temporales de la primera pluralidad de coeficientes armonicos esfericos y la segunda pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado Us[n] = HOA(n) * (V_vec[n])-1 y obtener un escalar.
En estos y otros casos, la interpolacion comprende una interpolacion lineal. En estos y otros casos, la interpolacion comprende una interpolacion no lineal. En estos y otros casos, la interpolacion comprende una interpolacion de coseno. En estos y otros casos, la interpolacion comprende una interpolacion de coseno ponderada. En estos y otros casos, la interpolacion comprende una interpolacion cubica. En estos y otros casos, la interpolacion comprende una interpolacion de spline adaptativa. En estos y otros casos, la interpolacion comprende una interpolacion de curvatura minima.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado ademas para generar un flujo de bits que incluye una representacion de los coeficientes armonicos esfericos interpolados descompuestos para el segmento de tiempo y una indicacion de un tipo de interpolacion.
En estos y otros casos, la indicacion comprende uno o mas bits que se corresponden con el tipo de interpolacion.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado adicionalmente para obtener un flujo de bits que incluye una representacion de los coeficientes armonicos esfericos interpolados descompuestos para el segmento de tiempo y una indicacion de un tipo de interpolacion.
En estos y otros casos, la indicacion comprende uno o mas bits que se corresponden con el tipo de interpolacion.
Varios aspectos de las tecnicas pueden, en algunos casos, permitir ademas que el dispositivo de decodificacion de audio 24 sea configurado para obtener un flujo de bits que comprende una version comprimida de un componente espacial de un campo sonoro, el componente espacial generado realizando una sintesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, un campo que especifica un modo de prediccion utilizado al comprimir el componente espacial.
En estos y otros casos, la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, informacion de tabla Huffman que especifica una tabla Huffman usada al comprimir el componente espacial.
En estos y otros casos, la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, un campo que indica un valor que expresa un tamano del paso de cuantizacion o una variable del mismo utilizado al comprimir el componente espacial.
5
10
15
20
25
30
35
40
45
50
55
60
65
En estos y otros casos, el valor comprende un valor nbits.
En estos y otros casos, el flujo de bits comprende una version comprimida de una pluralidad de componentes espaciales del campo sonoro de la que esta incluida la version comprimida del componente espacial y el valor expresa el tamano del paso de cuantizacion o una variable del mismo utilizada al comprimir la pluralidad de componentes espaciales.
En estos y otros casos, la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, un codigo Huffman para representar un identificador de categorfa que identifica una categorfa de compresion a la que corresponde el componente espacial.
En estos y otros casos, la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, un bit de signo que identifica si el componente espacial es un valor positivo o un valor negativo.
En estos y otros casos, la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, un codigo de Huffman para representar un valor residual del componente espacial.
En estos y otros casos, el dispositivo comprende un dispositivo de decodificacion de audio.
Varios aspectos de las tecnicas tambien pueden permitir que el dispositivo de decodificacion de audio 24 identifique un libro de codigos de Huffman para usar al descomprimir una version comprimida de un componente espacial de una pluralidad de componentes espaciales comprimidos basado en un orden de la version comprimida del componente espacial con relacion a componentes restantes de la pluralidad de componentes espaciales comprimidos, generando el componente espacial al realizar una sfntesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el dispositivo de decodificacion de audio 24 esta configurado para obtener un flujo de bits que comprende la version comprimida de un componente espacial de un campo sonoro y descomprimir la version comprimida del componente espacial utilizando, al menos en parte, el libro de codigos Huffman identificado para obtener el componente espacial.
En estos y otros casos, la version comprimida del componente espacial esta representada en el flujo de bits utilizando, al menos en parte, un campo que especifica un modo de prediccion utilizado al comprimir el componente espacial y el dispositivo de decodificacion de audio 24 esta configurado para descomprimir la version comprimida del componente espacial basada, al menos en parte, en el modo de prediccion para obtener el componente espacial.
En estos y otros casos, la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, informacion de tabla Huffman que especifica una tabla Huffman usada al comprimir el componente espacial y el dispositivo de decodificacion de audio 24 esta configurado para descomprimir la version comprimida del componente espacial basado, al menos en parte, en la informacion de la tabla Huffman.
En estos y otros casos, la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, un campo que indica un valor que expresa un tamano del paso de cuantizacion o una variable del mismo utilizado al comprimir el componente espacial y el dispositivo de decodificacion de audio 24 esta configurado para descomprimir la version comprimida del componente espacial basado, al menos en parte, en el valor.
En estos y otros casos, el valor comprende un valor nbits.
En estos y otros casos, el flujo de bits comprende una version comprimida de una pluralidad de componentes espaciales del campo sonoro de la que esta incluida la version comprimida del componente espacial, el valor expresa el tamano del paso de cuantizacion o una variable del mismo utilizado al comprimir la pluralidad de componentes espaciales y el dispositivo de decodificacion de audio 24 esta configurado para descomprimir la pluralidad de la version comprimida del componente espacial basado, al menos en parte, en el valor.
En estos y otros casos, la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, un codigo de Huffman para representar un identificador de categorfa que identifica una categorfa de compresion a la que corresponde el componente espacial y el dispositivo de decodificacion de audio 24 esta configurado para descomprimir la version comprimida del componente espacial basado, al menos en parte, en el codigo Huffman.
En estos y otros casos, la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, un bit de signo que identifica si el componente espacial es un valor positivo o negativo y el dispositivo de decodificacion de audio 24 esta configurado para descomprimir la version comprimida del componente espacial basado, al menos en parte, en el bit de signo.
5
10
15
20
25
30
35
40
45
50
55
60
65
En estos y otros casos, la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, un codigo de Huffman para representar un valor residual del componente espacial y el dispositivo de decodificacion de audio 24 esta configurado para descomprimir la version comprimida del componente espacial basado, al menos en parte, en el codigo Huffman incluido en el libro de codigos Huffman identificado.
En cada una de las diversas instancias descritas anteriormente, debe entenderse que el dispositivo de decodificacion de audio 24 puede realizar un procedimiento o comprender de otro modo medios para realizar cada paso del procedimiento para el que esta configurado el dispositivo de decodificacion de audio 24. En algunos casos, estos medios pueden comprender uno o mas procesadores. En algunos casos, uno o mas procesadores pueden representar un procesador de proposito especial configurado por medio de instrucciones almacenadas en un medio de almacenamiento no transitorio legible por ordenador. En otras palabras, varios aspectos de las tecnicas en cada uno de los conjuntos de ejemplos de codificacion pueden proporcionar un medio de almacenamiento no transitorio legible por ordenador que tiene almacenadas en el instrucciones que, cuando se ejecutan, hacen que uno o mas procesadores realicen el procedimiento para el cual el dispositivo de decodificacion de audio 24 se ha configurado para realizar.
La Fig. 6 es un diagrama de flujo que ilustra el funcionamiento ejemplar de una unidad de analisis de contenido de un dispositivo de codificacion de audio, tal como la unidad de analisis de contenido 26 que se muestra en el ejemplo de la Fig. 4, en la realizacion de diversos aspectos de las tecnicas descritas en esta descripcion.
La unidad de analisis de contenido 26 puede, al determinar si los coeficientes HOA 11 representativos de un campo sonoro se generan a partir de un objeto de audio sintetico, obtener un entramado de coeficientes HOA (93), que puede ser de tamano 25 por 1024 para una representacion de cuarto orden (es decir, N = 4). Despues de obtener los coeficientes HOA entramados (que tambien se pueden denominar en este documento como una matriz de SHC entramada 11 y las matrices de SHC entramadas subsiguientes pueden designarse como matrices de SHC entramadas 27B, 27C, etc.), la unidad de analisis de contenido 26 puede entonces excluir el primer vector de los coeficientes HOA entramados 11 para generar coeficientes HOA entramados reducidos (94).
La unidad de analisis de contenido 26 puede entonces predecir el primer vector distinto de cero de los coeficientes HOA entramados reducidos a partir de los vectores restantes de los coeficientes HOA entramados reducidos (95). Despues de predecir el primer vector distinto de cero, la unidad de analisis de contenido 26 puede obtener un error basado en el primer vector distinto de cero predicho y el vector distinto de cero real (96). Una vez obtenido el error, la unidad de analisis de contenido 26 puede calcular una relacion basada en una energfa del primer vector distinto de cero real y del error (97). La unidad de analisis de contenido 26 puede entonces comparar esta relacion con un umbral (98). Cuando la relacion no excede el umbral ("NO", 98), la unidad de analisis de contenido 26 puede determinar que la matriz de SHC entramada 11 se genera a partir de un registro e indicar en el flujo de bits que la representacion codificada correspondiente de la matriz SHC 11 se genero a partir de una grabacion (100, 101). Cuando la relacion excede el umbral ("SI", 98), la unidad de analisis de contenido 26 puede determinar que la matriz de SHC entramada 11 se genera a partir de un objeto de audio sintetico e indica en el flujo de bits que la representacion codificada correspondiente de la matriz SHC 11 se genero a partir de un objeto de audio sintetico (102, 103). En algunos casos, cuando se genera la matriz de SHC entramada 11 a partir de una grabacion, la unidad de analisis de contenido 26 pasa la matriz de SHC entramada 11 a la unidad de sfntesis basada en vectores 27 (101). En algunos casos, cuando la matriz de SHC entramada 11 se genero a partir de un objeto de audio sintetico, la unidad de analisis de contenido 26 pasa la matriz de SHC entramada 11 a la unidad de sfntesis basada en la direccion 28 (104).
La Fig. 7 es un diagrama de flujo que ilustra una operacion a modo de ejemplo de un dispositivo de codificacion de audio, tal como el dispositivo de codificacion de audio 20 que se muestra en la Fig. 4, en la realizacion de diversos aspectos de las tecnicas de sfntesis basadas en vectores descritas en esta descripcion. Inicialmente, el dispositivo de codificacion de audio 20 recibe los coeficientes HOA 11 (106). El dispositivo de codificacion de audio 20 puede invocar la unidad LIT 30, que puede aplicar una LIT con respecto a los coeficientes HOA para dar salida a los coeficientes HOA transformados (por ejemplo, en el caso de SVD, los coeficientes HOA transformados pueden comprender los vectores US[^j 33 y los vectores V[^j 35) (107).
El dispositivo de codificacion de audio 20 puede invocar, a continuacion, la unidad de calculo de parametros 32 para realizar el analisis descrito anteriormente con respecto a cualquier combinacion de los vectores US[^j 33, los vectores US[A-1] 33, los vectores V[^j y/o los vectores V[A-1] 35 para identificar varios parametros de la manera descrita anteriormente. Es decir, la unidad de calculo de parametros 32 puede determinar al menos un parametro basado en un analisis de los coeficientes HOA transformados 33/35 (108).
El dispositivo de codificacion de audio 20 puede entonces invocar la unidad de reordenacion 34, que puede reordenar los coeficientes HOA transformados (que, de nuevo en el contexto de SVD, pueden referirse a los vectores US[^] 33 y los vectores V[^] 35 basados en el parametro para generar los coeficientes HOA transformados reordenados 33'/35' (o, en otras palabras, los vectores US[^] 33' y los vectores V[^] 35'), como se ha descrito anteriormente (109). El dispositivo de codificacion de audio 20 puede, durante cualquiera de las operaciones anteriores u operaciones subsiguientes, invocar tambien la unidad de analisis del campo sonoro 44. La unidad de
5
10
15
20
25
30
35
40
45
50
55
60
65
analisis del campo sonoro 44 puede, como se ha descrito anteriormente, realizar un analisis de campo sonoro con respecto a los coeficientes HOA 11 y/o los coeficientes HOA transformados 33/35 para determinar el numero total de canales de primer plano (nFG) 45, el orden del campo sonoro de fondo (Nbg) y el numero (nBGa) y los indices (i) de canales BG HOA adicionales a enviar (que pueden designarse colectivamente como informacion de canal de fondo 43 en el ejemplo de la Fig. 4) (109).
El dispositivo de codificacion de audio 20 tambien puede invocar la unidad de seleccion de fondo 48. La unidad de seleccion de fondo 48 puede determinar coeficientes HOA de fondo o ambientales 47 basados en la informacion de canal de fondo 43 (110). El dispositivo de codificacion de audio 20 puede invocar adicionalmente la unidad de seleccion del primer plano 36, la cual puede seleccionar las de los vectores US[k] reordenados 33' y los vectores V[k] reordenados 35 que representan componentes en primer plano o distintos del campo sonoro basados en nFG 45 (que puede representar uno o mas indices que identifican estos vectores de primer plano) (112).
El dispositivo de codificacion de audio 20 puede invocar la unidad de compensacion de energfa 38. La unidad de compensacion de energfa 38 puede realizar compensacion de energfa con respecto a los coeficientes HOA ambientales 47 para compensar la perdida de energfa debido a la eliminacion de varios de los canales HOA por la unidad de seleccion de fondo 48 (114) y generar asf coeficientes HOA ambientales compensados de energfa 47'.
El dispositivo de codificacion de audio 20 tambien invoca entonces la unidad de interpolacion espacio-temporal 50. La unidad de interpolacion espacio-temporal 50 puede realizar interpolacion espacio-temporal con respecto a los coeficientes HOA transformados reordenados 33'/35' para obtener las senales de primer plano interpoladas 49 '(que tambien pueden denominarse las "senales nFG interpoladas 49") y la informacion direccional restante en primer plano 53 (que tambien se puede denominar los vectores "V[k] 53") (116). El dispositivo de codificacion de audio 20 puede entonces invocar la unidad de reduccion de coeficientes 46. La unidad de reduccion de coeficientes 46 puede realizar una reduccion de los coeficientes con respecto a los vectores V[k] de primer plano restantes basados en la informacion de canal de fondo 43 para obtener informacion direccional reducida en primer plano 55 (que tambien se puede denominar vectores de primer plano reducidos V[k] 55) (118).
El dispositivo de codificacion de audio 20 puede entonces invocar la unidad de cuantizacion 52 para comprimir, de la manera descrita anteriormente, los vectores V[k] de primer plano reducidos 55 y generar los vectores V[k] 57 de primer plano codificados.
El dispositivo de codificacion de audio 20 tambien puede invocar la unidad codificadora de audio psicoacustico 40. La unidad codificadora de audio psicoacustico 40 puede codificar psicoacusticamente cada vector de los coeficientes HOA ambientales compensados de energfa 47' y las senales nFG interpoladas 49' para generar coeficientes HOA codificados 59 y senales nFG codificadas 61. El dispositivo de codificacion de audio puede entonces invocar la unidad de generacion del flujo de bits 42. La unidad de generacion del flujo de bits 42 puede generar el flujo de bits 21 basado en la informacion direccional codificada en primer plano 57, los coeficientes HOA ambientales codificados 59, las senales nFG codificadas 61 y la informacion de canal de fondo 43.
La Fig. 8 es un diagrama de flujo que ilustra el funcionamiento ejemplar de un dispositivo de decodificacion de audio, tal como el dispositivo de decodificacion de audio 24 que se muestra en la Fig. 5, al realizar diversos aspectos de las tecnicas descritas en esta descripcion. Inicialmente, el dispositivo decodificador de audio 24 puede recibir el flujo de bits 21 (130). Al recibir el flujo de bits, el dispositivo de decodificacion de audio 24 puede invocar la unidad de extraccion 72. Suponiendo a efectos de este analisis que el flujo de bits 21 indica que se va a realizar una reconstruccion basada en vectores, el dispositivo de extraccion 72 puede analizar este flujo de bits para recuperar la informacion anotada anteriormente, pasando esta informacion a la unidad de reconstruccion basada en vectores 92.
En otras palabras, la unidad de extraccion 72 puede extraer la informacion direccional codificada en primer plano 57 (que, de nuevo, tambien se puede denominar los vectores V[k] de primer plano codificados 57), los coeficientes HOA ambientales codificados 59 y las senales de primer plano codificadas que tambien se pueden denominar las senales nFG de primer plano codificadas 59 o los objetos de audio de primer plano codificados 59) del flujo de bits 21 de la manera descrita anteriormente (132).
El dispositivo de decodificacion de audio 24 puede invocar adicionalmente la unidad de cuantizacion 74. La unidad de cuantizacion 74 puede decodificar por entropfa y decuantizar la informacion direccional codificada en primer plano 57 para obtener informacion direccional reducida en primer plano 55k (136). El dispositivo de decodificacion de audio 24 tambien puede invocar la unidad de decodificacion psicoacustica 80. La unidad de codificacion de audio psicoacustica 80 puede decodificar los coeficientes HOA ambientales codificados 59 y las senales de primer plano codificadas 61 para obtener coeficientes HOA ambientales compensados de energfa 47' y las senales de primer plano interpoladas 49' (138). La unidad de decodificacion psicoacustica 80 puede pasar los coeficientes HOA ambientales compensados de energfa 47' a la unidad de formulacion de coeficientes hOa 82 y las senales nFG 49' a la unidad de reordenacion 84.
La unidad de reordenacion 84 puede recibir elementos de sintaxis indicativos del orden original de los componentes en primer plano de los coeficientes HOA 11. La unidad de reordenacion 84 puede, con base en estos elementos de
5
10
15
20
25
30
35
40
45
50
55
60
65
sintaxis de reordenacion, reordenar las senales nFG 49' interpoladas y los vectores de primer plano V[k] reducidos 55k para generar senales nFG reordenadas 49' y vectores V[k] de primer plano reordenados 55k (140). La unidad de reordenacion 84 puede emitir las senales nFG reordenadas 49" a la unidad de formulacion del primer plano 78 y los vectores V[k] de primer plano reordenados 55k' a la unidad de interpolacion espacio-temporal 76.
El dispositivo de decodificacion de audio 24 puede invocar a continuacion la unidad de interpolacion espacio- temporal 76. La unidad de interpolacion espacio-temporal 76 puede recibir la informacion direccional de primer plano reordenada 55k' y realizar la interpolacion espacio-temporal con respecto a la informacion direccional reducida de primer plano 55k/55k-i para generar la informacion direccional de primer plano interpolada 55k" (142). La unidad de interpolacion espacio-temporal 76 puede enviar los vectores V[k] de primer plano interpolados 55k" a la unidad de formulacion del primer plano 78.
El dispositivo de decodificacion de audio 24 puede invocar la unidad de formulacion del primer plano 78. La unidad de formulacion del primer plano 78 puede realizar la multiplicacion matricial de las senales de primer plano interpoladas 49" por la informacion direccional de primer plano interpolada 55k" para obtener los coeficientes HOA de primer plano 65 (144). El dispositivo de decodificacion de audio 24 tambien puede invocar la unidad de formulacion de coeficientes HOA 82. La unidad de formulacion de coeficientes HOA 82 puede anadir los coeficientes HOA de primer plano 65 a los canales ambientales HOA 47' para obtener los coeficientes HOA 11' (146).
Las Figs. 9A-9L son diagramas de bloques que ilustran varios aspectos del dispositivo de codificacion de audio 20 del ejemplo de la Fig. 4 con mayor detalle. La Fig. 9A es un diagrama de bloques que ilustra la unidad LIT 30 del dispositivo de codificacion de audio 20 con mas detalle. Como se muestra en el ejemplo de la Fig. 9A, la unidad LIT 30 puede incluir multiples transformadas reversibles lineales diferentes 200-200N. La unidad LIT 30 puede incluir, para proporcionar unos pocos ejemplos, una transformacion 200A ("SVD 200A") de una descomposicion en valores singulares (SVD 200A), una transformacion de analisis de componentes principales (PCA) 200B ("PCA 200B"), una transformada de Karhunen-Loeve (KLT) 200C ("KLT 200C"), una transformada de Fourier rapida (FFT) 200D ("FFT 200D") y una transformada de coseno discreta (DCT) 200N ("DCT 200N"). La unidad LIT 30 puede invocar cualquiera de estas transformadas lineales reversibles 200 para aplicar la transformacion respectiva con respecto a los coeficientes HOA 11 y generar los coeficientes HOA transformados respectivos 33/35.
Aunque se describe que se realiza directamente con respecto a los coeficientes HOA 11, la unidad LIT 30 puede aplicar las transformadas lineales reversibles 200 a derivados de los coeficientes HOA 11. Por ejemplo, la unidad LIT 30 puede aplicar la SVD 200 con respecto a una matriz de densidad espectral de potencia derivada de los coeficientes HOA 11. La matriz de densidad espectral de potencia se puede designarse como PSD y se obtiene mediante la multiplicacion matricial de la transposicion del hoaFrame al hoaFrame, como se indica en el pseudocodigo que sigue a continuacion. La notacion HoaFrame se refiere a una trama de los coeficientes HOA 11.
La unidad LIT 30 puede, despues de aplicar la SVD 200 (svd) al PSD, puede obtener una matriz S[k]2 (S_squared) y una matriz V[k]. La matriz S[k]2 puede designar una matriz S[k] al cuadrado, con lo que la unidad LIT 30 (o, alternativamente, la unidad SVD 200 como un ejemplo) puede aplicar una operacion de rafz cuadrada a la matriz S[k]2 para obtener la matriz S[k]. La unidad SVD 200 puede, en algunos casos, realizar la cuantizacion con respecto a la matriz V[k] para obtener una matriz V[k] cuantizada (que puede estar designada como matriz V[k]'). La unidad LIT 30 puede obtener la matriz U[k] multiplicando primero la matriz S[k] por la matriz cuantizada V[k]' para obtener una matriz SV[k]'. La unidad LIT 30 puede obtener a continuacion la pseudoinversa (pinv) de la matriz SV[k]' y luego multiplicar los coeficientes HOA 11 por la pseudoinversa de la matriz SV[k]' para obtener la matriz U[k]. Lo anterior puede estar representado por el siguiente pseudocodigo:
PSD = hoaFrame' *hoaFrame;
[V, S_squared] = svd(PSD,'econ');
S = sqrt(S_squared);
U = hoaFrame * pinv(S*V);
Mediante la realizacion de SVD con respecto a la densidad espectral de potencia (PSD) de los coeficientes HOA en lugar de los coeficientes en si, la unidad LIT 30 puede reducir potencialmente la complejidad computacional de realizar la SVD en terminos de uno o mas ciclos de procesador y espacio de almacenamiento, mientras que se consigue la misma eficacia en la codificacion de la fuente de audio como si la SVD se aplicara directamente a los coeficientes HOA. Es decir, la SVD de tipo PSD anteriormente descrita puede ser potencialmente menos exigente de calculo porque la SVD se realiza sobre una matriz F * F (con F el numero de coeficientes HOA). En comparacion con una matriz M * F con M es la longitud de tramas, es decir, 1024 o mas muestras. La complejidad de una SVD puede ahora, a traves de la aplicacion a la PSD en lugar de los coeficientes HOA 11, estar alrededor de o (LA3) en comparacion con o (M * LA2) cuando se aplica a los coeficientes HOA 11 (donde o (*) indica la notacion grande-O de la complejidad computacional comun a las ciencias informaticas).
5
10
15
20
25
30
35
40
45
50
55
60
65
La Fig. 9B es un diagrama de bloques que ilustra la unidad de calculo de parametros 32 del dispositivo de codificacion de audio 20 con mas detalle. La unidad de calculo de parametros 32 puede incluir una unidad de analisis de energfa 202 y una unidad de correlacion cruzada 204. La unidad de analisis de energfa 202 puede realizar el analisis de energfa descrito anteriormente con respecto a uno o mas de los vectores US[k] 33 y los vectores V[k] 35 para generar uno o mas de los parametros de correlacion (R), los parametros de propiedades direccionales (9, q, r) y la propiedad de la energfa (e) para uno o mas de la trama actual (k) o de la trama anterior (k- 1). Del mismo modo, la unidad de correlacion cruzada 204 puede realizar la correlacion cruzada descrita anteriormente con respecto a uno o mas de los vectores US[k] 33 y los vectores V[k] 35 para generar uno o mas de los parametro de correlacion (R), los parametros de propiedades direccionales (9, q, r) y la propiedad de la energfa (e) para una o mas de la trama actual (k) o de la trama anterior (k-1). La unidad de calculo de parametros 32 puede emitir los parametros de las tramas actuales 37 y los parametros de las tramas anteriores 39.
La Fig. 9C es un diagrama de bloques que ilustra la unidad de reordenacion 34 del dispositivo de codificacion de audio 20 con mas detalle. La unidad de reordenacion 34 incluye una unidad de evaluacion de parametros 206 y una unidad de reordenacion de vectores 208. La unidad de evaluacion de parametros 206 representa una unidad configurada para evaluar los parametros de las tramas anteriores 39 y los parametros de la trama actual 37 de la manera descrita anteriormente para generar indices de reordenacion 205. Los indices de reordenacion 205 incluyen indices que identifican como se reordenaran los vectores de los vectores US[k] 33 y los vectores de los vectores V[k] 35 (por ejemplo, por pares de indice con el primer fndice del par que identifica el fndice de la ubicacion actual del vector y el segundo fndice del par que identifica la ubicacion reordenada del vector). La unidad de reordenacion de vectores 208 representa una unidad configurada para reordenar los vectores US[k] 33 y los vectores V[k] 35 de acuerdo con los indices de reordenacion 205. La unidad de reordenacion 34 puede emitir los vectores US[k] reordenados 33' y los vectores V[k] reordenados 35', al pasar tambien los indices de reordenacion 205 como uno o mas elementos de sintaxis a la unidad de generacion del flujo de bits 42.
La Fig. 9D es un diagrama de bloques que ilustra la unidad de analisis del campo sonoro 44 del dispositivo de codificacion de audio 20 con mas detalle. Como se muestra en el ejemplo de la Fig. 9D, la unidad de analisis del campo sonoro 44 puede incluir una unidad de analisis de los valores singulares 210A, una unidad de analisis de energfa 210B, una unidad de analisis espacial 210C, una unidad de analisis de enmascaramiento espacial 210D, una unidad de analisis de difusion 210E y una unidad de analisis direccional 210F. La unidad de analisis de los valores singulares 210A puede representar una unidad configurada para analizar la pendiente de la curva creada por los valores diagonales descendentes de S vectores (que forman parte de los vectores US[k] 33), donde los grandes valores singulares representan sonidos de primer plano o distintos sonidos y los valores singulares bajos representan componentes de fondo del campo sonoro, como se ha descrito anteriormente. La unidad de analisis de energfa 210B puede representar una unidad configurada para determinar la energfa de los vectores V[k] 35 sobre una base por vector.
La unidad de analisis espacial 210C puede representar una unidad configurada para realizar el analisis de energfa espacial descrito anteriormente mediante la transformacion de los coeficientes HOA 11 en el dominio espacial e identificar areas de alta energfa representativas de los componentes direccionales del campo sonoro que deben ser preservadas. La unidad de analisis de enmascaramiento espacial 210D puede representar una unidad configurada para realizar el analisis de enmascaramiento espacial de una manera similar a la del analisis de energfa espacial, excepto que la unidad de analisis de enmascaramiento espacial 210D puede identificar areas espaciales que estan enmascaradas por sonidos de energfa superior espacialmente proximos. La unidad 210E de analisis de difusion puede representar una unidad configurada para realizar el analisis de difusion descrito anteriormente con respecto a los coeficientes HOA 11 para identificar areas de energfa difusa que pueden representar componentes de fondo del campo sonoro. La unidad de analisis direccional 210F puede representar una unidad configurada para realizar el analisis direccional anotado anteriormente que implica el calculo de los vectores VS[k], y el cuadrado y la suma de cada entrada de cada uno de estos vectores VS[k] para identificar un cociente de direccionalidad. La unidad de analisis direccional 210F puede proporcionar este cociente de direccionalidad para cada uno de los vectores VS[k] a la unidad de identificacion de fondo/primer plano (BG/FG) (ID) 212.
La unidad de analisis del campo sonoro 44 puede incluir tambien la unidad de ID BG/FG 212, que puede representar una unidad configurada para determinar el numero total de canales de primer plano (nFG) 45, el orden del campo sonoro de fondo (Nbg) y el numero (nBGa) y los indices (i) de canales BG HOA adicionales para enviar (que se pueden designar colectivamente como informacion de canal de fondo 43 en el ejemplo de la Fig. 4) basado en cualquier combinacion de la salida de analisis por cualquier combinacion de unidades de analisis 210-210F. La unidad de ID de BG/FG 212 puede determinar el nFG 45 y la informacion de canal de fondo 43 para alcanzar la velocidad de bits objetivo 41.
La Fig. 9E es un diagrama de bloques que ilustra la unidad de seleccion del primer plano 36 del dispositivo de codificacion de audio 20 con mas detalle. La unidad de seleccion del primer plano 36 incluye una unidad de analisis de vectores 214 que puede analizar o extraer de otro modo los vectores US[k] de primer plano 49 y los vectores V[k] de primer plano 51k identificados por el elemento de sintaxis nFG 45 a partir de los vectores US[k] reordenados 33' y los vectores V[k] reordenados 35'. La unidad de analisis de vectores 214 puede analizar los diversos vectores representativos de los componentes en primer plano del campo sonoro identificados por la unidad de analisis del
5
10
15
20
25
30
35
40
45
50
55
60
65
campo sonoro 44 y especificados por el elemento de sintaxis de nFG 45 (que tambien se puede denominar informacion de canal de primer plano 45). Como se muestra en el ejemplo de la Fig. 9E, la unidad de analisis de vectores 214 puede seleccionar, en algunos casos, vectores no consecutivos dentro de los vectores US[k] de primer plano 49 y los vectores V[k] de primer plano 51k para representar los componentes en primer plano del campo sonoro. Ademas, la unidad de analisis de vectores 214 puede seleccionar, en algunos casos, los mismos vectores (posicion) de los vectores US[k] de primer plano 49 y los vectores V[k] de primer plano 51k para representar los componentes en primer plano del campo sonoro.
La Fig. 9F es un diagrama de bloques que ilustra la unidad de seleccion de fondo 48 del dispositivo de codificacion de audio 20 con mas detalle. La unidad de seleccion de fondo 48 puede determinar coeficientes HOA de fondo o ambientales 47 basados en la informacion de canal de fondo (por ejemplo, el campo sonoro de fondo (Nbg) y el numero (nBGa) y los indices (i) de canales BG HOA adicionales para enviar). Por ejemplo, cuando Nbg es igual a uno, la unidad de seleccion de fondo 48 puede seleccionar los coeficientes HOA 11 para cada muestra de la trama de audio que tiene un orden igual o inferior a uno. La unidad de seleccion de fondo 48 puede, en este ejemplo, seleccionar entonces los coeficientes HOA 11 que tienen un fndice identificado por uno de los indices (i) como coeficientes adicionales de BG HOA, en donde el nBGa se proporciona a la unidad de generacion del flujo de bits 42 que se especificara en el flujo de bits 21 para permitir que el dispositivo de decodificacion de audio, tal como el dispositivo de decodificacion de audio 24 que se muestra en el ejemplo de la Fig. 5, pueda analizar los coeficientes BG HOA 47 del flujo de bits 21. La unidad de seleccion de fondo 48 puede emitir entonces los coeficientes HOA ambientales 47 a la unidad de compensacion de energfa 38. Los coeficientes HOA ambientales 47 pueden tener D dimensiones: M x [(NBG+1)2+nBGa],
La Fig. 9G es un diagrama de bloques que ilustra la unidad de compensacion de energfa 38 del dispositivo de codificacion de audio 20 con mas detalle. La unidad de compensacion de energfa 38 puede representar una unidad configurada para realizar compensacion de energfa con respecto a los coeficientes HOA ambientales 47 para compensar la perdida de energfa debido a la eliminacion de varios de los canales HOA por la unidad de seleccion de fondo 48. La unidad de compensacion de energfa 38 puede incluir una unidad de determinacion de energfa 218, una unidad de analisis de energfa 220 y una unidad de amplificacion de energfa 222.
La unidad 218 de determinacion de energfa puede representar una unidad configurada para identificar el RMS para cada fila y/o columna de una o mas de la matriz reordenada US[k] 33' y la matriz reordenada V[k] 35'. La unidad de determinacion de energfa 38 tambien puede identificar el RMS para cada fila y/o columna de uno o mas de los canales de primer plano seleccionados, los cuales pueden incluir las senales nFG 49 y los vectores V[k] de primer plano 51k y los coeficientes HOA ambientales de orden reducido 47. El RMS para cada fila y/o columna de una o mas de la matriz US[k] reordenada 33' y la matriz V[k] reordenada 35' puede almacenarse en un vector indicado RMScompleto, mientras que el RMS para cada fila y/o la columna de una o mas de las senales nFG 49, los vectores V[k] primer plano 51k y los coeficientes HOA ambientales de orden reducido 47 pueden almacenarse en un vector indicado RMS reducido.
En algunos ejemplos, para determinar cada RMS de las respectivas filas y/o columnas de una o mas de la matriz US[k] reordenada 33 ', la matriz V[k] reordenada 35', las senales nFG 49, el primer plano V[k] Vectores 51 k, y los coeficientes HOA ambientales de orden reducido 47, la unidad de determinacion de energfa 218 puede aplicar primero unos coeficiente de armonicos esfericos (SHC) de referencia a las columnas. La aplicacion del renderizador de los SHC de referencia por la unidad 218 de determinacion de energfa permite la determinacion de RMS en el dominio SHC para determinar la energfa del campo sonoro total descrito por cada fila y/o columna de la trama representado por filas y/o columnas de uno o mas mas de la matriz US[k] reordenada 33', la matriz V[k] reordenada 35', las senales nFG 49, los vectores V[k] 51k de primer plano y los coeficientes HOA ambientales de orden reducido 47. La unidad de determinacion de energfa 38 puede pasar estos vectores RMScompleto y RMS reducido a la unidad 220 de analisis de energfa.
La unidad de analisis de energfa 220 puede representar una unidad configurada para calcular un vector de valores de amplificacion Z, de acuerdo con la siguiente ecuacion: Z = RMScompleto/RMSreducido. La unidad de analisis de energfa 220 puede entonces pasar este vector de valores de amplificacion Z a la unidad de amplificacion de energfa 222. La unidad de amplificacion de energfa 222 puede representar una unidad configurada para aplicar este vector de valores de amplificacion Z o varias partes del mismo a una o mas de las senales nFG 49, los vectores V[k] de primer plano 51k y los coeficientes HOA ambientales de orden reducido 47. En algunos casos, el vector de valores de amplificacion Z se aplica solo a los coeficientes HOA ambientales de orden reducido 47 por la siguiente ecuacion HOAbg-red' = HOAbg-redZt, donde HOA bg-red indica los coeficientes HOA ambientales de orden reducido 47, HOAbg-red' indica los coeficientes HOA ambientales reducidos y reducidos en energfa 47' y ZT representa la transposicion del vector Z.
La Fig. 9H es un diagrama de bloques que ilustra, con mas detalle, la unidad de interpolacion espacio-temporal 50 del dispositivo de codificacion de audio 20 que se muestra en el ejemplo de la Fig. 4. La unidad de interpolacion espacio-temporal 50 puede representar una unidad configurada para recibir los vectores V[k] de primer plano 51k para la quinta trama y los vectores V[k-1] de primer plano 51 m para la trama anterior (de ahf el k-1) y realizar interpolacion espacio-temporal para generar los vectores V[k] de primer plano interpolados. La unidad de
5
10
15
20
25
30
35
40
45
50
55
60
65
interpolacion espacio-temporal 50 puede incluir una unidad de interpolacion V 224 y una unidad de adaptacion de primer plano 226.
La unidad de interpolacion V 224 puede seleccionar una parte de los vectores V[k] actuales de primer plano 51k para interpolar basandose en las partes restantes de los vectores V[k] actuales de primer plano 51k y los vectores anteriores V[k-1] de primer plano 55k -1. La unidad de interpolacion V 224 puede seleccionar la parte para ser una o mas de las subtramas anotadas anteriormente o solo una unica parte indefinida que puede variar segun una base de trama a trama. La unidad de interpolacion V 224 puede, en algunos casos, seleccionar una unica 128 parte de muestras de las muestras 1024 de los vectores V[k] de primer plano actuales 51k para interpolar. La unidad de interpolacion V 224 puede entonces convertir cada uno de los vectores en los vectores V[k] de primer plano actuales 51k y los vectores anteriores V[k-1] de primer plano 51 k -1 para separar mapas espaciales proyectando los vectores en una esfera (utilizando una matriz de proyeccion tal como una matriz de diseno T). La unidad de interpolacion V 224 puede entonces interpretar los vectores en V como formas en una esfera. Para interpolar las matrices V para la parte de 256 muestras, la unidad de interpolacion V 224 puede interpolar entonces estas formas espaciales y luego transformarlas de nuevo a los vectores de dominio armonico esferico a traves de la inversa de la matriz de proyeccion. Las tecnicas de esta descripcion pueden, de esta manera, proporcionar una transicion suave entre las matrices V. La unidad de interpolacion V 224 puede entonces generar los vectores restantes V[k] 53, que representan los vectores V[k] de primer plano 51k despues de haber sido modificados para eliminar la parte interpolada de los vectores V[k] de primer plano 51k. La unidad de interpolacion V 224 puede entonces pasar los vectores V[k] interpolados de primer plano 51k' a la unidad de adaptacion de nFG 226.
Cuando se selecciona una sola parte a interpolacion, la unidad de interpolacion V 224 puede generar un elemento sintactico denominado CodedSpatialInterpolationTime 254, que identifica la duracion o, en otras palabras, el tiempo de la interpolacion (por ejemplo, en terminos de un numero de muestras). Cuando se selecciona una sola parte de realizar la interpolacion de subtrama, la unidad de interpolacion V 224 tambien puede generar otro elemento de sintaxis denominado SpatialInterpolationMethod 255, que puede identificar un tipo de interpolacion realizada (o, en algunos casos, si la interpolacion fue realizada o no). La unidad de interpolacion espacio-temporal 50 puede emitir estos elementos de sintaxis 254 y 255 a la unidad de generacion del flujo de bits 42.
La unidad de adaptacion de nFG 226 puede representar una unidad configurada para generar las senales de nFG adaptadas 49'. La unidad de adaptacion de nFG 226 puede generar las senales de nFG adaptadas 49' obteniendo primero los coeficientes HOA de primer plano mediante la multiplicacion de las senales nFG 49 por los vectores V[k] 51k de primer plano. Despues de obtener los coeficientes HOA de primer plano, la unidad de adaptacion de nFG 226 puede dividir los coeficientes HOA de primer plano por los vectores V[k] interpolados en primer plano 53 para obtener las senales nFG adaptadas 49' (que se pueden denominar las senales nFG interpoladas 49' dado que estas senales se derivan de los vectores V [k] interpolados de primer plano 51k').
La Fig. 9I es un diagrama de bloques que ilustra, con mas detalle, la unidad de reduccion de coeficientes 46 del dispositivo de codificacion de audio 20 que se muestra en el ejemplo de la Fig. 4. La unidad de reduccion de coeficientes 46 puede representar una unidad configurada para realizar una reduccion de coeficiente con respecto a los vectores V[k] de primer plano restantes 53 basados en la informacion de canal de fondo 43 para emitir los vectores de primer plano reducidos V[k] 55 a la unidad de cuantizacion 52. Los vectores de primer plano reducidos V[k] 55 pueden tener D dimensiones:
[ (N+1)2 - (Nbg+1)2 - nBGa ] x nFG.
La unidad de reduccion de coeficientes 46 puede incluir una unidad de minimizacion de coeficientes 228, que puede representar una unidad configurada para reducir o minimizar de otro modo el tamano de cada uno de los vectores V[k] de primer plano restantes 53 eliminando cualquier coeficiente que se contabilice en los coeficientes HOA de fondo 47 (identificados por la informacion de canal de fondo 43). La unidad de minimizacion de coeficientes 228 puede eliminar aquellos coeficientes identificados por la informacion de canal de fondo 43 para obtener los vectores V[k] de primer plano reducidos 55.
La Fig. 9J es un diagrama de bloques que ilustra, con mas detalle, la unidad codificadora de audio psicoacustico 40 del dispositivo de codificacion de audio 20 que se muestra en el ejemplo de la Fig. 4. La unidad codificadora de audio psicoacustico 40 puede representar una unidad configurada para realizar la codificacion psicoacustica con respecto a los coeficientes HOA de fondo compensados de energfa 47' y las senales nFG interpoladas 49'. Como se muestra en el ejemplo de la Fig. 9H, la unidad codificadora de audio psicoacustico 40 puede invocar multiples instancias de un codificador de audio psicoacustico 40A-40N para codificar en audio cada uno de los canales de los coeficientes HOA de fondo compensado de energfa 47' (donde un canal en este contexto hace referencia a coeficientes para todas las muestras en la trama correspondiente a una funcion de base esferica y orden/suborden particular) y cada senal de las senales nFG interpoladas 49 '. En algunos ejemplos, la unidad codificadora de audio psicoacustico 40 instancia, o de otra manera incluye, (cuando se implementa en hardware) codificadores de audio 40A-40N de numero suficiente para codificar por separado cada canal de los coeficientes HOA de fondo compensados de energfa 47'(o nBGa mas el numero total de indices (i)) y cada senal de las senales nFG interpoladas 49' (o nFG) para un total de nBGa mas el numero total de indices (i) de canales HOA ambientales
5
10
15
20
25
30
35
40
45
50
55
60
65
adicionales mas nFG. Los codificadores de audio 40A-40N pueden emitir los coeficientes HOA de fondo codificados 59 y las senales nFG codificadas 61.
La Fig. 9K es un diagrama de bloques que ilustra, con mas detalle, la unidad de cuantizacion 52 del dispositivo de codificacion de audio 20 que se muestra en el ejemplo de la Fig. 4. En el ejemplo de la Fig. 9K, la unidad de cuantizacion 52 incluye una unidad de cuantizacion uniforme 230, una unidad de nbits 232, una unidad de prediccion 234, una unidad de modo de prediccion 236 ("Pred Mode Unit 236"), una unidad de codificacion de categorfa y residuo 238 y una unidad de seleccion de tabla Huffman 240. La unidad de cuantizacion uniforme 230 representa una unidad configurada para llevar a cabo la cuantizacion uniforme descrita anteriormente con respecto a uno de los componentes espaciales (que puede representar cualquiera de los vectores V[k] de primer plano reducidos 55). La unidad de nbits 232 representa una unidad configurada para determinar el parametro o valor de nbits.
La unidad de prediccion 234 representa una unidad configurada para realizar la prediccion con respecto al componente espacial cuantizado. La unidad de prediccion 234 puede realizar la prediccion realizando una sustraccion de elementos del actual de los vectores V[k] de primer plano reducidos 55 por un vector correspondiente temporal posterior de los V[k] vectores de primer plano reducidos 55 (que se pueden designar como vectores reducidos en primer plano V[k-1] 55). El resultado de esta prediccion puede ser referido como un componente espacial predicho.
La unidad de modo de prediccion 236 puede representar una unidad configurada para seleccionar el modo de prediccion. La unidad de seleccion de tabla Huffman 240 puede representar una unidad configurada para seleccionar una tabla Huffman apropiada para la codificacion del cid. La unidad de modo de prediccion 236 y la unidad de seleccion de tabla Huffman 240 pueden funcionar, como un ejemplo, de acuerdo con el siguiente pseudocodigo:
Para un determinado nbits, recuperar todas las tablas Huffman con nbits
B00 = 0; B01 = 0; B _ {10} = 0; B11 = 0; // inicializar para calcular los bits esperados por modo de codificacion
para m = 1: (# elementos en el vector)
// calcular el numero esperado de bits para un elemento vectorial v (m)
// sin prediccion y utilizando tabla Huffman 5 B00 = B00 + calculate_bits(v (m), HT5);
// sin prediccion y utilizando tabla Huffman {1, 2, 3}
B01 = B01 + calculate_bits(v (m), HTq); q in {1, 2, 3}
// calcular el numero esperado de bits para el residuo de prediccion e (m) e (m) = v (m) - vp (m); // vp (m): elemento vectorial de trama anterior // con prediccion y uso de tabla Huffman 4 B10 = B10 + calculate_bits(e(m), HT4);
// con prediccion y uso de Huffman Tabla 5 B11 = B11 + calculate_bits (e (m), HT5); fin
// encuentra un mejor modo de prediccion y una tabla Huffman que producen bits mfnimos // el mejor modo de prediccion y la tabla Huffman son marcados por pflag y Htflag, respectivamente.
[Be, id] = min ([B00 B01 B10 B11]);
Conmutar id
caso 1: pflag = 0; HTflag = 0; caso 2: pflag = 0; HTflag = 1; caso 3: pflag = 1; HTflag = 0; caso 4: pflag = 1; HTflag = 1; fin
La unidad de codificacion de categorfa y residuo 238 puede representar una unidad configurada para realizar la categorizacion y la codificacion residual de un componente espacial previsto o el componente espacial cuantizado (cuando la prediccion esta desactivada) de la manera descrita con mas detalle anteriormente.
Como se muestra en el ejemplo de la Fig. 9K, la unidad de cuantizacion 52 puede emitir varios parametros o valores para su inclusion en el flujo de bits 21 o informacion lateral (que puede ser un flujo de bits separado del flujo de bits 21). Asumiendo que la informacion se especifica en la informacion de canal lateral, la unidad de cuantizacion escalar/entropfa 50 puede emitir el valor de nbits como valor de nbits 233, el modo de prediccion como modo de prediccion 237 y la informacion de tabla Huffman como informacion de tabla Huffman 241 a unidad de generacion del flujo de bits 42 junto con la version comprimida del componente espacial (que se muestra como vectores de primer plano codificados V[k] 57 en el ejemplo de la Fig. 4), que en este ejemplo puede referirse al codigo de Huffman seleccionado para codificar el cid, el bit de signo y el residuo codificado por bloques. El valor de nbits se puede especificar una vez en la informacion de canal lateral para todos los vectores V[k] codificados de primer plano
5
10
15
20
25
30
35
40
45
50
55
60
65
57, mientras que el modo de prediccion y la informacion de tabla Huffman pueden especificarse para cada uno de los vectores V[^] codificados de primer plano 57. La parte del flujo de bits que especifica la version comprimida del componente espacial se muestra mas en el ejemplo de las Figs. 10B y/o 10C.
La Fig. 9L es un diagrama de bloques que ilustra, con mas detalle, la unidad de generacion del flujo de bits 42 del dispositivo de codificacion de audio 20 que se muestra en el ejemplo de la Fig. 4. La unidad de generacion del flujo de bits 42 puede incluir una unidad de generacion de informacion de canal principal 242 y una unidad de generacion de informacion de canal lateral 244. La unidad de generacion de informacion de canal principal 242 puede generar un flujo de bits principal 21 que incluye uno o mas, si no todos, los indices de reordenacion 205, el elemento de sintaxis CodedSpatialInterpolationTime 254, el elemento de sintaxis SpatialInterpolationMethod 255, los coeficientes HOA de fondo codificados 59 y las senales nFG codificadas 61. La unidad de generacion de informacion de canal lateral 244 puede representar una unidad configurada para generar un flujo de bits de canal lateral 21B que puede incluir uno o mas, si no todos, del valor de nbits 233, el modo de prediccion 237, la informacion de tabla Huffman 241 y los vectores V[^] de primer plano codificados 57. Los flujos de bits 21 y 21B pueden denominarse en conjunto como el flujo de bits 21. En algunos contextos, el flujo de bits 21 solo puede referirse al flujo de bits de canal principal 21, mientras que el flujo de bits 21B puede denominarse informacion de canal lateral 21B.
Las Figs. 10A-10O(ii) son diagramas que ilustran partes de la informacion del canal de bits o del canal lateral que puede especificar los componentes espaciales comprimidos con mas detalle. En el ejemplo de la Fig. 10A, una parte 250 incluye un campo identificador del renderizador ("renderer ID") 251 y un campo HOADecoderConfig 252. El campo iD del renderizador 251 puede representar un campo que almacena un ID del renderizador que se ha utilizado para la mezcla del contenido HOA. El campo HOADecoderConfig 252 puede representar un campo configurado para almacenar la informacion para inicializar el decodificador espacial hOa.
El campo HOADecoderConfig 252 incluye ademas un campo de informacion direccional ("direction info") 253, un campo CodedSpatialInterpolationTime 254, un campo SpatialInterpolationMethod 255, un campo CodedVVecLength 256 y un campo de informacion de ganancia 257. El campo de informacion direccional 253 puede representar un campo que almacena informacion para configurar el decodificador de sintesis direccional. El campo CodedSpatialInterpolationTime 254 puede representar un campo que almacena un tiempo de la interpolacion espacio-temporal de las senales basadas en vectores. El campo SpatialInterpolationMethod 255 puede representar un campo que almacena una indicacion del tipo de interpolacion aplicada durante la interpolacion espacio-temporal de las senales basadas en vectores. El campo CodedVVecLength 256 puede representar un campo que almacena una longitud del vector de datos transmitido utilizado para sintetizar las senales basadas en vectores. El campo de informacion de ganancia 257 representa un campo que almacena informacion indicativa de una correccion de ganancia aplicada a las senales.
En el ejemplo de la Fig. 10B, la parte 258A representa una parte del canal de informacion lateral, en donde la parte 258A incluye una cabecera de trama 259 que incluye un numero de campos de bytes 260 y un campo de bits 261. El numero de bytes del campo 260 puede representar un campo para expresar el numero de bytes incluidos en la trama para especificar los componentes espaciales v1 a vn que incluyen los ceros para el campo de alineacion de bytes 264. El campo nbits 261 representa un campo que puede especificar el valor nbits identificado para su uso en la descompresion de los componentes espaciales v1-vn.
Como se muestra adicionalmente en el ejemplo de la Fig. 10B, la parte 258A puede incluir flujos de bits secundarios para v1-vn, cada una de las cuales incluye un campo de modo de prediccion 262, un campo de informacion de tabla Huffman 263 y uno correspondiente de los componentes espaciales comprimidos v1-vn. El campo de modo de prediccion 262 puede representar un campo para almacenar una indicacion de si la prediccion se ha realizado con respecto al correspondiente de los componentes espaciales comprimidos v1-vn. El campo de informacion de tabla Huffman 263 representa un campo para indicar, al menos en parte, que tabla Huffman se va a utilizar para decodificar diversos aspectos de los correspondientes componentes espaciales comprimidos v1-vn.
A este respecto, las tecnicas pueden permitir que el dispositivo de codificacion de audio 20 obtenga un flujo de bits que comprende una version comprimida de un componente espacial de un campo sonoro, el componente espacial generado realizando una sintesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
La Fig. 10C es un diagrama que ilustra un ejemplo alternativo de una parte 258B de la informacion de canal lateral que puede especificar los componentes espaciales comprimidos con mas detalle. En el ejemplo de la Fig. 10C, la parte 258B incluye una cabecera de trama 259 que incluye un campo Nbits 261. El campo Nbits 261 representa un campo que puede especificar un valor nbits identificado para su uso en la descompresion de los componentes espaciales v1-vn.
Como se muestra adicionalmente en el ejemplo de la Fig. 10C, la parte 258B puede incluir flujos de bits secundarios para v1-vn, cada uno de las cuales incluye un campo de modo de prediccion 262, un campo de informacion de tabla Huffman 263 y uno correspondiente de los componentes espaciales comprimidos v1-vn. El campo de modo de prediccion 262 puede representar un campo para almacenar una indicacion de si la prediccion se ha realizado con
5
10
15
20
25
30
35
40
45
50
55
60
65
respecto al correspondiente de los componentes espaciales comprimidos v1-vn. El campo de informacion de tabla Huffman 263 representa un campo para indicar, al menos en parte, que tabla Huffman se va a utilizar para decodificar diversos aspectos de los correspondientes componentes espaciales comprimidos v1-vn.
El campo Nbits 261 en el ejemplo ilustrado incluye los subcampos A 265, B 266 y C 267. En este ejemplo, A 265 y B 266 son cada uno subcampos de 1 bit, mientras que C 267 es un subcampo de 2 bits. Otros ejemplos pueden incluir subcampos de tamano diferente 265, 266 y 267. El campo A 265 y el campo B 266 pueden representar campos que almacenan primer y segundo bits mas significativos del campo Nbits 261, mientras que el campo C 267 puede representar un campo que almacena los bits menos significativos del campo Nbits 261.
La parte 258B tambien puede incluir un campo AddAmbHoaInfoChannel 268. El campo AddAmbHoaInfoChannel 268 puede representar un campo que almacena informacion para los coeficientes hOa ambientales adicionales. Como se muestra en el ejemplo de la Fig. 10C, el AddAmbHoaInfoChannel 268 incluye un campo CodedAmbCoeffIdx 246, un campo AmbCoeffIdxTransition 247. El campo CodedAmbCoeffIdx 246 puede representar un campo que almacena un fndice de un coeficiente HOA ambiental adicional. El campo AmbCoeffIdxTransition 247 puede representar un campo configurado para almacenar datos indicativos de si, en esta trama, un coeficiente HOA ambiente adicional esta o bien se ha desvanecido o ha desaparecido.
La Fig. 10C (i) es un diagrama que ilustra un ejemplo alternativo de una parte 258B ' de la informacion de canal lateral que puede especificar los componentes espaciales comprimidos con mas detalle. En el ejemplo de la Fig. 10C (i), la parte 258B' incluye una cabecera de trama 259 que incluye un campo Nbits 261. El campo Nbits 261 representa un campo que puede especificar un valor nbits identificado para su uso en la descompresion de los componentes espaciales v1-vn.
Como se muestra adicionalmente en el ejemplo de la Fig. 10C (i), la parte 258B' puede incluir flujos de bits secundarios para v1-vn, cada uno de los cuales incluye un campo 263 de informacion de la tabla Huffman y uno correspondiente de los componentes direccionales comprimidos v1-vn sin incluir el campo de modo de prediccion 262. En todos los demas aspectos, la parte 258B' puede ser similar a la parte 258B.
La Fig. 10D es un diagrama que ilustra una parte 258C del flujo de bits 21 con mas detalle. La parte 258C es similar a la parte 258, excepto que la cabecera de trama 259 y la alineacion de cero bytes 264 han sido eliminadas, mientras que el campo de Nbits 261 se ha anadido antes de cada uno de los flujos de bits para v1-vn, como se muestra en el ejemplo De la Fig. 10D.
La Fig. 10D (i) es un diagrama que ilustra una parte 258C 'del flujo de bits 21 con mas detalle. La parte 258C 'es similar a la parte 258C excepto que la parte 258C' no incluye el campo de modo de prediccion 262 para cada uno de los V vectores v1-vn.
La Fig. 10E es un diagrama que ilustra una parte 258D del flujo de bits 21 con mas detalle. La parte 258D es similar a la parte 258B, excepto que se han eliminado el encabezado de trama 259 y la alineacion de cero bytes 264, mientras que el campo de Nbits 261 se ha anadido antes de cada uno de los flujos de bits para v1-vn, como se muestra en el ejemplo de la Fig. 10E.
La Fig. 10E(i) es un diagrama que ilustra una parte 258D' del flujo de bits 21 con mas detalle. La parte 258D' es similar a la parte 258D excepto que la parte 258D' no incluye el campo de modo de prediccion 262 para cada uno de los V vectores v1-vn. A este respecto, el dispositivo de codificacion de audio 20 puede generar un flujo de bits 21 que no incluye el campo de modo de prediccion 262 para cada vector V comprimido, como se demuestra con respecto a los ejemplos de las Figs. 10C (i), 10D (i) y 10E (i).
La Fig. 10F es un diagrama que ilustra, de manera diferente, la parte 250 del flujo de bits 21 ilustrada en el ejemplo de la Fig. 10A. La parte 250 que se muestra en el ejemplo de la Fig. 10D, incluye un campo HOAOrder (que no se ha mostrado en el ejemplo de la Fig. 10F para facilitar la ilustracion), un campo MinAmbHoaOrder (que de nuevo no se ha mostrado en el ejemplo de la Fig. 10 para facilitar la ilustracion), el campo de informacion direccional 253, el campo CodedSpatialInterpolationTime 254, el campo SpatialInterpolationMethod 255, el campo CodedVVecLength 256 y el campo de informacion de ganancia 257. Como se muestra en el ejemplo de la Fig. 10F, el campo CodedSpatialInterpolationTime 253 puede comprender un campo de tres bits, el campo SpatialInterpolationMethod 255 puede comprender un campo de un bit y el campo CodedVVecLength 256 puede comprender un campo de dos bits.
La Fig. 10G es un diagrama que ilustra una parte 248 del flujo de bits 21 con mas detalle. La parte 248 representa una carga util tridimensional (3D) de codificador de voz/audio unificado (USAC) que incluye un campo HOAframe 249 (que tambien se puede designar como informacion de banda lateral, informacion de canal lateral o flujo de bits de canal lateral). Como se muestra en el ejemplo de la Fig. 10E, la vista ampliada del campo HOAFrame 249 puede ser similar a la parte 258B del flujo de bits 21 que se muestra en el ejemplo de la Fig. 10C. El "ChannelSideInfoData" incluye un campo ChannelType 269, que no se ha mostrado en el ejemplo de la Fig. 10C para facilitar la ilustracion, el campo A 265 designado como "ba" en el ejemplo de la Fig. 10E, el campo B 266 designado como "bb" en el
5
10
15
20
25
30
35
40
45
50
55
60
65
ejemplo de la Fig. 10E y el campo C 267 designado como "unitC" en el ejemplo de la Fig. 10E. El campo ChannelType indica si el canal es una senal basada en la direccion, una senal basada en vectores o un coeficiente HOA ambiental adicional. Entre diferentes ChannelSideInfoData hay campos AddAmbHoaInfoChannel 268 con los diferentes flujos de bits de vectores V indicados en gris (por ejemplo, "flujo de bits para v1" y "flujo de bits para v2").
Las Figs. 10H-10O(ii) son diagramas que ilustran otras varias partes de ejemplo 248H-248O del flujo de bits 21 junto con las partes de HOAconfig correspondientes 250H-2500 con mas detalle. Las Figs. 10H (i) y 10H (ii) ilustran un primer flujo de bits de ejemplo 248H y la parte de HOAconfig correspondiente 250H que se ha generado para corresponder con el caso 0 en el pseudocodigo anterior. En el ejemplo de la Fig. 10H (i), la parte de HOAconfig 250H incluye un elemento de sintaxis CodedVVecLength 256 establecido para indicar que todos los elementos de un vector V estan codificados, por ejemplo, todos los 16 elementos vectoriales V. La parte de HOAconfig 250H tambien incluye un elemento de sintaxis SpatialInterpolationMethod 255 establecido para indicar que la funcion de interpolacion de la interpolacion espacio-temporal es un coseno elevado. La parte de HOAconfig 250H ademas incluye un conjunto CodedSpatialInterpolationTime 254 para indicar una duracion de muestra interpolada de 256. La parte de HOAconfig 250H incluye ademas un elemento de sintaxis MinAmbHoaOrder 150 establecido para indicar que el orden de MinimumHOA del contenido de HOA ambiental es uno, donde el dispositivo de decodificacion de audio 24 puede obtener un elemento de sintaxis MinNumofCoeffsForAmbHOA igual a (1 + 1) 2 o cuatro. La parte de HOAconfig 250H incluye un elemento de sintaxis HoaOrder 152 configurado para indicar que el orden de HOA del contenido es igual a tres (o, en otras palabras, N = 3), donde el dispositivo de decodificacion de audio 24 puede obtener un NumOf-HoaCoeffs a ser Igual a (N+1)2 o 16.
Como se muestra adicionalmente en el ejemplo de la Fig. 10H (i), la parte 248H incluye una trama de audio tridimensional unificada (USAC-3D) de codificacion de voz y audio (USAC-3D) en la que dos tramas HOA 249A y 249B se almacenan en una carga util de extension USAC dado que se almacenan dos tramas de audio Ddntro de una trama USAC-3D cuando la replicacion de banda espectral (SBR) esta habilitada. El dispositivo de decodificacion de audio 24 puede obtener una serie de canales de transporte flexibles como una funcion de un elemento de sintaxis numHOATransportChannels y un elemento de sintaxis MinNumOfCoeffsForAmbHOA. En los siguientes ejemplos, se supone que el elemento de sintaxis numHOATransportChannels es igual a 7 y el elemento de sintaxis MinNumOfCoeffsForAmbHOA es igual a cuatro, donde el numero de canales de transporte flexibles es igual al elemento de sintaxis numHOATransportChannels menos el elemento de sintaxis MinNumOfCoeffsForAmbHOA (o tres).
La Fig. 10H (ii) ilustra las tramas 249A y 249B con mas detalle. Como se muestra en el ejemplo de la Fig. 10H (ii), la trama 249A incluye los campos 154-154C de ChannelSideInfoData (CSID), los campos HOAGainCorrectionData (HOAGCD), los campos VVectorData 156 y 156B y los campos HOAPredictionInfo. El campo CSID 154 incluye la unitC 267, bb 266 y ba265 junto con el ChannelType 269, cada uno de los cuales se ajusta a los valores correspondientes 01, 1, 0 y 01 que se muestran en el ejemplo de la Fig. 10H(i). El campo CSID 154B incluye la unitC 267, bb 266 y ba265 junto con el ChannelType 269, cada uno de los cuales esta configurado en los valores correspondientes 01, 1, 0 y 01 que se muestran en el ejemplo de la Fig. 10H(ii). El campo CSID 154C incluye el campo ChannelType 269 que tiene un valor de 3. Cada uno de los campos CSID 154-154C corresponde al canal respectivo de los canales de transporte 1, 2 y 3. En efecto, cada campo CSID 154-154C indica si la carga util correspondiente 156 y 156B son senales basadas en la direccion (cuando el ChannelType correspondiente es igual a cero), senales basadas en vectores (cuando el ChannelType correspondiente es igual a uno), un coeficiente HOA ambiental adicional (cuando el ChannelType correspondiente es igual a dos) o vacfo (cuando el ChannelType es igual a tres).
En el ejemplo de la Fig. 10H(ii), la trama 249A incluye dos senales basadas en vectores (dado el ChannelType 269 igual a 1 en los campos CSID 154 y 154B) y un vacfo (dado el ChannelType 269 igual a 3 en los campos CSID 154C). Dada la parte de HOAconfig anterior 250H, el dispositivo de decodificacion de audio 24 puede determinar que todos los 16 elementos vectoriales V estan codificados. Por tanto, los VVectorData 156 y 156B incluyen cada uno de los 16 elementos vectoriales, cada uno de ellos uniformemente cuantizado con 8 bits. Como se indica en la nota 1, el numero y los indices de los elementos VVectorData codificados se especifican mediante el parametro CodedVVecLength = 0. Ademas, como se senala con el asterisco unico (*), el esquema de codificacion se senala con NbitsQ = 5 en el campo CSID para el canal de transporte correspondiente.
En la trama 249B, el campo CSID 154 y 154B son los mismos que en la trama 249, mientras que el campo CSID 154C de la trama 249B ha conmutado a un ChannelType de uno. El campo CSID 154C de la trama 249B incluye por lo tanto el Cbflag 267, el Pflag 267 (que indica la codificacion de Huffman) y el Nbits 261 (igual a doce). Como resultado, la trama 249B incluye un tercer campo VVectorData 156C que incluye 16 elementos vectoriales de V, cada uno de ellos cuantizado uniformemente con 12 bits y codificado por Huffman. Como se ha indicado anteriormente, el numero y los indices de los elementos VVectorData codificados se especifican mediante el parametro CodedVVecLength = 0, mientras que el esquema de codificacion de Huffman esta senalizado por el NbitsQ = 12, CbFlag = 0 y Pflag = 0 en el campo CSID 154C para este particular canal de transporte (por ejemplo, canal de transporte n° 3).
El ejemplo de las Figs. 10I (i) y 10I (ii) ilustran un segundo flujo de bits de ejemplo 248I y la parte de HOAconfig
5
10
15
20
25
30
35
40
45
50
55
60
65
correspondiente 250I que ha sido generada para corresponder con el caso 0 en el pseudocodigo anterior. En el ejemplo de la Fig. 10I (i), la parte de configuracion HOA 250I incluye un elemento de sintaxis CodedVVecLength 256 configurado para indicar que todos los elementos de un vector V estan codificados, por ejemplo, todos los 16 elementos vectoriales de V. La parte de HOAconfig 250I tambien incluye un elemento de sintaxis SpatialInterpolationMethod 255 establecido para indicar que la funcion de interpolacion de la interpolacion espacio- temporal es un coseno elevado. La parte de HOAconfig 250I ademas incluye un CodedSpatialInterpolationTime 254 configurado para indicar una duracion de la muestra interpolada de 256.
La parte de HOAconfig 250I incluye ademas un elemento sintaxis MinAmbHoaOrder 150 configurado para indicar que el orden MinimumHOA del contenido de HOA ambiental es uno, donde el dispositivo de decodificacion de audio 24 puede obtener un elemento sintactico MinNumof-CoeffsForAmbHOA para que sea igual a (1 + 1) 2 o cuatro. El dispositivo de decodificacion de audio 24 puede obtener tambien un elemento de sintaxis MaxNoofAddActiveAmbCoeffs configurado como una diferencia entre el elemento de sintaxis NumOfHoaCoeff y el MinNumOfCoeffsForAmbHOA, que se supone en este ejemplo igual a 16-4 o 12. El dispositivo de decodificacion de audio 24 tambien puede obtener un elemento de sintaxis AmbAsignmbits configurado como ceil(log2(MaxNoOfAddActiveAmbCoeffs)) = ceil(log2(12)) = 4. La parte de HOAconfig 250H incluye un elemento de sintaxis HoaOrder 152 configurado para indicar que el orden HOA del contenido es igual a tres (o, en otras palabras, N = 3), donde el dispositivo de decodificacion de audio 24 puede obtener un NumOfHoaCoeffs igual a (N+1)2 o 16.
Como se muestra adicionalmente en el ejemplo de la Fig. 10I (i), la parte 248H incluye una trama de audio USAC-3D en la que dos tramas HOA 249C y 249D estan almacenadas en una carga util de extension USAC dado que dos tramas de audio se almacenan dentro de una trama USAC-3D cuando la replicacion de banda espectral (SBR) esta habilitada. El dispositivo de decodificacion de audio 24 puede obtener una serie de canales de transporte flexibles en funcion de un elemento de sintaxis numHOATransportChannels y de un elemento de sintaxis de MinNumOfCoeffsForAmbHOA. En los siguientes ejemplos, se supone que el elemento de sintaxis numHOATransportChannels es igual a 7 y el elemento de sintaxis MinNumOfCoeffsForAmbHOA es igual a cuatro, donde el numero de canales de transporte flexibles es igual al elemento de sintaxis numHOATransportChannels menos el elemento de sintaxis MinNumOfCoeffsForAmbHOA (o tres).
La Fig. 10I (ii) ilustra las tramas 249C y 249D con mas detalle. Como se muestra en el ejemplo de la Fig. 10I (ii), la trama 249C incluye los campos de CSID 154-154C y campos de VVectorData 156. El campo CSID 154 incluye el CodedAmb-CoeffIdx 246, el AmbCoeffIdxTransition 247 (donde el doble asterisco (**) indica que, para el canal de transporte flexible n° 1, aquf se supone que el estado interno del decodificador es AmbCoeffIdxTransitionState = 2, lo que da lugar a que el campo de bits CodedAmbCoeffIdx se indica o se especifica de otro modo en el flujo de bits), y el ChannelType 269 (que es igual a dos, indicando que la carga util correspondiente es un coeficiente HOA ambiental adicional). El dispositivo de decodificacion de audio 24 puede obtener el AmbCoeffIdx como igual al CodedAmbCoeffIdx + 1 + MinNumOfCoeffsForAmbHOA o 5 en este ejemplo. El campo CSID 154B incluye unitC 267, bb 266 y ba 265, junto con ChannelType 269, cada uno de los cuales esta configurado en los valores correspondientes 01, 1, 0 y 01 que se muestran en el ejemplo de la Fig. 10I (ii). El campo CSID 154C incluye el campo ChannelType 269 que tiene un valor de 3.
En el ejemplo de la Fig. 10I (ii), la trama 249C incluye una unica senal basada en vectores (dado que el ChannelType 269 es igual a 1 en los campos CSID 154B) y un vacfo (dado el ChannelType 269 igual a 3 en los campos CSID 154C). Dada la parte de HOAconfig anterior 250I, el dispositivo de decodificacion de audio 24 puede determinar que todos los 16 elementos vectoriales V estan codificados. Por lo tanto, el VVectorData 156 incluye todos los 16 elementos vectoriales, cada uno de ellos uniformemente cuantizado con 8 bits. Como se indica en la nota 1, el numero y los indices de los elementos VVectorData codificados se especifican mediante el parametro CodedVVecLength = 0. Ademas, como se indica en la nota a pie de pagina 2, el esquema de codificacion se indica mediante NbitsQ = 5 en el campo CSID para el canal de transporte correspondiente.
En la trama 249D, el campo CSID 154 incluye un AmbCoeffIdxTransition 247 que indica que no ha ocurrido ninguna transicion y, por lo tanto, el CodedAmbCoeffIdx 246 puede estar implicito desde la trama anterior y no necesita ser senalado o de otra manera especificado de nuevo. El campo CSID 154B y 154C de la trama 249D es el mismo que el de la trama 249C y por lo tanto, al igual que la trama 249C, la trama 249D incluye un unico campo VVectorData 156, que incluye todos los 16 elementos vectoriales, cada uno de ellos cuantizado uniformemente con 8 bits.
Las Figs. 10J(i) y 10J(ii) ilustran un primer flujo de bits de ejemplo 248J y la parte de HOA config correspondiente 250J que han sido generados para corresponder con el caso 1 en el pseudocodigo anterior. En el ejemplo de la Fig. La parte de HOAconfig 250J incluye un elemento de sintaxis CodedVVecLength 256 establecido para indicar que todos los elementos de un vector V estan codificados, excepto los elementos de sintaxis del elemento 1 hasta MinNumOfCoeffsForAmbHOA y aquellos elementos especificados en un elemento de sintaxis ContAddAmbHoaChan (se supone que es cero en este ejemplo). La parte de HOAconfig 250J tambien incluye un elemento de sintaxis SpatialInterpolationMethod 255 establecido para indicar que la funcion de interpolacion de la interpolacion espacio-temporal es un coseno elevado. La parte de HOAconfig 250J incluye ademas un CodedSpatialInterpolationTime 254 establecido para indicar una duracion de muestra interpolada de 256. La parte de HOAconfig 250j incluye ademas un elemento de sintaxis MinAmbHoaOrder 150 configurado para indicar que el
5
10
15
20
25
30
35
40
45
50
55
60
65
orden de MinimumHOA del contenido de HOA ambiental es uno, donde el dispositivo de decodificacion de audio 24 puede obtener un elemento de sintaxis MinNumofCoeffsForAmbHOA igual a (1 + 1)2 o cuatro. La parte de HOAconfig 250J incluye un elemento de sintaxis HoaOrder 152 configurado para indicar que el orden de hOa del contenido es igual a tres (o, en otras palabras, N =3), donde el dispositivo de decodificacion de audio 24 puede obtener un NumOfHoaCoeffs igual a (N+1)2 o 16.
Como se muestra adicionalmente en el ejemplo de la Fig. 10J(i), la parte 248J incluye una trama de audio USAC-3D en la que dos tramas HOA 249E y 249F se almacenan en una carga util de extension USAC dado que dos tramas de audio se almacenan dentro de una trama USAC-3D cuando la replicacion de banda espectral (SBR) esta habilitada. El dispositivo de decodificacion de audio 24 puede obtener una serie de canales de transporte flexibles en funcion de un elemento de sintaxis numHOATransportChannels y de un elemento de sintaxis de MinNumOfCoeffs- ForAmbHOA. En los siguientes ejemplos, se supone que el elemento de sintaxis numHOATransportChannels es igual a 7 y el elemento de sintaxis MinNumOfCoeffsForAmbHOA es igual a cuatro, donde el numero de canales de transporte flexibles es igual al elemento de sintaxis numHOATransportChannels menos el elemento de sintaxis MinNumOfCoeffsForAmbHOA (o tres).
La Fig. 10J(ii) ilustra las tramas 249E y 249F con mas detalle. Como se muestra en el ejemplo de la Fig. 10J(ii), la trama 249E incluye los campos CSID 154-154C y los campos VVectorData 156 y 156B. El campo CSID 154 incluye la unitC 267, bb 266 y ba265 junto con el ChannelType 269, cada uno de los cuales se ajusta a los valores correspondientes 01, 1, 0 y 01 que se muestran en el ejemplo de la Fig. 10J(i). El campo CSID 154B incluye la unitC 267, bb 266 y ba265 junto con el ChannelType 269, cada uno de los cuales esta configurado en los valores correspondientes 01, 1, 0 y 01 que se muestran en el ejemplo de la Fig. 10J(ii). El campo CSID 154C incluye el campo ChannelType 269 que tiene un valor de 3. Cada uno de los campos CSID 154-154C corresponde al canal respectivo de los canales de transporte 1, 2 y 3.
En el ejemplo de la Fig. 10J(ii) la trama 249E incluye dos senales basadas en vectores (dado que el ChannelType 269 es igual a 1 en los campos CSID 154 y 154B) y un vacfo (dado el ChannelType 269 igual a 3 en los campos CSID 154C). Dada la parte de HOAconfig anterior 250H, el dispositivo de decodificacion de audio 24 puede determinar que todos los 12 elementos vectoriales V estan codificados (donde 12 se obtiene como HOAOrder + 1)2 - (MinNumOfCoeffsForAmbHOA) - (ContAddAmb - HoaChan) = 16 - 4 - 0 = 12). Por tanto, los VVectorData 156 y 156B incluyen cada uno de los 12 elementos vectoriales, cada uno de ellos uniformemente cuantizado con 8 bits. Como se indica en la nota 1, el numero y los indices de los elementos VVectorData codificados se especifican mediante el parametro CodedVVecLength = 0. Ademas, como se senala con el asterisco unico (*), el esquema de codificacion se senala con NbitsQ = 5 en el campo CSID para el canal de transporte correspondiente.
En la trama 249F, el campo CSID 154 y 154B son los mismos que en la trama 249E, mientras que el campo CSID 154C de la trama 249F ha conmutado a un ChannelType de uno. El campo CSID 154C de la trama 249B incluye por lo tanto el Cbflag 267, el Pflag 267 (que indica la codificacion de Huffman) y el Nbits 261 (igual a doce). Como resultado, la trama 249F incluye un tercer campo de VVectorData 156C que incluye 12 elementos vectoriales de V, cada uno de ellos cuantizado uniformemente con 12 bits y codificado por Huffman. Como se ha indicado anteriormente, el numero y los indices de los elementos VVectorData codificados se especifican mediante el parametro CodedVVecLength = 0, mientras que el esquema de codificacion de Huffman esta senalizado por el NbitsQ = 12, CbFlag = 0 y Pflag = 0 en el campo CSID 154C para este particular canal de transporte (por ejemplo, canal de transporte n° 3).
El ejemplo de las Figs. 10K(i) y 10K(ii) ilustran un segundo flujo de bits de ejemplo 248K y la parte de HOAconfig correspondiente 250K que se han generado para corresponder con el caso 1 en el pseudocodigo anterior. En el ejemplo de la Fig. 10K(i), la parte de HOAconfig 250K incluye un elemento de sintaxis CodedVVecLength 256 configurado para indicar que todos los elementos de un vector V estan codificados, excepto los elementos de sintaxis del elemento 1 al MinNumOfCoeffsForAmbHOA y aquellos elementos especificados en un elemento de sintaxis ContAddAmbHoaChan (se supone que es uno en este ejemplo). La parte de HOAconfig 250K tambien incluye un elemento de sintaxis SpatialInterpolationMethod 255 establecido para indicar que la funcion de interpolacion de la interpolacion espacio-temporal es un coseno elevado. La parte de HOAconfig 250K ademas incluye un CodedSpatial-InterpolationTime 254 configurado para indicar una duracion de muestra interpolada de 256.
La parte de HOAconfig 250Kincluye ademas un elemento de sintaxis MinAmbHoaOrder 150 establecido para indicar que el orden de MinimumHOA del contenido de HOA ambiental es uno, donde el dispositivo de decodificacion de audio 24 puede obtener un elemento de sintaxis MinNumof-CoeffsForAmbHOA igual a (1 + 1)2 o cuatro. El dispositivo de decodificacion de audio 24 puede obtener tambien un elemento de sintaxis MaxNoofAddActiveAmbCoeffs configurado como una diferencia entre el elemento de sintaxis NumOfHoaCoeff y el MinNumOfCoeffsForAmbHOA, que se supone en este ejemplo igual a 16-4 o 12. El dispositivo de decodificacion de audio 24 tambien puede obtener un elemento de sintaxis AmbAsignmbits configurado como ceil(log2(MaxNoOfAddActiveAmbCoeffs)) = ceil(log2( 12)) = 4. La parte de HOAconfig 250K incluye un elemento de sintaxis HoaOrder 152 configurado para indicar que el orden HOA del contenido es igual a tres (o, en otras palabras, N = 3), donde el dispositivo de decodificacion de audio 24 puede obtener un NumOfHoaCoeffs que es igual a (N+1)2 o 16.
5
10
15
20
25
30
35
40
45
50
55
60
65
Como se muestra adicionalmente en el ejemplo de la Fig. 10K(i), la parte 248K incluye una trama de audio USAC-3D en la que dos tramas HOA 249G y 249H se almacenan en una carga util de extension USAC dado que dos tramas de audio se almacenan dentro de una trama USAC-3D cuando la replicacion de banda espectral (SBR) esta habilitada. El dispositivo de decodificacion de audio 24 puede obtener una serie de canales de transporte flexibles en funcion de un elemento de sintaxis numHOATransportChannels y de un elemento de sintaxis MinNumOf- CoeffsForAmbHOA. En los siguientes ejemplos, se supone que el elemento de sintaxis numHOATransportChannels es igual a 7 y el elemento de sintaxis MinNumOfCoeffsForAmbHOA es igual a cuatro, donde el numero de canales de transporte flexibles es igual al elemento de sintaxis numHOATransportChannels menos el elemento de sintaxis MinNumOfCoeffsForAmbHOA (o tres).
La Fig. 10K(ii) ilustra las tramas 249G y 249H con mas detalle. Como se muestra en el ejemplo de la Fig. 10K(ii), la trama 249G incluye los campos CSID 154-154C y los campos VVectorData 156. El campo CSID 154 incluye el CodedAmb-Coeffldx 246, la AmbCoeffIdxTransition 247 (donde el doble asterisco (**) indica que, para el canal de transporte flexible n° 1, aquf se supone que el estado interno del decodificador es AmbCoeffIdxTransitionState = 2, lo que da lugar a que el campo de bits CodedAmbCoeffldx se indica o se especifica de otro modo en el flujo de bits) y el ChannelType 269 (que es igual a dos, indicando que la carga util correspondiente es un coeficiente HOA ambiental adicional). El dispositivo de decodificacion de audio 24 puede obtener el AmbCoeffldx igual que el CodedAmbCoeffIdx+1 + MinNumOfCoeffsForAmbHOA o 5 en este ejemplo. El campo CSID 154B incluye unitC 267, bb 266 y ba 265, junto con ChannelType 269, cada uno de los cuales esta configurado en los valores correspondientes 01, 1, 0 y 01 que se muestran en el ejemplo de la Fig. 10K(ii). El campo CSID 154C incluye el campo ChannelType 269 que tiene un valor de 3.
En el ejemplo de la Fig. 10K(ii), la trama 249G incluye una unica senal basada en vectores (dado el ChannelType 269 igual a 1 en los campos CSID 154B) y un vacfo (dado el ChannelType 269 igual a 3 en los campos CSID 154C). Dada la parte de HOAconfig anterior 250k, el dispositivo de decodificacion de audio 24 puede determinar que se codifiquen 11 elementos vectoriales V (donde 12 se deriva como HOAOder + 1)2 - (MinNumOfCoeffsForAmbHOA) - (ContAddAmbHoaChan) = 16-4-1 = 11). Por lo tanto, el VVectorData 156 incluye todos los 11 elementos vectoriales, cada uno de ellos uniformemente cuantizado con 8 bits. Como se indica en la nota 1, el numero y los indices de los elementos VVectorData codificados se especifican mediante el parametro CodedVVecLength = 0. Ademas, como se indica en la nota a pie de pagina 2, el esquema de codificacion se indica mediante NbitsQ = 5 en el campo CSID para el canal de transporte correspondiente.
En la trama 249H, el campo CSID 154 incluye una AmbCoeffIdxTransition 247 que indica que no ha ocurrido ninguna transicion y por lo tanto el CodedAmbCoeffldx 246 puede estar implicito en la trama anterior y no necesita ser senalado o especificado otra vez de nuevo. El campo CSID 154B y 154c de la trama 249H es el mismo que el de la trama 249G y por lo tanto, al igual que la trama 249G, la trama 249H incluye un unico campo VVectorData 156, el cual incluye 11 elementos vectoriales, cada uno de ellos cuantizado uniformemente con 8 bits
Las Figs. 10L(i) y 10L(ii) ilustran un primer flujo de bits de ejemplo 248L y la parte de HOAconfig correspondiente 250L que han sido generados para corresponder con el caso 2 en el pseudocodigo anterior. En el ejemplo de la Fig. 10L(i), la parte de HOAconfig 250A incluye un elemento de sintaxis CodedVVecLength 256 establecido para indicar que todos los elementos de un vector V estan codificados, excepto los elementos del orden cero hasta el orden especificado por el elemento de sintaxis MinAmbHoaOrder 150 (que es igual A (HoaOrder + 1)2 - (MinAmbHoaOrder + 1)2 = 16 - 4 = 12 en este ejemplo). La parte de HOAconfig 250L tambien incluye un elemento de sintaxis SpatialInterpolationMethod 255 establecido para indicar que la funcion de interpolacion de la interpolacion espacio- temporal es un coseno elevado. La parte de HOAconfig 250L ademas incluye un CodedSpatialInterpolation-Time 254 para indicar una duracion de muestra interpolada de 256. La parte de HOAconfig 250L incluye ademas un elemento de sintaxis MinAmbHoaOrder 150 configurado para indicar que el orden de MinimumHOA del contenido de HOA ambiental es uno, donde el dispositivo de decodificacion de audio 24 puede obtener un elemento de sintaxis MinNumofCoeffsForAmbHOA igual a (1+1)2 o cuatro. La parte de HOAconfig 250A incluye un elemento 152 de sintaxis HoaOrder establecido para indicar que el orden HOA del contenido es igual a tres (o, en otras palabras, N = 3), donde el dispositivo de decodificacion de audio 24 puede obtener un NumOfHoaCoeffs igual a (N+1)2 o 16.
Como se muestra adicionalmente en el ejemplo de la Fig. 10L(i), la parte 248L incluye una trama de audio USAC -3D en la cual dos tramas HOA 249I y 249J se almacenan en una carga util de extension USAC dado que dos tramas de audio se almacenan dentro de una trama USAC-3D cuando la replicacion de banda espectral (SBR) esta habilitada. El dispositivo de decodificacion de audio 24 puede obtener una serie de canales de transporte flexibles en funcion de un elemento de sintaxis numHOATransportChannels y de un elemento de sintaxis MinNumOf-CoeffsForAmbHOA. En los siguientes ejemplos, se supone que el elemento de sintaxis numHOATransportChannels es igual a 7 y el elemento de sintaxis MinNumOfCoeffsForAmbHOA es igual a cuatro, donde el numero de canales de transporte flexibles es igual al elemento de sintaxis numHOATransportChannels menos el elemento de sintaxis MinNumOfCoeffsForAmbHOA (o tres).
La Fig. 10L(ii) ilustra las tramas 249I y 249J con mas detalle. Como se muestra en el ejemplo de la Fig. 10L(ii), la trama 249I incluye los campos CSID 154-154C y los campos VVectorData 156 y 156B. El campo CSID 154 incluye la unitC 267, bb 266 y ba265 junto con el ChannelType 269, cada uno de los cuales se ajusta a los valores
5
10
15
20
25
30
35
40
45
50
55
60
65
correspondientes 01, 1, 0 y 01 que se muestran en el ejemplo de la Fig. 10J(i). El campo CSID 154B incluye la unite 267, bb 266 y ba265 junto con el ChannelType 269, cada uno de los cuales esta configurado en los valores correspondientes 01, 1, 0 y 01 que se muestran en el ejemplo de la Fig. 10L(ii). El campo CSID 154C incluye el campo ChannelType 269 que tiene un valor de 3. Cada uno de los campos CSID 154-154C corresponde al canal respectivo de los canales de transporte 1, 2 y 3.
En el ejemplo de la Fig. 10L(ii), la trama 249I incluye dos senales basadas en vectores (dado el ChannelType 269 igual a 1 en los campos CSID 154 y 154B) y un vacfo (dado el ChannelType 269 igual a 3 en los campos CSID 154C). Dada la parte de HOAconfig 250H, el dispositivo de decodificacion de audio 24 puede determinar que se codifiquen 12 elementos vectoriales de V. Por tanto, los VVectorData 156 y 156B incluyen cada uno 12 elementos vectoriales, cada uno de ellos uniformemente cuantizado con 8 bits. Como se indica en la nota 1, el numero y los indices de los elementos VVectorData codificados se especifican mediante el parametro CodedVVecLength = 0. Ademas, como se senala con el asterisco unico (*), el esquema de codificacion se senala con NbitsQ = 5 en el campo CSID para el canal de transporte correspondiente.
En la trama 249J, el campo CSID 154 y 154B son los mismos que en la trama 249I, mientras que el campo CSID 154C de la trama 249F ha conmutado a un ChannelType de uno. El campo CSID 154C de la trama 249B incluye por lo tanto el Cbflag 267, el Pflag 267 (que indica la codificacion de Huffman) y el Nbits 261 (igual a doce). Como resultado, la trama 249F incluye un tercer campo de VVectorData 156C que incluye 12 elementos vectoriales de V, cada uno de ellos cuantizado uniformemente con 12 bits y codificado por Huffman. Como se ha indicado anteriormente, el numero y los indices de los elementos VVectorData codificados se especifican mediante el parametro CodedVVecLength = 0, mientras que el esquema de codificacion de Huffman esta senalizado por el NbitsQ = 12, CbFlag = 0 y Pflag = 0 en el campo CSID 154C para este particular canal de transporte (por ejemplo, canal de transporte n° 3).
El ejemplo de las Figs. 10M(i) y 10M(ii) ilustran un segundo ejemplo de flujo de bits 248M y la parte de HOAconfig correspondiente 250M que ha sido generada para corresponder con el caso 2 en el pseudocodigo anterior. En el ejemplo de la Fig. 10M(i), la parte de HOAconfig 250M incluye un elemento de sintaxis CodedVVecLength 256 establecido para indicar que todos los elementos de un vector V estan codificados, excepto los elementos del orden cero hasta el orden especificado por el elemento de sintaxis MinAmb-HoaOrder 150 (que es igual a (HoaOrder+1)2 - (MinAmbHoaOrder + 1)2 = 16 - 4 = 12 en este ejemplo). La parte de HOAconfig 250M tambien incluye un elemento de sintaxis SpatialInterpolationMethod 255 establecido para indicar que la funcion de interpolacion de la interpolacion espacio-temporal es un coseno elevado. La parte de HOAconfig 250M ademas incluye un CodedSpatialInterpolationTime 254 para indicar una duracion de muestra interpolada de 256.
La parte de HOAconfig 250M incluye ademas un elemento de sintaxis MinAmbHoaOrder 150 configurado para indicar que el orden de MinimumHOA del contenido de HOA ambiental es uno, donde el dispositivo de decodificacion de audio 24 puede obtener un elemento de sintaxis MinNumof-CoeffsForAmbHOA igual a (1 + 1)2 o cuatro. El dispositivo de decodificacion de audio 24 puede obtener tambien un elemento de sintaxis MaxNoofAddActiveAmbCoeffs configurado como una diferencia entre el elemento de sintaxis NumOfHoaCoeff y el MinNumOfCoeffsForAmbHOA, que se supone en este ejemplo igual a 16-4 o 12. El dispositivo de decodificacion de audio 24 tambien puede obtener un elemento de sintaxis AmbAsignmbits configurado como ceil(log2(MaxNoOfAddActiveAmbCoeffs)) = ceil(log2(12)) = 4. La parte de HOAconfig 250M incluye un elemento de sintaxis HoaOrder 152 configurado para indicar que el orden HOA del contenido sea igual a tres (o, en otras palabras, N = 3), donde el dispositivo de decodificacion de audio 24 puede obtener un NumOfHoaCoeffs igual a (N+1)2 o 16.
Como se muestra adicionalmente en el ejemplo de la Fig. 10M(i), la parte 248M incluye una trama de audio USAC- 3D en la que dos tramas HOA 249K y 249L se almacenan en una carga util de extension USAC dado que dos tramas de audio se almacenan dentro de una trama USAC-3D cuando la replicacion de banda espectral (SBR) esta habilitada. El dispositivo de decodificacion de audio 24 puede obtener una serie de canales de transporte flexibles en funcion de un elemento de sintaxis numHOATransportChannels y de un elemento de sintaxis MinNumOfCoeffsForAmbHOA. En los siguientes ejemplos, se supone que el elemento de sintaxis numHOATransportChannels es igual a 7 y el elemento de sintaxis MinNumOfCoeffsForAmbHOA es igual a cuatro, donde el numero de canales de transporte flexibles es igual al elemento de sintaxis numHOATransportChannels menos el elemento de sintaxis MinNumOfCoeffsForAmbHOA (o tres).
La Fig. 10M(ii) ilustran las tramas 249K y 249L con mas detalle. Como se muestra en el ejemplo de la Fig. 10M(ii), la trama 249K incluye los campos CSID 154-154C y un campo VVectorData 156. El campo CSID 154 incluye el CodedAmb-CoeffIdx 246, el AmbCoeffIdxTransition 247 (donde el doble asterisco (**) indica que, para el canal de transporte flexible n° 1, aquf se supone que el estado interno del decodificador es AmbCoeffIdxTransitionState = 2, lo que da lugar a que el campo de bits CodedAmbCoeffIdx se indica o se especifica de otro modo en el flujo de bits), y el ChannelType 269 (que es igual a dos, indicando que la carga util correspondiente es un coeficiente HOA ambiental adicional). El dispositivo de decodificacion de audio 24 puede obtener el AmbCoeffldx igual que el CodedAmbCoeffIdx+1 + MinNumOfCoeffsForAmbHOA o 5 en este ejemplo. El campo CSID 154B incluye unitC 267, bb 266 y ba 265, junto con ChannelType 269, cada uno de los cuales esta configurado en los valores
5
10
15
20
25
30
35
40
45
50
55
60
65
correspondientes 01, 1, 0 y 01 que se muestran en el ejemplo de la Fig. 10M(ii). El campo CSID 154C incluye el campo ChannelType 269 que tiene un valor de 3.
En el ejemplo de la Fig. 10M(ii), la trama 249K incluye una unica senal basada en vectores (dado que el ChannelType 269 es igual a 1 en los campos CSID 154B) y un vacfo (dado el ChannelType 269 igual a 3 en los campos CSID 154C). Dada la parte de HOAconfig anterior 250M, el dispositivo de decodificacion de audio 24 puede determinar que se codifiquen 12 elementos vectoriales de V. Por lo tanto, el VVectorData 156 incluye 12 elementos vectoriales, cada uno de ellos uniformemente cuantizado con 8 bits. Como se indica en la nota 1, el numero y los indices de los elementos VVectorData codificados se especifican mediante el parametro CodedVVecLength = 0. Ademas, como se indica en la nota a pie de pagina 2, el esquema de codificacion se indica mediante NbitsQ = 5 en el campo CSID para el canal de transporte correspondiente.
En la trama 249L, el campo CSID 154 incluye una AmbCoeffIdxTransition 247 que indica que no ha ocurrido ninguna transicion y por lo tanto el CodedAmbCoeffIdx 246 puede estar implfcito desde la trama anterior y no necesita ser senalado o especificado otra vez de nuevo. El campo CSID 154B y 154C de la trama 249L es el mismo que el de la trama 249K y, por lo tanto, al igual que la trama 249K, la trama 249L incluye un unico campo VVectorData 156, que incluye 12 elementos vectoriales, cada uno de ellos cuantizado uniformemente con 8 bits
Las Figs. 10N(i) y 10N(ii) ilustran un primer ejemplo de flujo de bits 248N y la parte de HOAconfig correspondiente 250N que se han generado para corresponder con el caso 3 en el pseudocodigo anterior. En el ejemplo de la Fig. 10N(i), la parte de HOAconfig 250N incluye un elemento de sintaxis CodedVVecLength 256 establecido para indicar que todos los elementos de un vector V estan codificados, excepto aquellos elementos especificados en un elemento de sintaxis ContAddAmbHoaChan (que se supone que es cero en este ejemplo). La parte de HOAconfig 250N tambien incluye un elemento de sintaxis SpatialInterpolationMethod 255 establecido para indicar que la funcion de interpolacion de la interpolacion espacio-temporal es un coseno elevado. La parte de HOAconfig 250N ademas incluye un CodedSpatialInterpolationTime 254 para indicar una duracion de muestra interpolada de 256. La parte de HOAconfig 250N incluye ademas un elemento de sintaxis MinAmbHoaOrder 150 establecido para indicar que el orden de MinimumHOA del contenido de HOA ambiental es uno, donde el dispositivo de decodificacion de audio 24 puede obtener un elemento de sintaxis MinNumofCoeffsForAmbHOA igual a (1 + 1)2 o cuatro. La parte de HOAconfig 250N incluye un elemento de sintaxis HOAOrder 152 configurado para indicar que el orden HOA del contenido es igual a tres (o, en otras palabras, N = 3), donde el dispositivo de decodificacion de audio 24 puede obtener un NumOfHoaCoeffs igual a (N+ 1)2 o 16.
Como se muestra adicionalmente en el ejemplo de la Fig. 10N(i), la parte 248N incluye una trama de audio USAC- 3D en la que dos tramas HOA 249M y 249N estan almacenadas en una carga util de extension USAC dado que dos tramas de audio se almacenan dentro de una trama USAC-3D cuando la replicacion de banda espectral (SBR) esta habilitada. El dispositivo de decodificacion de audio 24 puede obtener una serie de canales de transporte flexibles en funcion de un elemento de sintaxis numHOATransportChannels y de un elemento de sintaxis MinNumOf- CoeffsForAmbHOA. En los siguientes ejemplos, se supone que el elemento de sintaxis numHOATransportChannels es igual a 7 y el elemento de sintaxis MinNumOfCoeffsForAmbHOA es igual a cuatro, donde el numero de canales de transporte flexibles es igual al elemento de sintaxis numHOATransportChannels menos el elemento de sintaxis MinNumOfCoeffsForAmbHOA (o tres).
La Fig. 10N(ii) ilustra las tramas 249M y 249N con mas detalle. Como se muestra en el ejemplo de la Fig. 10N(ii), la trama 249M incluye los campos CSID 154-154C y los campos VVectorData 156 y 156B. El campo CSID 154 incluye la unitC 267, bb 266 y ba265 junto con el ChannelType 269, cada uno de los cuales se ajusta a los valores correspondientes 01, 1, 0 y 01 que se muestran en el ejemplo de la Fig. 10J(i). El campo CSID 154B incluye la unitC 267, bb 266 y ba265 junto con el ChannelType 269, cada uno de los cuales esta configurado en los valores correspondientes 01, 1, 0 y 01 que se muestran en el ejemplo de la Fig. 10N(ii). El campo CSID 154C incluye el campo ChannelType 269 que tiene un valor de 3. Cada uno de los campos CSID 154-154C corresponde al canal respectivo de los canales de transporte 1, 2 y 3.
En el ejemplo de la Fig. 10N(ii), la trama 249M incluye dos senales basadas en vectores (dado el ChannelType 269 igual a 1 en los campos CSID 154 y 154B) y un vacfo (dado el ChannelType 269 igual a 3 en los campos CSID 154C). Dada la parte de HOAconfig anterior 250M, el dispositivo de decodificacion de audio 24 puede determinar que se codifiquen 16 elementos vectoriales de V. Por tanto, los VVectorData 156 y 156B incluyen cada uno 16 elementos vectoriales, cada uno de ellos uniformemente cuantizado con 8 bits. Como se indica en la nota 1, el numero y los indices de los elementos VVectorData codificados se especifican mediante el parametro CodedVVecLength = 0. Ademas, como se senala con el asterisco unico (*), el esquema de codificacion se senala con NbitsQ = 5 en el campo CSID para el canal de transporte correspondiente.
En la trama 249N, el campo CSID 154 y 154B son los mismos que en la trama 249M, mientras que el campo CSID 154C de la trama 249F ha conmutado a un ChannelType de uno. El campo CSID 154C de la trama 249B incluye por lo tanto el Cbflag 267, el Pflag 267 (que indica la codificacion de Huffman) y el Nbits 261 (igual a doce). Como resultado, la trama 249F incluye un tercer campo de VVectorData 156C que incluye 16 elementos vectoriales de V, cada uno de ellos cuantizado uniformemente con 12 bits y codificado por Huffman. Como se ha indicado
5
10
15
20
25
30
35
40
45
50
55
60
65
anteriormente, el numero y los indices de los elementos VVectorData codificados se especifican mediante el parametro CodedVVecLength = 0, mientras que el esquema de codificacion de Huffman esta senalizado por el NbitsQ = 12, CbFlag = 0 y Pflag = 0 en el campo CSID 154C para este particular canal de transporte (por ejemplo, canal de transporte n° 3).
El ejemplo de las Figs. 10O(i) y 10O(ii) ilustran un segundo ejemplo de flujo de bits 2480 y la parte de HOAconfig correspondiente 2500 que han sido generados para corresponder con el caso 3 en el pseudocodigo anterior. En el ejemplo de la Fig. 10O(i), la parte de HOAconfig 2500 incluye un elemento de sintaxis CodedVVecLength 256 establecido para indicar que todos los elementos de un vector V estan codificados, excepto aquellos elementos especificados en un elemento de sintaxis ContAddAmbHoaChan (que se supone que es uno en este ejemplo). La parte de HOAconfig 2500 tambien incluye un elemento de sintaxis SpatialInterpolationMethod 255 establecido para indicar que la funcion de interpolacion de la interpolacion espacio-temporal es un coseno elevado. La parte de HOAconfig 2500 ademas incluye un CodedSpatialInterpolationTime 254 para indicar una duracion de la muestra interpolada de 256.
La parte de HOAconfig 2500 incluye ademas un elemento de sintaxis MinAmbHoaOrder 150 establecido para indicar que el orden de MinimumHOA del contenido de HOA ambiental es uno, donde el dispositivo de decodificacion de audio 24 puede obtener un elemento de sintaxis MinNumof-CoeffsForAmbHOA igual a (1 + 1) 2 o cuatro. El dispositivo de decodificacion de audio 24 puede obtener tambien un elemento de sintaxis MaxNoofAddActiveAmbCoeffs configurado como una diferencia entre el elemento de sintaxis NumOfHoaCoeff y el MinNumOfCoeffsForAmbHOA, que se supone en este ejemplo igual a 16-4 o 12. El dispositivo de decodificacion de audio 24 tambien puede obtener un elemento de sintaxis AmbAsignmbits configurado como ceil(log2(MaxNoOfAddActiveAmbCoeffs)) = ceil(log2( 12)) = 4. La parte de HOAconfig 2500 incluye un elemento de sintaxis HOAOrder 152 configurado para indicar que el orden de HOA del contenido es igual a tres (o, en otras palabras, N = 3), donde el dispositivo de decodificacion de audio 24 puede obtener un NumOfHoaCoeffs igual a (N+1)2 o 16.
Como se muestra adicionalmente en el ejemplo de la Fig. 10O(i), la parte 2480 incluye una trama de audio USAC-3D en la que dos tramas HOA 2490 y 249P se almacenan en una carga util de extension USAC dado que dos tramas de audio se almacenan dentro de una trama USAC-3D cuando la replicacion de banda espectral (SBR) esta habilitada. El dispositivo de decodificacion de audio 24 puede obtener una serie de canales de transporte flexibles en funcion de un elemento de sintaxis numHOATransportChannels y de un elemento de sintaxis MinNumOf-CoeffsForAmbHOA. En los siguientes ejemplos, se supone que el elemento de sintaxis numHOATransportChannels es igual a 7 y el elemento de sintaxis MinNumOfCoeffsForAmbHOA es igual a cuatro, donde el numero de canales de transporte flexibles es igual al elemento de sintaxis numHOATransportChannels menos el elemento de sintaxis MinNumOfCoeffsForAmbHOA (o tres).
La Fig. 10O(ii) ilustra las tramas 2490 y 249P con mas detalle. Como se muestra en el ejemplo de la Fig. 10O(ii), la trama 2490 incluye los campos CSID 154-154C y un campo VVectorData 156. El campo CSID 154 incluye el CodedAmb-CoeffIdx 246, el AmbCoeffIdxTransition 247 (donde el doble asterisco (**) indica que, para el canal de transporte flexible n° 1, aqui se supone que el estado interno del decodificador es AmbCoeffIdxTransitionState = 2, lo que da lugar a que el campo de bits CodedAmbCoeffIdx se indica o se especifica de otro modo en el flujo de bits), y el ChannelType 269 (que es igual a dos, indicando que la carga util correspondiente es un coeficiente HOA ambiental adicional). El dispositivo de decodificacion de audio 24 puede obtener el AmbCoeffIdx como igual al CodedAmbCoeffIdx + 1 + MinNumOfCoeffsForAmbHOA o 5 en este ejemplo. El campo CSID 154B incluye unitC 267, bb 266 y ba 265, junto con ChannelType 269, cada uno de los cuales esta configurado en los valores correspondientes 01, 1, 0 y 01 que se muestran en el ejemplo de la Fig. 10O(ii). El campo CSID 154C incluye el campo ChannelType 269 que tiene un valor de 3.
En el ejemplo de la Fig. 10O(ii), la trama 2490 incluye una unica senal basada en vectores (dada el ChannelType 269 igual a 1 en los campos CSID 154B) y un vacio (dado el ChannelType 269 igual a 3 en los campos CSID 154C). Dada la parte de HOAconfig anterior 2500, el dispositivo de decodificacion de audio 24 puede determinar que 16 menos el especificado por el elemento de sintaxis ContAddAmbHoaChan (por ejemplo, donde el elemento vectorial asociado con un indice de 6 se especifica como el elemento de sintaxis ContAddAmbHoaChan) o 15 elementos vectoriales V estan codificados. Por tanto, el VVectorData 156 incluye 15 elementos vectoriales, cada uno de ellos uniformemente cuantizado con 8 bits. Como se indica en la nota 1, el numero y los indices de los elementos VVectorData codificados se especifican mediante el parametro CodedVVecLength = 0. Ademas, como se indica en la nota a pie de pagina 2, el esquema de codificacion se indica mediante NbitsQ = 5 en el campo CSID para el canal de transporte correspondiente.
En la trama 249P, el campo CSID 154 incluye una AmbCoeffIdxTransition 247 que indica que no ha ocurrido ninguna transicion y por lo tanto el CodedAmbCoeffIdx 246 puede estar implfcito desde la trama anterior y no necesita ser senalado o especificado otra vez de nuevo. El campo CSID 154B y 154C de la trama 249P son iguales a los de la trama 2490 y, por lo tanto, al igual que la trama 2490, la trama 249P incluye un unico campo VVectorData 156, que incluye 15 elementos vectoriales, cada uno de ellos cuantizado uniformemente con 8 bits
5
10
15
20
25
30
35
40
45
50
55
60
65
Las Figs. 11A-11G son diagramas de bloques que ilustran, con mas detalle, varias unidades del dispositivo de decodificacion de audio 24 que se muestra en el ejemplo de la Fig. 5. La Fig. 11A es un diagrama de bloques que ilustra, con mas detalle, la unidad de extraccion 72 del dispositivo de decodificacion de audio 24. Como se muestra en el ejemplo de la Fig. 11A, la unidad de extraccion 72 puede incluir una unidad de analisis de modo 270, una unidad de configuracion de modo 272 ("mode config unit 272") y una unidad de extraccion configurable 274.
La unidad de analisis de modo 270 puede representar una unidad configurada para analizar el elemento de sintaxis anotado anteriormente indicativo de un modo de codificacion (por ejemplo, el elemento de sintaxis de ChannelType que se muestra en el ejemplo de la Fig. 10E) usado para codificar los coeficientes HOA 11 para formar el flujo de bits 21. La unidad de analisis de modo 270 puede pasar el elemento de sintaxis de determinacion a la unidad de configuracion de modo 272. La unidad de configuracion de modo 272 puede representar una unidad configurada para configurar la unidad de extraccion configurable 274 en base al elemento de sintaxis analizado. La unidad de configuracion de modo 272 puede configurar la unidad de extraccion configurable 274 para extraer una representacion codificada basada en la direccion de los coeficientes HOA 11 desde el flujo de bits 21, o extraer una representacion codificada basada en los vectores de los coeficientes HOA 11 del flujo de bits 21 basado en el analisis del elemento de sintaxis.
Cuando se ha realizado una codificacion basada en la direccion, la unidad de extraccion configurable 274 puede extraer la version basada en la direccion de los coeficientes HOA 11 y los elementos sintacticos asociados con esta version codificada (que se designa como informacion basada en la direccion 91 en el ejemplo de la Fig. 11A). Esta informacion basada en la direccion 91 puede incluir la informacion direccional 253 que se muestra en el ejemplo de la Fig. 10D y SideChannelInfoData basados en la direccion que se muestran en el ejemplo de la Fig. 10E como se define por un ChannelType igual a cero.
Cuando el elemento de sintaxis indica que los coeficientes HOA 11 se han codificado utilizando una sfntesis basada en vectores (por ejemplo, cuando el elemento de sintaxis de ChannelType es igual a uno), la unidad de extraccion configurable 274 puede extraer los vectores V[k] de primer plano codificados 57, los coeficientes HOA ambientales codificados 59 y las senales nFG codificadas 59. La unidad de extraccion configurable 274 tambien puede, al determinar que el elemento de sintaxis indica que los coeficientes HOA 11 se han codificado utilizando una sfntesis basada en vectores, extraer el elemento de sintaxis CodedSpatialInterpolationTime 254 y el elemento de sintaxis SpatialInterpolationMethod 255 del flujo de bits 21, pasando estos elementos de sintaxis 254 y 255 a la unidad de interpolacion espacio-temporal 76.
La Fig. 11B es un diagrama de bloques que ilustra, con mas detalle, la unidad de cuantizacion 74 del dispositivo de decodificacion de audio 24 que se muestra en el ejemplo de la Fig. 5. La unidad de cuantizacion 74 puede representar una unidad configurada para operar de manera recfproca con la unidad de cuantizacion 52 que se muestra en el ejemplo de la Fig. 4 con el fin de decodificar por entropfa y decuantizar los vectores V[k] de primer plano codificados 57 y, de este modo, generar vectores los V[k] de primer plano reducidos 55k. La unidad de decuantizacion escalar/entropica 984 puede incluir una unidad de decodificacion de categorfa/residuo 276, una unidad de prediccion 278 y una unidad de decuantizacion uniforme 280.
La unidad de decodificacion de categorfa/residuo 276 puede representar una unidad configurada para llevar a cabo la decodificacion de Huffman con respecto a los vectores de primer plano V[k] codificados 57 utilizando la tabla Huffman identificada mediante la informacion de la tabla Huffman 241 (que es, como se ha indicado anteriormente, expresada como un elemento de sintaxis en el flujo de bits 21). La unidad de decodificacion de categorfa/residuo 276 puede emitir vectores de primer plano cuantizados V[k] a la unidad de prediccion 278. La unidad de prediccion 278 puede representar una unidad configurada para realizar la prediccion con respecto a los vectores V[k] de primer plano cuantizados basados en el modo de prediccion 237, que emiten vectores V[k] de primer plano cuantizados aumentados a la unidad de decuantizacion uniforme 280. La unidad de decuantizacion uniforme 280 puede representar una unidad configurada para realizar la decuantizacion con respecto a los vectores V[k] de primer plano cuantizados aumentados basandose en el valor de nbits 233, produciendo los vectores V[k] de primer plano reducidos 55k
La Fig. 11C es un diagrama de bloques que ilustra, con mas detalle, la unidad de decodificacion psicoacustica 80 del dispositivo de decodificacion de audio 24 que se muestra en el ejemplo de la Fig. 5. Como se ha indicado anteriormente, la unidad de decodificacion psicoacustica 80 puede operar de una manera recfproca con la unidad de codificacion de audio psicoacustica 40 que se muestra en el ejemplo de la Fig. 4 a fin de decodificar los coeficientes HOA 59 codificados y las senales nFG 61 codificadas y, de este modo, generar coeficientes HOA ambientales compensados de energfa 47' y las senales nFG interpoladas 49' (que tambien se pueden denominar objetos de audio nFG interpolados 49'). La unidad de decodificacion psicoacustica 80 puede pasar los coeficientes HOA ambientales compensados de energfa 47' a la unidad de formulacion de coeficientes HOA 82 y las senales nFG 49' a la reordenacion 84. La unidad de decodificacion psicoacustica 80 puede incluir una pluralidad de decodificadores de audio 80-80N similares a la unidad de codificacion de audio psicoacustica 40. Los decodificadores de audio 80- 80N pueden ser instanciados por o incluidos de otro modo dentro de la unidad de codificacion de audio psicoacustica 40 en cantidad suficiente para permitir, como se ha indicado anteriormente, la decodificacion concurrente de cada canal de los coeficientes HOA de fondo 47' y cada senal de las senales nFG 49'.
5
10
15
20
25
30
35
40
45
50
55
60
65
La Fig. 11D es un diagrama de bloques que ilustra, con mas detalle, la unidad de reordenacion 84 del dispositivo de decodificacion de audio 24 que se muestra en el ejemplo de la Fig. 5. La unidad de reordenacion 84 puede representar una unidad configurada para operar de una manera similar a la descrita anteriormente con respecto a la unidad de reordenacion 34. La unidad de reordenacion 84 puede incluir una unidad de reordenacion de vectores 282 que puede representar una unidad configurada para recibir elementos de sintaxis 205 indicativos del orden original de los componentes en primer plano de los coeficientes HOA 11. La unidad de extraccion 72 puede analizar estos elementos de sintaxis 205 del flujo de bits 21 y pasar el elemento de sintaxis 205 a la unidad de reordenacion 84. La unidad de reordenacion de vectores 282 puede, basandose en estos elementos 205 de sintaxis de reordenacion, reordenar las senales nFG interpoladas 49' y los vectores V[^j de primer plano reducidos 55k para generar senales nFG reordenadas 49' y los vectores V[^j de primer plano reordenados 55k'. La unidad de reordenacion 84 puede emitir las senales nFG reordenadas 49" a la unidad de formulacion del primer plano 78 y los vectores V[^j de primer plano reordenados 55k' a la unidad de interpolacion espacio-temporal 76.
La Fig. 11E es un diagrama de bloques que ilustra, con mas detalle, la unidad de interpolacion espacio-temporal 76 del dispositivo de decodificacion de audio 24 que se muestra en el ejemplo de la Fig. 5. La unidad de interpolacion espacio-temporal 76 puede funcionar de una manera similar a la descrita anteriormente con respecto a la unidad de interpolacion espacio-temporal 50. La unidad de interpolacion espacio-temporal 76 puede incluir una unidad de interpolacion V 284, que puede representar una unidad configurada para recibir los vectores V[^j reordenados 55k' y realizar la interpolacion espacio-temporal con respecto a los vectores V[^j de primer plano reordenados 55k' y los vectores V[A-1] de primer plano reordenados 55m' para generar los vectores V[^j de primer plano interpolados 55k". La unidad de interpolacion V 284 puede realizar interpolacion basada en el elemento de sintaxis CodedSpatialInterpolationTime 254 y el elemento de sintaxis SpatialInterpolationMethod 255. En algunos ejemplos, la unidad de interpolacion V 285 puede interpolar los vectores V durante la duracion especificada por el elemento de sintaxis CodedSpatialInterpolationTime 254 utilizando el tipo de interpolacion identificado por el elemento de sintaxis SpatialInterpolationMethod 255. La unidad de interpolacion espacio-temporal 76 puede enviar los vectores V[^] de primer plano interpolados 55k" a la unidad de formulacion del primer plano 78.
La Fig. 11F es un diagrama de bloques que ilustra, con mas detalle, la unidad de formulacion del primer plano 78 del dispositivo de decodificacion de audio 24 que se muestra en el ejemplo de la Fig. 5. La unidad de formulacion del primer plano 78 puede incluir una unidad de multiplicacion 286 que puede representar una unidad configurada para realizar la multiplicacion matricial con respecto a los vectores V[^] interpolados de primer plano 55k" y las senales nFG reordenadas 49" para generar los coeficientes HOA de primer plano 65.
La Fig. 11G es un diagrama de bloques que ilustra, con mas detalle, la unidad de formulacion de coeficientes HOA 82 del dispositivo de decodificacion de audio 24 que se muestra en el ejemplo de la Fig. 5. La unidad de formulacion de coeficientes HOA 82 puede incluir una unidad de adicion 288, que puede representar una unidad configurada para anadir los coeficientes HOA de primer plano 65 a los canales ambientales HOA 47' para obtener los coeficientes HOA 11'.
La Fig. 12 es un diagrama que ilustra un ecosistema de audio ejemplar que puede realizar diferentes aspectos de las tecnicas descritas en esta divulgacion. Como se ilustra en la Fig. 12, el ecosistema de audio 300 puede incluir la adquisicion 301, edicion 302, codificacion, 303, transmision 304 y reproduccion 305.
La adquisicion 301 puede representar las tecnicas del ecosistema de audio 300 donde se adquiere el contenido de audio. Los ejemplos de adquisicion 301 incluyen, pero no se limitan a, grabacion de sonido (por ejemplo, sonido en directo), generacion de audio (por ejemplo, objetos de audio, produccion de foley, sfntesis de sonido, simulaciones) y similares. En algunos ejemplos, el sonido puede ser grabado en conciertos, eventos deportivos, y cuando se lleva a cabo vigilancia. En algunos ejemplos, se puede generar audio al realizar simulaciones, y crear/mezclar (por ejemplo, movimientos, juegos). Los objetos de audio pueden ser utilizados en Hollywood (por ejemplo, estudios IMAx). En algunos ejemplos, la adquisicion 301 puede ser realizada por un creador de contenido, tal como el creador de contenido 12 de la Fig. 3.
La edicion 302 puede representar las tecnicas del ecosistema de audio 300 donde el contenido de audio se edita y/o se modifica. Como ejemplo, el contenido de audio se puede editar combinando multiples unidades de contenido de audio en una sola unidad de contenido de audio. Como otro ejemplo, el contenido de audio puede ser editado ajustando el contenido de audio real (por ejemplo, ajustando los niveles de uno o mas componentes de frecuencia del contenido de audio). En algunos ejemplos, la edicion 302 puede realizarse mediante un sistema de edicion de audio, tal como el sistema de edicion de audio 18 de la Fig. 3. En algunos ejemplos, la edicion 302 puede realizarse en un dispositivo movil, tal como uno o mas de los dispositivos moviles ilustrados en la Fig. 29.
La codificacion 303 puede representar las tecnicas del ecosistema de audio 300 donde el contenido de audio esta codificado en una representacion del contenido de audio. En algunos ejemplos, la representacion del contenido de audio puede ser un flujo de bits, tal como el flujo de bits 21 de la Fig. 3. En algunos ejemplos, la codificacion 302 puede realizarse mediante un dispositivo de codificacion de audio, tal como el dispositivo de codificacion de audio 20 de la Fig. 3.
5
10
15
20
25
30
35
40
45
50
55
60
65
La transmision 304 puede representar los elementos del ecosistema de audio 300 donde el contenido de audio se transporta desde un creador de contenido a un consumidor de contenido. En algunos ejemplos, el contenido de audio puede ser transportado en tiempo real o casi en tiempo real. Por ejemplo, el contenido de audio puede transmitirse al consumidor de contenido. En algunos ejemplos, el contenido de audio puede ser transportado codificando el contenido de audio en un medio, tal como un medio de almacenamiento legible por ordenador. Por ejemplo, el contenido de audio puede almacenarse en un disco, unidad y similares (por ejemplo, un disco Blu-ray, una tarjeta de memoria, un disco duro, etc.)
La reproduccion 305 puede representar las tecnicas del ecosistema de audio 300 donde el contenido de audio se reproduce y reproduce para el consumidor de contenido. En algunos ejemplos, la reproduccion 305 puede incluir renderizar un campo sonoro 3D basado en uno o mas aspectos de un entorno de reproduccion. En otras palabras, la reproduccion 305 puede estar basada en un paisaje acustico local.
La Fig. 13 es un diagrama que ilustra un ejemplo de un ecosistema de audio de la Fig. 12 con mayor detalle. Como se ilustra en la Fig. 13, el ecosistema de audio 300 puede incluir contenido de audio 308, estudios de cine 310, estudios de musica 311, estudios de audio de juegos 312, contenido de audio basado en canales 313, motores de codificacion 314, derivaciones de audio de juegos 315, motores 316 de codificacion/317. Un ejemplo de estudio de audio de juegos 312 se ilustra en la Fig. 26. Algunos ejemplos de motores 316 de codificacion/reproduccion de audio de juegos se ilustran en la Fig. 27.
Como se ilustra en la Fig. 13, los estudios de cine 310, los estudios de musica 311 y los estudios de audio de juegos 312 pueden recibir contenido de audio 308. En algun ejemplo, el contenido de audio 308 puede representar la salida de la adquisicion 301 de la Fig. 12. Los estudios de pelfculas 310 pueden emitir contenido de audio basado en canales 313 (por ejemplo, en 2.0, 5.1 y 7.1), tal como utilizando una estacion de trabajo de audio digital (DAW). Los estudios de musica 310 pueden emitir contenido de audio basado en canales 313 (por ejemplo, en 2.0 y 5.1), tal como utilizando un DAW. En cualquier caso, los motores de codificacion 314 pueden recibir y codificar el contenido de audio basado en el canal 313 basado en uno o mas codecs (por ejemplo, AAC, AC3, Dolby True HD, Dolby Digital Plus y DTS Master Audio) para emitir por los sistemas de suministro 317. De esta manera, los motores de codificacion 314 pueden ser un ejemplo de codificacion 303 de la Fig. 12. Los estudios de audio de juegos 312 pueden emitir uno o mas fragmentos de audios de juego 315, por ejemplo, mediante un DAW. Los motores 316 de codificacion/reproduccion de audios de juego pueden codificar y/o hacer que las derivaciones de audio 315 se conviertan en contenido de audio basado en canales para la salida por los sistemas de suministro 317. En algunos ejemplos, la salida de estudios de pelfculas 310, estudios de musica 311 y estudios de audio de juegos 312 puede representar la salida de edicion 302 de la Fig. 12. En algunos ejemplos, la salida de los motores de codificacion 314 y/o motores 316 de codificacion/reproduccion de audios de juego puede ser transportada a sistemas de suministro 317 a traves de las tecnicas de transmision 304 de la Fig. 12.
La Fig. 14 es un diagrama que ilustra otro ejemplo del ecosistema de audio de la Fig. 12 con mayor detalle. Como se ilustra en la Fig. 14, el ecosistema de audio 300B puede incluir objetos de audio de grabacion de difusion 319, sistemas de audio profesionales 320, captura de dispositivos de consumo 322, formato de audio HOA 323, reproduccion de dispositivos 324, audio de consumo, TV y accesorios 325 y sistemas de audio para automoviles 326.
Como se ilustra en la Fig. 14, los objetos de audio de grabacion de difusion 319, los sistemas de audio profesionales 320 y la captura de dispositivos de consumo 322 pueden codificar todos sus resultados utilizando el formato de audio HOA 323. De esta manera, el contenido de audio puede codificarse utilizando el formato de audio HOA 323 en una representacion unica que puede reproducirse utilizando la representacion en dispositivo 324, audio de consumo, TV y accesorios 325 y sistemas de audio para automoviles 326. En otras palabras, la representacion unica del contenido de audio se puede reproducir en un sistema generico de reproduccion de audio (es decir, en lugar de requerir una configuracion particular tal como 5.1, 7.1, etc.).
Las Figs. 15A y 15B son diagramas que ilustran otros ejemplos del ecosistema de audio de la Fig. 12 con mayor detalle. Como se ilustra en la Fig. 15A, el ecosistema de audio 300C puede incluir elementos de adquisicion 331 y elementos de reproduccion 336. Los elementos 331 de adquisicion pueden incluir dispositivos 332 de adquisicion cableados y/o inalambricos (por ejemplo, microfonos Eigen), captura de sonido envolvente en dispositivo 334 y dispositivos moviles 335 (por ejemplo, telefonos inteligentes y tabletas). En algunos ejemplos, los dispositivos de adquisicion cableados y/o inalambricos 332 pueden estar acoplados al dispositivo movil 335 a traves de canales de comunicacion cableados y/o inalambricos 333.
De acuerdo con una o mas tecnicas de esta descripcion, el dispositivo movil 335 puede usarse para adquirir un campo sonoro. Por ejemplo, el dispositivo movil 335 puede adquirir un campo sonoro a traves de dispositivos de adquisicion cableados y/o inalambricos 332 y/o captura de sonido envolvente en el dispositivo 334 (por ejemplo, una pluralidad de microfonos integrados en el dispositivo movil 335). El dispositivo movil 335 puede entonces codificar el campo sonoro adquirido en las HOA 337 para su reproduccion mediante uno o mas de los elementos de reproduccion 336. Por ejemplo, un usuario del dispositivo movil 335 puede grabar (adquirir un campo sonoro de) un evento en directo (por ejemplo, una reunion, una conferencia, una obra de teatro, un concierto, etc.) y codificar la
5
10
15
20
25
30
35
40
45
50
55
60
65
grabacion en HOAs.
El dispositivo movil 335 tambien puede utilizar uno o mas de los elementos de reproduccion 336 para reproducir el campo sonoro codificado por HOA. Por ejemplo, el dispositivo movil 335 puede decodificar el campo sonoro codificado por HOA y emitir una senal a uno o mas de los elementos de reproduccion 336 que hace que uno o mas de los elementos de reproduccion 336 recreen el campo sonoro. Como un ejemplo, el dispositivo movil 335 puede utilizar canales de comunicacion inalambricos y/o inalambricos 338 para emitir la senal a uno o mas altavoces (por ejemplo, matrices de altavoces, barras de sonido, etc.). Como otro ejemplo, el dispositivo movil 335 puede utilizar soluciones de acoplamiento 339 para emitir la senal a una o mas estaciones de acoplamiento y/o uno o mas altavoces acoplados (por ejemplo, sistemas de sonido en coches inteligentes y/o hogares). Como otro ejemplo, el dispositivo movil 335 puede utilizar la renderizacion de auriculares 340 para enviar la senal a un conjunto de auriculares, por ejemplo, para crear un sonido binaural realista.
En algunos ejemplos, un dispositivo movil particular 335 puede adquirir un campo sonoro 3D y reproducir el mismo campo sonoro 3D en un momento posterior. En algunos ejemplos, el dispositivo movil 335 puede adquirir un campo sonoro 3D, codificar el campo sonoro 3D en HOA y transmitir el campo sonoro 3D codificado a uno o mas dispositivos (por ejemplo, otros dispositivos moviles y/u otros dispositivos no moviles) para su reproduccion.
Como se ilustra en la Fig. 15B, el ecosistema de audio 300D puede incluir contenido de audio 343, estudios de juego 344, contenido de audio codificado 345, motores de renderizacion 346 y sistemas de entrega 347. En algunos ejemplos, los estudios de juego 344 pueden incluir uno o mas DAWs que pueden permitir la edicion de senales HOA. Por ejemplo, uno o mas DAWs pueden incluir plugins HOA y/o herramientas que pueden ser configuradas para funcionar con (por ejemplo, trabajar con) uno o mas sistemas de audio de juegos. En algunos ejemplos, los estudios de juego 344 pueden producir nuevos formatos de derivacion que soporten HOA. En cualquier caso, los estudios de juego 344 pueden emitir contenido de audio codificado 345 a los motores de representacion 346 que pueden proporcionar un campo sonoro para su reproduccion mediante los sistemas de entrega 347.
La Fig. 16 es un diagrama que ilustra un dispositivo de codificacion de video ejemplar que puede realizar diferentes aspectos de las tecnicas descritas en esta divulgacion. Como se ilustra en la Fig. 16, el ecosistema de audio 300E puede incluir contenido de audio 3D original 351, codificador 352, flujo de bits 353, decodificador 354, renderizador 355 y elementos de reproduccion 356. Como se ilustra adicionalmente en la Fig. 16, el codificador 352 puede incluir analisis y descomposicion de campo sonoro 357, extraccion de fondo 358, determinacion de relevancia de fondo 359, codificacion de audio 360, extraccion de audio de primer plano/distinto 361 y codificacion de audio 362. En algunos ejemplos, el codificador 352 puede estar configurado para realizar operaciones similares al dispositivo de codificacion de audio 20 de las Figs. 3 y 4. En algunos ejemplos, el analisis y la descomposicion del campo sonoro 357 pueden estar configurados para realizar operaciones similares a la unidad de analisis del campo sonoro 44 de la Fig. 4. En algunos ejemplos, la extraccion de fondo 358 y la determinacion de relevancia de fondo 359 pueden estar configuradas para realizar operaciones similares a la unidad de seleccion de bg 48 de la Fig. 4. En algunos ejemplos, la codificacion de audio 360 y la codificacion de audio 362 pueden configurarse para llevar a cabo operaciones similares a la unidad codificadora de audio psicoacustico 40 de la Fig. 4. En algunos ejemplos, la extraccion de audio de primer plano/distinto 363 puede configurarse para llevar a cabo operaciones similares a la unidad de seleccion del primer plano 36 de la Fig. 4.
En algunos ejemplos, la extraccion de audio de primer plano/distinto 361 puede analizar el contenido de audio correspondiente a la trama de video 390 de la Fig. 33. Por ejemplo, la extraccion de audio en primer plano/distinto 361 puede determinar que el contenido de audio correspondiente a las regiones 391A-391C es audio de primer plano.
Como se ilustra en la Fig. 16, el codificador 352 puede configurarse para codificar el contenido original 351, que puede tener una velocidad de bits de 25-75 Mbps, en el flujo de bits 353, que puede tener un velocidad de bits de 256 kbps - 1,2 Mbps. La Fig. 17 es un diagrama que ilustra un ejemplo del dispositivo de codificacion de audio de la Fig. 16 con mayor detalle.
La Fig. 18 es un diagrama que ilustra un dispositivo de descodificacion de audio ejemplar que puede implementar diferentes aspectos de las tecnicas descritas en esta divulgacion. Como se ilustra en la Fig. 18, el ecosistema de audio 300E puede incluir contenido de audio 3D original 351, codificador 352, flujo de bits 353, decodificador 354, renderizador 355 y elementos de reproduccion 356. Como se ilustra adicionalmente en la Fig. 16, el decodificador 354 puede incluir decodificador de audio 363, decodificador de audio 364, reconstruccion de primer plano 365 y mezcla 366. En algunos ejemplos, el decodificador 354 puede estar configurado para realizar operaciones similares al dispositivo de decodificacion de audio 24 de las Figs. 3 y 5. En algunos ejemplos, el decodificador de audio 363, el decodificador de audio 364 pueden estar configurados para realizar operaciones similares a la unidad de decodificacion psicoacustica 80 de la Fig. 5. En algunos ejemplos, la reconstruccion de primer plano 365 puede estar configurada para realizar operaciones similares a la unidad de formulacion del primer plano 78 de la Fig. 5.
Como se ilustra en la Fig. 16, el decodificador 354 puede estar configurado para recibir y decodificar el flujo de bits 353 y dar salida al campo sonoro 3D reconstruido resultante al renderizador 355 que puede entonces hacer que, uno
5
10
15
20
25
30
35
40
45
50
55
60
65
o mas de los elementos de reproduccion 356, produzcan una representacion del contenido 3D original 351. La Fig. 19 es un diagrama que ilustra un ejemplo del dispositivo de descodificacion de audio de la Fig. 18 con mayor detalle.
Las Figs. 20A a 20G son diagramas que ilustran ejemplos de dispositivos de adquisicion de audio que pueden realizar diversos aspectos de las tecnicas descritas en esta descripcion. La Fig. 20A ilustra el microfono Eigen 370 que puede incluir una pluralidad de microfonos que estan configurados colectivamente para grabar un campo sonoro 3D. En algunos ejemplos, la pluralidad de microfonos del microfono Eigen 370 puede estar situada en la superficie de una bola sustancialmente esferica con un radio de aproximadamente 4 cm. En algunos ejemplos, el dispositivo de codificacion de audio 20 puede estar integrado en el microfono de Eigen de manera que emita un flujo de bits 17 directamente desde el microfono 370.
La Fig. 20B ilustra el camion de produccion 372 que puede estar configurado para recibir una senal de uno o mas microfonos, tal como uno o mas microfonos Eigen 370. El camion de produccion 372 tambien puede incluir un codificador de audio, tal como el codificador de audio 20 de la Fig. 3.
Las Figs. 20C-20E ilustran el dispositivo movil 374 que puede incluir una pluralidad de microfonos que estan configurados colectivamente para grabar un campo sonoro 3d. En otras palabras, la pluralidad de microfonos puede tener diversidad X, Y, Z. En algunos ejemplos, el dispositivo movil 374 puede incluir un microfono 376 que puede ser girado para proporcionar diversidad X, Y, Z con respecto a uno o mas microfonos del dispositivo movil 374. El dispositivo movil 374 tambien puede incluir un codificador de audio, tal como el codificador de audio 20 de la Fig. 3.
La Fig. 20F ilustra un dispositivo de captura de video robusto 378 que puede configurarse para grabar un campo sonoro 3D. En algunos ejemplos, el dispositivo de captura de video robusto 378 puede estar unido a un casco de un usuario que participa en una actividad. Por ejemplo, el dispositivo de captura de video reforzado 378 puede estar unido a un casco de un usuario de rafting en aguas bravas. De esta manera, el dispositivo de captura de video robusto 378 puede capturar un campo sonoro 3D que representa la accion alrededor del usuario (por ejemplo, agua que se estrella detras del usuario, otro rafter que habla delante del usuario, etc.).
La Fig. 20G ilustra un dispositivo movil mejorado secundario 380 que puede configurarse para grabar un campo sonoro 3D. En algunos ejemplos, el dispositivo movil 380 puede ser similar al dispositivo movil 335 de la Fig. 15, con la adicion de uno o mas accesorios. Por ejemplo, un microfono Eigen puede estar unido al dispositivo movil 335 de la Fig. 15 para formar un dispositivo movil mejorado secundario 380. De esta manera, el dispositivo movil mejorado secundario 380 puede capturar una version de calidad superior del campo sonoro 3D que utilizar unicamente componentes de captura de sonido integrados en el dispositivo movil mejorado secundario 380.
Las Figs. 21A-21E son diagramas que ilustran ejemplos de dispositivos de reproduccion de audio que pueden realizar diversos aspectos de las tecnicas descritas en esta descripcion. Las Figs. 21A y 21B ilustran una pluralidad de altavoces 382 y barras de sonido 384. De acuerdo con una o mas tecnicas de esta descripcion, los altavoces 382 y/o las barras de sonido 384 pueden disponerse en cualquier configuracion arbitraria mientras se sigue reproduciendo un campo sonoro 3D. Las Figs. 21C-21E ilustran una pluralidad de dispositivos de reproduccion de auriculares 386-386C. Los dispositivos de reproduccion de auriculares 386-386C pueden estar acoplados a un decodificador a traves de una conexion cableada o inalambrica. De acuerdo con una o mas tecnicas de esta descripcion, se puede utilizar una unica representacion generica de un campo sonoro para renderizar el campo sonoro sobre cualquier combinacion de altavoces 382, barras de sonido 384 y dispositivos de reproduccion de auriculares 386-386C.
Las Figs. 22A a 22H son diagramas que ilustran ejemplos de entornos de reproduccion de audio de acuerdo con una o mas tecnicas descritas en esta descripcion. Por ejemplo, la Fig. 22A ilustra un entorno de reproduccion de altavoces 5.1, la Fig. 22B ilustra un entorno de reproduccion de altavoces 2.0 (por ejemplo, estereo), la Fig. 22C ilustra un entorno de reproduccion de altavoces 9.1 con altavoces delanteros de altura completa, las Figs. 22D y 22E ilustran cada uno un entorno de reproduccion de altavoces 22.2. 22F ilustra un entorno de reproduccion de altavoces 16.0, la Fig. 22G ilustra un entorno de reproduccion de altavoces para automoviles, y la Fig. 22H ilustra un dispositivo movil con un entorno de reproduccion de ofdo.
De acuerdo con una o mas tecnicas de esta descripcion, se puede utilizar una unica representacion generica de un campo sonoro para representar el campo sonoro en cualquiera de los entornos de reproduccion ilustrados en las Figs. 22A - 22H. Adicionalmente, las tecnicas de esta descripcion permiten a un renderizador renderizar un campo sonoro desde una representacion generica para reproduccion en entornos de reproduccion distintos de los ilustrados en las Figs. 22A - 22H. Por ejemplo, si las consideraciones de diseno prohfben la colocacion correcta de los altavoces de acuerdo con un entorno de reproduccion de altavoces 7.1 (por ejemplo, si no es posible colocar un altavoz envolvente derecho), las tecnicas de esta descripcion permiten que un renderizador compense con los otros 6 altavoces tales que la reproduccion se puede lograr en un entorno de reproduccion de altavoces 6.1.
Como se ilustra en la Fig. 23, un usuario puede ver un juego de deportes mientras utiliza los auriculares 386. De acuerdo con una o mas tecnicas de esta descripcion, se puede adquirir el campo sonoro 3D del juego deportivo (por ejemplo, uno o mas microfonos Eigen se pueden colocar en y/o alrededor del estadio de beisbol ilustrado en la Fig.
5
10
15
20
25
30
35
40
45
50
55
60
65
24), los coeficientes HOA correspondientes al campo sonoro 3D pueden obtenerse y transmitirse a un decodificador, el decodificador puede determinar reconstruir el campo sonoro 3D basado en los coeficientes HOA y emitir el campo sonoro 3D a un renderizador, el renderizador puede obtener una indicacion como el tipo de entorno de reproduccion (por ejemplo, los auriculares) y convertir el campo sonoro 3D en senales que hacen que los auriculares emitan una representacion del campo sonoro 3D del juego deportivo. En algunos ejemplos, el renderizador puede obtener una indicacion del tipo de entorno de reproduccion de acuerdo con las tecnicas de la Fig. 25. De esta manera, el renderizador puede "adaptarse" a diferentes ubicaciones de altavoces, tipo de numeros, tamano e idealmente ecualizar para el entorno local.
La Fig. 28 es un diagrama que ilustra una configuracion de altavoz que puede ser simulada por auriculares de acuerdo con una o mas tecnicas descritas en esta descripcion. Como se ilustra en la Fig. 28, las tecnicas de esta descripcion pueden permitir que un usuario que lleve audffonos 389 experimente un campo sonoro como si el campo sonoro fuera reproducido por los altavoces 388. De esta manera, un usuario puede escuchar un campo sonoro en 3D sin que se emita el sonido en un area grande.
La Fig. 30 es un diagrama que ilustra una trama de video asociada con un campo sonoro 3D que puede procesarse de acuerdo con una o mas tecnicas descritas en esta descripcion.
Las Figs. 31A-31M son diagramas que ilustran los graficos 400A-400M que muestran diversos resultados de simulacion de realizar categorizacion sintetica o grabada del campo sonoro de acuerdo con diversos aspectos de las tecnicas descritas en esta descripcion. En el ejemplo de la Fig. 31A a 31M, cada uno de los graficos 400A-400M incluye un umbral 402 que esta indicado por una linea de puntos y un objeto de audio respectivo 404A- 404M(colectivamente, "los objetos de audio 404") indicados por una linea discontinua.
Cuando se determina que los objetos de audio 404 a traves del analisis descrito anteriormente con respecto a la unidad de analisis de contenido 26 estan por debajo del umbral 402, la unidad de analisis de contenido 26 determina que el objeto correspondiente de los objetos de audio 404 representa un objeto de audio que ha sido grabado. Como se ilustra en el ejemplo de la Figs. 31B, 31D-31H y 31J-31L, la unidad de analisis de contenido 26 determina que los objetos de audio 404b, 404D-404H, 404J-404L estan por debajo del umbral 402 (al menos mas del 90% del tiempo y a menudo el 100% del tiempo) y por lo tanto representan objetos de audio grabados. Como se ilustra en el ejemplo de la Figs. 31A, 31C y 31I, la unidad de analisis de contenido 26 determina que los objetos de audio 404A, 404C y 404I exceden el umbral 402 y por lo tanto representan objetos de audio sinteticos.
En el ejemplo de la Fig. 31M, el objeto de audio 404M representa un objeto de audio sintetico/grabado mezclado, que tiene algunas partes sinteticas (por ejemplo, por encima del umbral 402) y algunas partes sinteticas (por ejemplo, por debajo del umbral 402). La unidad de analisis de contenido 26 identifica en este caso las partes sinteticas y grabadas del objeto de audio 404M con el resultado de que el dispositivo de codificacion de audio 20 genera el flujo de bits 21 para incluir tanto datos de audio codificados basados en la direccionalidad como datos de audio codificados basados en vector.
La Fig. 32 es un diagrama que ilustra un grafico 406 de valores singulares de una matriz S descompuesta a partir de coeficientes ambisonicos de orden superior de acuerdo con las tecnicas descritas en esta descripcion. Como se muestra en la Fig. 32, los valores singulares distintos de cero que tienen valores grandes son pocos. La unidad de analisis del campo sonoro 44 de la Fig. 4 puede analizar estos valores singulares para determinar los componentes de primer plano nFG (o, en otras palabras, predominantes) de los vectores US[7] reordenados 33' y los vectores V[^j reordenados 35'.
Las Figs. 33A y 33B son diagramas que ilustran los respectivos graficos 410A y 410B que muestran un impacto potencial que tiene la reordenacion cuando se codifican los vectores que describen componentes en primer plano del campo sonoro de acuerdo con las tecnicas descritas en esta descripcion. El grafico 410A muestra el resultado de la codificacion de al menos algunos de los vectores US[^] no ordenados 33 (o, en otras palabras, los originales), mientras que el grafico 410B muestra el resultado de la codificacion de los correspondientes vectores US[^] ordenados 33'. La grafica superior en cada una de las graficas 410A y 410B muestra el error en la codificacion, donde es probable que solo se observe un error notable en el grafico 410B en los lfmites de la trama. Por consiguiente, las tecnicas de reordenacion descritas en esta descripcion pueden facilitar o de otra manera promover la codificacion de objetos monoaudio utilizando un codificador de audio heredado.
Las Figs. 34 y 35 son diagramas conceptuales que ilustran diferencias entre la identificacion basada en energfa y la direccionalidad de distintos objetos de audio, de acuerdo con esta descripcion. En el ejemplo de la Fig. 34, los vectores que presentan mayor energfa se identifican como siendo distintos objetos de audio, independientemente de la direccionalidad. Como se muestra en la Fig. 34, se determina que los objetos de audio que estan posicionados de acuerdo con valores de energfa mas altos (dibujados en un eje y) estan "en primer plano", independientemente de la direccionalidad (por ejemplo, representados por cocientes de direccionalidad dibujados en un eje x).
La Fig. 35 ilustra la identificacion de objetos de audio distintos basandose tanto en la direccionalidad como en la energfa, tal como de acuerdo con las tecnicas implementadas por la unidad de analisis del campo sonoro 44 de la
5
10
15
20
25
30
35
40
45
50
55
60
65
Fig. 4. Como se muestra en la Fig. 35, los cocientes de mayor direccionalidad se trazan hacia la izquierda del eje x, y los mayores niveles de energfa se representan en la parte superior del eje y. En este ejemplo, la unidad de analisis del campo sonoro 44 puede determinar que, objetos de audio distintos (por ejemplo, que estan "en primer plano"), estan asociados con datos vectoriales dibujados relativamente hacia la parte superior izquierda del grafico. Como ejemplo, la unidad de analisis del campo sonoro 44 puede determinar que los vectores que estan representados en el cuadrante superior izquierdo del grafico estan asociados con distintos objetos de audio.
Las Figs. 36A a 36F son diagramas que ilustran proyecciones de al menos una parte de la version descompuesta de coeficientes armonicos esfericos en el dominio espacial para realizar interpolacion de acuerdo con diversos aspectos de las tecnicas descritas en esta descripcion. La Fig. 36A es un diagrama que ilustra la proyeccion de uno o mas de los V[*] vectores 35 en una esfera 412. En el ejemplo de la Fig. 36A, cada numero identifica un coeficiente armonico esferico diferente proyectado sobre la esfera (posiblemente asociado con una fila y/o columna de la matriz V 19 '). Los diferentes colores sugieren una direccion de un componente de audio distinto, donde el color mas claro (y progresivamente mas oscuro) indica la direccion primaria del componente distinto. La unidad de interpolacion espacio-temporal 50 del dispositivo de codificacion de audio 20 que se muestra en el ejemplo de la Fig. 4 puede realizar interpolacion espacio-temporal entre cada uno de los puntos rojos para generar la esfera que se muestra en el ejemplo de la Fig. 36A.
La Fig. 36B es un diagrama que ilustra la proyeccion de uno o mas de los V[*] vectores 35 sobre una viga. La unidad de interpolacion espacio-temporal 50 puede proyectar una fila y/o una columna de los vectores V[*] 35 o multiples filas y/o columnas de los vectores V[*] 35 para generar el haz 414 que se muestra en el ejemplo de la Fig. 36B.
La Fig. 36C es un diagrama que ilustra una seccion transversal de una proyeccion de uno o mas vectores de uno o mas de los vectores V[*] 35 en una esfera, tal como la esfera 412 que se muestra en el ejemplo de la Fig. 36.
En las Figs. 36D-36G son ejemplos de instantaneas de tiempo (mas de 1 trama de unos 20 milisegundos) cuando se pueden ilustrar diferentes fuentes de sonido (abejas, helicopteros, musica electronica y personas en un estadio) en un espacio tridimensional.
Las tecnicas descritas en esta descripcion permiten que la representacion de estas diferentes fuentes de sonido sea identificada y representada utilizando un unico vector US[*] y un unico vector V[*]. La variabilidad temporal de las fuentes sonoras se representa en el vector US[*], mientras que la distribucion espacial de cada fuente sonora esta representada por el unico vector V[*]. Un vector V[*] puede representar el ancho, la ubicacion y el tamano de la fuente de sonido. Ademas, el unico vector V[*] puede representarse como una combinacion lineal de funciones de base armonica esferica. En las graficas de las Figs. 36D-36G, la representacion de las fuentes de sonido se basa en la transformacion del unico vector V en un sistema de coordenadas espaciales. Procedimientos similares de ilustracion de fuentes sonoras se utilizan en las Figs. 36-36C.
La Fig. 37 ilustra una representacion de tecnicas para obtener una interpolacion espacio-temporal como se describe en este documento. La unidad de interpolacion espacio-temporal 50 del dispositivo de codificacion de audio 20 que se muestra en el ejemplo de la Fig. 4 puede realizar la interpolacion espacio-temporal descrita mas adelante con mas detalle. La interpolacion espacio-temporal puede incluir la obtencion de componentes espaciales de mayor resolucion en las dimensiones espaciales y temporales. Los componentes espaciales pueden estar basados en una descomposicion ortogonal de una senal multidimensional compuesta por coeficientes ambisonicos de orden superior (HOA) (o, como coeficientes HOA tambien pueden ser referidos, "coeficientes armonicos esfericos").
En el grafico ilustrado, los vectores V1 y V1 representan los vectores correspondientes de dos componentes espaciales diferentes de una senal multidimensional. Los componentes espaciales pueden obtenerse mediante una descomposicion en bloques de la senal multidimensional. En algunos ejemplos, los componentes espaciales resultan de realizar una forma en bloques de SVD con respecto a cada bloque (que puede referirse a una trama) de datos de audio ambisonicos (HOA) de orden superior (donde estos datos de audio ambisonicos incluyen bloques, muestras o cualquier otra forma de datos de audio multicanal). Se puede utilizar una variable M para indicar la longitud de una trama de audio en muestras.
Por consiguiente, V1 y V2 pueden representar los vectores correspondientes de los vectores V[*] de primer plano 51k y los vectores V[A-1] de primer plano 51 *.1 para bloques secuenciales de los coeficientes HOA 11. Por ejemplo, V1 puede representar un primer vector de los vectores V[*-1] de primer plano 51k-1 para una primera trama (*-1), mientras que V2 puede representar un primer vector de los vectores V[*] de primer plano 51* para una segunda y siguiente trama (*). V1 y V2 pueden representar un componente espacial para un unico objeto de audio incluido en la senal multidimensional.
Los vectores interpolados Vx para cada x se obtienen ponderando V1 y V2 de acuerdo con un numero de segmentos temporales o "muestras de tiempo", x, para una componente temporal de la senal multidimensional a la que se pueden aplicar los vectores interpolados Vx para suavizar el componente temporal (y, en consecuencia, en algunos casos el espacial). Suponiendo una composicion SVD, como se ha descrito anteriormente, se puede obtener el suavizado de las senales nFG 49 haciendo una division vectorial de cada vector de muestra de tiempo (por ejemplo,
5
10
15
20
25
30
35
40
45
50
55
60
65
una muestra de los coeficientes HOA 11) con la correspondiente Vx interpolada. Esto es, US[n] = HOA[n] * Vx[n]_1, donde esto representa un vector de fila multiplicado por un vector de columna, produciendo asf un elemento escalar para US. Vx [n]-1 se puede obtener como un pseudoinversa de Vx[n].
Con respecto a la ponderacion de V1 y V2, V1 se pondera proporcionalmente mas bajo a lo largo de la dimension de tiempo debido a que el V2 se produce subsiguiente en el tiempo a V1. Es decir, aunque los vectores V[k-1] de primer plano 51k-1 son componentes espaciales de la descomposicion, los vectores V[k] de primer plano secuencial temporalmente 51k representan valores diferentes del componente espacial a lo largo del tiempo. Por consiguiente, el peso de V1 disminuye mientras que el peso de V2 crece a medida que x aumenta a lo largo de t. Aquf, d 1 y d 2 representan pesos.
La Fig. 38 es un diagrama de bloques que ilustra las matrices US artificiales, US1 y US2, para bloques SVD secuenciales para una senal multidimensional de acuerdo con las tecnicas descritas en la presente memoria. Pueden aplicarse vectores V interpolados a los vectores de fila de las matrices US artificiales para recuperar la senal multidimensional original. Mas especfficamente, la unidad de interpolacion espacio-temporal 50 puede multiplicar la pseudoinversa de los vectores V[k] de primer plano interpolados al resultado de multiplicar las senales nFG 49 por los vectores V[k] de primer plano 51k (que pueden designarse como coeficientes HOA de primer plano) para obtener muestras interpoladas K/2, que pueden utilizarse en lugar de las muestras K/2 de las senales nFG como las primeras muestras K/2 como se muestra en el ejemplo de la Fig. 38 de la matriz U2.
La Fig. 39 es un diagrama de bloques que ilustra la descomposicion de tramas subsiguientes de una senal ambisonica de orden superior (HOA) utilizando la descomposicion en valores singulares y el suavizado de los componentes espacio-temporales de acuerdo con las tecnicas descritas en esta descripcion. La trama n-1 y la trama n (que tambien se pueden designar como trama n y trama n+ 1) representan tramas posteriores en el tiempo, con cada trama que comprende 1024 segmentos de tiempo y que tiene un orden HOA de 4, dando (4+1)2 = 25 coeficientes. Las matrices US que son matrices U suavizadas artificialmente en la trama n-1 y la trama n pueden obtenerse mediante la aplicacion de vectores V interpolados como se ilustra. Cada fila gris o columna de vectores representa un objeto de audio.
Calculo de la representacion HOA de senales activas basadas en vectores
El CVECk instantaneo se crea tomando cada una de las senales basadas en vectores representadas en XVECk y multiplicandolas por su vector espacial (decuantizado) correspondiente, WECk. Cada wECk esta representado en MVECk. Por lo tanto, para una senal HOA de orden L y M senales basadas en vectores, habra M senales basadas en vectores, cada una de las cuales tendra una dimension dada por la longitud de trama P. Estas senales pueden representarse asf: XVECkmn, n=0,..P-1; m=0,..M-1. Correspondientemente, habra M vectores espaciales, WECk de dimension (L+1)2 Estos pueden representarse como MVECkml, l=0,.., (L+1)2-1; m=0,..,M-1. La representacion HOA para cada senal basada en vectores, CVECkm, es una multiplicacion de vectores matricial dada por:
CVECkm=(XVECkm(MVECkm) T) T
que produce una matriz de (L+1)2 por P. La representacion HOA completa se da sumando la contribucion de cada senal basada en vectores como sigue:
CVECk=m=0M-1 CVECk[m]
Interpolaciones espacio-temporales de V vectores
Sin embargo, con el fin de mantener la continuidad espacio-temporal suave, el calculo anterior solo se lleva a cabo para la parte de la longitud de trama PB. Las primeras B muestras de una matriz HOA, se llevan a cabo en su lugar utilizando un conjunto interpolado de MVECkml, m = 0,.., M-1 ; L = 0,.., (L+1)2, obtenido del MVECkm actual y los valores MVECk -lm anteriores. Esto da como resultado un vector espacial de mayor densidad de tiempo a medida que obtenemos un vector para cada muestra de tiempo p, como sigue:
MVECkmp=pB-1MVECkm+B-1-pB-1MVECk-1m, p=0,..,B-1.
Para cada muestra de tiempo p, se calcula un nuevo vector HOA de (L+1)2 dimensiones tal como:
CVECkp=(XVECkmp)MVECkmp, p=0,..,B-1
Estas primeras B muestras se aumentan con las P-B muestras de la seccion anterior para dar como resultado la representacion HOA completa, CVECkm de la mesima senal basada en vectores.
En el decodificador (por ejemplo, el dispositivo de decodificacion de audio 24 que se muestra en el ejemplo de la Fig. 5), para ciertos sonidos distintos, de primer plano o de base vectorial predominante, el vector V de la trama anterior y el vector V de la trama actual pueden interpolarse utilizando una interpolacion lineal (o no lineal) para producir un
5
10
15
20
25
30
35
40
45
50
55
60
65
vector V de mayor resolucion (en el tiempo) interpolado sobre un segmento de tiempo particular. La unidad de interpolacion espacial temporal 76 puede realizar esta interpolacion, en la que la unidad de interpolacion espacio- temporal 76 puede entonces multiplicar el vector US en la trama actual con el vector V de mayor resolucion interpolado para producir la matriz HOA sobre ese segmento temporal particular.
Alternativamente, la unidad de interpolacion espacio-temporal 76 puede multiplicar el vector US con el vector V de la trama actual para crear una primera matriz HOA. El decodificador puede multiplicar adicionalmente el vector US con el vector V desde la trama anterior para crear una segunda matriz HOA. La unidad de interpolacion espacio-temporal 76 puede entonces aplicar una interpolacion lineal (o no lineal) a la primera y segunda matrices HOA sobre un segmento de tiempo particular. La salida de esta interpolacion puede coincidir con la de la multiplicacion del vector US con un vector V interpolado, proporcionando matrices/vectores de entrada comunes.
A este respecto, las tecnicas pueden permitir que el dispositivo de codificacion de audio 20 y/o el dispositivo de decodificacion de audio 24 esten configurados para funcionar de acuerdo con las siguientes clausulas.
Clausula 135054-1C. Un dispositivo, tal como el dispositivo de codificacion de audio 20 o el dispositivo de decodificacion de audio 24, que comprende: uno o mas procesadores configurados para obtener una pluralidad de componentes espaciales de mayor resolucion en espacio y tiempo, en donde los componentes espaciales se basan en una descomposicion ortogonal de una senal multidimensional compuesta de coeficientes armonicos esfericos.
Clausula 135054-1D. Un dispositivo, tal como el dispositivo de codificacion de audio 20 o el dispositivo de decodificacion de audio 24, que comprende: uno o mas procesadores configurados para suavizar al menos uno de los componentes espaciales y componentes temporales de la primera pluralidad de coeficientes armonicos esfericos y la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-1E. Un dispositivo, tal como el dispositivo de codificacion de audio 20 o el dispositivo de decodificacion de audio 24, que comprende: uno o mas procesadores configurados para obtener una pluralidad de componentes espaciales de mayor resolucion en espacio y tiempo, en donde los componentes espaciales se basan en una descomposicion ortogonal de una senal multidimensional compuesta de coeficientes armonicos esfericos.
Clausula 135054-1G. Un dispositivo, tal como el dispositivo de codificacion de audio 20 o el dispositivo de decodificacion de audio 24, que comprende: uno o mas procesadores configurados para obtener coeficientes armonicos esfericos de resolucion incrementada descompuestos para un segmento de tiempo, al menos en parte, incrementando una resolucion con respecto a una primera descomposicion de una primera pluralidad de coeficientes armonicos esfericos y una segunda descomposicion de una segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-2G. El dispositivo de la clausula 135054-1G, en el que la primera descomposicion comprende una primera matriz V representativa de los vectores singulares derechos de la primera pluralidad de coeficientes armonicos esfericos.
Clausula 135054-3G. El dispositivo de la clausula 135054-1G, en el que la segunda descomposicion comprende una segunda matriz V representativa de los vectores singulares derechos de la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-4G. El dispositivo de la clausula 135054-1G, en el que la primera descomposicion comprende una primera matriz V representativa de los vectores singulares derechos de la primera pluralidad de coeficientes armonicos esfericos, y en la que la segunda descomposicion comprende una segunda matriz V representativa de los vectores singulares derechos de la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-5G. El dispositivo de la clausula 135054-1G, en el que el segmento de tiempo comprende una subtrama de una trama de audio.
Clausula 135054-6G. El dispositivo de la clausula 135054-1G, en el que el segmento de tiempo comprende una muestra de tiempo de una trama de audio.
Clausula 135054-7G. El dispositivo de la clausula 135054-1G, en el que el uno o mas procesadores estan configurados para obtener una descomposicion interpolada de la primera descomposicion y la segunda descomposicion para un coeficiente armonico esferico de la primera pluralidad de coeficientes armonicos esfericos.
Clausula 135054-8G. El dispositivo de la clausula 135054-1G, en el que el uno o mas procesadores estan configurados para obtener descomposiciones interpoladas de la primera descomposicion para una primera parte de la primera pluralidad de coeficientes armonicos esfericos incluidos en la primera trama y la segunda
5
10
15
20
25
30
35
40
45
50
55
60
65
descomposicion para una segunda parte de la segunda pluralidad de coeficientes armonicos esfericos incluidos en la segunda trama, en el que el uno o mas procesadores estan configurados ademas para aplicar las descomposiciones interpoladas a un primer componente de tiempo de la primera parte de la primera pluralidad de coeficientes armonicos esfericos incluidos en la primera trama para generar un primer componente artificial de tiempo de la primera pluralidad de coeficientes armonicos esfericos y aplicar las respectivas descomposiciones interpoladas a un segundo componente de tiempo de la segunda parte de la segunda pluralidad de coeficientes armonicos esfericos incluidos en la segunda trama para generar un segundo componente artificial de tiempo de la segunda pluralidad de coeficientes armonicos esfericos incluidos.
Clausula 135054-9G. El dispositivo de la clausula 135054-8G, en el que el primer componente de tiempo se genera realizando una sfntesis basada en vectores con respecto a la primera pluralidad de coeficientes armonicos esfericos.
Clausula 135054-10G. El dispositivo de la clausula 135054-8G, en el que el segundo componente de tiempo se genera realizando una sfntesis basada en vectores con respecto a la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-11G. El dispositivo de la clausula 135054-8G, en el que el uno o mas procesadores estan configurados ademas para recibir el primer componente artificial de tiempo y el segundo componente artificial de tiempo, calcular las descomposiciones interpoladas de la primera descomposicion para la primera parte de la primera pluralidad de coeficientes armonicos esfericos y la segunda descomposicion para la segunda parte de la segunda pluralidad de coeficientes armonicos esfericos, y aplicar inversos de las descomposiciones interpoladas al primer componente artificial de tiempo para recuperar el componente de primer tiempo y al segundo componente artificial de tiempo para recuperar el segundo componente de tiempo.
Clausula 135054-12G. El dispositivo de la clausula 135054-1G, en el que el uno o mas procesadores estan configurados para interpolar un primer componente espacial de la primera pluralidad de coeficientes armonicos esfericos y el segundo componente espacial de la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-13G. El dispositivo de la clausula 135054-12G, en el que el primer componente espacial comprende una primera matriz U representativa de los vectores singulares izquierdos de la primera pluralidad de coeficientes armonicos esfericos.
Clausula 135054-14G. El dispositivo de la clausula 135054-12G, en el que el segundo componente espacial comprende una segunda matriz U representativa de los vectores singulares izquierdos de la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-15G. El dispositivo de la clausula 135054-12G, en el que el primer componente espacial es representativo de M segmentos temporales de coeficientes armonicos esfericos para la primera pluralidad de coeficientes armonicos esfericos y el segundo componente espacial es representativo de M segmentos temporales de coeficientes armonicos esfericos para la segunda pluralidad de los coeficientes armonicos esfericos.
Clausula 135054-16G. El dispositivo de la clausula 135054-12G, en el que el primer componente espacial es representativo de M segmentos temporales de coeficientes armonicos esfericos para la primera pluralidad de coeficientes armonicos esfericos y el segundo componente espacial es representativo de M segmentos temporales de coeficientes armonicos esfericos para la segunda pluralidad de coeficientes armonicos esfericos y en el que uno o mas procesadores estan configurados para obtener los coeficientes armonicos esfericos interpolados descompuestos para el segmento de tiempo comprende interpolar los ultimos N elementos del primer componente espacial y los primeros N elementos del segundo componente espacial.
Clausula 135054-17G. El dispositivo de la clausula 135054-1G, en el que la segunda pluralidad de coeficientes armonicos esfericos es posterior a la primera pluralidad de coeficientes armonicos esfericos en el dominio de tiempo.
Clausula 135054-18G. El dispositivo de la clausula 135054-1G, en el que el uno o mas procesadores estan configurados ademas para descomponer la primera pluralidad de coeficientes armonicos esfericos para generar la primera descomposicion de la primera pluralidad de coeficientes armonicos esfericos.
Clausula 135054-19G. El dispositivo de la clausula 135054-1G, en el que el uno o mas procesadores estan configurados ademas para descomponer la segunda pluralidad de coeficientes armonicos esfericos para generar la segunda descomposicion de la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-20G. El dispositivo de la clausula 135054-1G, en el que el uno o mas procesadores estan configurados ademas para realizar una descomposicion en valores singulares con respecto a la primera pluralidad de coeficientes armonicos esfericos para generar una matriz U representativa de los vectores
5
10
15
20
25
30
35
40
45
50
55
60
65
singulares izquierdos de la primera pluralidad de coeficientes armonicos esfericos, una matriz S representativa de los valores singulares de la primera pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la primera pluralidad de coeficientes armonicos esfericos.
Clausula 135054-21G. El dispositivo de la clausula 135054-1G, en el que el uno o mas procesadores estan configurados ademas para realizar una descomposicion en valores singulares con respecto a la segunda pluralidad de coeficientes armonicos esfericos para generar una matriz U representativa de los vectores singulares izquierdos de la segunda pluralidad de coeficientes armonicos esfericos, una matriz S representativa de los valores singulares de la segunda pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-22G. El dispositivo de la clausula 135054-1G, en el que la primera y la segunda pluralidad de coeficientes armonicos esfericos representan, cada una, una representacion de onda plana del campo sonoro.
Clausula 135054-23G. El dispositivo de la clausula 135054-1G, en el que la primera y la segunda pluralidad de coeficientes armonicos esfericos representan cada uno uno o mas objetos monoaudio mezclados entre si.
Clausula 135054-24G. El dispositivo de la clausula 135054-1G, en el que la primera y la segunda pluralidad de coeficientes armonicos esfericos comprenden cada uno un primer y segundo coeficientes armonicos esfericos respectivos que representan un campo sonoro tridimensional.
Clausula 135054-25G. El dispositivo de la clausula 135054-1G, en el que la primera y la segunda pluralidad de coeficientes armonicos esfericos estan asociadas cada una con al menos una funcion de base esferica que tiene un orden mayor que uno.
Clausula 135054-26G. El dispositivo de la clausula 135054-1G, en el que la primera y la segunda pluralidad de coeficientes armonicos esfericos estan asociadas cada una con al menos una funcion de base esferica que tiene un orden igual a cuatro.
Clausula 135054-27G. El dispositivo de la clausula 135054-1G, en el que la interpolacion es una interpolacion ponderada de la primera descomposicion y segunda descomposicion, en la que los pesos de la interpolacion ponderada aplicada a la primera descomposicion son inversamente proporcionales a un tiempo representado por vectores de la primera y segunda descomposicion y en la que los pesos de la interpolacion ponderada aplicada a la segunda descomposicion son proporcionales a un tiempo representado por vectores de la primera y segunda descomposicion.
Clausula 135054-28G. El dispositivo de la clausula 135054-1G, en el que los coeficientes armonicos esfericos interpolados descompuestos suavizan al menos uno de los componentes espaciales y componentes temporales de la primera pluralidad de coeficientes armonicos esfericos y la segunda pluralidad de coeficientes armonicos esfericos.
Las Figs. 40A-40J son cada una un diagrama de bloques que ilustra ejemplos de dispositivos de codificacion de audio 510A-510J que pueden realizar diversos aspectos de las tecnicas descritas en esta descripcion para comprimir coeficientes armonicos esfericos que describen campos sonoros bidimensionales o tridimensionales. En los ejemplos de las Fig. 40A a 40J, los dispositivos de codificacion de audio 510A y 510B representan, en algunos ejemplos, cualquier dispositivo capaz de codificar datos de audio, tales como un ordenador de sobremesa, un ordenador portatil, una estacion de trabajo, una tableta o un ordenador de pizarra, un dispositivo de grabacion de audio dedicado, un telefono movil (incluidos los llamados "telefonos inteligentes"), un dispositivo de reproductor multimedia personal, un dispositivo de juego personal o cualquier otro tipo de dispositivo capaz de codificar datos de audio.
Aunque se muestra como un dispositivo unico, es decir, los dispositivos 510A-510J en los ejemplos de las Figs. 40A a 40J, los diversos componentes o unidades a los que se hace referencia a continuacion como incluidos en los dispositivos 510A-510J pueden en realidad formar dispositivos separados que son externos a los dispositivos 510A- 510j. En otras palabras, aunque se describe en esta descripcion como realizada por un solo dispositivo, es decir, los dispositivos 510A-510J en los ejemplos de las Figs. 40A a 40J, las tecnicas pueden ser implementadas o realizadas de otro modo por un sistema que comprende multiples dispositivos, donde cada uno de estos dispositivos puede incluir cada uno uno o mas de los diversos componentes o unidades descritos con mas detalle a continuacion. En consecuencia, las tecnicas no deben limitarse a los ejemplos de la Fig. 40A - 40J.
En algunos ejemplos, los dispositivos de codificacion de audio 510A-510J representan dispositivos de codificacion de audio alternativos a los descritos anteriormente con respecto a los ejemplos de las Figs. 3 y 4. A lo largo de la siguiente descripcion de dispositivos de codificacion de audio 510A-510J se observan diversas similitudes en terminos de funcionamiento con respecto a las diversas unidades 30-52 del dispositivo de codificacion de audio 20 descrito anteriormente con respecto a la Fig. 4. En muchos aspectos, los dispositivos de codificacion de audio 510A- 510J pueden, como se describe mas adelante, operar de una manera sustancialmente similar al dispositivo de
5
10
15
20
25
30
35
40
45
50
55
60
65
codificacion de audio 20 aunque con ligeras derivaciones o modificaciones.
Como se muestra en el ejemplo de la Fig. 40A, el dispositivo de codificacion de audio 510A comprende una unidad de compresion de audio 512, una unidad de codificacion de audio 514 y una unidad de generacion del flujo de bits 516. La unidad de compresion de audio 512 puede representar una unidad que comprime los coeficientes armonicos esfericos (SHC) 511 ("SHC 511"), que tambien se pueden designar como coeficientes ambisonicos de orden superior (HOA) 511. La unidad de compresion de audio 512 puede en algunos casos, la unidad de compresion de audio 512 representar una unidad que puede comprimir sin perdidas o realizar compresion con perdida con respecto a los SHC 511. Los SHC 511 pueden representar una pluralidad de SHC, donde al menos uno de la pluralidad de SHC corresponde a una funcion de base esferica que tiene un orden mayor que uno (donde los SHC de esta variedad se denominan ambisonicos de orden superior (HOA) para distinguirse de los ambisonicos de orden inferior de los cuales un ejemplo es el llamado "formato B"), como se describe con mas detalle anteriormente. Si bien la unidad de compresion de audio 512 puede comprimir los SHC 511 sin perdidas, en algunos ejemplos, la unidad de compresion de audio 512 elimina las de los SHC 511 que no son relevantes o relevantes para describir el campo sonoro cuando se reproducen (en que algunas no pueden ser escuchados por el sistema auditivo humano). En este sentido, la naturaleza con perdidas de esta compresion no puede afectar excesivamente la calidad percibida del campo sonoro cuando se reproduce a partir de la version comprimida de los SHC 511.
En el ejemplo de la Fig. 40A, la unidad de compresion de audio incluye una unidad de descomposicion 518 y una unidad de extraccion de componentes del campo sonoro 520. La unidad de descomposicion 518 puede ser similar a la unidad de transformada reversible lineal 30 del dispositivo de codificacion de audio 20. Es decir, la unidad de descomposicion 518 puede representar una unidad configurada para realizar una forma de analisis denominada descomposicion en valores singulares. Aunque se describe con respecto a la SVD, las tecnicas pueden realizarse con respecto a cualquier transformacion o descomposicion similar que proporcione conjuntos de datos linealmente no correlacionados. Tambien, la referencia a "conjuntos" en esta descripcion pretende referirse a conjuntos "distintos de cero" a menos que se indique especfficamente lo contrario y no se pretende referirse a la definicion matematica clasica de conjuntos que incluye el denominado "conjunto vacfo."
En cualquier caso, la unidad de descomposicion 518 realiza una descomposicion en valores singulares (que, de nuevo, se puede designar por su inicialismo "SVD") para transformar los coeficientes armonicos esfericos 511 en dos o mas conjuntos de coeficientes armonicos esfericos transformados. En el ejemplo de la Fig. 40, la unidad de descomposicion 518 puede realizar la SVD con respecto a los SHC 511 para generar una matriz V llamada 519, una matriz S 519B y una matriz U 519C. En el ejemplo de la Fig. 40, la unidad de descomposicion 518 emite cada una de las matrices por separado en lugar de emitir los vectores US[A] en forma combinada como se ha tratado anteriormente con respecto a la unidad de transformada lineal reversible 30.
Como se ha indicado anteriormente, la matriz V* en la expresion matematica SVD mencionada anteriormente se designa como transposicion conjugada de la matriz V para reflejar que la SVD se puede aplicar a matrices que comprenden numeros complejos. Cuando se aplica a matrices que comprenden solo numeros reales, el conjugado complejo de la matriz V (o, en otras palabras, la matriz V*) puede considerarse igual a la matriz V. A continuacion se supone, para facilitar la ilustracion, que los SHC 511 comprenden numeros reales con el resultado de que la matriz V se emite a traves de SVD en lugar de la matriz V*. Aunque se supone que es la matriz V, las tecnicas pueden aplicarse de una manera similar a los SHC 511 que tienen coeficientes complejos, donde la salida de la SVD es la matriz V*. Por consiguiente, las tecnicas no deberfan limitarse a este respecto a proporcionar solamente la aplicacion de SVD para generar una matriz V, sino que pueden incluir la aplicacion de SVD a los SHC 511 que tienen componentes complejos para generar una matriz V*.
En cualquier caso, la unidad de descomposicion 518 puede realizar una forma en bloque de SVD con respecto a cada bloque (que puede referirse a una trama) de datos de audio ambisonicos (HOA) de orden superior (donde estos datos de audio ambisonicos incluyen bloques o muestras de los SHC 511 o cualquier otra forma de datos de audio multicanal). Se puede utilizar una variable M para indicar la longitud de una trama de audio en muestras. Por ejemplo, cuando una trama de audio incluye 1024 muestras de audio, M es igual a 1024. La unidad de descomposicion 518 puede realizar por lo tanto una SVD en bloque con respecto a un bloque, los SHC 511 que tiene M-by-(N+1)2 sHc, donde N, nuevamente, indica el orden de los datos de audio HOA. La unidad de descomposicion 518 puede generar, mediante la realizacion de esta SVD, la matriz V 519, la matriz S 519B y la matriz U 519C, donde cada una de las matrices 519-519C ("matrices 519") puede representar las respectivas matrices V, S y U descritas en mas detalle arriba. La unidad de descomposicion 518 puede pasar o emitir estas matrices 519A a la unidad de extraccion de componentes del campo sonoro 520. La matriz V 519A puede ser de tamano (N+1)2 por (N+1)2, la matriz S 519B puede ser de tamano (N+1)2 por (N+1)2 y la matriz U puede ser de tamano M por (N+1)2, donde M se refiere al numero de muestras en una trama de audio. Un valor tfpico para M es 1024, aunque las tecnicas de esta descripcion no deben limitarse a este valor tfpico para M.
La unidad de extraccion de componentes del campo sonoro 520 puede representar una unidad configurada para determinar y luego extraer componentes distintos del campo sonoro y componentes de fondo del campo sonoro, separando eficazmente los distintos componentes del campo sonoro de los componentes de fondo del campo sonoro. A este respecto, la unidad de extraccion de componentes del campo sonoro 520 puede realizar muchas de
5
10
15
20
25
30
35
40
45
50
55
60
65
las operaciones descritas anteriormente con respecto a la unidad de analisis del campo sonoro 44, la unidad de seleccion de fondo 48 y la unidad de seleccion del primer plano 36 del dispositivo de codificacion de audio 20 que se muestra en el ejemplo de la Fig. 4. Dado que los distintos componentes del campo sonoro, en algunos ejemplos, requieren funciones de orden superior (relativas a los componentes de fondo del campo sonoro) (y por lo tanto mas SHC) para representar con precision la naturaleza distinta de estos componentes, separar los distintos componentes de los componentes de fondo puede permitir que se asignen mas bits a los componentes distintos y se asignen menos bits (relativamente, hablando) a los componentes de fondo. Por consiguiente, a traves de la aplicacion de esta transformacion (en forma de SVD o cualquier otra forma de transformacion, incluyendo PCA), las tecnicas descritas en esta descripcion pueden facilitar la asignacion de bits a varios SHC y, por lo tanto, la compresion de los SHC 511.
Ademas, las tecnicas tambien pueden permitir, como se describe con mas detalle a continuacion con respecto a la Fig. 40B, la reduccion del orden de los componentes de fondo del campo sonoro dado que las funciones de base de orden superior no son, en algunos ejemplos, necesarias para representar estas partes de fondo del campo sonoro dada la naturaleza difusa o de fondo de estos componentes. Por lo tanto, las tecnicas pueden permitir la compresion de aspectos difusos o de fondo del campo sonoro mientras que se preservan los componentes o aspectos distintos relevantes del campo sonoro mediante la aplicacion de SVD a los sHc 511.
Como se muestra adicionalmente en el ejemplo de la Fig. 40, la unidad de extraccion de componentes del campo sonoro 520 incluye una unidad de transposicion 522, una unidad de analisis de componentes relevantes 524 y una unidad de matematicas 526. La unidad de transposicion 522 representa una unidad configurada para transponer la matriz V 519A para generar una transposicion de la matriz V 519, que se designa como "matriz V T 523". La unidad de transposicion 522 puede emitir esta matriz VT 523 a la unidad matematica 526. La matriz VT 523 puede ser de tamano (N+1)2 por (N+1)2
La unidad de analisis de componentes relevantes 524 representa una unidad configurada para realizar un analisis de relevancia con respecto a la matriz S 519B. La unidad de analisis de componentes relevantes 524 puede, a este respecto, realizar operaciones similares a las descritas anteriormente con respecto a la unidad de analisis del campo sonoro 44 del dispositivo de codificacion de audio 20 que se muestra en el ejemplo de la Fig. 4. La unidad de analisis de componentes relevantes 524 puede analizar los valores diagonales de la matriz S 519B, seleccionando un numero variable D de estos componentes que tienen el valor mas alto. En otras palabras, la unidad de analisis de componentes relevantes 524 puede determinar el valor D, que separa los dos subespacios (por ejemplo, el subespacio de primer plano o predominante y el subespacio de fondo o ambiente), analizando la pendiente de la curva creada por los valores diagonales descendentes de S, donde los grandes valores singulares representan sonidos de primer plano o distintos y los valores de bajo singular representan componentes de fondo del campo sonoro. En algunos ejemplos, la unidad de analisis de componentes relevantes 524 puede utilizar una primera y una segunda derivada de la curva de valor singular. La unidad de analisis de componentes relevantes 524 puede limitar tambien el numero D a estar entre uno y cinco. Como otro ejemplo, la unidad de analisis de componentes relevantes 524 puede limitar el numero D a estar entre uno y (N+1)2. Alternativamente, la unidad de analisis de componentes relevantes 524 puede predefinir el numero D, tal como a un valor de cuatro. En cualquier caso, una vez que se ha estimado el numero D, la unidad 24 de analisis de componentes relevantes extrae el subespacio de primer plano y fondo de las matrices U, V y S.
En algunos ejemplos, la unidad de analisis de componentes relevantes 524 puede realizar este analisis cada M muestras, las cuales pueden ser reestructuradas como una base de trama por trama. A este respecto, D puede variar de trama a trama. En otros ejemplos, la unidad de analisis de componentes relevantes 24 puede realizar este analisis mas de una vez por trama, analizando dos o mas partes de la trama. Por consiguiente, las tecnicas no deben estar limitadas a este respecto a los ejemplos descritos en esta descripcion.
En efecto, la unidad de analisis de componentes relevantes 524 puede analizar los valores singulares de la matriz diagonal, que se designa como matriz S 519B en el ejemplo de la Fig. 40, identificando aquellos valores que tienen un valor relativo mayor que los otros valores de la matriz diagonal S 519B. La unidad de analisis de componentes relevantes 524 puede identificar valores D, extrayendo estos valores para generar la matriz Sdist 525A y la matriz Sbg 525B. La matriz Sdist 525A puede representar una matriz diagonal que comprende columnas D que tienen (N+1)2 de la matriz S original 519B. En algunos casos, la matriz Sbg 525B puede representar una matriz que tiene (N+1)2-D columnas, cada una de las cuales incluye (N+1)2 coeficientes armonicos esfericos transformados de la matriz S original 519B. Aunque se describe como una matriz Sdist que representa una matriz que comprende columnas D que tienen valores (N+1)2 de la matriz S original 519B, la unidad de analisis de componentes relevantes 524 puede truncar esta matriz para generar una matriz Sdist que tiene D columnas que tienen D valores de la matriz S original 519B, dado que la matriz S 519B es una matriz diagonal y los valores (N+1)2 de las D columnas despues del Davo en cada columna es a menudo un valor de cero. Aunque se describe con respecto a una matriz Sdist completa 525A y una matriz Sbg completa 525B, las tecnicas pueden implementarse con respecto a versiones truncadas de esta matriz Sdist 525A y una version truncada de esta matriz Sbg525B. Por consiguiente, las tecnicas de esta descripcion no deben estar limitadas a este respecto.
En otras palabras, la matriz Sdist 525A puede tener un tamano de D por (N+1)2, mientras que la matriz Sbg 525B
5
10
15
20
25
30
35
40
45
50
55
60
65
puede tener un tamano de (N+1)2-D por (N+1)2. La matriz Sdist 525A puede incluir aquellos componentes principales o, en otras palabras, valores singulares que se determinan como relevantes en terminos de componentes de audio distintos (DIST) del campo sonoro, mientras que la matriz Sbg 525B puede incluir aquellos valores singulares que se determinan como fondo (bg) o, en otras palabras, componentes de audio ambiental o no distinto del campo sonoro. Aunque 525A y 525B se muestran como matrices separadas en el ejemplo de la Fig. 40, las matrices 525A y 525B pueden especificarse como una matriz unica utilizando la variable D para indicar el numero de columnas (de izquierda a derecha) de esta unica matriz que representa la matriz Sdist 525. En algunos ejemplos, la variable D puede establecerse en cuatro.
La unidad de analisis de componentes relevantes 524 tambien puede analizar la matriz U 519C para generar la matriz Udist 525C y la matriz Ubg 525D. A menudo, la unidad de analisis de componentes relevantes 524 puede analizar la matriz S 519B para identificar la variable D, generando la matriz Udist 525c y la matriz Ubg 525B basada en la variable D. Es decir, despues de identificar las columnas D de la matriz S 519B que son relevantes, la unidad de analisis de componentes relevantes 524 puede dividir la matriz U 519C en base a esta variable D determinada. En este caso, la unidad de analisis de componentes relevantes 524 puede generar la matriz Udist 525C para incluir las D columnas (de izquierda a derecha) de los (N+1)2 coeficientes armonicos esfericos transformados de la matriz U original 519C y la matriz Ubg 525D para incluir las columnas restantes (N+1)2-D de los (N+1)2 coeficientes armonicos esfericos transformados de la matriz U original 519C. La matriz Udist 525C puede tener un tamano de M por D, mientras que la matriz U bg 525D puede tener un tamano de M por (N+1)2-D. Aunque 525C y 525D se muestran como matrices separadas en el ejemplo de la Fig. 40, las matrices 525C y 525D pueden especificarse como una matriz unica utilizando la variable D para indicar el numero de columnas (de izquierda a derecha) de esta unica matriz que representa la matriz Udist 525B.
La unidad de analisis de componentes relevantes 524 tambien puede analizar la matriz VT 523 para generar la matriz VTdist 525E y la matriz VT bg 525F. A menudo, la unidad de analisis de componentes relevantes 524 puede analizar la matriz S 519B para identificar la variable D, generando la matriz VTdist 525E y la matriz Vbg 525F basada en la variable D. Es decir, despues de identificar las columnas D de la matriz S 519B que son relevantes, la unidad de analisis de componentes relevantes 254 puede dividir la matriz V 519A en base a esta variable determinada D. En este caso, la unidad de analisis de componentes relevantes 524 puede generar la matriz VTdist 525E para incluir las (N+1)2 filas (de arriba a abajo) de los D valores de la matriz original VT 523 y de la matriz VTbg 525F para incluir las restantes (N+1)2 filas de los (N+1)2-D valores de la matriz VT original 523. La matriz VTdist 525E puede tener un tamano de (N+1)2 por D, mientras que la matriz VTbg 525D puede tener un tamano de (N+1)2 por (N+1)2-D. Aunque se muestran como matrices separadas 525E y 525F en el ejemplo de la Fig. 40, las matrices 525E y 525F pueden especificarse como una matriz unica utilizando la variable D para indicar el numero de columnas (de izquierda a derecha) de esta unica matriz que representa la matriz Vdist 525E. La unidad de analisis de componentes relevantes 524 puede emitir la matriz Sdist 525, la matriz Sbg 525B, la matriz Udist 525C, la matriz Ubg 525D y la matriz VTbg 525F en la unidad matematica 526, al mismo tiempo que emite la matriz VTdist 525E a la unidad de generacion del flujo de bits 516.
La unidad matematica 526 puede representar una unidad configurada para realizar multiplicaciones matriciales o cualquier otra operacion matematica capaz de realizarse con respecto a una o mas matrices (o vectores). Mas especfficamente, como se muestra en el ejemplo de la Fig. 40, la unidad matematica 526 puede representar una unidad configurada para realizar una multiplicacion matricial para multiplicar la matriz Udist 525C por la matriz Sdist 525A para generar los vectores Udist * Sdist 527 de tamano M por D. La unidad matematica matricial 526 tambien puede representar una unidad configurada para realizar una multiplicacion matricial para multiplicar la matriz Ubg 525D por la matriz Sbg 525B y luego por la matriz VTbg 525F para generar la matriz Ubg * Sbg * VTbg 525F para generar coeficientes armonicos esfericos de fondo 531 de tamano M por (N+1)2 (que pueden representar los de los coeficientes armonicos esfericos 511 representativos de los componentes de fondo del campo sonoro). La unidad matematica 526 puede emitir los vectores Udist * Sdist 527 y los coeficientes armonicos esfericos de fondo 531 a la unidad de codificacion de audio 514.
El dispositivo de codificacion de audio 510 difiere por lo tanto del dispositivo de codificacion de audio 20 en que el dispositivo de codificacion de audio 510 incluye esta unidad de matematicas 526 configurada para generar los vectores Udist * Sdist 527 y los coeficientes armonicos esfericos de fondo 531 a traves de la multiplicacion matricial al final del proceso de codificacion. La unidad de transformacion lineal reversible 30 del dispositivo de codificacion de audio 20 realiza la multiplicacion de las matrices U y S para emitir los vectores US[^j 33 en el comienzo relativo del proceso de codificacion, lo que puede facilitar las operaciones posteriores, tales como la reordenacion, que no que se muestra en el ejemplo de la Fig. 40. Ademas, el dispositivo de codificacion de audio 20, en lugar de recuperar los SHC de fondo 531 al final del proceso de codificacion, selecciona los coeficientes HOA de fondo 47 directamente a partir de los coeficientes HOA 11, potencialmente evitando de este modo multiplicaciones matriciales para recuperar los SHC de fondo 531.
La unidad de codificacion de audio 514 puede representar una unidad que realiza una forma de codificacion para comprimir adicionalmente los vectores Udist * Sdist 527 y los coeficientes armonicos esfericos de fondo 531. La unidad de codificacion de audio 514 puede operar de una manera sustancialmente similar a la unidad codificadora de audio psicoacustico 40 del dispositivo de codificacion de audio 20 que se muestra en el ejemplo de la Fig. 4. En
5
10
15
20
25
30
35
40
45
50
55
60
65
algunos casos, esta unidad de codificacion de audio 514 puede representar una o mas instancias de una unidad
codificadora de codificacion de audio avanzada (AAC). La unidad de codificacion de audio 514 puede codificar cada
columna o fila de los vectores Udist * Sdist 527. A menudo, la unidad de codificacion de audio 514 puede invocar una instancia de una unidad de codificacion AAC para cada una de las combinaciones de orden/suborden que permanecen en los coeficientes armonicos esfericos de fondo 531. Se puede encontrar mas informacion sobre como se pueden codificar los coeficientes armonicos esfericos de fondo 531 utilizando una unidad de codificacion AAC en un documento de convencion de Eric Hellerud y col., titulado "Encoding Higher Order Ambisonics with AAC",
presentado en la 124a Convencion de 2008 el 17-20 de mayo y disponible en:

http://ro.uow.edu.au/cgi/viewcontent.cgi?article=8025 &context=engpapers. La unidad de codificacion de audio 14 puede emitir una version codificada de los vectores Udist *Sdist 527 (denominados "vectores Udist* Sdist codificados 515") y una version codificada de los coeficientes armonicos esfericos de fondo 531 (denominados "coeficientes armonicos esfericos de fondo codificados 515B ") a la unidad de generacion del flujo de bits 516. En algunos casos, la unidad de codificacion de audio 514 puede codificar en audio los coeficientes armonicos esfericos de fondo 531 utilizando una velocidad de bits objetivo inferior a la utilizada para codificar los vectores Udist * Sdist 527, de este modo comprimiendo potencialmente mas los coeficientes armonicos esfericos de fondo 531 en comparacion con los vectores Udist *S dist 527.
La unidad de generacion del flujo de bits 516 representa una unidad que formatea datos para ajustarse a un formato conocido (que puede referirse a un formato conocido por un dispositivo de decodificacion), generando de este modo el flujo de bits 517. La unidad de generacion del flujo de bits 42 puede operar de una manera sustancialmente similar a la descrita anteriormente con respecto a la unidad de generacion del flujo de bits 42 del dispositivo de codificacion de audio 24 que se muestra en el ejemplo de la Fig. 4. La unidad de generacion del flujo de bits 516 puede incluir un multiplexor que multiplexa los vectores codificados Udist * Sdist 515, los coeficientes armonicos esfericos de fondo codificados 515B y la matriz VTdist 525E.
La Fig. 40B es un diagrama de bloques que ilustra un ejemplo de dispositivo de codificacion de audio 510B que puede realizar diversos aspectos de las tecnicas descritas en esta descripcion para comprimir los coeficientes armonicos esfericos que describen campos sonoros bidimensionales o tridimensionales. El dispositivo de codificacion de audio 510B puede ser similar al dispositivo de codificacion de audio 510 en que el dispositivo de codificacion de audio 510B incluye una unidad de compresion de audio 512, una unidad de codificacion de audio 514 y una unidad de generacion del flujo de bits 516. Ademas, la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510B puede ser similar a la del dispositivo de codificacion de audio 510 en que la unidad de compresion de audio 512 incluye una unidad de descomposicion 518. La unidad de compresion de audio 512 del dispositivo de codificacion de audio 510B puede diferir de la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510 porque la unidad de extraccion de los componentes del campo sonoro 520 incluye una unidad adicional designada como unidad de reduccion del orden 528A "). Por esta razon, la unidad de extraccion de componentes del campo sonoro 520 del dispositivo de codificacion de audio 510B se designa como "unidad de extraccion de componentes del campo sonoro 520B".
La unidad de reduccion del orden 528A representa una unidad configurada para realizar una reduccion del orden adicional de los coeficientes armonicos esfericos de fondo 531. En algunos casos, la unidad de reduccion del orden 528A puede girar el campo sonoro representado los coeficientes armonicos esfericos de fondo 531 para reducir el numero de los coeficientes armonicos esfericos de fondo 531 necesarios para representar el campo sonoro. En algunos casos, dado que los coeficientes armonicos esfericos de fondo 531 representan componentes de fondo del campo sonoro, la unidad de reduccion del orden 528A puede borrar, eliminar o suprimir de otro modo (a menudo por reduccion a cero) los de los coeficientes armonicos esfericos de fondo correspondientes a las funciones de base esferica y orden superior. A este respecto, la unidad de reduccion del orden 528A puede realizar operaciones similares a la unidad de seleccion de fondo 48 del dispositivo de codificacion de audio 20 que se muestra en el ejemplo de la Fig. 4. La unidad de reduccion del orden 528A puede emitir una version reducida de los coeficientes armonicos esfericos de fondo 531 (designados como "coeficientes armonicos esfericos de fondo reducidos 529") a la unidad de codificacion de audio 514, que pueden realizar la codificacion en audio de la manera descrita anteriormente para codificar los coeficientes armonicos esfericos de fondo reducidos 529 y, de este modo, generar los coeficientes armonicos esfericos de fondo reducidos codificados 515B.
Las diversas clausulas enumeradas a continuacion pueden presentar diversos aspectos de las tecnicas descritas en esta descripcion.
Clausula 132567-1. Un dispositivo tal como el dispositivo de codificacion de audio 510 o el dispositivo de codificacion de audio 510B, que comprende: uno o mas procesadores configurados para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos de un campo sonoro para generar una matriz U representativa de los vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de los valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y representar la pluralidad de coeficientes armonicos esfericos como una funcion de al menos una parte de, una o mas, de la matriz U, la matriz S y la matriz V.
5
10
15
20
25
30
35
40
45
50
55
60
65
Clausula 132567-2. El dispositivo de la clausula 132567-1, en el que el uno o mas procesadores estan configurados ademas para generar un flujo de bits para incluir la representacion de la pluralidad de coeficientes armonicos esfericos como uno o mas vectores de la matriz U, la matriz S y la matriz V incluyendo combinaciones de las mismas o derivadas de las mismas.
Clausula 132567-3. El dispositivo de la clausula 132567-1, en el que el uno o mas procesadores estan configurados adicionalmente para, al representar la pluralidad de coeficientes armonicos esfericos, determinar uno o mas vectores Udist incluidos dentro de la matriz U que describen componentes distintos del campo sonoro.
Clausula 132567-4. El dispositivo de la clausula 132567-1, en el que el uno o mas procesadores estan configurados adicionalmente para, al representar la pluralidad de coeficientes armonicos esfericos, determinar uno o mas vectores Udist incluidos dentro de la matriz U que describen componentes distintos del campo sonoro, determinar uno o mas vectores Sdist incluidos dentro de la matriz S que tambien describen los distintos componentes del campo sonoro y multiplican uno o mas vectores Udist y uno o mas uno o mas vectores Sdist para generar vectores Udist * Sdist.
Clausula 132567-5. El dispositivo de la clausula 132567-1, en el que el uno o mas procesadores estan configurados adicionalmente para, al representar la pluralidad de coeficientes armonicos esfericos, determinar uno o mas vectores Udist, incluidos dentro de la matriz U que describen componentes distintos del campo sonoro, determinar uno o mas vectores Sdist incluidos dentro de la matriz S que tambien describen los distintos componentes del campo sonoro y multiplicar uno o mas vectores Udist y uno o mas uno o mas vectores Sdist para generar uno o mas Udist * Sdist, y en el que el uno o mas procesadores estan configurados adicionalmente para codificar en audio uno o mas vectores Udist * Sdist para generar una version codificada en audio de uno o mas vectores Udist* Sdist.
Clausula 132567-6. El dispositivo de la clausula 132567-1, en el que el uno o mas procesadores estan configurados adicionalmente para, al representar la pluralidad de coeficientes armonicos esfericos, determinar uno o mas vectores Ubg incluidos dentro de la matriz U.
Clausula 132567-7. El dispositivo de la clausula 132567-1, en el que el uno o mas procesadores estan configurados adicionalmente para, al representar la pluralidad de coeficientes armonicos esfericos, analizar la matriz S para identificar componentes distintos y de fondo del campo sonoro.
Clausula 132567-8. El dispositivo de la clausula 132567-1, en el que el uno o mas procesadores estan configurados adicionalmente para, al representar la pluralidad de coeficientes armonicos esfericos, analizar la matriz S para identificar componentes distintos y de fondo del campo sonoro y determinar, basandose en el analisis de la matriz S, uno o mas vectores Udist de la matriz U que describen componentes distintos del campo sonoro y uno o mas vectores U bg de la matriz U que describen componentes de fondo del campo sonoro.
Clausula 132567-9. El dispositivo de la clausula 132567-1, en el que el uno o mas procesadores estan configurados adicionalmente para, al representar la pluralidad de coeficientes armonicos esfericos, analizar la matriz S para identificar componentes distintos y de fondo del campo sonoro en una trama de audio por trama de audio, y determinar basandose en el analisis de trama de audio por trama de audio de la matriz S, uno o mas vectores Udist de la matriz U que describen componentes distintos del campo sonoro y uno o mas vectores Ubg de la matriz U que describen los componentes de fondo del campo sonoro.
Clausula 132567-10. El dispositivo de la clausula 132567-1, en el que el uno o mas procesadores estan configurados adicionalmente para, al representar la pluralidad de coeficientes armonicos esfericos, analizar la matriz S para identificar componentes distintos y de fondo del campo sonoro, determinar, basandose en el analisis de la matriz S, uno o mas vectores Udist de la matriz U que describen componentes distintos del campo sonoro y uno o mas vectores U bg de la matriz U que describen componentes de fondo del campo sonoro, que determinan, a partir del analisis de la matriz S, uno o mas vectores Sdist y uno o mas vectores Sbg de la matriz S correspondientes a uno o mas vectores U dist y uno o mas vectores Ubg y determinar, a partir del analisis de la matriz S, uno o mas vectores VTdist y uno o mas vectores VTbg de una transposicion de la matriz V correspondiente a uno o mas vectores Udist y uno o mas vectores Ubg.
Clausula 132567-11. El dispositivo de la clausula 132567-10, en el que el uno o mas procesadores estan configurados ademas para, al representar la pluralidad de coeficientes armonicos esfericos, multiplicar uno o mas vectores Ubg por uno o mas vectores S bg y luego por uno o mas vectores VT bg para generar uno o mas vectores Ubg * Sbg * VTbg, y en el que uno o mas procesadores estan configurados adicionalmente para codificar en audio los vectores Ubg * Sbg * VTbg para generar una version codificada en audio de los vectores Ubg * Sbg * VTbg.
Clausula 132567-12. El dispositivo de la clausula 132567-10, en el que el uno o mas procesadores estan configurados ademas para, al representar la pluralidad de coeficientes armonicos esfericos, multiplicar uno o mas
5
10
15
20
25
30
35
40
45
50
55
60
65
vectores Ubg por uno o mas vectores S bg y luego por uno o mas vectores VT bg para generar uno o mas vectores Ubg * S bg * VTbg, y realizar un proceso de reduccion del orden para eliminar aquellos de los coeficientes de uno o mas vectores Ubg * Sbg * VTbg asociados con uno o mas ordenes de funciones de base armonica esferica y, de este modo, generar una version de orden reducido de uno o mas vectores Ubg * Sbg *
VTbg.
Clausula 132567-13. El dispositivo de la clausula 132567-10, en el que el uno o mas procesadores estan configurados ademas para, al representar la pluralidad de coeficientes armonicos esfericos, multiplicar uno o mas vectores Ubg por uno o mas vectores S bg y luego por uno o mas vectores VT bg para generar uno o mas vectores Ubg * Sbg * VTbg, y realizar un proceso de reduccion del orden para eliminar aquellos de los coeficientes de uno o mas vectores Ubg * Sbg * VTbg asociados con uno o mas ordenes de funciones de base armonica y esferica y, de este modo, generar una version ordenada reducida de uno o mas vectores Ubg * Sbg * VTbg, y en el que uno o mas procesadores estan configurados adicionalmente para codificar en audio la version reducida en orden de uno o mas vectores Ubg * Sbg * VTbg para generar una version codificada en audio de orden reducido de uno o mas vectores Ubg * Sbg * VTbg.
Clausula 132567-14. El dispositivo de la clausula 132567-10, en el que el uno o mas procesadores estan configurados ademas para, al representar la pluralidad de coeficientes armonicos esfericos, multiplicar uno o mas vectores Ubg por uno o mas vectores S bg y luego por uno o mas vectores VTbg para generar uno o mas vectores Ubg * Sbg * VTbg, realizar un proceso de reduccion del orden para eliminar aquellos de los coeficientes de uno o mas vectores Ubg * Sbg * VTbg asociados con uno o mas ordenes mayores que una de las funciones de base armonicas esfericas y, de este modo, generar una version de orden reducido de uno o mas vectores Ubg * Sbg * VT bg, y codificar en audio la version de orden reducido de uno o mas vectores Ubg * Sbg * VTbg para generar una version codificada en audio de uno o mas vectores U bg * Sbg * VTbg de orden reducido.
Clausula 132567-15. El dispositivo de la clausula 132567-10, en el que el uno o mas procesadores estan configurados ademas para generar un flujo de bits para incluir uno o mas vectores VTdist.
Clausula 132567-16. El dispositivo de la clausula 132567-10, en el que el uno o mas procesadores estan configurados ademas para generar un flujo de bits para incluir uno o mas vectores VTdist sin codificacion de audio de uno o mas vectores VTdist.
Clausula 132567-1F. Un dispositivo, tal como el dispositivo de codificacion de audio 510 o 510B, que comprende uno o mas procesadores para realizar una descomposicion en valores singulares con respecto a datos de audio multicanal representativos de, al menos una parte del campo sonoro para generar una matriz U representativa de los vectores singulares izquierdos de los datos de audio multicanal, una matriz S representativa de los valores singulares de los datos de audio multicanal y una matriz V representativa de los vectores singulares derechos de los datos de audio multicanal, y representar los datos de audio multicanal en funcion de, al menos una parte, de una o mas de la matriz U, la matriz S y la matriz V.
Clausula 132567-2F. El dispositivo de la clausula 132567-1F, en el que los datos de audio multicanal comprenden una pluralidad de coeficientes armonicos esfericos.
Clausula 132567-3F. El dispositivo de la clausula 132567-2F, en el que el uno o mas procesadores estan configurados adicionalmente tal como se indica mediante cualquier combinacion de las clausulas 132567-2 a 132567-16.
De cada una de las diversas clausulas descritas anteriormente, debe entenderse que cualquiera de los dispositivos de codificacion de audio 510A-510J puede realizar un procedimiento o comprender de otro modo medios para realizar cada paso del procedimiento para el cual esta configurado el dispositivo de codificacion de audio 510A-510J. En algunos casos, estos medios pueden comprender uno o mas procesadores. En algunos casos, uno o mas procesadores pueden representar un procesador de proposito especial configurado por medio de instrucciones almacenadas en un medio de almacenamiento no transitorio legible por ordenador. En otras palabras, varios aspectos de las tecnicas en cada uno de los conjuntos de ejemplos de codificacion pueden proporcionar un medio de almacenamiento no transitorio legible por ordenador que tiene almacenadas en el instrucciones que, cuando se ejecutan, hacen que uno o mas procesadores realicen el procedimiento para el cual el dispositivo de codificacion de audio 510A-510J se ha configurado para realizar.
Por ejemplo, una clausula 132567-17 puede derivarse de la clausula anterior 132567-1 como un procedimiento que comprende realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos de un campo sonoro para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y que representan la pluralidad de coeficientes armonicos esfericos en funcion de al menos una porcion de una o mas de la matriz U, la matriz S y la matriz V.
5
10
15
20
25
30
35
40
45
50
55
60
65
Como otro ejemplo, una clausula 132567-18 puede derivarse de la clausula anterior 132567-1 que es un dispositivo, tal como el dispositivo de codificacion de audio 510B, que comprende medios para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos de un campo sonoro para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y medios para representar la pluralidad de coeficientes armonicos esfericos en funcion de al menos una porcion de una o mas de la matriz U, la matriz S y la matriz V.
Como otro ejemplo, una clausula 132567-18 puede derivarse de la clausula 132567-1 anterior como un medio de almacenamiento no transitorio legible por ordenador que tiene almacenadas en el mismo instrucciones que, cuando se ejecutan, hacen que uno o mas procesadores realicen una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos de un campo sonoro para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y representan la pluralidad de coeficientes armonicos esfericos en funcion de al menos una porcion de una o mas de la matriz U, la matriz S y la matriz V.
De igual modo, pueden derivarse diversas clausulas de las clausulas 132567-2 a 132567-16 para los diversos dispositivos, procedimientos y medios de almacenamiento no transitorios legibles por ordenador derivados como se ha ilustrado anteriormente. Lo mismo puede hacerse para las otras clausulas enumeradas a lo largo de esta divulgacion.
La FIG. 40C es un diagrama de bloques que dispositivos de codificacion de audio ejemplares 510C que pueden realizar diversos aspectos de las tecnicas descritas en esta divulgacion para comprimir coeficientes armonicos esfericos que describen campos sonoros bidimensionales o tridimensionales. El dispositivo de codificacion de audio 510C puede ser similar al dispositivo de codificacion de audio 510B en que el dispositivo de codificacion de audio 510C incluye una unidad de compresion de audio 512, una unidad de codificacion de audio 514 y una unidad de generacion de flujo de bits 516. Ademas, la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510C puede ser similar a la del dispositivo de codificacion de audio 510B porque la unidad de compresion de audio 512 incluye una unidad de descomposicion 518.
Sin embargo, la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510C puede diferir de la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510B porque la unidad de extraccion de componente de campo sonoro 520 incluye una unidad adicional, indicada como unidad de reordenacion de vectores 532. Por esta razon, la unidad de extraccion de componentes del campo sonoro 520 del dispositivo de codificacion de audio 510C se denomina "unidad de extraccion de componentes del campo sonoro 520C".
La unidad de reordenacion de vectores 532 puede representar una unidad configurada para reordenar los vectores Udist * Sdist 527 para generar uno o mas vectores Udist * Sdist reordenados 533. A este respecto, la unidad de reordenacion de vectores 532 puede operar de una manera similar a la descrita anteriormente con respecto a la unidad de reordenacion 34 del dispositivo de codificacion de audio 20 mostrado en el ejemplo de la FlG. 4. La unidad de extraccion de componentes del campo sonoro 520C puede llamar a la unidad de reordenacion de vectores 532 para reordenar los vectores Udist Sdist 527 porque el orden de los vectores Udist * Sdist 527 (donde cada vector de los vectores Udist * Sdist 527 puede representar uno o mas objetos monoaudio distintos presentes en el campo sonoro) puede variar desde partes de los datos de audio por la razon indicada anteriormente. Es decir, dado que la unidad de compresion de audio 512, en algunos ejemplos, opera en estas porciones de los datos de audio denominados generalmente tramas de audio (que pueden tener M muestras de los coeficientes armonicos esfericos 511, donde M es, en algunos ejemplos, ajustado a 1024), la posicion de los vectores correspondientes a estos objetos monoaudio distintos, como se representan en la matriz U 519C a partir de la cual se derivan los vectores Udist * Sdist 527, puede variar de trama de audio a trama de audio.
El paso de estos vectores Udist * Sdist 527 directamente a la unidad de codificacion de audio 514 sin reordenar estos vectores Udist * Sdist 527 de trama de audio a trama de audio puede reducir el alcance de la compresion alcanzable para algunos esquemas de compresion, tales como la compresion heredada que se realizan mejor cuando los objetos monoaudio estan correlacionados (sentido del canal, que se define en este ejemplo por el orden de los vectores Udist * Sdist 527 uno con relacion al otro) a traves de tramas de audio. Ademas, cuando no se reordena, la codificacion de los vectores Udist * Sdist 527 puede reducir la calidad de los datos de audio cuando se recuperan. Por ejemplo, los codificadores AAC que pueden representarse en el ejemplo de la FIG. 40C por la unidad de codificacion de audio 514, pueden comprimir mas eficientemente uno o mas vectores Udist * Sdist reordenados 533 de trama a trama en comparacion con la compresion lograda al codificar directamente los vectores Udist * Sdist 527 de trama a trama. Aunque se ha descrito anteriormente con respecto a los codificadores AAC, las tecnicas pueden realizarse con respecto a cualquier codificador que proporcione mejor compresion cuando se especifican objetos monoaudio a traves de tramas en un orden o posicion especfficos (sentido del canal).
5
10
15
20
25
30
35
40
45
50
55
60
65
Como se describe con mas detalle a continuacion, las tecnicas pueden permitir que el dispositivo de codificacion de audio 510C reordene uno o mas vectores (es decir, los vectores Udist * Sdist 527 para generar uno o mas vectores reordenados Udist * Sdist 533 y asf facilitar la compresion de los vectores Udist * Sdist 527 por un codificador de audio heredado, tal como la unidad de codificacion de audio 514. El dispositivo de codificacion de audio 510C puede realizar adicionalmente las tecnicas descritas en esta divulgacion para codificar audio del uno o mas vectores Udist * Sdist reordenados 533 usando la unidad de codificacion de audio 514 para generar una version codificada 515A del uno o mas vectores Udist * Sdist reordenados 533.
Por ejemplo, la unidad de extraccion de componentes del campo sonoro 520C puede recurrir a la unidad de reordenacion de vectores 532 para reordenar uno o mas primeros vectores Udist * Sdist 527 de una primera trama de audio posterior en el tiempo con respecto a la segunda trama a la que corresponden uno o mas segundos vectores Udist * Sdist 527. Aunque se describe en el contexto de una primera trama de audio que es posterior en el tiempo a la segunda trama de audio, la primera trama de audio puede preceder en el tiempo a la segunda trama de audio. Por consiguiente, las tecnicas no deben limitarse al ejemplo descrito en esta divulgacion.
La unidad de reordenacion de vectores 532 puede realizar primero un analisis de energfa con respecto a cada uno de los primeros vectores Udist * Sdist 527 y los segundos vectores Udist * Sdist 527, calculando una energfa cuadratica media para al menos una porcion de (pero a menudo la totalidad de) la primera trama de audio y una porcion de (pero a menudo la totalidad de) una segunda trama de audio y generar asf (suponiendo que D sea cuatro) ocho energfas, una para cada uno de los primeros vectores Udist * Sdist 527 de la primera trama de audio y uno para cada uno de los segundos vectores Udist * Sdist 527 de la segunda trama de audio. La unidad de reordenacion de vectores 532 puede entonces comparar cada energfa de los primeros vectores Udist * Sdist 527 de forma giratoria contra cada uno de los segundos vectores Udist * Sdist 527 como se ha descrito anteriormente con respecto a las Tablas 1-4.
En otras palabras, cuando se usa descomposicion SVD basada en tramas (o procedimientos relacionados tales como KLT y PCA) en senales HoA, puede no garantizarse que el ordenamiento de los vectores de trama a trama sea consistente. Por ejemplo, si hay dos objetos en el campo acustico subyacente, la descomposicion (que, cuando se lleva a cabo correctamente, puede denominarse "descomposicion ideal") puede dar como resultado la separacion de los dos objetos de tal manera que un vector represente un objeto en la matriz U. Sin embargo, incluso cuando la descomposicion puede representarse como una "descomposicion ideal", los vectores pueden alternarse de posicion en la matriz U (y correspondientemente en la matriz S y V) de trama a trama. Ademas, pueden existir tambien diferencias de fase, en las que la unidad de reordenacion de vectores 532 puede invertir la fase usando inversion de fase (multiplicando por puntos cada elemento del vector invertido por menos o uno negativo). Para alimentar estos vectores, la trama por trama en el mismo "motor de codificacion AAC/Audio" puede requerir que se identifique el orden (o, en otras palabras, que las senales se emparejen), que la fase se rectifique, y que se aplique una interpolacion cuidadosa en los lfmites de trama. Sin esto, el codec de audio subyacente puede producir artefactos extremadamente discordantes incluyendo los conocidos como "difuminado temporal" o "pre-eco".
De acuerdo con diversos aspectos de las tecnicas descritas en esta divulgacion, el dispositivo de codificacion de audio 510C puede aplicar multiples metodologfas para identificar/combinar vectores, utilizando energfa y correlacion cruzada en los lfmites de trama de los vectores. El dispositivo de codificacion de audio 510C tambien puede garantizar que se corrija un cambio de fase de 180 grados -que a menudo aparece en los lfmites de trama-. La unidad de reordenacion de vectores 532 puede aplicar una forma de ventana de interpolacion de entrada en fundido/fundirse entre los vectores para asegurar una transicion suave entre las tramas.
De esta manera, el dispositivo de codificacion de audio 530C puede reordenar uno o mas vectores para generar uno o mas primeros vectores reordenados y facilitar asf la codificacion por un codificador de audio heredado, en el que uno o mas vectores describen componentes distintos de un campo sonoro, y codificacion de audio del uno o mas vectores reordenados usando el codificador de audio heredado para generar una version codificada de uno o mas vectores reordenados.
Varios aspectos de las tecnicas descritas en esta divulgacion pueden permitir que el dispositivo de codificacion de audio 510C funcione de acuerdo con las siguientes clausulas.
Clausula 133143-1A. Un dispositivo, tal como el dispositivo de codificacion de audio 510C, que comprende: uno o mas procesadores configurados para realizar una comparacion de energfa entre uno o mas primeros vectores y uno o mas segundos vectores para determinar uno o mas primeros vectores reordenados y facilitar la extraccion de uno o ambos del uno o mas primeros vectores y el uno o mas segundos vectores, en el que uno o mas primeros vectores describen componentes distintos de un campo sonoro en una primera porcion de datos de audio y el uno o mas segundos vectores describen componentes distintos de un campo sonoro en una segunda porcion de los datos de audio.
Clausula 133143-2A. El dispositivo de la clausula 133143-1A, en el que el uno o mas primeros vectores no representan componentes de fondo del campo sonoro en la primera porcion de los datos de audio, y en el que uno o mas segundos vectores no representan componentes de fondo del campo sonoro en la segunda porcion
5
10
15
20
25
30
35
40
45
50
55
60
65
de los datos de audio.
Clausula 133143-3A. El dispositivo de la clausula 133143-1A, en el que el uno o mas procesadores estan configurados adicionalmente para, despues de realizar la comparacion de energfa, realizar una correlacion cruzada entre uno o mas primeros vectores y uno o mas segundos vectores para identificar el uno o mas primeros vectores que se correlacionan con el uno o mas segundos vectores.
Clausula 133143-4A. El dispositivo de la clausula 133143-1A, en el que el uno o mas procesadores estan configurados adicionalmente para descartar uno o mas de los segundos vectores basados en la comparacion de energfa para generar uno o mas segundos vectores reducidos que tienen menos vectores que el uno o mas segundos vectores, realizar una correlacion cruzada entre al menos uno del uno o mas primeros vectores y el uno o mas segundos vectores reducidos para identificar uno del uno o mas segundos vectores reducidos que se correlaciona con al menos uno del uno o mas primeros vectores, y reordenar al menos uno del uno o mas primeros vectores basandose en la correlacion cruzada para generar el uno o mas de los primeros vectores reordenados.
Clausula 133143-5A. El dispositivo de la clausula 133143-1A, en el que el uno o mas procesadores estan configurados adicionalmente para descartar uno o mas de los segundos vectores basados en la comparacion de energfa para generar uno o mas segundos vectores reducidos que tienen menos vectores que el uno o mas segundos vectores, realizar una correlacion cruzada entre al menos uno del uno o mas primeros vectores y el uno o mas segundos vectores reducidos para identificar uno del uno o mas segundos vectores reducidos que se correlaciona con al menos uno del uno o mas primeros vectores, reordenar al menos uno del uno o mas primeros vectores basandose en la correlacion cruzada para generar el uno o mas primeros vectores reordenados, y codificar el uno o mas primeros vectores reordenados para generar la version codificada de audio del uno o mas de los primeros vectores reordenados.
Clausula 133143-6A. El dispositivo de la clausula 133143-1A, en el que el uno o mas procesadores estan configurados adicionalmente para descartar uno o mas de los segundos vectores basados en la comparacion de energfa para generar uno o mas segundos vectores reducidos que tienen menos vectores que el uno o mas segundos vectores, realizar una correlacion cruzada entre al menos uno del uno o mas primeros vectores y el uno o mas segundos vectores reducidos para identificar uno del uno o mas segundos vectores reducidos que se correlaciona con al menos uno del uno o mas primeros vectores, reordenar al menos uno del uno o mas primeros vectores basandose en la correlacion cruzada para generar el uno o mas primeros vectores reordenados, codificar el uno o mas primeros vectores reordenados para generar la version codificada de audio del uno o mas primeros vectores reordenados, y generar y flujo de bits para incluir la version codificada del uno o mas primeros vectores reordenados.
Clausula 133143-7A. El dispositivo de las reivindicaciones 3A-6A, en el que la primera porcion de los datos de audio comprende una primera trama de audio que tiene M muestras, en el que la segunda porcion de los datos de audio comprende una segunda trama de audio que tiene el mismo numero, M, de muestras, en el que el uno o mas procesadores estan configurados adicionalmente para, al realizar la correlacion cruzada, realizar la correlacion cruzada con respecto a los ultimos valores M-Z del al menos uno de uno o mas primeros vectores y los primeros valores M-Z de cada uno de los uno o mas segundos vectores reducidos para identificar uno de los uno o mas segundos vectores reducidos que se correlacionan con al menos uno del uno o mas primeros vectores, y en el que Z es menor que M.
Clausula 133143-8A. El dispositivo de las reivindicaciones 3A-6A, en el que la primera porcion de los datos de audio comprende una primera trama de audio que tiene M muestras, en el que la segunda porcion de los datos de audio comprende una segunda trama de audio que tiene el mismo numero, M, de muestras, en el que el uno o mas procesadores estan configurados adicionalmente para, al realizar la correlacion cruzada, realizar la correlacion cruzada con respecto a los ultimos valores M-Y del al menos uno de uno o mas primeros vectores y los primeros valores M-Z de cada uno de los uno o mas segundos vectores reducidos para identificar uno de los uno o mas segundos vectores reducidos que se correlacionan con al menos uno del uno o mas primeros vectores, y en el que tanto Z como Y son menores que M.
Clausula 133143-9A. El dispositivo de las reivindicaciones 3A-6A, en el que el uno o mas procesadores estan configurados adicionalmente para, al realizar la correlacion cruzada, invertir al menos uno del uno o mas primeros vectores y el uno o mas segundos vectores. Clausula 133143-10A. El dispositivo de la clausula 133143- 1A, en el que el uno o mas procesadores estan configurados ademas para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos del campo sonoro para generar el uno o mas primeros vectores y el uno o mas segundos vectores.
Clausula 133143-11A. El dispositivo de la clausula 133143-1A, en el que el uno o mas procesadores estan configurados adicionalmente para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos del campo sonoro para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz
5
10
15
20
25
30
35
40
45
50
55
60
65
S representative de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representative de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y generar el uno o mas primeros vectores y el uno o mas de segundos vectores en funcion de una o mas de la matriz U, la matriz S y la matriz V.
Clausula 133143-12A. El dispositivo de la clausula 133143-1A, en el que el uno o mas procesadores estan configurados adicionalmente para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos del campo sonoro para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, realizar un analisis de saliencia con respecto a la matriz S para identificar uno o mas vectores UDIST de la matriz U y uno o mas vectores SDIST de la matriz S, y determinar el uno o mas primeros vectores y uno o mas segundos vectores multiplicando, al menos en parte, el uno o mas vectores UDIST por el uno o mas vectores SDIST.
Clausula 133143-13A. El dispositivo de la clausula 133143-1A, en el que la primera parte de los datos de audio se produce en el tiempo antes de la segunda porcion de los datos de audio.
Clausula 133143-14A. El dispositivo de la clausula 133143-1A, en el que la primera parte de los datos de audio se produce en el tiempo despues de la segunda porcion de los datos de audio.
Clausula 133143-15A. El dispositivo de la clausula 133143-1A, en el que el uno o mas procesadores estan configurados adicionalmente para, al realizar la comparacion de energfa, calcular una energfa cuadratica media para cada uno del uno o mas primeros vectores y el uno o mas segundos vectores, y comparar la energfa cuadratica media calculada para al menos uno del uno o mas primeros vectores con respecto a la energfa media cuadratica media calculada para cada uno del uno o mas segundos vectores.
Clausula 133143-16A. El dispositivo de la clausula 133143-1A, en el que el uno o mas procesadores estan configurados ademas para reordenar al menos uno del uno o mas primeros vectores basandose en la comparacion de energfa para generar el uno o mas primeros vectores reordenados, y en el que el uno o mas procesadores estan configurados adicionalmente para, al reordenar los primeros vectores, aplicar una ventana de interpolacion de entrar en fundido/fundido entre el uno o mas primeros vectores para asegurar una transicion suave cuando se generan los uno o mas primeros vectores reordenados.
Clausula 133143-17A. El dispositivo de la clausula 133143-1A, en el que el uno o mas procesadores estan configurados ademas para reordenar uno o mas primeros vectores basados en al menos la comparacion de energfa para generar el uno o mas primeros vectores reordenados, generar un flujo de bits para incluir el uno o mas primeros vectores reordenados o una version codificada del uno o mas primeros vectores reordenados, y especificar informacion de reordenacion en el flujo de bits que describe como se reordenaron el uno o mas primeros vectores.
Clausula 133143-18A. El dispositivo de la clausula 133143-1A, en el que la comparacion de energfa facilita la extraccion del uno o ambos del uno o mas primeros vectores y uno o mas segundos vectores con el fin de promover la codificacion de audio del uno o ambos del uno o mas primeros vectores y el uno o mas segundos vectores.
Clausula 133143-1B. El dispositivo, tal como el dispositivo de codificacion de audio 510C, que comprende: uno o mas procesadores configurados para realizar una correlacion cruzada con respecto a uno o mas primeros vectores y uno o mas segundos vectores para determinar uno o mas primeros vectores reordenados y facilitar la extraccion de uno o ambos del uno o mas primeros vectores y el uno o mas segundos vectores, en el que uno o mas primeros vectores describen componentes distintos de un campo sonoro en una primera porcion de datos de audio y el uno o mas segundos vectores describen componentes distintos de un campo sonoro en una segunda porcion de los datos de audio.
Clausula 133143-2B. El dispositivo de la clausula 133143-1B, en el que el uno o mas primeros vectores no representan componentes de fondo del campo sonoro en la primera porcion de los datos de audio, y en el que uno o mas segundos vectores no representan componentes de fondo del campo sonoro en la segunda porcion de los datos de audio.
Clausula 133143-3B. El dispositivo de la clausula 133143-1B, en el que el uno o mas procesadores estan configurados adicionalmente para, antes de realizar la correlacion cruzada, realizar una comparacion de energfa entre el uno o mas primeros vectores y el uno o mas segundos vectores para generar uno o mas segundos vectores reducidos con menos vectores que el uno o mas vectores, y en el que el uno o mas procesadores estan configurados adicionalmente para, al realizara la correlacion cruzada, realizar la correlacion cruzada entre el uno o mas primeros vectores y uno o mas segundos vectores reducidos para facilitar la codificacion de audio de uno o ambos del uno o mas primeros vectores y el uno o mas segundos vectores.
5
10
15
20
25
30
35
40
45
50
55
60
65
Clausula 133143-4B. El dispositivo de la clausula 133143-3B, en el que el uno o mas procesadores estan configurados adicionalmente para, al realizar la comparacion de energfa, calcular una energfa cuadratica media para cada uno del uno o mas primeros vectores y el uno o mas segundos vectores, y comparar la energfa cuadratica media calculada para al menos uno del uno o mas primeros vectores con respecto a la energfa media cuadratica media calculada para cada uno del uno o mas segundos vectores.
Clausula 133143-5B. El dispositivo de la clausula 133143-3B, en el que el uno o mas procesadores estan configurados adicionalmente para descartar uno o mas de los segundos vectores basandose en la comparacion de energfa para generar uno o mas segundos vectores reducidos con menos vectores que el uno o mas segundos vectores, en el que el uno o mas procesadores estan configurados adicionalmente para, al realizara la correlacion cruzada, realizar la correlacion cruzada entre al menos uno del uno o mas primeros vectores y el uno o mas segundos vectores reducidos para identificar uno del uno o mas segundos vectores reducidos que se correlacionan con el al menos uno del uno o mas primeros vectores, y en el que el uno o mas procesadores estan configurados adicionalmente para reordenar al menos uno del uno o mas primeros vectores basandose en la correlacion cruzada para generar el uno o mas primeros vectores reordenados.
Clausula 133143-6B. El dispositivo de la clausula 133143-3B, en el que el uno o mas procesadores estan configurados adicionalmente para descartar uno o mas de los segundos vectores basandose en la comparacion de energfa para generar uno o mas segundos vectores reducidos con menos vectores que el uno o mas segundos vectores, en el que el uno o mas procesadores estan configurados adicionalmente para, al realizara la correlacion cruzada, realizar la correlacion cruzada entre al menos uno del uno o mas primeros vectores y el uno o mas segundos vectores reducidos para identificar uno del uno o mas segundos vectores reducidos que se correlacionan con el al menos uno del uno o mas primeros vectores, y en el que el uno o mas procesadores estan configurados adicionalmente para reordenar al menos uno del uno o mas primeros vectores basandose en la correlacion cruzada para generar el uno o mas primeros vectores reordenados, y codificar el uno o mas primeros vectores reordenados para generar la version codificada de audio del uno o mas primeros vectores reordenados.
Clausula 133143-7B. El dispositivo de la clausula 133143-3B, en el que el uno o mas procesadores estan configurados adicionalmente para descartar uno o mas de los segundos vectores basandose en la comparacion de energfa para generar uno o mas segundos vectores reducidos con menos vectores que el uno o mas segundos vectores, en el que el uno o mas procesadores estan configurados adicionalmente para, al realizara la correlacion cruzada, realizar la correlacion cruzada entre al menos uno del uno o mas primeros vectores y el uno o mas segundos vectores reducidos para identificar uno del uno o mas segundos vectores reducidos que se correlacionan con el al menos uno del uno o mas primeros vectores, y en el que el uno o mas procesadores estan configurados adicionalmente para reordenar al menos uno del uno o mas primeros vectores basandose en la correlacion cruzada para generar el uno o mas primeros vectores reordenados, codificar el uno o mas primeros vectores reordenados para generar la version codificada de audio del uno o mas primeros vectores reordenados, y generar un flujo de bits para incluir la version codificada del uno o mas primeros vectores reordenados.
Clausula 133143-8B. El dispositivo de las reivindicaciones 3B-7B, en el que la primera porcion de los datos de audio comprende una primera trama de audio que tiene M muestras, en el que la segunda porcion de los datos de audio comprende una segunda trama de audio que tiene el mismo numero, M, de muestras, en el que el uno o mas procesadores estan configurados adicionalmente para, al realizar la correlacion cruzada, realizar la correlacion cruzada con respecto a los ultimos valores M-Z del al menos uno de uno o mas primeros vectores y los primeros valores M-Z de cada uno de los uno o mas segundos vectores reducidos para identificar uno de los uno o mas segundos vectores reducidos que se correlacionan con al menos uno del uno o mas primeros vectores, y en el que Z es menor que M.
Clausula 133143-9B. El dispositivo de las reivindicaciones 3B-7B, en el que la primera porcion de los datos de audio comprende una primera trama de audio que tiene M muestras, en el que la segunda porcion de los datos de audio comprende una segunda trama de audio que tiene el mismo numero, M, de muestras, en el que el uno o mas procesadores estan configurados adicionalmente para, al realizar la correlacion cruzada, realizar la correlacion cruzada con respecto a los ultimos valores M-Y del al menos uno de uno o mas primeros vectores y los primeros valores M-Z de cada uno de los uno o mas segundos vectores reducidos para identificar uno de los uno o mas segundos vectores reducidos que se correlacionan con al menos uno del uno o mas primeros vectores, y en el que tanto Z como Y son menores que M.
Clausula 133143-10B. El dispositivo de las reivindicaciones 1B, en el que el uno o mas procesadores estan configurados adicionalmente para, al realizar la correlacion cruzada, invertir al menos uno del uno o mas primeros vectores y el uno o mas segundos vectores.
Clausula 133143-11B. El dispositivo de la clausula 133143-1B, en el que el uno o mas procesadores estan configurados ademas para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos del campo sonoro para generar el uno o mas primeros vectores
5
10
15
20
25
30
35
40
45
50
55
60
65
y el uno o mas segundos vectores.
Clausula 133143-12B. El dispositivo de la clausula 133143-1B, en el que el uno o mas procesadores estan configurados adicionalmente para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos del campo sonoro para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y generar el uno o mas primeros vectores y el uno o mas de segundos vectores en funcion de una o mas de la matriz U, la matriz S y la matriz V.
Clausula 133143-13B. El dispositivo de la clausula 133143-1B, en el que el uno o mas procesadores estan configurados adicionalmente para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos del campo sonoro para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, realizar un analisis de saliencia con respecto a la matriz S para identificar uno o mas vectores Udist de la matriz U y uno o mas vectores Sdist de la matriz S, y determinar el uno o mas primeros vectores y uno o mas segundos vectores multiplicando, al menos en parte, el uno o mas vectores Udist por el uno o mas vectores Sdist.
Clausula 133143-14B. El dispositivo de la clausula 133143-1B, en el que el uno o mas procesadores estan configurados adicionalmente para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos del campo sonoro para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y al determinar el uno o mas primeros vectores y el uno o mas segundos vectores, realizar un analisis de saliencia con respecto a la matriz S para identificar uno o mas vectores Vdist de la matriz V como al menos uno del uno o mas primeros vectores y el uno o mas segundos vectores.
Clausula 133143-15B. El dispositivo de la clausula 133143-1B, en el que la primera parte de los datos de audio se produce en el tiempo antes de la segunda porcion de los datos de audio.
Clausula 133143-16B. El dispositivo de la clausula 133143-1B, en el que la primera parte de los datos de audio se produce en el tiempo despues de la segunda porcion de los datos de audio.
Clausula 133143-17B. El dispositivo de la clausula 133143-1B, en el que el uno o mas procesadores estan configurados ademas para reordenar al menos uno del uno o mas primeros vectores basandose en la correlacion cruzada para generar el uno o mas primeros vectores reordenados, y al reordenar los primeros vectores, aplicar una ventana de interpolacion de entrar en fundido/fundido entre el uno o mas primeros vectores para asegurar una transicion suave cuando se generan los uno o mas primeros vectores reordenados.
Clausula 133143-18B. El dispositivo de la clausula 133143-1B, en el que el uno o mas procesadores estan configurados ademas para reordenar uno o mas primeros vectores basados en al menos la correlacion cruzada para generar el uno o mas primeros vectores reordenados, generar un flujo de bits para incluir el uno o mas primeros vectores reordenados o una version codificada del uno o mas primeros vectores reordenados, y especificar en el flujo de bits como se reordenaron el uno o mas primeros vectores.
Clausula 133143-19B. El dispositivo de la clausula 133143-1B, en el que la correlacion cruzada facilita la extraccion del uno o ambos del uno o mas primeros vectores y uno o mas segundos vectores con el fin de promover la codificacion de audio del uno o ambos del uno o mas primeros vectores y el uno o mas segundos vectores.
La FIG. 40D es un diagrama de bloques que ilustra un ejemplo de dispositivo de codificacion de audio 510D que puede realizar diversos aspectos de las tecnicas descritas en esta descripcion para comprimir los coeficientes armonicos esfericos que describen campos sonoros bidimensionales o tridimensionales. El dispositivo de codificacion de audio 510D puede ser similar al dispositivo de codificacion de audio 510C en que el dispositivo de codificacion de audio 510D incluye una unidad de compresion de audio 512, una unidad de codificacion de audio 514 y una unidad de generacion de flujo de bits 516. Ademas, la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510D puede ser similar a la del dispositivo de codificacion de audio 510C porque la unidad de compresion de audio 512 incluye una unidad de descomposicion 518.
Sin embargo, la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510D puede diferir de la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510C en que la unidad de extraccion de componente de campo sonoro 520 incluye una unidad adicional, indicada como unidad de cuantizacion 534 ("unidad
5
10
15
20
25
30
35
40
45
50
55
60
65
cuant. 534"). Por esta razon, la unidad de extraccion de componentes del campo sonoro 520 del dispositivo de codificacion de audio 510D se denomina "unidad de extraccion de componentes del campo sonoro 520D".
La unidad de cuantizacion 534 representa una unidad configurada para cuantizar uno o mas vectores VTdist 525E y/o uno o mas vectores VTbg 525F para generar uno o mas vectores VTq_dist 525G correspondientes y/o uno o mas vectores VTq_bg 525H. La unidad de cuantizacion 534 puede cuantizar (que es un termino de procesamiento de senales para el redondeo matematico a traves de la eliminacion de bits utilizados para representar un valor) uno o mas vectores VTdist 525E para reducir el numero de bits que se utilizan para representar el uno o mas vectores VTdist 525E en el flujo de bits 517. En algunos ejemplos, la unidad de cuantizacion 534 puede cuantizar los valores de 32 bits de uno o mas vectores VTdist 525E, reemplazando estos valores de 32 bits por valores de 16 bits redondeados para generar uno o mas vectores VTq_dist 525G. A este respecto, la unidad de cuantizacion 534 puede operar de una manera similar a la descrita anteriormente con respecto a la unidad de cuantizacion 52 del dispositivo de codificacion de audio 20 mostrado en el ejemplo de la FIG. 4.
La cuantizacion de esta naturaleza puede introducir un error en la representacion del campo sonoro que varfa de acuerdo con la tosquedad de la cuantizacion. En otras palabras, los bits mas utilizados para representar uno o mas vectores VTdist 525E pueden dar lugar a menos error de cuantizacion. El error de cuantizacion debido a la cuantizacion de los vectores VTdist 525E (que se puede denominar "Edist") puede determinarse restando uno o mas vectores VTdist 525E a uno o mas vectores VTq_dist 525G.
De acuerdo con las tecnicas descritas en esta divulgacion, el dispositivo de codificacion de audio 510D puede compensar uno o mas de los errores de cuantizacion Edist proyectando el error Edist o modificando de otro modo uno o mas de los vectores Udist * Sdist 527 o los coeficientes armonicos esfericos de fondo 531 generados multiplicando uno o mas vectores Ubg 525D por uno o mas vectores Sbg 525B y luego por uno o mas vectores VTbg 525F. En algunos ejemplos, el dispositivo de codificacion de audio 510D solo puede compensar el error Edist en los vectores Udist * Sdist 527. En otros ejemplos, el dispositivo de codificacion de audio 510D solo puede compensar el error Ebg en los coeficientes armonicos esfericos de fondo. En otros ejemplos, el dispositivo de codificacion de audio 510D puede compensar el error Edist tanto en los vectores Udist * Sdist 527 como en los coeficientes armonicos esfericos de fondo.
En funcionamiento, la unidad de analisis de componentes relevantes 524 puede configurarse para emitir el uno o mas vectores Sdist 525, uno o mas vectores Sbg 525B, uno o mas vectores Udist 525C, uno o mas vectores Ubg 525D, el uno o mas vectores VTdist 525E y uno o mas vectores VTbg 525F a la unidad matematica 526. La unidad de analisis de componentes relevantes 524 tambien puede emitir el uno o mas vectores VTdist 525E a la unidad de cuantizacion 534. La unidad de cuantizacion 534 puede cuantizar uno o mas vectores VTdist 525E para aenerar uno o mas vectores VTq_dist 525G. La unidad de cuantizacion 534 puede proporcionar uno o mas vectores VTq_dist 525G a la unidad matematica 526, proporcionando al mismo tiempo uno o mas vectores VTq_dist 525G a la unidad de reordenacion de vectores 532 (como se ha descrito anteriormente). La unidad de reordenacion de vectores 532 puede operar con respecto a uno o mas vectores VTq_dist 525G de una manera similar a la descrita anteriormente con respecto a los vectores VTq_dist 525E.
Al recibir estos vectores 525-525G ("vectores 525"), la unidad matematica 526 puede determinar primero coeficientes armonicos esfericos distintos que describen componentes distintos de los coeficientes armonicos esfericos de campo sonoro y de fondo que describen componentes de fondo del campo sonoro. La unidad matematica matricial 526 puede configurarse para determinar los distintos coeficientes armonicos esfericos multiplicando el uno o mas vectores Udist 525C por el uno o mas vectores Sdist 525A y luego por uno o mas vectores VTdist 525E. La unidad matematica 526 puede configurarse para determinar los coeficientes armonicos esfericos de fondo multiplicando el uno o mas vectores Ubg 525D por uno o mas vectores Sbg 525A y luego por uno o mas vectores VTbg 525e.
La unidad matematica 526 puede entonces determinar uno o mas vectores Udist * Sdist compensados 527' (que pueden ser similares a los vectores Udist * Sdist 527 excepto que estos vectores incluyen valores para compensar el error Edist ) realizando una operacion de pseudoinvertida con respecto a uno o mas vectores VTq dist 525G y multiplicando luego los distintos armonicos esfericos por la pseudoinvertida del uno o mas vectores V q_dist 525G. La unidad de reordenacion de vectores puede operar de la manera descrita anteriormente para generar vectores reordenados 527', los cuales son entonces codificados de audio por la unidad de codificacion de audio S 15A para generar vectores 515' reordenados codificados de audio, de nuevo como se ha descrito anteriormente.
La unidad matematica 526 puede proyectar a continuacion el error Edist a los coeficientes esfericos armonicos de fondo. La unidad matematica 526 puede, para realizar esta proyeccion, determinar o recuperar de otro modo los coeficientes esfericos armonicos originales 511 anadiendo los coeficientes armonicos esfericos distintos a los coeficientes esfericos de armonicos de fondo. La unidad matematica 526 puede entonces restar los coeficientes armonicos esfericos distintos cuantificados (que pueden generarse multiplicando los vectores Udist 525C por los vectores Sdist 525A y luego por los vectores VTq_dist 525G) y los coeficientes armonicos esfericos de fondo de los coeficientes armonicos esfericos 511 para determinar el error restante debido a la cuantizacion de los vectores VTdist 519. La unidad matematica 526 puede entonces anadir este error a los coeficientes armonicos esfericos de fondo
5
10
15
20
25
30
35
40
45
50
55
60
65
cuantificados para generar coeficientes armonicos esfericos de fondo cuantificados compensados 531'.
En cualquier caso, la unidad de reduccion de ordenes 528A puede actuar como se ha descrito anteriormente para reducir los coeficientes armonicos esfericos de fondo cuantificados compensados 531'a coeficientes armonicos esfericos de fondo reducidos 529', que pueden codificarse por audio por la unidad de codificacion de audio 514 de la manera descrita anteriormente para generar coeficientes armonicos esfericos de fondo reducidos codificados de audio 515B'.
De este modo, las tecnicas pueden permitir que el dispositivo de codificacion de audio 510D cuantifique uno o mas primeros vectores, tales como vectores VTdist 525E, representativos de uno o mas componentes de un campo sonoro y compensen el error introducido debido a la cuantizacion del uno o mas primeros vectores en uno o mas segundos vectores, tales como los vectores Udist * Sdist 527 y/o los vectores de coeficientes armonicos esfericos de fondo 531, que son tambien representativos del mismo uno o mas componentes del campo sonoro.
Ademas, las tecnicas pueden proporcionar esta compensacion de error de cuantizacion de acuerdo con las siguientes clausulas.
Clausula 133146-1B. Un dispositivo, tal como el dispositivo de codificacion de audio 510D, que comprende: uno o mas procesadores configurados para cuantizar uno o mas primeros vectores representativos de uno o mas componentes distintos de un campo sonoro, y compensar el error introducido debido a la cuantizacion del uno o mas primeros vectores en uno o mas segundos vectores que son tambien representativos del mismo uno o mas componentes distintos del campo sonoro.
Clausula 133146-2B. El dispositivo de la clausula 133146-1B, en el que el uno o mas procesadores estan configurados para cuantizar uno o mas vectores de una transposicion de una matriz V generada, al menos en parte, realizando una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos que describen el campo sonoro.
Clausula 133146-3B. El dispositivo de la clausula 133146-1B, en el que el uno o mas procesadores estan configurados adicionalmente para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos de un campo sonoro para generar una matriz U representativa de los vectores singulares izquierdos de la pluralidad de armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y en el que el uno o mas procesadores estan configurados para cuantizar uno o mas vectores a partir de una transposicion de la matriz V.
Clausula 133146-4B. El dispositivo de la clausula 133146-1B, en el que el uno o mas procesadores estan configurados para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos de un campo sonoro para generar una matriz U representativa de los vectores singulares izquierdos de la pluralidad de armonicos esfericos, una matriz s representativa de los valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, en el que uno o mas procesadores estan configurados para cuantizar uno o mas vectores de una transposicion de la matriz V, en el que el uno o mas procesadores estan configurados para compensar el error introducido debido a la cuantizacion en uno o mas vectores U * S calculados multiplicando uno o mas vectores U de la matriz U por uno o mas vectores S de la matriz S.
Clausula 133146-5B. El dispositivo de la clausula 133146-1B, en el que el uno o mas procesadores estan configurados ademas para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos de un campo sonoro para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, determinar uno o mas vectores Udist de la matriz U, cada uno de los cuales corresponde a uno de los distintos componentes del campo sonoro, determinar uno o mas vectores Sdist de la matriz S, cada uno de los cuales corresponde al mismo de los distintos componentes del campo sonoro, y determinar uno o mas vectores vTdist de una transposicion de la matriz V, cada uno de los cuales corresponde al mismo de los distintos componentes del campo sonoro,
en el que uno o mas procesadores estan configurados para cuantizar uno o mas vectores vtdist para generar uno o mas vectores VTq_dist y en el que uno o mas procesadores estan configurados para compensar el error introducido debido a la cuantizacion en uno o mas Udist * Sdist vectores calculados multiplicando uno o mas vectores Udist de la matriz U por uno o mas vectores Sdist de la matriz S para generar uno o mas vectores Udist * Sdist compensados con error.
5
10
15
20
25
30
35
40
45
50
55
60
65
Clausula 133146-6B. El dispositivo de la clausula 133146-5B, en el que el uno o mas procesadores estan configurados para determinar coeficientes armonicos esfericos distintos basados en uno o mas vectores Udist, uno o mas vectores Sdist y uno o mas vectores vtdist, y realizar una pseudoinvertida con respecto a los vectores VTq_dist para dividir los distintos coeficientes armonicos esfericos por uno o mas vectores VTq_dist y de este modo generar uno o mas vectores Uc_dist * Sc_dist compensados por error que se compensan al menos en parte por el error introducido a traves de la cuantizacion de los vectores vTdist.
Clausula 133146-7B. El dispositivo de la clausula 133146-5B, en el que el uno o mas procesadores estan configurados adicionalmente para codificar por audio los uno o mas vectores Udist * Sdist compensados por error.
Clausula 133146-8B. El dispositivo de la clausula 133146-1B, en el que el uno o mas procesadores estan configurados ademas para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos de un campo sonoro para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, determinar uno o mas vectores Ubg de la matriz U que describen uno o mas componentes de fondo del campo sonoro y uno o mas vectores Udist de la matriz U que describen uno o mas componentes distintos del campo sonoro, determinar uno o mas vectores Sbg de la matriz S que describen el uno o mas componentes de fondo del campo sonoro y uno o mas vectores Sdist de la matriz S que describen uno o mas componentes distintos del campo sonoro, y determinar uno o mas vectores VTdist y uno o mas vectores VTbg de una transposicion de la matriz V, en el que los vectores VTdist describen uno o mas componentes distintos del campo sonoro y el VTbg describen uno o mas componentes de fondo del campo sonoro, en el que el uno o mas procesadores estan configurados para cuantizar el uno o mas vectores VTdist para generar uno o mas vectores VTq_dist, y en el que uno o mas procesadores estan configurados ademas para compensar al menos una porcion del error introducido debido a la cuantizacion en los coeficientes armonicos esfericos de fondo formados multiplicando el uno o mas vectores Ubg por uno o mas vectores Sbg y luego por uno o mas vectores VTbg para generar coeficientes armonicos esfericos de fondo compensados por error.
Clausula 133146-9B. El dispositivo de la clausula 133146-8B, en el que el uno o mas procesadores estan configurados para determinar el error basado en los vectores vtdist y uno o mas vectores Udist * Sdist formados multiplicando los vectores Udist por los vectores Sdist, y anadir el error determinado a los coeficientes armonicos esfericos de fondo para generar los coeficientes armonicos esfericos de fondo compensados por error.
Clausula 133146-10B. El dispositivo de la clausula 133146-8B, en el que el uno o mas procesadores estan configurados adicionalmente para codificar por audio los coeficientes armonicos esfericos compensados por error.
Clausula 133146-11B. El dispositivo de la clausula 133146-1B,
en el que el uno o mas procesadores estan configurados para compensar el error introducido debido a la cuantizacion del uno o mas primeros vectores en uno o mas segundos vectores que son tambien representativos del mismo o mas componentes del campo sonoro para generar uno o mas segundos vectores compensados por error, y en el que el uno o mas procesadores estan configurados ademas para generar un flujo de bits para incluir el uno o mas segundos vectores compensados de error y uno o mas primeros vectores cuantificados.
Clausula 133146-12B. El dispositivo de la clausula 133146-1B, en el que el uno o mas procesadores estan configurados para compensar el error introducido debido a la cuantizacion del uno o mas primeros vectores en uno o mas segundos vectores que son tambien representativos del mismo o mas componentes del campo sonoro para generar uno o mas segundos vectores compensados de error, y en el que el uno o mas procesadores estan configurados adicionalmente para codificar por audio los uno o mas segundos vectores compensados de error, y generar un flujo de bits para incluir el audio codificado de uno o mas segundos vectores compensados de error y el uno o mas primeros vectores cuantificados.
Clausula 133146-1C. Un dispositivo, tal como el dispositivo de codificacion de audio 510D, que comprende: uno o mas procesadores configurados para cuantizar uno o mas primeros vectores representativos de uno o mas componentes distintos de un campo sonoro, y compensar el error introducido debido a la cuantizacion del uno o mas primeros vectores en uno o mas segundos vectores que son representativos de uno o mas componentes de fondo del campo sonoro.
Clausula 133146-2C. El dispositivo de la clausula 133146-1C, en el que el uno o mas procesadores estan configurados para cuantizar uno o mas vectores de una transposicion de una matriz V generada, al menos en parte, realizando una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos que describen el campo sonoro.
Clausula 133146-3C. El dispositivo de la clausula 133146-1C, en el que el uno o mas procesadores estan configurados adicionalmente para realizar una descomposicion en valores singulares con respecto a una
5
10
15
20
25
30
35
40
45
50
55
60
65
pluralidad de coeficientes armonicos esfericos representatives de un campo sonoro para generar una matriz U representativa de los vectores singulares izquierdos de la pluralidad de armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y en el que el uno o mas procesadores estan configurados para cuantizar uno o mas vectores a partir de una transposicion de la matriz V.
Clausula 133146-4C. El dispositivo de la clausula 133146-1C, en el que el uno o mas procesadores estan configurados adicionalmente para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos de un campo sonoro para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, determinar uno o mas vectores Udist de la matriz U, cada uno de los cuales corresponde a uno de los distintos componentes del campo sonoro, determinar uno o mas vectores Sdist de la matriz S, cada uno de los cuales corresponde al mismo de los distintos componentes del campo sonoro, y determinar uno o mas vectores VTdist de una transposicion de la matriz V, cada uno de los cuales corresponde al mismo de los distintos componentes del campo sonoro, en el que el uno o mas procesadores estan configurados para cuantizar el uno o mas vectores VTdist para generar uno o mas vectores VTq_dist, y compensar al menos una porcion del error introducido debido a la cuantizacion en uno o mas vectores Udist * Sdist calculados multiplicando el uno o mas vectores Udist de la matriz U por uno o mas vectores Sdist de la matriz S para generar uno o mas vectores Udist * Sdist compensados de error.
Clausula 133146-5C. El dispositivo de la clausula 133146-4C, en el que el uno o mas procesadores estan configurados para determinar coeficientes armonicos esfericos distintos basadosen uno o mas vectores Udist, uno o mas vectores Sdist y uno o mas vectores VTdist, y realizar una pseudoinvertida con respecto a los vectores VTq_dist para dividir los distintos coeficientes armonicos esfericos por uno o mas vectores VTq_dist y de este modo generar uno o mas vectores Uc_dist * Sc_dist que compensan al menos en parte el error introducido mediante la cuantizacion de los vectores VTdist.
Clausula 133146-6C. El dispositivo de la clausula 133146-4C, en el que el uno o mas procesadores estan configurados adicionalmente para codificar por audio los uno o mas vectores Udist * Sdist compensados por error.
Clausula 133146-7C. El dispositivo de la clausula 133146-1C, en el que el uno o mas procesadores estan configurados ademas para realizar una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos representativos de un campo sonoro para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, determinar uno o mas vectores Ubg de la matriz U que describen uno o mas componentes de fondo del campo sonoro y uno o mas vectores Udist de la matriz U que describen uno o mas componentes distintos del campo sonoro, determinar uno o mas vectores Sbg de la matriz S que describen el uno o mas componentes de fondo del campo sonoro y uno o mas vectores Sdist de la matriz S que describen uno o mas componentes distintos del campo sonoro, y determinar uno o mas vectores VTdist y uno o mas vectores VTbg de una transposicion de la matriz V, en el que los vectores VTdist describen uno o mas componentes distintos del campo sonoro y el VTbg describen uno o mas componentes de fondo del campo sonoro, en el que el uno o mas procesadores estan configurados para cuantizar el uno o mas vectores VTdist para generar uno o mas vectores VTq_dist, y en el que uno o mas procesadores estan configurados para compensar el error introducido debido a la cuantizacion en los coeficientes armonicos esfericos de fondo formados multiplicando el uno o mas vectores Ubg por uno o mas vectores Sbg y luego por uno o mas vectores VTbg para generar coeficientes armonicos esfericos de fondo compensados por error.
Clausula 133146-8C. El dispositivo de la clausula 133146-7C, en el que el uno o mas procesadores estan configurados para determinar el error basado en los vectores VTdist y uno o mas vectores Udist * Sdist formados multiplicando los vectores Udist por los vectores Sdist, y anadir el error determinado a los coeficientes armonicos esfericos de fondo para generar los coeficientes armonicos esfericos de fondo compensados por error.
Clausula 133146-9C. El dispositivo de la clausula 133146-7C, en el que el uno o mas procesadores estan configurados adicionalmente para codificar por audio los coeficientes armonicos esfericos compensados de error.
Clausula 133146-10C. El dispositivo de la clausula 133146-1C, en el que el uno o mas procesadores estan configurados adicionalmente para compensar el error introducido debido a la cuantizacion del uno o mas primeros vectores en uno o mas segundos vectores que son tambien representativos del mismo o mas componentes del campo sonoro para generar uno o mas segundos vectores compensados por error, y generar un flujo de bits para incluir el uno o mas segundos vectores compensados de error y uno o mas primeros vectores cuantificados.
5
10
15
20
25
30
35
40
45
50
55
60
65
Clausula 133146-11C. El dispositivo de la clausula 133146-1C, en el que el uno o mas procesadores estan configurados adicionalmente para compensar el error introducido debido a la cuantizacion del uno o mas primeros vectores en uno o mas segundos vectores que son tambien representativos del mismo o mas componentes del campo sonoro para generar uno o mas segundos vectores compensados de error, codificar por audio los uno o mas segundos vectores compensados de error, y generar un flujo de bits para incluir el audio codificado de uno o mas segundos vectores compensados de error y el uno o mas primeros vectores cuantificados.
En otras palabras, cuando se usa descomposicion SVD basada en tramas (o procedimientos relacionados tales como KLT y PCA) en senales HoA con el proposito de reduccion de ancho de banda, las tecnicas descritas en esta divulgacion pueden permitir que el dispositivo de codificacion de audio 10D cuantifique los primeros vectores de la matriz U (multiplicada por los valores singulares correspondientes de la matriz S), asf como los correspondientes vectores del vector V. Esto comprendera los componentes de "primer plano" o "distintos" del campo sonoro. Las tecnicas pueden entonces permitir que el dispositivo de codificacion de audio 510D codifique los vectores U*S usando un motor de codificacion de audio de "caja negra", tal como un codificador AAC. El V vector puede ser escalar o un vector cuantificado.
Ademas, algunos de los vectores restantes en la matriz U pueden multiplicarse con los valores singulares correspondientes de la matriz S y de la matriz V y tambien codificarse utilizando un motor de codificacion de audio de "caja negra". Estos comprenderan los componentes "de fondo" del campo sonoro. Una simple cuantizacion escalar de 16 bits de los vectores V puede dar como resultado una sobrecarga de aproximadamente 80 kbps para el 4° orden (25 coeficientes) y 160 kbps para el 6° orden (49 coeficientes). Una cuantizacion mas gruesa puede dar lugar a errores de cuantizacion mayores. Las tecnicas descritas en esta divulgacion pueden compensar el error de cuantizacion de los vectores V, mediante la "proyeccion" del error de cuantizacion del vector V sobre los componentes de primer plano y de fondo.
Las tecnicas en esta divulgacion pueden incluir el calculo de una version cuantificada del vector V real. Este V vector cuantificado puede denominarse "V" (donde V' = V + e). La senal HoA subyacente -para los componentes de primer plano- que las tecnicas estan intentando recrear esta dada por H_f = USV, donde U, S y V contienen solamente los elementos de primer plano. Para el proposito de este analisis, US sera reemplazado por un solo conjunto de vectores U. Por lo tanto, H_f = UV. Dado que hay un V' erroneo, las tecnicas estan intentando recrear H_f lo mas cerca posible. Por lo tanto, las tecnicas pueden permitir que el dispositivo de codificacion de audio 10D encuentre U' de tal forma que H_f = U'V'. El dispositivo de codificacion de audio 10D puede utilizar una metodologfa pseudoinvertida que permite que U' = H_f[V']A(-1). Utilizando el denominado motor de codificacion de audio de "caja negra" para codificar U', las tecnicas pueden minimizar el error en H, causado por lo que se puede denominar como el vector V' erroneo.
De manera similar, las tecnicas tambien pueden permitir que el dispositivo de codificacion de audio proyecte el error debido a la cuantizacion de V en los elementos de fondo. El dispositivo de codificacion de audio 510D puede configurarse para recrear la senal HoA total que es una combinacion de senales HoA de primer plano y de fondo, es decir, H = H_f + H_b. Esto puede nuevamente ser modelado como H = H_f + e + H_b, debido al error de cuantizacion en V'. De esta manera, en lugar de poner el H_b a traves del "codificador de audio de caja negra", se pone (e + H_b) a traves del codificador de audio, compensando de hecho el error en V'. En la practica, esto compensa el error solo hasta el orden determinado por el dispositivo de codificacion de audio 510D para enviar los elementos de fondo.
La FIG. 40E es un diagrama de bloques que ilustra un ejemplo de dispositivo de codificacion de audio 510E que puede realizar diversos aspectos de las tecnicas descritas en esta descripcion para comprimir los coeficientes armonicos esfericos que describen campos sonoros bidimensionales o tridimensionales. El dispositivo de codificacion de audio 510E puede ser similar al dispositivo de codificacion de audio 510D en que el dispositivo de codificacion de audio 510E incluye una unidad de compresion de audio 512, una unidad de codificacion de audio 514 y una unidad de generacion de flujo de bits 516. Ademas, la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510E puede ser similar a la del dispositivo de codificacion de audio 510D porque la unidad de compresion de audio 512 incluye una unidad de descomposicion 518.
Sin embargo, la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510E puede diferir de la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510D en que la unidad matematica 526 de la unidad de extraccion de componentes del campo sonoro 520 realiza aspectos adicionales de las tecnicas descritas en esta divulgacion para reducir aun mas la matriz V 519A antes de incluir la version reducida de la transposicion de la matriz V 519a en el flujo de bits 517. Por esta razon, la unidad de extraccion de componentes del campo sonoro 520 del dispositivo de codificacion de audio 510E se denomina "unidad de extraccion de componentes del campo sonoro 520E".
En el ejemplo de la FIG. 40E, la unidad de reduccion de ordenes 528, en lugar de reenviar los coeficientes armonicos esfericos de fondo reducidos 529' a la unidad de codificacion de audio 514, devuelve los coeficientes
5
10
15
20
25
30
35
40
45
50
55
60
65
armonicos esfericos de fondo reducidos 529' a la unidad matematica 526. Como se ha indicado anteriormente, estos coeficientes armonicos esfericos de fondo reducidos 529' pueden haberse reducido eliminando los de los coeficientes correspondientes a funciones de base esferica que tienen uno o mas ordenes y/o subordenes identificados. El orden reducido de los coeficientes armonicos esfericos de fondo reducidos 529' puede estar representado por la variable Nbg.
Dado que la unidad de extraccion de componentes del campo sonoro 520E no puede realizar reduccion de orden con respecto a uno o mas vectores Udist * Sdist reordenados 533', el orden de esta descomposicion de los coeficientes armonicos esfericos que describen componentes distintos del campo sonoro (que puede representarse por la variable Ndist ) puede ser mayor que el orden de fondo, Nbg. En otras palabras, Nbg puede ser comunmente menor que Ndist. Una posible razon de que Nbg pueda ser menor que Ndist es que se asume que los componentes de fondo no tienen mucha direccionalidad de tal forma que no se requieren funciones de base esferica de orden superior, permitiendo de este modo la reduccion de orden y dando lugar a que Nbg sea menor que Ndist.
Dado que el uno o mas de los vectores VTq_dist reordenados 539 previamente se enviaron abiertamente, sin codificacion de audio de estos vectores 539 en el flujo de bits 517, como se muestra en los ejemplos de las FIGS. 40A-40D, el uno o mas vectores VTq_dist reordenados 539 pueden consumir un ancho de banda considerable. Como un ejemplo, cada uno de los vectores VTq_dist 539, cuando se cuantifican a valores escalares de 16 bits, pueden consumir aproximadamente 20 Kbps para los datos de audio ambisonicos de cuarto orden (donde cada vector tiene 25 coeficientes) y 40 Kbps para los datos de audio ambisonicos de sexto orden (donde cada vector tiene 49 coeficientes).
De acuerdo con diversos aspectos de las tecnicas descritas en esta divulgacion, la unidad de extraccion de componentes del campo sonoro 520E puede reducir la cantidad de bits que necesitan ser especificados para coeficientes armonicos esfericos o descomposiciones de los mismos, tales como los uno o mas vectores VTq_dist reordenados 539. En algunos ejemplos, la unidad matematica 526 puede determinar, basandose en los coeficientes armonicos esfericos reducidos ordenados 529', los de los vectores VTq_dist reordenados 539 que se van a eliminar y recombinar con los coeficientes armonicos esfericos reducidos ordenados 529' y los de los vectores VTq dist
t j —
reordenados 539 que son para formar los vectores V pequeno 521. Es decir, la unidad matematica 526 puede determinar un orden del orden reducido de los coeficientes armonicos esfericos 529', donde este orden se puede representar Nbg. Los vectores VTq_dist reordenados 539 pueden ser de un orden representado por la variable Ndist, donde Ndist es mayor que el orden Nbg.
La unidad matematica 526 puede entonces analizar los primeros Nbg ordenes de los vectores VTq_dist reordenados 539, eliminando los vectores que especifican coeficientes armonicos esfericos descompuestos que corresponden a funciones de base esfericas que tienen un orden menor o igual que Nbg. Estos vectores VTq_dist reordenados eliminados 539 pueden usarse entonces para formas coeficientes armonicos esfericos intermedios multiplicando los de los vectores Udist * Sdist reordenados 533' representativo de las versiones descompuestas de los coeficientes armonicos esfericos 511 correspondientes a las funciones de base esferica que tienen un orden menor de o igual a Nbg por los vectores VTq_dist reordenados eliminados 539 para formar los coeficientes armonicos esfericos distintos intermedios. La unidad matematica 526 puede entonces generar coeficientes armonicos esfericos de fondo modificados 537 anadiendo los coeficientes armonicos esfericos distintos intermedios a los coeficientes armonicos esfericos reducido ordenados 529'. La unidad matematica 526 puede entonces pasar estos coeficientes armonicos esfericos de fondo modificados 537 a la unidad de codificacion de audio 514, cuyo audio codifica estos coeficientes 537 para formar coeficientes armonicos esfericos de fondo modificado codificados de audio 515B'.
La unidad matematica 526 puede entonces pasar el uno o mas vectores VTpequeno 521, que pueden representar los vectores 539 representativos de una forma descompuesta de los coeficientes armonicos esfericos 511 correspondientes a funciones de base esfericas que tienen un orden mayor que Nbg y menor que o igual a Ndist. A este respecto, la unidad matematica 526 puede realizar operaciones similares a la unidad de reduccion de coeficientes 46 del dispositivo de codificacion de audio 20 mostrado en el ejemplo de la FIG. 4. La unidad matematica 526 puede pasar el uno o mas vectores VTpequeno 521 a la unidad de generacion de flujo de bits 516, que puede generar el flujo de bits 517 para incluir los vectores VTpequeno 521 a menudo en su forma codificada sin audio original. Dado que los vectores VTpequeno 521 incluyen menos vectores que los vectores VTq_dist reordenados 539, las tecnicas pueden facilitar la asignacion de menos bits a los vectores VTq_dist reordenados 539 especificando unicamente los vectores VTpequeno 521 en el flujo de bits 517.
Aunque se muestra sin cuantificar, en algunos casos, el dispositivo de codificacion de audio 510E puede cuantizar los vectores VTbg 525F. En algunos casos, tal como cuando la unidad de codificacion de audio 514 no se utiliza para comprimir coeficientes armonicos esfericos de fondo, el dispositivo de codificacion de audio 510E puede cuantizar los vectores VTbg 525F.
De este modo, las tecnicas pueden permitir que el dispositivo de codificacion de audio 510E determine al menos uno de uno o mas vectores descompuestos a partir de coeficientes armonicos esfericos a recombinar con coeficientes armonicos esfericos de fondo para reducir la cantidad de bits que se requiere asignar a uno o mas vectores en un flujo de bits, en el que los coeficientes armonicos esfericos describen un campo sonoro, y en el que los coeficientes
5
10
15
20
25
30
35
40
45
50
55
60
65
armonicos esfericos de fondo describen uno o mas componentes de fondo del mismo campo sonoro.
Es decir, las tecnicas pueden permitir que el dispositivo de codificacion de audio 510E sea configurado de una manera indicada por las siguientes clausulas.
Clausula 133149-1A. Un dispositivo, tal como el dispositivo de codificacion de audio 510E, que comprende: uno o mas procesadores configurados para determinar al menos uno de uno o mas vectores descompuestos a partir de coeficientes armonicos esfericos para ser recombinados con coeficientes armonicos esfericos de fondo para reducir una cantidad de bits que se requiere para asignarse a uno o mas vectores en un flujo de bits, en el que los coeficientes armonicos esfericos describen un campo sonoro, y en el que los coeficientes armonicos esfericos de fondo describen uno o mas componentes de fondo del mismo campo sonoro.
Clausula 133149-2A. El dispositivo de la clausula 133149-1A, en el que el uno o mas procesadores estan configurados ademas para generar un conjunto reducido de uno o mas vectores eliminando el determinado al menos uno de uno o mas vectores del uno o mas vectores.
Clausula 133149-3A. El dispositivo de la clausula 133149-1A, en el que el uno o mas procesadores estan configurados ademas para generar un conjunto reducido de uno o mas vectores eliminando el determinado al menos uno de uno o mas vectores del uno o mas vectores, recombinar el al menos uno de uno o mas vectores eliminados con los coeficientes armonicos esfericos de fondo para generar coeficientes armonicos esfericos de fondo modificados, y generar el flujo de bits para incluir el conjunto reducido de uno o mas vectores y los coeficientes armonicos esfericos de fondo modificados.
Clausula 133149-4A. El dispositivo de la clausula 133149-3A, en el que el conjunto reducido de uno o mas vectores esta incluido en el flujo de bits sin que primero se codifique con audio.
Clausula 133149-5A. El dispositivo de la clausula 133149-1A, en el que el uno o mas procesadores estan configurados adicionalmente para generar un conjunto reducido de uno o mas vectores eliminando el determinado al menos uno de uno o mas vectores del uno o mas vectores, recombinar el al menos uno eliminado de uno o mas vectores con los coeficientes armonicos esfericos de fondo para generar coeficientes armonicos esfericos de fondo modificados, codificacion de audio de los coeficientes armonicos esfericos de fondo modificados, y generar el flujo de bits para incluir el conjunto reducido de uno o mas vectores y los coeficientes armonicos esfericos de fondo modificados codificados con audio.
Clausula 133149-6A. El dispositivo de la clausula 133149-1A, en el que el uno o mas vectores comprenden vectores representativos de al menos algun aspecto de uno o mas componentes distintos del campo sonoro.
Clausula 133149-7A. El dispositivo de la clausula 133149-1A, en el que el uno o mas vectores comprenden uno o mas vectores de una transposicion de una matriz V generada, al menos en parte, realizando una descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos que describen el campo sonoro.
Clausula 133149-8A. El dispositivo de la clausula 133149-1A, en el que el uno o mas procesadores estan configurados adicionalmente para realizar una descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos para generar una matriz U representativa de los vectores singulares izquierdos de la pluralidad de armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y en el que el uno o mas vectores comprenden uno o mas vectores a partir de una transposicion de la matriz V.
Clausula 133149-9A. El dispositivo de la clausula 133149-1A, en el que el uno o mas procesadores estan configurados ademas para realizar una reduccion de orden con respecto a los coeficientes armonicos esfericos de fondo para eliminar aquellos de los coeficientes armonicos esfericos de fondo correspondientes a funciones de base esfericas que tienen un orden y/o suborden identificado, en el que los coeficientes armonicos esfericos de fondo corresponden a un orden Nbg.
Clausula 133149-10A. El dispositivo de la clausula 133149-1A, en el que el uno o mas procesadores estan configurados ademas para realizar una reduccion de orden con respecto a los coeficientes armonicos esfericos de fondo para eliminar aquellos de los coeficientes armonicos esfericos de fondo correspondientes a funciones de base esfericas que tienen un orden y/o suborden identificado, en el que los coeficientes armonicos esfericos de fondo corresponden a un orden Nbg que es menor del orden de coeficientes armonicos esfericos distintos, Ndist, y en el que los coeficientes armonicos esfericos distintos representan distintos componentes del campo sonoro.
Clausula 133149-11A. El dispositivo de la clausula 133149-1A, en el que el uno o mas procesadores estan configurados ademas para realizar una reduccion de orden con respecto a los coeficientes armonicos esfericos
5
10
15
20
25
30
35
40
45
50
55
60
65
de fondo para eliminar aquellos de los coeficientes armonicos esfericos de fondo correspondientes a funciones de base esfericas que tienen un orden y/o suborden identificado, en el que los coeficientes armonicos esfericos de fondo corresponden a un orden Nbg que es menor del orden de coeficientes armonicos esfericos distintos, Ndist, y en el que los coeficientes armonicos esfericos distintos representan distintos componentes del campo sonoro y no estan sujetos a la reduccion de orden.
Clausula 133149-12A. El dispositivo de la clausula 133149-1A, en el que el uno o mas procesadores estan configurados ademas para realizar una descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y determinar uno o mas vectores VTdist y uno o mas VTbg de una transposicion de la matriz V, uno o mas vectores VTdist describen uno o mas componentes distintos del campo sonoro y uno o mas vectores VTbg describen uno o mas componentes de fondo del campo sonoro, y en el que el uno o mas vectores incluyen uno o mas vectores VTdist.
Clausula 133149-13A. El dispositivo de la clausula 133149-1A, en el que el uno o mas procesadores estan configurados ademas para realizar una descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, determinar uno o mas vectores VTdist y uno o mas VTbg de una transposicion de la matriz V, uno o mas vectores Vdist describen uno o mas componentes distintos del campo sonoro y uno o mas vectores Vbg describen uno o mas componentes de fondo del campo sonoro, y cuantifican uno o mas vectores VTdist para generar uno o mas vectores VTq_dist, y en el que uno o mas vectores incluye uno o mas vectores VTq_dist.
Clausula 133149-14A. El dispositivo de la clausula 133149-12A o la clausula 133149-13A, en el que el uno o mas procesadores estan configurados adicionalmente para determinar uno o mas vectores Udist y uno o mas vectores Ubg de la matriz U, uno o mas vectores Udist describen uno o mas componentes distintos del campo sonoro y uno o mas vectores Ubg describen uno o mas componentes de fondo del campo sonoro, y determinan uno o mas vectores Sdist y uno o mas vectores Sbg de la matriz S, uno o mas vectores Sdist describen uno o mas componentes distintos del campo sonoro y uno o mas vectores Sbg describen uno o mas componentes de fondo del campo sonoro.
Clausula 133149-15A. El dispositivo de la clausula 133149-14A, en el que el uno o mas procesadores estan configurados ademas para determinar los coeficientes armonicos esfericos de fondo en funcion de uno o mas vectores Ubg, uno o mas vectores Sbg, y uno o mas VTbg, realizan reduccion de orden con respecto a los coeficientes armonicos esfericos de fondo para generar coeficientes armonicos esfericos de fondo reducidos que tienen un orden igual a Nbg, multiplicar uno o mas Udist por uno o mas vectores Sdist para generar uno o mas vectores Udist * Sdist, eliminar el menos uno determinado de uno o mas vectores del uno o mas vectores para generar un conjunto reducido de uno o mas vectores, multiplicar uno o mas vectores Udist * Sdist por el al menos uno eliminado de uno o mas vectores VTdist o uno o mas vectores VTq_dist para generar coeficientes armonicos esfericos distintos intermedios, y anadir los coeficientes armonicos esfericos distintos intermedios al coeficiente
J t
armonico esferico de fondo para recombinar el al menos uno eliminado de uno o mas vectores V dist o uno o mas vectores VTq_dist con los coeficientes esfericos de armonicos de fondo.
Clausula 133149-16A. El dispositivo de la clausula 133149-14A, en el que el uno o mas procesadores estan configurados ademas para determinar los coeficientes armonicos esfericos de fondo en funcion de uno o mas vectores Ubg, uno o mas vectores Sbg y uno o mas VTbg, realizar una reduccion de orden con respecto a los coeficientes armonicos esfericos de fondo para generar coeficientes armonicos esfericos de fondo reducido que tienen un orden igual a Nbg, multiplicar uno o mas Udist por uno o mas vectores Sdist para generar uno o mas Udist * Sdist, reordenar uno o mas vectores Udist * Sdist para generar uno o mas vectores Udist * Sdist reordenados, eliminar al menos uno determinado de uno o mas vectores del uno o mas vectores para generar un conjunto reducido de uno o mas vectores, multiplicar el uno o mas vectores Udist * Sdist reordenados por el al menos uno eliminado de uno o mas vectores VTdist o uno o mas vectores VTq_dist para generar coeficientes armonicos esfericos distintos intermedios, y anadir los coeficientes armonicos esfericos distintos intermedios al
J t
coeficiente armonico esferico de fondo para recombinar el al menos uno eliminado de uno o mas vectores V dist o uno o mas vectores VTq_dist con los coeficientes armonicos esfericos de fondo.
Clausula 133149-17A. El dispositivo de la clausula 133149-15A o la clausula 133149-16A, en el que el uno o mas procesadores estan configurados adicionalmente para codificar en audio los coeficientes armonicos esfericos de fondo despues de anadir los coeficientes armonicos esfericos distintos intermedios a los coeficientes armonicos esfericos de fondo, y generar el flujo de datos para incluir los coeficientes armonicos esfericos de fondo codificados en audio.
5
10
15
20
25
30
35
40
45
50
55
60
65
Clausula 133149-18A. El dispositivo de la clausula 133149-1A, en el que el uno o mas procesadores estan configurados ademas para realizar una descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos, y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, determinar uno o mas vectores VTdist y uno o mas VTbg de una transposicion de la matriz V, uno o mas vectores V dist describen uno o mas componentes distintos del campo sonoro, y uno o mas vectores Vbg describen uno o mas componentes de fondo del campo sonoro, cuantificar uno o mas vectores VTdist para generar uno o mas vectores VTq_dist, y reordenar uno o mas vectores VTq_dist para generar uno o mas vectores VTq_dist reordenados, y en el que el uno o mas vectores incluye el uno o mas vectores VTq_dist reordenados.
La FIG. 40F es un diagrama de bloques que ilustra un dispositivo de codificacion de audio ejemplar 510F que puede realizar diversos aspectos de las tecnicas descritas en esta divulgacion para comprimir los coeficientes armonicos esfericos que describen campos sonoros bidimensionales o tridimensionales. El dispositivo de codificacion de audio 510F puede ser similar al dispositivo de codificacion de audio 510C en que el dispositivo de codificacion de audio 510F incluye una unidad de compresion de audio 512, una unidad de codificacion de audio 514 y una unidad de generacion de flujo de bits 516. Ademas, la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510F puede ser similar a la del dispositivo de codificacion de audio 510C porque la unidad de compresion de audio 512 incluye una unidad de descomposicion 518 y una unidad de reordenacion de vectores 532, que pueden operar de forma similar a las unidades del dispositivo de codificacion de audio 510C. En algunos ejemplos, el dispositivo de codificacion de audio 510F puede incluir una unidad de cuantizacion 534, como se ha descrito con respecto a las FIGS. 40D y 40E, para cuantizar uno o mas vectores de cualquiera de los vectores Udist 525C, los vectores Ubg 525D, los vectores VTdist 525E y los vectores VTbg 525J.
Sin embargo, la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510F puede diferir de la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510C en que la unidad de analisis de componentes relevantes 524 de la unidad de extraccion de componentes de campo sonoro 520 puede realizar un analisis de contenido para seleccionar el numero de componentes de primer plano, denominado D en el contexto de las FIGS. 40A-40J. En otras palabras, la unidad de analisis de componentes relevantes 524 puede operar con respecto a las matrices U, S y V 519 de la manera descrita anteriormente para identificar si las versiones descompuestas de los coeficientes armonicos esfericos se generaron a partir de objetos de audio sinteticos o de una grabacion natural con un microfono. La unidad de analisis de componentes relevantes 524 puede entonces determinar D sobre la base de esta determinacion sintetica.
Ademas, la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510F puede diferir de la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510C en que la unidad de extraccion de componentes del campo sonoro 520 puede incluir una unidad adicional, una unidad de reduccion de orden y conservacion de energfa 528F (ilustrada como "unidad de red. orden y conserv. de energfa 528F"). Por estas razones, la unidad de extraccion de componentes del campo sonoro 520 del dispositivo de codificacion de audio 510F se denomina "unidad de extraccion de componentes del campo sonoro 520F".
La unidad de reduccion de orden y conservacion de energfa 528F representa una unidad configurada para realizar la reduccion de orden de los componentes de fondo de la matriz Vbg 525H representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos 511 manteniendo la energfa global (y la presion de sonido concomitante) del campo sonoro descrito en parte por la matriz Vbg completa 525H. A este respecto, la unidad de reduccion de orden y conservacion de energfa 528F puede realizar operaciones similares a las descritas anteriormente con respecto a la unidad de seleccion de fondo 48 y la unidad de compensacion de energfa 38 del dispositivo de codificacion de audio 20 mostrado en el ejemplo de la FIG. 4.
La matriz Vbg completa 525H tiene una dimensionalidad (N+1)2 x (N+1)2 - D, donde D representa varios componentes principales o, en otras palabras, valores singulares que se determinan como relevantes en terminos de ser componentes de audio distintos del campo sonoro. Es decir, la matriz Vbg completa 525H incluye aquellos valores singulares que se determinan como fondo (bg) o, en otras palabras, componentes de sonido ambiental o audio no distinto del campo sonoro.
Como se ha descrito anteriormente con respecto, por ejemplo, a la unidad de reduccion de orden 524 de las FIGS. 40B-40E, la unidad de reduccion de orden y conservacion de energfa 528F puede extraer, eliminar o borrar de otro modo (a menudo por reduccion a cero) los valores singulares de de fondo de la matriz Vbg 525H correspondientes a funciones de base esferica de orden superior. La unidad de reduccion de orden y conservacion de energfa 528F puede emitir una version reducida de la matriz Vbg 525H (designada como "matriz Vbg' 525I" y denominada en lo sucesivo "matriz Vbg' reducida 525I") para transponer la unidad 522. La matriz Vbg' reducida 5251 puede tener una dimensionalidad (q +1)2 x (N+1)2 - D, con q <N. La unidad de transposicion 522 aplica una operacion de transposicion a la matriz Vbg' reducida 525I para generar y producir una matriz VTbg' reducida transpuesta 525J a la unidad matematica 526, que puede operar para reconstruir los componentes de sonido de fondo del campo sonoro calculando Ubg * Sbg * VTbg usando la matriz Ubg 525D, la matriz Sbg 525B, y la matriz VTbg' reducida transpuesta
5
10
15
20
25
30
35
40
45
50
55
60
65
525J.
De acuerdo con las tecnicas descritas en el presente documento, la unidad de reduccion de orden y conservacion de energfa 528F esta configurada ademas para compensar posibles reducciones en la energfa total de los componentes de sonido de fondo del campo sonoro causadas por la reduccion del orden de la matriz Vbg completa 525H para generar la matriz Vbg' reducida 525I. En algunos ejemplos, la unidad de reduccion de orden y conservacion de energfa 528F compensa determinando una ganancia de compensacion en forma de valores de amplificacion que se aplican a cada una de las columnas (N+1)2 - D de la matriz Vbg' reducida 525I con el fin de aumentar la energfa cuadratica media (RMS) de la matriz Vbg' reducida 525I para igualar o al menos aproximar la RMS de la matriz Vbg completa 525H, antes de emitir la matriz Vbg' reducida 525I para transponer la unidad 522.
En algunos casos, la unidad de reduccion de orden y conservacion de energfa 528F puede determinar la energfa RMS de cada columna de la matriz Vbg completa 525H y la energfa RMS de cada columna de la matriz Vbg' reducida 525I, a continuacion, determinar el valor de amplificacion para la columna como la relacion de la primera con respecto a la ultima, como se indica en la siguiente ecuacion:
x - Vbg / Vbg',
donde a es el valor de amplificacion para una columna, Vbg representa una unica columna de la matriz Vbg 525H, y vbg' representa la columna unica correspondiente de la matriz Vbg' 525I. Esto puede representarse en la notacion matricial como:
A - VbgRMS/Vbg'RMS,
A - [ «i... «(n+i)2-d ],
donde VbgRMS es un vector RMS que tiene elementos que representan la RMS de cada columna de matriz Vbg 525H, Vbg'rms es un vector RMS que tiene elementos que representan la RMS de cada columna de la matriz Vbg' reducida 525I, y A es un vector de valor de amplificacion que tiene elementos para cada columna de la matriz Vbg 525H. La unidad de reduccion de orden y conservacion de energfa 528F aplica una multiplicacion escalar a cada columna de matriz Vbg reducida 525I usando el correspondiente valor de amplificacion a, o en forma vectorial:
V”bg - Vbg'At,
donde V"bg representa una matriz Vbg' reducida 525I que incluye compensacion de energfa. La unidad de reduccion de orden y conservacion de energfa 528F puede producir una matriz Vbg' reducida 525I que incluye una compensacion de energfa para transponer la unidad 522 para igualar (o casi igualar) la RMS de la matriz Vbg' reducida 525I con la de la matriz Vbg completa 525H. La dimensionalidad de salida de la matriz Vbg' reducida 525I que incluye la compensacion de energfa puede ser (rj+1)2x(N+1)2-D.
En algunos ejemplos, para determinar cada RMS de columnas respectivas de matriz Vbg' reducida 525I y matriz Vbg completa 525H, la unidad de reduccion de orden y conservacion de energfa 528F puede aplicar primero un reproductor de coeficientes armonicos esfericos de referencia (SHC) a las columnas. La aplicacion del reproductor de SHC de referencia por la unidad de reduccion de orden y conservacion de energfa 528F permite la determinacion de RMS en el dominio SHC para determinar la energfa del campo acustico global descrito por cada columna de la trama representada por la matriz Vbg' reducida 525I y la matriz Vbg completa 525H. Por lo tanto, en tales ejemplos, la unidad de reduccion de orden y conservacion de energfa 528F puede aplicar el reproductor de SHC de referencia a cada columna de la matriz Vbg completa 525H y a cada columna reducida de la matriz Vbg' reducida 525I, determinar los valores de RMS respectivos para la columna y la columna reducida, y determinar el valor de amplificacion para la columna como la relacion del valor de RMS para la columna con respecto al valor de RMS para la columna reducida. En algunos ejemplos, la reduccion de orden a la matriz Vbg' reducida 525I procede en direccion de la columna coincidente con la conservacion de energfa. Esto puede expresarse en pseudocodigo como se indica a continuacion:
R - ReferenceRenderer;
para m - numDist+1 : numChannels
fullV - V(:,m); //toma una columna de V -> fullV reducedV -[fullV(1 :numBG); zeros(numChannels-numBG,1)];
alpha-sqrt(sum((fullV'*R).A2)/sum((reducedV'*R).A2)); if isnan(alpha) ||isinf(alpha), alpha - 1; end;
V_out(:,m) - reducedV * alpha; fin
En el pseudocodigo anterior, numChannels puede representar (N+1)2 - D, numBG puede representar (rj+1)2, V puede representar la matriz Vbg 525H, y V_out puede representar la matriz Vbg' reducida 525I, y R puede representar el reproductor de SHC de referencia de la unidad de reduccion de orden y conservacion de energfa
5
10
15
20
25
30
35
40
45
50
55
60
65
528F. La dimensionalidad de V puede ser (N+1)2 x (N+1)2 - D y la dimensionalidad de V_out puede ser (rj +1)2 x (N+1)2 - D.
Como resultado, el dispositivo de codificacion de audio 510F puede, al representar la pluralidad de coeficientes armonicos esfericos 511, reconstruir los componentes de sonido de fondo usando una matriz Vbg' reducida ordenada 525I que incluye compensacion de energfa que puede perderse como resultado del proceso de reduccion de orden.
La FIG. 40G es un diagrama de bloques que ilustra un dispositivo de codificacion de audio ejemplar 510G que puede realizar diversos aspectos de las tecnicas descritas en esta divulgacion para comprimir los coeficientes armonicos esfericos que describen campos sonoros bidimensionales o tridimensionales. En el ejemplo de la FIG. 40G, el dispositivo de codificacion de audio 510G incluye una unidad de extraccion de componentes del campo sonoro 520F. A su vez, la unidad de extraccion de componentes del campo sonoro 520F incluye una unidad de analisis de componentes relevantes 524G.
La unidad de compresion de audio 512 del dispositivo de codificacion de audio 510G puede, sin embargo, diferir de la unidad de compresion de audio 512 del dispositivo de codificacion de audio 10F en que la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510G incluye una unidad de analisis de componentes relevantes 524G. La unidad de analisis de componentes relevantes 524G puede representar una unidad configurada para determinar la saliencia o distincion de los datos de audio que representan un campo sonoro, usando informacion basada en direccionalidad asociada con los datos de audio.
Mientras que las determinaciones basadas en energfa pueden mejorar la reproduccion de un campo sonoro descompuesto por SVD para identificar componentes de audio distintos del campo sonoro, las determinaciones basadas en energfa tambien pueden hacer que un dispositivo identifique erroneamente componentes de audio de fondo como componentes de audio distintos, en aquellos casos en los que los componentes de audio de fondo exhiben un alto nivel de energfa. Es decir, una separacion de componentes de audio distintos y de fondo, exclusivamente basada en energfa, puede no ser robusta, ya que los componentes de audio de fondo energeticos (por ejemplo, mas altos) pueden identificarse incorrectamente como componentes de audio distintos. Para distinguir mas fuertemente entre componentes de audio distintos y de fondo del campo sonoro, diversos aspectos de las tecnicas descritas en esta divulgacion pueden permitir que la unidad de analisis de componentes relevantes 524G realice un analisis basado en direccionalidad de SHC 511 para separar componentes de audio distintos y de fondo de versiones descompuestas de SHC 511.
La unidad de analisis de componentes relevantes 524G puede, en el ejemplo de la FIG. 40H, representar una unidad configurada o operable de otro modo para separar elementos distintos (o de primer plano) de elementos de fondo incluidos en una o mas de la matriz V 519, la matriz S 519B y la matriz U 519C, similar a las unidades de analisis de componentes relevantes 524 de los dispositivos de codificacion de audio descritos anteriormente 510-510F. De acuerdo con algunas tecnicas basadas en SVD, los componentes mas energeticos (por ejemplo, los primeros vectores de una o mas de las matrices V, S y U 519-519C, o una matriz derivada de las mismas) pueden tratarse como componentes distintos. Sin embargo, los componentes mas energicos (que estan representados por vectores) de una o mas de las matrices 519-519C no pueden, en ninguno de los escenarios, representar los componentes/senales que son los mas direccionales.
A diferencia de las unidades de analisis de componentes relevantes descritas anteriormente 524, la unidad de analisis de componentes relevantes 524G puede implementar uno o mas aspectos de las tecnicas descritas en el presente documento para identificar elementos de primer plano basados en la direccionalidad de los vectores de una o mas de las matrices 519-519C o una matriz derivada de las mismas. En algunos ejemplos, la unidad de analisis de componentes relevantes 524G puede identificar o seleccionar como componentes de audio distintos (donde los componentes tambien pueden denominarse "objetos"), uno o mas vectores basados tanto en energfa como en la direccionalidad de los vectores. Por ejemplo, la unidad de analisis de componentes relevantes 524G puede identificar aquellos vectores de una o mas de las matrices 519-519C (o una matriz derivada de las mismas) que muestran tanto alta energfa como alta direccionalidad (por ejemplo, representada como cociente de direccionalidad) como componentes de audio distintos. Como resultado, si la unidad de analisis de componentes relevantes 524G determina que un vector particular es relativamente menos direccional cuando se compara con otros vectores de una o mas de las matrices 519-519C (o una matriz derivada de las mismas), independientemente entonces del nivel de energfa asociado con el vector particular, la unidad de analisis de componentes relevantes 524G puede determinar que el vector particular representa componentes de audio de fondo (o ambientales) del campo sonoro representado por los SHC 511. A este respecto, la unidad de analisis de componentes relevantes 524G puede realizar operaciones similares a las descritas anteriormente con respecto a la unidad de analisis de campo sonoro 44 del dispositivo de codificacion de audio 20 mostrado en el ejemplo de la FIG. 4.
En algunas implementaciones, la unidad de analisis de componentes relevantes 524G puede identificar objetos de audio distintos (que, como se ha indicado anteriormente, tambien pueden denominarse "componentes") basandose en la direccionalidad, realizando las siguientes operaciones. La unidad de analisis de componentes relevantes 524G puede multiplicar (por ejemplo, utilizando uno o mas procesos de multiplicacion de matrices) la matriz V 519A por la matriz S 519B. Mediante la multiplicacion de la matriz V 519A y la matriz S 519B, la unidad de analisis de
5
10
15
20
25
30
35
40
45
50
55
60
65
componentes relevantes 524G puede obtener una matriz VS. Ademas, la unidad de analisis de componentes relevantes 524G puede cuadrar (es decir, exponenciar por una potencia de dos) al menos algunas de las entradas de cada uno de los vectores (que pueden ser una fila) de la matriz VS. En algunos casos, la unidad de analisis de componentes relevantes 524G puede sumar aquellas entradas al cuadrado de cada vector que estan asociadas con un orden mayor que 1. Como un ejemplo, si cada vector de la matriz incluye 25 entradas, la unidad de analisis de componentes relevantes 524G puede, con respecto a cada vector, elevar al cuadrado las entradas de cada vector comenzando por la entrada quinta y terminando por la entrada vigesimo quinta, sumando las entradas al cuadrado para determinar un cociente de direccionalidad (o un indicador de direccionalidad). Cada operacion de suma puede dar como resultado un cociente de direccionalidad para un vector correspondiente. En este ejemplo, la unidad de analisis de componentes relevantes 524G puede determinar que aquellas entradas de cada fila que estan asociadas con un orden menor o igual a 1, concretamente, de la primera a la cuarta entradas, se dirigen mas generalmente a la cantidad de energfa y menos a la direccionalidad de esas entradas. Es decir, los ambisonicos de orden inferior asociados a un orden de cero o uno corresponden a funciones de base esferica que, como se ilustra en la FIG. 1 y la FIG. 2, no proporcionan mucho en terminos de la direccion de la onda de presion, sino que proporcionan algo de volumen (que es representativo de la energfa).
Las operaciones descritas en el ejemplo anterior tambien se pueden expresar de acuerdo con el siguiente pseudocodigo. El pseudocodigo siguiente incluye anotaciones, en forma de declaraciones de comentarios que se incluyen en las instancias consecutivas de las cadenas de caracteres "/*" y "*/" (sin comillas).
[U,S,V] = svd(audioframe,'ecom');
VS = V*S;
/* La lfnea siguiente se dirige a analizar cada fila independientemente y a sumar los valores de la primera fila (por ejemplo) de la quinta entrada a la entrada vigesimo quinta para determinar un cociente de direccionalidad o metrica de direccionalidad para un vector correspondiente. Elevar al cuadrado las entradas antes de sumar. Las entradas en cada fila que estan asociadas con un orden mayor que 1 estan asociadas con ambisonicos de orden superior y, por lo tanto, tienen mas probabilidades de ser direccionales. */
SumVS = sum(VS(5:end,:)A2,1);
/* La lfnea siguiente se dirige a ordenar la suma de los cuadrados de la matriz VS generada, y a seleccionar un conjunto de los valores mas grandes (por ejemplo, tres o cuatro de los valores mas grandes) */
[~,idxVS] = sort(sumVS,'descend');
U = U(:,idxVS);
V = V(:,idxVS);
S = S(idxVS,idxVS);
En otras palabras, de acuerdo con el pseudocodigo anterior, la unidad de analisis de componentes relevantes 524G puede seleccionar entradas de cada vector de la matriz VS descompuesta de las de los SHC 511 correspondientes a una funcion de base esferica que tiene un orden mayor que uno. La unidad de analisis de componentes relevantes 524G puede entonces elevar al cuadrado estas entradas para cada vector de la matriz VS, sumando las entradas elevadas al cuadrado para identificar, calcular o, de algun modo, determinar una metrica o cociente de direccionalidad para cada vector de la matriz VS. A continuacion, la unidad de analisis de componentes relevantes 524G puede ordenar los vectores de la matriz VS en base a las respectivas metricas de direccionalidad de cada uno de los vectores. La unidad de analisis de componentes relevantes 524G puede clasificar estos vectores en un orden descendente de metricas de direccionalidad, de tal manera que los vectores con la direccionalidad correspondiente mas alta son los primeros y aquellos vectores con la direccionalidad correspondiente mas baja son ultimos. La unidad de analisis de componentes relevantes 524G puede entonces seleccionar el subconjunto diferente de cero de los vectores que tienen la metrica de direccionalidad relativa mas alta.
De acuerdo con algunos aspectos de las tecnicas descritas en el presente documento, el dispositivo de codificacion de audio 510G, o uno o mas de sus componentes, puede identificar o utilizar de otra manera un numero predeterminado de los vectores de la matriz VS como componentes de audio distintos. Por ejemplo, despues de seleccionar las entradas 5 a 25 de cada fila de la matriz VS y de elevar al cuadrado y sumar las entradas seleccionadas para determinar la metrica de direccionalidad relativa para cada vector respectivo, la unidad de analisis de componentes relevantes 524G puede implementar una seleccion adicional entre los vectores para identificar vectores que representan distintos componentes de audio. En algunos ejemplos, la unidad de analisis de componentes relevantes 524G puede seleccionar un numero predeterminado de los vectores de la matriz VS, comparando los cocientes de direccionalidad de los vectores. Como ejemplo, la unidad de analisis de componentes relevantes 524G puede seleccionar los cuatro vectores representados en la matriz VS que tienen los cuatro
5
10
15
20
25
30
35
40
45
50
55
60
65
cocientes de direccionalidad mas elevados (y que son los primeros cuatro vectores de la matriz VS ordenada). A su vez, la unidad de analisis de componentes relevantes 524G puede determinar que los cuatro vectores seleccionados representan los cuatro objetos de audio mas distintos asociados con la representacion SHC correspondiente del campo sonoro.
En algunos ejemplos, la unidad de analisis de componentes relevantes 524G puede reordenar los vectores derivados de la matriz VS, para reflejar la distincion de los cuatro vectores seleccionados, como se ha descrito anteriormente. En un ejemplo, la unidad de analisis de componentes relevantes 524G puede reordenar los vectores de tal manera que las cuatro entradas seleccionadas se reubican en la parte superior de la matriz VS. Por ejemplo, la unidad de analisis de componentes relevantes 524G puede modificar la matriz VS de modo que las cuatro entradas seleccionadas esten situadas en una primera fila (o superior) de la matriz VS reordenada resultante. Aunque se describe en el presente documento con respecto a la unidad de analisis de componentes relevantes 524G, en diversas implementaciones, otros componentes del dispositivo de codificacion de audio 510G, tal como la unidad de reordenacion de vectores 532, pueden realizar la reordenacion.
La unidad de analisis de componentes relevantes 524G puede comunicar la matriz resultante (es decir, la matriz VS, reordenada o no, segun sea el caso) a la unidad de generacion de flujo de bits 516. A su vez, la unidad de generacion de flujo de bits 516 puede usar la matriz VS 525K para generar el flujo de bits 517. Por ejemplo, si la unidad de analisis de componentes relevantes 524G ha reordenado la matriz VS 525K, la unidad de generacion de flujo de bits 516 puede usar la fila superior de la version reordenada de matriz VS 525K como objetos de audio distintos, por ejemplo cuantificando o descartando los vectores restantes de la version reordenada de la matriz VS 525K. Mediante la cuantizacion de los vectores restantes de la version reordenada de la matriz VS 525K, la unidad de generacion de flujo de bits 16 puede tratar los vectores restantes como datos de audio ambiental o de fondo.
En los ejemplos en los que la unidad de analisis de componentes relevantes 524G no ha reordenado la matriz VS 525K, la unidad de generacion de flujo de bits 516 puede distinguir datos de audio distintos de datos de audio de fondo, basados en entradas particulares (por ejemplo, las entradas 5a a 25a) de cada fila de la matriz VS 525K, segun se seleccionan por la unidad de analisis de componentes relevantes 524G. Por ejemplo, la unidad de generacion de flujo de bits 516 puede generar el flujo de bits 517 cuantificando o descartando las primeras cuatro entradas de cada fila de la matriz VS 525K.
De esta manera, el dispositivo de codificacion de audio 510G y/o sus componentes, tal como la unidad de analisis de componentes relevantes 524G, pueden implementar tecnicas de esta divulgacion para determinar o utilizar de otra manera las relaciones de las energfas de coeficientes mayores e inferiores de datos de audio, con el fin de distinguir entre distintos objetos de audio y datos de audio de fondo representativos del campo sonoro. Por ejemplo, como se describe, la unidad de analisis de componentes relevantes 524G puede utilizar las relaciones de energfa basadas en valores de las diversas entradas de la matriz VS 525K generadas por la unidad de analisis de componentes relevantes 524H. Mediante la combinacion de datos proporcionados por la matriz V 519A y la matriz S 519B, la unidad de analisis de componentes relevantes 524g puede generar la matriz VS 525K para proporcionar informacion sobre la direccionalidad y la energfa global de los diversos componentes de los datos de audio, en la forma de vectores y datos relacionados (por ejemplo, cocientes de direccionalidad). Mas especfficamente, la matriz V 519A puede proporcionar informacion relacionada con determinaciones de direccionalidad, mientras que la matriz S 519B puede proporcionar informacion relacionada con determinaciones energeticas globales para los componentes de los datos de audio.
En otros ejemplos, la unidad de analisis de componentes relevantes 524G puede generar la matriz VS 525K usando los vectores VTdist reordenados 539. En estos ejemplos, la unidad de analisis de componentes relevantes 524G puede determinar la distincion basada en la matriz V 519, antes de cualquier modificacion basada en la matriz S 519B. En otras palabras, de acuerdo con estos ejemplos, la unidad de analisis de componentes relevantes 524G puede determinar la direccionalidad usando solo la matriz V 519, sin realizar la etapa de generacion de la matriz VS 525K. Mas especfficamente, la matriz V 519A puede proporcionar informacion sobre la forma en que se mezclan componentes (por ejemplo, vectores de la matriz V 519) de los datos de audio y, potencialmente, informacion sobre diversos efectos sinergicos de los datos transportados por los vectores. Por ejemplo, la matriz V 519A puede proporcionar informacion sobre la "direccion de llegada" de diversos componentes de audio representados por los vectores, tales como la direccion de llegada de cada componente de audio, segun se transmiten al dispositivo de codificacion de audio 510G por un EigenMike®. Como se utiliza en el presente documento, la expresion "componente de datos de audio" se puede usar indistintamente con "entrada" de cualquiera de las matrices 519 o cualquier matriz derivada de las mismas.
De acuerdo con algunas implementaciones de las tecnicas de esta descripcion, la unidad de analisis de componentes relevantes 524G puede complementar o aumentar las representaciones de SHC con informacion extraha para realizar diversas determinaciones descritas en el presente documento. Como un ejemplo, la unidad de analisis de componentes relevantes 524G puede aumentar el SHC con informacion extraha con el fin de determinar la saliencia de varios componentes de audio representados en las matrices 519-519C. Como otro ejemplo, la unidad de analisis de componentes relevantes 524G y/o la unidad de reordenacion de vectores 532 pueden aumentar el HOA con datos extrahos para distinguir entre objetos de audio distintos y datos de audio de fondo.
5
10
15
20
25
30
35
40
45
50
55
60
65
En algunos ejemplos, la unidad de analisis de componentes relevantes 524G puede detectar que partes (por ejemplo, objetos de audio distintos) de los datos de audio muestran energfa keynesiana. Un ejemplo de tales objetos distintos puede estar asociado con una voz humana que modula. En el caso de los datos de audio basadosen voz que modula, la unidad de analisis de componentes relevantes 524G puede determinar que la energfa de los datos de modulacion, como relacion con respecto a las energfas de los componentes restantes, permanece aproximadamente constante (por ejemplo, constante dentro de un intervalo umbral), o aproximadamente estacionaria en el tiempo. Tradicionalmente, si las caractensticas de energfa de distintos componentes de audio con energfa keynesiana (por ejemplo, los asociados con la voz de modulacion) cambian de una trama de audio a otra, un dispositivo puede no ser capaz de identificar la serie de componentes de audio como una sola senal. Sin embargo, la unidad de analisis de componentes relevantes 524G puede implementar tecnicas de esta divulgacion para determinar una direccionalidad o una apertura del objeto de distancia representado como un vector en las diversas matrices.
Mas espedficamente, la unidad de analisis de componentes relevantes 524G puede determinar que es improbable que las caractensticas tales como la direccionalidad y/o la apertura cambien sustancialmente a traves de las tramas de audio. Como se utiliza en el presente documento, la apertura representa una relacion entre los coeficientes de orden superior y los coeficientes de orden inferior, dentro de los datos de audio. Cada fila de la matriz V 519A puede incluir vectores que corresponden a SHC particulares. La unidad de analisis de componentes relevantes 524G puede determinar que los SHC de orden inferior (por ejemplo, asociado con un orden menor o igual a 1) tienden a representar datos ambientales, mientras que las entradas de orden superior tienden a representar datos distintos. Ademas, la unidad de analisis de componentes relevantes 524G puede determinar que, en muchos casos, los SHC de orden superior (por ejemplo, asociados con un orden mayor de 1) muestran una mayor energfa, y que la relacion de energfa de los SHC de orden superior con respecto a orden inferior permanece sustancialmente similar (o aproximadamente constante) de trama de audio a trama de audio.
Uno o mas componentes de la unidad de analisis de componentes relevantes 524G pueden determinar caractensticas de los datos de audio tales como direccionalidad y apertura, utilizando la matriz V 519. De esta manera, los componentes del dispositivo de codificacion de audio 510G, tal como la unidad de analisis de componentes relevantes 524G, pueden implementar las tecnicas descritas en el presente documento para determinar saliencia y/o distinguir objetos de audio distintos del audio de fondo, utilizando informacion basada en direccionalidad. Mediante la utilizacion de la direccionalidad para determinar la saliencia y/o la distincion, la unidad de analisis de componentes relevantes 524G puede llegar a determinaciones mas robustas que en los casos de un dispositivo configurado para determinar la saliencia y/o distincion usando solo datos basados en energfa. Aunque se ha descrito anteriormente con respecto a las determinaciones basadas en la direccionalidad de la saliencia y/o distincion, la unidad de analisis de componentes relevantes 524G puede implementar las tecnicas de esta divulgacion para usar la direccionalidad ademas de otras caractensticas, tales como la energfa, para determinar la saliencia y/o la distincion de componentes particulares de los datos de audio, segun se representa por vectores de una o mas de las matrices 519-519C (o cualquier matriz derivada de las mismas).
En algunos casos, un procedimiento incluye identificar uno o mas objetos de audio distintos de uno o mas coeficientes armonicos esfericos (SHC) asociados con los objetos de audio basados en una direccionalidad determinada para uno o mas de los objetos de audio. En un ejemplo, el procedimiento incluye ademas determinar la direccionalidad de uno o mas objetos de audio basandose en los coeficientes armonicos esfericos asociados con los objetos de audio. En algunos ejemplos, el procedimiento incluye ademas realizar una descomposicion en valores singulares con respecto a los coeficientes armonicos esfericos para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos; y representar la pluralidad de coeficientes armonicos esfericos en funcion de al menos una parte de una o mas de la matriz U, la matriz S y la matriz V, en el que la determinacion de la direccionalidad respectiva de uno o mas objetos de audio se basa, al menos en parte, en la matriz V.
En un ejemplo, el procedimiento incluye ademas reordenar uno o mas vectores de la matriz V de modo que los vectores que tienen un mayor cociente de direccionalidad se posicionan por encima de los vectores que tienen un cociente de direccionalidad menor en la matriz V reordenada. En un ejemplo, el procedimiento incluye ademas determinar que los vectores que tienen el mayor cociente de direccionalidad incluyen mayor informacion direccional que los vectores que tienen el cociente de direccionalidad menor. En un ejemplo, el procedimiento incluye ademas multiplicar la matriz V por la matriz S para generar una matriz VS, incluyendo la matriz VS uno o mas vectores. En un ejemplo, el procedimiento incluye ademas seleccionar entradas de cada fila de la matriz VS que estan asociadas con un orden mayor de 1, elevar al cuadrado cada una de las entradas seleccionadas para formar entradas cuadraticas correspondientes, y para cada fila de la matriz VS, sumar todas las entradas al cuadrado para determinar un cociente de direccionalidad para un vector correspondiente.
En algunos ejemplos, cada fila de la matriz VS incluye 25 entradas. En un ejemplo, seleccionar las entradas de cada fila de la matriz VS asociada con el orden mayor de 1 incluye seleccionar todas las entradas que empiezan en una 5a
5
10
15
20
25
30
35
40
45
50
55
60
65
entrada de cada fila de la matriz VS y que terminan en una 25a entrada de cada fila de la VS. En un ejemplo, el procedimiento incluye ademas seleccionar un subconjunto de los vectores de la matriz VS para representar los distintos objetos de audio. En algunos ejemplos, seleccionar el subconjunto incluye seleccionar cuatro vectores de la matriz VS, y los cuatro vectores seleccionados tienen los cuatro cocientes de direccionalidad mas grandes de todos los vectores de la matriz VS. En un ejemplo, la determinacion de que el subconjunto seleccionado de los vectores representan los objetos de audio distintos se basa tanto en la direccionalidad como en una energfa de cada vector.
En algunos casos, un procedimiento incluye identificar uno o mas objetos de audio distintos de uno o mas coeficientes armonicos esfericos asociados con los objetos de audio basados en una direccionalidad y una energfa determinadas para uno o mas de los objetos de audio. En un ejemplo, el procedimiento incluye ademas determinar una o ambas de la direccionalidad y la energfa de uno o mas objetos de audio basandose en los coeficientes armonicos esfericos asociados con los objetos de audio. En algunos ejemplos, el procedimiento incluye ademas realizar una descomposicion en valores singulares con respecto a los coeficientes armonicos esfericos representativos del campo sonoro para generar una matriz U representativa de vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y representar la pluralidad de coeficientes armonicos esfericos en funcion de al menos una parte de una o mas de la matriz U, la matriz S y la matriz V, en el que la determinacion de la direccionalidad respectiva de uno o mas objetos de audio se basa, al menos en parte, en la matriz V, y en el que la determinacion de la energfa respectiva del uno o mas objetos de audio se basa, al menos en parte, en la matriz S.
En un ejemplo, el procedimiento incluye ademas multiplicar la matriz V por la matriz S para generar una matriz VS, incluyendo la matriz VS uno o mas vectores. En algunos ejemplos, el procedimiento incluye ademas seleccionar entradas de cada fila de la matriz VS que estan asociadas con un orden mayor de 1, elevar al cuadrado cada una de las entradas seleccionadas para formar entradas cuadraticas correspondientes, y para cada fila de la matriz VS, sumar todas las entradas al cuadrado para generar un cociente de direccionalidad para un vector correspondiente de la matriz VS. En algunos ejemplos, cada fila de la matriz VS incluye 25 entradas. En un ejemplo, seleccionar las entradas de cada fila de la matriz VS asociada con el orden mayor de 1 comprende seleccionar todas las entradas que empiezan en una 5a entrada de cada fila de la matriz VS y que terminan en una 25a entrada de cada fila de la Vs. En algunos ejemplos, el procedimiento incluye ademas seleccionar un subconjunto de los vectores para representar objetos de audio distintos. En un ejemplo, seleccionar el subconjunto comprende seleccionar cuatro vectores de la matriz VS, y los cuatro vectores seleccionados tienen los cuatro cocientes de direccionalidad mas grandes de todos los vectores de la matriz VS. En algunos ejemplos, la determinacion de que el subconjunto seleccionado de los vectores representan los objetos de audio distintos se basa tanto en la direccionalidad como en una energfa de cada vector.
En algunos casos, un procedimiento incluye determinar, usando informacion basada en la direccionalidad, uno o mas primeros vectores que describen componentes distintos del campo sonoro y uno o mas segundos vectores que describen componentes de fondo del campo sonoro, tanto uno como los mas primeros vectores y uno o los mas segundos vectores generados al menos realizando una transformacion con respecto a la pluralidad de coeficientes armonicos esfericos. En un ejemplo, la transformacion comprende una descomposicion en valores singulares que genera una matriz U representativa de los vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de los valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos. En un ejemplo, la transformacion comprende un analisis de componentes principales para identificar los distintos componentes del campo sonoro y los componentes de fondo del campo sonoro.
En algunos ejemplos, un dispositivo esta configurado o es operativo de otro modo, para llevar a cabo cualquiera de las tecnicas descritas en el presente documento o cualquier combinacion de las tecnicas. En algunos ejemplos, se codifica un medio de almacenamiento legible por ordenador con instrucciones que, cuando se ejecutan, hacen que uno o mas procesadores realicen cualquiera de las tecnicas descritas en el presente documento o cualquier combinacion de las tecnicas. En algunos ejemplos, un dispositivo incluye medios para llevar a cabo cualquiera de las tecnicas descritas en el presente documento o cualquier combinacion de las tecnicas.
Es decir, los aspectos anteriores de las tecnicas pueden permitir que el dispositivo de codificacion de audio 510G sea configurado para funcionar de acuerdo con las siguientes clausulas.
Clausula 134954-1B. Un dispositivo, tal como el dispositivo de codificacion de audio 510G, que comprende: uno o mas procesadores configurados para identificar uno o mas objetos de audio distintos a partir de uno o mas coeficientes armonicos esfericos asociados con los objetos de audio, basados en una direccionalidad y una energfa determinada para uno o mas de los objetos de audio.
Clausula 134954-2B. El dispositivo de la clausula 134954-1B, en el que el uno o mas procesadores estan configurados adicionalmente para determinar una o ambas de la direccionalidad y la energfa de uno o mas objetos de audio basandose en los coeficientes armonicos esfericos asociados con los objetos de audio.
5
10
15
20
25
30
35
40
45
50
55
60
65
Clausula 134954-3B. El dispositivo de cualquiera de las reivindicaciones 1B o 2B o combinacion de las mismas, en el que el uno o mas procesadores estan configurados ademas para realizar una descomposicion en valores singulares con respecto a los coeficientes armonicos esfericos representativos del campo sonoro para generar una matriz U representativa de los vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la pluralidad de coeficientes armonicos esfericos, y una matriz V representativa de vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos, y representar la pluralidad de coeficientes armonicos esfericos en funcion de al menos una parte de una o mas de la matriz U, la matriz S y la matriz V, en el que el uno o mas procesadores estan configurados para determinar la direccionalidad respectiva de uno o mas objetos de audio basados,al menos en parte, en la matriz V, y en el que uno o mas procesadores estan configurados para determinar la energfa respectiva de uno o mas objetos de audio que se basa, al menos en parte, en la matriz S.
Clausula 134954-4B. El dispositivo de la clausula 134954-3B, en el que el uno o mas procesadores estan configurados adicionalmente para multiplicar la matriz V por la matriz S para generar una matriz VS, incluyendo la matriz VS uno o mas vectores.
Clausula 134954-5B. El dispositivo de la clausula 134954-4B, en el que el uno o mas procesadores estan configurados ademas para seleccionar entradas de cada fila de la matriz VS que estan asociadas con un orden mayor de 1, elevar al cuadrado cada una de las entradas seleccionadas para formar entradas cuadradas correspondientes, y para cada fila de la matriz VS, sumar todas las entradas al cuadrado para generar un cociente de direccionalidad para un vector correspondiente de la matriz VS.
Clausula 134954-6B. El dispositivo de cualquiera de las reivindicaciones 5B y 6B o una combinacion de las mismas, en el que cada fila de la matriz VS incluye 25 entradas.
Clausula 134954-7B. El dispositivo de la clausula 134954-6B, en el que el uno o mas procesadores estan configurados para seleccionar todas las entradas que comienzan en una quinta entrada de cada fila de la matriz VS y que terminan en una 25a entrada de cada fila de la matriz VS.
Clausula 134954-8B. El dispositivo de cualquiera de las clausulas 134954-6B y la clausula 134954-7B, o una combinacion de las mismas, en el que el uno o mas procesadores estan configurados ademas para seleccionar un subconjunto de los vectores para representar objetos de audio distintos.
Clausula 134954-9B. El dispositivo de la clausula 134954-8B, en el que el uno o mas procesadores estan configurados para seleccionar cuatro vectores de la matriz VS, y en el que los cuatro vectores seleccionados tienen los cuatro cocientes de direccionalidad mas grandes de todos los vectores de la matriz VS.
Clausula 134954-10B. El dispositivo de cualquiera de la clausula 134954-8B y la clausula 134954-9B o combinacion de las mismas, en el que el uno o mas procesadores estan configurados adicionalmente para determinar que el subconjunto seleccionado de los vectores representan los distintos objetos de audio que se basa tanto en la direccionalidad como en una energfa de cada vector.
Clausula 134954-1C. Un dispositivo, tal como el dispositivo de codificacion de audio 510G, que comprende: uno o mas procesadores configurados para determinar, usando informacion basada en direccionalidad, uno o mas primeros vectores que describen componentes distintos del campo sonoro y uno o mas segundos vectores que describen componentes de fondo del campo sonido, tanto el uno o mas primeros vectores y uno o mas segundos vectores generados al menos realizando una transformacion con respecto a la pluralidad de coeficientes armonicos esfericos.
Clausula 134954-2C. El procedimiento de la clausula 134954-1C, en el que la transformacion comprende una descomposicion en valores singulares que genera una matriz U representativa de los vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de los valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos.
Clausula 134954-3C. El procedimiento de la clausula 134954-2C, que comprende ademas las operaciones enumeradas por cualquier combinacion de la clausula 134954-1A a la clausula 134954-12A y la clausula 134954- 1B a la clausula 134954-9B.
Clausula 134954-4C. El procedimiento de la clausula 134954-1C, en el que la transformacion comprende un analisis de componentes principales para identificar los distintos componentes del campo sonoro y los componentes de fondo del campo sonoro.
La FIG. 40H es un diagrama de bloques que ilustra un dispositivo de codificacion de audio ejemplar 510H que puede realizar diversos aspectos de las tecnicas descritas en esta divulgacion para comprimir los coeficientes armonicos esfericos que describen campos sonoros bidimensionales o tridimensionales. El dispositivo de codificacion de audio
5
10
15
20
25
30
35
40
45
50
55
60
65
510H puede ser similar al dispositivo de codificacion de audio 510G en que el dispositivo de codificacion de audio 510H incluye una unidad de compresion de audio 512, una unidad de codificacion de audio 514 y una unidad de generacion de flujo de bits 516. Ademas, la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510H puede ser similar a la del dispositivo de codificacion de audio 510C porque la unidad de compresion de audio 512 incluye una unidad de descomposicion 518 y una unidad de extraccion de componentes del campo sonoro 520G, que pueden operar de forma similar a las unidades del dispositivo de codificacion de audio 510G. En algunos ejemplos, el dispositivo de codificacion de audio 510H puede incluir una unidad de cuantizacion 534, como se ha descrito con respecto a las FIGS. 40D-40E, para cuantizar uno o mas vectores de cualquiera de los vectores Udist 525C, los vectores Ubg 525D, los vectores VTdist 525E y los vectores VTbg 525J.
La unidad de compresion de audio 512 del dispositivo de codificacion de audio 510H puede, sin embargo, diferir de la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510G en que la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510H incluye una unidad adicional denominada como unidad de interpolacion 550. La unidad de interpolacion 550 puede representar una unidad que interpola subtramas de una primera trama de audio de las subtramas de la primera trama de audio y una segunda trama de audio temporalmente posterior o anterior, como se describe con mas detalle a continuacion con respecto a las FIGS. 45 y 45B. La unidad de interpolacion 550 puede reducir, al realizar esta interpolacion, la complejidad computacional (en terminos de ciclos de procesamiento y/o consumo de memoria) reduciendo potencialmente la medida en que la unidad de descomposicion 518 se requiere para descomponer SHC 511. A este respecto, la unidad de interpolacion 550 puede realizar operaciones similares a las descritas anteriormente con respecto a la unidad de interpolacion espacio-temporal 50 del dispositivo de codificacion de audio 24 mostrado en el ejemplo de la FIG. 4.
Es decir, la descomposicion en valores singulares realizada por la unidad de descomposicion 518 es potencialmente muy intensiva en el procesador y/o la memoria, mientras que en algunos ejemplos, toma cantidades extensas de tiempo para descomponer los sHc 511, especialmente conforme aumenta el orden de los SHC 511. Con el fin de reducir la cantidad de tiempo y hacer que la compresion de los SHC 511 sea mas eficiente (en terminos de ciclos de procesamiento y/o consumo de memoria), las tecnicas descritas en esta divulgacion pueden proporcionar la interpolacion de una o mas subtramas de la primera trama de audio, donde cada una de las subtramas puede representar versiones descompuestas de los sHc 511. En lugar de realizar la SVD con respecto a toda la trama, las tecnicas pueden permitir que la unidad de descomposicion 518 descomponga una primera subtrama de una primera trama de audio, generando una matriz V 519'.
La unidad de descomposicion 518 tambien puede descomponer una segunda subtrama de una segunda trama de audio, en la que esta segunda trama de audio puede ser temporalmente posterior o temporalmente anterior a la primera trama de audio. La unidad de descomposicion 518 puede emitir una matriz V 519' para esta subtrama de la segunda trama de audio. La unidad de interpolacion 550 puede entonces interpolar las subtramas restantes de la primera trama de audio basandose en las matrices V 519' descompuestas de las primera y segunda subtramas, dando la matriz V 519, la matriz S 519B y la matriz U 519C, donde las descomposiciones para las subtramas restantes se pueden calcular basandose en los SHC 511, la matriz V 519A para la primera trama de audio y las matrices V 519 interpoladas para las subtramas restantes de la primera trama de audio. Por lo tanto, la interpolacion puede evitar el calculo de las descomposiciones para las subtramas restantes de la primera trama de audio.
Ademas, como se ha indicado anteriormente, la matriz U 519C puede no ser continua de una trama a otra, donde pueden especificarse componentes distintos de la matriz U 519C descompuestos de una primera trama de audio de los SHC 511 en filas y/o columnas diferentes que en la matriz U 519C descompuesta a partir de una segunda trama de audio de los SHC 511. Mediante la realizacion de esta interpolacion, la discontinuidad puede reducirse dado que la interpolacion lineal puede tener un efecto suavizante que puede reducir los artefactos introducidos debido a los lfmites de la trama (o, en otras palabras, la segmentacion de los SHC 511 en tramas). El uso de la matriz V 519' para realizar esta interpolacion y despues recuperar las matrices U 519C basadas en la matriz V 519' interpolada de los SHC 511 puede suavizar cualquier efecto de reorganizar la matriz U 519C.
En funcionamiento, la unidad de interpolacion 550 puede interpolar una o mas subtramas de una primera trama de audio a partir de una primera descomposicion, por ejemplo, la matriz V 519', de una parte de una primera pluralidad de coeficientes armonicos esfericos 511 incluidos en la primera trama y una segunda descomposicion, por ejemplo, la matriz V 519', de una porcion de una segunda pluralidad de coeficientes armonicos esfericos 511 incluidos en una segunda trama para generar coeficientes armonicos esfericos interpolados descompuestos para la una o mas subtramas.
En algunos ejemplos, la primera descomposicion comprende la primera matriz V 519' representativa de vectores singulares derechos de la porcion de la primera pluralidad de coeficientes armonicos esfericos 511. De manera similar, en algunos ejemplos, la segunda descomposicion comprende la segunda matriz V 519' representativa de vectores singulares derechos de la porcion de la segunda pluralidad de coeficientes armonicos esfericos.
La unidad de interpolacion 550 puede realizar una interpolacion temporal con respecto a una o mas subtramas basadas en la primera matriz V 519' y la segunda matriz V 519'. Es decir, la unidad de interpolacion 550 puede interpolar temporalmente, por ejemplo, la segunda, tercera y cuarta subtramas de cuatro subtramas totales para la
5
10
15
20
25
30
35
40
45
50
55
60
65
primera trama de audio basadas en una matriz V 519' descompuesta a partir de la primera subtrama de la primera trama de audio y la matriz V 519' descompuesta a partir de la primera subtrama de la segunda trama de audio. En algunos ejemplos, esta interpolacion temporal es una interpolacion temporal lineal, en la que la matriz V 519' descompuesta a partir de la primera subtrama de la primera trama de audio se pondera mas pesadamente cuando se interpola la segunda subtrama de la primera trama de audio que cuando se interpola la cuarta subtrama de la primera trama de audio. Cuando se interpola la tercera subtrama, las matrices V 519' pueden ponderarse uniformemente. Cuando se interpola la cuarta subtrama, la matriz V 519' descompuesta a partir de la primera subtrama de la segunda trama de audio puede ponderarse con mayor peso que la matriz V 519' descompuesta de la primera subtrama de la primera trama de audio.
En otras palabras, la interpolacion temporal lineal puede ponderar las matrices V 519' dada la proximidad de una de las subtramas de la primera trama de audio a interpolar. Para que la segunda subtrama sea interpolada, la matriz V 519' descompuesta a partir de la primera subtrama de la primera trama de audio se pondera en mayor medida dada su proximidad a la segunda subtrama a interpolar que la matriz V 519' descompuesta a partir de la primera subtrama de la segunda trama de audio. Los pesos pueden ser equivalentes por este motivo al interpolar la tercera subtrama basada en las matrices V 519'. El peso aplicado a la matriz V 519' descompuesta a partir de la primera subtrama de la segunda trama de audio puede ser mayor que el aplicado a la matriz V 519' descompuesta a partir de la primera subtrama de la primera trama de audio dado que la cuarta subtrama a interpolar esta mas proxima a la primera subtrama de la segunda trama de audio que la primera subtrama de la primera trama de audio.
Aunque, en algunos ejemplos, solo se utiliza una primera subtrama de cada trama de audio para realizar la interpolacion, la parte de la primera pluralidad de coeficientes armonicos esfericos puede comprender dos de cuatro subtramas de la primera pluralidad de coeficientes armonicos esfericos 511. En estos y otros ejemplos, la porcion de la segunda pluralidad de coeficientes armonicos esfericos 511 comprende dos de cuatro subtramas de la segunda pluralidad de coeficientes armonicos esfericos 511.
Como se ha indicado anteriormente, un dispositivo individual, por ejemplo, el dispositivo de codificacion de audio 510H, puede realizar la interpolacion, al tiempo que tambien descompone la parte de la primera pluralidad de coeficientes armonicos esfericos para generar las primeras descomposiciones de la porcion de la primera pluralidad de coeficientes armonicos esfericos. En estos y otros ejemplos, la unidad de descomposicion 518 puede descomponer la porcion de la segunda pluralidad de coeficientes armonicos esfericos para generar las segundas descomposiciones de la porcion de la segunda pluralidad de coeficientes armonicos esfericos. Aunque se describen con respecto a un unico dispositivo, dos o mas dispositivos pueden realizar las tecnicas descritas en esta divulgacion, donde uno de los dos dispositivos realiza la descomposicion y otro de los dispositivos realiza la interpolacion de acuerdo con las tecnicas descritas en esta divulgacion.
En otras palabras, el audio 3D basado en armonicos esfericos puede ser una representacion parametrica del campo de presion 3D en terminos de funciones de base ortogonales sobre una esfera. Cuanto mayor sea el orden N de la representacion, la resolucion espacial sera potencialmente mas alta y, a menudo, mayor sera el numero de coeficientes armonicos esfericos (SH) (para un total de (N+1)2 coeficientes). Para muchas aplicaciones, puede requerirse una compresion de ancho de banda de los coeficientes para poder transmitir y almacenar los coeficientes de manera eficaz. Estas tecnicas dirigidas en esta divulgacion pueden proporcionar un proceso de reduccion de la dimensionalidad basado en tramas utilizando la descomposicion en valores singulares (SVD). El analisis SVD puede descomponer cada trama de coeficientes en tres matrices U, S y V. En algunos ejemplos, las tecnicas pueden manejar algunos de los vectores en U como componentes direccionales del campo sonoro subyacente. Sin embargo, cuando se manejan de esta manera, estos vectores (en U) son discontinuos de trama en trama, aunque representan el mismo componente de audio distinto. Estas discontinuidades pueden conducir a artefactos significativos cuando los componentes son alimentados a traves de codificadores de audio de transformadas.
Las tecnicas descritas en esta divulgacion pueden abordar esta discontinuidad. Es decir, las tecnicas pueden basarse en la observacion de que la matriz V puede interpretarse como ejes espaciales ortogonales en el dominio de las armonicas esfericas. La matriz U puede representar una proyeccion de los datos de armonicos esfericos (HOA) en terminos de las funciones de base, donde la discontinuidad puede atribuirse a las funciones de base (V) que cambian cada trama y, por lo tanto, son discontinuas en si mismas. Esto es diferente a la descomposicion similar, como la Transformada de Fourier, donde las funciones de base son, en algunos ejemplos, constantes de una trama a otra. En estos terminos, la SVD puede considerarse como un algoritmo de busqueda por coincidencia. Las tecnicas descritas en esta divulgacion pueden permitir que la unidad de interpolacion 550 mantenga la continuidad entre las funciones de base (V) de una trama a otra mediante interpolacion entre ellas.
En algunos ejemplos, las tecnicas permiten a la unidad de interpolacion 550 dividir la trama de datos SH en cuatro subtramas, como se describio anteriormente y se describe adicionalmente a continuacion con respecto a las FIGS. 45 y 45B. La unidad de interpolacion 550 puede entonces calcular la SVD para la primera subtrama. De forma similar, se calcula la SVD para la primera subtrama de la segunda trama. Para cada una de la primera trama y la segunda trama, la unidad de interpolacion 550 puede convertir los vectores en V en un mapa espacial proyectando los vectores sobre una esfera (utilizando una matriz de proyeccion tal como una matriz de diseno en T). La unidad de interpolacion 550 puede entonces interpretar los vectores en V como formas en una esfera. Para interpolar las
5
10
15
20
25
30
35
40
45
50
55
60
65
matrices V para las tres subtramas entre la primera subtrama de la primera trama, la primera subtrama de la trama siguiente, la unidad de interpolacion 550 puede interpolar entonces estas formas espaciales y luego transformarlas de nuevo en los vectores SH a traves de la inversa de la matriz de proyeccion. Las tecnicas de esta descripcion pueden, de esta manera, proporcionar una transicion suave entre las matrices V.
De esta manera, el dispositivo de codificacion de audio 540H puede configurarse para realizar diversos aspectos de las tecnicas expuestas a continuacion con respecto a las siguientes clausulas.
Clausula 135054-1A. Un dispositivo, tal como el dispositivo de codificacion de audio 510H, que comprende: uno o mas procesadores configurados para interpolar una o mas subtramas de una primera trama de una primera descomposicion de una porcion de una primera pluralidad de coeficientes armonicos esfericos incluidos en la primera trama y una segunda descomposicion de una porcion de una segunda pluralidad de coeficientes armonicos esfericos incluidos en una segunda trama para generar coeficientes armonicos esfericos interpolados descompuestos para la una o mas subtramas.
Clausula 135054-2A. El dispositivo de la clausula 135054-1A, en el que la primera descomposicion comprende una primera matriz V representativa de los vectores singulares derechos de porcion de la primera pluralidad de coeficientes armonicos esfericos.
Clausula 135054-3A. El dispositivo de la clausula 135054-1A, en el que la segunda descomposicion comprende una segunda matriz V representativa de vectores singulares derechos de la porcion de la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-4A. El dispositivo de la clausula 135054-1A, en el que la primera descomposicion comprende una primera matriz V representativa de vectores singulares derechos de la porcion de la primera pluralidad de coeficientes armonicos esfericos y en la que la segunda descomposicion comprende una segunda matriz V representativa de vectores singulares derechos de la porcion de la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-5A. El dispositivo de la clausula 135054-1A, en el que el uno o mas procesadores estan configurados adicionalmente para, al interpolar la una o mas subtramas, interpolar temporalmente la una o mas subtramas basandose en la primera descomposicion y la segunda descomposicion.
Clausula 135054-6A. El dispositivo de la clausula 135054-1A, en el que el uno o mas procesadores estan configurados adicionalmente para, al interpolar la una o mas subtramas, proyectar la primera descomposicion en un dominio espacial para generar las primeras descomposiciones proyectadas, proyectar la segunda descomposicion en el dominio espacial para generar segundas descomposiciones proyectadas, interpolar espacialmente las primeras descomposiciones proyectadas y las segundas descomposiciones proyectadas para generar una primera descomposicion proyectada espacialmente interpolada y una segunda descomposicion proyectada interpolada espacialmente, e interpolar temporalmente la una o mas subtramas basandose en la primera descomposicion proyectada espacialmente interpolada y la segunda descomposicion proyectada espacialmente interpolada.
Clausula 135054-7A. El dispositivo de la clausula 135054-6A, en el que el uno o mas procesadores estan configurados ademas para proyectar los coeficientes armonicos esfericos interpolados temporalmente resultantes de la interpolacion de uno o mas subtramas de vuelta a un dominio armonico esferico.
Clausula 135054-8A. El dispositivo de la clausula 135054-1A, en el que la porcion de la primera pluralidad de coeficientes armonicos esfericos comprende una unica subtrama de la primera pluralidad de coeficientes armonicos esfericos.
Clausula 135054-9A. El dispositivo de la clausula 135054-1A, en el que la porcion de la segunda pluralidad de coeficientes armonicos esfericos comprende una unica subtrama de la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-10A. El dispositivo de la clausula 135054-1A, en el que la primera trama esta dividida en cuatro subtramas, y
en el que la porcion de la primera pluralidad de coeficientes armonicos esfericos comprende solamente la primera subtrama de la primera pluralidad de coeficientes armonicos esfericos.
Clausula 135054-11A. El dispositivo de la clausula 135054-1A, en el que la segunda trama esta dividida en cuatro subtramas, y
en el que la porcion de la segunda pluralidad de coeficientes armonicos esfericos comprende solamente la primera subtrama de la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-12A. El dispositivo de la clausula 135054-1A, en el que la porcion de la primera pluralidad de
5
10
15
20
25
30
35
40
45
50
55
60
65
coeficientes armonicos esfericos comprende dos de cuatro subtramas de la primera pluralidad de coeficientes armonicos esfericos.
Clausula 135054-13A. El dispositivo de la clausula 135054-1A, en el que la porcion de la segunda pluralidad de coeficientes armonicos esfericos comprende dos de cuatro subtramas de la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-14A. El dispositivo de la clausula 135054-1A, en el que el uno o mas procesadores estan
configurados ademas para descomponer la porcion de la primera pluralidad de coeficientes armonicos esfericos
para generar las primeras descomposiciones de la porcion de la primera pluralidad de coeficientes armonicos esfericos.
Clausula 135054-15A. El dispositivo de la clausula 135054-1A, en el que el uno o mas procesadores estan
configurados ademas para descomponer la porcion de la segunda pluralidad de coeficientes armonicos esfericos
para generar las segundas descomposiciones de la porcion de la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-16A. El dispositivo de la clausula 135054-1A, en el que el uno o mas procesadores estan configurados ademas para realizar una descomposicion en valores singulares con respecto a la porcion de la primera pluralidad de coeficientes armonicos esfericos para generar una matriz U representativa de vectores singulares izquierdos de la primera pluralidad de coeficientes armonicos esfericos, una matriz S representativa de valores singulares de la primera pluralidad de coeficientes armonicos esfericos y una matriz V representativa de vectores singulares derechos de la primera pluralidad de coeficientes armonicos esfericos.
Clausula 135054-17A. El dispositivo de la clausula 135054-1A, en el que el uno o mas procesadores estan configurados ademas para realizar una descomposicion en valores singulares con respecto a la porcion de la segunda pluralidad de coeficientes armonicos esfericos para generar una matriz U representativa de los vectores singulares izquierdos de la segunda pluralidad de coeficientes armonicos esfericos, una matriz S representativa de los valores singulares de la segunda pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la segunda pluralidad de coeficientes armonicos esfericos.
Clausula 135054-18A. El dispositivo de la clausula 135054-1A, en el que la primera y la segunda pluralidad de coeficientes armonicos esfericos representan cada una una representacion de onda plana del campo sonoro.
Clausula 135054-19A. El dispositivo de la clausula 135054-1A, en el que la primera y la segunda pluralidad de coeficientes armonicos esfericos representan cada uno uno o mas objetos monoaudio mezclados entre si.
Clausula 135054-20A. El dispositivo de la clausula 135054-1A, en el que la primera y la segunda pluralidad de coeficientes armonicos esfericos comprenden cada uno un primer y segundo coeficientes armonicos esfericos respectivos que representan un campo sonoro tridimensional.
Clausula 135054-21A. El dispositivo de la clausula 135054-1A, en el que la primera y la segunda pluralidad de coeficientes armonicos esfericos estan asociadas cada una con al menos una funcion de base esferica que tiene un orden mayor que uno.
Clausula 135054-22A. El dispositivo de la clausula 135054-1A, en el que la primera y la segunda pluralidad de coeficientes armonicos esfericos estan asociadas cada una con al menos una funcion de base esferica que tiene un orden igual a cuatro.
Aunque se ha descrito anteriormente como realizado por el dispositivo de codificacion de audio 510H, los diversos dispositivos de decodificacion de audio 24 y 540 tambien pueden realizar cualquiera de los diversos aspectos de las tecnicas expuestas anteriormente con respecto a las clausulas 135054-1A a 135054-22A.
La FIG. 40I es un diagrama de bloques que ilustra un dispositivo de codificacion de audio ejemplar 510I que puede realizar diversos aspectos de las tecnicas descritas en esta divulgacion para comprimir los coeficientes armonicos esfericos que describen campos sonoros bidimensionales o tridimensionales. El dispositivo de codificacion de audio 510I puede ser similar al dispositivo de codificacion de audio 510H en que el dispositivo de codificacion de audio 510I incluye una unidad de compresion de audio 512, una unidad de codificacion de audio 514 y una unidad de generacion de flujo de bits 516. Ademas, la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510I puede ser similar a la del dispositivo de codificacion de audio 510H porque la unidad de compresion de audio 512 incluye una unidad de descomposicion 518 y una unidad de extraccion de componentes del campo sonoro 520, que pueden operar de forma similar a las unidades del dispositivo de codificacion de audio 510H. En algunos ejemplos, el dispositivo de codificacion de audio 10I puede incluir una unidad de cuantizacion 34, como se ha descrito con respecto a las FIGS. 3D-3E, para cuantizar uno o mas vectores de cualquiera de Udist 25C, Ubg 25D, VTdist 25E, y VTbg 25J.
5
10
15
20
25
30
35
40
45
50
55
60
Sin embargo, aunque tanto la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510I como la unidad de compresion de audio 512 del dispositivo de codificacion de audio 10H incluyen una unidad de extraccion de componente de campo de sonido, la unidad de extraccion de componente de campo sonoro 520I del dispositivo de codificacion de audio 510I puede incluir una modulo adicional denominado unidad de compresion V 552. La unidad de compresion V 552 puede representar una unidad configurada para comprimir un componente espacial del campo sonoro, es decir, uno o mas de los vectores VTdist 539 en este ejemplo. Es decir, la descomposicion de valores singulares realizada con respecto al SHC puede descomponer el SHC (que es representativo del campo sonoro) en componentes energeticos representados por vectores de la matriz S, componentes temporales representados por la matriz U y componentes espaciales representados por la matriz V. La unidad de compresion V 552 puede realizar operaciones similares a las descritas anteriormente con respecto a la unidad de cuantizacion 52.
A efectos de ejemplo, se supone que los vectores VTdist 539 comprenden dos vectores de fila que tienen 25 elementos cada uno (lo que implica una representacion HOA de cuarto orden del campo sonoro). Aunque se describe con respecto a dos vectores de fila, se puede incluir cualquier numero de vectores en los vectores VTdist 539 hasta (n + 1), donde n indica el orden de la representacion HOA del campo sonoro.
La unidad de compresion V 552 puede recibir los vectores VTdist 539 y realizar un esquema de compresion para generar representaciones de vector VTdist comprimidas 539'. Este esquema de compresion puede implicar cualquier esquema de compresion concebible para comprimir elementos de un vector o datos en general, y no debe limitarse al ejemplo descrito mas adelante con mas detalle.
La unidad de compresion V 552 puede realizar, como ejemplo, un esquema de compresion que incluye uno o mas de representaciones de coma flotante de transformacion de cada elemento de los vectores VTdist 539 a representaciones enteras de cada elemento de los vectores VTdist 539, cuantizacion uniforme de las representaciones enteras de los vectores VTdist 539 y la categorizacion y codificacion de las representaciones enteras cuantificadas de los vectores VTdist 539. Varios entre uno o mas procesos de este esquema de compresion pueden ser controlados dinamicamente por parametros para conseguir, o casi conseguir, por ejemplo, una velocidad de bits objetivo para el flujo de bits resultante 517.
Dado que cada uno de los vectores VTdist 539 son ortonormales entre si, cada uno de los vectores VTdist 539 puede codificarse independientemente. En algunos ejemplos, como se describe con mas detalle a continuacion, cada elemento de cada vector VTdist 539 puede codificarse utilizando el mismo modo de codificacion (definido por diversos sub-modos).
En cualquier caso, como se ha indicado anteriormente, este esquema de codificacion puede implicar primero transformar las representaciones de coma flotante de cada elemento (que es, en algunos ejemplos, un numero de coma flotante de 32 bits) de cada uno de los vectores VTdist 539 a una representacion entera de 16 bits. La unidad de compresion V 552 puede realizar esta transformacion de coma flotante a entero multiplicando cada elemento de uno dado de los vectores VTdist 539 por 215, que es, en algunos ejemplos, realizado por un desplazamiento a la derecha por 15.
La unidad de compresion V 552 puede realizar entonces una cuantizacion uniforme con respecto a todos los elementos del uno dado de los vectores VTdist 539. La unidad de compresion V 552 puede identificar un tamano de paso de cuantizacion basado en un valor, que se puede indicar como un parametro de nbits. La unidad de compresion V 552 puede determinar dinamicamente este parametro de nbits basado en una velocidad de bits diana. La unidad de compresion V 552 puede determinar el tamano del paso de cuantizacion como una funcion de este parametro de nbits. Como ejemplo, la unidad de compresion V 552 puede determinar el tamano del paso de cuantizacion (designado como "delta" o "A" en esta divulgacion) como igual a 216 - nblts. En este ejemplo, si nbits es igual a seis, delta es igual a 210 y hay 2 6 niveles de cuantizacion. A este respecto, para un elemento vectorial v, el elemento vectorial cuantizado vq equivale a [v/A] y -2 nbits-1< vq < 2 nbits-1.
La unidad de compresion V 552 puede realizar entonces la categorizacion y la codificacion residual de los elementos vectoriales cuantizados. Por ejemplo, la unidad de compresion V 552 puede, para un elemento vectorial cuantizado dado vq, identificar una categorfa (mediante la determinacion de un identificador de categorfa cid) a la que este elemento se corresponde usando la siguiente ecuacion:
_ f0' [fvd = 0
Cl ~ [[log2\vq\\ + 1, ifvq* 0
La unidad de compresion V 552 puede entonces codificar con Huffman este fndice de categorfa cid, al mismo tiempo que tambien identifica un bit de signo que indica si vq es un valor positivo o un valor negativo. La unidad de compresion V 552 puede identificar a continuacion un residuo en esta categorfa. Como un ejemplo, la unidad de compresion V 552 puede determinar este residuo de acuerdo con la siguiente ecuacion:
5
10
15
20
25
30
35
40
residual = \vq \ - 2clci 1
La unidad de compresion V 552 puede entonces bloquear el codigo de este residuo con cid -1 bits.
El siguiente ejemplo ilustra un ejemplo simplificado de este proceso de categorizacion y codificacion residual. En primer lugar, se asume que nbits equivale a seis, de manera que vq e [-31,31]. A continuacion, se asume lo siguiente:
cid
vq Codigo Huffman para cid
0
0
'1'
1
-1, 1 '01'
2
-3, -2, 2, 3 '000'
3
-7, -6, -5, -4, 4, 5, 6, 7 '0010'
4
-15, -14, ..., -8, 8, ...,14, 15 '00110'
5
-31, -30, ..., -16, 16, ..., 30, 31 '00111'
Ademas, se asume lo siguiente:
cid
Codigo de bloque para residuales
0
No disponible
1
0, 1
2
01,00, 10, 11
3
011, 010, 001, 000, 100, 101, 110, 111
4
0111, 0110...,0000, 1000, ...,1110, 1111
5
01111, ..., 00000, 10000, ..., 11111
Por lo tanto, para Vq = [6, -17, 0, 0, 3], puede determinarse lo siguiente:
» cid = 3,5,0,0,2 » signo =1,0,x,x,1 » residual = 2,1,x,x,1 » Bits para 6 = '0010' + '1' + '10'
» Bits para -17 = '00111' + '0' + '0001'
» Bits para 0 = '0'
» Bits para 0 = '0'
» Bits para 3 = '000' + '1' + '1'
» Bits totales = 7+10+1 + 1+5 = 24 » Promedio de bits = 24/5 = 4.8
Aunque no se muestra en el ejemplo simplificado anterior, la unidad de compresion V 552 puede seleccionar diferentes libros de codigo Huffman para diferentes valores de nbits cuando codifica el cid. En algunos ejemplos, la unidad de compresion V 552 puede proporcionar una tabla de codificacion Huffman diferente para los valores de nbits 6, ..., 15. Ademas, la unidad de compresion V 552 puede incluir cinco libros de codigo de Huffman diferentes para cada uno de los diferentes valores de nbits que van desde 6, ..., 15 para un total de 50 libros de codigo de Huffman. A este respecto, la unidad de compresion V 552 puede incluir una pluralidad de diferentes libros de codigo Huffman para acomodar la codificacion del cid en varios contextos estadfsticos diferentes.
Para ilustrar, la unidad de compresion V 552 puede incluir, para cada uno de los valores de nbits, un primer libro de codigos Huffman para codificar los elementos vectoriales de uno a cuatro, un segundo libro de codigos Huffman para codificar los elementos vectoriales de cinco a nueve, un tercer libro de codigos Huffman para codificar los elementos vectoriales de nueve y sucesivos. Estos primeros tres libros de codigo de Huffman pueden usarse cuando uno de los vectores VTdist 539 a comprimir no se predice a partir de uno correspondiente temporalmente posterior de los vectores VTdist 539 y no es representativo de la informacion espacial de un objeto de audio sintetico (uno definido, por ejemplo, originalmente por un objeto de audio modulado por impulsos codificados (PCM)). La unidad de compresion V 552 puede incluir adicionalmente, para cada uno de los valores de nbits, un cuarto libro de codigos de Huffman para codificar uno de los vectores VTdist 539 cuando este de los vectores VTdist 539 se predice a partir de uno correspondiente temporalmente posterior de los vectores VTdist 539. La unidad de compresion V 552 tambien
5
10
15
20
25
30
35
40
45
50
puede incluir, para cada uno de los valores de nbits, un quinto libro de codigos de Huffman para codificar uno de los vectores VTdist 539 cuando este uno de los vectores VTdist 539 es representativo de un objeto de audio sintetico. Los diversos libros de codigo de Huffman pueden desarrollarse para cada uno de estos diferentes contextos estadfsticos, es decir, el contexto no predicho y no sintetico, el contexto predicho y el contexto sintetico en este ejemplo.
La tabla siguiente ilustra la seleccion de la tabla Huffman y los bits que se especificaran en el flujo de bits para permitir que la unidad de descompresion seleccione la tabla Huffman adecuada:
Modo Pred
Info HT Tabla HT
0
0
HT5
0
1 HT{1,2,3}
1
0 HT4
1
1
HT5
En la tabla anterior, el modo de prediccion ("Modo Pred") indica si se realizo la prediccion para el vector actual, mientras que la Tabla Huffman ("Info HT") indica la informacion adicional del libro de codigos Huffman (o tabla) usada para seleccionar una tabla de Huffman de uno a cinco.
La tabla siguiente ilustra este proceso de seleccion de tablas de Huffman dados diversos contextos o escenarios estadfsticos.
Grabacion Sintetico
W/O Pred
HT{1,2,3} HT5
Con Pred
HT4 HT5
En la tabla anterior, la columna "Grabacion" indica el contexto de codificacion cuando el vector es representativo de un objeto de audio que fue grabado mientras que la columna "sintetica" indica un contexto de codificacion cuando el vector es representativo de un objeto de audio sintetico. La fila "W/O Pred" indica el contexto de codificacion cuando la prediccion no se realiza con respecto a los elementos vectoriales, mientras que la fila "Con Pred" indica el contexto de codificacion cuando se realiza la prediccion con respecto a los elementos vectoriales. Como se muestra en esta tabla, la unidad de compresion V 552 selecciona HT{1, 2, 3} cuando el vector es representativo de un objeto de audio grabado y no se realiza la prediccion con respecto a los elementos de vector. La unidad de compresion V 552 selecciona HT5 cuando el objeto de audio es representativo de un objeto de audio sintetico y no se realiza la prediccion con respecto a los elementos de vector. La unidad de compresion 552 selecciona HT4 cuando el vector es representativo de un objeto de audio grabado y se realiza la prediccion con respecto a los elementos vectoriales. La unidad de compresion V 552 selecciona HT5 cuando el objeto de audio es representativo de un objeto de audio sintetico y se realiza la prediccion con respecto a los elementos de vector.
De esta manera, las tecnicas pueden permitir que un dispositivo de compresion de audio comprima un componente espacial de un campo sonoro, donde el componente espacial se genero realizando una sfntesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
La FIG. 43 es un diagrama que ilustra la unidad de compresion V 552 mostrada en la FIG. 40I en mas detalle. En el ejemplo de la FIG. 9K, la unidad de compresion V 552 incluye una unidad de cuantizacion uniforme 600, una unidad de nbits 602, una unidad de prediccion 604, una unidad de modo de prediccion 606 ("Unidad modo prep. 606"), una unidad de codificacion de categorfa y residual 608 y una unidad de seleccion de tabla Huffman 610. La unidad de cuantizacion uniforme 600 representa una unidad configurada para llevar a cabo la cuantizacion uniforme descrita anteriormente con respecto a uno de los componentes espaciales representado como v en el ejemplo de la FIG. 43 (que puede representar uno cualquiera de los vectores VTdist 539). La unidad de nbits 602 representa una unidad configurada para determinar el parametro o valor de nbits.
La unidad de prediccion 604 representa una unidad configurada para realizar la prediccion con respecto al componente espacial cuantizado indicado como vq en el ejemplo de la FIG. 43. La unidad de prediccion 604 puede realizar la prediccion realizando una resta de elementos del actual de los vectores VTdist 539 por uno temporalmente posterior correspondiente de los vectores VTdist 539. El resultado de esta prediccion puede ser referido como un componente espacial predicho.
La unidad de modo de prediccion 606 puede representar una unidad configurada para seleccionar el modo de prediccion. La unidad de seleccion de tabla Huffman 610 puede representar una unidad configurada para seleccionar una tabla Huffman apropiada para la codificacion del cid. La unidad de modo de prediccion 606 y la unidad de seleccion de tabla Huffman 610 pueden funcionar, como un ejemplo, de acuerdo con el siguiente
5
10
15
20
25
30
35
40
45
50
55
60
65
pseudocodigo:
Para un determinado nbits, recuperar todas las tablas Huffman con nbits
B00 = 0; B01 = 0; B10 = 0; B11 = 0; // inicializar para calcular los bits esperados modo de codificacion para m = 1: (# Elementos en el vector)
// calcular el numero esperado de bits para un elemento vectorial v(m)
// sin prediccion y utilizando tabla Huffman 5 B00 = B00 + calculate_bits(v(m), HT5);
// sin prediccion y usando tabla Huffman {1,2,3}
B01 = B01 + calculate_bits(v(m), HTq); q en {1,2,3}
// calcular el numero esperado de bits para residuo de prediccion e(m) e(m) = v(m) - vp(m); // vp(m): elemento vectorial de trama anterior // con prediccion y uso de tabla Huffman 4 B10 = B10 + calculate_bits(e(m), HT4);
// con prediccion y uso de tabla Huffman 5 B11 = B11 + calculate_bits(e(m), HT5); end
// encontrar un mejor modo de prediccion y una tabla Huffman que produzcan bits mfnimos // el mejor modo de prediccion y la tabla Huffman son marcados por pflag y Htflag, respectivamente
[Be, id] = min([B00 B01 B10 B11]);
Conmutar id
caso 1: pflag = 0; HTflag = 0; caso 2: pflag = 0; HTflag = 1; caso 3: pflag = 1; HTflag = 0; caso 4: pflag = 1; HTflag = 1; end
La unidad de codificacion de categorfa y residual 608 puede representar una unidad configurada para realizar la codificacion de categorizacion y residual de un componente espacial previsto o el componente espacial cuantizado (cuando la prediccion esta desactivada) de la manera descrita con mas detalle anteriormente.
Como se ilustra en el ejemplo de la FIG. 9K, la unidad de compresion V 552 puede emitir varios parametros o valores para su inclusion en el flujo de bits 517 o informacion lateral (que puede ser un flujo de bits separado del flujo de bits 517). Asumiendo que la informacion se especifica en el flujo de bits 517, la unidad de compresion V 552 puede emitir el valor de nbits, el modo de prediccion y la informacion de tabla de Huffman a la unidad de generacion de flujo de bits 516 junto con la version comprimida del componente espacial (mostrado como el componente espacial comprimido 539' en el ejemplo de la FIG. 40I), que en este ejemplo puede referirse al codigo de Huffman seleccionado para codificar el cid, el bit de signo y el residuo codificado por bloques. El valor de nbits se puede especificar una vez en el flujo de bits 517 para todos los vectores VTdist 539, mientras que el modo de prediccion y la informacion de tabla Huffman pueden especificarse para cada uno de los vectores VTdist 539. La parte del flujo de bits que especifica la version comprimida del componente espacial se muestra en el ejemplo de las FIGS. 10B y 10C.
De esta manera, el dispositivo de codificacion de audio 510H puede realizar diversos aspectos de las tecnicas expuestas a continuacion con respecto a las siguientes clausulas.
Clausula 141541-1A. Un dispositivo, tal como el dispositivo de codificacion de audio 510H, que comprende: uno o mas procesadores configurados para obtener un flujo de bits que comprende una version comprimida de un componente espacial de un campo sonoro, el componente espacial generado realizando una sfntesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
Clausula 141541-2A. El dispositivo de las clausulas 141541-1A, en el que la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, un campo que especifica un modo de prediccion utilizado al comprimir el componente espacial.
Clausula 141541-3A. El dispositivo de cualquier combinacion de la clausula 141541-1A y la clausula 141541-2A, en el que la version comprimida del componente espacial esta representada en el flujo de bits utilizando, al menos en parte, informacion de tabla Huffman que especifica una tabla Huffman usada al comprimir el componente espacial.
Clausula 141541-4A. El dispositivo de cualquier combinacion de la clausula 141541-1A a la clausula 141541-3A, en el que la version comprimida del componente espacial esta representada en el flujo de bits utilizando, al menos en parte, un campo que indica un valor que expresa un tamano de paso de cuantizacion o una variable del mismo que se utiliza al comprimir el componente espacial.
5
10
15
20
25
30
35
40
45
50
55
60
65
Clausula 141541-6A. El dispositivo de cualquier combinacion de la clausula 141541-4A y la clausula 141541-5A, en el que el flujo de bits comprende una version comprimida de una pluralidad de componentes espaciales del campo sonoro de la que esta incluida la version comprimida del componente espacial, y en el que el valor expresa el tamano del paso de cuantizacion o una variable del mismo utilizada al comprimir la pluralidad de componentes espaciales.
Clausula 141541-7A. El dispositivo de cualquier combinacion de la clausula 141541-1A a la clausula 141541-6A, en el que la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, un codigo Huffman para representar un identificador de categorfa que identifica una categorfa de compresion a la que corresponde el componente espacial.
Clausula 141541-8A. El dispositivo de cualquier combinacion de la clausula 141541-1A a la clausula 141541-7A, en el que la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, un bit de signo que identifica si el componente espacial es un valor positivo o un valor negativo.
Clausula 141541-9A. El dispositivo de cualquier combinacion de la clausula 141541-1A a la clausula 141541-8A, en el que la version comprimida del componente espacial se representa en el flujo de bits utilizando, al menos en parte, un codigo Huffman para representar un valor residual del componente espacial.
Clausula 141541-10A. El dispositivo de cualquier combinacion de la clausula 141541-1A a la clausula 141541-9A, en el que el dispositivo comprende un dispositivo de codificacion de audio, un dispositivo de generacion de flujo de bits.
Clausula 141541-12A. El dispositivo de cualquier combinacion de la clausula 141541-1A a la clausula 141541- HA, en el que la sfntesis basada en vectores comprende una descomposicion en valores singulares.
Aunque se describen como realizadas por el dispositivo de codificacion de audio 510H, las tecnicas tambien pueden realizarse por cualquiera de los dispositivos de decodificacion de audio 24 y/o 540.
De esta manera, el dispositivo de codificacion de audio 510H puede realizar adicionalmente diversos aspectos de las tecnicas expuestas a continuacion con respecto a las siguientes clausulas.
Clausula 141541-1D. Un dispositivo, tal como el dispositivo de codificacion de audio 510H, que comprende: uno o mas procesadores configurados para generar un flujo de bits que comprende una version comprimida de un componente espacial de un campo sonoro, el componente espacial generado realizando una sfntesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
Clausula 141541-2D. El dispositivo de la clausula 141541-1D, en el que el uno o mas procesadores estan configurados adicionalmente para, al generar el flujo de bits, generar el flujo de bits para incluir un campo que especifica un modo de prediccion usado al comprimir el componente espacial.
Clausula 141541-3D. El dispositivo de cualquier combinacion de la clausula 141541-1D y la clausula 141541-2D, en el que el uno o mas procesadores estan configurados adicionalmente para, al generar el flujo de bits, generar el flujo de bits para incluir informacion de tabla Huffman que especifica una tabla Huffman usada al comprimir el componente espacial.
Clausula 141541-4D. El dispositivo de cualquier combinacion de la clausula 141541-1D a la clausula 141541-3D, en el que el uno o mas procesadores estan configurados adicionalmente para, al generar el flujo de bits, generar el flujo de bits para incluir un campo que indica un valor que expresa un tamano de paso de cuantizacion o una variable del mismo que se utiliza al comprimir el componente espacial.
Clausula 141541-5D. El dispositivo de la clausula 141541-4D, en el que el valor comprende un valor de nbits.
Clausula 141541-6D. El dispositivo de cualquier combinacion de la clausula 141541-4D y la clausula 141541-5D, en el que el uno o mas procesadores estan configurados adicionalmente para, al generar la corriente de bits, generar la corriente de bits para incluir una version comprimida de una pluralidad de componentes espaciales del campo sonoro de los cuales se incluye la version comprimida del componente espacial, y en el que el valor expresa el tamano del paso de cuantizacion o una variable del mismo que se utiliza al comprimir la pluralidad de componentes espaciales.
Clausula 141541-7D. El dispositivo de cualquier combinacion de la clausula 141541-1D a la clausula 141541-6D, en el que el uno o mas procesadores estan configurados adicionalmente para, al generar el flujo de bits, generar el flujo de bits para incluir un codigo Huffman para representar un identificador de categorfa que identifique una
5
10
15
20
25
30
35
40
45
50
55
60
65
categorfa de compresion a la que corresponde el componente espacial.
Clausula 141541-8D. El dispositivo de cualquier combinacion de la clausula 141541-1D a la clausula 141541-7D, en el que el uno o mas procesadores estan configurados adicionalmente para, al generar el flujo de bits, generar el flujo de bits para incluir un bit de signo que identifica si el componente espacial es un valor positivo o un valor negativo.
Clausula 141541-9D. El dispositivo de cualquier combinacion de la clausula 141541-1D a la clausula 141541-8D, en el que el uno o mas procesadores estan configurados adicionalmente para, al generar el flujo de bits, generar el flujo de bits para incluir un codigo Huffman para representar un valor residual del componente espacial.
Clausula 141541-10D. El dispositivo de cualquier combinacion de la clausula 141541-1D a la clausula 141541- 10D, en el que la sfntesis basada en vectores comprende una descomposicion en valores singulares.
El dispositivo de codificacion de audio 510H puede configurarse ademas para implementar diversos aspectos de las tecnicas como se establece en las siguientes clausulas.
Clausula 141541-1E. Un dispositivo, tal como el dispositivo de codificacion de audio 510H, que comprende: uno o mas procesadores configurados para comprimir un componente espacial de un campo sonoro, el componente espacial generado realizando una sfntesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
Clausula 141541-2E. El dispositivo de la clausula 141541-1E, en el que el uno o mas procesadores estan configurados adicionalmente para, al comprimir el componente espacial, convertir el componente espacial de una representacion de coma flotante a una representacion entera.
Clausula 141541-3E. El dispositivo de cualquier combinacion de la clausula 141541-1E y la clausula 141541-2E, en el que el uno o mas procesadores estan configurados adicionalmente para, al comprimir el componente espacial, determinar dinamicamente un valor indicativo de un tamano de paso de cuantizacion, y cuantizar el componente espacial basado en el valor para generar un componente espacial cuantificado.
Clausula 141541-4E. El dispositivo de cualquier combinacion de las reivindicaciones 1E-3E, en el que el uno o mas procesadores estan configurados adicionalmente para, al comprimir el componente espacial, identificar una categorfa a la cual corresponde el componente espacial.
Clausula 141541-5E. El dispositivo de cualquier combinacion de la clausula 141541-1E a la clausula 141541-4E, en el que el uno o mas procesadores estan configurados adicionalmente para, al comprimir el componente espacial, identificar un valor residual para el componente espacial.
Clausula 141541-6E. El dispositivo de cualquier combinacion de la clausula 141541-1E a la clausula 141541-5E, en el que el uno o mas procesadores estan configurados adicionalmente para, al comprimir el componente espacial, realizar una prediccion con respecto al componente espacial y un componente espacial posterior para generar un componente espacial predicho.
Clausula 141541-7E. El dispositivo de cualquier combinacion de la clausula 141541-1E, en el que el uno o mas procesadores estan configurados adicionalmente para, al comprimir el componente espacial, convertir el componente espacial de una representacion de coma flotante en una representacion entera, determinar dinamicamente un valor indicativo de un tamano del paso de cuantizacion, cuantizar la representacion entera del componente espacial basandose en el valor para generar un componente espacial cuantificado, identificar una categorfa a la que corresponde el componente espacial basandose en el componente espacial cuantificado para generar un identificador de categorfa, determinar un signo del componente espacial, identificar un valor residual para el componente espacial basandose en el componente espacial cuantificado y el identificador de categorfa, y generar una version comprimida del componente espacial basandose en el identificador de categorfa, el signo y el valor residual.
Clausula 141541-8E. El dispositivo de cualquier combinacion de la clausula 141541-1E, en el que el uno o mas procesadores estan configurados adicionalmente para, al comprimir el componente espacial, convertir el componente espacial de una representacion de coma flotante en una representacion entera, determinar dinamicamente un valor indicativo de un tamano del paso de cuantizacion, cuantizar la representacion entera del componente espacial basandose en el valor para generar un componente espacial cuantificado, realizar una prediccion con respecto al componente espacial y un componente espacial posterior para generar un componente espacial predicho, identificar una categorfa a la que corresponde el componente espacial predicho basandose en el componente espacial cuantificado para generar un identificador de categorfa, determinar un signo del componente espacial, identificar un valor residual para el componente espacial basandose en el componente espacial cuantificado y el identificador de categorfa, y generar una version comprimida del componente espacial basandose en el identificador de categorfa, el signo y el valor residual.
5
10
15
20
25
30
35
40
45
50
55
60
65
Diversos aspectos de las tecnicas pueden ademas permitir que el dispositivo de codificacion de audio 510H este configurado para funcionar como se establece en las siguientes clausulas.
Clausula 141541-1F. Un dispositivo, tal como el dispositivo de codificacion de audio 510H, que comprende: uno o mas procesadores configurados para identificar un libro de codigos de Huffman para usar al comprimir un componente espacial actual de una pluralidad de componentes espaciales basandose en un orden del componente espacial actual con respecto a los restantes de la pluralidad de componentes espaciales, el componente espacial generado realizando una smtesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
Clausula 141541-2F. El dispositivo de la clausula 141541-3F, en el que el uno o mas procesadores estan configurados ademas para realizar cualquier combinacion de las etapas enumeradas en la clausula 141541-1A a la clausula 141541-12A, la clausula 141541-1B a la clausula 141541-10B y la clausula 141541-1C a la clausula 141541-9C.
Diversos aspectos de las tecnicas pueden ademas permitir que el dispositivo de codificacion de audio 510H este configurado para funcionar como se establece en las siguientes clausulas.
Clausula 141541-1H. Un dispositivo, tal como el dispositivo de codificacion de audio 510H, que comprende: uno o mas procesadores configurados para determinar un tamano de paso de cuantizacion que se usara al comprimir un componente espacial de un campo sonoro, el componente espacial generado realizando una smtesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
Clausula 141541-2H. El dispositivo de la clausula 141541-1H, en el que el uno o mas procesadores estan configurados adicionalmente para determinar, al determinar el tamano del paso de cuantizacion, el tamano del paso de cuantizacion basandose en una velocidad de bits objetivo.
Clausula 141541-3H. El dispositivo de la clausula 141541-1H, en el que el uno o mas procesadores estan configurados para, al seleccionar una de la pluralidad de tamanos del paso de cuantizacion, determinar una estimacion de un numero de bits utilizados para representar el componente espacial y determinar el tamano del paso de cuantizacion basandose en una diferencia entre la estimacion y una velocidad de bits objetivo.
Clausula 141541-4H. El dispositivo de la clausula 141541-1H, en el que el uno o mas procesadores estan configurados para, al seleccionar una de la pluralidad de tamanos del paso de cuantizacion, determinar una estimacion de un numero de bits utilizados para representar el componente espacial, determinar una diferencia entre la estimacion y una velocidad de bits objetivo, y determinar el tamano del paso de cuantizacion anadiendo la diferencia a la velocidad de bits objetivo.
Clausula 141541-5H. El dispositivo de la clausula 141541-3H o la clausula 141541-4H, en el que el uno o mas procesadores estan configurados adicionalmente para, al determinar la estimacion del numero de bits, calcular la estimacion del numero de bits que se van a generar para el componente espacial que recibe un libro de codigos correspondiente a la velocidad de bits objetivo.
Clausula 141541-6H. El dispositivo de la clausula 141541-3H o la clausula 141541-4H, en el que el uno o mas procesadores estan configurados adicionalmente para, al determinar la estimacion del numero de bits, calcular la estimacion del numero de bits que se van a generar para el componente espacial que recibe un modo de codificacion usando al comprimir el componente espacial.
Clausula 141541-7H. El dispositivo de la clausula 141541-3H o la clausula 141541-4H, en el que el uno o mas procesadores estan configurados para, al determinar la estimacion del numero de bits, calcular una primera estimacion del numero de bits que se van a generar para el componente espacial dado un primer modo de codificacion que se utilizara al comprimir el componente espacial, calcular una segunda estimacion del numero de bits que se van a generar para el componente espacial dado un segundo modo de codificacion que se utilizara al comprimir el componente espacial, seleccionar el de la primera estimacion y la segunda estimacion que tenga el menor numero de bits que se va a utilizar como la estimacion determinada del numero de bits.
Clausula 141541-8H. El dispositivo de la clausula 141541-3H o la clausula 141541-4H, en el que el uno o mas procesadores estan configurados para, al determinar la estimacion del numero de bits, identificar un identificador de categona que identifica una categona a la cual corresponde el componente espacial, identificar una longitud de bits de un valor residual para el componente espacial que resultana al comprimir el componente espacial correspondiente a la categona y determinar la estimacion del numero de bits mediante, al menos en parte, la adicion de un numero de bits utilizados para representar el identificador de categona a la longitud de bits del
5
10
15
20
25
30
35
40
45
50
55
60
65
valor residual.
Clausula 141541-9H. El dispositivo de cualquier combinacion de la clausula 141541-1H a la clausula 141541-8H, en el que la smtesis basada en vectores comprende una descomposicion en valores singulares.
Aunque se describen como realizadas por el dispositivo de codificacion de audio 510H, las tecnicas expuestas en las clausulas anteriores, la clausula 141541-1H a la clausula 141541-9H tambien pueden realizarse por el dispositivo de decodificacion de audio 540D.
Adicionalmente, diversos aspectos de las tecnicas pueden permitir que el dispositivo de codificacion de audio 510H este configurado para funcionar como se establece en las siguientes clausulas.
Clausula 141541-1J. Un dispositivo, tal como el dispositivo de codificacion de audio 510J, que comprende: uno o mas procesadores configurados para seleccionar uno de una pluralidad de libros de codigos a usar al comprimir un componente espacial de un campo sonoro, el componente espacial generado realizando una smtesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
Clausula 141541-2J. El dispositivo de la clausula 141541-1J, en el que el uno o mas procesadores estan configurados ademas para, al seleccionar uno de la pluralidad de libros de codigos, determinar una estimacion de un numero de bits utilizados para representar el componente espacial utilizando cada uno de la pluralidad de libros de codigos, y seleccionar el libro de la pluralidad de libros de codigo que dio como resultado la estimacion determinada que tiene el menor numero de bits.
Clausula 141541-3J. El dispositivo de la clausula 141541-1J, en el que el uno o mas procesadores estan configurados adicionalmente para, al seleccionar uno de la pluralidad de libros de codigos, determinar una estimacion de un numero de bits utilizados para representar el componente espacial utilizando uno o mas de la pluralidad de libros de codigos, uno o mas de la pluralidad de libros de codigos seleccionados basandose en un orden de elementos del componente espacial que se comprimira con relacion a otros elementos del componente espacial.
Clausula 141541-4J. El dispositivo de la clausula 141541-1J, en el que el uno o mas procesadores estan configurados ademas para, al seleccionar uno de la pluralidad de libros de codigos, determinar una estimacion de un numero de bits utilizados para representar el componente espacial utilizando uno de la pluralidad de libros de codigos designados para usarse cuando el componente espacial no se predice a partir de un componente espacial posterior.
Clausula 141541-5J. El dispositivo de la clausula 141541-1J, en el que el uno o mas procesadores estan configurados ademas para, al seleccionar uno de la pluralidad de libros de codigos, determinar una estimacion de un numero de bits utilizados para representar el componente espacial utilizando uno de la pluralidad de libros de codigos designados para usarse cuando el componente espacial se predice a partir de un componente espacial posterior.
Clausula 141541-6J. El dispositivo de la clausula 141541-1J, en el que el uno o mas procesadores estan configurados ademas para, al seleccionar uno de la pluralidad de libros de codigos, determinar una estimacion de un numero de bits utilizados para representar el componente espacial utilizando uno de la pluralidad de libros de codigos designados para usarse cuando el componente espacial es representativo de un objeto de audio sintetico en el campo sonoro.
Clausula 141541-7J. El dispositivo de la clausula 141541-1J, en el que el objeto de audio sintetico comprende un objeto de audio modulado por impulsos codificados (PCM).
Clausula 141541-8J. El dispositivo de la clausula 141541-1J, en el que el uno o mas procesadores estan configurados ademas para, al seleccionar uno de la pluralidad de libros de codigos, determinar una estimacion de un numero de bits utilizados para representar el componente espacial utilizando uno de la pluralidad de libros de codigos designados para usarse cuando el componente espacial es representativo de un objeto de audio grabado en el campo sonoro.
Clausula 141541-9J. El dispositivo de cualquier combinacion de las reivindicaciones 1J-8J. en el que la smtesis basada en vectores comprende una descomposicion en valores singulares.
En cada una de las diversas instancias descritas anteriormente, debe entenderse que el dispositivo de codificacion de audio 510 puede realizar un procedimiento o comprender de otro modo medios para realizar cada paso del procedimiento para el que esta configurado el dispositivo de codificacion de audio 510. En algunos casos, estos medios pueden comprender uno o mas procesadores. En algunos casos, uno o mas procesadores pueden representar un procesador de proposito especial configurado por medio de instrucciones almacenadas en un medio de almacenamiento no transitorio legible por ordenador. En otras palabras, varios aspectos de las tecnicas en cada
5
10
15
20
25
30
35
40
45
50
55
60
65
uno de los conjuntos de ejemplos de codificacion pueden proporcionar un medio de almacenamiento no transitorio legible por ordenador que tiene almacenadas instrucciones que, cuando se ejecutan, hacen que uno o mas procesadores realicen el procedimiento para el cual el dispositivo de codificacion de audio 510 se ha configurado para llevar a cabo.
La FIG. 40J es un diagrama de bloques que ilustra un ejemplo de dispositivo de codificacion de audio 510J que puede realizar diversos aspectos de las tecnicas descritas en esta descripcion para comprimir los coeficientes armonicos esfericos que describen campos sonoros bidimensionales o tridimensionales. El dispositivo de codificacion de audio 510J puede ser similar al dispositivo de codificacion de audio 510G en que el dispositivo de codificacion de audio 510J incluye una unidad de compresion de audio 512, una unidad de codificacion de audio 514 y una unidad de generacion de flujo de bits 516. Ademas, la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510J puede ser similar a la del dispositivo de codificacion de audio 510G porque la unidad de compresion de audio 512 incluye una unidad de descomposicion 518 y una unidad de extraccion de componentes del campo sonoro 520, que pueden operar de forma similar a las unidades del dispositivo de codificacion de audio 510I. En algunos ejemplos, el dispositivo de codificacion de audio 510J puede incluir una unidad de cuantizacion 534, como se ha descrito con respecto a las FIGS. 40D-40E, para cuantizar uno o mas vectores de cualquiera de los vectores Udist 525C, los vectores Ubg 525D, los vectores VTdist 525E y los vectores VTbg 525J.
La unidad de compresion de audio 512 del dispositivo de codificacion de audio 510J puede, sin embargo, diferir de la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510G en que la unidad de compresion de audio 512 del dispositivo de codificacion de audio 510J incluye una unidad adicional denominada como unidad de interpolacion 550. La unidad de interpolacion 550 puede representar una unidad que interpola subtramas de una primera trama de audio de las subtramas de la primera trama de audio y una segunda trama de audio temporalmente posterior o anterior, como se describe con mas detalle a continuacion con respecto a las FIGS. 45 y 45B. La unidad de interpolacion 550 puede reducir, al realizar esta interpolacion, la complejidad computacional (en terminos de ciclos de procesamiento y/o consumo de memoria) reduciendo potencialmente la medida en que la unidad de descomposicion 518 se requiere para descomponer SHC 511. La unidad de interpolacion 550 puede operar de una manera similar a la descrita anteriormente con respecto a la unidad de interpolacion 550 de los dispositivos de codificacion de audio 510H y 510I mostrados en los ejemplos de las FIGS. 40H y 40I.
En funcionamiento, la unidad de interpolacion 200 puede interpolar una o mas subtramas de una primera trama de audio a partir de una primera descomposicion, por ejemplo, la matriz V 19', de una parte de una primera pluralidad de coeficientes armonicos esfericos 11 incluidos en la primera trama y una segunda descomposicion, por ejemplo, la matriz V 19', de una porcion de una segunda pluralidad de coeficientes armonicos esfericos 11 incluidos en una segunda trama para generar coeficientes armonicos esfericos interpolados descompuestos para la una o mas subtramas.
La unidad de interpolacion 550 puede obtener coeficientes armonicos esfericos interpolados descompuestos para un segmento de tiempo, realizando al menos en parte una interpolacion con respecto a una primera descomposicion de una primera pluralidad de coeficientes armonicos esfericos y una segunda descomposicion de una segunda pluralidad de coeficientes armonicos esfericos. La unidad de suavizado 554 puede aplicar los coeficientes armonicos esfericos interpolados descompuestos para suavizar al menos uno de componentes espaciales y los componentes temporales de la primera pluralidad de coeficientes armonicos esfericos y la segunda pluralidad de coeficientes armonicos esfericos. La unidad de suavizado 554 puede generar matrices Udist suavizadas 525C' como se ha descrito anteriormente con respecto a las FIGS. 37-39. La primera y segunda descomposiciones pueden referirse a V/ 556, V2T 556B en la FIG. 40J.
En algunos casos, VT u otros vectores V o matrices V pueden ser emitidos en una version cuantificada para interpolacion. De esta manera, los vectores V para la interpolacion pueden ser identicos a los vectores V en el decodificador, que tambien realiza la interpolacion de vectores V, por ejemplo, para recuperar la senal multidimensional.
En algunos ejemplos, la primera descomposicion comprende la primera matriz V 519' representativa de vectores singulares derechos de la porcion de la primera pluralidad de coeficientes armonicos esfericos 511. De manera similar, en algunos ejemplos, la segunda descomposicion comprende la segunda matriz V 519' representativa de vectores singulares derechos de la porcion de la segunda pluralidad de coeficientes armonicos esfericos.
La unidad de interpolacion 550 puede realizar una interpolacion temporal con respecto a una o mas subtramas basadas en la primera matriz V 519' y la segunda matriz V 19'. Es decir, la unidad de interpolacion 550 puede interpolar temporalmente, por ejemplo, la segunda, tercera y cuarta subtramas de cuatro subtramas totales para la primera trama de audio basadas en una matriz V 519' descompuesta a partir de la primera subtrama de la primera trama de audio y la matriz V 519' descompuesta a partir de la primera subtrama de la segunda trama de audio. En algunos ejemplos, esta interpolacion temporal es una interpolacion temporal lineal, en la que la matriz V 519' descompuesta a partir de la primera subtrama de la primera trama de audio se pondera mas pesadamente cuando se interpola la segunda subtrama de la primera trama de audio que cuando se interpola la cuarta subtrama de la primera trama de audio. Cuando se interpola la tercera subtrama, las matrices V 519' pueden ponderarse
5
10
15
20
25
30
35
40
45
50
55
60
65
uniformemente. Cuando se interpola la cuarta subtrama, la matriz V 519' descompuesta a partir de la primera subtrama de la segunda trama de audio puede ponderarse con mayor peso que la matriz V 519' descompuesta de la primera subtrama de la primera trama de audio.
En otras palabras, la interpolacion temporal lineal puede ponderar las matrices V 519' dada la proximidad de una de las subtramas de la primera trama de audio a interpolar. Para que la segunda subtrama sea interpolada, la matriz V 519' descompuesta a partir de la primera subtrama de la primera trama de audio se pondera en mayor medida dada su proximidad a la segunda subtrama a interpolar que la matriz V 519' descompuesta a partir de la primera subtrama de la segunda trama de audio. Los pesos pueden ser equivalentes por este motivo al interpolar la tercera subtrama basada en las matrices V 519'. El peso aplicado a la matriz V 519' descompuesta a partir de la primera subtrama de la segunda trama de audio puede ser mayor que el aplicado a la matriz V 519' descompuesta a partir de la primera subtrama de la primera trama de audio dado que la cuarta subtrama a interpolar esta mas proxima a la primera subtrama de la segunda trama de audio que la primera subtrama de la primera trama de audio.
En algunos ejemplos, la unidad de interpolacion 550 puede proyectar la primera matriz V 519' descompuesta de la primera subtrama de la primera trama de audio a un dominio espacial para generar las primeras descomposiciones proyectadas. En algunos ejemplos, esta proyeccion incluye una proyeccion en una esfera (por ejemplo, utilizando una matriz de proyeccion, tal como una matriz de diseno T). La unidad de interpolacion 550 puede entonces proyectar la segunda matriz V 519' descompuesta de la primera subtrama de la segunda trama de audio al dominio espacial para generar segundas descomposiciones proyectadas. La unidad de interpolacion 550 puede entones interpolar espacialmente (que de nuevo puede ser una interpolacion lineal) las primeras descomposiciones proyectadas y las segundas descomposiciones proyectadas para generar una primera descomposicion proyectada espacialmente interpolada y una segunda descomposicion proyectada espacialmente interpolada. La unidad de interpolacion 550 puede entonces interpolar temporalmente la una o mas subtramas basandose en la primera descomposicion proyectada espacialmente interpolada y la segunda descomposicion proyectada espacialmente interpolada.
En los ejemplos, en los que la unidad de interpolacion 550 proyecta espacialmente y despues temporalmente las matrices V 519', la unidad de interpolacion 550 puede proyectar los coeficientes armonicos esfericos interpolados temporalmente resultantes de la interpolacion de uno o mas subtramas de vuelta a un dominio armonico esferico, generando asf la matriz V 519, la matriz S 519B y la matriz U 519C.
En algunos ejemplos, la porcion de la primera pluralidad de coeficientes armonicos esfericos comprende una unica subtrama de la primera pluralidad de coeficientes armonicos esfericos 511. En algunos ejemplos, la parte de la segunda pluralidad de coeficientes armonicos esfericos comprende una unica subtrama de la segunda pluralidad de coeficientes armonicos esfericos 511. En algunos ejemplos, esta subtrama unica de la que se descomponen las matrices V 19' es la primera subtrama.
En algunos ejemplos, la primera trama se divide en cuatro subtramas. En estos y otros ejemplos, la parte de la primera pluralidad de coeficientes armonicos esfericos comprende solamente la primera subtrama de la pluralidad de coeficientes armonicos esfericos 511. En estos y otros ejemplos, la segunda trama esta dividida en cuatro subtramas, y la parte de la segunda pluralidad de coeficientes armonicos esfericos 511 comprende solamente la primera subtrama de la segunda pluralidad de coeficientes armonicos esfericos 511.
Aunque, en algunos ejemplos, solo se utiliza una primera subtrama de cada trama de audio para realizar la interpolacion, la parte de la primera pluralidad de coeficientes armonicos esfericos puede comprender dos de cuatro subtramas de la primera pluralidad de coeficientes armonicos esfericos 511. En estos y otros ejemplos, la porcion de la segunda pluralidad de coeficientes armonicos esfericos 511 comprende dos de cuatro subtramas de la segunda pluralidad de coeficientes armonicos esfericos 511.
Como se ha indicado anteriormente, un dispositivo individual, por ejemplo, el dispositivo de codificacion de audio 510J, puede realizar la interpolacion, al tiempo que tambien descompone la parte de la primera pluralidad de coeficientes armonicos esfericos para generar las primeras descomposiciones de la porcion de la primera pluralidad de coeficientes armonicos esfericos. En estos y otros ejemplos, la unidad de descomposicion 518 puede descomponer la porcion de la segunda pluralidad de coeficientes armonicos esfericos para generar las segundas descomposiciones de la porcion de la segunda pluralidad de coeficientes armonicos esfericos. Aunque se describen con respecto a un unico dispositivo, dos o mas dispositivos pueden realizar las tecnicas descritas en esta divulgacion, donde uno de los dos dispositivos realiza la descomposicion y otro de los dispositivos realiza la interpolacion de acuerdo con las tecnicas descritas en esta divulgacion.
En algunos ejemplos, la unidad de descomposicion 518 puede realizar una descomposicion en valores singulares con respecto a la porcion de la primera pluralidad de coeficientes armonicos esfericos 511 para generar una matriz V 519' (asf como una matriz S 519B' y una matriz U 519C', que no se muestran con fines de ilustracion) representativa de vectores singulares derechos de la primera pluralidad de coeficientes armonicos esfericos 511. En estos y otros ejemplos, la unidad de descomposicion 518 puede realizar la descomposicion en valores singulares con respecto a la porcion de la segunda pluralidad de coeficientes armonicos esfericos 511 para generar una matriz V 519' (asf
5
10
15
20
25
30
35
40
45
50
55
60
65
como una matriz S 519B' y una matriz U 519C', que no se muestran con fines de ilustracion) representativa de vectores singulares derechos de la segunda pluralidad de coeficientes armonicos esfericos.
En algunos ejemplos, como se ha indicado anteriormente, la primera y la segunda pluralidad de coeficientes armonicos esfericos representan, cada una, una representacion de ondas planas del campo sonoro. En estos y otros ejemplos, la primera y la segunda pluralidad de coeficientes armonicos esfericos 511 representan cada uno uno o mas objetos monoaudio mezclados entre si.
En otras palabras, el audio 3D basado en armonicos esfericos puede ser una representacion parametrica del campo de presion 3D en terminos de funciones de base ortogonales sobre una esfera. Cuanto mayor sea el orden N de la representacion, la resolucion espacial sera potencialmente mas alta y, a menudo, mayor sera el numero de coeficientes armonicos esfericos (SH) (para un total de (N+1)2 coeficientes). Para muchas aplicaciones, puede requerirse una compresion de ancho de banda de los coeficientes para poder transmitir y almacenar los coeficientes de manera eficaz. Estas tecnicas dirigidas en esta divulgacion pueden proporcionar un proceso de reduccion de la dimensionalidad basado en tramas utilizando la descomposicion en valores singulares (SVD). El analisis SVD puede descomponer cada trama de coeficientes en tres matrices U, S y V. En algunos ejemplos, las tecnicas pueden manejar algunos de los vectores en U como componentes direccionales del campo sonoro subyacente. Sin embargo, cuando se manejan de esta manera, estos vectores (en U) son discontinuos de trama en trama, aunque representan el mismo componente de audio distinto. Estas discontinuidades pueden conducir a artefactos significativos cuando los componentes son alimentados a traves de codificadores de audio de transformadas.
Las tecnicas descritas en esta divulgacion pueden abordar esta discontinuidad. Es decir, las tecnicas pueden basarse en la observacion de que la matriz V puede interpretarse como ejes espaciales ortogonales en el dominio de las armonicas esfericas. La matriz U puede representar una proyeccion de los datos de armonicos esfericos (HOA) en terminos de las funciones de base, donde la discontinuidad puede atribuirse a las funciones de base (V) que cambian cada trama y, por lo tanto, son discontinuas en si mismas. Esto es diferente a la descomposicion similar, como la Transformada de Fourier, donde las funciones de base son, en algunos ejemplos, constantes de una trama a otra. En estos terminos, la SVD puede considerarse como un algoritmo de busqueda por coincidencia. Las tecnicas descritas en esta divulgacion pueden permitir que la unidad de interpolacion 550 mantenga la continuidad entre las funciones de base (V) de una trama a otra mediante interpolacion entre ellas.
En algunos ejemplos, las tecnicas permiten a la unidad de interpolacion 550 dividir la trama de datos SH en cuatro subtramas, como se describio anteriormente y se describe adicionalmente a continuacion con respecto a las FIGS. 45 y 45B. La unidad de interpolacion 550 puede entonces calcular la SVD para la primera subtrama. De forma similar, se calcula la SVD para la primera subtrama de la segunda trama. Para cada una de la primera trama y la segunda trama, la unidad de interpolacion 550 puede convertir los vectores en V en un mapa espacial proyectando los vectores sobre una esfera (utilizando una matriz de proyeccion tal como una matriz de diseno en T). La unidad de interpolacion 550 puede entonces interpretar los vectores en V como formas en una esfera. Para interpolar las matrices V para las tres subtramas entre la primera subtrama de la primera trama, la primera subtrama de la trama siguiente, la unidad de interpolacion 550 puede interpolar entonces estas formas espaciales y luego transformarlas de nuevo en los vectores SH a traves de la inversa de la matriz de proyeccion. Las tecnicas de esta descripcion pueden, de esta manera, proporcionar una transicion suave entre las matrices V.
La FIG. 41-41D son diagramas de bloques que ilustran cada uno un dispositivo de decodificacion de audio ejemplar 540A-540D que puede realizar diversos aspectos de las tecnicas descritas en esta divulgacion para decodificar coeficientes armonicos esfericos que describen campos sonoros bidimensionales o tridimensionales. El dispositivo de decodificacion de audio 540A puede representar cualquier dispositivo capaz de decodificar datos de audio, tales como un ordenador de sobremesa, un ordenador portatil, una estacion de trabajo, una tableta o un ordenador de pizarra, un dispositivo de grabacion de audio dedicado, un telefono movil (incluidos los llamados "telefonos inteligentes"), un dispositivo de reproductor multimedia personal, un dispositivo de juego personal o cualquier otro tipo de dispositivo capaz de decodificar datos de audio.
En algunos ejemplos, el dispositivo de decodificacion de audio 540A realiza un proceso de decodificacion de audio que es recfproco al proceso de codificacion de audio realizado por cualquiera de los dispositivos de codificacion de audio 510 o 510B con la excepcion de realizar la reduccion de orden (como se ha descrito anteriormente con respecto a los ejemplos de las FIGS. 40B-40J), que es, en algunos ejemplos, utilizado por los dispositivos de codificacion de audio 510B-510J para facilitar la eliminacion de datos irrelevantes extranos.
Aunque se muestra como un dispositivo individual, es decir, el dispositivo 540A en el ejemplo de la FIG. 41, los diversos componentes o unidades a los que se hace referencia a continuacion como incluidos en el dispositivo 540A pueden formar dispositivos separados que son externos al dispositivo 540. En otras palabras, aunque se describe en esta divulgacion como realizadas por un solo dispositivo, es decir, el dispositivo 540A en el ejemplo de la FIG. las tecnicas pueden ser implementadas o realizadas de otro modo por un sistema que comprende multiples dispositivos, donde cada uno de estos dispositivos puede incluir cada uno uno o mas de los diversos componentes o unidades descritos con mas detalle a continuacion. Por consiguiente, las tecnicas no deben estar limitadas a este respecto al ejemplo de la FIG. 41.
5
10
15
20
25
30
35
40
45
50
55
60
65
Como se ilustra en el ejemplo de la FIG. 41, el dispositivo de decodificacion de audio 540A comprende una unidad de extraccion 542, una unidad de decodificacion de audio 544, una unidad matematica 546 y una unidad de representacion de audio 548. La unidad de extraccion 542 representa una unidad configurada para extraer los coeficientes armonicos esfericos de fondo reducidos codificados 515B, los vectores Udist * SDIST codificados 515A y los vectores VTdist 525E del flujo de bits 517. La unidad de extraccion 542 emite los coeficientes armonicos esfericos de fondo reducidos codificados 515B y los vectores Udist * Sdist codificados 515A a la unidad de
J t
decodificacion de audio 544, a la vez que emite la matriz V dist 525E a la unidad matematica 546. A este respecto, la unidad de extraccion 542 puede funcionar de una manera similar a la unidad de extraccion 72 del dispositivo de decodificacion de audio 24 mostrado en el ejemplo de la FIG. 5.
La unidad de decodificacion de audio 544 representa una unidad para decodificar los datos de audio codificados (a menudo de acuerdo con un esquema de decodificacion de audio recfproco, tal como un esquema de decodificacion AAC) para recuperar los vectores Udist * Sdist 527 y los coeficientes armonicos esfericos de fondo reducidos 529. La unidad de decodificacion de audio 544 emite los vectores Udist * Sdist 527 y los coeficientes armonicos esfericos de fondo reducidos 529 a la unidad matematica 546. A este respecto, la unidad de decodificacion de audio 544 puede funcionar de una manera similar a la unidad de decodificacion psicoacustica 80 del dispositivo de decodificacion de audio 24 mostrado en el ejemplo de la FIG. 5.
La unidad matematica 546 puede representar una unidad configurada para realizar multiplicacion y adicion matricial (asf como, en algunos ejemplos, cualquier otra operacion matricial matematica). La unidad matematica 546 puede realizar primero una multiplicacion matricial de los vectores Udist * Sdist 527 por la matriz VTdist 525E. La unidad matematica 546 puede entonces anadir el resultado de la multiplicacion de los vectores Udist * Sdist 527 por la matriz VTdist 525E por los coeficientes armonicos esfericos de fondo reducidos 529 (que, de nuevo, pueden referirse al resultado de la multiplicacion de la matriz Ubg 525D por la matriz SBG 525B y luego por la matriz VTbg 525F) al resultado de la multiplicacion matricial de los vectores Udist * Sdist 527 por la matriz VTdist 525E para generar la version reducida de los coeficientes armonicos esfericos originales 11, que se representa como coeficientes armonicos esfericos recuperados 547. La unidad matematica 546 puede emitir los coeficientes armonicos esfericos recuperados 547 a la unidad de representacion de audio 548. A este respecto, la unidad matematica 546 puede funcionar de una manera similar a la unidad de formulacion de primer plano 78 y la unidad de formulacion de coeficiente HOA 82 del dispositivo de decodificacion de audio 24 mostrado en el ejemplo de la FIG. 5.
La unidad de representacion de audio 548 representa una unidad configurada para representar los canales 549A- 549N (los "canales 549", que tambien pueden denominarse generalmente los "datos de audio multicanal 549" o las "senales de altavoz 549"). La unidad de representacion de audio 548 puede aplicar una transformacion (a menudo expresada en forma de matriz) a los coeficientes armonicos esfericos recuperados 547. Debido a que los coeficientes armonicos esfericos recuperados 547 describen el campo sonoro en tres dimensiones, los coeficientes armonicos esfericos recuperados 547 representan un formato de audio que facilita la reproduccion de los datos de audio multicanal 549A de una manera que es capaz de alojar la mayorfa de las geometrfas de decodificador-altavoz local (que puede referirse a la geometrfa de los altavoces que reproduciran los datos de audio multicanal 549). Se ha descrito anteriormente mas informacion sobre la reproduccion de los datos de audio multicanal 549A con respecto a la FiG. 48.
Aunque se describe en el contexto de los datos de audio multicanal 549A que son datos de audio multicanal de sonido envolvente 549, la unidad de reproduccion de audio 48 tambien puede realizar una forma de binauralizacion para binauralizar los coeficientes armonicos esfericos recuperados 549A y generar asf dos canales binauralmente reproducidos 549. Por consiguiente, las tecnicas no deben limitarse a formas de sonido envolvente de datos de audio multicanal, pero pueden incluir datos de audio multicanal binauralizados.
Las diversas clausulas enumeradas a continuacion pueden presentar diversos aspectos de las tecnicas descritas en esta descripcion.
Clausula 132567-1B. Un dispositivo, tal como el dispositivo de decodificacion de audio 540, que comprende: uno o mas procesadores configurados para determinar uno o mas primeros vectores que describen componentes distintos del campo sonoro y uno o mas segundos vectores que describen componentes de fondo del campo acustico, tanto el uno o mas primeros vectores como el uno o mas segundos vectores generados al menos realizando una descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos.
Clausula 132567-2B. El dispositivo de la clausula 132567-1B, en el que uno o mas primeros vectores comprenden uno o mas vectores Udist * Sdist codificados en audio que, antes de la codificacion de audio, se generaron multiplicando uno o mas vectores Udist codificados de audio de una matriz U por uno o mas vectores Sdist de una matriz S, en el que la matriz U y la matriz S se generan al menos realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos, y en el que uno o mas procesadores estan configurados adicionalmente para decodificar audio de uno o mas vectores Udist * Sdist codificados de audio para generar una version decodificada de audio de uno o mas vectores Udist * Sdist
5
10
15
20
25
30
35
40
45
50
55
60
65
codificados de audio.
Clausula 132567-3B. El dispositivo de la clausula 132567-1B, en el que uno o mas primeros vectores comprenden uno o mas vectores Udist * Sdist codificados de audio que, antes de la codificacion de audio, se generaron multiplicando uno o mas vectores Udist codificados de audio de una matriz U por uno o mas vectores Sdist de una matriz S, y uno o mas vectores VTdist de una transposicion de una matriz V, en el que la matriz U y la matriz S y la matriz V se generan al menos realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos, y en el que uno o mas procesadores estan configurados adicionalmente para decodificar audio uno o mas vectores Udist * Sdist codificados de audio para generar una version decodificada de audio de uno o mas vectores U dist * Sdist codificados de audio.
Clausula 132567-4B. El dispositivo de la clausula 132567-3B, en el que el uno o mas procesadores estan configurados ademas para multiplicar los vectores Udist * Sdist por los vectores VTdist para recuperar los de la pluralidad de armonicos esfericos representativos de los distintos componentes del campo sonoro.
Clausula 132567-5B. El dispositivo de la clausula 132567-1B, en el que el uno o mas segundos vectores comprenden uno o mas vectores Ubg * Sbg * VTbg codificados en audio que, antes de la codificacion de audio, se generaron multiplicando los vectores Ubg incluidos dentro de una matriz U por los vectores Sbg incluidos dentro de una matriz S y luego por vectores Vt bg incluidos dentro de una transposicion de una matriz V, y en la que la matriz S, la matriz U y la matriz V se generaron, al menos, realizando una descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos.
Clausula 132567-6B. El dispositivo de la clausula 132567-1B, en el que el uno o mas segundos vectores comprenden uno o mas vectores Ubg * Sbg * Vt bg codificados en audio que, antes de la codificacion de audio, se generaron multiplicando los vectores Ubg incluidos dentro de una matriz U por los vectores S bg incluidos dentro de una matriz S y luego por los vectores Vt bg incluidos dentro de una transposicion de una matriz V, y en el que la matriz S, la matriz U y la matriz V se generaron al menos realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos, y en el que el uno o mas procesadores estan configurados adicionalmente para decodificar en audio uno o mas vectores bg * Sbg * VTbg codificados en audio para generar uno o mas vectores Ubg * Sbg * VTbg.
Clausula 132567-7B. El dispositivo de la clausula 132567-1B, en el que uno o mas primeros vectores comprenden uno o mas vectores Udist * Sdist codificados en audio que, antes de la codificacion de audio, se generaron multiplicando uno o mas vectores U dist codificados en audio de una matriz U por uno o mas vectores S dist de una matriz S, y uno o mas vectores V Tdist de una transposicion de una matriz V, en el que la matriz U, la matriz S y la matriz V se generaron al menos realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos, y en el que el uno o mas procesadores estan configurados adicionalmente para decodificar en audio uno o mas vectores Udist * Sdist codificados en audio para generar uno o mas vectores Udist * Sdist y multiplicar los vectores Udist * SdisT por los vectores VTdist para recuperar los de la pluralidad de coeficientes armonicos esfericos que describen los distintos componentes del campo sonoro, en el que uno o mas segundos vectores comprenden uno o mas vectores Ubg * Sbg * VTbg codificados en audio que, antes de la codificacion de audio, se generaron multiplicando los vectores U bg incluidos en la matriz U por los vectores Sbg incluidos en la matriz S y luego por los vectores VTbg incluidos dentro de la transposicion de la matriz V, y en el que el uno o mas procesadores estan configurados adicionalmente para decodificar en audio uno o mas vectores Ubg * Sbg * VTbg codificados en audio para recuperar al menos una parte de la pluralidad de coeficientes armonicos esfericos que describen componentes de fondo del campo sonoro y anadir la pluralidad de coeficientes armonicos esfericos que describen los distintos componentes del campo sonoro a la, al menos parte, de la pluralidad de coeficientes armonicos esfericos que describen componentes de fondo del campo sonoro para generar una version reconstruida de la pluralidad de coeficientes armonicos esfericos.
Clausula 132567-8B. El dispositivo de la clausula 132567-1B, en el que uno o mas primeros vectores comprenden uno o mas vectores Udist * Sdist que, antes de la codificacion de audio, se generaron multiplicando uno o mas vectores Udist codificados en audio de una matriz U por uno o mas vectores Sdist de una matriz S y uno o mas vectores VTdist de una transposicion de una matriz V, en donde la matriz U, la matriz S y la matriz V se generaron al menos realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos, y en el que el uno o mas procesadores estan configurados ademas para determinar un valor D que indica el numero de vectores a extraer de un flujo de bits para formar uno o mas vectores Udist * Sdist y el uno o mas vectores VTdist.
Clausula 132567-9B. El dispositivo de la clausula 132567-10B, en el que uno o mas primeros vectores comprenden uno o mas vectores Udist * Sdist que, antes de la codificacion de audio, se generaron multiplicando uno o mas vectores Udist codificados en audio de una matriz U por uno o mas vectores Sdist de una matriz S y uno o mas vectores VTdist de una transposicion de una matriz V, en donde la matriz U, la matriz S y la matriz V se generaron al menos realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos, y en el que el uno o mas procesadores estan configurados ademas para determinar un valor D en una base de trama de audio a trama de audio que indica el numero de vectores a
5
10
15
20
25
30
35
40
45
50
55
60
65
extraer de un flujo de bits para formar uno o mas vectores Udist * Sdist y el uno o mas vectores VTdist.
Clausula 132567-1G. Un dispositivo, tal como el dispositivo de decodificacion de audio 540, que comprende: uno o mas procesadores configurados para determinar uno o mas primeros vectores que describen componentes distintos de un campo sonoro y uno o mas segundos vectores que describen componentes de fondo del campo acustico, tanto el uno o mas primeros vectores como el uno o mas segundos vectores generados al menos realizando una descomposicion en valores singulares con respecto a la datos de audio multicanal representativos de al menos una porcion del campo sonoro.
Clausula 132567-2G. El dispositivo de la clausula 132567-1G, en el que los datos de audio multicanal comprenden una pluralidad de coeficientes armonicos esfericos.
Clausula 132567-3G. El dispositivo de la clausula 132567-2G, en el que el uno o mas procesadores estan configurados adicionalmente para realizar cualquier combinacion de la clausula 132567-2B a la clausula 132567- 9B.
De cada una de las diversas clausulas descritas anteriormente, debe entenderse que cualquiera de los dispositivos de decodificacion de audio 540A-540D puede realizar un procedimiento o comprender de otro modo medios para realizar cada paso del procedimiento para el cual esta configurado el dispositivo de decodificacion de audio 540A- 540D. En algunos casos, estos medios pueden comprender uno o mas procesadores. En algunos casos, uno o mas procesadores pueden representar un procesador de proposito especial configurado por medio de instrucciones almacenadas en un medio de almacenamiento no transitorio legible por ordenador. En otras palabras, varios aspectos de las tecnicas en cada uno de los conjuntos de ejemplos de codificacion pueden proporcionar un medio de almacenamiento no transitorio legible por ordenador que tiene almacenadas en el instrucciones que, cuando se ejecutan, hacen que uno o mas procesadores realicen el procedimiento para el cual los dispositivos de decodificacion de audio 540A-540D se han configurado.
Por ejemplo, una clausula 132567-10B puede obtenerse a partir de la anterior clausula 132567-1B que sera un procedimiento que comprende: determinar uno o mas primeros vectores que describen componentes distintos de un campo sonoro y uno o mas segundos vectores que describen componentes de fondo del campo acustico, tanto el uno o mas primeros vectores como el uno o mas segundos vectores generados al menos realizando una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos que representan el campo sonoro.
Como otro ejemplo, una clausula 132567-11B puede derivarse de la clausula 132567-1B anterior para ser un dispositivo, tal como el dispositivo de decodificacion de audio 540, que comprende medios para determinar uno o mas primeros vectores que describen componentes distintos del campo sonoro y uno o mas segundos vectores que describen componentes de fondo del campo sonoro, tanto uno o mas primeros vectores como uno o mas segundos vectores generados al menos realizando una descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos; y medios para almacenar el uno o mas primeros vectores y uno o mas segundos vectores.
Como otro ejemplo mas, una clausula 132567-12B puede derivarse de la clausula 132567-1B anterior como un medio de almacenamiento no transitorio legible por ordenador que tiene almacenadas en el mismo instrucciones que, cuando se ejecutan, hacen que uno o mas procesadores determinen uno o mas primeros vectores que describen componentes distintos de un campo sonoro y uno o mas segundos vectores que describen componentes de fondo del campo sonoro, tanto uno o mas primeros vectores como uno o mas segundos vectores generados al menos realizando una descomposicion en valores singulares con respecto a una pluralidad de coeficientes armonicos esfericos incluidos dentro de datos de audio ambisonicos de orden superior que describen el campo sonoro.
Asimismo, pueden derivarse diversas clausulas de las clausulas 132567-2B a 132567-9B para los diversos dispositivos, procedimientos y medios de almacenamiento no transitorios legibles por ordenador derivados como se ha ilustrado anteriormente. Lo mismo puede hacerse para las otras clausulas enumeradas a lo largo de esta divulgacion.
La FIG. 41B es un diagrama de bloques que ilustra un ejemplo de dispositivo de decodificacion de audio 540B que puede realizar diversos aspectos de las tecnicas descritas en esta descripcion para decodificar los coeficientes armonicos esfericos que describen campos sonoros bidimensionales o tridimensionales. El dispositivo de decodificacion de audio 540B puede ser similar al dispositivo de decodificacion de audio 540, excepto que, en algunos ejemplos, la unidad de extraccion 542 puede extraer vectores VTdist reordenados 539 en lugar de vectores Vdist 525e. En otros ejemplos, la unidad de extraccion 542 puede extraer los vectores VTdist 525E y luego reordenar estos vectores VTdist 525E basandose en la informacion de reordenacion especificada en el flujo de bits o inferida (mediante el analisis de otros vectores) para determinar los vectores VTdist reordenados 539. A este respecto, la unidad de extraccion 542 puede funcionar de una manera similar a la unidad de extraccion 72 del dispositivo de decodificacion de audio 24 mostrado en el ejemplo de la FIG. 5. En cualquier caso, la unidad de extraccion 542 puede emitir los vectores VTdist reordenados 539 a la unidad matematica 546, donde el proceso
5
10
15
20
25
30
35
40
45
50
55
60
65
descrito anteriormente con respecto a la recuperacion de los coeficientes armonicos esfericos puede realizarse con respecto a estos vectores VTdist reordenados 539.
De esta manera, las tecnicas pueden permitir que el dispositivo de decodificacion de audio 540B decodifique audio de uno o mas vectores reordenados representativos de componentes distintos de un campo sonoro, habiendose reordenado uno o mas de los vectores reordenados para facilitar la compresion del uno o mas vectores. En estos y otros ejemplos, el dispositivo de decodificacion de audio 540B puede recombinar el uno o mas vectores reordenados con uno o mas vectores adicionales reordenados adicionales para recuperar coeficientes armonicos esfericos representativos de componentes distintos del campo sonoro. En estos y otros ejemplos, el dispositivo de decodificacion de audio 540B puede entonces recuperar una pluralidad de coeficientes armonicos esfericos basados en los coeficientes armonicos esfericos representativos de componentes distintos del campo sonoro y coeficientes armonicos esfericos representativos de componentes de fondo del campo sonoro.
Es decir, diversos aspectos de las tecnicas pueden proporcionar el dispositivo de decodificacion de audio 540B configurado para decodificar uno o mas vectores reordenados de acuerdo con las siguientes clausulas.
Clausula 133146-1F. Un dispositivo, tal como el dispositivo de codificacion de audio 540B, que comprende: uno o mas procesadores configurados para determinar varios vectores correspondientes a componentes en el campo sonoro.
Clausula 133146-2F. El dispositivo de la clausula 133146-1F, en el que el uno o mas procesadores estan configurados para determinar el numero de vectores despues de realizar la reduccion de orden de acuerdo con cualquier combinacion de los casos descritos anteriormente.
Clausula 133146-3F. El dispositivo de la clausula 133146-1F, en el que el uno o mas procesadores estan configurados adicionalmente para realizar la reduccion de orden de acuerdo con cualquier combinacion de los casos descritos anteriormente.
Clausula 133146-4F. El dispositivo de la clausula 133146-1F, en el que el uno o mas procesadores estan configurados para determinar el numero de vectores a partir de un valor especificado en un flujo de bits, y en el que uno o mas procesadores estan configurados adicionalmente para analizar el flujo de bits basandose en el numero determinado de vectores para identificar uno o mas vectores en el flujo de bits que representan componentes distintos del campo sonoro.
Clausula 133146-5F. El dispositivo de la clausula 133146-1F, en el que el uno o mas procesadores estan configurados para determinar el numero de vectores a partir de un valor especificado en un flujo de bits, y en el que uno o mas procesadores estan configurados adicionalmente para analizar el flujo de bits basandose en el numero determinado de vectores para identificar uno o mas vectores en el flujo de bits que representan componentes de fondo del campo sonoro.
Clausula 133143-1C. Un dispositivo, tal como el dispositivo de decodificacion de audio 540B, que comprende: uno o mas procesadores configurados para reordenar uno o mas vectores reordenados representativos de componentes distintos de un campo sonoro.
Clausula 133143-2C. El dispositivo de la clausula 133143-1C, en el que el uno o mas procesadores estan configurados ademas para determinar los uno o mas vectores reordenados, y determinar informacion de reordenacion que describe como se reordenaron uno o mas de los vectores reordenados, en el que el uno o mas procesadores estan configurados adicionalmente para, al reordenar el uno o mas vectores reordenados, reordenar el uno o mas vectores reordenados basandose en la informacion de reordenacion determinada.
Clausula 133143-3C. El dispositivo de 1C, en el que el uno o mas vectores reordenados comprenden uno o mas primeros vectores reordenados indicados por cualquier combinacion de las reivindicaciones 1A-18A o cualquier combinacion de las reivindicaciones 1B-19B, y en el que uno o mas primeros vectores se determinan de acuerdo con el procedimiento indicado por cualquier combinacion de las reivindicaciones 1A-18A o cualquier combinacion de las reivindicaciones 1B-19B.
Clausula 133143-4D. Un dispositivo, tal como el dispositivo de decodificacion de audio 540B, que comprende: uno o mas procesadores configurados para decodificar en audio uno o mas vectores reordenados representativos de componentes distintos de un campo sonoro, habiendose reordenado el uno o mas vectores reordenados para facilitar la compresion de uno o mas vectores.
Clausula 133143-5D. El dispositivo de la clausula 133143-4D, en el que el uno o mas procesadores estan configurados ademas para recombinar el uno o mas vectores reordenados con uno o mas vectores adicionales reordenados para recuperar coeficientes armonicos esfericos representativos de componentes distintos del campo sonoro.
5
10
15
20
25
30
35
40
45
50
55
60
65
Clausula 133143-6D. El dispositivo de la clausula 133143-5D, en el que el uno o mas procesadores estan configurados ademas para recuperar una pluralidad de coeficientes armonicos esfericos basados en los coeficientes armonicos esfericos representativos de componentes distintos del campo sonoro y coeficientes armonicos esfericos representativos de los componentes de fondo del campo sonoro.
Clausula 133143-1E. Un dispositivo, tal como el dispositivo de decodificacion de audio 540B, que comprende: uno o mas procesadores configurados para reordenar uno o mas vectores para generar uno o mas primeros vectores reordenados y facilitar asf la codificacion por un codificador de audio heredado, en el que uno o mas vectores describen componentes distintos de un campo sonoro, y codificar en audio el uno o mas vectores reordenados utilizando el codificador de audio heredado para generar una version codificada del uno o mas vectores reordenados.
Clausula 133143-2E. El dispositivo de 1E, en el que el uno o mas vectores reordenados comprenden uno o mas primeros vectores reordenados indicados por cualquier combinacion de las reivindicaciones 1A-18A o cualquier combinacion de las reivindicaciones 1B-19B, y en el que uno o mas primeros vectores se determinan de acuerdo con el procedimiento indicado por cualquier combinacion de las reivindicaciones 1A-18A o cualquier combinacion de las reivindicaciones 1B-19B.
La FIG. 41C es un diagrama de bloques que ilustra otro dispositivo de codificacion de audio ejemplar 540C. El dispositivo de decodificacion de audio 540C puede representar cualquier dispositivo capaz de decodificar datos de audio, tales como un ordenador de sobremesa, un ordenador portatil, una estacion de trabajo, una tableta o un ordenador de pizarra, un dispositivo de grabacion de audio dedicado, un telefono movil (incluidos los llamados "telefonos inteligentes"), un dispositivo de reproductor multimedia personal, un dispositivo de juego personal o cualquier otro tipo de dispositivo capaz de decodificar datos de audio.
En el ejemplo de la FIG. 41C, el dispositivo de decodificacion de audio 540C realiza un proceso de decodificacion de audio que es recfproco al proceso de codificacion de audio realizado por cualquiera de los dispositivos de codificacion de audio 510B-510E con la excepcion de realizar la reduccion de orden (como se ha descrito anteriormente con respecto a los ejemplos de las FIGS. 40B-40J), que es, en algunos ejemplos, utilizado por el dispositivo de codificacion de audio 510B-510J para facilitar la eliminacion de datos irrelevantes extranos.
Aunque se muestra como un dispositivo individual, es decir, el dispositivo 540C en el ejemplo de la FIG. 41C, los diversos componentes o unidades a los que se hace referencia a continuacion como incluidos en el dispositivo 540C pueden formar dispositivos separados que son externos al dispositivo 540C. En otras palabras, aunque se describe en esta descripcion como realizada por un solo dispositivo, es decir, el dispositivo 540C en el ejemplo de la FIG. 41C, las tecnicas pueden ser implementadas o realizadas de otro modo por un sistema que comprende multiples dispositivos, donde cada uno de estos dispositivos puede incluir cada uno uno o mas de los diversos componentes o unidades descritos con mas detalle a continuacion. Por consiguiente, las tecnicas no deben estar limitadas a este respecto al ejemplo de la FIG. 41C.
Ademas, el dispositivo de codificacion de audio 540C puede ser similar al dispositivo de codificacion de audio 540B. Sin embargo, la unidad de extraccion 542 puede determinar uno o mas vectores VTpequeno 521 del flujo de bits 517 en lugar de vectores VTq_dist reordenados 539 o vectores VTdist 525E (como es el caso descrito con respecto al dispositivo de codificacion de audio 510 de la FIG. 40). Como resultado, la unidad de extraccion 542 puede pasar los vectores VTpequeno 521 a la unidad matematica 546.
Ademas, la unidad de extraccion 542 puede determinar coeficientes armonicos esfericos de fondo modificados codificados de audio 515B' desde la corriente de bits 517, pasando estos coeficientes 515B' a la unidad de decodificacion de audio 544, que puede decodificar en audio los coeficientes armonicos esfericos de fondo modificados codificados 515B para recuperar los coeficientes armonicos esfericos de fondo modificados 537. La unidad de decodificacion de audio 544 puede pasar estos coeficientes armonicos esfericos de fondo modificados 537 a la unidad matematica 546.
La unidad matematica 546 puede entonces multiplicar los vectores Udist * Sdist decodificados de audio (y posiblemente no ordenados) 527' por uno o mas vectores VTpequeno 521 para recuperar los coeficientes armonicos esfericos distintos de orden superior. La unidad matematica 546 puede entonces anadir los coeficientes armonicos esfericos distintos de orden superior a los coeficientes armonicos esfericos de fondo modificados 537 para recuperar la pluralidad de los coeficientes armonicos esfericos 511 o algun derivado de los mismos (que puede ser un derivado debido a la reduccion de orden realizada en la unidad codificadora 510E).
De este modo, las tecnicas pueden permitir que el dispositivo de decodificacion de audio 540C determine, a partir de un flujo de bits, al menos uno de uno o mas vectores descompuestos a partir de coeficientes armonicos esfericos que se recombinaron con coeficientes armonicos esfericos de fondo para reducir la cantidad de bits que se requiere asignar a uno o mas vectores en el flujo de bits, en el que los coeficientes armonicos esfericos describen un campo sonoro, y en el que los coeficientes armonicos esfericos de fondo describen uno o mas componentes de fondo del mismo campo sonoro.
5
10
15
20
25
30
35
40
45
50
55
60
65
Varios aspectos de las tecnicas pueden permitir a este respecto que el dispositivo de decodificacion de audio 540C, en algunos casos, se configure para determinar, a partir de un flujo de bits, al menos uno de uno o mas vectores descompuestos a partir de coeficientes armonicos esfericos que se recombinaron con coeficientes armonicos esfericos de fondo en el que los coeficientes armonicos esfericos describen un campo sonoro, y en el que los coeficientes armonicos esfericos de fondo describfan uno o mas componentes de fondo del mismo campo sonoro.
En estos y otros casos, el dispositivo de decodificacion de audio 540C esta configurado para obtener, a partir del flujo de bits, una primera porcion de los coeficientes armonicos esfericos que tienen un orden igual a Nbg.
En estos y otros casos, el dispositivo de decodificacion de audio 540C esta configurado ademas para obtener, a partir del flujo de bits, una primera parte codificada de audio, teniendo los coeficientes armonicos esfericos un orden igual a Nbg, y decodificar en audio la primera porcion codificada de audio de los coeficientes armonicos esfericos para generar una primera porcion de los coeficientes armonicos esfericos.
En estos y otros casos, el al menos uno de uno o mas vectores comprende uno o mas vectores VTpequeno, habiendose determinado uno o mas vectores VTpequeno a partir de una transposicion de una matriz V generada realizando una descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el al menos uno de uno o mas vectores comprende uno o mas vectores VTpequeno, habiendose determinado uno o mas vectores VTpequeno a partir de una transposicion de una matriz V generada realizando una descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos, y el dispositivo de decodificacion de audio 540C esta configurado adicionalmente para obtener, a partir del flujo de bits, uno o mas vectores Udist * Sdist que se han derivado de una matriz U y una matriz S, ambos de los cuales se generaron realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos, y multiplicando los vectores Udist * Sdist por los vectores VTpequeno.
En estos y otros casos, el al menos uno de uno o mas vectores comprende uno o mas vectores VTpequeno, habiendose determinado uno o mas vectores VTpequeno a partir de una transposicion de una matriz V generada realizando una descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos, y el dispositivo de decodificacion de audio 540C esta configurado adicionalmente para obtener, a partir del flujo de bits, uno o mas vectores Udist * Sdist que se han derivados de una matriz U y una matriz S, ambos de los cuales se generaron realizando la descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos, multiplicar los vectores Udist * Sdist por los vectores VTpequeno para recuperar los coeficientes armonicos esfericos de fondo distintos de orden superior, y sumar los coeficientes armonicos esfericos de fondo que incluyen los coeficientes armonicos esfericos de fondo distinto de orden inferior a los coeficientes armonicos esfericos de fondo distinto de orden superior para recuperar, al menos en parte, la pluralidad de coeficientes armonicos esfericos.
En estos y otros casos, el al menos uno de uno o mas vectores comprende uno o mas vectores VTpequeno, habiendose determinado uno o mas vectores VTpequeno a partir de una transposicion de una matriz V generada realizando una descomposicion en valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos, y el dispositivo de decodificacion de audio 540C esta configurado adicionalmente para obtener, a partir del flujo de bits, uno o mas vectores Udist * Sdist que han sido derivados de una matriz U y una matriz S, ambos de los cuales se generaron realizando la descomposicion de valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos, multiplicar los vectores Udist * Sdist por los vectores VTpequeno para recuperar coeficientes armonicos esfericos de fondo diferentes de orden superior, anadir los coeficientes esfericos de armonicos de fondo que incluyen los coeficientes armonicos esfericos de fondo distinto de orden inferior a los coeficientes armonicos esfericos de fondo distintos de orden superior para recuperar, al menos en parte, la pluralidad de coeficientes armonicos esfericos, y reproducir la pluralidad recuperada de coeficientes armonicos esfericos.
La FIG. 41D es un diagrama de bloques que ilustra otro dispositivo de codificacion de audio ejemplar 540D. El dispositivo de decodificacion de audio 540D puede representar cualquier dispositivo capaz de decodificar datos de audio, tales como un ordenador de sobremesa, un ordenador portatil, una estacion de trabajo, una tableta o un ordenador de pizarra, un dispositivo de grabacion de audio dedicado, un telefono movil (incluidos los llamados "telefonos inteligentes"), un dispositivo de reproductor multimedia personal, un dispositivo de juego personal o cualquier otro tipo de dispositivo capaz de decodificar datos de audio.
En el ejemplo de la FIG. 41D, el dispositivo de decodificacion de audio 540D realiza un proceso de decodificacion de audio que es recfproco al proceso de codificacion de audio realizado por cualquiera de los dispositivos de codificacion de audio 510B-510J con la excepcion de realizar la reduccion de orden (como se ha descrito anteriormente con respecto a los ejemplos de las FIGS. 40B-40J), que es, en algunos ejemplos, utilizado por los dispositivos de codificacion de audio 510B-510J para facilitar la eliminacion de datos irrelevantes extranos.
Aunque se muestra como un dispositivo individual, es decir, el dispositivo 540D en el ejemplo de la FIG. 41D, los
5
10
15
20
25
30
diversos componentes o unidades a los que se hace referencia a continuacion como incluidos en el dispositivo 540D pueden formar dispositivos separados que son externos al dispositivo 540D. En otras palabras, aunque se describe en esta descripcion como realizada por un solo dispositivo, es decir, el dispositivo 540D en el ejemplo de la FIG. 41D, las tecnicas pueden ser implementadas o realizadas de otro modo por un sistema que comprende multiples dispositivos, donde cada uno de estos dispositivos puede incluir cada uno uno o mas de los diversos componentes o unidades descritos con mas detalle a continuacion. Por consiguiente, las tecnicas no deben estar limitadas a este respecto al ejemplo de la FIG. 41D.
Ademas, el dispositivo de decodificacion de audio 540D puede ser similar al dispositivo de decodificacion de audio 540B, excepto que el dispositivo de decodificacion de audio 540D realiza una descompresion V adicional que es generalmente recfproca a la compresion realizada por la unidad de compresion V 552 descrita anteriormente con respecto a la FlG. 40I. En el ejemplo de la FlG. 41D, la unidad de extraccion 542 incluye una unidad de descompresion V 555 que realiza esta descompresion V de los componentes espaciales comprimidos 539' incluidos en el flujo de bits 517 (y generalmente se especifica de acuerdo con el ejemplo mostrado en una de las FIGS. 10B y 10C). La unidad de descompresion V 555 puede descomprimir vectores VTdist 539 basandose en la siguiente ecuacion:
imagen3
0, if cid — 0
sgn * (2cld_1 + residual), if cid =£ 0
En otras palabras, la unidad de descompresion V 555 puede analizar primero el valor de nbits del flujo de bits 517 e identificar el conjunto apropiado de cinco tablas de codigo Huffman para usar al decodificar el codigo Huffman representativo de cid. Basandose en el modo de prediccion y en la informacion de codificacion Huffman especificada en el flujo de bits 517 y posiblemente en el orden del elemento del componente espacial con respecto a los otros elementos del componente espacial, la unidad de descompresion V 555 puede identificar la correcta de las cinco tablas Huffman definidas para el valor de nbits analizados. Utilizando esta tabla Huffman, la unidad de descompresion V 555 puede decodificar el valor cid del codigo Huffman. La unidad de descompresion V 555 puede entonces analizar el bit de signo y el codigo de bloque residual, decodificando el codigo de bloque residual para identificar el residuo. De acuerdo con la ecuacion anterior, la unidad de descompresion V 555 puede decodificar uno de los vectores VTdist 539.
Lo anterior puede resumirse en la siguiente tabla de sintaxis:
Tabla - Vectores decodificados
Sintaxis N.° de bits Mnemonica
decodeVVec(i)
{
switch codedVVecLength { caso 0: //Vector completo VVecLength = NumOfHoaCoeffs; para (m=0; m< VVecLength; ++m){ VecCoeff[m] = m+1; } break;
caso 1: //se eliminan los ordenes inferiores VVecLength = NumOfHoaCoeffs - MinNumOfCoeffsForAmbHOA;
para (m=0; m< VVecLength; ++m){
VecCoeff[m] = m + MinNumOfCoeffsForAmbHOA +
1;
}
break; caso 2:
VVecLength = NumOfHoaCoeffs- MinNumOfCoeffsForAmbHOA - NumOfAddAmbHoaChan; n = 0;
para (m=0;m<NumOfHoaCoeffs- MinNumOfCoeffsForAmbHOA; ++m){
c = m + MinNumOfCoeffsForAmbHOA + 1; if (ismember(c, AmbCoeffldx) == 0){
VecCoeff[n] = c;
n++;
}
}
break; caso 3:
VVecLength = NumOfHoaCoeffs - NumOfAddAmbHoaChan; n = 0;
para (m=0; m<NumOfHoaCoeffs; ++m){ c = m + 1;
if (ismember(c, AmbCoeffldx) == 0){
VecCoeff[n] = c; n++;
}
}
}
if (NbitsQ[i] == 5) { /* cuantizador uniforme */ para (m=0; m< VVecLength; ++m){
VVec(k)[i][m] = (VecValue /128.0) - 1.0; 8 uimsbf
}
}
else { /* decodificacion Huffman */ para (m=0; m< VVecLength; ++m){
Idx = 5;
If(CbFlag[i] == 1){
idx = (min(3, max(l, ceil(sqrt(VecCoeff[m]) - 1)));
}
else if (PFlag[i] == 1) {idx = 4;}
cid =
dinamico 1 huffDecode
duffDecode(huffmannTable[NbitsQ].codebook[idx]; huffVal);
if(cid>0) { aVal = sgn = (sgnVal * 2) - 1; if (cid > 1) {
1 bslbf
aVal = sgn * (2.0A(cid -1) + intAddVal); } } else {aVal = 0.0;} } } }
cid-1 uimsbf
NOTA: - La funcion del codificador para el cuantificador uniforme es min(255,
round((x+ 1.0) *128.0))
- El n.° de bits para huffDecode nemonico es dinamico
En la tabla de sintaxis anterior, la primera instruccion de conmutacion con los cuatro casos (casos 0-3) proporciona una forma mediante la cual se determina la longitud del vector VTdist en terminos del numero de coeficientes. El primer caso, caso 0, indica que se especifican todos los coeficientes para los vectores VTdist. El segundo caso, caso 5 1, indica que solo se especifican los coeficientes del vector VTdist que corresponden a un orden mayor que un
MinNumOfCoeffsForAmbHOA, lo que puede indicar lo que se denomina (Ndist + 1) - (N bg + 1) anteriormente. El tercer caso, caso 2, es similar al segundo caso, pero resta aun mas los coeficientes identificados por NumOfAddAmbHoaChan, que indica una variable para especificar canales adicionales (donde "canales" se refiere a un coeficiente particular que corresponde a un cierto orden, combinacion de suborden) correspondiente a un orden 10 que excede el orden Nbg. El cuarto caso, caso 3, indica que unicamente se especifican aquellos coeficientes del vector VTdist que quedan despues de eliminar los coeficientes identificados por NumOfAddAmbHoaChan.
Despues de esta instruccion de conmutacion, la decision de realizar una descuantizacion unificada es controlada por NbitsQ (o, como se ha indicado anteriormente, nbits), que si no es igual a 5, da como resultado la aplicacion de la 15 decodificacion Huffman. El valor cid mencionado anteriormente es igual a los dos bits menos significativos del valor NbitsQ. El modo de prediccion analizado anteriormente se designa como PFlag en la tabla de sintaxis anterior, mientras que el bit de informacion HT se designa como CbFlag en la tabla de sintaxis anterior. La sintaxis restante
5
10
15
20
25
30
35
40
45
50
55
60
65
especifica como ocurre la decodificacion de una manera sustancialmente similar a la descrita anteriormente.
De esta manera, las tecnicas de esta divulgacion pueden permitir que el dispositivo de decodificacion de audio 540D obtenga un flujo de bits que comprenda una version comprimida de un componente espacial de un campo sonoro, estando el componente espacial generando realizando una sfntesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos, y descomprimir la version comprimida del componente espacial para obtener el componente espacial.
Ademas, las tecnicas pueden permitir que el dispositivo de decodificacion de audio 540D descomprima una version comprimida de un componente espacial de un campo sonoro, el componente espacial generado realizando una sfntesis basada en vectores con respecto a una pluralidad de coeficientes de armonicos esfericos.
De esta manera, el dispositivo de codificacion de audio 540D puede realizar diversos aspectos de las tecnicas expuestas a continuacion con respecto a las siguientes clausulas.
Clausula 141541-1B. Un dispositivo que comprende:
uno o mas procesadores configurados para obtener un flujo de bits que comprende una version comprimida de un componente espacial de un campo de sonido, el componente espacial generado realizando una sfntesis basada en vectores con respecto a una pluralidad de coeficientes de armonicos esfericos, y descomprimir la version comprimida del componente espacial para obtener el componente espacial.
Clausula 141541-2B. El dispositivo de la clausula 141541-1B, en el que la version comprimida del componente espacial esta representada en el flujo de bits utilizando, al menos en parte, un campo que especifica un modo de prediccion utilizado al comprimir el componente espacial, y en el que uno o mas procesadores estan configurados ademas para, al descomprimir la version comprimida del componente espacial, descomprimir la version comprimida del componente espacial basada, al menos en parte, en el modo de prediccion para obtener el componente espacial.
Clausula 141541-3B. El dispositivo de cualquier combinacion de la clausula 141541-1B y la clausula 141541-2B, en el que la version comprimida del componente espacial esta representada en el flujo de bits utilizando, al menos en parte, informacion de tabla de Huffman que especifica una tabla de Huffman usada al comprimir el componente espacial, y en el que uno o mas procesadores estan configurados adicionalmente para, al descomprimir la version comprimida del componente espacial, descomprimir la version comprimida del componente espacial basada, al menos en parte, en la informacion de la tabla de Huffman.
Clausula 141541-4B. El dispositivo de cualquier combinacion de la clausula 141541-1B a la clausula 141541-3B, en el que la version comprimida del componente espacial esta representada en el flujo de bits utilizando, al menos en parte, un campo que indica un valor que expresa un tamano de paso de cuantizacion o una variable del mismo utilizado al comprimir el componente espacial, y en el que uno o mas procesadores estan configurados ademas para, al descomprimir la version comprimida del componente espacial, descomprimir la version comprimida del componente espacial basada, al menos en parte, en el valor.
Clausula 141541-5B. El dispositivo de la clausula 141541-4B, en el que el valor comprende un valor de nbits.
Clausula 141541-6B. El dispositivo de cualquier combinacion de las clausulas 141541-4B y 141541-5B, en el que el flujo de bits comprende una version comprimida de una pluralidad de componentes espaciales del campo sonoro cuya version comprimida del componente espacial se incluye, en el que el valor expresa el tamano de paso de cuantizacion o una variable del mismo utilizada cuando se comprime la pluralidad de componentes espaciales y en el que uno o mas procesadores estan configurados adicionalmente para, al descomprimir la version comprimida del componente espacial, descomprimir la pluralidad de version comprimida del componente espacial basada, al menos en parte, en el valor.
Clausula 141541-7B. El dispositivo de cualquier combinacion de la clausula 141541-1B a la clausula 141541-6B, en el que la version comprimida del componente espacial esta representada en el flujo de bits utilizando, al menos en parte, un codigo Huffman para representar un identificador de categorfa que identifica una categorfa de compresion a la que corresponde el componente espacial, y en el que uno o mas procesadores estan configurados ademas para, al descomprimir la version comprimida del componente espacial, descomprimir la version comprimida del componente espacial basada, al menos en parte, en el codigo Huffman.
Clausula 141541-8B. El dispositivo de cualquier combinacion de la clausula 141541-1B a la clausula 141541-7B, en el que la version comprimida del componente espacial esta representada en el flujo de bits utilizando, al menos en parte, un bit de signo que identifica si el componente espacial es un valor positivo o un valor negativo, y el que el uno o mas procesadores estan configurados ademas para, al descomprimir la version comprimida del componente espacial, descomprimir la version comprimida del componente espacial basada, al menos en parte, en el bit de signo.
5
10
15
20
25
30
35
40
45
50
55
60
65
Clausula 141541-9B. El dispositivo de cualquier combinacion de la clausula 141541-1B a la clausula 141541-8B, en el que la version comprimida del componente espacial esta representada en el flujo de bits utilizando, al menos en parte, un codigo de Huffman para representar un valor residual del componente espacial, y en el que el uno o mas procesadores estan configurados ademas para, al descomprimir la version comprimida del componente espacial, descomprimir la version comprimida del componente espacial basada, al menos en parte, en el codigo de Huffman.
Clausula 141541-10B. El dispositivo de cualquier combinacion de la clausula 141541-1B a la clausula 141541- 10B, en el que la sfntesis basada en vectores comprende una descomposicion en valores singulares.
Ademas, el dispositivo de decodificacion de audio 540D puede configurarse para realizar diversos aspectos de las tecnicas expuestas a continuacion con respecto a las siguientes clausulas.
Clausula 141541-1C. Un dispositivo, tal como el dispositivo de decodificacion de audio 540D, que comprende: uno o mas procesadores configurados para descomprimir una version comprimida de un componente espacial de un campo sonoro, el componente espacial generado realizando una sfntesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
Clausula 141541-2C. El dispositivo de cualquier combinacion de la clausula 141541-1C y la clausula 141541-2C, en el que el uno o mas procesadores estan configurados adicionalmente para, al descomprimir la version comprimida del componente espacial, obtener un identificador de categorfa que identifica una categorfa en la que se clasifico el componente espacial al comprimirse, obtener un signo que identifique si el componente espacial es un valor positivo o negativo, obtener un valor residual asociado con la version comprimida del componente espacial, y descomprimir la version comprimida del componente espacial basandose en el identificador de categorfa, el signo y el valor residual.
Clausula 141541-3C. El dispositivo de la clausula 141541-2C, en el que el uno o mas procesadores estan configurados adicionalmente para, al obtener el identificador de categorfa, obtener un codigo de Huffman representativo del identificador de categorfa, y decodificar el codigo de Huffman para obtener el identificador de categorfa.
Clausula 141541-4C. El dispositivo de la clausula 141541-3C, en el que el uno o mas procesadores estan configurados ademas para, al decodificar el codigo de Huffman, identificar una tabla Huffman usada para decodificar el codigo de Huffman basado en, al menos en parte, una posicion relativa del componente espacial en un vector que especifica una pluralidad de componentes espaciales.
Clausula 141541-5C. El dispositivo de cualquier combinacion de la clausula 141541-3C y la clausula 141541-4C, en el que el uno o mas procesadores estan configurados ademas para, al decodificar el codigo Huffman, identificar una tabla Huffman usada para decodificar el codigo Huffman basado en, al menos en parte, un modo de prediccion utilizado al comprimir el componente espacial.
Clausula 141541-6C. El dispositivo de cualquier combinacion de la clausula 141541-3C a la clausula 141541-5C, en el que el uno o mas procesadores estan configurados adicionalmente para, al decodificar el codigo Huffman, identificar una tabla Huffman usada para decodificar el codigo Huffman basandose, al menos en parte, en informacion de la tabla Huffman asociada con la version comprimida del componente espacial.
Clausula 141541-7C. El dispositivo de la clausula 141541-3C, en el que el uno o mas procesadores estan configurados ademas para, al decodificar el codigo de Huffman, identificar una tabla Huffman usada para decodificar el codigo de Huffman basado en, al menos en parte, una posicion relativa del componente espacial en un vector que especifica una pluralidad de componentes espaciales, un modo de prediccion usado al comprimir el componente espacial, e informacion de tabla Huffman asociada a la version comprimida del componente espacial.
Clausula 141541-8C. El dispositivo de la clausula 141541-2C, en el que el uno o mas procesadores estan configurados adicionalmente para, al obtener el valor residual, decodificar un codigo de bloque representativo del valor residual para obtener el valor residual.
Clausula 141541-9C. El dispositivo de cualquier combinacion de la clausula 141541-1C a la clausula 141541-8C, en el que la sfntesis basada en vectores comprende una descomposicion en valores singulares.
Ademas, el dispositivo de decodificacion de audio 540D puede configurarse para realizar diversos aspectos de las tecnicas expuestas a continuacion con respecto a las siguientes clausulas.
Clausula 141541-1G. Un dispositivo, tal como el dispositivo de decodificacion de audio 540D que comprende: uno o mas procesadores configurados para identificar un libro de codigos de Huffman para usar cuando se descomprime una version comprimida de un componente espacial actual de una pluralidad de componentes
5
10
15
20
25
30
35
40
45
50
55
60
65
espaciales comprimidos basandose en un orden de la version comprimida del componente espacial actual con respecto a los restantes de la pluralidad de componentes espaciales comprimidos, realizando el componente espacial generado una sfntesis basada en vectores con respecto a una pluralidad de coeficientes armonicos esfericos.
Clausula 141541-2G. El dispositivo de la clausula 141541-1G, en el que el uno o mas procesadores estan configurados ademas para realizar cualquier combinacion de las etapas enumeradas en la clausula 141541-1D a la clausula 141541-10D y la clausula 141541-1E a la clausula 141541-9E.
Las FIGS. 42-42C son diagramas de bloques que ilustran la unidad de reduccion de orden 528A mostrada en los ejemplos de las FIGS. 40B-40J en mas detalle. La FIG. 42 es un diagrama de bloques que ilustra una unidad de reduccion de orden 528, que puede representar un ejemplo de la unidad de reduccion de orden 528A de las FIGS. 40B-40J. La unidad de reduccion de ordenes 528A puede recibir o determinar de otro modo una velocidad de bits objetivo 535 y realizar una reduccion de orden con respecto a los coeficientes armonicos esfericos de fondo 531 basandose unicamente en esta velocidad de bits objetivo 535. En algunos ejemplos, la unidad de reduccion de ordenes 528A puede acceder a una tabla u otra estructura de datos utilizando la velocidad de bits objetivo 535 para identificar las ordenes y/o subordenes que han de eliminarse de los coeficientes de armonicos esfericos de fondo 531 para generar coeficientes armonicos esfericos de fondo reducido 529.
De este modo, las tecnicas pueden permitir que un dispositivo de codificacion de audio, tal como los dispositivos de codificacion de audio 510B-410J, realicen, sobre la base de una velocidad de bits objetivo 535, una reduccion de orden con respecto a una pluralidad de coeficientes armonicos esfericos o descomposiciones de los mismos, tales como los coeficientes armonicos esfericos de fondo 531, para generar coeficientes armonicos esfericos reducidos 529 o las descomposiciones reducidas de los mismos, en el que la pluralidad de coeficientes armonicos esfericos representa un campo sonoro.
En cada una de las diversas instancias descritas anteriormente, debe entenderse que el dispositivo de decodificacion de audio 540 puede realizar un procedimiento o comprender de otro modo medios para realizar cada paso del procedimiento para el que esta configurado el dispositivo de decodificacion de audio 540. En algunos casos, estos medios pueden comprender uno o mas procesadores. En algunos casos, uno o mas procesadores pueden representar un procesador de proposito especial configurado por medio de instrucciones almacenadas en un medio de almacenamiento no transitorio legible por ordenador. En otras palabras, varios aspectos de las tecnicas en cada uno de los conjuntos de ejemplos de codificacion pueden proporcionar un medio de almacenamiento no transitorio legible por ordenador que tiene almacenadas en el instrucciones que, cuando se ejecutan, hacen que uno o mas procesadores realicen el procedimiento para el cual el dispositivo de decodificacion de audio 540 se ha configurado para realizar.
La FIG. 42B es un diagrama de bloques que ilustra una unidad de reduccion de orden 528B, que puede representar un ejemplo de la unidad de reduccion de orden 528A de las FIGS. 40B-40J. En el ejemplo de la FIG. 42B, en lugar de realizar una reduccion de orden basada solamente en una velocidad de bits objetivo 535, la unidad de reduccion de orden 528B puede realizar una reduccion de orden basada en un analisis de contenido de los coeficientes armonicos esfericos de fondo 531. La unidad de reduccion de ordenes 528B puede incluir una unidad de analisis de contenido 536A que realiza este analisis de contenido.
En algunos ejemplos, la unidad de analisis de contenido 536A puede incluir una unidad de analisis espacial 536A que realiza una forma de analisis de contenido referida al analisis espacial. El analisis espacial puede implicar analizar los coeficientes de armonicos esfericos de fondo 531 para identificar informacion espacial que describe la forma u otras propiedades espaciales de los componentes de fondo del campo sonoro. En base a esta informacion espacial, la unidad de reduccion de ordenes 528B puede identificar las ordenes y/o subordenes que han de eliminarse de los coeficientes de armonicos esfericos de fondo 531 para generar coeficientes armonicos esfericos de fondo reducido 529.
En algunos ejemplos, la unidad de analisis de contenido 536A puede incluir una unidad de analisis de difusion 536B que realiza una forma de analisis de contenido referida al analisis de difusion. El analisis de difusion puede implicar analizar los coeficientes de armonicos esfericos de fondo 531 para identificar informacion de difusion que describe la difluoroetilo de los componentes de fondo del campo sonoro. En base a esta informacion de difusion, la unidad de reduccion de ordenes 528B puede identificar las ordenes y/o subordenes que han de eliminarse de los coeficientes de armonicos esfericos de fondo 531 para generar coeficientes armonicos esfericos de fondo reducido 529.
Aunque se muestra incluyendo tanto la unidad de analisis espacial 536A como la unidad de analisis de difusion 36B, la unidad de analisis de contenido 536A puede incluir solamente la unidad de analisis espacial 536, solamente la unidad de analisis de difusion 536B o tanto la unidad de analisis espacial 536A como la unidad de analisis de difusion 536B. En algunos ejemplos, la unidad de analisis de contenido 536A puede realizar otras formas de analisis de contenido ademas o como una alternativa a uno o ambos del analisis espacial y el analisis de difusion. Por consiguiente, las tecnicas descritas en esta divulgacion no deben limitarse en este aspecto.
5
10
15
20
25
30
35
40
45
50
55
60
65
De esta manera, las tecnicas pueden permitir que un dispositivo de codificacion de audio, tal como los dispositivos de codificacion de audio 510B-510J, realice, basandose en un analisis de contenido de una pluralidad de coeficientes armonicos esfericos o descomposiciones de los mismos que describen un campo sonoro, la reduccion de orden con respecto a la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos, para generar coeficientes armonicos esfericos reducidos o descomposiciones reducidas de los mismos.
En otras palabras, las tecnicas pueden permitir que un dispositivo, tal como los dispositivos de codificacion de audio 510B-510J, se configure de acuerdo con las siguientes clausulas.
Clausula 133146-1E. Un dispositivo, tal como cualquiera de los dispositivos de codificacion de audio 510B-510J, que comprende uno o mas procesadores configurados para realizar, basandose en un analisis de contenido de una pluralidad de coeficientes armonicos esfericos o descomposiciones de los mismos que describen un campo sonoro, una reduccion de orden con respecto a la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos para generar coeficientes armonicos esfericos reducidos o descomposiciones reducidas de los mismos.
Clausula 133146-2E. El dispositivo de la clausula 133146-1E, en el que el uno o mas procesadores estan
configurados adicionalmente para, antes de realizar la reduccion de orden, realizar una descomposicion en
valores singulares con respecto a la pluralidad de coeficientes armonicos esfericos para identificar uno o mas primeros vectores que describen distintos componentes del campo sonoro y uno o mas segundos vectores que identifican componentes de fondo del campo sonoro, y en el que el uno o mas procesadores estan configurados para realizar la reduccion de orden con respecto a uno o mas primeros vectores, uno o mas segundos vectores, o tanto uno o mas primeros vectores como uno o mas segundos vectores.
Clausula 133146-3E. El dispositivo de la clausula 133146-1E, en el que el uno o mas procesadores estan
configurados adicionalmente para realizar el analisis de contenido con respecto a la pluralidad de coeficientes
armonicos esfericos o las descomposiciones de los mismos.
Clausula 133146-4E. El dispositivo de la clausula 133146-3E, en el que el uno o mas procesadores estan configurados para realizar un analisis espacial con respecto a la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos.
Clausula 133146-5E. El dispositivo de la clausula 133146-3E, en el que realizar el analisis de contenido comprende realizar un analisis de difusion con respecto a la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos.
Clausula 133146-6E. El dispositivo de la clausula 133146-3E, en el que el uno o mas procesadores estan configurados para realizar un analisis espacial y un analisis de difusion con respecto a la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos.
Clausula 133146-7E. El dispositivo de la reivindicacion 1, en el que el uno o mas procesadores estan configurados para realizar, basandose en el analisis de contenido de la pluralidad de coeficientes armonicos esfericos o sus descomposiciones y una velocidad de bits objetivo, la reduccion de orden con respecto a la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos para generar los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de los mismos.
Clausula 133146-8E. El dispositivo de la clausula 133146-1E, en el que el uno o mas procesadores estan configurados adicionalmente para codificar de en audio los coeficientes armonicos esfericos reducidos o las descomposiciones de los mismos.
Clausula 133146-9E. El dispositivo de la clausula 133146-1E, en el que el uno o mas procesadores estan configurados adicionalmente para codificar en audio los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de los mismos, y generar un flujo de bits para incluir los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de los mismos.
Clausula 133146-10E. El dispositivo de la clausula 133146-1E, en el que el uno o mas procesadores estan configurados adicionalmente para especificar uno o mas ordenes y/o una o mas subordenes de funciones de base esferica con las que los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de estos se corresponden en un flujo de bits que incluye los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de los mismos.
Clausula 133146-11E. El dispositivo de la clausula 133146-1E, en el que los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de los mismos tienen valores menores que la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos.
Clausula 133146-12E. El dispositivo de la clausula 133146-1E, en el que el uno o mas procesadores estan
5
10
15
20
25
30
35
40
45
50
55
60
65
configurados adicionalmente para eliminar aquellos de la pluralidad de coeficientes armonicos esfericos o vectores de las descomposiciones de los mismos que tienen un orden y/o suborden especificados para generar los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de los mismos.
Clausula 133146-13E. El dispositivo de la clausula 133146-1E, en el que el uno o mas procesadores estan configurados para poner a cero la pluralidad de coeficientes armonicos esfericos o aquellos vectores de la descomposicion de los mismos, que tienen un orden y/o suborden especificado para generar los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de los mismos.
La FIG. 42C es un diagrama de bloques que ilustra una unidad de reduccion de orden 528C, que puede representar un ejemplo de la unidad de reduccion de orden 528A de las FIGS. 40B-40J. La unidad de reduccion de ordenes 528C de la FIG. 42B es sustancialmente la misma que la unidad de reduccion de ordenes 528B, pero puede recibir o determinar de otro modo una velocidad de bits objetivo 535 de la manera descrita anteriormente con respecto a la unidad de reduccion de ordenes 528A de la FIG. 42, mientras que tambien realiza el analisis de contenido de la manera descrita anteriormente con respecto a la unidad de reduccion de ordenes 528B de la FIG. 42B. La unidad de reduccion de ordenes 528C puede realizar entonces una reduccion de orden con respecto a los coeficientes de armonicos esfericos de fondo 531 basados en esta velocidad de bits objetivo 535 y el analisis de contenido.
De este modo, las tecnicas pueden permitir que un dispositivo de codificacion de audio, tal como los dispositivos de codificacion de audio 510B-510J, realice un analisis de contenido con respecto a la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos. Al realizar la reduccion de orden, los dispositivos de codificacion de audio 510B-510J pueden realizar, basandose en la velocidad de bits objetivo 535 y en el analisis de contenido, la reduccion de orden con respecto a la pluralidad de coeficientes armonicos esfericos o las descomposiciones de los mismos para generar los coeficientes armonicos esfericos reducidos o las descomposiciones reducidas de los mismos.
Dado que se eliminan uno o mas vectores, los dispositivos de codificacion de audio 510B-510J pueden especificar el numero de vectores en el flujo de bits como datos de control. Los dispositivos de codificacion de audio 510B-510J pueden especificar este numero de vectores en el flujo de bits para facilitar la extraccion de los vectores del flujo de bits por el dispositivo de decodificacion de audio.
La FIG. 44 es una ilustracion del diagrama de operaciones ejemplares realizadas por el dispositivo de codificacion de audio 410D para compensar el error de cuantizacion de acuerdo con diversos aspectos de las tecnicas descritas en esta divulgacion. En el ejemplo de la FIG. 44, la unidad matematica 526 del dispositivo de codificacion de audio 510D se muestra como un bloque de lfneas discontinuas para indicar que las operaciones matematicas pueden ser realizadas por la unidad matematica 526 del dispositivo de decodificacion de audio 510D.
Como se ilustra en el ejemplo de la FIG. 44, la unidad matematica 526 puede multiplicar primero los vectores Udist * Sdist 527 por los vectores VTdist 525E para generar coeficientes armonicos esfericos distintos (designados como "vectores Hdist 630"). La unidad matematica 526 puede entonces dividir los vectores Hdist 630 por la version cuantificada de los vectores VTdist 525E (que se indican, de nuevo, como "vectores VTq_dist 525G"). La unidad matematica 526 puede realizar esta division determinando una pseudoinvertida de los vectores VTq_dist 525G y multiplicando luego los vectores Hdist por la pseudoinvertida de los vectores VTq_dist 525G, emitiendo una version compensada de error de Udist * Sdist (que pueden abreviarse como "vectores USdist" o "USdist"). La version compensada de error de USdist puede representarse como vectores US*dist 527' en el ejemplo de la FIG. 44. De esta manera, las tecnicas pueden proyectar eficazmente el error de cuantizacion, al menos en parte, a los vectores USdist 527, generando los vectores US dist 527'.
La unidad matematica 526 puede entonces restar los vectores US* dist 527' de los vectores Udist * Sdist 527 para determinar los vectores USERR 634 (que pueden representar al menos una porcion del error debido a la cuantizacion proyectada en los vectores Udist * Sdist 527). La unidad matematica 526 puede entonces multiplicar los vectores UsErR 634 por los vectores VTq_dist 525G para determinar los vectores Herr 636. Matematicamente, los vectores Herr 636 pueden ser equivalentes a los vectores USdist 527 - vectores US*dist 527', cuyo resultado se multiplica entonces por los vectores VTdist 525E. La unidad matematica 526 puede entonces anadir los vectores Herr 636 a los coeficientes armonicos esfericos de fondo 531 (designados como vectores Hbg 531 en el ejemplo de la FIG. 44) calculados multiplicando los vectores Ubg 525D por los vectores Sbg 525B y luego por los vectores VTbg 525F. La unidad matematica 526 puede sumar los vectores Herr 636 a los vectores Hbg 531, proyectando eficazmente al menos una porcion del error de cuantizacion en los vectores Hbg 531 para generar los vectores Hbg 531' compensados. De esta manera, las tecnicas pueden proyectar al menos una porcion del error de cuantizacion en los vectores Hbg 531.
Las FIGS. 45 y 45B son diagramas que ilustran la interpolacion de subtramas de partes de dos tramas de acuerdo con diversos aspectos de las tecnicas descritas en esta divulgacion. En el ejemplo de la FIG. 45, se muestra una primera trama 650 y una segunda trama 652. La primera trama 650 puede incluir coeficientes armonicos esfericos ("SH[1]") que se pueden descomponer en las matrices U[1], S[1] y V'[1]. La segunda trama 652 puede incluir coeficientes armonicos esfericos ("SH[2]"). Estos SH[1] y SH[2] pueden identificar diferentes tramas de los SHC 511
5
10
15
20
25
30
35
40
45
50
55
60
65
descritos anteriormente.
En el ejemplo de la FIG. 45B, la unidad de descomposicion 518 del dispositivo de codificacion de audio 510H mostrado en el ejemplo de la FIG. 40H puede separar cada una de las tramas 650 y 652 en cuatro subtramas 651A- 651D y 653A-653D respectivas. La unidad de descomposicion 518 puede entonces descomponer la primera subtrama 651A (designada como "SH[1,1]") de la trama 650 en las matrices U[1, 1], S[1, 1] y V[1, 1], emitiendo la matriz V[1, 1] 519' a la unidad de interpolacion 550. La unidad de descomposicion 518 puede entonces descomponer la segunda subtrama 653A (designada como "SH[2,1]") de la trama 652 en las matrices U[1, 1], S[1, 1] y v[1, 1], emitiendo la matriz V[2, 1] 519' a la unidad de interpolacion 550. La unidad de descomposicion 518 tambien puede emitir SH[1, 1], SH[1, 2], SH[1, 3] y SH[1, 4] de los SHC 11 y SH[2, 1] 2], SH[2, 3] y SH[2, 4] de los SHC 511 a la unidad de interpolacion 550.
La unidad de interpolacion 550 puede entonces realizar las interpolaciones identificadas en la parte inferior de la ilustracion mostrada en el ejemplo de la FIG. 45B. Es decir, la unidad de interpolacion 550 puede interpolar V'[1, 2] en base a V'[1, 1] y V'[2, 1]. La unidad de interpolacion 550 tambien puede interpolar V'[1, 3] en base a V'[1, 1] y V'[2, 1]. Ademas, la unidad de interpolacion 550 tambien puede interpolar V'[1, 4] en base a V'[1, 1] y V'[2, 1]. Estas interpolaciones pueden implicar una proyeccion de V'[1, 1] y V'[2, 1] en el dominio espacial, como se muestra en el ejemplo de las FIGS. 46-46E, seguido por una interpolacion temporal y luego una proyeccion de nuevo en el dominio armonico esferico.
La unidad de interpolacion 550 puede obtener a continuacion U[1, 2]S[1, 2] multiplicando SH[1, 2] por (V'[1, 2])-1, U[1, 3]S[1, 3] multiplicando SH[1, 3] por (V'[1, 3])-1, y U[1, 4]S[1, 4] multiplicando SH[1, 4] por (V'[1, 4])-1. La unidad de interpolacion 550 puede entonces reformar la trama en forma descompuesta que emite la matriz V 519, la matriz S 519B y la matriz U 519C.
Las FIGS. 46A-46E son diagramas que ilustran una seccion transversal de una proyeccion de uno o mas vectores de una version descompuesta de una pluralidad de coeficientes armonicos esfericos que han sido interpolados de acuerdo con las tecnicas descritas en esta divulgacion. La FIG. 46A ilustra una seccion transversal de una proyeccion de uno o mas primeros vectores de una primera matriz V 19' que se ha descompuesto de SHC 511 de una primera subtrama a partir de una primera trama a traves de un proceso de SVD. La FIG. 46B ilustra una seccion transversal de una proyeccion de uno o mas segundos vectores de una segunda matriz V 519' que se ha descompuesto de SHC 511 de una primera subtrama a partir de una segunda trama a traves de un proceso de SVD.
La FIG. 46C ilustra una seccion transversal de una proyeccion de uno o mas vectores interpolados para una matriz V 519A representativa de una segunda subtrama de la primera trama, habiendose interpolado estos vectores de acuerdo con las tecnicas descritas en esta divulgacion a partir de la matriz V 519' descompuesta a partir de la primera subtrama de la primera trama de los SHC 511 (es decir, uno o mas vectores de la matriz V 519' mostrada en el ejemplo de la FIG. 46 en este ejemplo) y la primera subtrama de la segunda trama de los SHC 511 (es decir, uno o mas vectores de la matriz V 519' mostrada en el ejemplo de la FIG. 46B en este ejemplo).
La FIG. 46D ilustra una seccion transversal de una proyeccion de uno o mas vectores interpolados para una matriz V 519A representativa de una tercera subtrama de la primera trama, habiendose interpolado estos vectores de acuerdo con las tecnicas descritas en esta divulgacion a partir de la matriz V 519' descompuesta a partir de la primera subtrama de la primera trama de los SHC 511 (es decir, uno o mas vectores de la matriz V 519' mostrada en el ejemplo de la FIG. 46 en este ejemplo) y la primera subtrama de la segunda trama de los SHC 511 (es decir, uno o mas vectores de la matriz V 519' mostrada en el ejemplo de la FIG. 46B en este ejemplo).
La FIG. 46E ilustra una seccion transversal de una proyeccion de uno o mas vectores interpolados para una matriz V 519A representativa de una cuarta subtrama de la primera trama, habiendose interpolado estos vectores de acuerdo con las tecnicas descritas en esta divulgacion a partir de la matriz V 519' descompuesta a partir de la primera subtrama de la primera trama de los SHC 511 (es decir, uno o mas vectores de la matriz V 519' mostrada en el ejemplo de la FIG. 46 en este ejemplo) y la primera subtrama de la segunda trama de los SHC 511 (es decir, uno o mas vectores de la matriz V 519' mostrada en el ejemplo de la FIG. 46B en este ejemplo).
La FIG. 47 es un diagrama de bloques que ilustra, con mas detalle, la unidad de extraccion 542 de los dispositivos de decodificacion de audio 540A-540D mostrados en los ejemplos de las FIGS. 41-41D. En algunos ejemplos, la unidad de extraccion 542 puede representar un extremo frontal a lo que se puede denominar "decodificador integrado", que puede realizar dos o mas esquemas de decodificacion (donde mediante la realizacion de estos dos o mas esquemas, el decodificador puede considerarse para "integrar" los dos o mas esquemas). Como se ilustra en el ejemplo de la FIG. 44, la unidad de extraccion 542 incluye un multiplexor 620 y las subunidades de extraccion 622A y 622b ("subunidades de extraccion 622"). El multiplexor 620 identifica aquellas matrices de SHC entramadas codificadas 547-547N a enviar a la subunidad de extraccion 622A y a la subunidad de extraccion 622B basandose en la indicacion correspondiente de si las matrices de SHC entramadas codificadas asociadas 547-547N se generan a partir de un objeto de audio sintetico o una grabacion. Cada una de las subunidades de extraccion 622A puede realizar un esquema de decodificacion diferente (que se puede denominar "descompresion") que esta, en algunos ejemplos, adaptado a los SHC generados a partir de un objeto de audio sintetico o SHC generados a partir de una
5
10
15
20
25
30
35
40
45
50
55
grabacion. Cada una de las subunidades de extraccion 622A puede realizar uno de estos esquemas de descompresion respectivos con el fin de generar tramas de SHC 547, que se emiten a SHC 547.
Por ejemplo, la unidad de extraccion 622A puede realizar un esquema de descompresion para reconstruir SA a partir de una senal predominante (PS) usando la siguiente formula:
HOA = DirV x PS,
donde DirV es un vector direccional (representativo de varias direcciones y anchuras), que puede ser transmitido a traves de un canal lateral. La unidad de extraccion 622B puede, en este ejemplo, realizar un esquema de descompresion que reconstruye la matriz HOA de la PS usando la siguiente formula:
HOA = sqrt(4p) * Ynm ( theta, phi ) * PS,
donde Ynm es la funcion armonica esferica y la informacion de theta y phi puede ser enviada a traves del canal lateral.
A este respecto, las tecnicas permiten a la unidad de extraccion 358 seleccionar uno de una pluralidad de esquemas de descompresion basandose en la indicacion de si se genera una version comprimida de coeficientes armonicos esfericos representativos de un campo sonoro a partir de un objeto de audio sintetico y descomprimir la version comprimida de los coeficientes armonicos esfericos utilizando el esquema seleccionado de la pluralidad de esquemas de descompresion. En algunos ejemplos, el dispositivo comprende un decodificador integrado.
La FIG. 48 es un diagrama de bloques que ilustra la unidad de reproduccion de audio 48 del dispositivo de decodificacion de audio 540A-540D mostrado en los ejemplos de la FIGS. 41A-41D con mas detalle. La FIG. 48 ilustra una conversion de los coeficientes armonicos esfericos recuperados 547 en los datos de audio multicanal 549A que son compatibles con una geometrfa de decodificador-altavoz local. Para algunas geometrfas de altavoces locales (que, de nuevo, pueden referirse a una geometrfa de altavoz en el decodificador), algunas transformaciones que aseguran la invertibilidad pueden dar como resultado una calidad de audio-imagen menos que deseable. Es decir, la reproduccion del sonido no siempre puede dar como resultado una correcta localizacion de los sonidos en comparacion con el audio que se esta capturando. Para corregir esta calidad de imagen menos que deseable, las tecnicas pueden aumentarse adicionalmente para introducir un concepto que puede denominarse como "altavoces virtuales".
En lugar de requerir que uno o mas altavoces sean reposicionados o posicionados en regiones particulares o definidas de espacio que tengan ciertas tolerancias angulares especificadas por una norma, tal como la citada anteriormente ITU-R bS.775-1, la trama anterior puede modificarse para incluir alguna forma de panoramizacion, tal como la panoramizacion de amplitud basada en vectores (VBAP), la panoramizacion de amplitud basada en la distancia, u otras formas de panoramizacion. Centrandose en la VbAp con fines de ilustracion, VBAP puede introducir eficazmente lo que se puede caracterizar como "altavoces virtuales". VBAP puede modificar una alimentacion a uno o mas altavoces para que estos uno o mas altavoces emitan de manera eficaz un sonido que parece originarse desde un altavoz virtual en una o mas de una ubicacion y angulo diferente de al menos uno de la ubicacion y/o el angulo del uno o mas altavoces que soportan el altavoz virtual.
Para ilustrar, la siguiente ecuacion para determinar las alimentaciones de altavoz en terminos de los SHC puede ser la siguiente:
r a°0m l A\M A?M
Orcler+l)(Orcler+l) , >.
. (Order+l)(Order+l)
= —ik
VBAP
MATRIX
MxN
D
Nx(Order + l)2
'01 (<*>)'
SiM
9-sM
-9m M-
en la ecuacion anterior, la matriz de VBAP es de tamano de M filas por N columnas, donde M representa el numero de altavoces (y sera igual a cinco en la ecuacion anterior) y N representa el numero de altavoces virtuales. La matriz VBAP se puede calcular en funcion de los vectores desde la posicion definida del oyente a cada una de las posiciones de los altavoces y los vectores desde la posicion definida del oyente a cada una de las posiciones de los altavoces virtuales. La matriz D en la ecuacion anterior puede ser de un tamano de N filas por (orden+1)2 columnas, donde el orden puede referirse al orden de las funciones de SH. La matriz D puede representar lo siguiente
5
10
15
20
25
30
35
40
45
50
imagen4
La matriz g (o vector, dado que solo hay una sola columna) puede representar la ganancia para las alimentaciones de altavoz para los altavoces dispuestos en la geometna decodificador-local. En la ecuacion, la matriz g es de tamano M. La matriz A (o vector, dado que solo hay una sola columna) puede representar los SHC 520, y es de tamano (Orden+1)(orden+1), que tambien puede representarse como (Orden+1)2
De hecho, la matriz VBAP es una matriz MxN que proporciona lo que se puede denominar un "ajuste de ganancia" que influye en la ubicacion de los altavoces y la posicion de los altavoces virtuales. La introduccion de la panoramizacion de esta manera puede dar como resultado una mejor reproduccion del audio multicanal que da como resultado una imagen de mejor calidad cuando se reproduce por la geometna del altavoz local. Ademas, al incorporar VBAP en esta ecuacion, las tecnicas pueden superar geometnas de altavoz deficientes que no se alinean con las especificadas en varios estandares.
En la practica, la ecuacion puede invertirse y emplearse para transformar los SHC de nuevo en las alimentaciones multicanal para una geometna o configuracion particular de altavoces, que de nuevo se puede denominar geometna de decodificador-local en esta divulgacion. Es decir, la ecuacion puede invertirse para resolver la matriz g. La ecuacion invertida puede ser como se indica a continuacion:
'3iM' 9i G») 03 (")
-0m(«>)-
-ik
VBAP
MATRIX'1
MxN
zr1
Nx{Order 4- l)2
4!(®)
AlHa)
.-(Order+l)(Order+l), x - (0rder+l)(Order+l) '■a)A
La matriz g puede representar la ganancia del altavoz para, en este ejemplo, cada uno de los cinco altavoces en una configuracion de 5.1 altavoces. Las ubicaciones de los altavoces virtuales utilizadas en esta configuracion pueden corresponder a las ubicaciones definidas en una especificacion o estandar de formato multicanal 5.1. La ubicacion de los altavoces que puede soportar cada uno de estos altavoces virtuales se puede determinar usando cualquier numero de tecnicas de localizacion de audio conocidas, muchas de las cuales implican reproducir un tono que tiene una frecuencia particular para determinar una ubicacion de cada altavoz con respecto a una unidad de cabecera (tal como un receptor de audioMdeo (receptor A/V), television, sistema de juegos, sistema de disco de video digital u otros tipos de sistemas de cabecera). Alternativamente, un usuario de la unidad de cabecera puede especificar manualmente la ubicacion de cada uno de los altavoces. En cualquier caso, dadas estas ubicaciones conocidas y angulos posibles, la unidad de cabecera puede resolver las ganancias, asumiendo una configuracion ideal de altavoces virtuales por medio de VBAP.
A este respecto, un dispositivo o aparato puede realizar una panoramizacion de amplitud basada en vectores u otra forma de panoramizacion en la pluralidad de canales virtuales para producir una pluralidad de canales que impulsan a los altavoces en una geometna decodificador-local para emitir sonidos que parecen originarse a partir de altavoces virtuales configurados en una geometna local diferente. Por lo tanto, las tecnicas pueden permitir al dispositivo de decodificacion de audio 40 realizar una transformacion en la pluralidad de coeficientes armonicos esfericos, tales como los coeficientes armonicos esfericos recuperados 47, para producir una pluralidad de canales. Cada una de la pluralidad de canales puede estar asociada con una region de espacio correspondiente diferente. Ademas, cada una de la pluralidad de canales puede comprender una pluralidad de canales virtuales, donde la pluralidad de canales virtuales puede estar asociada con la correspondiente region de espacio diferente. Por lo tanto, un dispositivo puede realizar una panoramizacion de amplitud basada en vectores en los canales virtuales para producir la pluralidad de canales de los datos de audio multicanal 49.
Las FIGS. 49A-49E (ii) son diagramas que ilustran sistemas de codificacion de audio respectivos 560A-560C, 567D, 569D, 571E y 573E que pueden implementar diversos aspectos de las tecnicas descritas en esta divulgacion. Como se ilustra en el ejemplo de la FIG. 49A, el sistema de codificacion de audio 560A puede incluir un dispositivo de codificacion de audio 562 y un dispositivo de decodificacion de audio 564. El dispositivo de codificacion de audio 562 puede ser similar a cualquiera de los dispositivos de codificacion de audio 20 y 510A-510D mostrados en el ejemplo
5
10
15
20
25
30
35
40
45
50
55
60
65
de las FIGS. 4 y 40A-40D, respectivamente. El dispositivo de decodificacion de audio 564 puede ser similar al dispositivo de decodificacion de audio 24 y 40 mostrado en el ejemplo de las FIGS. 5 y 41.
Como se ha descrito anteriormente, el ambisonico de orden superior (HOA) es una manera mediante la cual describir toda la informacion direccional de un campo sonoro basado en una transformada espacial de Fourier. En algunos ejemplos, cuanto mayor es el orden de ambisonicos, N, mayor es la resolucion espacial y mayor es el numero de coeficientes armonicos esfericos (SH) (N+1)2 Por lo tanto, cuanto mas alto sea el orden de los ambisonicos N, en algunos ejemplos, se obtienen requisitos de ancho de banda mayores para transmitir y almacenar los coeficientes. Debido a que los requisitos de ancho de banda de HOA son bastante altos en comparacion, por ejemplo, con datos de audio de sonido envolvente 5.1 o 7.1, se puede desear una reduccion de ancho de banda para muchas aplicaciones.
De acuerdo con las tecnicas descritas en esta divulgacion, el sistema de codificacion de audio 560A puede realizar un procedimiento basado en separar los elementos distintos (de primer plano) de los no distintos (fondo o ambiente) en una escena de sonido espacial. Esta separacion puede permitir que el sistema de codificacion de audio 560A procese elementos de primer plano y de fondo independientemente entre si. En este ejemplo, el sistema de codificacion de audio 560A explora la propiedad de que los elementos de primer plano pueden llamar mas la atencion (por el oyente) y pueden ser mas faciles de localizar (de nuevo, por el oyente) en comparacion con los elementos de fondo. Como resultado, el sistema de codificacion de audio 560A puede almacenar o transmitir contenido HOA de manera mas eficiente.
En algunos ejemplos, el sistema de codificacion de audio 560A puede conseguir esta separacion empleando el proceso de descomposicion en valores singulares (SVD). El proceso SVD puede separar una trama de coeficientes HOA en 3 matrices (U, S, V). La matriz U contiene los vectores singulares izquierdos y la matriz V contiene los vectores singulares derechos. La matriz Diagonal S contiene los valores singulares no negativos clasificados en su diagonal. Una reconstruccion de los coeficientes HOA generalmente buena (o, en algunos casos, perfecta suponiendo una precision ilimitada en la representacion de los coeficientes HOA) sera dada por U*S*V'. Solo reconstruyendo el subespacio con los D valores singulares mas grandes: U(:,1:D)*S(1:D,:)*V', el sistema de codificacion de audio 560A puede extraer la informacion espacial mas sobresaliente de esta trama HOA, es decir, elementos de sonido de primer plano (y tal vez algunas reflexiones de la sala tempranas fuertes). El resto U(:,D+1:end)*S(D+1:end,:)*V' puede reconstruir elementos de fondo y reverberacion a partir del contenido.
El sistema de codificacion de audio 560A puede determinar el valor D, que separa los dos subespacios, analizando la pendiente de la curva creada por los valores diagonales descendentes de S: los valores singulares grandes representan sonidos de primer plano, los valores singulares bajos representan valores de fondo. El sistema de codificacion de audio 560A puede utilizar una primera y una segunda derivada de la curva de valor singular. El sistema de codificacion de audio 560A puede tambien limitar el numero D entre uno y cinco. Alternativamente, el sistema de codificacion de audio 560A puede predefinir el numero D, tal como a un valor de cuatro. En cualquier caso, una vez estimado el numero D, el sistema de codificacion de audio 560A extrae el subespacio de primer plano y fondo de las matrices U y S.
El sistema de codificacion de audio 560A puede entonces reconstruir los coeficientes HOA de la escena de fondo mediante U(:,D+1:end)*S(D+1:end,:)*V', dando como resultado (N+1)2 canales de coeficientes HOA. Como se sabe que los elementos de fondo, en algunos ejemplos, no tan relevantes y no son tan localizables con respecto a los elementos de primer plano, el sistema de codificacion de audio 560A puede truncar el orden de los canales HOA. Ademas, el sistema de codificacion de audio 560A puede comprimir estos canales con codecs de audio con perdidas o sin perdida, tales como AAC, u opcionalmente con un codec de audio mas agresivo en comparacion con el utilizado para comprimir los elementos relevantes de primer plano. En algunos casos, para ahorrar ancho de banda, el sistema de codificacion de audio 560A puede transmitir los elementos de primer plano de manera diferente. Es decir, el sistema de codificacion de audio puede transmitir los vectores singulares izquierdos U(:,1:D) despues de comprimirse con codecs de audio con perdidas o sin perdida (tales como AAC) y transmitir estos valores singulares izquierdos comprimidos junto con la matriz de reconstruccion R = S(1:D,:)*V'. R puede representar una matriz D x (N+1)2, que puede diferir entre tramas.
En el lado receptor del sistema de codificacion de audio 560, el sistema de codificacion de audio puede multiplicar estas dos matrices para reconstruir una trama de (N+1)2 canales HOA. Una vez que se suman los canales HOA de fondo y de primer plano, el sistema de codificacion de audio 560A puede reproducir cualquier configuracion de altavoz utilizando cualquier reproductor ambisonico apropiado. Dado que las tecnicas proporcionan la separacion de elementos de primer plano (sonido directo o distinto) de los elementos de fondo, una persona con discapacidad auditiva podra controlar la mezcla de elementos de primer plano con elementos de fondo para aumentar la inteligibilidad. Ademas, pueden aplicarse otros efectos de audio, por ejemplo, un compresor dinamico en los elementos de primer plano.
La FIG. 49B es un diagrama de bloques que ilustra el sistema de codificacion de audio 560B con mas detalle. Como se ilustra en el ejemplo de la FIG. 49B, el sistema de codificacion de audio 560B puede incluir un dispositivo de codificacion de audio 566 y un dispositivo de decodificacion de audio 568. El dispositivo de codificacion de audio 566
5
10
15
20
25
30
35
40
45
50
55
60
65
puede ser similar a los dispositivos de codificacion de audio 24 y 510E mostrados en el ejemplo de las FIGS. 4 y 40E. El dispositivo de decodificacion de audio 568 puede ser similar al dispositivo de decodificacion de audio 24 y 540B mostrado en el ejemplo de las FIGS. 5 y 41B.
De acuerdo con las tecnicas descritas en esta divulgacion, cuando se utiliza la descomposicion SVD basada en tramas (o procedimientos relacionados tales como KLT y PCA) en senales HoA, con el fin de reducir el ancho de banda, el dispositivo de codificacion de audio 66 puede cuantizar los primeros pocos vectores de la U (multiplicado por los valores singulares correspondientes de la matriz S), asf como los vectores correspondientes del vector VT Esto comprendera los componentes "de primer plano" del campo sonoro. Las tecnicas pueden permitir que el dispositivo de codificacion de audio 566 codifique el vector Udist * Sdist utilizando un motor de codificacion de audio de "caja negra". El V vector puede ser escalar o un vector cuantificado. Ademas, algunos o todos los vectores restantes en la matriz U pueden multiplicarse con los valores singulares correspondientes de la matriz S y de la matriz V y tambien codificarse utilizando un motor de codificacion de audio de "caja negra". Estos comprenderan los componentes "de fondo" del campo sonoro.
Puesto que los componentes auditivos mas ruidosos se descomponen en los "componentes de primer plano", el dispositivo de codificacion de audio 566 puede reducir el orden ambisonico de los componentes "de fondo" antes de utilizar un motor de codificacion de audio de "caja negra" porque (se asume) que el fondo no contiene contenido localizable importante. Dependiendo del orden ambisonico de los componentes de primer plano, la unidad de codificacion de audio 566 puede transmitir el o los vectores correspondientes, que pueden ser bastante grandes. Por ejemplo, una cuantizacion escalar simple de 16 bits de los vectores V dara como resultado una sobrecarga de aproximadamente 20 kbps para el 4° orden (25 coeficientes) y 40 kbps para el 6° orden (49 coeficientes) por componente de primer plano. Las tecnicas descritas en esta divulgacion pueden proporcionar un procedimiento para reducir esta sobrecarga del vector V.
Para ilustracion, se asume que el orden ambisonico de los elementos de primer plano es Ndist y el orden ambisonico de los elementos de fondo Nbg, como se ha descrito anteriormente. Dado que el dispositivo de codificacion de audio 566 puede reducir el orden ambisonico de los elementos de fondo como se ha descrito anteriormente, Nbg puede ser menor que Ndist. La longitud del vector V de primer plano que necesita transmitirse para reconstruir los elementos de primer plano en el lado del receptor tiene la longitud de (Ndist+1)2 por elemento de primer plano, mientras que los primeros coeficientes ((Ndist+1)2) - ((Nbg+1)2) se pueden utilizar para reconstruir los componentes de primer plano o distintos hasta el orden Nbg. Usando las tecnicas descritas en esta divulgacion, el dispositivo de codificacion de audio 566 puede reconstruir el primer plano hasta el orden Nbg y fusionar los canales (Nbg+1)2 resultantes con los canales de fondo, dando como resultado un campo sonoro completo hasta el orden NBG. El dispositivo de codificacion de audio 566 puede entonces reducir el vector V a aquellos coeficientes con el fndice mayor de (Nbg+1)2 para la transmision, (donde estos vectores pueden denominarse "VTpequeno"). En el lado del receptor, la unidad de decodificacion de audio 568 puede reconstruir los canales de audio de primer plano para el orden ambisonico mayor que Nbg multiplicando los elementos de primer plano por los vectores VTpequeno.
La FIG. 49c es un diagrama de bloques que ilustra el sistema de codificacion de audio 560C con mas detalle. Como se ilustra en el ejemplo de la FIG. 49C, el sistema de codificacion de audio 560B puede incluir un dispositivo de codificacion de audio 567 y un dispositivo de decodificacion de audio 569. El dispositivo de codificacion de audio 567 puede ser similar a los dispositivos de codificacion de audio 20 y 510F mostrados en el ejemplo de las FIGS. 4 y 40F. El dispositivo de decodificacion de audio 569 puede ser similar a los dispositivos de decodificacion de audio 24 y 540B mostrados en el ejemplo de las FIGS. 5 y 41B.
De acuerdo con las tecnicas descritas en esta divulgacion, cuando se utiliza la descomposicion SVD basada en tramas (o procedimientos relacionados tales como KLT y PCA) en senales HoA, con el fin de reducir el ancho de banda, el dispositivo de codificacion de audio 567 puede cuantizar los primeros pocos vectores de la U (multiplicado por los valores singulares correspondientes de la matriz S), asf como los vectores correspondientes del vector VT Esto comprendera los componentes "de primer plano" del campo sonoro. Las tecnicas pueden permitir que el dispositivo de codificacion de audio 567 codifique el vector Udist * Sdist utilizando un motor de codificacion de audio de "caja negra". El V vector puede ser escalar o un vector cuantificado. Ademas, algunos o todos los vectores restantes en la matriz U pueden multiplicarse con los valores singulares correspondientes de la matriz S y de la matriz V y tambien codificarse utilizando un motor de codificacion de audio de "caja negra". Estos comprenderan los componentes "de fondo" del campo sonoro.
Puesto que los componentes auditivos mas ruidosos se descomponen en los "componentes de primer plano", el dispositivo de codificacion de audio 567 puede reducir el orden ambisonico de los componentes "de fondo" antes de utilizar un motor de codificacion de audio de "caja negra" porque (se asume) que el fondo no contiene contenido localizable importante. El dispositivo de codificacion de audio 567 puede reducir el orden de tal manera que conserve la energfa total del campo sonoro de acuerdo con las tecnicas descritas en el presente documento. Dependiendo del orden ambisonico de los componentes de primer plano, la unidad de codificacion de audio 567 puede transmitir el o los vectores correspondientes, que pueden ser bastante grandes. Por ejemplo, una cuantizacion escalar simple de 16 bits de los vectores V dara como resultado una sobrecarga de aproximadamente 20 kbps para el 4° orden (25 coeficientes) y 40 kbps para el 6° orden (49 coeficientes) por componente de primer
5
10
15
20
25
30
35
40
45
50
55
60
65
plano. Las tecnicas descritas en esta divulgacion pueden proporcionar un procedimiento para reducir esta sobrecarga del uno o mas vectores V.
Para ilustracion, se asume que el orden ambisonico de los elementos de primer plano y de los elementos de fondo es N. El dispositivo de codificacion de audio 567 puede reducir el orden ambisonico de los elementos de fondo del uno o mas vectores V de N a rj de tal forma que rj <N. El dispositivo de codificacion de audio 67 aplica ademas una compensacion para aumentar los valores de los elementos de fondo del uno o mas vectores V para conservar la energfa total del campo sonoro descrito por los SHC. Se han descrito anteriormente tecnicas de aplicacion de la compensacion con respecto a la FIG. 40F. En el lado del receptor, la unidad de decodificacion de audio 569 puede reconstruir los canales de audio de fondo para el orden ambisonico.
Las FIGS. 49D (i) y 49D (ii) ilustran un dispositivo de codificacion de audio 567D y un dispositivo de decodificacion de audio 569D respectivamente. El dispositivo de codificacion de audio 567D y el dispositivo de decodificacion de audio 569D pueden estar configurados para llevar a cabo una o mas determinaciones de distincion basadas en la direccionalidad, de acuerdo con aspectos de esta divulgacion. El ambisonico de orden superior (HOA) es un procedimiento para describir toda la informacion direccional de un campo sonoro basado en la transformada espacial de Fourier. Cuanto mayor es el orden ambisonico N, mayor es la resolucion espacial, cuanto mayor es el numero de coeficientes armonicos esfericos (SH) (N+1)A2, mayor sera el ancho de banda necesario para transmitir y almacenar los datos. Debido a que los requisitos de ancho de banda de HOA son bastante altos, para muchas aplicaciones se desea una reduccion de ancho de banda.
Las descripciones anteriores han descrito como la SVD (descomposicion en valores singulares) o procesos relacionados pueden ser utilizados para la compresion de audio espacial. Las tecnicas descritas en el presente documento presentan un algoritmo mejorado para seleccionar los elementos relevantes tambien conocidos como los elementos de primer plano. Despues de una descomposicion basada en SVD de una trama de audio de HOA en sus matrices U, S y V, las tecnicas basan la seleccion de los K elementos relevantes exclusivamente en los primeros K canales de la matriz U [U(:,1:K)*S(1:K,1:K)]. Esto da como resultado la seleccion de los elementos de audio con mayor energfa. Sin embargo, no esta garantizado que estos elementos sean tambien direccionales. Por lo tanto, las tecnicas se dirigen a encontrar los elementos sonoros que tienen alta energfa y tambien son direccionales. Esto se logra potencialmente ponderando la matriz V con la matriz S. A continuacion, para cada fila de esta matriz resultante, los elementos indexados superiores (que estan asociados con los coeficientes HOA de orden mas alto) se elevan al cuadrado y se suman, dando como resultado un valor por fila [sumVS en el pseudocodigo descrito con respecto a la FIG. 40H]. De acuerdo con el flujo de trabajo representado en el pseudocodigo, se consideran los coeficientes ambisonicos de orden superior que comienzan en el 5° fndice. Estos valores se clasifican segun su tamano y el fndice de clasificacion se utiliza para reordenar la matriz U, S y V original en consecuencia. El algoritmo de compresion basado en SVD descrito anteriormente en esta divulgacion puede entonces aplicarse sin modificacion adicional.
Las FIGS. 49E (i) y 49E (ii) son diagramas de bloques que ilustran un dispositivo de codificacion de audio 571E y un dispositivo de decodificacion de audio 573E respectivamente. El dispositivo de codificacion de audio 571E y el dispositivo de decodificacion de audio 573E pueden realizar diversos aspectos de las tecnicas descritas anteriormente con respecto a los ejemplos de las FIGS. 49-49D(ii), excepto que el dispositivo de codificacion de audio 571E puede realizar la descomposicion en valores singulares con respecto a una matriz de densidad espectral de potencia (PDS) de los coeficientes HOA para generar una matriz S2 y una matriz V. La matriz S2 puede representar una matriz S al cuadrado, con lo que la matriz S2 puede experimentar una operacion de rafz cuadrada para obtener la matriz S. El dispositivo de codificacion de audio 571E, en algunos casos, puede realizar la cuantizacion con respecto a la matriz V para obtener una matriz V cuantizada (que puede estar designada como matriz V').
El dispositivo de codificacion de audio 571E puede obtener la matriz U multiplicando primero la matriz S por la matriz cuantizada V' para generar una matriz SV'. El dispositivo de codificacion de audio 571E puede obtener a continuacion la pseudoinvertida (pinv) de la matriz SV' y luego multiplicar los coeficientes HOA 11 por la pseudoinvertida de la matriz SV' para obtener la matriz U. Mediante la realizacion de SVD con respecto a la densidad espectral de potencia de los coeficientes HOA en lugar de los coeficientes en sf, el dispositivo de codificacion de audio 571E puede reducir potencialmente la complejidad computacional de realizar la SVD en terminos de uno o mas ciclos de procesador y espacio de almacenamiento, mientras que se consigue la misma eficacia en la codificacion de la fuente de audio como si la SVD se aplicara directamente a los coeficientes HOA.
El dispositivo de decodificacion de audio 573E puede ser similar a los dispositivos de decodificacion de audio descritos anteriormente, excepto que el dispositivo de decodificacion de audio 573 puede reconstruir los coeficientes HOA de las descomposiciones de los coeficientes HOA obtenidos mediante la aplicacion de la SVD a la densidad espectral de potencia de los coeficientes HOA en lugar de los coeficientes HOA directamente.
Las FIGS. 50A y 50B son diagramas de bloques que ilustran cada uno de dos enfoques diferentes para reducir potencialmente el orden del contenido de fondo de acuerdo con las tecnicas descritas en esta divulgacion. Como se ilustra en el ejemplo de la FIG. 50, el primer enfoque puede emplear la reduccion de orden con respecto a los
5
10
15
20
25
30
35
40
45
50
55
60
65
vectores Ubg * Sbg * VT para reducir el orden de N a q, donde q es menor que (<) N. Es decir, la unidad de reduccion de ordenes 528A mostrada en los ejemplos de la FIG. 40B-40J puede realizar una reduccion de orden para truncar o reducir de otro modo el orden N de los vectores Ubg * Sbg * VT a q, donde q es menor que (<) N.
Como un enfoque alternativo, la unidad de reduccion de ordenes 528A, como se muestra en el ejemplo de la FIG. 50B, puede realizar este truncamiento con respecto a VT eliminando las filas que seran (rj +1)2, lo cual no se ilustra en el ejemplo de la FIG. 40B para facilitar la ilustracion. En otras palabras, la unidad de reduccion de ordenes 528A puede eliminar uno o mas ordenes de la matriz VT para generar eficazmente una matriz Vbg. El tamano de esta matriz Vbg es (rj +1)2 x (N+1)2 - D, donde esta matriz Vbg se usa entonces en lugar de la matriz VT al generar los vectores Ubg * Sbg * VT, realizando eficazmente el truncamiento para generar los vectores Ubg * Sbg * VT del tamano M x (q + 1)2
La FIG. 51 es un diagrama de bloques que ilustra ejemplos de una trayectoria de compresion de componente distinta de un dispositivo de codificacion de audio 700A que puede implementar diversos aspectos de las tecnicas descritas en esta divulgacion para comprimir coeficientes armonicos esfericos 701. En el ejemplo de la FIG. 51, la trayectoria de compresion de componente distinta puede referirse a una trayectoria de procesamiento del dispositivo de codificacion de audio 700A que comprime los distintos componentes del campo sonoro representados por SHC 701. Otra trayectoria, que puede denominarse trayectoria de compresion de componente de fondo, puede representar una trayectoria de procesamiento del dispositivo de codificacion de audio 700A que comprime los componentes de fondo de los SHC 701.
Aunque no se muestra para facilitar la ilustracion, la trayectoria de compresion del componente de fondo puede operar con respecto a los SHC 701 directamente en lugar de las descomposiciones de los SHC 701. Es similar a lo descrito anteriormente con respecto a las FIGS. 49-49C, excepto que en lugar de recomponer los componentes de fondo de las matrices Ubg, Sbg y Vbg y luego realizar alguna forma de codificacion psicoacustica (por ejemplo, usando un codificador AAC) de estos componentes de fondo recompuestos, la trayectoria de procesamiento de componente de fondo puede funcionar con respecto al SHC 701 directamente (como se ha descrito anteriormente con respecto al dispositivo de codificacion de audio 20 mostrado en el ejemplo de la FIG. 4), comprimiendo estos componentes de fondo utilizando el codificador psicoacustico. Mediante la realizacion de la codificacion psicoacustica con respecto a los SHC 701 directamente, las discontinuidades pueden reducirse al mismo tiempo que se reduce la complejidad computacional (en terminos de operaciones requeridas para comprimir los componentes de fondo) en comparacion con la realizacion de la codificacion psicoacustica con respecto a los componentes de fondo recompuestos. Aunque se hace referencia en terminos de un fondo distinto y de fondo, el termino "prominente" puede usarse en lugar de "distinto" y el termino "ambiente" puede usarse en lugar de "fondo" en esta divulgacion.
En cualquier caso, los coeficientes armonicos esfericos 701 ("SHC 701") pueden comprender una matriz de coeficientes que tienen un tamano de M x (N+1)2, donde M representa el numero de muestras (y es, en algunos ejemplos, 1024 ) en una trama de audio y N representa el orden mas alto de la funcion de base a la que corresponden los coeficientes. Como se ha indicado anteriormente, N se fija comunmente a cuatro (4) para un total de 1024 x 25 coeficientes. Cada uno de los SHC 701 correspondientes a una combinacion de suborden, de orden particular, puede denominarse canal. Por ejemplo, todos los M coeficientes de muestra correspondientes a una funcion basica de primer orden, de sub-orden cero orden pueden representar un canal, mientras que los coeficientes correspondientes a la funcion de orden cero, sub-orden cero pueden representar otro canal, etc. Los SHC 701 tambien se pueden denominar en esta divulgacion como contenido ambisonico de orden superior (HOA) 701 o como una senal de SH 701.
Como se ilustra en el ejemplo de la FIG. 51, el dispositivo de codificacion de audio 700A incluye una unidad de analisis 702, una unidad de sfntesis basada en vectores 704, una unidad de reduccion de vectores 706, una unidad de codificacion psicoacustica 708, una unidad de reduccion de coeficientes 710 y una unidad de compresion 712 ("unidad compr. 712"). La unidad de analisis 702 puede representar una unidad configurada para realizar un analisis con respecto a los SHC 701 para identificar componentes distintos del campo sonoro (D) 703 y un numero total de componentes de fondo (BGTOT) 705. En comparacion con los dispositivos de codificacion de audio descritos anteriormente, el dispositivo de codificacion de audio 700A no realiza esta determinacion con respecto a las descomposiciones de los SHC 701, sino directamente con respecto a los SHC 701.
La unidad de sfntesis basada en vectores 704 representa una unidad configurada para realizar alguna forma de sfntesis basada en vectores con respecto a los SHC 701, tal como SVD, KLT, PCA o cualquier otra sfntesis basada en vectores, para generar, en los casos de SVD, una matriz [US] 707 que tiene un tamano de M x (N+1)2 y una matriz [V] 709 que tiene un tamano de (N+1)2 x (N+1)2. La matriz [US] 707 puede representar una matriz resultante de una multiplicacion matricial de la matriz [U] y de la matriz [S] generadas mediante la aplicacion de SVD a los SHC 701.
La unidad de reduccion de vectores 706 puede representar una unidad configurada para reducir el numero de vectores de la matriz [US] 707 y la matriz [V] 709 de tal forma que cada uno de los vectores restantes de la matriz [US] 707 y de la matriz [V] 709 identifiquen un componente distinto o prominente del campo sonoro. La unidad de reduccion de vectores 706 puede realizar esta reduccion en base al numero de componentes D distintos 703. El
5
10
15
20
25
30
35
40
45
50
55
60
65
numero de componentes distintos D 703 puede, en efecto, representar una matriz de numeros, donde cada numero identifica diferentes vectores distintos de las matrices 707 y 709. La unidad de reduccion de vectores 706 puede producir una matriz [US] reducida 711 de tamano M x D y una matriz [V] reducida 713 de tamano (N+1)2 x D.
Aunque no se muestra para facilitar la ilustracion, la interpolacion de la matriz [V] 709 puede ocurrir antes de la reduccion de la matriz [V] 709 de manera similar a la descrita con mas detalle anteriormente. Ademas, aunque no se muestra con fines faciles de ilustracion, reordenacion de la matriz [US] reducida 711 y/o la matriz [V] reducida 712 de la manera descrita con mas detalle anteriormente. Por consiguiente, las tecnicas no deben estar limitadas en estos y otros aspectos (tales como proyeccion de errores o cualquier otro aspecto de las tecnicas anteriores descritas anteriormente, pero no mostradas en el ejemplo de la FIG. 51).
La unidad de codificacion psicoacustica 708 representa una unidad configurada para realizar la codificacion psicoacustica con respecto a la matriz [US] 711 para generar un flujo de bits 715. La unidad de reduccion de coeficientes 710 puede representar una unidad configurada para reducir el numero de canales de la matriz [V] reducida 713. En otras palabras, la unidad de reduccion de coeficientes 710 puede representar una unidad configurada para eliminar aquellos coeficientes de los vectores V distintos (que forman la matriz [V] reducida 713) que tienen poca o ninguna informacion direccional. Como se ha descrito anteriormente, en algunos ejemplos, los coeficientes de los distintos vectores V que corresponden a funciones de base de primer orden y de orden cero (representados como Nbg anteriores) proporcionan poca informacion direccional y por lo tanto pueden ser eliminados de los distintos vectores V (a traves de lo que se conoce como "reduccion de orden" anteriormente). En este ejemplo, se puede proporcionar una mayor flexibilidad para identificar no solo estos 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, (N+1)2]. La unidad de analisis 702 puede analizar los SHC 701 para determinar BGtot, que puede identificar no solo el (Nbg +1)2, sino el TotalOfAddAmbHOAChan. La unidad de reduccion de coeficientes 710 puede entonces eliminar aquellos coeficientes correspondientes a (Nbg +1)2 y el TotalOfAddAmbHOAChan de la matriz [V] reducida 713 para generar una matriz [V] pequena 717 de tamano ((N+1)2 - (BGtot) x D.
La unidad de compresion 712 puede entonces realizar la codificacion escalar escalar y/o la codificacion Huffman indicada anteriormente para comprimir la matriz [V] pequena 717, que emite la matriz [V] pequena comprimida 717 como informacion de canal lateral 719 ("informacion de canal lateral 719"). La unidad de compresion 712 puede emitir la informacion de canal lateral 719 de una manera similar a la que se muestra en el ejemplo de las FIGS. 10- 10O(ii). En algunos ejemplos, una unidad de generacion de flujo de bits similar a las descritos anteriormente puede incorporar la informacion de canal lateral 719 en el flujo de bits 715. Ademas, aunque se denomina flujo de bits 715, el dispositivo de codificacion de audio 700A puede, como se ha indicado anteriormente, incluir una trayectoria de procesamiento de componentes de fondo que da como resultado otro flujo de bits, donde una unidad de generacion de flujo de bits similar a las descritas anteriormente puede generar un flujo de bits similar al flujo de bits 17 descrito anteriormente que incluye el flujo de bits 715 y el flujo de bits transmitido por la trayectoria de procesamiento del componentes de fondo.
De acuerdo con las tecnicas descritas en esta divulgacion, la unidad de analisis 702 puede configurarse para determinar un primer conjunto distinto de cero de coeficientes de un vector, es decir, los vectores de la matriz [V] reducida 713 en este ejemplo, que se utilizaran para representar el componente distinto del campo sonoro. En algunos ejemplos, la unidad de analisis 702 puede determinar que todos los coeficientes de cada vector que forma la matriz [V] reducida 713 deben incluirse en la informacion de canal lateral 719. La unidad de analisis 702 puede por lo tanto ajustar BGtot igual a cero.
Por lo tanto, el dispositivo de codificacion de audio 700A puede actuar eficazmente de una manera recfproca a la descrita anteriormente con respecto a la Tabla indicada como "Vectores decodificados". Ademas, el dispositivo de codificacion de audio 700A puede especificar un elemento de sintaxis en un encabezamiento de una unidad de acceso (que puede incluir uno o mas tramas) de la que la pluralidad de modos de configuracion se selecciono. Aunque se describe que se especifica en una base de unidad de acceso, la unidad de analisis 702 puede especificar este elemento sintactico sobre una base por trama o cualquier otra base periodica o no periodica (como una vez para el flujo de bits completo). En cualquier caso, este elemento de sintaxis puede comprender dos bits que indican cual de los cuatro modos de configuracion fueron seleccionados para especificar el conjunto de coeficientes diferente de cero de la matriz [V] reducida 713 para representar los aspectos direccionales de este componente distinto. El elemento de sintaxis se puede indicar como "codedVVecLength". De esta manera, el dispositivo de codificacion de audio 700A puede senalar o especificar de otro modo en el flujo de bits cual de los cuatro modos de configuracion se uso para especificar la matriz [V] pequena 717 en el flujo de bits. Aunque se describen con respecto a cuatro modos de configuracion, las tecnicas no deben limitarse a cuatro modos de configuracion, sino a cualquier numero de modos de configuracion, incluido un unico modo de configuracion o una pluralidad de modos de configuracion.
Diversos aspectos de las tecnicas pueden ademas permitir que el dispositivo de codificacion de audio 700A este configurado para funcionar de acuerdo con las siguientes clausulas.
5
10
15
20
25
30
35
40
45
50
55
60
65
Clausula 133149-1F. Un dispositivo que comprende: uno o mas procesadores configurados para seleccionar uno de una pluralidad de modos de configuracion mediante los cuales se especifica un conjunto distinto de cero de coeficientes de un vector, habiendose descompuesto el vector de una pluralidad de coeficientes armonicos esfericos que describen un campo sonoro y representando un componente distinto del campo sonoro, y especificar el conjunto distinto de cero de los coeficientes del vector basado en el seleccionado de la pluralidad de modos de configuracion.
Clausula 133149-2F. El dispositivo de la clausula 133149-1F, en el que el modo de la pluralidad de modos de configuracion indica que el conjunto distinto de cero de los coeficientes incluye todos los coeficientes.
Clausula 133149-3F. El dispositivo de la clausula 133149-1F, en el que el modo de la pluralidad de modos de configuracion indica que el conjunto de coeficientes distinto de cero incluye los de los coeficientes correspondientes a un orden mayor que el orden de una funcion base con la cual uno o mas de la pluralidad de coeficientes armonicos esfericos se corresponden.
Clausula 133149-4F. El dispositivo de la clausula 133149-1F, en el que el modo de la pluralidad de modos de configuracion indica que el conjunto distinto de cero de los coeficientes incluye los de los coeficientes correspondientes a un orden mayor que el orden de una funcion base con la cual uno o mas de la pluralidad de coeficientes armonicos esfericos se corresponden y excluyen al menos uno de los coeficientes correspondientes a un orden mayor que el orden de la funcion de base con la cual se corresponden uno o mas de la pluralidad de coeficientes armonicos esfericos.
Clausula 133149-5F. El dispositivo de la clausula 133149-1F, en el que el modo de la pluralidad de modos de configuracion indica que el conjunto de coeficientes distinto de cero incluye todos los coeficientes excepto por lo menos uno de los coeficientes.
Clausula 133149-6F. El dispositivo de la clausula 133149-1F, en el que el uno o mas procesadores estan configurados ademas para especificar el modo seleccionado de la pluralidad de modos de configuracion en un flujo de bits.
Clausula 133149-1G. Un dispositivo que comprende: uno o mas procesadores configurados para determinar uno de una pluralidad de modos de configuracion mediante los cuales se extrae un conjunto distinto de cero de coeficientes de un vector de acuerdo con una de una pluralidad de modos de configuracion, habiendose descompuesto el vector de una pluralidad de coeficientes armonicos esfericos que describen un campo sonoro y representando un componente distinto del campo sonoro, y extraer el conjunto distinto de cero de los coeficientes del vector basado en el obtenido de la pluralidad de modos de configuracion.
Clausula 133149-2G. El dispositivo de la clausula 133149-1G, en el que el modo de la pluralidad de modos de configuracion indica que el conjunto distinto de cero de los coeficientes incluye todos los coeficientes.
Clausula 133149-3G. El dispositivo de la clausula 133149-1G, en el que el modo de la pluralidad de modos de configuracion indica que el conjunto de coeficientes distinto de cero incluye los de los coeficientes correspondientes a un orden mayor que el orden de una funcion base con la cual uno o mas de la pluralidad de coeficientes armonicos esfericos se corresponden.
Clausula 133149-4G. El dispositivo de la clausula 133149-1G, en el que el modo de la pluralidad de modos de configuracion indica que el conjunto distinto de cero de los coeficientes incluye los de los coeficientes correspondientes a un orden mayor que el orden de una funcion base con la cual uno o mas de la pluralidad de coeficientes armonicos esfericos se corresponden y excluyen al menos uno de los coeficientes correspondientes a un orden mayor que el orden de la funcion de base con la cual se corresponden uno o mas de la pluralidad de coeficientes armonicos esfericos.
Clausula 133149-5G. El dispositivo de la clausula 133149-1G, en el que el modo de la pluralidad de modos de configuracion indica que el conjunto de coeficientes distinto de cero incluye todos los coeficientes excepto por lo menos uno de los coeficientes.
Clausula 133149-6G. El dispositivo de la clausula 133149-1G, en el que el uno o mas procesadores estan configurados adicionalmente para determinar, cuando se determina el modo de la pluralidad de modos de configuracion, el modo de la pluralidad de modos de configuracion basado en un valor senalado en un flujo de bits.
Las FIGS. 52 es un diagrama de bloques que ilustra otro ejemplo de un dispositivo de decodificacion 750A de audio que puede implementar diversos aspectos de las tecnicas descritas en esta divulgacion para reconstruir o casi reconstruir los SHC 701. En el ejemplo de la FIG. 52, el dispositivo de decodificacion de audio 750A es similar al dispositivo de decodificacion de audio 540D mostrado en el ejemplo de la FIG. 41D, excepto que la unidad de extraccion 542 recibe el flujo de bits 715' (que es similar al flujo de bits 715 descrito anteriormente con respecto al
ejemplo de la FIG. 51, excepto que el flujo de bits 715' incluye tambien la version codificada de audio de SHCbg 752) y la informacion de canal lateral 719. Por esta razon, la unidad de extraccion se denomina "unidad de extraccion 542'".
5 Ademas, la unidad de extraccion 542' difiere de la unidad de extraccion 542 en que la unidad de extraccion 542' incluye una forma modificada de la unidad de descompresion V 555 (que se muestra como "unidad de descompresion V 555'' en el ejemplo de la FIG. 52). la unidad de descompresion V 555' recibe la informacion de canal lateral 719 y el elemento de sintaxis representado codedVVecLength 754. La unidad de extraccion 542' analiza la codedVVecLength 754 del flujo de bits 715' (y, en un ejemplo, del encabezado de la unidad de acceso incluido 10 dentro del flujo de bits 715'). La unidad de descompresion V 555' incluye una unidad de configuracion de modo 756 ("unidad de config de modo 756") y una unidad de analisis sintactico 758 configurable para funcionar de acuerdo con uno cualquiera de los modos de configuracion descritos anteriormente 760.
La unidad de configuracion de modo 756 recibe el elemento de sintaxis 754 y selecciona uno de los modos de 15 configuracion 760. La unidad de configuracion de modo 756 configura entonces la unidad de analisis sintactico 758 con el modo seleccionado de los modos de configuracion 760. La unidad de analisis sintactico 758 representa una unidad configurada para operar de acuerdo con uno cualquiera de los modos de configuracion 760 para analizar una forma comprimida de los vectores [V] pequenos 717 a partir de la informacion de canal lateral 719. La unidad de analisis sintactico 758 puede funcionar de acuerdo con la declaracion de conmutacion presentada en la siguiente 20 Tabla.
______________________________Tabla - Vectores decodificados______________________________
Sintaxis N.° de bits Mnemonica
decodeVVec(i)
{
switch codedVVecLength { caso 0: //Vector completo VVecLength = NumOfHoaCoeffs; para (m=0; m< VVecLength; ++m){ VecCoeff[m] = m+1; } break;
caso 1: //se eliminan los ordenes inferiores VVecLength = NumOfHoaCoeffs - MinNumOfCoeffsForAmbHOA;
para (m=0; m< VVecLength; ++m){
VecCoeff[m] = m + MinNumOfCoeffsForAmbHOA +
1;
}
break; caso 2:
VVecLength = NumOfHoaCoeffs - MinNumOfCoeffsForAmbHOA - NumOfAddAmbHoaChan; n = 0;
para (m=0;m<NumOfHoaCoeffs- MinNumOfCoeffsForAmbHOA; ++m){
c = m + MinNumOfCoeffsForAmbHOA + 1; if ( ismember(c, AmbCoeffldx) == 0){
VecCoeff[n] = c; n++;
}
}
break; caso 3:
VVecLength = NumOfHoaCoeffs - NumOfAddAmbHoaChan; n = 0;
para (m=0; m<NumOfHoaCoeffs; ++m){ c = m + 1;
if ( ismember(c, AmbCoeffldx) == 0){
VecCoeff[n] = c; n++;
}
}
}
if (NbitsQ[i] == 5) { /* cuantizador uniforme */ para (m=0; m< VVecLength; ++m){
5
10
15
20
25
30
35
40
VVec(k)[i][m] = (VecValue /128.0) - 1.0; 8 uimsbf
}
}
else { /* decodificacion Huffman */ para (m=0; m< VVecLength; ++m){
Idx = 5;
If (CbFlag[i] == 1){
idx = (min(3, max(l, ceil(sqrt(VecCoeff[m]) - 1)));
}
else if (PFlag[i] == 1) {idx = 4;}
cid =
dinamica huffDecod
duffDecode(huffmannTable[NbitsQ].codebook[idx]; huffVal);
e
if (cid>0) {
aVal = sgn = (sgnVal * 2) - 1;
1 bslbf
if (cid > 1) { aVal = sgn * (2.0'(cid -1 ) + intAddVal); }
cid-1 uimsbf
} else {aVal = 0.0;}
}
}
}___________________________________________________________________
NOTA:
- La funcion del codificador para el cuantificador uniforme es min(255, round((x + 1.0) * 128.0))
- El n.° de bits para huffDecode nemonico es dinamico________________________________
En la tabla de sintaxis anterior, la primera instruccion de conmutacion con los cuatro casos (caso 0-3) proporciona una forma mediante la cual se determinan las longitudes de cada vector de la matriz [V] pequena 717 en terminos del numero de coeficientes. El primer caso, caso 0, indica que se especifican todos los coeficientes para los vectores VTdist. El segundo caso, caso 1, indica que solo se especifican los coeficientes del vector VTdist que corresponden a un orden mayor que un MinNumOfCoeffsForAmbHOA, lo que puede indicar lo que se denomina (Ndist + 1) - (N bg + 1) anteriormente. El tercer caso, caso 2, es similar al segundo caso, pero resta aun mas los coeficientes identificados por NumOfAddAmbHoaChan, que indica una variable para especificar canales adicionales (donde "canales" se refiere a un coeficiente particular que corresponde a un cierto orden, combinacion de suborden) correspondiente a un orden que excede el orden Nbg. El cuarto caso, caso 3, indica que unicamente se especifican aquellos coeficientes del vector VTdist que quedan despues de eliminar los coeficientes identificados por NumOfAddAmbHoaChan.
A este respecto, el dispositivo de decodificacion de audio 750A puede funcionar de acuerdo con las tecnicas descritas en esta divulgacion para determinar un primer conjunto distinto de cero de coeficientes de un vector que representan un componente distinto del campo sonoro, habiendose descompuesto el vector de una pluralidad de coeficientes armonicos esfericos que describen un campo sonoro.
Ademas, el dispositivo de decodificacion de audio 750A puede estar configurado para operar de acuerdo con las tecnicas descritas en esta divulgacion para determinar uno de una pluralidad de modos de configuracion mediante los cuales se extrae un conjunto distinto de cero de coeficientes de un vector de acuerdo con una de una pluralidad de modos de configuracion, habiendose descompuesto el vector de una pluralidad de coeficientes armonicos esfericos que describen un campo sonoro y representando un componente distinto del campo sonoro, y extraer el conjunto distinto de cero de los coeficientes del vector basado en el obtenido de la pluralidad de modos de configuracion.
La FIG. 53 es un diagrama de bloques que ilustra otro ejemplo de un dispositivo de codificacion de audio 570 que puede realizar diversos aspectos de las tecnicas descritas en esta divulgacion. En el ejemplo de la FIG. 53, el dispositivo de codificacion de audio 570 puede ser similar a uno o mas de los dispositivos de codificacion de audio 510A-510J (donde se supone que la unidad de reduccion de ordenes 528A esta incluida dentro de la unidad de extraccion de componentes de campo sonoro 20 pero no mostrada para facilitar la ilustracion). sin embargo, el dispositivo de codificacion de audio 570 puede incluir una unidad de transformacion mas general 572 que puede comprender una unidad de descomposicion 518 en algunos ejemplos.
La FIG. 54 es un diagrama de bloques que ilustra, con mas detalle, una implementacion ejemplar del dispositivo de codificacion de audio 570 mostrado en el ejemplo de la FIG. 53. Como se ilustra en el ejemplo de la FIG. 54, la unidad de transformacion 572 del dispositivo de codificacion de audio 570 incluye una unidad de rotacion 654. La unidad de extraccion de componentes de campo sonoro 520 del dispositivo de codificacion de audio 570 incluye una unidad de analisis espacial 650, una unidad de analisis de caracterfsticas de contenido 652, una unidad de componentes coherentes de extraccion 656 y una unidad de componentes difusos de extracto 658. La unidad de
5
10
15
20
25
30
35
40
45
50
55
60
65
codificacion de audio 514 del dispositivo de codificacion de audio 570 incluye un motor de codificacion AAC 660 y un motor de codificacion AAC 162. La unidad de generacion de flujo de bits 516 del dispositivo de codificacion de audio 570 incluye un multiplexor (MUX) 164.
El ancho de banda -en terminos de bits/segundo- necesario para representar datos de audio en 3D en forma de SHC puede hacer que sea prohibitivo en terminos de consumo. Por ejemplo, cuando se utiliza una frecuencia de muestreo de 48 kHz y con 32 bits/misma resolucion, una representacion SHC de cuarto orden representa un ancho de banda de 36 Mbits/segundo (25 x 48000 x 32 bps). Cuando se compara con la codificacion de audio del estado de la tecnica para las senales estereo, que es tfpicamente aproximadamente de 100 kbits/segundo, esta es una cifra grande. Las tecnicas implementadas en el ejemplo de la FIG. 54 pueden reducir el ancho de banda de las representaciones de audio 3D.
La unidad de analisis espacial 650, la unidad de analisis de caracterfsticas de contenido 652 y la unidad de rotacion 654 pueden recibir SHC 511. Como se describe en otra parte en esta divulgacion, el SHC 511 puede ser representativo de un campo sonoro. En el ejemplo de la FIG. 54, la unidad de analisis espacial 650, la unidad de analisis de caracterfsticas de contenido 652 y la unidad de rotacion 654 pueden recibir veinticinco SHC para una representacion de cuarto orden (n = 4) del campo sonoro.
La unidad de analisis espacial 650 puede analizar el campo sonoro representado por el SHC 511 para identificar componentes distintos del campo sonoro y componentes difusos del campo sonoro. Los distintos componentes del campo sonoro son sonidos que se perciben como provenientes de una direccion identificable o que son distintos de los componentes de fondo o difusos del campo sonoro. Por ejemplo, el sonido generado por un instrumento musical individual puede ser percibido como procedente de una direccion identificable. Por el contrario, los componentes difusos o de fondo del campo sonoro no se perciben como procedentes de una direccion identificable. Por ejemplo, el sonido del viento a traves de un bosque puede ser un componente difuso de un campo sonoro.
La unidad de analisis espacial 650 puede identificar uno o mas componentes distintos que intentan identificar un angulo optimo mediante el cual girar el campo sonoro para alinear aquellos de los distintos componentes que tienen la mayor energfa con el eje vertical y/u horizontal (con respecto a un supuesto microfono que grabo este campo sonoro). La unidad de analisis espacial 650 puede identificar este angulo optimo de manera que el campo sonoro pueda girarse de tal manera que estos distintos componentes se alineen mejor con las funciones de base esfericas subyacentes mostradas en los ejemplos las FIGS. 1 y 2.
En algunos ejemplos, la unidad de analisis espacial 650 puede representar una unidad configurada para realizar una forma de analisis de difusion para identificar un porcentaje del campo sonoro representado por el SHC 511 que incluye sonidos difusos (que pueden referirse a sonidos que tienen bajos niveles de direccion o SHC de menor orden, es decir, aquellos de SHC 511 que tienen una orden menor o igual a uno). Como ejemplo, la unidad de analisis espacial 650 puede realizar un analisis de difusion de una manera similar a la descrita en un documento de Ville Pulkki, titulado "Spatial Sound Reproduction with Directional Audio Coding", publicado en J. Audio Eng. Soc., Vol. 55, N.° 6, con fecha de junio de 2007. En algunos casos, la unidad de analisis espacial 650 solo puede analizar un subconjunto distinto de cero de los coeficientes HOA, tales como los de orden cero y de primer orden e los SHC 511, al realizar el analisis de difusion para determinar el porcentaje de difusion.
La unidad de analisis de caracterfsticas de contenido 652 puede determinar basandose, al menos en parte, en los SHC 511, si los SHC 511 se generaron a traves de una grabacion natural de un campo sonoro o se produjeron artificialmente (es decir, sinteticamente) a partir de, como un ejemplo, un objeto de audio, tal como un objeto PCM. Ademas, la unidad de analisis de caracterfsticas de contenido 652 puede determinar entonces, basandose al menos en parte en si los SHC 511 se generaron a traves de una grabacion real de un campo sonoro o de un objeto de audio artificial, el numero total de canales a incluir en el flujo de bits 517. Por ejemplo, la unidad de analisis de caracterfsticas de contenido 652 puede determinar, basandose al menos en parte en si los SHC 511 se generaron a partir de una grabacion de un campo sonoro real o de un objeto de audio artificial, que el flujo de bits 517 debe incluir dieciseis canales. Cada uno de los canales puede ser un canal mono. La unidad de analisis de caracterfsticas de contenido 652 puede realizar adicionalmente la determinacion del numero total de canales a incluir en el flujo de bits 517 basado en una velocidad de bits de salida del flujo de bits 517, por ejemplo, de 1,2 Mbps.
Ademas, la unidad de analisis de caracterfsticas de contenido 652 puede determinar, basandose al menos en parte en si los SHC 511 se generaron a partir de una grabacion de un campo sonoro real o de un objeto de audio artificial, cuantos de los canales a asignar a campos coherentes o, en otras palabras, componentes distintos del campo sonoro y cuantos de los canales a asignar a componentes difusos o, en otras palabras, de fondo del campo sonoro. Por ejemplo, cuando los SHC 511 se generaron a partir de una grabacion de un campo sonoro real utilizando, como un ejemplo, un microfono dedicado, la unidad de analisis de caracterfsticas de contenido 652 puede asignar tres de los canales a componentes coherentes del campo sonoro y puede asignar los canales restantes a componentes difusos del campo sonoro. En este ejemplo, cuando los SHC 511 se generaron a partir de un objeto de audio artificial, la unidad de analisis de caracterfsticas de contenido 652 puede asignar cinco de los canales a componentes coherentes del campo sonoro y puede asignar los canales restantes a componentes difusos del campo sonoro. De esta manera, el bloque de analisis de contenido (es decir, la unidad de analisis de caracterfsticas
5
10
15
20
25
30
35
40
45
50
55
60
65
de contenido 652) puede determinar el tipo de campo sonoro (por ejemplo, difuso/direccional, etc.) y a su vez determinar el numero de componentes coherentes/difusos a extraer.
La velocidad de bits objetivo puede afectar al numero de componentes y la velocidad de bits de los motores de codificacion AAC individuales (por ejemplo, motores de codificacion AAC 660, 662). En otras palabras, la unidad de analisis de caracterfsticas de contenido 652 puede realizar ademas la determinacion de cuantos canales asignar a componentes coherentes y cuantos canales asignar a componentes difusos basandose en una velocidad de bits de salida del flujo de bits 517, por ejemplo, 1,2 Mbps.
En algunos ejemplos, los canales asignados a componentes coherentes del campo sonoro pueden tener mayores velocidades de bits que los canales asignados a componentes difusos del campo sonoro. Por ejemplo, una velocidad de bits maxima del flujo de bits 517 puede ser de 1,2 Mb/s. En este ejemplo, puede haber cuatro canales asignados a componentes coherentes y 16 canales asignados a componentes difusos. Ademas, en este ejemplo, cada uno de los canales asignados a los componentes coherentes puede tener una velocidad de bits maxima de 64 kb/s. En este ejemplo, cada uno de los canales asignados a los componentes difusos puede tener una velocidad de bits maxima de 48 kb/s.
Como se ha indicado anteriormente, la unidad de analisis de caracterfsticas de contenido 652 puede determinar si los SHC 511 se generaron a partir de una grabacion de un campo sonoro real o a partir de un objeto de audio artificial. La unidad de analisis de caracterfsticas de contenido 652 puede realizar esta determinacion de varias maneras. Por ejemplo, el dispositivo de codificacion de audio 570 puede utilizar SHC de 4° orden. En este ejemplo, la unidad de analisis de caracterfsticas de contenido 652 puede codificar 24 canales y predecir un 25° canal (que puede representarse como un vector). La unidad de analisis de caracterfsticas de contenido 652 puede aplicar escalares a, al menos, algunos de los 24 canales y anadir los valores resultantes para determinar el 25° vector. Ademas, en este ejemplo, la unidad de analisis de caracterfsticas de contenido 652 puede determinar una precision del 25° canal predicho. En este ejemplo, si la precision del 25° canal predicho es relativamente alta (por ejemplo, la precision excede un umbral particular), es probable que los SHC 511 se generen a partir de un objeto de audio sintetico. Por el contrario, si la precision del 25° canal predicho es relativamente baja (por ejemplo, la precision esta por debajo del umbral particular), es mas probable que los SHC 511 representen un campo sonoro registrado. Por ejemplo, en este ejemplo, si una relacion senal-ruido (SNR) del 25° canal predicho es superior a 100 decibelios (dbs), los SHC 511 son mas propensos a representar un campo sonoro generado a partir de un objeto de audio sintetico. En contraste, la SNR de un campo sonoro grabado utilizando un microfono propio puede ser de 5 a 20 dbs. Por lo tanto, puede haber una demarcacion aparente en las relaciones SNR entre el campo sonoro representado con los SHC 511 generados a partir de una grabacion directa real y desde un objeto de audio sintetico.
Ademas, la unidad de analisis de caracterfsticas de contenido 652 puede seleccionar, basandose al menos en parte en si los SHC 511 se generaron a partir de una grabacion de un campo sonoro real o de un objeto de audio artificial, libros de codigo para cuantizar el vector V. En otras palabras, la unidad de analisis de caracterfsticas de contenido 652 puede seleccionar diferentes libros de codigos para su uso en la cuantizacion del vector V, dependiendo de si el campo sonoro representado por los coeficientes HOA esta grabado o es sintetico.
En algunos ejemplos, la unidad de analisis de caracterfsticas de contenido 652 puede determinar, en una base recurrente, si los SHC 511 se generaron a partir de una grabacion de un campo sonoro real o a partir de un objeto de audio artificial. En algunos de estos ejemplos, la base recurrente puede ser cada trama. En otros ejemplos, la unidad de analisis de caracterfsticas de contenido 652 puede realizar esta determinacion una vez. Ademas, la unidad de analisis de caracterfsticas de contenido 652 puede determinar, en una base recurrente, el numero total de canales y la asignacion de canales de componentes coherentes y canales de componentes difusos. En algunos de estos ejemplos, la base recurrente puede ser cada trama. En otros ejemplos, la unidad de analisis de caracterfsticas de contenido 652 puede realizar esta determinacion una vez. En algunos ejemplos, la unidad de analisis de caracterfsticas de contenido 652 puede seleccionar, en una base recurrente, libros de codigos para su uso en la cuantizacion del vector V. En algunos de estos ejemplos, la base recurrente puede ser cada trama. En otros ejemplos, la unidad de analisis de caracterfsticas de contenido 652 puede realizar esta determinacion una vez.
La unidad de rotacion 654 puede realizar una operacion de rotacion de los coeficientes HOA. Como se analiza en otra parte de esta divulgacion (por ejemplo, con respecto a la FIG. 55 y 55B), la realizacion de la operacion de rotacion puede reducir el numero de bits requeridos para representar el SHC 511. En algunos ejemplos, el analisis de rotacion realizado por la unidad de rotacion 652 es un caso de un analisis de descomposicion en valores singulares ("SVD"). El analisis de componentes principales ("PCA"), el analisis de componentes independientes ("ICA") y la transformacion de Karhunen-Loeve ("KLT") son tecnicas relacionadas que pueden ser aplicables.
En el ejemplo de la FIG. 54, la unidad de componentes coherentes de extraccion 656 recibe SHC 511 girados de la unidad de rotacion 654. Ademas, la unidad de componentes coherentes de extraccion 656 extrae, a partir de los SHC 511 girados, los de los SHC 511 girados asociados con los componentes coherentes del campo sonoro.
Ademas, la unidad de componentes coherentes de extraccion 656 genera uno o mas canales de componentes coherentes. Cada uno de los canales de componentes coherentes puede incluir un subconjunto diferente de los SHC
5
10
15
20
25
30
35
40
45
50
55
60
65
511 girados asociados con los coeficientes coherentes del campo sonoro. En el ejemplo de la FIG. 54, la unidad de componentes coherentes de extraccion 656 puede generar de uno a 16 canales de componentes coherentes. El numero de canales de componentes coherentes generados por la unidad de componentes coherentes de extraccion 656 puede determinarse por el numero de canales asignados por la unidad de analisis de caracterfsticas de contenido 652 a los componentes coherentes del campo sonoro. Las velocidades de bits de los canales de componentes coherentes generados por la unidad de componentes coherentes de extraccion 656 pueden ser las determinadas por la unidad de analisis de caracterfsticas de contenido 652.
De forma similar, en el ejemplo de la FIG. 54, la unidad de componentes difusos de extraccion 658 recibe SHC 511 girados de la unidad de rotacion 654. Ademas, la unidad de componentes difusos de extraccion 658 extrae, a partir de los SHC 511 girados, los de los SHC 511 girados asociados con los componentes difusos del campo sonoro.
Ademas, la unidad de componentes difusos de extraccion 658 genera uno o mas canales de componentes difusos. Cada uno de los canales de componentes difusos puede incluir un subconjunto diferente de los SHC 511 girados asociados con los coeficientes difusos del campo sonoro. En el ejemplo de la FIG. 54, la unidad de componentes difusos de extraccion 658 puede generar de uno a 9 canales de componentes difusos. El numero de canales de componentes difusos generados por la unidad de componentes difusos de extraccion 658 puede determinarse por el numero de canales asignados por la unidad de analisis de caracterfsticas de contenido 652 a los componentes difusos del campo sonoro. Las velocidades de bits de los canales de componentes difusos generados por la unidad de componentes difusos de extraccion 658 pueden ser las determinadas por la unidad de analisis de caracterfsticas de contenido 652.
En el ejemplo de la FIG. 54, la unidad de codificacion AAC 660 puede usar un codec AAC para codificar los canales de componentes coherentes generados por la unidad de componentes coherentes de extraccion 656. De forma similar, la unidad de codificacion AAC 662 puede usar un codec AAC para codificar los canales de componentes difusos generados por la unidad de componentes difusos de extraccion 658. El multiplexor 664 ("MUX 664") puede multiplexar los canales de componentes coherentes codificados y los canales de componentes difusos codificados, junto con datos secundarios (por ejemplo, un angulo optimo determinado por la unidad de analisis espacial 650), para generar el flujo de bits 517.
De este modo, las tecnicas pueden permitir que el dispositivo de codificacion de audio 570 determine si se generan coeficientes armonicos esfericos representativos de un campo sonoro a partir de un objeto de audio sintetico.
En algunos ejemplos, el dispositivo de codificacion de audio 570 puede determinar, basandose en si los coeficientes armonicos esfericos se generan a partir de un objeto de audio sintetico, un subconjunto de los coeficientes
armonicos esfericos representativos de componentes distintos del campo sonoro. En estos y otros ejemplos, el
dispositivo de codificacion de audio 570 puede generar un flujo de bits para incluir el subconjunto de los coeficientes armonicos esfericos. El dispositivo de codificacion de audio 570 puede, en algunos casos, codificar en audio el subconjunto de los coeficientes armonicos esfericos, y generar un flujo de bits para incluir el subconjunto codificado en audio de los coeficientes armonicos esfericos.
En algunos ejemplos, el dispositivo de codificacion de audio 570 puede determinar, basandose en si los coeficientes armonicos esfericos se generan a partir de un objeto de audio sintetico, un subconjunto de los coeficientes
armonicos esfericos representativos de componentes de fondo del campo sonoro. En estos y otros ejemplos, el
dispositivo de codificacion de audio 570 puede generar un flujo de bits para incluir el subconjunto de los coeficientes armonicos esfericos. En estos y otros ejemplos, el dispositivo de codificacion de audio 570 puede codificar en audio el subconjunto de los coeficientes armonicos esfericos, y generar un flujo de bits para incluir el subconjunto codificado en audio de los coeficientes armonicos esfericos.
En algunos ejemplos, el dispositivo de codificacion de audio 570 puede realizar un analisis espacial con respecto a los coeficientes armonicos esfericos para identificar un angulo por el que girar el campo sonoro representado por los coeficientes armonicos esfericos y realizar una operacion de rotacion para girar el campo sonoro por el angulo identificado para generar coeficientes armonicos esfericos rotados.
En algunos ejemplos, el dispositivo de codificacion de audio 570 puede determinar, basandose en si los coeficientes armonicos esfericos se generan a partir de un objeto de audio sintetico, un primer subconjunto de los coeficientes armonicos esfericos representativos de componentes distintos del campo sonoro, y determinar, en base a si los coeficientes armonicos esfericos se generan a partir de un objeto de audio sintetico, un segundo subconjunto de los coeficientes armonicos esfericos representativos de los componentes de fondo del campo sonoro. En estos y otros ejemplos, el dispositivo de codificacion de audio 570 puede codificar en audio el primer subconjunto de los coeficientes armonicos esfericos que tienen una velocidad de bits objetivo mas alta que la utilizada para codificar en audio el segundo subconjunto de los coeficientes armonicos esfericos.
De esta manera, varios aspectos de las tecnicas pueden permitir que el dispositivo de codificacion de audio 570 determine si SCH 511 se generan a partir de un objeto de audio sintetico de acuerdo con las siguientes clausulas.
5
10
15
20
25
30
35
40
45
50
55
60
65
Clausula 132512-1. Un dispositivo, tal como el dispositivo de codificacion de audio 570, que comprende: en el que uno o mas procesadores estan configurados adicionalmente para determinar si se generan coeficientes armonicos esfericos representativos de un campo sonoro a partir de un objeto de audio sintetico.
Clausula 132512-2. El dispositivo de la clausula 132512-1, en el que el uno o mas procesadores estan configurados ademas para, al determinar si los coeficientes armonicos esfericos representativos del campo sonoro se generan a partir del objeto de audio sintetico, excluir un primer vector de una matriz de coeficientes esfericos armonicos entramada almacenando al menos una parte de los coeficientes armonicos esfericos representativos del campo sonoro para obtener una matriz de coeficientes armonicos esfericos entramada reducida.
Clausula 132512-3. El dispositivo de la clausula 132512-1, en el que el uno o mas procesadores estan configurados ademas para, al determinar si los coeficientes armonicos esfericos representativos del campo sonoro se generan a partir del objeto de audio sintetico, excluir un primer vector de una matriz de coeficientes esfericos armonicos entramada almacenando al menos una parte de los coeficientes armonicos esfericos representativos del campo sonoro para obtener una matriz de coeficientes armonicos esfericos entramada reducida, y predecir un vector de la matriz de coeficientes armonicos esfericos entramada reducida en base a los vectores restantes de la matriz de coeficientes armonicos esfericos entramada reducida.
Clausula 132512-4. El dispositivo de la clausula 132512-1, en el que el uno o mas procesadores estan configurados ademas para, al determinar si los coeficientes armonicos esfericos representativos del campo sonoro se generan a partir del objeto de audio sintetico, excluir un primer vector de una matriz de coeficientes esfericos armonicos entramada almacenando al menos una parte de los coeficientes armonicos esfericos representativos del campo sonoro para obtener una matriz de coeficientes armonicos esfericos entramada reducida, y predecir un vector de la matriz de coeficientes armonicos esfericos entramada reducida en base, al menos en parte, a una suma de los vectores restantes de la matriz de coeficientes armonicos esfericos entramada reducida.
Clausula 132512-5. El dispositivo de la clausula 132512-1, en el que el uno o mas procesadores estan configurados ademas para, al determinar si los coeficientes armonicos esfericos representativos del campo
sonoro se generan a partir del objeto de audio sintetico, predecir un vector de una matriz de coeficientes
armonicos esfericos entramada que almacena al menos una parte de los coeficientes armonicos esfericos en base, al menos en parte, a una suma de vectores restantes de la matriz de coeficientes armonicos esfericos entramada.
Clausula 132512-6. El dispositivo de la clausula 132512-1, en el que el uno o mas procesadores estan configurados ademas para, al determinar si los coeficientes armonicos esfericos representativos del campo
sonoro se generan a partir del objeto de audio sintetico, predecir un vector de una matriz de coeficientes
armonicos esfericos entramada que almacena al menos una parte de los coeficientes armonicos esfericos en base, al menos en parte, a una suma de vectores restantes de la matriz de coeficientes armonicos esfericos entramada, y calcular un error basado en el vector predicho.
Clausula 132512-7. El dispositivo de la clausula 132512-1, en el que el uno o mas procesadores estan configurados ademas para, al determinar si los coeficientes armonicos esfericos representativos del campo
sonoro se generan a partir del objeto de audio sintetico, predecir un vector de una matriz de coeficientes
armonicos esfericos entramada que almacena al menos una parte de los coeficientes armonicos esfericos en base, al menos en parte, a una suma de vectores restantes de la matriz de coeficientes armonicos esfericos entramada, y calcular un error basado en el vector predicho y el vector correspondiente de la matriz de coeficientes armonicos esfericos entramada.
Clausula 132512-8. El dispositivo de la clausula 132512-1, en el que el uno o mas procesadores estan configurados ademas para, al determinar si los coeficientes armonicos esfericos representativos del campo
sonoro se generan a partir del objeto de audio sintetico, predecir un vector de una matriz de coeficientes
armonicos esfericos entramada que almacena al menos una parte de los coeficientes armonicos esfericos en base, al menos en parte, a una suma de vectores restantes de la matriz de coeficientes armonicos esfericos entramada, y calcular un error como una suma del valor absoluto de la diferencia del vector predicho y el vector correspondiente de la matriz de coeficientes armonicos esfericos entramada.
Clausula 132512-9. El dispositivo de la clausula 132512-1, en el que el uno o mas procesadores estan configurados, ademas para, al determinar si los coeficientes armonicos esfericos representativos del campo
sonoro se generan a partir del objeto de audio sintetico, predecir un vector de una matriz de coeficientes
armonicos esfericos enmarcada que almacena al menos una parte de los coeficientes armonicos esfericos basado, al menos en parte, en una suma de vectores restantes de La matriz de coeficientes armonicos esfericos por trama, calcular un error basado en el vector predicho y el correspondiente vector de la matriz de coeficientes armonicos esfericos por trama, calcular una razon basada en una energfa del vector correspondiente de la matriz de coeficientes armonicos esfericos por trama y el error, y Comparar la relacion con un umbral para determinar si
5
10
15
20
25
30
35
40
45
50
55
60
65
los coeficientes armonicos esfericos representatives del campo sonoro se generan a partir del objeto de audio sintetico
Clausula 132512-10. El dispositivo de cualquiera de las reivindicaciones 4-9, en el que el uno o mas procesadores estan configurados adicionalmente para, al predecir el vector, predecir un primer vector distinto de cero de la matriz de coeficientes armonicos esfericos entramada que almacena al menos la porcion de los coeficientes armonicos esfericos.
Clausula 132512-11. El dispositivo de cualquiera de las reivindicaciones 1-10, en el que el uno o mas procesadores estan configurados ademas para especificar una indicacion de si los coeficientes armonicos esfericos se generan a partir del objeto de audio sintetico en un flujo de bits que almacena una version comprimida de los coeficientes armonicos esfericos.
Clausula 132512-12. El dispositivo de la clausula 132512-11, en el que la indicacion es un bit unico.
Clausula 132512-13. El dispositivo de la clausula 132512-1, en el que el uno o mas procesadores estan configurados ademas para determinar, basandose en si los coeficientes armonicos esfericos se generan a partir de un objeto de audio sintetico, un subconjunto de los coeficientes armonicos esfericos representativos de componentes distintos del campo sonoro.
Clausula 132512-14. El dispositivo de la clausula 132512-13, en el que el uno o mas procesadores estan configurados ademas para generar un flujo de bits para incluir el subconjunto de los coeficientes armonicos esfericos.
Clausula 132512-15. El dispositivo de la clausula 132512-13, en el que el uno o mas procesadores estan configurados adicionalmente para codificar en audio el subconjunto de los coeficientes armonicos esfericos, y generar un flujo de bits para incluir el subconjunto codificado en audio de los coeficientes armonicos esfericos.
Clausula 132512-16. El dispositivo de la clausula 132512-1, en el que el uno o mas procesadores estan configurados ademas para determinar, basandose en si los coeficientes armonicos esfericos se generan a partir de un objeto de audio sintetico, un subconjunto de los coeficientes armonicos esfericos representativos de componentes de fondo del campo sonoro.
Clausula 132512-17. El dispositivo de la clausula 132512-16, en el que el uno o mas procesadores estan configurados ademas para generar un flujo de bits para incluir el subconjunto de los coeficientes armonicos esfericos.
Clausula 132512-18. El dispositivo de la clausula 132512-15, en el que el uno o mas procesadores estan configurados adicionalmente para codificar en audio el subconjunto de los coeficientes armonicos esfericos, y generar un flujo de bits para incluir el subconjunto codificado en audio de los coeficientes armonicos esfericos.
Clausula 132512-19. El dispositivo de la clausula 132512-1, en el que el uno o mas procesadores estan configurados adicionalmente para realizar un analisis espacial con respecto a los coeficientes armonicos esfericos para identificar un angulo mediante el cual girar el campo sonoro representado por los coeficientes armonicos esfericos, y realizar una operacion de rotacion para girar el campo sonoro por el angulo identificado para generar coeficientes armonicos esfericos girados.
Clausula 132512-20. El dispositivo de la clausula 132512-1, en el que el uno o mas procesadores estan configurados adicionalmente para determinar, basandose en si los coeficientes armonicos esfericos se generan a partir de un objeto de audio sintetico, un primer subconjunto de los coeficientes armonicos esfericos representativos de componentes distintos del campo sonoro, y determinar, basandose en si los coeficientes armonicos esfericos se generan a partir de un objeto de audio sintetico, un segundo subconjunto de los coeficientes armonicos esfericos representativos de los componentes de fondo del campo sonoro.
Clausula 132512-21. El dispositivo de la clausula 132512-20, en el que el uno o mas procesadores estan configurados adicionalmente para codificar en audio el primer subconjunto de los coeficientes armonicos esfericos que tienen una velocidad de bits objetivo mayor que la usada para codificar en audio al segundo subconjunto de los coeficientes armonicos esfericos.
Clausula 132512-22. El dispositivo de la clausula 132512-1, en el que el uno o mas procesadores estan configurados ademas para realizar una descomposicion en valores singulares con respecto a los coeficientes armonicos esfericos para generar una matriz U representativa de los vectores singulares izquierdos de la pluralidad de coeficientes armonicos esfericos, una matriz S representativa de los valores singulares de la pluralidad de coeficientes armonicos esfericos y una matriz V representativa de los vectores singulares derechos de la pluralidad de coeficientes armonicos esfericos.
5
10
15
20
25
30
35
40
45
50
55
60
65
Clausula 132512-23. El dispositivo de la clausula 132512-22, en el que el uno o mas procesadores estan configurados adicionalmente para determinar, basandose en si los coeficientes armonicos esfericos se generan a partir de un objeto de audio sintetico, aquellas porciones de una o mas de la matriz U, la matriz S y la matriz V representativas de los componentes distintos del campo sonoro.
Clausula 132512-24. El dispositivo de la clausula 132512-22, en el que el uno o mas procesadores estan configurados adicionalmente para determinar, basandose en si los coeficientes armonicos esfericos se generan a partir de un objeto de audio sintetico, aquellas porciones de una o mas de la matriz U, la matriz S y la matriz V representativas de los componentes de fondo del campo sonoro.
Clausula 132512-1C. Un dispositivo, tal como el dispositivo de codificacion de audio 570, que comprende: uno o mas procesadores configurados para determinar si se generan coeficientes armonicos esfericos representativos de un campo sonoro a partir de un objeto de audio sintetico en base a una relacion calculada en funcion de, al menos, una energfa de un vector de los coeficientes armonicos esfericos y un error derivado en base a una version predicha del vector de los coeficientes armonicos esfericos y el vector de los coeficientes armonicos esfericos.
En cada una de las diversas instancias descritas anteriormente, debe entenderse que el dispositivo de codificacion de audio 570 puede realizar un procedimiento o comprender de otro modo medios para realizar cada paso del procedimiento para el que esta configurado el dispositivo de codificacion de audio 570. En algunos casos, estos medios pueden comprender uno o mas procesadores. En algunos casos, uno o mas procesadores pueden representar un procesador de proposito especial configurado por medio de instrucciones almacenadas en un medio de almacenamiento no transitorio legible por ordenador. En otras palabras, varios aspectos de las tecnicas en cada uno de los conjuntos de ejemplos de codificacion pueden proporcionar un medio de almacenamiento no transitorio legible por ordenador que tiene almacenadas instrucciones que, cuando se ejecutan, hacen que uno o mas procesadores realicen el procedimiento para el cual el dispositivo de codificacion de audio 570 se ha configurado para llevar a cabo.
Las FIGS. 55 y 55B son diagramas que ilustran un ejemplo de realizacion de diversos aspectos de las tecnicas descritas en esta divulgacion para girar un campo sonoro 640. La FIG. 55 es un diagrama que ilustra el campo sonoro 640 antes de la rotacion de acuerdo con los diversos aspectos de las tecnicas descritas en esta divulgacion. En el ejemplo de la FIG. 55, el campo sonoro 640 incluye dos ubicaciones de alta presion, designadas como ubicacion 642A y 642B. Esta ubicacion 642A y 642B ("ubicaciones 642") residen a lo largo de una lfnea 644 que tiene una pendiente distinta de cero (que es otra forma de referirse a una lfnea que no es horizontal, ya que las lfneas horizontales tienen una pendiente de cero). Dado que las ubicaciones 642 tienen una coordenada z, ademas de las coordenadas x e y, pueden requerirse funciones de base esferica de orden superior para representar correctamente este campo sonoro 640 (ya que estas funciones de base esferica de orden superior describen las partes superior e inferior o no horizontales del campo sonoro. En lugar de reducir el campo sonoro 640 directamente a los SHC 511, el dispositivo de codificacion de audio 570 puede girar el campo sonoro 640 hasta que la lfnea 644 que conecta las ubicaciones 642 es horizontal.
La FIG. 55B es un diagrama que ilustra el campo sonoro 640 despues de ser girado hasta que la lfnea 644 que conecta las ubicaciones 642 es horizontal. Como resultado de la rotacion del campo sonoro 640 de esta manera, los SHC 511 pueden obtenerse de tal manera que los ordenes superiores de los sHc 511 se especifican como ceros dado que el campo sonoro girado 640 ya no tiene posiciones de presion (o energfa) con coordenadas z. De esta manera, el dispositivo de codificacion de audio 570 puede girar, trasladar, mas generalmente, ajustar el campo sonoro 640 para reducir el numero de SHC 511 con valores distintos de cero. En relacion con otros aspectos de las tecnicas, el dispositivo de codificacion de audio 570 puede entonces, en lugar de senalar un numero firmado de 32 bits que identifica que estos de orden superior de SHC 511 tienen valores cero, senalan en un campo del flujo de bits 517 que estos de orden superior de SHC 511 no estan senalizados. El dispositivo de codificacion de audio 570 tambien puede especificar informacion de rotacion en el flujo de bits 517 que indica como se giro el campo sonoro 640, a menudo mediante la expresion de un acimut y elevacion de la manera descrita anteriormente. Un dispositivo de extraccion, tal como el dispositivo de codificacion de audio, puede entonces implicar que los no senalados de los SHC 511 tienen un valor de cero y, al reproducir el campo sonoro 640 basado en SHC 511, realizar la rotacion para girar el campo sonoro 640 de manera que el campo sonoro 640 se asemeje al campo sonoro 640 mostrado en el ejemplo de la FIG. 55. De esta manera, el dispositivo de codificacion de audio 570 puede reducir el numero de SHC 511 requeridos que se especifiquen en el flujo de bits 517 de acuerdo con las tecnicas descritas en esta divulgacion.
Se puede usar un algoritmo de "compactacion espacial" para determinar la rotacion optima del campo sonoro. En una realizacion, el dispositivo de codificacion de audio 570 puede realizar el algoritmo para iterar a traves de todas las posibles combinaciones en acimut y elevacion (es decir, combinaciones 1024 x 512 en el ejemplo anterior), girando el campo sonoro para cada combinacion, y calculando el numero de SHC 511 que estan por encima del valor umbral. La combinacion acimut/elevacion candidata que produce el menor numero de SHC 511 por encima del valor umbral puede considerarse lo que se puede denominar la "rotacion optima". En esta forma rotada, el campo sonoro puede requerir el menor numero de SHC 511 para representar el campo sonoro y puede entonces considerarse compactado. En algunos casos, el ajuste puede comprender esta rotacion optima y la informacion de
5
10
15
20
25
30
35
40
45
50
55
60
ajuste descrita anteriormente puede incluir esta informacion de rotacion (que se puede denominar "rotacion optima") (en terminos de angulos de acimut y elevacion).
En algunos casos, en lugar de solamente especificar el angulo de acimut y el angulo de elevacion, el dispositivo de codificacion de audio 570 puede especificar angulos adicionales en la forma, como un ejemplo, de angulos de Euler. Los angulos de Euler especifican el angulo de rotacion en torno al eje z, el eje x anterior y el eje z anterior. Aunque se describen en esta divulgacion con respecto a combinaciones de angulos de acimut y de elevacion, las tecnicas de esta divulgacion no deben limitarse a especificar unicamente los angulos de acimut y de elevacion, pero pueden incluir especificar cualquier numero de angulos, incluyendo los tres angulos de Euler mencionados anteriormente. En este sentido, el dispositivo de codificacion de audio 570 puede girar el campo sonoro para reducir un numero de la pluralidad de elementos jerarquicos que proporcionan informacion relevante para describir el campo sonoro y especificar angulos de Euler como informacion de rotacion en el flujo de bits. Los angulos de Euler, como se senalo anteriormente, pueden describir como se hizo girar el campo sonoro. Cuando se utilizan angulos de Euler, el dispositivo de extraccion de flujo de bits puede analizar el flujo de bits para determinar la informacion de rotacion que incluye los angulos de Euler y, al reproducir el campo sonoro en base a aquellos de la pluralidad de elementos jerarquicos que proporcionan informacion relevante para describir el campo sonoro, girar el campo sonoro en base a los angulos de Euler.
Ademas, en algunos casos, en lugar de especificar explfcitamente estos angulos en el flujo de bits 517, el dispositivo de codificacion de audio 570 puede especificar un fndice (que puede denominarse "fndice de rotacion") asociado con combinaciones predefinidas del uno o mas angulos que especifican la rotacion. En otras palabras, la informacion de rotacion puede, en algunos casos, incluir el fndice de rotacion. En estos casos, un valor dado del fndice de rotacion, tal como un valor de cero, puede indicar que no se realizo ninguna rotacion. Este fndice de rotacion se puede utilizar en relacion con una tabla de rotacion. Es decir, el dispositivo de codificacion de audio 570 puede incluir una tabla de rotacion que comprende una entrada para cada una de las combinaciones del angulo de acimut y el angulo de elevacion.
Alternativamente, la tabla de rotacion puede incluir una entrada para cada transformacion de matriz representativa de cada combinacion del angulo de acimut y el angulo de elevacion. Es decir, el dispositivo de codificacion de audio 570 puede almacenar una tabla de rotacion que tiene una entrada para cada transformacion de matriz para girar el campo sonoro por cada una de las combinaciones de angulos de acimut y elevacion. Tfpicamente, el dispositivo de codificacion de audio 570 recibe los SHC 511 y deriva los SHC 511', cuando se realiza la rotacion, de acuerdo con la siguiente ecuacion:
SHC
27’
EncMat2
(25x32)
InvMaty
(32x25)
SHC
27
En la ecuacion anterior, los SHC 511' se calculan en funcion de una matriz de codificacion para codificar un campo sonoro en terminos de una segunda trama referencia (EncMat2), una matriz de inversion para revertir los SHC 511 de vuelta a un campo sonoro en terminos de una primera trama de referencia (InvMati), y SHC 511. EncMat2 es de tamano 25 x 32, mientras que InvMat2 es de tamano 32 x 25. Tanto SHC 511' como sHc 511 son de tamano 25, donde SHC 511' puede reducirse aun mas debido a la eliminacion de aquellos que no especifican informacion de audio relevante. EncMat2 puede variar para cada combinacion de angulo de acimut y de elevacion, mientras que InvMati puede permanecer estatico con respecto a cada combinacion de angulo de azimut y de elevacion. La tabla de rotacion puede incluir una entrada que almacena el resultado de multiplicar cada EncMat2 diferente a InvMati.
La FIG. 56 es un diagrama que ilustra un campo sonoro ejemplar capturado de acuerdo con una primera trama de referencia que se hace girar de acuerdo con las tecnicas descritas en esta divulgacion para expresar el campo sonoro en terminos de una segunda trama de referencia. En el ejemplo de la FIG. 56, el campo sonoro que rodea un microfono dedicado 646 se captura asumiendo una primera trama de referencia, que se representa por los ejes X1, Y1 y Z1 en el ejemplo de la FlG. 56. SHC 511 describen el campo sonoro en terminos de esta primera trama de referencia. InvMati transforma los SHC 511 de nuevo en el campo de sonido, permitiendo que el campo sonoro se gire a la segunda trama de referencia representada por los ejes X2, Y2 y Z2 en el ejemplo de la FIG. 56. EncMat2 descrito anteriormente puede girar el campo sonoro y generar SHC 511' que describen este campo sonoro girado en terminos de la segunda trama de referencia.
En cualquier caso, la ecuacion anterior puede derivarse como se indica a continuacion. Dado que el campo sonoro se registra con un cierto sistema de coordenadas, de modo que el frente se considera la direccion del eje x, las 32 posiciones de microfono de un microfono dedicado (u otras configuraciones de microfono) se definen a partir de este sistema de coordenadas de referencia. La rotacion del campo sonoro puede entonces considerarse como una rotacion de esa trama de referencia. Para la supuesta trama de referencia, SHC 511 pueden calcularse como se indica a continuacion:
5
10
15
20
25
30
35
40
45
SHC
27
Y0°(PoSl) Y0°(Pos2) -
Y4\PoSl)
Yq (Pos22 )
mic2 (t) mic2 (t)
Y44(Pos32)
micr, (t)
En la ecuacion anterior, Ynm representan las funciones de base esferica en la posicion (Posi) del i -esimo microfono (donde i puede ser 1-32 en este ejemplo). El vector mici indica la senal de microfono para el i-esimo microfono durante un tiempo t. Las posiciones (Pos) se refieren a la posicion del microfono en la primera trama de referencia (es decir, la trama de referencia antes de la rotacion en este ejemplo).
La ecuacion anterior puede expresarse alternativamente en terminos de las expresiones matematicas indicadas anteriormente como:
[sHC_27] = [Es(e,<p)][m,(t)j.
Para girar el campo sonoro (o en la segunda trama de referencia), la posicion (Pos) se calculara en la segunda trama de referencia. Mientras esten presentes las senales originales del microfono, el campo sonoro puede girarse arbitrariamente. Sin embargo, las senales de microfono originales (mic(t)) a menudo no estan disponibles. El problema entonces puede ser como recuperar las senales de microfono (mic(t)) de los SHC 511. Si se utiliza un diseno en T (como en un microfono dedicado de 32 microfonos), la solucion a este problema se puede lograr resolviendo la siguiente ecuacion:
mic2 (t) mic2 (t)
[ In vMat] ]
SHC
27
mic32 (t)
Este InvMatl puede especificar las funciones de base armonicas esfericas calculadas de acuerdo con la posicion de los microfonos como se especifica con respecto a la primera trama de referencia. Esta ecuacion tambien puede expresarse como [m,(t)] = [Es(0,^)]"1[SHC], como se ha indicado anteriormente.
Una vez que se recuperan las senales de microfono (mic(t)) de acuerdo con la ecuacion anterior, las senales de microfono (mic(t)) que describen el campo sonoro pueden girarse para calcular los SHC 511' correspondientes a la segunda trama de referencia, dando como resultado la siguiente ecuacion:
SHC
21'
EncMat2
(25x32)
In vMat]
(32x25)
SHC
27
EncMat2 especifica las funciones de base armonica esferica desde una posicion girada (Pos). De esta manera, EncMat2 puede especificar eficazmente una combinacion del angulo de acimut y de elevacion. Por lo tanto, cuando
EncMal31T InvMat,
la tabla de rotacion almacena el resultado de (25x32) J (32x25)J para ca(ja combinacion de angulos de acimut y de elevacion, la tabla de rotacion especifica eficazmente cada combinacion de los angulos de acimut y de elevacion. La senal recibida puede expresarse entonces como:
[SHC_27'] = [Es(02,<P2)] [Es(9i,yi)f [SHC 27],
donde 02, ty2 representan un segundo angulo de acimut y un segundo angulo de elevacion diferente del primer angulo de acimut y el angulo de elevacion representado por 01, ^1. 01, ^1 corresponden a la primera trama de referencia, mientras que 02, y2 corresponden a la segunda trama de referencia. Por lo tanto, InvMati puede corresponder a [Es(0i,<Pi)]-1, mientras que EncMat2 puede corresponder a [Es(02,^2)]
Lo anterior puede representar una version mas simplificada del calculo que no considera la operacion de filtrado, representada anteriormente en varias ecuaciones que indican la derivacion de los SHC 511 en el dominio de frecuencia por la funcion jn(), que se refiere a la funcion esferica de Bessel de orden n. En el dominio del tiempo, esta
5
10
15
20
25
30
35
40
45
funcion jn(.) representa una operacion de filtrado que es especffica de un orden particular, n. Con el filtrado, la rotacion se puede realizar por orden. Para mas ilustracion, considerense las siguientes ecuaciones:
imagen5
A partir de estas ecuaciones, los SHC 511' girados para ordenes se realizan por separado ya que bn(t) son diferentes para cada orden. Como resultado, la ecuacion anterior puede ser alterada de la siguiente manera para calcular los de primer orden de los SHC 511' girados:
Order
SHC
21'
EncMat2
(3x32)
InvMaty
(32x3)
Order
SHC
27
Dado que hay tres de primer orden de SHC 511, cada uno de los vectores SHC 511' y 511 son 3 de tamano en la ecuacion anterior. Igualmente, para el segundo orden se puede aplicar la siguiente ecuacion:
Order
SHC
21'
EncMat2
(5x32)
InvMaty
(32x5)
Order
SHC
21
De nuevo, dado que hay cinco SHC 511 de segundo orden, cada uno de los vectores SHC 511' y 511 son 5 de tamano en la ecuacion anterior. Las ecuaciones restantes para los demas ordenes, es decir, los ordenes tercero y cuarto, pueden ser similares a las descritas anteriormente, siguiendo el mismo patron con respecto a los tamanos de las matrices (dado que el numero de filas de EncMat2, el numero de columnas de InvMat1 y los tamanos de los vectores SHC 511 y SHC 511' de tercer y cuarto orden son iguales al numero de subordenes (m veces dos mas 1) de cada una de las funciones de base armonicas esfericas de tercer y cuarto orden.
Por tanto, el dispositivo de codificacion de audio 570 puede realizar esta operacion de rotacion con respecto a cada combinacion de angulo de acimut y de elevacion en un intento de identificar la llamada rotacion optima. El dispositivo de codificacion de audio 570 puede, despues de realizar esta operacion de rotacion, calcular el numero de sHc 511' por encima del valor de umbral. En algunos casos, el dispositivo de codificacion de audio 570 puede realizar esta rotacion para derivar una serie de SHC 511' que representan el campo sonoro durante una duracion de tiempo, tal como una trama de audio. Al realizar esta rotacion para derivar la serie del SHC511' que representan el campo sonoro durante esta duracion de tiempo, el dispositivo de codificacion de audio 570 puede reducir el numero de operaciones de rotacion que tienen que realizarse en comparacion con hacer esto para cada conjunto de los SHC 511 que describen el campo sonoro para duraciones de tiempo menores que una trama u otra longitud. En cualquier caso, el dispositivo de codificacion de audio 570 se puede ahorrar, a lo largo de este proceso, los SHC 511' que tienen el numero mfnimo de SHC 511' mayores que el valor umbral.
Sin embargo, la realizacion de esta operacion de rotacion con respecto a cada combinacion de angulo de acimut y elevacion puede ser intensiva en el procesador o requerir mucho tiempo. Como resultado, el dispositivo de codificacion de audio 570 no puede realizar lo que podrfa caracterizarse como esta implementacion de "fuerza bruta" del algoritmo de rotacion. En cambio, el dispositivo de codificacion de audio 570 puede realizar rotaciones con respecto a un subconjunto de combinaciones posiblemente conocidas (estadfsticamente) de angulo de acimut y de elevacion que ofrecen una compactacion generalmente buena, realizando rotaciones adicionales con respecto a combinaciones alrededor de las de este subconjunto proporcionando mejor compactacion en comparacion con otras combinaciones en el subconjunto.
5
10
15
20
25
30
35
40
45
50
55
60
65
570 puede seguir una trayectoria (espacialmente) de combinaciones, realizando las rotaciones con respecto a esta trayectoria de combinaciones. Como otra alternativa, el dispositivo de codificacion de audio 570 puede especificar un umbral de compactacion que define un numero maximo de SHC 511' que tienen valores distintos de cero por encima del valor de umbral. Este umbral de compactacion puede establecer eficazmente un punto de parada para la busqueda, de tal forma que, cuando el dispositivo de codificacion de audio 570 realiza una rotacion y determina que el numero de SHC 511' con un valor por encima del umbral establecido es menor o igual (o menor que en algunos casos) que el umbral de compactacion, el dispositivo de codificacion de audio 570 deja de realizar cualquier operacion de rotacion adicional con respecto a las combinaciones restantes. Como otra alternativa, el dispositivo de codificacion de audio 570 puede atravesar un arbol (u otra estructura de datos) dispuesto jerarquicamente de combinaciones, realizando las operaciones de rotacion con respecto a la combinacion actual y recorriendo el arbol a la derecha o a la izquierda (por ejemplo, para arboles binarios) dependiendo del numero de SHC 511' con un valor distinto de cero mayor que el valor umbral.
En este sentido, cada una de estas alternativas implica realizar una primera y segunda operacion de rotacion y comparar el resultado de realizar la primera y segunda operacion de rotacion para identificar una de las primera y segunda operaciones de rotacion que da como resultado el menor numero de los SHC 511' con un valor distinto de cero mayor que el valor umbral. Por consiguiente, el dispositivo de codificacion de audio 570 puede realizar una primera operacion de rotacion en el campo sonoro para girar el campo sonoro de acuerdo con un primer angulo de acimut y un primer angulo de elevacion y determinar un primer numero de la pluralidad de elementos jerarquicos representativos del campo sonoro girado de acuerdo con el primer angulo de acimut y el primer angulo de elevacion que proporcionan informacion relevante para describir el campo sonoro. El dispositivo de codificacion de audio 570 tambien puede realizar una segunda operacion de rotacion en el campo sonoro para girar el campo sonoro de acuerdo con un segundo angulo de acimut y un segundo angulo de elevacion y determinar un segundo numero de la pluralidad de elementos jerarquicos representativos del campo sonoro girado de acuerdo con el segundo angulo de acimut y el segundo angulo de elevacion que proporcionan informacion relevante para describir el campo sonoro. Ademas, el dispositivo de codificacion de audio 570 puede seleccionar la primera operacion de rotacion o la segunda operacion de rotacion basandose en una comparacion del primer numero de la pluralidad de elementos jerarquicos y el segundo numero de la pluralidad de elementos jerarquicos.
En algunos casos, el algoritmo de rotacion se puede realizar con respecto a una duracion de tiempo, donde las invocaciones posteriores del algoritmo de rotacion pueden realizar operaciones de rotacion basadas en invocaciones pasadas del algoritmo de rotacion. En otras palabras, el algoritmo de rotacion puede ser adaptativo basandose en la informacion de rotacion pasada determinada al girar el campo sonoro durante una duracion de tiempo anterior. Por ejemplo, el dispositivo de codificacion de audio 570 puede hacer girar el campo sonoro durante una primera duracion de tiempo, por ejemplo, una trama de audio, para identificar el SHC 511' durante esta primera duracion de tiempo. El dispositivo de codificacion de audio 570 puede especificar la informacion de rotacion y los SHC 511' en el flujo de bits 517 en cualquiera de las formas descritas anteriormente. Esta informacion de rotacion puede denominarse informacion de primera rotacion ya que describe la rotacion del campo sonoro durante la primera duracion de tiempo. El dispositivo de codificacion de audio 570 puede entonces, basandose en esta primera informacion de rotacion, hacer girar el campo sonoro durante una segunda duracion de tiempo, por ejemplo, una segunda trama de audio, para identificar los SHC 511' durante esta segunda duracion de tiempo. El dispositivo de codificacion de audio 570 puede utilizar esta primera informacion de rotacion al realizar la segunda operacion de rotacion durante la segunda duracion de tiempo para inicializar una busqueda de la combinacion "optima" de angulos de acimut y elevacion, como un ejemplo. El dispositivo de codificacion de audio 570 puede entonces especificar los SHC 511' y la informacion de rotacion correspondiente para la segunda duracion de tiempo (que se puede denominar "segunda informacion de rotacion") en el flujo de bits 517.
Aunque se ha descrito anteriormente con respecto a varias maneras diferentes de implementar el algoritmo de rotacion para reducir el tiempo de procesamiento y/o el consumo, las tecnicas pueden realizarse con respecto a cualquier algoritmo que pueda reducir o de otro modo acelerar la identificacion de lo que puede denominarse como la "rotacion optima". Ademas, las tecnicas pueden realizarse con respecto a cualquier algoritmo que identifique rotaciones no optimas pero que pueda mejorar el rendimiento en otros aspectos, a menudo medidos en terminos de velocidad o procesador u otra utilizacion de recursos.
Las FIGS. 57-57E son cada una un diagrama que ilustra los flujos de bits 517A-517E formados de acuerdo con las tecnicas descritas en esta divulgacion. En el ejemplo de la FIG. 57A, el flujo de bits 517A puede representar un ejemplo del flujo de bits 517 mostrado en la FIG. 53 anterior. El flujo de bits 517A incluye un campo actual SHC 670 y un campo que almacena SHC 511' (donde el campo se denomina "SHC 511"'). El campo actual SHC 670 puede incluir un bit correspondiente a cada uno de SHC511. Los SHC 511' pueden representar los de SHC 511 que se especifican en el flujo de bits, que pueden ser menores en numero que el numero de los SHC 511. Tfpicamente, cada uno de los SHC 511' son aquellos de SHC 511 que tienen valores distintos de cero. Como se ha indicado anteriormente, para una representacion de cuarto orden de cualquier campo sonoro dado, se requieren (1+4)2 o 25 SHC. Eliminar uno o mas de estos SHC y reemplazar estos SHC de valor cero con un unico bit puede ahorrar 31 bits, los cuales pueden ser asignados para expresar otras porciones del campo sonoro con mas detalle o eliminarse de otro modo para facilitar la utilizacion eficiente del ancho de banda.
5
10
15
20
25
30
35
40
45
50
55
60
65
En el ejemplo de la FIG. 57B, el flujo de bits 517B puede representar un ejemplo del flujo de bits 517 mostrado en la FIG. 53 anterior. El flujo de bits 517B incluye un campo de informacion de transformacion 672 ("informacion de transformacion 672") y un campo que almacena SHC 511' (donde el campo se denomina "SHC 511'"). La informacion de transformacion 672, como se ha indicado anteriormente, puede comprender informacion de traduccion, informacion de rotacion y/o cualquier otra forma de informacion que indique un ajuste a un campo sonoro. En algunos casos, la informacion de transformacion 672 tambien puede especificar un orden mayor de SHC 511 que se especifica en el flujo de bits 517B como SHC 511'. Es decir, la informacion de transformacion 672 puede indicar un orden de tres, que el dispositivo de extraccion puede entender que indica que SHC 511' incluye los de SHC 511 hasta e incluyendo los de SHC 511 que tienen un orden de tres. El dispositivo de extraccion puede entonces configurarse para establecer que SHC 511 tenga un orden de cuatro o mas a cero, eliminando potencialmente la senalizacion explfcita de SHC 511 de orden cuatro o superior en el flujo de bits.
En el ejemplo de la FIG. 57C, el flujo de bits 517C puede representar un ejemplo del flujo de bits 517 mostrado en la FIG. 53 anterior. El flujo de bits 517C incluye el campo de informacion de transformacion 672 ("informacion de transformacion 672"), el campo actual de SHC 670 y un campo que almacena SHC 511' (donde el campo se denomina "SHC 511'"). En lugar de estar configurado para comprender que orden de SHC 511 no se senaliza como se ha descrito anteriormente con respecto a la FIG. 57B, el campo actual SHC 670 puede indicar explfcitamente cuales de los SHC 511 se especifican en el flujo de bits 517C como SHC 511'
En el ejemplo de la FIG. 57D, el flujo de bits 517D puede representar un ejemplo del flujo de bits 517 mostrado en la FIG. 53 anterior. El flujo de bits 517d incluye un campo de orden 674 ("orden 60"), el campo actual de SHC 670, un indicador de acimut 676 ("AZF 676"), un indicador de elevacion 678 ("ELF 678"), un campo de angulo de acimut 680 ("acimut 680"), un campo de angulo de elevacion 682 ("elevacion 682 ") y un campo que almacena SHC 511' (donde, de nuevo, el campo se denomina "SHC 511'"). El campo de orden 674 especifica el orden de SHC 511', es decir, el orden representado por n anteriormente para el orden mas alto de la funcion de base esferica utilizada para representar el campo sonoro. El campo de orden 674 se muestra como un campo de 8 bits, pero puede ser de otros tamanos de bits diferentes, tal como tres (que es el numero de bits requerido para especificar el cuarto orden). El campo actual de SHC 670 se muestra como un campo de 25 bits. De nuevo, sin embargo, el campo actual de SHC 670 puede ser de otros tamanos de bits diferentes. El campo actual de SHC 670 se muestra como de 25 bits para indicar que el campo presente de SHC 670 puede incluir un bit para cada uno de los coeficientes armonicos esfericos correspondientes a una representacion de cuarto orden del campo sonoro.
El indicador de acimut 676 representa un indicador de un bit que especifica si el campo de acimut 680 esta presente en el flujo de bits 517D. Cuando el indicador de acimut 676 se ajusta a uno, el campo de acimut 680 para SHC 511' esta presente en el flujo de bits 517D. Cuando el indicador de acimut 676 se ajusta a cero, el campo de acimut 680 para SHC 511' no esta presente o especificado de otro modo en el flujo de bits 517D. Del mismo modo, el indicador de elevacion 678 representa un indicador de un bit que especifica si el campo de elevacion 682 esta presente en el flujo de bits 517D. Cuando el indicador de elevacion 678 esta ajustado a uno, el campo de elevacion 682 para SHC 511' esta presente en el flujo de bits 517D. Cuando el indicador de elevacion 678 se ajusta a cero, el campo de elevacion 682 para SHC 511' no esta presente o especificado de otro modo en el flujo de bits 517D. Aunque se describe como una senalizacion de que el campo correspondiente esta presente y cero indica que el campo correspondiente no esta presente, la convencion puede invertirse de tal manera que un cero especifique que el campo correspondiente se especifica en el flujo de bits 517D y uno especifica que el campo correspondiente no se especifica en el flujo de bits 517D. Por lo tanto, las tecnicas descritas en esta divulgacion no deben limitarse en este aspecto.
El campo de acimut 680 representa un campo de 10 bits que especifica, cuando esta presente en el flujo de bits 517D, el angulo de acimut. Aunque se muestra como un campo de 10 bits, el campo de acimut 680 puede tener otros tamanos de bits. El campo de elevacion 682 representa un campo de 9 bits que especifica, cuando esta presente en el flujo de bits 517D, el angulo de elevacion. El angulo de acimut y el angulo de elevacion especificados en los campos 680 y 682, respectivamente, pueden, junto con los indicadores 676 y 678, representar la informacion de rotacion descrita anteriormente. Esta informacion de rotacion se puede usar para girar el campo sonoro para recuperar los SHC 511 en la trama de referencia original.
El campo de SHC 511' se muestra como un campo variable que es de tamano X. El campo de SHC 511' puede variar debido al numero de SHC 511' especificado en el flujo de bits como se indica por el campo actual de SHC 670. El tamano X puede derivarse en funcion del numero de unidades en el campo actual de SHC 670 en veces de 32 bits (que es el tamano de cada SHC 511').
En el ejemplo de la FIG. 57E, el flujo de bits 517E puede representar otro ejemplo del flujo de bits 517 mostrado en la FIG. 53 anterior. El flujo de bits 517E incluye un campo de orden 674 ("orden 60"), un campo actual de SHC 670 y un campo de fndice de rotacion 684, y un campo que almacena SHC 511' (donde, de nuevo, el campo se denomina "SHC 511"). El campo de orden 674, el campo actual de SHC 670 y el campo de SHC 511' pueden ser sustancialmente similares a los descritos anteriormente. El campo de fndice de rotacion 684 puede representar un campo de 20 bits utilizado para especificar una de las combinaciones de 1024 x 512 (o, en otras palabras, 524288) de los angulos de elevacion y acimut. En algunos casos, solo se pueden utilizar 19 bits para especificar este campo
5
10
15
20
25
30
35
40
45
50
55
60
65
de fndice de rotacion 684, y el dispositivo de codificacion de audio 570 puede especificar un indicador adicional en el flujo de bits para indicar si se ha realizado una operacion de rotacion (y, por tanto, si el campo de fndice de rotacion 684 esta presente en el flujo de bits). Este campo de fndice de rotacion 684 especifica el fndice de rotacion indicado anteriormente, que puede referirse a una entrada en una tabla de rotacion comun tanto para el dispositivo de codificacion de audio 570 como para el dispositivo de extraccion de flujo de bits. Esta tabla de rotacion puede, en algunos casos, almacenar las diferentes combinaciones de angulos de acimut y elevacion. Alternativamente, la tabla de rotacion puede almacenar la matriz descrita anteriormente, que almacena eficazmente las diferentes combinaciones de los angulos de acimut y elevacion en forma de matriz.
La FIG. 58 es un diagrama de flujo que ilustra el ejemplo de funcionamiento del dispositivo de codificacion de audio 570 mostrado en el ejemplo de la FlG. 53 en la implementacion de los aspectos de rotacion de las tecnicas descritas en esta divulgacion. Inicialmente, el dispositivo de codificacion de audio 570 puede seleccionar una combinacion de angulo de acimut y angulo de elevacion de acuerdo con uno o mas de los diversos algoritmos de rotacion descritos anteriormente (800). El dispositivo de codificacion de audio 570 puede entonces girar el campo sonoro de acuerdo con el angulo de acimut y elevacion seleccionado (802). Como se ha descrito anteriormente, el dispositivo de codificacion de audio 570 puede derivar primero el campo sonoro de SHC 511 usando InvMati indicado anteriormente. El dispositivo de codificacion de audio 570 tambien puede determinar SHC511' que representan el campo sonoro girado (804). Aunque se describen como etapas u operaciones separadas, el dispositivo de codificacion de audio 570 puede aplicar una transformacion (que puede representar el resultado de [EncMat2][InvMati]) que representa la seleccion de la combinacion del angulo de acimut y de angulo de elevacion, derivando el campo sonoro de los SHC 511, girando el campo sonoro y determinando los SHC 511' que representan el campo sonoro girado.
En cualquier caso, el dispositivo de codificacion de audio 570 puede entonces calcular un numero de los SHC 511' determinados que sean mayores que un valor umbral, comparando este numero con un numero calculado para una iteracion previa con respecto a una combinacion anterior de angulo de acimut y angulo de elevacion (806, 808). En la primera iteracion con respecto a la primera combinacion de angulo de acimut y angulo de elevacion, esta comparacion puede ser con respecto a un numero predefinido anterior (que puede ajustarse a cero). En cualquier caso, si el numero determinado de los SHC 511' es menor que el numero anterior ("SI" 808), el dispositivo de codificacion de audio 570 almacena los SHC 511', el angulo de acimut y el angulo de elevacion, reemplazando a menudo los anteriores SHC511', angulo de acimut y angulo de elevacion almacenados a partir de una iteracion anterior del algoritmo de rotacion (810).
Si el numero determinado de los SHC 511' no es menor que el numero anterior ("NO" 808) o despues de almacenar los SHC 511', el angulo de acimut y el angulo de elevacion en lugar de los SHC 511', el angulo de acimut y el angulo de elevacion previamente almacenados, el dispositivo de codificacion de audio 570 puede determinar si el algoritmo de rotacion ha terminado (812). Es decir, el dispositivo de codificacion de audio 570 puede, como un ejemplo, determinar si se han evaluado todas las combinaciones disponibles de angulo de acimut y angulo de elevacion. En otros ejemplos, el dispositivo de codificacion de audio 570 puede determinar si se cumplen otros criterios (tales como que se ha realizado todo un subconjunto definido de combinacion, si se ha recorrido una trayectoria dada, si se ha recorrido un arbol jerarquico a un nodo de hoja, etc.) de tal forma que el dispositivo de codificacion de audio 570 haya terminado de realizar el algoritmo de rotacion. Si no se ha terminado ("NO" 812), el dispositivo de codificacion de audio 570 puede realizar el proceso anterior con respecto a otra combinacion seleccionada (800-812). Si se ha terminado ("SI" 812), el dispositivo de codificacion de audio 570 puede especificar los SHC 511', el angulo de angulo y el angulo elevacion almacenados en el flujo de bits 517 en una de las diversas formas descritas anteriormente (814).
La FIG. 59 es un diagrama de flujo que ilustra el ejemplo de funcionamiento del dispositivo de codificacion de audio 570 mostrado en el ejemplo de la FIG. 53 en la realizacion de los aspectos de transformacion de las tecnicas descritas en esta divulgacion. Inicialmente, el dispositivo de codificacion de audio 570 puede seleccionar una matriz que represente una transformacion lineal reversible (820). Un ejemplo de una matriz que representa una transformacion lineal reversible puede ser la matriz mostrada anteriormente que es el resultado de [EncMat-i][IncMati]. El dispositivo de codificacion de audio 570 puede entonces aplicar la matriz al campo sonoro para transformar el campo sonoro (822). El dispositivo de codificacion de audio 570 tambien puede determinar SHC 511' que representan el campo sonoro girado (824). Aunque se describen como etapas u operaciones separadas, el dispositivo de codificacion de audio 570 puede aplicar una transformacion (que puede representar el resultado de [EncMat2][InvMati]), derivando el campo sonoro de los SHC 511, transformar el campo sonoro y determinar los SHC 511' que representan el campo sonoro de transformacion.
En cualquier caso, el dispositivo de codificacion de audio 570 puede entonces calcular un numero de los SHC 511' determinados que sean mayores que un valor umbral, comparando este numero con un numero calculado para una iteracion previa con respecto a una aplicacion de una matriz de transformacion (826, 828). Si el numero determinado de los SHC 511' es menor que el numero anterior ("SI" 828), el dispositivo de codificacion de audio 570 almacena los SHC 511' y la matriz (o algun derivado de la misma, tal como un fndice asociado con la matriz), reemplazando a menudo los SHC 511' anteriores y la matriz (o un derivado de la misma) almacenados de una iteracion anterior del algoritmo de rotacion (830).
5
10
15
20
25
30
35
40
45
50
55
60
65
Si el numero determinado de los SHC 511' no es menor que el numero anterior ("NO" 828) o despues de almacenar los SHC 511' y la matriz en lugar de los SHC 511' y la matriz previamente almacenados, el dispositivo de codificacion de audio 570 puede determinar si el algoritmo de transformacion ha terminado (832). Es decir, el dispositivo de codificacion de audio 570 puede, como un ejemplo, determinar si se han evaluado todas las matrices de transformacion. En otros ejemplos, el dispositivo de codificacion de audio 570 puede determinar si se cumplen otros criterios (tales como que se ha realizado todo un subconjunto definido de las matrices de transformacion disponibles, si se ha recorrido una trayectoria dada, si se ha recorrido un arbol jerarquico a un nodo de hoja, etc.) de tal forma que el dispositivo de codificacion de audio 570 haya terminado de realizar el algoritmo de transformacion. Si no se ha terminado ("NO" 832), el dispositivo de codificacion de audio 570 puede realizar el proceso anterior con respecto a otra matriz de transformacion seleccionada (820-832). Si se ha terminado ("SI" 832), el dispositivo de codificacion de audio 570 puede especificar los SHC 511' y la matriz almacenados en el flujo de bits 517 en una de las diversas formas descritas anteriormente (834).
En algunos ejemplos, el algoritmo de transformacion puede realizar una sola iteracion, evaluando una sola matriz de transformacion. Es decir, la matriz transformada puede comprender cualquier matriz que represente una transformacion lineal reversible. En algunos casos, la transformacion lineal reversible puede transformar el campo sonoro del dominio espacial en el dominio de frecuencia. Los ejemplos de tal transformacion lineal reversible pueden incluir una transformada discreta de Fourier (DFT). La aplicacion de la DFT solo puede implicar una unica iteracion y, por lo tanto, no necesariamente incluira pasos para determinar si el algoritmo de transformacion ha terminado. Por consiguiente, las tecnicas no deben limitarse al ejemplo de la FIG. 59.
En otras palabras, un ejemplo de una transformacion lineal reversible es una transformada discreta de Fourier (DFT). Los veinticinco SHC 511' pueden operarse por la DFT para formar un conjunto de veinticinco coeficientes complejos. El dispositivo de codificacion de audio 570 tambien puede recibir una relleno nulo. Los veinticinco SHC 511' son un multiplo entero de 2, con el fin de aumentar potencialmente la resolucion del tamano de intervalo de la DFT, y potencialmente tienen una implementacion mas eficiente de la DFT, por ejemplo, aplicando una transformada de Fourier rapida (FFT). En algunos casos, el aumento de la resolucion de la dFt mas alla de 25 puntos no se requiere necesariamente. En el dominio de transformacion, el dispositivo de codificacion de audio 570 puede aplicar un umbral para determinar si hay alguna energfa espectral en un intervalo particular. El dispositivo de codificacion de audio 570 puede, en este contexto, descartar o anular energfa de coeficiente espectral que esta por debajo de este umbral, y el dispositivo de codificacion de audio 570 puede aplicar una transformada inversa para recuperar SHC 511' que tiene uno o mas de los SHC 511' descartados o anulados. Es decir, despues de aplicar la transformada inversa, los coeficientes por debajo del umbral no estan presentes, y como resultado, se pueden usar menos bits para codificar el campo sonoro.
En uno o mas ejemplos, las funciones descritas pueden implementarse en hardware, software, firmware o cualquier combinacion de estos. Si se implementan en software, las funciones pueden almacenarse en un medio legible por ordenador, o transmitirse a este, como una o mas instrucciones o codigo, y ejecutarse mediante una unidad de procesamiento basada en hardware. Los medios legibles por ordenador pueden incluir medios de almacenamiento legibles por ordenador, que corresponden a un medio tangible tal como unos medios de almacenamiento de datos, o medios de comunicacion que incluyen cualquier medio que facilite la transferencia de un programa informatico de un lugar a otro, por ejemplo, de acuerdo con un protocolo de comunicacion. De esta manera, los medios legibles por ordenador pueden corresponder, en general, a (1) unos medios de almacenamiento tangibles y legibles por ordenador que sean no transitorios o (2) un medio de comunicacion tal como una senal u onda portadora. Los medios de almacenamiento de datos pueden ser cualquier medio disponible al que se puede acceder desde uno o mas ordenadores o uno o mas procesadores para recuperar instrucciones, codigo y/o estructuras de datos para implementar las tecnicas descritas en la presente divulgacion. Un producto de programa informatico puede incluir un medio legible por ordenador.
A modo de ejemplo, y no de manera limitativa, dichos medios de almacenamiento legibles por ordenador pueden comprender RAM, rOm, EEPROM, CD-ROM u otro almacenamiento de disco optico, almacenamiento de disco magnetico u otros dispositivos de almacenamiento magnetico, memoria flash o cualquier otro medio que pueda utilizarse para almacenar codigo de programa deseado en forma de instrucciones o estructuras de datos y al que pueda accederse mediante un ordenador. Ademas, cualquier conexion puede denominarse de forma correcta con el termino medio legible por ordenador. Por ejemplo, si las instrucciones se transmiten desde un sitio web, un servidor u otra fuente remota mediante un cable coaxial, un cable de fibra optica, un par trenzado, una lfnea de abonado digital (DSL) o tecnologfas inalambricas tales como infrarrojos, radio y microondas, entonces el cable coaxial, el cable de fibra optica, el par trenzado, la DSL o las tecnologfas inalambricas tales como infrarrojos, radio y microondas se incluyen en la definicion de medio. Sin embargo, deberfa entenderse que los medios de almacenamiento legibles por ordenador y los medios de almacenamiento de datos no incluyen conexiones, ondas portadoras, senales u otros medios transitorios, sino que, en cambio, se orientan a medios de almacenamiento tangibles no transitorios. Los discos, como se usan en el presente documento, incluyen el disco compacto (CD), el disco de laser, el disco optico, el disco versatil digital (DVD), el disco flexible y el disco Blu-ray, donde algunos discos normalmente reproducen datos de manera magnetica, mientras que otros discos reproducen los datos de manera optica con laser. Las combinaciones de lo anterior tambien deberfan incluirse dentro del alcance de los medios
legibles por ordenador.
Las instrucciones pueden ser ejecutadas por uno o mas procesadores, tales como uno o mas procesadores de senales digitales (DSP), microprocesadores de proposito general, circuitos integrados especfficos de la aplicacion 5 (ASIC), matrices logicas programables in situ (FPGA) u otros circuitos logicos integrados o discretos equivalentes. Por consiguiente, el termino «procesador», como se utiliza en el presente documento, puede referirse a cualquier estructura anterior o a cualquier otra estructura adecuada para la implementacion de las tecnicas descritas en el presente documento. Ademas, en algunos aspectos, la funcionalidad descrita en el presente documento puede proporcionarse dentro de modulos de hardware y/o software especfficos configurados para la codificacion y la 10 decodificacion, o incorporarse en un codec combinado. Ademas, las tecnicas podrfan implementarse completamente en uno o mas circuitos o elementos logicos.
Las tecnicas de la presente divulgacion se pueden implementar en una amplia variedad de dispositivos o aparatos, que incluyen un telefono inalambrico, un circuito integrado (IC) o un conjunto de IC (por ejemplo, un conjunto de 15 chips). En la presente divulgacion se describen varios componentes, modulos o unidades para enfatizar aspectos funcionales de dispositivos configurados para realizar las tecnicas divulgadas, pero no requieren necesariamente su realizacion mediante diferentes unidades de hardware. En su lugar, como se ha descrito anteriormente, diversas unidades pueden combinarse en una unidad de hardware de codec o proporcionarse por medio de un grupo de unidades de hardware interoperativas, que incluyen uno o mas procesadores como los descritos anteriormente, 20 conjuntamente con software y/o firmware adecuado.
Se han descrito diversas realizaciones de las tecnicas. La invencion esta definida por las reivindicaciones siguientes.

Claims (15)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    55
    60
    65
    1. Procedimiento que comprende:
    obtener un primer conjunto distinto de cero de coeficientes de un vector (717) representativo de un componente de primer plano de un campo sonoro, habiendose descompuesto linealmente el vector a partir de una pluralidad de coeficientes armonicos esfericos que describen el campo sonoro;
    obtener uno de una pluralidad de modos de configuracion (760) mediante los cuales extraer el conjunto de coeficientes distintos del cero del vector de acuerdo con uno de la pluralidad de modos de configuracion, en el que uno de la pluralidad de modos de configuracion indica que el conjunto distinto de cero de los coeficientes incluye todos los coeficientes; y
    extraer el conjunto distinto de cero de los coeficientes del vector (717) basandose en el modo obtenido de la pluralidad de modos de configuracion.
  2. 2. El procedimiento de la reivindicacion 1, que comprende ademas extraer el primer conjunto distinto de cero de los coeficientes como una primera porcion del vector.
  3. 3. El procedimiento de la reivindicacion 1, que comprende ademas:
    extraer el primer conjunto distinto de cero del vector (717) de la informacion de canal lateral; y
    obtener una version recompuesta de la pluralidad de coeficientes armonicos esfericos basandose en el
    primer conjunto diferente de cero de los coeficientes del vector (717).
  4. 4. El procedimiento de la reivindicacion 1, en el que el vector (717) comprende un vector descompuesto linealmente a partir de la pluralidad de coeficientes armonicos esfericos usando una descomposicion lineal.
  5. 5. El procedimiento de la reivindicacion 4, en el que la descomposicion lineal comprende descomposicion en valores singulares.
  6. 6. El procedimiento de la reivindicacion 1, en el que la obtencion de un modo entre la pluralidad de modos de configuracion (760) comprende obtener un modo entre la pluralidad de modos de configuracion basandose en un valor senalado en un flujo de bits.
  7. 7. Un dispositivo que comprende:
    uno o mas procesadores configurados para:
    obtener un primer conjunto distinto de cero de coeficientes de un vector (717) representativo de un componente de primer plano de un campo sonoro, habiendose descompuesto linealmente el vector a partir de una pluralidad de coeficientes armonicos esfericos que describen el campo sonoro; obtener uno de una pluralidad de modos de configuracion (760) mediante los cuales extraer el conjunto de coeficientes distintos del cero del vector de acuerdo con uno de la pluralidad de modos de configuracion, en el que uno de la pluralidad de modos de configuracion indica que el conjunto distinto de cero de los coeficientes incluye todos los coeficientes; y extraer el conjunto distinto de cero de los coeficientes del vector (717) basandose en el modo obtenido de la pluralidad de modos de configuracion.
  8. 8. El dispositivo de la reivindicacion 7, en el que el uno o mas procesadores estan configurados adicionalmente para extraer el primer conjunto diferente de cero de los coeficientes como una primera parte del vector (717).
  9. 9. El dispositivo de la reivindicacion 7, en el que el uno o mas procesadores estan configurados adicionalmente para extraer el primer conjunto diferente de cero del vector (717) a partir de informacion de canal lateral, y obtener una version recompuesta de la pluralidad de coeficientes armonicos esfericos basados en el primer conjunto diferente de cero de los coeficientes del vector (717).
  10. 10. El dispositivo de la reivindicacion 7, en el que el vector (717) comprende un vector descompuesto linealmente a partir de la pluralidad de coeficientes armonicos esfericos usando una descomposicion lineal.
  11. 11. El dispositivo de la reivindicacion 10, en el que la descomposicion lineal comprende una descomposicion en valores singulares.
  12. 12. El dispositivo de la reivindicacion 7, en el que uno o mas procesadores estan configurados para determinar un modo entre la pluralidad de modos de configuracion (760) basandose en un valor senalado en un flujo de bits.
  13. 13. El dispositivo de la reivindicacion 12, en el que el valor basado en que uno o mas procesadores estan configurados para determinar uno de la pluralidad de modos de configuracion (760) se senala una vez en el flujo de bits.
  14. 14. El dispositivo de la reivindicacion 12, en el que el valor basado en que el uno o mas procesadores estan configurados para determinar uno de la pluralidad de modos de configuracion (760) se senala en el flujo de bits sobre una base por trama o por unidad de acceso.
  15. 15. Un medio de almacenamiento legible por ordenador no transitorio que presentan instrucciones almacenadas en el mismo que, al ejecutarse, hacen que uno o mas procesadores realicen el procedimiento segun cualquiera de las reivindicaciones 1 a 6.
ES14733873.5T 2013-05-29 2014-05-29 Compresión de las representaciones descompuestas de un campo sonoro Active ES2635327T3 (es)

Applications Claiming Priority (39)

Application Number Priority Date Filing Date Title
US201361828445P 2013-05-29 2013-05-29
US201361828615P 2013-05-29 2013-05-29
US201361828445P 2013-05-29
US201361828615P 2013-05-29
US201361829174P 2013-05-30 2013-05-30
US201361829182P 2013-05-30 2013-05-30
US201361829155P 2013-05-30 2013-05-30
US201361829182P 2013-05-30
US201361829174P 2013-05-30
US201361829155P 2013-05-30
US201361829846P 2013-05-31 2013-05-31
US201361829791P 2013-05-31 2013-05-31
US201361829791P 2013-05-31
US201361829846P 2013-05-31
US201361886605P 2013-10-03 2013-10-03
US201361886617P 2013-10-03 2013-10-03
US201361886605P 2013-10-03
US201361886617P 2013-10-03
US201361899041P 2013-11-01 2013-11-01
US201361899034P 2013-11-01 2013-11-01
US201361899041P 2013-11-01
US201361899034P 2013-11-01
US201461925126P 2014-01-08 2014-01-08
US201461925074P 2014-01-08 2014-01-08
US201461925158P 2014-01-08 2014-01-08
US201461925112P 2014-01-08 2014-01-08
US201461925112P 2014-01-08
US201461925074P 2014-01-08
US201461925126P 2014-01-08
US201461925158P 2014-01-08
US201461933706P 2014-01-30 2014-01-30
US201461933721P 2014-01-30 2014-01-30
US201461933721P 2014-01-30
US201461933706P 2014-01-30
US201462003515P 2014-05-27 2014-05-27
US201462003515P 2014-05-27
US201414289551 2014-05-28
US14/289,551 US9502044B2 (en) 2013-05-29 2014-05-28 Compression of decomposed representations of a sound field
PCT/US2014/040025 WO2014194090A1 (en) 2013-05-29 2014-05-29 Compression of decomposed representations of a sound field

Publications (1)

Publication Number Publication Date
ES2635327T3 true ES2635327T3 (es) 2017-10-03

Family

ID=51985123

Family Applications (4)

Application Number Title Priority Date Filing Date
ES16183136T Active ES2764384T3 (es) 2013-05-29 2014-05-29 Compresión de las representaciones descompuestas de un campo sonoro
ES14733873.5T Active ES2635327T3 (es) 2013-05-29 2014-05-29 Compresión de las representaciones descompuestas de un campo sonoro
ES14736510.0T Active ES2641175T3 (es) 2013-05-29 2014-05-29 Compresión de las representaciones descompuestas de un campo sonoro
ES16183135.9T Active ES2689566T3 (es) 2013-05-29 2014-05-29 Compresión de las representaciones descompuestas de un campo sonoro

Family Applications Before (1)

Application Number Title Priority Date Filing Date
ES16183136T Active ES2764384T3 (es) 2013-05-29 2014-05-29 Compresión de las representaciones descompuestas de un campo sonoro

Family Applications After (2)

Application Number Title Priority Date Filing Date
ES14736510.0T Active ES2641175T3 (es) 2013-05-29 2014-05-29 Compresión de las representaciones descompuestas de un campo sonoro
ES16183135.9T Active ES2689566T3 (es) 2013-05-29 2014-05-29 Compresión de las representaciones descompuestas de un campo sonoro

Country Status (20)

Country Link
US (15) US9883312B2 (es)
EP (8) EP3005360B1 (es)
JP (6) JP6121625B2 (es)
KR (11) KR102407554B1 (es)
CN (7) CN105264598B (es)
AU (1) AU2014274076B2 (es)
BR (1) BR112015030102B1 (es)
CA (1) CA2912810C (es)
ES (4) ES2764384T3 (es)
HK (1) HK1215752A1 (es)
HU (3) HUE033545T2 (es)
IL (1) IL242648B (es)
MY (1) MY174865A (es)
PH (1) PH12015502634B1 (es)
RU (1) RU2668059C2 (es)
SG (1) SG11201509462VA (es)
TW (2) TW201509200A (es)
UA (1) UA116140C2 (es)
WO (12) WO2014194106A1 (es)
ZA (1) ZA201509227B (es)

Families Citing this family (117)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2665208A1 (en) 2012-05-14 2013-11-20 Thomson Licensing Method and apparatus for compressing and decompressing a Higher Order Ambisonics signal representation
EP2743922A1 (en) * 2012-12-12 2014-06-18 Thomson Licensing Method and apparatus for compressing and decompressing a higher order ambisonics representation for a sound field
US9913064B2 (en) 2013-02-07 2018-03-06 Qualcomm Incorporated Mapping virtual speakers to physical speakers
US9609452B2 (en) 2013-02-08 2017-03-28 Qualcomm Incorporated Obtaining sparseness information for higher order ambisonic audio renderers
US10178489B2 (en) 2013-02-08 2019-01-08 Qualcomm Incorporated Signaling audio rendering information in a bitstream
US9883310B2 (en) 2013-02-08 2018-01-30 Qualcomm Incorporated Obtaining symmetry information for higher order ambisonic audio renderers
US9466305B2 (en) 2013-05-29 2016-10-11 Qualcomm Incorporated Performing positional analysis to code spherical harmonic coefficients
US9883312B2 (en) 2013-05-29 2018-01-30 Qualcomm Incorporated Transformed higher order ambisonics audio data
US9691406B2 (en) * 2013-06-05 2017-06-27 Dolby Laboratories Licensing Corporation Method for encoding audio signals, apparatus for encoding audio signals, method for decoding audio signals and apparatus for decoding audio signals
US9502045B2 (en) 2014-01-30 2016-11-22 Qualcomm Incorporated Coding independent frames of ambient higher-order ambisonic coefficients
US9922656B2 (en) 2014-01-30 2018-03-20 Qualcomm Incorporated Transitioning of ambient higher-order ambisonic coefficients
US20150243292A1 (en) 2014-02-25 2015-08-27 Qualcomm Incorporated Order format signaling for higher-order ambisonic audio data
US10412522B2 (en) 2014-03-21 2019-09-10 Qualcomm Incorporated Inserting audio channels into descriptions of soundfields
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
US9620137B2 (en) 2014-05-16 2017-04-11 Qualcomm Incorporated Determining between scalar and vector quantization in higher order ambisonic coefficients
US10770087B2 (en) 2014-05-16 2020-09-08 Qualcomm Incorporated Selecting codebooks for coding vectors decomposed from higher-order ambisonic audio signals
US9959876B2 (en) 2014-05-16 2018-05-01 Qualcomm Incorporated Closed loop quantization of higher order ambisonic coefficients
US9852737B2 (en) 2014-05-16 2017-12-26 Qualcomm Incorporated Coding vectors decomposed from higher-order ambisonics audio signals
US10134403B2 (en) 2014-05-16 2018-11-20 Qualcomm Incorporated Crossfading between higher order ambisonic signals
US20150332682A1 (en) 2014-05-16 2015-11-19 Qualcomm Incorporated Spatial relation coding for higher order ambisonic coefficients
US9847087B2 (en) 2014-05-16 2017-12-19 Qualcomm Incorporated Higher order ambisonics signal compression
US20150347392A1 (en) * 2014-05-29 2015-12-03 International Business Machines Corporation Real-time filtering of massive time series sets for social media trends
CN106465029B (zh) 2014-05-30 2018-05-08 高通股份有限公司 用于渲染高阶立体混响系数及产生位流的装置和方法
EP2960903A1 (en) * 2014-06-27 2015-12-30 Thomson Licensing Method and apparatus for determining for the compression of an HOA data frame representation a lowest integer number of bits required for representing non-differential gain values
US9838819B2 (en) 2014-07-02 2017-12-05 Qualcomm Incorporated Reducing correlation between higher order ambisonic (HOA) background channels
US9536531B2 (en) * 2014-08-01 2017-01-03 Qualcomm Incorporated Editing of higher-order ambisonic audio data
US9847088B2 (en) 2014-08-29 2017-12-19 Qualcomm Incorporated Intermediate compression for higher order ambisonic audio data
US20160093308A1 (en) 2014-09-26 2016-03-31 Qualcomm Incorporated Predictive vector quantization techniques in a higher order ambisonics (hoa) framework
US9747910B2 (en) 2014-09-26 2017-08-29 Qualcomm Incorporated Switching between predictive and non-predictive quantization techniques in a higher order ambisonics (HOA) framework
US9875745B2 (en) 2014-10-07 2018-01-23 Qualcomm Incorporated Normalization of ambient higher order ambisonic audio data
US9940937B2 (en) 2014-10-10 2018-04-10 Qualcomm Incorporated Screen related adaptation of HOA content
US10140996B2 (en) 2014-10-10 2018-11-27 Qualcomm Incorporated Signaling layers for scalable coding of higher order ambisonic audio data
US9984693B2 (en) 2014-10-10 2018-05-29 Qualcomm Incorporated Signaling channels for scalable coding of higher order ambisonic audio data
CN106303897A (zh) 2015-06-01 2017-01-04 杜比实验室特许公司 处理基于对象的音频信号
CN113242448B (zh) * 2015-06-02 2023-07-14 索尼公司 发送装置和方法、媒体处理装置和方法以及接收装置
US10468037B2 (en) 2015-07-30 2019-11-05 Dolby Laboratories Licensing Corporation Method and apparatus for generating from an HOA signal representation a mezzanine HOA signal representation
JP6501259B2 (ja) * 2015-08-04 2019-04-17 本田技研工業株式会社 音声処理装置及び音声処理方法
US10693936B2 (en) * 2015-08-25 2020-06-23 Qualcomm Incorporated Transporting coded audio data
US20170098452A1 (en) * 2015-10-02 2017-04-06 Dts, Inc. Method and system for audio processing of dialog, music, effect and height objects
US10249312B2 (en) 2015-10-08 2019-04-02 Qualcomm Incorporated Quantization of spatial vectors
IL276591B2 (en) 2015-10-08 2023-09-01 Dolby Int Ab Layered coding for voice or compressed sound field representations
US9961475B2 (en) 2015-10-08 2018-05-01 Qualcomm Incorporated Conversion from object-based audio to HOA
MX2018004166A (es) 2015-10-08 2018-08-01 Dolby Int Ab Codificacion en capas y estructuras de datos para representaciones comprimidas, ambisonicas de mayor orden de sonido o campo de sonido.
US9961467B2 (en) 2015-10-08 2018-05-01 Qualcomm Incorporated Conversion from channel-based audio to HOA
US9959880B2 (en) 2015-10-14 2018-05-01 Qualcomm Incorporated Coding higher-order ambisonic coefficients during multiple transitions
US10070094B2 (en) 2015-10-14 2018-09-04 Qualcomm Incorporated Screen related adaptation of higher order ambisonic (HOA) content
US10600425B2 (en) * 2015-11-17 2020-03-24 Dolby Laboratories Licensing Corporation Method and apparatus for converting a channel-based 3D audio signal to an HOA audio signal
EP3174316B1 (en) * 2015-11-27 2020-02-26 Nokia Technologies Oy Intelligent audio rendering
EP3188504B1 (en) 2016-01-04 2020-07-29 Harman Becker Automotive Systems GmbH Multi-media reproduction for a multiplicity of recipients
WO2017119318A1 (ja) * 2016-01-08 2017-07-13 ソニー株式会社 音声処理装置および方法、並びにプログラム
BR112018007276A2 (pt) 2016-03-15 2018-10-30 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e. V. aparelho, método ou programa de computador para gerar uma descrição de campo de som
CN109526234B (zh) * 2016-06-30 2023-09-01 杜塞尔多夫华为技术有限公司 对多声道音频信号进行编码和解码的装置和方法
KR102561371B1 (ko) * 2016-07-11 2023-08-01 삼성전자주식회사 디스플레이장치와, 기록매체
WO2018064528A1 (en) * 2016-09-29 2018-04-05 The Trustees Of Princeton University Ambisonic navigation of sound fields from an array of microphones
CN107945810B (zh) * 2016-10-13 2021-12-14 杭州米谟科技有限公司 用于编码和解码hoa或多声道数据的方法和装置
US20180107926A1 (en) * 2016-10-19 2018-04-19 Samsung Electronics Co., Ltd. Method and apparatus for neural network quantization
US11321609B2 (en) 2016-10-19 2022-05-03 Samsung Electronics Co., Ltd Method and apparatus for neural network quantization
US20180124540A1 (en) * 2016-10-31 2018-05-03 Google Llc Projection-based audio coding
CN108206021B (zh) * 2016-12-16 2020-12-18 南京青衿信息科技有限公司 一种后向兼容式三维声编码器、解码器及其编解码方法
KR20190118212A (ko) * 2017-01-24 2019-10-18 주식회사 알티스트 차량 상태 모니터링 시스템 및 방법
US10455321B2 (en) 2017-04-28 2019-10-22 Qualcomm Incorporated Microphone configurations
US9820073B1 (en) 2017-05-10 2017-11-14 Tls Corp. Extracting a common signal from multiple audio signals
US11277705B2 (en) 2017-05-15 2022-03-15 Dolby Laboratories Licensing Corporation Methods, systems and apparatus for conversion of spatial audio format(s) to speaker signals
US10390166B2 (en) * 2017-05-31 2019-08-20 Qualcomm Incorporated System and method for mixing and adjusting multi-input ambisonics
AU2018298874C1 (en) 2017-07-14 2023-10-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Concept for generating an enhanced sound field description or a modified sound field description using a multi-point sound field description
WO2019012133A1 (en) 2017-07-14 2019-01-17 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. CONCEPT OF GENERATING AN ENHANCED AUDIO FIELD DESCRIPTION OR A MODIFIED AUDIO FIELD DESCRIPTION USING A MULTILAYER DESCRIPTION
KR102568365B1 (ko) 2017-07-14 2023-08-18 프라운 호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 깊이-확장형 DirAC 기술 또는 기타 기술을 이용하여 증강된 음장 묘사 또는 수정된 음장 묘사를 생성하기 위한 개념
US10075802B1 (en) 2017-08-08 2018-09-11 Qualcomm Incorporated Bitrate allocation for higher order ambisonic audio data
US10674301B2 (en) * 2017-08-25 2020-06-02 Google Llc Fast and memory efficient encoding of sound objects using spherical harmonic symmetries
US10764684B1 (en) 2017-09-29 2020-09-01 Katherine A. Franco Binaural audio using an arbitrarily shaped microphone array
US10972851B2 (en) * 2017-10-05 2021-04-06 Qualcomm Incorporated Spatial relation coding of higher order ambisonic coefficients
CN111164679B (zh) 2017-10-05 2024-04-09 索尼公司 编码装置和方法、解码装置和方法以及程序
SG11202004389VA (en) * 2017-11-17 2020-06-29 Fraunhofer Ges Forschung Apparatus and method for encoding or decoding directional audio coding parameters using quantization and entropy coding
US10595146B2 (en) 2017-12-21 2020-03-17 Verizon Patent And Licensing Inc. Methods and systems for extracting location-diffused ambient sound from a real-world scene
EP3506080B1 (en) * 2017-12-27 2023-06-07 Nokia Technologies Oy Audio scene processing
US11409923B1 (en) * 2018-01-22 2022-08-09 Ansys, Inc Systems and methods for generating reduced order models
FR3079706B1 (fr) * 2018-03-29 2021-06-04 Inst Mines Telecom Procede et systeme de diffusion d'un flux audio multicanal a des terminaux de spectateurs assistant a un evenement sportif
GB2572650A (en) * 2018-04-06 2019-10-09 Nokia Technologies Oy Spatial audio parameters and associated spatial audio playback
US10672405B2 (en) * 2018-05-07 2020-06-02 Google Llc Objective quality metrics for ambisonic spatial audio
CN108831494B (zh) * 2018-05-29 2022-07-19 平安科技(深圳)有限公司 语音增强方法、装置、计算机设备及存储介质
GB2574873A (en) * 2018-06-21 2019-12-25 Nokia Technologies Oy Determination of spatial audio parameter encoding and associated decoding
US10999693B2 (en) 2018-06-25 2021-05-04 Qualcomm Incorporated Rendering different portions of audio data using different renderers
US11798569B2 (en) 2018-10-02 2023-10-24 Qualcomm Incorporated Flexible rendering of audio data
WO2020084170A1 (en) * 2018-10-26 2020-04-30 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Directional loudness map based audio processing
JP7213364B2 (ja) 2018-10-31 2023-01-26 ノキア テクノロジーズ オーユー 空間オーディオパラメータの符号化及び対応する復号の決定
GB2578625A (en) * 2018-11-01 2020-05-20 Nokia Technologies Oy Apparatus, methods and computer programs for encoding spatial metadata
JP7311602B2 (ja) * 2018-12-07 2023-07-19 フラウンホッファー-ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 低次、中次、高次成分生成器を用いたDirACベースの空間音声符号化に関する符号化、復号化、シーン処理および他の手順を行う装置、方法およびコンピュータプログラム
FR3090179B1 (fr) * 2018-12-14 2021-04-09 Fond B Com Procédé d’interpolation d’un champ sonore, produit programme d’ordinateur et dispositif correspondants.
AU2019409705B2 (en) * 2018-12-19 2023-04-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for reproducing a spatially extended sound source or apparatus and method for generating a bitstream from a spatially extended sound source
KR102277952B1 (ko) * 2019-01-11 2021-07-19 브레인소프트주식회사 디제이 변환에 의한 주파수 추출 방법
EP3706119A1 (fr) * 2019-03-05 2020-09-09 Orange Codage audio spatialisé avec interpolation et quantification de rotations
GB2582748A (en) * 2019-03-27 2020-10-07 Nokia Technologies Oy Sound field related rendering
RU2722223C1 (ru) * 2019-04-16 2020-05-28 Вадим Иванович Филиппов Способ сжатия многомерных образов путем приближения элементов пространств Lp{ (0, 1]m} , p больше или равно 1 и меньше бесконечности, по системам сжатий и сдвигов одной функции рядами типа Фурье с целыми коэффциентами и целочисленное разложение элементов многомодулярных пространств
US11538489B2 (en) * 2019-06-24 2022-12-27 Qualcomm Incorporated Correlating scene-based audio data for psychoacoustic audio coding
US20200402523A1 (en) * 2019-06-24 2020-12-24 Qualcomm Incorporated Psychoacoustic audio coding of ambisonic audio data
GB2586214A (en) * 2019-07-31 2021-02-17 Nokia Technologies Oy Quantization of spatial audio direction parameters
JP7270836B2 (ja) 2019-08-08 2023-05-10 ブームクラウド 360 インコーポレイテッド 音響心理学的周波数範囲拡張のための非線形適応フィルタバンク
CN114303392A (zh) * 2019-08-30 2022-04-08 杜比实验室特许公司 多声道音频信号的声道标识
GB2587196A (en) * 2019-09-13 2021-03-24 Nokia Technologies Oy Determination of spatial audio parameter encoding and associated decoding
US11430451B2 (en) * 2019-09-26 2022-08-30 Apple Inc. Layered coding of audio with discrete objects
CN110708647B (zh) * 2019-10-29 2020-12-25 扆亮海 一种球面分配引导的数据匹配立体声场重构方法
US11636866B2 (en) * 2020-03-24 2023-04-25 Qualcomm Incorporated Transform ambisonic coefficients using an adaptive network
CN113593585A (zh) * 2020-04-30 2021-11-02 华为技术有限公司 音频信号的比特分配方法和装置
GB2595871A (en) * 2020-06-09 2021-12-15 Nokia Technologies Oy The reduction of spatial audio parameters
KR20230003546A (ko) * 2020-08-28 2023-01-06 구글 엘엘씨 오디오 코덱의 감각 불협화음 및 사운드 정위 큐의 불변성 유지
FR3113993B1 (fr) * 2020-09-09 2023-02-24 Arkamys Procédé de spatialisation sonore
WO2022066313A1 (en) * 2020-09-25 2022-03-31 Apple Inc. Higher order ambisonics encoding and decoding
CN112327398B (zh) * 2020-11-20 2022-03-08 中国科学院上海光学精密机械研究所 一种矢量补偿体布拉格光栅角度偏转器的制备方法
US11743670B2 (en) 2020-12-18 2023-08-29 Qualcomm Incorporated Correlation-based rendering with multiple distributed streams accounting for an occlusion for six degree of freedom applications
US11521623B2 (en) 2021-01-11 2022-12-06 Bank Of America Corporation System and method for single-speaker identification in a multi-speaker environment on a low-frequency audio recording
CN113518299B (zh) * 2021-04-30 2022-06-03 电子科技大学 一种改进的源分量及环境分量提取方法、设备及计算机可读存储介质
CN113345448B (zh) * 2021-05-12 2022-08-05 北京大学 一种基于独立成分分析的hoa信号压缩方法
CN115376527A (zh) * 2021-05-17 2022-11-22 华为技术有限公司 三维音频信号编码方法、装置和编码器
CN113378063B (zh) * 2021-07-09 2023-07-28 小红书科技有限公司 一种基于滑动谱分解确定内容多样性的方法和内容排序方法
WO2023008831A1 (ko) * 2021-07-27 2023-02-02 브레인소프트 주식회사 해석적 방법에 기반한 디제이 변환 주파수 추출 방법
US20230051841A1 (en) * 2021-07-30 2023-02-16 Qualcomm Incorporated Xr rendering for 3d audio content and audio codec
CN113647978B (zh) * 2021-08-18 2023-11-21 重庆大学 一种带有截断因子的高鲁棒性符号相干系数超声成像方法

Family Cites Families (209)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1159034B (it) 1983-06-10 1987-02-25 Cselt Centro Studi Lab Telecom Sintetizzatore vocale
US4972344A (en) 1986-05-30 1990-11-20 Finial Technology, Inc. Dual beam optical turntable
US5012518A (en) 1989-07-26 1991-04-30 Itt Corporation Low-bit-rate speech coder using LPC data reduction processing
US5363050A (en) 1990-08-31 1994-11-08 Guo Wendy W Quantitative dielectric imaging system
US5583962A (en) 1991-01-08 1996-12-10 Dolby Laboratories Licensing Corporation Encoder/decoder for multidimensional sound fields
US5757927A (en) 1992-03-02 1998-05-26 Trifield Productions Ltd. Surround sound apparatus
JP2626492B2 (ja) 1993-09-13 1997-07-02 日本電気株式会社 ベクトル量子化装置
US5790759A (en) 1995-09-19 1998-08-04 Lucent Technologies Inc. Perceptual noise masking measure based on synthesis filter frequency response
US5819215A (en) 1995-10-13 1998-10-06 Dobson; Kurt Method and apparatus for wavelet based data compression having adaptive bit rate control for compression of digital audio or other sensory data
JP3707116B2 (ja) 1995-10-26 2005-10-19 ソニー株式会社 音声復号化方法及び装置
US5956674A (en) 1995-12-01 1999-09-21 Digital Theater Systems, Inc. Multi-channel predictive subband audio coder using psychoacoustic adaptive bit allocation in frequency, time and over the multiple channels
JP3849210B2 (ja) 1996-09-24 2006-11-22 ヤマハ株式会社 音声符号化復号方式
US5821887A (en) 1996-11-12 1998-10-13 Intel Corporation Method and apparatus for decoding variable length codes
US6167375A (en) 1997-03-17 2000-12-26 Kabushiki Kaisha Toshiba Method for encoding and decoding a speech signal including background noise
US6072878A (en) 1997-09-24 2000-06-06 Sonic Solutions Multi-channel surround sound mastering and reproduction techniques that preserve spatial harmonics
US6263312B1 (en) 1997-10-03 2001-07-17 Alaris, Inc. Audio compression and decompression employing subband decomposition of residual signal and distortion reduction
JP3211762B2 (ja) 1997-12-12 2001-09-25 日本電気株式会社 音声及び音楽符号化方式
AUPP272698A0 (en) 1998-03-31 1998-04-23 Lake Dsp Pty Limited Soundfield playback from a single speaker system
EP1018840A3 (en) 1998-12-08 2005-12-21 Canon Kabushiki Kaisha Digital receiving apparatus and method
US6418408B1 (en) 1999-04-05 2002-07-09 Hughes Electronics Corporation Frequency domain interpolative speech codec system
US6370502B1 (en) 1999-05-27 2002-04-09 America Online, Inc. Method and system for reduction of quantization-induced block-discontinuities and general purpose audio codec
US6782360B1 (en) 1999-09-22 2004-08-24 Mindspeed Technologies, Inc. Gain quantization for a CELP speech coder
US20020049586A1 (en) * 2000-09-11 2002-04-25 Kousuke Nishio Audio encoder, audio decoder, and broadcasting system
JP2002094989A (ja) 2000-09-14 2002-03-29 Pioneer Electronic Corp ビデオ信号符号化装置及びビデオ信号符号化方法
US7660424B2 (en) 2001-02-07 2010-02-09 Dolby Laboratories Licensing Corporation Audio channel spatial translation
US20020169735A1 (en) 2001-03-07 2002-11-14 David Kil Automatic mapping from data to preprocessing algorithms
GB2379147B (en) 2001-04-18 2003-10-22 Univ York Sound processing
US20030147539A1 (en) 2002-01-11 2003-08-07 Mh Acoustics, Llc, A Delaware Corporation Audio system based on at least second-order eigenbeams
US7031894B2 (en) 2002-01-16 2006-04-18 Timbre Technologies, Inc. Generating a library of simulated-diffraction signals and hypothetical profiles of periodic gratings
US7262770B2 (en) 2002-03-21 2007-08-28 Microsoft Corporation Graphics image rendering with radiance self-transfer for low-frequency lighting environments
US20030223603A1 (en) * 2002-05-28 2003-12-04 Beckman Kenneth Oren Sound space replication
US8160269B2 (en) 2003-08-27 2012-04-17 Sony Computer Entertainment Inc. Methods and apparatuses for adjusting a listening area for capturing sounds
EP2282310B1 (en) 2002-09-04 2012-01-25 Microsoft Corporation Entropy coding by adapting coding between level and run-length/level modes
FR2844894B1 (fr) * 2002-09-23 2004-12-17 Remy Henri Denis Bruno Procede et systeme de traitement d'une representation d'un champ acoustique
US7330812B2 (en) * 2002-10-04 2008-02-12 National Research Council Of Canada Method and apparatus for transmitting an audio stream having additional payload in a hidden sub-channel
FR2847376B1 (fr) 2002-11-19 2005-02-04 France Telecom Procede de traitement de donnees sonores et dispositif d'acquisition sonore mettant en oeuvre ce procede
US6961696B2 (en) 2003-02-07 2005-11-01 Motorola, Inc. Class quantization for distributed speech recognition
FI115324B (fi) 2003-03-14 2005-04-15 Elekta Neuromag Oy Menetelmä ja järjestelmä monikanavaisen mittaussignaalin käsittelemiseksi
US7558393B2 (en) 2003-03-18 2009-07-07 Miller Iii Robert E System and method for compatible 2D/3D (full sphere with height) surround sound reproduction
US7920709B1 (en) 2003-03-25 2011-04-05 Robert Hickling Vector sound-intensity probes operating in a half-space
JP2005086486A (ja) 2003-09-09 2005-03-31 Alpine Electronics Inc オーディオ装置およびオーディオ処理方法
US7433815B2 (en) 2003-09-10 2008-10-07 Dilithium Networks Pty Ltd. Method and apparatus for voice transcoding between variable rate coders
US7447317B2 (en) 2003-10-02 2008-11-04 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V Compatible multi-channel coding/decoding by weighting the downmix channel
KR100556911B1 (ko) 2003-12-05 2006-03-03 엘지전자 주식회사 무선 동영상 스트리밍 서비스를 위한 동영상 데이터의 구조
KR100629997B1 (ko) 2004-02-26 2006-09-27 엘지전자 주식회사 오디오 신호의 인코딩 방법
US7283634B2 (en) 2004-08-31 2007-10-16 Dts, Inc. Method of mixing audio channels using correlated outputs
US7630902B2 (en) 2004-09-17 2009-12-08 Digital Rise Technology Co., Ltd. Apparatus and methods for digital audio coding using codebook application ranges
FR2880755A1 (fr) 2005-01-10 2006-07-14 France Telecom Procede et dispositif d'individualisation de hrtfs par modelisation
KR100636229B1 (ko) 2005-01-14 2006-10-19 학교법인 성균관대학 신축형 부호화를 위한 적응적 엔트로피 부호화 및 복호화방법과 그 장치
JP5012504B2 (ja) 2005-03-30 2012-08-29 アイシン・エィ・ダブリュ株式会社 車両用ナビゲーションシステム
WO2006122146A2 (en) 2005-05-10 2006-11-16 William Marsh Rice University Method and apparatus for distributed compressed sensing
JP2008542816A (ja) * 2005-05-26 2008-11-27 エルジー エレクトロニクス インコーポレイティド オーディオ信号の符号化及び復号化方法
ATE378793T1 (de) 2005-06-23 2007-11-15 Akg Acoustics Gmbh Methode zur modellierung eines mikrofons
US7599840B2 (en) * 2005-07-15 2009-10-06 Microsoft Corporation Selectively using multiple entropy models in adaptive coding and decoding
EP1943642A4 (en) 2005-09-27 2009-07-01 Lg Electronics Inc METHOD AND DEVICE FOR CODING / DECODING A MULTI-CHANNEL AUDIO SIGNAL
US8510105B2 (en) 2005-10-21 2013-08-13 Nokia Corporation Compression and decompression of data vectors
WO2007048900A1 (fr) * 2005-10-27 2007-05-03 France Telecom Individualisation de hrtfs utilisant une modelisation par elements finis couplee a un modele correctif
US8190425B2 (en) 2006-01-20 2012-05-29 Microsoft Corporation Complex cross-correlation parameters for multi-channel audio
CN101385077B (zh) 2006-02-07 2012-04-11 Lg电子株式会社 用于编码/解码信号的装置和方法
EP1853092B1 (en) 2006-05-04 2011-10-05 LG Electronics, Inc. Enhancing stereo audio with remix capability
US8712061B2 (en) 2006-05-17 2014-04-29 Creative Technology Ltd Phase-amplitude 3-D stereo encoder and decoder
US8379868B2 (en) 2006-05-17 2013-02-19 Creative Technology Ltd Spatial audio coding based on universal spatial cues
US8345899B2 (en) 2006-05-17 2013-01-01 Creative Technology Ltd Phase-amplitude matrixed surround decoder
US20080004729A1 (en) * 2006-06-30 2008-01-03 Nokia Corporation Direct encoding into a directional audio coding format
US7877253B2 (en) 2006-10-06 2011-01-25 Qualcomm Incorporated Systems, methods, and apparatus for frame erasure recovery
DE102006053919A1 (de) 2006-10-11 2008-04-17 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Erzeugen einer Anzahl von Lautsprechersignalen für ein Lautsprecher-Array, das einen Wiedergaberaum definiert
US7966175B2 (en) 2006-10-18 2011-06-21 Polycom, Inc. Fast lattice vector quantization
WO2008063035A1 (en) 2006-11-24 2008-05-29 Lg Electronics Inc. Method for encoding and decoding object-based audio signal and apparatus thereof
CA2670864C (en) * 2006-12-07 2015-09-29 Lg Electronics Inc. A method and an apparatus for processing an audio signal
US7663623B2 (en) 2006-12-18 2010-02-16 Microsoft Corporation Spherical harmonics scaling
JP2008227946A (ja) 2007-03-13 2008-09-25 Toshiba Corp 画像復号装置
US8290167B2 (en) 2007-03-21 2012-10-16 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Method and apparatus for conversion between multi-channel audio formats
US8908873B2 (en) 2007-03-21 2014-12-09 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Method and apparatus for conversion between multi-channel audio formats
US9015051B2 (en) 2007-03-21 2015-04-21 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Reconstruction of audio channels with direction parameters indicating direction of origin
JP5686594B2 (ja) 2007-04-12 2015-03-18 トムソン ライセンシングThomson Licensing スケーラブル・ビデオ符号化のためのビデオ・ユーザビリティ情報(vui)用の方法及び装置
US8180062B2 (en) 2007-05-30 2012-05-15 Nokia Corporation Spatial sound zooming
US20080298610A1 (en) * 2007-05-30 2008-12-04 Nokia Corporation Parameter Space Re-Panning for Spatial Audio
JP5291096B2 (ja) * 2007-06-08 2013-09-18 エルジー エレクトロニクス インコーポレイティド オーディオ信号処理方法及び装置
US7885819B2 (en) 2007-06-29 2011-02-08 Microsoft Corporation Bitstream syntax for multi-process audio decoding
WO2009007639A1 (fr) 2007-07-03 2009-01-15 France Telecom Quantification apres transformation lineaire combinant les signaux audio d'une scene sonore, codeur associe
ATE479182T1 (de) 2007-07-30 2010-09-15 Global Ip Solutions Gips Ab Audiodekoder mit geringer verzögerung
US8463615B2 (en) 2007-07-30 2013-06-11 Google Inc. Low-delay audio coder
WO2009033288A1 (en) 2007-09-11 2009-03-19 Voiceage Corporation Method and device for fast algebraic codebook search in speech and audio coding
CN101884065B (zh) 2007-10-03 2013-07-10 创新科技有限公司 用于双耳再现和格式转换的空间音频分析和合成的方法
US8509454B2 (en) * 2007-11-01 2013-08-13 Nokia Corporation Focusing on a portion of an audio scene for an audio signal
WO2009067741A1 (en) 2007-11-27 2009-06-04 Acouity Pty Ltd Bandwidth compression of parametric soundfield representations for transmission and storage
WO2009090876A1 (ja) 2008-01-16 2009-07-23 Panasonic Corporation ベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法
EP2094032A1 (en) 2008-02-19 2009-08-26 Deutsche Thomson OHG Audio signal, method and apparatus for encoding or transmitting the same and method and apparatus for processing the same
AU2009220321B2 (en) 2008-03-03 2011-09-22 Intellectual Discovery Co., Ltd. Method and apparatus for processing audio signal
EP2296145B1 (en) 2008-03-10 2019-05-22 Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. Device and method for manipulating an audio signal having a transient event
US8219409B2 (en) 2008-03-31 2012-07-10 Ecole Polytechnique Federale De Lausanne Audio wave field encoding
CN102077108B (zh) 2008-04-28 2015-02-25 康奈尔大学 分子mri中的磁敏度精确量化
US8184298B2 (en) 2008-05-21 2012-05-22 The Board Of Trustees Of The University Of Illinois Spatial light interference microscopy and fourier transform light scattering for cell and tissue characterization
JP5383676B2 (ja) 2008-05-30 2014-01-08 パナソニック株式会社 符号化装置、復号装置およびこれらの方法
US8848481B2 (en) 2008-07-08 2014-09-30 Bruel & Kjaer Sound & Vibration Measurement A/S Reconstructing an acoustic field
EP2144230A1 (en) 2008-07-11 2010-01-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Low bitrate audio encoding/decoding scheme having cascaded switches
JP5697301B2 (ja) 2008-10-01 2015-04-08 株式会社Nttドコモ 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、動画像符号化プログラム、動画像復号プログラム、及び動画像符号化・復号システム
GB0817950D0 (en) 2008-10-01 2008-11-05 Univ Southampton Apparatus and method for sound reproduction
US8207890B2 (en) 2008-10-08 2012-06-26 Qualcomm Atheros, Inc. Providing ephemeris data and clock corrections to a satellite navigation system receiver
US8391500B2 (en) 2008-10-17 2013-03-05 University Of Kentucky Research Foundation Method and system for creating three-dimensional spatial audio
FR2938688A1 (fr) 2008-11-18 2010-05-21 France Telecom Codage avec mise en forme du bruit dans un codeur hierarchique
ES2733878T3 (es) 2008-12-15 2019-12-03 Orange Codificación mejorada de señales de audio digitales multicanales
WO2010076460A1 (fr) 2008-12-15 2010-07-08 France Telecom Codage perfectionne de signaux audionumériques multicanaux
US8332229B2 (en) 2008-12-30 2012-12-11 Stmicroelectronics Asia Pacific Pte. Ltd. Low complexity MPEG encoding for surround sound recordings
EP2205007B1 (en) * 2008-12-30 2019-01-09 Dolby International AB Method and apparatus for three-dimensional acoustic field encoding and optimal reconstruction
WO2010086342A1 (en) 2009-01-28 2010-08-05 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder, audio decoder, method for encoding an input audio information, method for decoding an input audio information and computer program using improved coding tables
GB2467534B (en) 2009-02-04 2014-12-24 Richard Furse Sound system
JP5163545B2 (ja) 2009-03-05 2013-03-13 富士通株式会社 オーディオ復号装置及びオーディオ復号方法
EP2237270B1 (en) 2009-03-30 2012-07-04 Nuance Communications, Inc. A method for determining a noise reference signal for noise compensation and/or noise reduction
GB0906269D0 (en) 2009-04-09 2009-05-20 Ntnu Technology Transfer As Optimal modal beamformer for sensor arrays
US8629600B2 (en) 2009-05-08 2014-01-14 University Of Utah Research Foundation Annular thermoacoustic energy converter
US8570291B2 (en) 2009-05-21 2013-10-29 Panasonic Corporation Tactile processing device
ES2524428T3 (es) * 2009-06-24 2014-12-09 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decodificador de señales de audio, procedimiento para decodificar una señal de audio y programa de computación que utiliza etapas en cascada de procesamiento de objetos de audio
EP2285139B1 (en) 2009-06-25 2018-08-08 Harpex Ltd. Device and method for converting spatial audio signal
EP2486561B1 (en) 2009-10-07 2016-03-30 The University Of Sydney Reconstruction of a recorded sound field
AU2009353896B2 (en) 2009-10-15 2013-05-23 Widex A/S Hearing aid with audio codec and method
JP5746974B2 (ja) 2009-11-13 2015-07-08 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 符号化装置、復号装置およびこれらの方法
JP5427565B2 (ja) * 2009-11-24 2014-02-26 株式会社日立製作所 Mri装置用磁場調整
EP2510515B1 (en) 2009-12-07 2014-03-19 Dolby Laboratories Licensing Corporation Decoding of multichannel audio encoded bit streams using adaptive hybrid transformation
EP2346028A1 (en) * 2009-12-17 2011-07-20 Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. An apparatus and a method for converting a first parametric spatial audio signal into a second parametric spatial audio signal
CN102104452B (zh) 2009-12-22 2013-09-11 华为技术有限公司 信道状态信息反馈方法、信道状态信息获得方法及设备
TWI443646B (zh) 2010-02-18 2014-07-01 Dolby Lab Licensing Corp 音訊解碼器及使用有效降混之解碼方法
US9058803B2 (en) 2010-02-26 2015-06-16 Orange Multichannel audio stream compression
ES2461183T3 (es) 2010-03-10 2014-05-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V Decodificador de señales de audio, codificador de señales de audio, procedimiento para decodificar una señal de audio, método para codificar una señal de audio y programa de ordenador que utilizan una adaptación dependiente de la frecuencia de un contexto de codificación
ES2472456T3 (es) 2010-03-26 2014-07-01 Thomson Licensing Método y dispositivo para decodificar una representación de un campo ac�stico de audio para reproducción de audio
EP2375410B1 (en) 2010-03-29 2017-11-22 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. A spatial audio processor and a method for providing spatial parameters based on an acoustic input signal
JP5850216B2 (ja) 2010-04-13 2016-02-03 ソニー株式会社 信号処理装置および方法、符号化装置および方法、復号装置および方法、並びにプログラム
TW201214415A (en) 2010-05-28 2012-04-01 Fraunhofer Ges Forschung Low-delay unified speech and audio codec
US9053697B2 (en) 2010-06-01 2015-06-09 Qualcomm Incorporated Systems, methods, devices, apparatus, and computer program products for audio equalization
US9357229B2 (en) 2010-07-28 2016-05-31 Qualcomm Incorporated Coding motion vectors in video coding
US9208792B2 (en) 2010-08-17 2015-12-08 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for noise injection
NZ587483A (en) 2010-08-20 2012-12-21 Ind Res Ltd Holophonic speaker system with filters that are pre-configured based on acoustic transfer functions
WO2012025580A1 (en) * 2010-08-27 2012-03-01 Sonicemotion Ag Method and device for enhanced sound field reproduction of spatially encoded audio input signals
CN101977349A (zh) 2010-09-29 2011-02-16 华南理工大学 Ambisonic声重发系统解码的优化改进方法
US20120093323A1 (en) 2010-10-14 2012-04-19 Samsung Electronics Co., Ltd. Audio system and method of down mixing audio signals using the same
US9084049B2 (en) 2010-10-14 2015-07-14 Dolby Laboratories Licensing Corporation Automatic equalization using adaptive frequency-domain filtering and dynamic fast convolution
US9552840B2 (en) 2010-10-25 2017-01-24 Qualcomm Incorporated Three-dimensional sound capturing and reproducing with multi-microphones
EP2450880A1 (en) 2010-11-05 2012-05-09 Thomson Licensing Data structure for Higher Order Ambisonics audio data
EP2451196A1 (en) 2010-11-05 2012-05-09 Thomson Licensing Method and apparatus for generating and for decoding sound field data including ambisonics sound field data of an order higher than three
KR101401775B1 (ko) 2010-11-10 2014-05-30 한국전자통신연구원 스피커 어레이 기반 음장 합성을 이용한 음장 재생 장치 및 방법
US9448289B2 (en) 2010-11-23 2016-09-20 Cornell University Background field removal method for MRI using projection onto dipole fields
ES2643163T3 (es) 2010-12-03 2017-11-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparato y procedimiento para codificación de audio espacial basada en geometría
EP2464145A1 (en) * 2010-12-10 2012-06-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for decomposing an input signal using a downmixer
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
US20120163622A1 (en) 2010-12-28 2012-06-28 Stmicroelectronics Asia Pacific Pte Ltd Noise detection and reduction in audio devices
CA2823907A1 (en) 2011-01-06 2012-07-12 Hank Risan Synthetic simulation of a media recording
US9008176B2 (en) 2011-01-22 2015-04-14 Qualcomm Incorporated Combined reference picture list construction for video coding
US20120189052A1 (en) 2011-01-24 2012-07-26 Qualcomm Incorporated Signaling quantization parameter changes for coded units in high efficiency video coding (hevc)
CN103339670B (zh) * 2011-02-03 2015-09-09 瑞典爱立信有限公司 确定多通道音频信号的通道间时间差
US9165558B2 (en) 2011-03-09 2015-10-20 Dts Llc System for dynamically creating and rendering audio objects
MX2013012301A (es) 2011-04-21 2013-12-06 Samsung Electronics Co Ltd Aparato para cuantificar coeficientes de codificacion predictiva lineal, aparato de codificacion de sonido, aparato para decuantificar coeficientes de codificacion predictiva lineal, aparato de decodificacion de sonido y dispositivo electronico para los mismos.
EP2541547A1 (en) 2011-06-30 2013-01-02 Thomson Licensing Method and apparatus for changing the relative positions of sound objects contained within a higher-order ambisonics representation
TWI651005B (zh) * 2011-07-01 2019-02-11 杜比實驗室特許公司 用於適應性音頻信號的產生、譯碼與呈現之系統與方法
US8548803B2 (en) 2011-08-08 2013-10-01 The Intellisis Corporation System and method of processing a sound signal including transforming the sound signal into a frequency-chirp domain
US9641951B2 (en) 2011-08-10 2017-05-02 The Johns Hopkins University System and method for fast binaural rendering of complex acoustic scenes
EP2560161A1 (en) 2011-08-17 2013-02-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Optimal mixing matrices and usage of decorrelators in spatial audio processing
EP2592845A1 (en) 2011-11-11 2013-05-15 Thomson Licensing Method and Apparatus for processing signals of a spherical microphone array on a rigid sphere used for generating an Ambisonics representation of the sound field
EP2592846A1 (en) 2011-11-11 2013-05-15 Thomson Licensing Method and apparatus for processing signals of a spherical microphone array on a rigid sphere used for generating an Ambisonics representation of the sound field
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
KR101590332B1 (ko) 2012-01-09 2016-02-18 삼성전자주식회사 영상장치 및 그 제어방법
RU2014133903A (ru) 2012-01-19 2016-03-20 Конинклейке Филипс Н.В. Пространственные рендеризация и кодирование аудиосигнала
EP2637427A1 (en) 2012-03-06 2013-09-11 Thomson Licensing Method and apparatus for playback of a higher-order ambisonics audio signal
EP2645748A1 (en) 2012-03-28 2013-10-02 Thomson Licensing Method and apparatus for decoding stereo loudspeaker signals from a higher-order Ambisonics audio signal
WO2013156818A1 (en) * 2012-04-19 2013-10-24 Nokia Corporation An audio scene apparatus
EP2665208A1 (en) 2012-05-14 2013-11-20 Thomson Licensing Method and apparatus for compressing and decompressing a Higher Order Ambisonics signal representation
US20140086416A1 (en) * 2012-07-15 2014-03-27 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for three-dimensional audio coding using basis function coefficients
US9190065B2 (en) 2012-07-15 2015-11-17 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for three-dimensional audio coding using basis function coefficients
US9288603B2 (en) 2012-07-15 2016-03-15 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for backward-compatible audio coding
KR102079680B1 (ko) 2012-07-16 2020-02-20 돌비 인터네셔널 에이비 오디오 재생을 위한 오디오 음장 표현을 렌더링하는 방법 및 장치
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
US9473870B2 (en) 2012-07-16 2016-10-18 Qualcomm Incorporated Loudspeaker position compensation with 3D-audio hierarchical coding
TWI590234B (zh) 2012-07-19 2017-07-01 杜比國際公司 編碼聲訊資料之方法和裝置,以及解碼已編碼聲訊資料之方法和裝置
US9761229B2 (en) * 2012-07-20 2017-09-12 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for audio object clustering
US9516446B2 (en) 2012-07-20 2016-12-06 Qualcomm Incorporated Scalable downmix design for object-based surround codec with cluster analysis by synthesis
JP5967571B2 (ja) 2012-07-26 2016-08-10 本田技研工業株式会社 音響信号処理装置、音響信号処理方法、及び音響信号処理プログラム
PL2915166T3 (pl) * 2012-10-30 2019-04-30 Nokia Technologies Oy Sposób i urządzenie do kwantyzacji odpornego wektora
US9336771B2 (en) 2012-11-01 2016-05-10 Google Inc. Speech recognition using non-parametric models
EP2743922A1 (en) 2012-12-12 2014-06-18 Thomson Licensing Method and apparatus for compressing and decompressing a higher order ambisonics representation for a sound field
US9913064B2 (en) 2013-02-07 2018-03-06 Qualcomm Incorporated Mapping virtual speakers to physical speakers
US9609452B2 (en) 2013-02-08 2017-03-28 Qualcomm Incorporated Obtaining sparseness information for higher order ambisonic audio renderers
EP2765791A1 (en) 2013-02-08 2014-08-13 Thomson Licensing Method and apparatus for determining directions of uncorrelated sound sources in a higher order ambisonics representation of a sound field
US9883310B2 (en) * 2013-02-08 2018-01-30 Qualcomm Incorporated Obtaining symmetry information for higher order ambisonic audio renderers
US10178489B2 (en) 2013-02-08 2019-01-08 Qualcomm Incorporated Signaling audio rendering information in a bitstream
US9338420B2 (en) 2013-02-15 2016-05-10 Qualcomm Incorporated Video analysis assisted generation of multi-channel audio data
CN104010265A (zh) * 2013-02-22 2014-08-27 杜比实验室特许公司 音频空间渲染设备及方法
US9685163B2 (en) 2013-03-01 2017-06-20 Qualcomm Incorporated Transforming spherical harmonic coefficients
MY179136A (en) 2013-03-05 2020-10-28 Fraunhofer Ges Forschung Apparatus and method for multichannel direct-ambient decomposition for audio signal processing
US9197962B2 (en) 2013-03-15 2015-11-24 Mh Acoustics Llc Polyhedral audio system based on at least second-order eigenbeams
EP2800401A1 (en) 2013-04-29 2014-11-05 Thomson Licensing Method and Apparatus for compressing and decompressing a Higher Order Ambisonics representation
CN105191354B (zh) 2013-05-16 2018-07-24 皇家飞利浦有限公司 音频处理装置及其方法
US9466305B2 (en) 2013-05-29 2016-10-11 Qualcomm Incorporated Performing positional analysis to code spherical harmonic coefficients
US9384741B2 (en) 2013-05-29 2016-07-05 Qualcomm Incorporated Binauralization of rotated higher order ambisonics
US9883312B2 (en) 2013-05-29 2018-01-30 Qualcomm Incorporated Transformed higher order ambisonics audio data
US9691406B2 (en) * 2013-06-05 2017-06-27 Dolby Laboratories Licensing Corporation Method for encoding audio signals, apparatus for encoding audio signals, method for decoding audio signals and apparatus for decoding audio signals
EP3017446B1 (en) * 2013-07-05 2021-08-25 Dolby International AB Enhanced soundfield coding using parametric component generation
TWI673707B (zh) 2013-07-19 2019-10-01 瑞典商杜比國際公司 將以L<sub>1</sub>個頻道為基礎之輸入聲音訊號產生至L<sub>2</sub>個揚聲器頻道之方法及裝置,以及得到一能量保留混音矩陣之方法及裝置,用以將以輸入頻道為基礎之聲音訊號混音以用於L<sub>1</sub>個聲音頻道至L<sub>2</sub>個揚聲器頻道
US20150127354A1 (en) 2013-10-03 2015-05-07 Qualcomm Incorporated Near field compensation for decomposed representations of a sound field
US9502045B2 (en) 2014-01-30 2016-11-22 Qualcomm Incorporated Coding independent frames of ambient higher-order ambisonic coefficients
US9922656B2 (en) 2014-01-30 2018-03-20 Qualcomm Incorporated Transitioning of ambient higher-order ambisonic coefficients
US20150243292A1 (en) * 2014-02-25 2015-08-27 Qualcomm Incorporated Order format signaling for higher-order ambisonic audio data
US20150264483A1 (en) 2014-03-14 2015-09-17 Qualcomm Incorporated Low frequency rendering of higher-order ambisonic audio data
US9852737B2 (en) 2014-05-16 2017-12-26 Qualcomm Incorporated Coding vectors decomposed from higher-order ambisonics audio signals
US9959876B2 (en) * 2014-05-16 2018-05-01 Qualcomm Incorporated Closed loop quantization of higher order ambisonic coefficients
US20150332682A1 (en) * 2014-05-16 2015-11-19 Qualcomm Incorporated Spatial relation coding for higher order ambisonic coefficients
US9620137B2 (en) 2014-05-16 2017-04-11 Qualcomm Incorporated Determining between scalar and vector quantization in higher order ambisonic coefficients
US10770087B2 (en) 2014-05-16 2020-09-08 Qualcomm Incorporated Selecting codebooks for coding vectors decomposed from higher-order ambisonic audio signals
US10142642B2 (en) 2014-06-04 2018-11-27 Qualcomm Incorporated Block adaptive color-space conversion coding
US9747910B2 (en) 2014-09-26 2017-08-29 Qualcomm Incorporated Switching between predictive and non-predictive quantization techniques in a higher order ambisonics (HOA) framework
US20160093308A1 (en) 2014-09-26 2016-03-31 Qualcomm Incorporated Predictive vector quantization techniques in a higher order ambisonics (hoa) framework

Also Published As

Publication number Publication date
KR20160015264A (ko) 2016-02-12
US9980074B2 (en) 2018-05-22
WO2014194084A1 (en) 2014-12-04
EP3107093A1 (en) 2016-12-21
EP3107094B1 (en) 2018-07-04
CN105284131A (zh) 2016-01-27
US9749768B2 (en) 2017-08-29
US20140355771A1 (en) 2014-12-04
UA116140C2 (uk) 2018-02-12
KR20160016877A (ko) 2016-02-15
JP2017199013A (ja) 2017-11-02
KR20160013133A (ko) 2016-02-03
CN105340009B (zh) 2019-08-09
JP6449256B2 (ja) 2019-01-09
US9769586B2 (en) 2017-09-19
US20140355770A1 (en) 2014-12-04
JP6185159B2 (ja) 2017-08-23
US20220030372A1 (en) 2022-01-27
RU2015151021A (ru) 2017-07-04
US11146903B2 (en) 2021-10-12
US20140358562A1 (en) 2014-12-04
KR101795900B1 (ko) 2017-11-08
WO2014194080A1 (en) 2014-12-04
EP3107095A1 (en) 2016-12-21
IL242648B (en) 2018-12-31
US10499176B2 (en) 2019-12-03
PH12015502634A1 (en) 2016-03-07
WO2014194090A9 (en) 2015-03-26
US9774977B2 (en) 2017-09-26
US20140358564A1 (en) 2014-12-04
EP3005361A1 (en) 2016-04-13
CA2912810A1 (en) 2014-12-04
WO2014194075A1 (en) 2014-12-04
CN105917407A (zh) 2016-08-31
KR20160016881A (ko) 2016-02-15
US20140358565A1 (en) 2014-12-04
US9502044B2 (en) 2016-11-22
CN105580072B (zh) 2019-10-22
HK1215752A1 (zh) 2016-09-09
ES2641175T3 (es) 2017-11-08
HUE039457T2 (hu) 2019-01-28
ES2689566T3 (es) 2018-11-14
JP2017142520A (ja) 2017-08-17
US9495968B2 (en) 2016-11-15
EP3005359B1 (en) 2017-05-10
JP2016524727A (ja) 2016-08-18
EP3005358B1 (en) 2017-06-28
EP3005360A1 (en) 2016-04-13
PH12015502634B1 (en) 2016-03-07
MY174865A (en) 2020-05-19
CN105284132A (zh) 2016-01-27
WO2014194106A1 (en) 2014-12-04
EP3107095B1 (en) 2019-10-02
KR20210094128A (ko) 2021-07-28
CN105917407B (zh) 2020-04-24
WO2014194116A1 (en) 2014-12-04
WO2014194115A1 (en) 2014-12-04
WO2014194099A1 (en) 2014-12-04
JP6121625B2 (ja) 2017-04-26
KR101877605B1 (ko) 2018-07-12
EP3107094A1 (en) 2016-12-21
US9883312B2 (en) 2018-01-30
EP3005358A1 (en) 2016-04-13
CN105284132B (zh) 2018-02-02
SG11201509462VA (en) 2015-12-30
US9854377B2 (en) 2017-12-26
JP6345771B2 (ja) 2018-06-20
HUE046520T2 (hu) 2020-03-30
US20140358560A1 (en) 2014-12-04
TW201511583A (zh) 2015-03-16
CN110767242A (zh) 2020-02-07
US9763019B2 (en) 2017-09-12
AU2014274076B2 (en) 2019-11-21
US11962990B2 (en) 2024-04-16
KR20160013125A (ko) 2016-02-03
TWI645723B (zh) 2018-12-21
KR101929092B1 (ko) 2018-12-13
HUE033545T2 (hu) 2017-12-28
US20140358266A1 (en) 2014-12-04
TW201509200A (zh) 2015-03-01
KR101961986B1 (ko) 2019-03-25
KR20160013132A (ko) 2016-02-03
WO2014194090A1 (en) 2014-12-04
KR20160016878A (ko) 2016-02-15
JP2016523468A (ja) 2016-08-08
BR112015030102B1 (pt) 2022-08-23
CA2912810C (en) 2021-12-28
CN105284131B (zh) 2018-09-18
KR102407554B1 (ko) 2022-06-13
WO2014194107A1 (en) 2014-12-04
EP3005360B1 (en) 2017-05-03
WO2014194110A1 (en) 2014-12-04
ES2764384T3 (es) 2020-06-03
RU2668059C2 (ru) 2018-09-25
US20140358561A1 (en) 2014-12-04
US20140355769A1 (en) 2014-12-04
US20140358563A1 (en) 2014-12-04
JP6199519B2 (ja) 2017-09-20
CN105264598A (zh) 2016-01-20
JP6290498B2 (ja) 2018-03-07
EP3005359A1 (en) 2016-04-13
KR20160016885A (ko) 2016-02-15
EP3282448A2 (en) 2018-02-14
BR112015030102A2 (pt) 2020-07-14
AU2014274076A1 (en) 2015-12-24
WO2014194109A1 (en) 2014-12-04
US20140358558A1 (en) 2014-12-04
CN105580072A (zh) 2016-05-11
CN105264598B (zh) 2018-12-18
EP3282448A3 (en) 2018-04-11
JP2016523376A (ja) 2016-08-08
US20160366530A1 (en) 2016-12-15
EP3005361B1 (en) 2017-06-21
US20160381482A1 (en) 2016-12-29
ZA201509227B (en) 2022-01-26
KR20160016879A (ko) 2016-02-15
CN110767242B (zh) 2024-05-24
KR20160016883A (ko) 2016-02-15
WO2014194105A1 (en) 2014-12-04
US9716959B2 (en) 2017-07-25
US20140358559A1 (en) 2014-12-04
CN105340009A (zh) 2016-02-17
JP2016526189A (ja) 2016-09-01
KR102190201B1 (ko) 2020-12-11

Similar Documents

Publication Publication Date Title
ES2635327T3 (es) Compresión de las representaciones descompuestas de un campo sonoro
RU2689427C2 (ru) Указание возможности повторного использования параметров кадра для кодирования векторов
US20150127354A1 (en) Near field compensation for decomposed representations of a sound field
BR112015030103B1 (pt) Compressão de representações decomposta de campo sonoro