ES2707473T3 - Multichannel audio coding using complex prediction and explicit estimation signaling - Google Patents

Multichannel audio coding using complex prediction and explicit estimation signaling Download PDF

Info

Publication number
ES2707473T3
ES2707473T3 ES15176783T ES15176783T ES2707473T3 ES 2707473 T3 ES2707473 T3 ES 2707473T3 ES 15176783 T ES15176783 T ES 15176783T ES 15176783 T ES15176783 T ES 15176783T ES 2707473 T3 ES2707473 T3 ES 2707473T3
Authority
ES
Spain
Prior art keywords
signal
decoded
combination
prediction
channel
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
ES15176783T
Other languages
Spanish (es)
Inventor
Heiko Purnhagen
Pontus Carlsson
Lars Villemoes
Julien Robilliard
Matthias Neusinger
Christian Helmrich
Johannes Hilpert
Nikolaus Rettelbach
Sascha Disch
Bernd Edler
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.)
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Dolby International AB
Original Assignee
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Dolby International AB
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
Priority claimed from EP10169432A external-priority patent/EP2375409A1/en
Application filed by Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV, Dolby International AB filed Critical Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Application granted granted Critical
Publication of ES2707473T3 publication Critical patent/ES2707473T3/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Stereophonic System (AREA)

Abstract

Decodificador de audio para decodificar una señal de audio multicanal codificada (100), comprendiendo la señal de audio multicanal codificada una primera señal de combinación codificada generada basándose en una regla de combinación para combinar una primera señal de audio de canal y una segunda señal de audio de canal de una señal de audio multicanal, una señal de predicción residual codificada e información de predicción, que comprende: un decodificador de señales (110) para decodificar la primera señal de combinación codificada (104) para obtener una primera señal de combinación decodificada (112) y para decodificar la señal residual codificada (106) para obtener una señal residual decodificada (114); y un calculador del decodificador (116) para calcular una señal multicanal decodificada que tiene una primera señal de canal decodificada (117), y una segunda señal de canal decodificada (118) utilizando la señal residual decodificada (114), la información de predicción (108) y la primera señal de combinación decodificada (112), de modo que la primera señal de canal decodificada (117) y la segunda señal de canal decodificada (118) son al menos aproximaciones de la primera señal de canal y la segunda señal de canal de la señal de audio multicanal, en el que la información de predicción (108) comprende un factor de valor real distinto de cero y un factor imaginario distinto de cero, en el que el calculador del decodificador (116) comprende: un predictor (1160) para aplicar la información de predicción (108) a la primera señal de combinación decodificada (112) o a una señal (601) proveniente de la primera señal de combinación decodificada para obtener una señal de predicción (1163); un calculador de señales de combinación (1161) para calcular una segunda señal de combinación (1165) combinando la señal residual decodificada (114) y la señal de predicción (1163); y un combinador (1162) para combinar la primera señal de combinación decodificada (112) y la segunda señal de combinación (1165) para obtener una señal de audio multicanal decodificada que tiene la primera señal de canal decodificada (117) y la segunda señal de canal decodificada (118), en el que la señal de audio multicanal codificada comprende una información de control (1003) que indica en un primer estado que el predictor (1160) es para usar al menos una trama anterior o posterior en tiempo a una trama actual de la primera señal de combinación decodificada, y que indica en un segundo estado que el predictor (1160) es para usar una única trama de la primera señal de combinación decodificada para una estimación de una parte imaginaria para la trama actual de la primera señal de combinación decodificada, en el que el predictor (1160) está configurado para multiplicar la primera señal de combinación decodificada por el factor de valor real para obtener una primera parte de la señal de predicción, en el que el predictor (1160) comprende un calculador de real a imaginario (1160a) para estimar una parte imaginaria de la primera señal de combinación decodificada (112) utilizando una parte real de la primera señal de combinación decodificada (112), en el que el predictor (1160) está configurado para multiplicar la parte imaginaria (601) de la primera señal de combinación decodificada por el factor imaginario de la información de predicción (108) para obtener una segunda parte de la señal de predicción; en el que el calculador de señal de combinación (1161) está configurado para combinar linealmente la primera parte de la señal de predicción y la segunda parte de la señal de predicción y la señal residual decodificada para obtener la segunda señal de combinación (1165), en el que el calculador de real a imaginario (1160a) comprende un selector de tramas espectral (1000) conectado a un calculador de espectro imaginario (1001), y en el que el selector de tramas espectral (1000) está configurado para recibir la información de control (1003) y para detectar un estado de la información de control (1003) y para seleccionar la al menos una trama anterior o posterior en tiempo a una trama actual de la primera señal de combinación decodificada para su uso por el calculador de espectro imaginario (1001) cuando la información de control (1003) tiene el primer estado y para seleccionar únicamente la única trama de la primera señal de combinación decodificada para su uso por el calculador de espectro imaginario (1001) cuando la información de control (1003) tiene el segundo estado.Audio decoder for decoding an encoded multichannel audio signal (100), the encoded multichannel audio signal comprising a first coded combination signal generated based on a combination rule for combining a first channel audio signal and a second audio signal of a multi-channel audio signal channel, a coded residual prediction signal and prediction information, comprising: a signal decoder (110) for decoding the first coded combination signal (104) to obtain a first decoded combination signal ( 112) and to decode the coded residual signal (106) to obtain a decoded residual signal (114); and a decoder calculator (116) for computing a decoded multichannel signal having a first decoded channel signal (117), and a second decoded channel signal (118) using the decoded residual signal (114), the prediction information ( 108) and the first decoded combination signal (112), so that the first decoded channel signal (117) and the second decoded channel signal (118) are at least approximations of the first channel signal and the second decoded signal. channel of the multi-channel audio signal, wherein the prediction information (108) comprises a non-zero real-value factor and an imaginary non-zero factor, wherein the decoder calculator (116) comprises: a predictor ( 1160) to apply the prediction information (108) to the first decoded combination signal (112) or to a signal (601) from the first decoded combination signal to obtain a signal of p Rediction (1163); a combination signal calculator (1161) for calculating a second combination signal (1165) by combining the decoded residual signal (114) and the prediction signal (1163); and a combiner (1162) for combining the first decoded combination signal (112) and the second combination signal (1165) to obtain a decoded multi-channel audio signal having the first decoded channel signal (117) and the second decoded signal. decoded channel (118), wherein the encoded multichannel audio signal comprises a control information (1003) which indicates in a first state that the predictor (1160) is for using at least one previous or subsequent frame in time to a frame current of the first decoded combination signal, and indicating in a second state that the predictor (1160) is to use a single frame of the first decoded combination signal for an estimate of an imaginary part for the current frame of the first signal of decoded combination, in which the predictor (1160) is configured to multiply the first decoded combination signal by the real value factor to obtain a first p art of the prediction signal, wherein the predictor (1160) comprises a real-to-imaginary computer (1160a) for estimating an imaginary part of the first decoded combination signal (112) using a real part of the first combination signal decoded (112), wherein the predictor (1160) is configured to multiply the imaginary part (601) of the first combination signal decoded by the imaginary factor of the prediction information (108) to obtain a second part of the signal of prediction; wherein the combination signal calculator (1161) is configured to linearly combine the first part of the prediction signal and the second part of the prediction signal and the decoded residual signal to obtain the second combination signal (1165), wherein the imaginary real calculator (1160a) comprises a spectral frame selector (1000) connected to an imaginary spectrum calculator (1001), and wherein the spectral frame selector (1000) is configured to receive the information control (1003) and to detect a state of the control information (1003) and to select the at least one previous or subsequent frame in time to a current frame of the first decoded combination signal for use by the spectrum calculator imaginary (1001) when the control information (1003) has the first state and to select only the only frame of the first decoded combination signal for use by the imaginary spectrum calculator (1001) when the control information (1003) has the second state.

Description

DESCRIPCIÓNDESCRIPTION

Codificación de audio de multicanal utilizando predicción compleja y señalización de estimación explícitaMultichannel audio coding using complex prediction and explicit estimation signaling

Campo de la invenciónField of the invention

La presente invención se refiere a procesamiento de audio y, particularmente, al procesamiento de audio multicanal de una señal multicanal que tiene dos o más señales de canal.The present invention relates to audio processing and, particularly, to multi-channel audio processing of a multi-channel signal having two or more channel signals.

En el campo del procesamiento de estéreo o multicanal se sabe aplicar la así denominada codificación de estéreo central/lateral. De acuerdo con este concepto, se forma una combinación de la señal de canal de audio izquierda o primera y la señal de canal de audio derecha o segunda para obtener una señal central o mono M. Adicionalmente, se forma una diferencia entre la señal de canal izquierda o primera y la señal de canal derecha o segunda para obtener la señal lateral S. Este método de codificación central/lateral logra una ganancia de codificación significativa, cuando la señal izquierda y la señal derecha son muy similares entre sí, debido a que la señal lateral se volverá bastante pequeña. Típicamente, una ganancia de codificación de una etapa de codificador de entropía/cuantificador resultará superior, cuando el rango de valores a cuantificar/codificar por entropía se hace menor. De este modo, para una PCM o un codificador aritmético de entropía o basado en Huffman, la ganancia de codificación aumenta, cuando la señal lateral se vuelve más pequeña. Sin embargo existen determinadas situaciones en las cuales la codificación central/lateral no dará como resultado una ganancia de codificación. La situación puede ocurrir cuando las señales en ambos canales están desfasadas entre sí, por ejemplo, en 90°. Entonces, la señal central y la señal lateral pueden estar en un rango bastante similar y, por lo tanto, la codificación de la señal central y la señal lateral utilizando el codificador por entropía no dará como resultado una ganancia de codificación e incluso puede producir un aumento de tasa de bits. Por lo tanto, se puede aplicar una codificación central/lateral selectiva de frecuencia para desactivar la codificación central/lateral en bandas, donde la señal lateral no se vuelve más pequeña hasta un cierto grado con respecto a, por ejemplo, la señal izquierda original.In the field of stereo or multichannel processing it is known to apply the so-called central / lateral stereo coding. According to this concept, a combination of the left or first audio channel signal and the right or second audio channel signal is formed to obtain a central or mono M signal. Additionally, a difference is formed between the channel signal left or first and the right or second channel signal to obtain the lateral signal S. This central / lateral coding method achieves a significant coding gain, when the left signal and the right signal are very similar to each other, because the Side signal will become quite small. Typically, a coding gain of an entropy / quantifier encoder stage will be greater when the range of values to be quantified / encoded by entropy becomes smaller. Thus, for a PCM or an arithmetic entropy or Huffman-based encoder, the coding gain increases, when the lateral signal becomes smaller. However, there are certain situations in which central / lateral coding will not result in a coding gain. The situation can occur when the signals in both channels are out of phase with each other, for example, by 90 °. Then, the central signal and the side signal can be in a fairly similar range and, therefore, the coding of the central signal and the side signal using the entropy encoder will not result in a coding gain and may even produce a increase in bit rate. Therefore, a selective central / lateral frequency coding can be applied to deactivate the central / lateral coding in bands, where the side signal does not become smaller up to a certain degree with respect to, for example, the original left signal.

A pesar de que la señal lateral se hará cero, cuando las señales izquierda y derecha son idénticas, dando como resultado una ganancia de codificación máxima debido a la eliminación de la señal lateral, la situación nuevamente se hace diferente cuando la señal central y la señal lateral son idénticas con respecto a la conformación de la forma de onda, pero la única diferencia entre ambas señales son sus amplitudes generales. En este caso, cuando se presume adicionalmente que la señal lateral no tiene un desfase con respecto a la señal central, la señal lateral aumenta significativamente, a pesar de que, por otra parte, la señal central no disminuye demasiado con respecto a su rango de valores. Cuando dicha situación ocurre en una determinada banda de frecuencia, entonces se desactivaría nuevamente la codificación central/lateral debido a la falta de ganancia de codificación. La codificación central/lateral se puede aplicar de forma selectiva de frecuencia o se puede aplicar como alternativa en el dominio de tiempo.Although the side signal will be zero, when the left and right signals are identical, resulting in a maximum coding gain due to the elimination of the side signal, the situation again becomes different when the central signal and the signal The laterals are identical with respect to the conformation of the waveform, but the only difference between both signals is their general amplitudes. In this case, when it is further presumed that the side signal does not have a lag with respect to the central signal, the side signal increases significantly, although, on the other hand, the central signal does not decrease too much with respect to its range of values. When said situation occurs in a certain frequency band, then the central / lateral coding would be deactivated again due to the lack of coding gain. The central / lateral encoding can be applied selectively in frequency or can be applied as an alternative in the time domain.

Existen técnicas alternativas de codificación multicanal, las cuales no están basadas en un tipo de enfoque de forma de onda como codificación central/lateral, pero que están basadas en el procesamiento paramétrico basándose en ciertos indicios binaurales. Dichas técnicas se conocen según los términos “codificación binaural del indicio”, “codificación de estéreo paramétrico” o “codificación de envolvente de MPEG”. En este punto se calculan determinados indicios para una pluralidad de bandas de frecuencia. Estos indicios incluyen diferencias de nivel entre canales, medidas de coherencia entre canales, diferencias de tiempo entre canales y/o diferencias de fase entre canales. Estos enfoques parten de la premisa de que una impresión multicanal sentida por el oyente no necesariamente está basada en las formas de onda detalladas de los dos canales, sino que está basada en los indicios suministrados de forma selectiva de frecuencia o en la información entre canales. Esto significa que, en una máquina de presentación se debe tener cuidado de presentar señales multicanal que reflejen las señales con exactitud, si bien las formas de onda no tienen una importancia decisiva.There are alternative multichannel coding techniques, which are not based on a type of waveform approach such as central / lateral encoding, but which are based on parametric processing based on certain binaural cues. Such techniques are known according to the terms "binaural indicia coding", "parametric stereo coding" or "MPEG envelope coding". At this point certain indices are calculated for a plurality of frequency bands. These indications include level differences between channels, coherence measurements between channels, time differences between channels and / or phase differences between channels. These approaches start from the premise that a multichannel impression felt by the listener is not necessarily based on the detailed waveforms of the two channels, but is based on the indications provided selectively of frequency or information between channels. This means that, in a presentation machine, care must be taken to present multichannel signals that accurately reflect the signals, although the waveforms are not of decisive importance.

Este enfoque puede resultar complejo particularmente en el caso en el que el decodificador tiene que aplicar un procesamiento de descorrelación para crear artificialmente señales estéreo, las cuales están descorrelacionadas entre sí, a pesar de que la totalidad de dichos canales proviene de uno y el mismo canal de mezcla descendente. Los descorreladores para este propósito son complejos, dependiendo de su implementación y pueden introducir artefactos, particularmente en el caso de porciones de señales transitorias. Adicionalmente, a diferencia de la codificación de forma de onda, el enfoque de codificación paramétrica es un enfoque de codificación con pérdidas, el cual inevitablemente da como resultado una pérdida de información no solamente introducida por la cuantificación típica sino también introducida al considerar los indicios binaurales en lugar de las formas de onda particulares. Este enfoque produce tasas de bits muy bajas pero puede incluir compromisos de calidad.This approach can be complex particularly in the case where the decoder has to apply decorrelation processing to artificially create stereo signals, which are de-correlated with each other, despite the fact that all of said channels come from one and the same channel of descending mixture. Decoders for this purpose are complex, depending on their implementation and can introduce artifacts, particularly in the case of portions of transient signals. Additionally, unlike waveform coding, the parametric coding approach is a lossy coding approach, which inevitably results in a loss of information not only introduced by the typical quantization but also introduced when considering binaural cues. instead of the particular waveforms. This approach produces very low bit rates but may include quality commitments.

Existen desarrollos recientes en cuanto a la codificación de voz y audio unificada (USAC) ilustrada en la Fig. 7a. Un decodificador del núcleo 700 lleva a cabo una operación de decodificación de la señal estéreo codificada en la entrada 701, la cual puede ser una señal codificada central/lateral. El decodificador del núcleo emite una señal central en la línea 702 y una señal lateral o residual en la línea 703. Ambas señales se transforman a un dominio QMF por los bancos de filtros QMF 704 y 705. A continuación se aplica un decodificador de envolvente de MPEG 706 para generar una señal de canal izquierdo 707 y una señal de canal derecho 708. Estas señales de banda baja se introducen posteriormente en un decodificador de replicación de banda espectral (SBR) 709, el cual produce señales izquierda y derecha de banda ancha en las líneas 710 y 711, las cuales a continuación se transforman a un dominio de tiempo por los bancos de filtros de síntesis QMF 712, 713 de modo tal que se obtienen las señales izquierda y derecha de banda ancha L, R.There are recent developments in terms of unified voice and audio coding (USAC) illustrated in Fig. 7a. A decoder of the core 700 performs a decoding operation of the stereo signal encoded at the input 701, which may be a central / lateral encoded signal. The core decoder emits a central signal on line 702 and a side or residual signal on line 703. Both signals are transformed to a domain QMF by QMF filter banks 704 and 705. An MPEG 706 envelope decoder is then applied to generate a left channel signal 707 and a right channel signal 708. These low band signals are subsequently input into a decoder Spectrum band replication (SBR) 709, which produces broadband left and right signals on lines 710 and 711, which are then transformed to a time domain by synthesis filter banks QMF 712, 713 so such that the left and right broadband signals L, R are obtained.

La Fig. 7b ilustra la situación en la que el decodificador de envolvente de MPEG 706 llevaría a cabo una decodificación central/lateral. Como alternativa, el bloque decodificador de envolvente de MPEG 706 podría llevar a cabo una decodificación paramétrica basada en el indicio binaural para generar señales estéreo a partir de una única señal mono del decodificador del núcleo. Naturalmente, el decodificador de envolvente de MPEG 706 también podría generar una pluralidad de señales de salida de banda baja para introducir en el bloque decodificador de SBR 709 utilizando información paramétrica tal como diferencias de nivel entre canales, medidas de coherencia entre canales u otros de dichos parámetros de información entre canales.Fig. 7b illustrates the situation in which the MPEG 706 envelope decoder would perform a central / side decoding. Alternatively, the MPEG 706 envelope decoder block could perform a parametric decoding based on the binaural cue to generate stereo signals from a single mono signal of the core decoder. Naturally, the MPEG 706 envelope decoder could also generate a plurality of low band output signals to be input into the SBR 709 decoder block using parametric information such as level differences between channels, coherence measurements between channels or other such information parameters between channels.

Cuando el bloque decodificador de envolvente de MPEG 706 lleva a cabo la decodificación central/lateral ilustrada en la Fig. 7b se puede aplicar un factor de ganancia real g y DMX/RES y L/R son señales de mezcla descendente/residual e izquierda/derecha, respectivamente, representadas en el dominio complejo híbrido QMF. El uso de una combinación de un bloque 706 y un bloque 709 sólo genera un pequeño aumento en la complejidad computacional en comparación con un decodificador estéreo utilizado como base, debido a que la representación del QMF complejo de la señal ya está disponible como parte del decodificador de SBR. Sin embargo, en una configuración que no es de SBR, la codificación estéreo basada en QMF, propuesta en el contexto de la USAC, daría como resultado un aumento significativo en la complejidad computacional debido a los bancos de QMF necesarios, los cuales en este ejemplo necesitarían bancos de análisis de 64 bandas y bancos de síntesis de 64 bandas. Dichos bancos de filtros sólo deberían añadirse para los fines de la codificación estéreo.When the MPEG 706 envelope decoder block performs the central / side decoding illustrated in Fig. 7b, a real gain factor g and DMX / RES can be applied and L / R are down / residual and left / right mix signals. , respectively, represented in the hybrid complex QMF domain. The use of a combination of a block 706 and a block 709 only generates a small increase in computational complexity compared to a stereo decoder used as a base, because the representation of the complex QMF of the signal is already available as part of the decoder of SBR. However, in a non-SBR configuration, stereo coding based on QMF, proposed in the context of the USAC, would result in a significant increase in computational complexity due to the necessary QMF banks, which in this example they would need 64-band analysis banks and 64-band synthesis banks. These filter banks should only be added for the purposes of stereo coding.

En el sistema de USAC del MPEG en desarrollo, sin embargo, también existen modos de codificación a altas tasas de bits donde la SBR típicamente no se utiliza.In the USAC system of the developing MPEG, however, there are also coding modes at high bit rates where the SBR is typically not used.

Los siguientes dos documentos de USAC del MPEG son ejemplares de esquemas de (de)decodificación de audio multicanal con lo que se estima una señal de diferencia a partir de una señal de mezcla descendente/suma/mono mediante un coeficiente de predicción de valor complejo:The following two USAC documents of the MPEG are exemplary of multichannel audio decoding (de) schemes whereby a difference signal is estimated from a downmix / sum / mono signal by a complex value prediction coefficient:

HEIKO PURNHAGEN ET AL: “Technical description of proposed Unified Stereo Coding in USAC”, 90. MPEG MEETING; 26-10-2009 - 30-10-2009; XIAN; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11), N° M16921, 23 de octubre de 2009 (23-10-2009).HEIKO PURNHAGEN ET AL: "Technical description of proposed Unified Stereo Coding in USAC", 90. MPEG MEETING; 10-26-2009 - 10-30-2009; XIAN; (MOTION PICTURE EXPERT GROUP OR ISO / IEC JTC1 / SC29 / WG11), No. M16921, October 23, 2009 (October 23, 2009).

MAX NEUENDORF (EDITOR): “WD5 of USAC”, 90. MPEG MEETING; 26-10-2009 - 30-10-2009; XIAN; (MOTION PICTURE EXPERT GROUP OR ISO/IECJTC1/SC29/WG11), N° N11040, 8 de diciembre de 2009 (08-12-2009), páginas 1-146;MAX NEUENDORF (EDITOR): "WD5 of USAC", 90. MPEG MEETING; 10-26-2009 - 10-30-2009; XIAN; (MOTION PICTURE EXPERT GROUP OR ISO / IECJTC1 / SC29 / WG11), No. N11040, December 8, 2009 (08-12-2009), pages 1-146;

El documento WO 2011/124608 A1 publicado posteriormente desvela métodos y dispositivos para codificación y decodificación estéreo utilizando predicción compleja en el dominio de la frecuencia. En una realización, un método de decodificación, para obtener una señal estéreo de salida a partir de una señal estéreo de entrada codificada por codificación de predicción compleja y que comprende primeras representaciones del dominio de la frecuencia de dos canales de entrada, comprende las etapas de mezcla ascendente de: (i) calcular una segunda representación del dominio de la frecuencia de un primer canal de entrada; y (ii) calcular un canal de salida basándose en la primera y segunda representaciones del dominio de la frecuencia del primer canal de entrada, la primera representación del domino de la frecuencia del segundo canal de entrada y un coeficiente de predicción complejo. La mezcla ascendente puede suspenderse en respuesta a datos de control.WO 2011/124608 A1 published subsequently discloses methods and devices for stereo coding and decoding using complex frequency domain prediction. In one embodiment, a decoding method, to obtain a stereo output signal from a stereo input signal encoded by complex prediction coding and comprising first representations of the frequency domain of two input channels, comprises the steps of upward mixing of: (i) calculating a second representation of the frequency domain of a first input channel; and (ii) calculating an output channel based on the first and second frequency domain representations of the first input channel, the first dominance representation of the frequency of the second input channel and a complex prediction coefficient. The upmix can be suspended in response to control data.

El documento WO 2009/141775 A1 desvela un aparato de mezcla ascendente estéreo paramétrico que genera una señal izquierda y una señal derecha a partir de una señal de mezcla descendente mono basándose en parámetros espaciales. Dicha mezcla ascendente estéreo paramétrica estando caracterizada porque comprende un medio para predecir una señal de diferencia que comprende una diferencia entre la señal izquierda y la señal derecha basándose en la señal de mezcla descendente mono escalada con un coeficiente de predicción. Dicho coeficiente de predicción se deriva de los parámetros espaciales. Dicho aparato de mezcla ascendente estéreo paramétrico comprende adicionalmente un medio aritmético para derivar la señal izquierda y la señal derecha basándose en una suma y una diferencia de la señal de mezcla descendente mono y dicha señal de diferencia.WO 2009/141775 A1 discloses a parametric stereo upmix apparatus that generates a left signal and a right signal from a mono down mix signal based on spatial parameters. Said parametric stereo upmix is characterized in that it comprises a means for predicting a difference signal comprising a difference between the left signal and the right signal based on the mono-climbing downmix signal with a prediction coefficient. This prediction coefficient is derived from the spatial parameters. Said parametric stereo upmix apparatus additionally comprises an arithmetic means for deriving the left signal and the right signal based on a sum and a difference of the mono downmix signal and said difference signal.

Un objetivo de la presente invención consiste en proporcionar un concepto mejorado de procesamiento de audio, el cual por una parte produce una alta ganancia de codificación y, por otra parte, produce a buena calidad de audio y/o complejidad computacional reducida. An object of the present invention is to provide an improved audio processing concept, which on the one hand produces a high coding gain and, on the other hand, produces good audio quality and / or reduced computational complexity.

Este objetivo se logra mediante un decodificador de audio de acuerdo con la reivindicación 1, un codificador de audio de acuerdo con la reivindicación 4, un método de decodificación de audio de acuerdo con la reivindicación 7, un método de codificación de audio de acuerdo con la reivindicación 8 o un programa informático de acuerdo con la reivindicación 9.This objective is achieved by an audio decoder according to claim 1, an audio encoder according to claim 4, an audio decoding method according to claim 7, an audio coding method according to claim 8 or a computer program according to claim 9.

La presente invención se basa en el hallazgo de que una ganancia de codificación del enfoque de codificación de forma de onda de alta calidad se puede mejorar significativamente mediante una predicción de una segunda señal de combinación utilizando una primera señal de combinación, donde ambas señales de combinación provienen de las señales originales de canal utilizando una regla de combinación tal como la regla de combinación central/lateral. Se ha descubierto que esta información de predicción se calcula por un predictor en un codificador de audio de modo que se cumple un objetivo de optimización, se incurre sólo en una pequeña sobrecarga, pero da como resultado una disminución significativa de la tasa de bits necesaria para la señal lateral sin perder ninguna calidad de audio, debido a que la predicción inventiva es, sin embargo, una codificación basada en forma de onda y no un enfoque de codificación multicanal o estéreo basado en parámetros. Para reducir la complejidad computacional, se prefiere llevar a cabo una codificación de dominio de frecuencia, donde la información de predicción proviene de datos de entrada del dominio de frecuencia en una forma selectiva de bandas. El algoritmo de conversión para convertir la representación de dominio de tiempo en una representación espectral es preferentemente un proceso críticamente muestreado tal como una transformada coseno discreta modificada (MDCT) o una transformada seno discreta modificada (MDST), la cual es diferente de una transformada compleja ya que se calculan sólo valores reales o sólo valores imaginarios, en tanto que en una transformada compleja se calculan valores reales y complejos de un espectro dando como resultado un sobremuestreo 2 veces mayor.The present invention is based on the finding that a coding gain of the high quality waveform coding approach can be significantly improved by a prediction of a second combining signal using a first combination signal, where both combination signals they come from the original channel signals using a combination rule such as the central / lateral combination rule. It has been found that this prediction information is calculated by a predictor in an audio encoder so that an optimization objective is met, only a small overload is incurred, but it results in a significant decrease in the bit rate necessary for The side signal without losing any audio quality, because the inventive prediction is, however, a coding based on waveform and not a multichannel or stereo coding approach based on parameters. To reduce computational complexity, it is preferred to carry out a frequency domain coding, where the prediction information comes from input data of the frequency domain in a selective form of bands. The conversion algorithm for converting the time domain representation into a spectral representation is preferably a critically sampled process such as a modified discrete cosine transform (MDCT) or a modified discrete sinus transform (MDST), which is different from a complex transform since only real values or only imaginary values are calculated, while in a complex transformation, real and complex values of a spectrum are calculated, resulting in a 2-fold oversampling.

Preferentemente se utiliza una transformada basada en introducción y cancelación de solapamiento. La MDCT, en particular, es una transformada de este tipo y permite una atenuación cruzada entre bloques subsiguientes sin ninguna sobrecarga debido a la propiedad muy conocida de cancelación de solapamiento de dominio de tiempo (TDAC), la cual se obtiene mediante el procesamiento de solapar-añadir en el lado del decodificador.Preferably a transform based on introduction and cancellation of overlap is used. MDCT, in particular, is such a transform and allows cross attenuation between subsequent blocks without any overload due to the well-known time domain overlap cancellation property (TDAC), which is obtained by overlapping processing -Add on the decoder side.

Preferentemente, la información de predicción calculada en el codificador, transmitida al decodificador y utilizada en el decodificador comprende una parte imaginaria, la cual puede reflejar ventajosamente las diferencias de fase entre los dos canales de audio en cantidades seleccionadas arbitrariamente entre 0° y 360°. La complejidad computacional se reduce significativamente cuando se aplica solamente una transformada de valor real o, en general, una transformada que proporciona, ya sea un espectro real solamente o que proporciona un espectro imaginario solamente. Para hacer uso de esta información de predicción imaginaria, la cual indica un desfase entre una determinada banda de la señal izquierda y una banda correspondiente de la señal derecha, un convertidor de real a imaginario o, dependiendo de la implementación de la transformada, un convertidor de imaginario a real se proporciona en el decodificador para calcular una señal de predicción residual a partir de la primera señal de combinación, la cual tiene la fase rotada con respecto a la señal de combinación original. Esta señal de predicción residual que tiene la fase rotada a continuación se puede combinar con la señal de predicción residual transmitida en la corriente de bits para regenerar una señal lateral, la cual finalmente se puede combinar con la señal central para obtener el canal izquierdo decodificado en una determinada banda y el canal derecho decodificado en esta banda. Preferably, the prediction information calculated in the encoder, transmitted to the decoder and used in the decoder comprises an imaginary part, which may advantageously reflect the phase differences between the two audio channels in arbitrarily selected quantities between 0 ° and 360 °. The computational complexity is significantly reduced when only a real value transform is applied or, in general, a transform that provides, either a real spectrum only or that provides an imaginary spectrum only. To make use of this imaginary prediction information, which indicates a lag between a certain band of the left signal and a corresponding band of the right signal, a converter from real to imaginary or, depending on the implementation of the transform, a converter from imaginary to real is provided in the decoder to calculate a residual prediction signal from the first combination signal, which has the phase rotated with respect to the original combination signal. This residual prediction signal having the phase rotated below can be combined with the residual prediction signal transmitted in the bitstream to regenerate a side signal, which can finally be combined with the center signal to obtain the decoded left channel in a certain band and the right channel decoded in this band.

Para aumentar la calidad de audio, el mismo convertidor de real a imaginario o el convertidor de imaginario a real, el cual se aplica en el lado del decodificador se implementa también en el lado del codificador, cuando la señal de predicción residual se calcula en el codificador.To increase the audio quality, the same converter from real to imaginary or the imaginary to real converter, which is applied on the decoder side is also implemented on the encoder side, when the residual prediction signal is calculated in the encoder

La presente invención es ventajosa en que proporciona una calidad de audio mejorada y tasa de bits reducida en comparación con los sistemas que tienen la misma tasa de bits o que tienen la misma calidad de audio.The present invention is advantageous in that it provides improved audio quality and reduced bit rate compared to systems having the same bit rate or having the same audio quality.

Adicionalmente se obtienen ventajas con respecto a una eficacia computacional de codificación estéreo unificada que resulta útil en el sistema de USAC del MPEG a altas tasas de bits, donde la SBR típicamente no se utiliza. En lugar de procesar la señal en el dominio de QMF híbrido complejo, estos enfoques implementan una codificación estéreo predictiva de base residual en el dominio nativo de MDCT del codificador de transformada estéreo subyacente.Additionally advantages are obtained with respect to a computational efficiency of unified stereo coding which is useful in the USAC system of MPEG at high bit rates, where the SBR is typically not used. Instead of processing the signal in the complex hybrid QMF domain, these approaches implement a residual base predictive stereo encoding in the native MDCT domain of the underlying stereo transform encoder.

De acuerdo con un aspecto de la presente invención, la presente invención comprende un aparato o método para generar una señal estéreo por predicción compleja en el dominio de MDCT, donde la predicción compleja se lleva a cabo en el dominio de MDCT utilizando una transformada de real a compleja, donde dicha señal estéreo puede ser, ya sea una señal estéreo codificada en el lado del codificador o puede ser como alternativa una señal estéreo decodificada/transmitida, cuando el aparato o método para generar la señal estéreo se aplica en el lado del decodificador.According to one aspect of the present invention, the present invention comprises an apparatus or method for generating a stereo signal by complex prediction in the MDCT domain, where the complex prediction is carried out in the MDCT domain using a real-time transform. a complex, wherein said stereo signal may be either a stereo signal encoded on the encoder side or may alternatively be a decoded / transmitted stereo signal, when the apparatus or method for generating the stereo signal is applied on the decoder side .

Las formas de realización preferidas de la presente invención se analizan a continuación con respecto a los dibujos adjuntos, en los cuales: The preferred embodiments of the present invention are discussed below with respect to the accompanying drawings, in which:

La Fig. 1 es un diagrama de un decodificador de audio;Fig. 1 is a diagram of an audio decoder;

La Fig. 2 es un diagrama de bloques de un codificador de audio;Fig. 2 is a block diagram of an audio encoder;

La Fig. 3a ilustra una implementación del calculador del codificador de la Fig. 2;Fig. 3a illustrates an implementation of the encoder computer of Fig. 2;

La Fig. 3b ilustra una implementación alternativa del calculador del codificador de la Fig. 2;Fig. 3b illustrates an alternative implementation of the encoder computer of Fig. 2;

La Fig. 3c ilustra una regla de combinación central/lateral para aplicar en el lado del codificador;Fig. 3c illustrates a central / lateral combination rule to be applied on the encoder side;

La Fig. 4a ilustra una implementación del calculador del decodificador de la Fig. 1;Fig. 4a illustrates an implementation of the decoder computer of Fig. 1;

La Fig. 4b ilustra una implementación alternativa del calculador del decodificador en forma de un calculador de matriz;Fig. 4b illustrates an alternative implementation of the decoder calculator in the form of a matrix calculator;

La Fig. 4c ilustra una regla de combinación inversa central/lateral correspondiente a la regla de combinación ilustrada en la Fig. 3c;Fig. 4c illustrates a central / lateral reverse combination rule corresponding to the combination rule illustrated in Fig. 3c;

La Fig. 5a ilustra una forma de realización de un codificador de audio que opera en el dominio de frecuencia, el cual es preferentemente un dominio de frecuencia de valor real;Fig. 5a illustrates an embodiment of an audio encoder operating in the frequency domain, which is preferably a real value frequency domain;

La Fig. 5b ilustra una implementación de un decodificador de audio que opera en el dominio de frecuencia; La Fig. 6a ilustra una implementación alternativa de un codificador de audio que opera en el dominio de MDCT y utiliza una transformada de real a imaginaria de acuerdo con una forma de realización de la presente invención;Fig. 5b illustrates an implementation of an audio decoder operating in the frequency domain; Fig. 6a illustrates an alternative implementation of an audio encoder operating in the MDCT domain and using a real-to-imaginary transform according to an embodiment of the present invention;

La Fig. 6b ilustra un decodificador de audio que opera en el dominio de MDCT y utiliza una transformada de real a imaginaria de acuerdo con una forma de realización de la presente invención;Fig. 6b illustrates an audio decoder operating in the MDCT domain and using a real-to-imaginary transform according to an embodiment of the present invention;

La Fig. 7a ilustra un post-procesador de audio que utiliza un decodificador estéreo y un decodificador de SBR conectado posteriormente;Fig. 7a illustrates an audio post-processor using a stereo decoder and a SBR decoder connected later;

La Fig. 7b ilustra una matriz de mezcla ascendente central/lateral;Fig. 7b illustrates a central / lateral upmix matrix;

La Fig. 8a ilustra una vista detallada en el bloque de MDCT en la Fig. 6a;Fig. 8a illustrates a detailed view in the MDCT block in Fig. 6a;

La Fig. 8b ilustra una vista detallada en el bloque de MDCT-1 de la Fig. 6b;Fig. 8b illustrates a detailed view in the MDCT-1 block of Fig. 6b;

La Fig. 9a ilustra una implementación de un optimizador que opera en resolución reducida con respecto a la salida de MdCt ;Fig. 9a illustrates an implementation of an optimizer operating at reduced resolution with respect to the output of M d C t ;

La Fig. 9b ilustra una representación de un espectro de MDCT y las bandas correspondientes de resolución inferior, en las cuales se calcula la información de predicción;Fig. 9b illustrates a representation of a MDCT spectrum and the corresponding bands of lower resolution, in which the prediction information is calculated;

La Fig. 10a ilustra una implementación del transformador de real a imaginario en la Fig. 6a o en la Fig. 6b; y La Fig. 10b ilustra una implementación posible del calculador de espectro imaginario de la Fig. 10a.Fig. 10a illustrates an implementation of the imaginary real transformer in Fig. 6a or Fig. 6b; and Fig. 10b illustrates a possible implementation of the imaginary spectrum calculator of Fig. 10a.

La Fig. 1 ilFig. 1 il

una línea de entrada 100. La señal de audio multicanal codificada comprende una primera señal de combinación codificada que se genera utilizando una regla de combinación para combinar una primera señal de canal y una segunda señal de canal que representan la señal de audio multicanal, una señal de predicción residual codificada e información de predicción. La señal multicanal codificada puede ser una corriente de datos tal como una corriente de bits, la cual tiene los tres componentes en una forma multiplexada. Se puede incluir información secundaria adicional en la señal multicanal codificada en la línea 100. La señal se introduce en una interfaz de entrada 102. La interfaz de entrada 102 se puede implementar como un desmultiplexor de corriente de datos, el cual emite la primera señal de combinación codificada en la línea 104, la señal residual codificada en la línea 106 y la información de predicción en la línea 108. Preferentemente, la información de predicción es un factor que tiene una parte real que no es igual a cero y/o una parte imaginaria distinta de cero. La señal de combinación codificada y la señal residual codificada se introducen en un decodificador de señales 110 para decodificar la primera señal de combinación para obtener una primera señal de combinación decodificada en la línea 112. Adicionalmente, el decodificador de señales 110 está configurado para decodificar la señal residual codificada para obtener una señal residual decodificada en la línea 114. Dependiendo del procesamiento de codificación en un lado del codificador de audio, el decodificador de señales puede comprender un decodificador de entropía tal como un decodificador Huffman, un decodificador aritmético o cualquier otro decodificador de entropía y una etapa de descuantificación conectada posteriormente para llevar a cabo una operación de descuantificación que coincida con una operación del cuantificador en un codificador de audio asociado. Las señales en la línea 112 y 114 se introducen en un calculador del decodificador 115, el cual emite la primera señal de canal en la línea 117 y una segunda señal de canal en la línea 118, donde estas dos señales son señales estéreo o dos canales de una señal de audio multicanal. Cuando, por ejemplo, la señal de audio multicanal comprende cinco canales, entonces las dos señales son dos canales de la señal multicanal. Para codificar totalmente dicha señal multicanal que tiene cinco canales se pueden aplicar dos decodificadores ilustrados en la Fig. 1, donde el primer decodificador procesa el canal izquierdo y el canal derecho, el segundo decodificador procesa el canal de envolvente izquierdo y el canal de envolvente derecho, y un tercer decodificador mono se utilizaría para llevar a cabo una codificación mono del canal central. Sin embargo, también se pueden aplicar otros agrupamientos o combinaciones de codificadores de forma de onda y codificadores paramétricos. Una forma alternativa de generalizar el esquema de predicción a más de dos canales sería tratar tres señales (o más) al mismo tiempo, es decir, predecir una 3a señal de combinación a partir de una 1a y 2a señal utilizando dos coeficientes de predicción, en forma muy similar al módulo "dos-a-tres" en la envolvente de MPEG. an input line 100. The encoded multichannel audio signal comprises a first coded combination signal that is generated using a combination rule to combine a first channel signal and a second channel signal representing the multichannel audio signal, a signal of coded residual prediction and prediction information. The encoded multichannel signal may be a data stream such as a bit stream, which has all three components in a multiplexed form. Additional secondary information may be included in the multichannel signal encoded on line 100. The signal is input to an input interface 102. The input interface 102 may be implemented as a data stream demultiplexer, which outputs the first signal of combination coded on line 104, the residual signal coded on line 106 and the prediction information on line 108. Preferably, the prediction information is a factor having a real part that is not equal to zero and / or a part imaginary other than zero. The coded combination signal and the coded residual signal are input to a signal decoder 110 to decode the first combination signal to obtain a first decoded combination signal on the line 112. Additionally, the signal decoder 110 is configured to decode the residual signal coded to obtain a decoded residual signal on line 114. Depending on the coding processing on one side of the audio encoder, the signal decoder may comprise an entropy decoder such as a Huffman decoder, an arithmetic decoder or any other decoder of entropy and a subsequent dequantization stage connected to perform a dequantization operation that matches a quantizer operation in an associated audio encoder. The signals on line 112 and 114 are input to a decoder computer 115, which outputs the first channel signal on line 117 and a second channel signal on line 118, where these two signals are stereo signals or two channels of a multichannel audio signal. When, for example, the multi-channel audio signal comprises five channels, then the two signals are two channels of the multichannel signal. To fully encode said multichannel signal having five channels, two decoders illustrated in FIG. 1 can be applied, where the first decoder processes the left channel and the right channel, the second decoder processes the left envelope channel and the right envelope channel. , and a third mono decoder would be used to carry out a mono coding of the center channel. However, other groupings or combinations of waveform encoders and parametric encoders may also be applied. An alternative way to generalize the prediction scheme to more than two channels would be to treat three (or more) signals at the same time, that is, to predict a 3rd combining signal from a 1st and 2nd signal using two prediction coefficients, in very similar to the "two-to-three" module in the MPEG envelope.

El calculador del decodificador 116 está configurado para calcular una señal multicanal decodificada que tiene la primera señal de canal decodificada 117 y la segunda señal de canal decodificada 118 utilizando la señal residual decodificada 114, la información de predicción 108 y la primera señal de combinación decodificada 112. Particularmente, el calculador del decodificador 116 está configurado para operar de tal modo que la primera señal de canal decodificada y la segunda señal de canal decodificada son al menos una aproximación de una primera señal de canal y una segunda señal de canal de la señal multicanal introducidas en un codificador correspondiente, las cuales están combinadas por la regla de combinación cuando se genera la primera señal de combinación y la señal de predicción residual. Específicamente, la información de predicción en la línea 108 comprende una parte de valor real distinta de cero y/o una parte imaginaria distinta de cero.The decoder calculator 116 is configured to calculate a decoded multi-channel signal having the first decoded channel signal 117 and the second decoded channel signal 118 using the residual signal decoded 114, the prediction information 108 and the first decoded combination signal 112. Particularly, the decoder computer 116 is configured to operate in such a way that the first decoded channel signal and the second decoded channel signal are at least one approximation of a first channel signal and a second channel signal of the multichannel signal introduced into a corresponding encoder, which are combined by the combination rule when the first combination signal and the residual prediction signal are generated. Specifically, the prediction information on line 108 comprises a part of real value other than zero and / or an imaginary part other than zero.

El calculador del decodificador 116 se puede implementar de diversos modos. Una primera implementación está ilustrada en la Fig. 4a. Esta implementación comprende un predictor 1160, un calculador de señales de combinación 1161 y un combinador 1162. El predictor recibe la primera señal de combinación decodificada 112 y la información de predicción 108 y emite una señal de predicción 1163. Específicamente, el predictor 1160 está configurado para aplicar la información de predicción 108 a la primera señal de combinación decodificada 112 o una señal proveniente de la primera señal de combinación decodificada. La regla de derivación para derivar la señal a la cual se aplica la información de predicción 108 puede ser una transformada de real a imaginaria, o igualmente, una transformada de imaginaria a real o una operación de ponderación o, dependiendo de la implementación, una operación de desfase o una operación combinada de ponderación/desfase. La señal de predicción 1163 se introduce junto con la señal residual decodificada en el calculador de señales de combinación 1161 para calcular la segunda señal de combinación decodificada 1165. Ambas señales 112 y 1165 se introducen en el combinador 1162, el cual combina la primera señal de combinación decodificada y la segunda señal de combinación para obtener la señal de audio multicanal decodificada que tiene la primera señal de canal decodificada y la segunda señal de canal decodificada en las líneas de salida 1166 y 1167, respectivamente. Como alternativa, el calculador del decodificador se implementa como un calculador de matriz 1168, el cual recibe, como entrada, la primera señal de combinación decodificada o señal M, la señal residual decodificada o señal D y la información de predicción a 108. El calculador de matriz 1168 aplica una matriz de transformada ilustrada como 1169 a las señales M, D para obtener las señales de salida L, R, donde L es la primera señal de canal decodificada y R es la segunda señal de canal decodificada. The decoder calculator 116 can be implemented in various ways. A first implementation is illustrated in Fig. 4a. This implementation comprises a predictor 1160, a combination signal calculator 1161 and a combiner 1162. The predictor receives the first decoded combination signal 112 and the prediction information 108 and outputs a prediction signal 1163. Specifically, the predictor 1160 is configured to apply the prediction information 108 to the first decoded combination signal 112 or a signal from the first decoded combination signal. The derivation rule for deriving the signal to which the prediction information 108 is applied can be a transform from real to imaginary, or likewise, an imaginary to real transform or a weighting operation or, depending on the implementation, an operation of phase shift or a combined operation of weighting / phase shift. The prediction signal 1163 is input together with the decoded residual signal in the combination signal calculator 1161 to calculate the decoded second combination signal 1165. Both signals 112 and 1165 are input to the combiner 1162, which combines the first signal of decoded combination and the second combination signal to obtain the decoded multi-channel audio signal having the first decoded channel signal and the second decoded channel signal on the output lines 1166 and 1167, respectively. Alternatively, the decoder calculator is implemented as a matrix calculator 1168, which receives, as input, the first decoded combination signal or M signal, the decoded residual signal or D signal and the prediction information a 108. The calculator of matrix 1168 applies a transform matrix illustrated as 1169 to the signals M, D to obtain the output signals L, R, where L is the first decoded channel signal and R is the second decoded channel signal.

La notación en la Fig. 4b se asemeja a una notación estéreo con un canal izquierdo L y un canal derecho R. Se ha aplicado esta notación para proporcionar una explicación más simple, si bien queda claro para los expertos en la materia que las señales L, R pueden ser cualquier combinación de dos señales de canal en una señal multicanal que tiene más de dos señales de canal. La operación de matriz 1169 unifica las operaciones en los bloques 1160, 1161 y 1162 de la Fig. 4a en un tipo de cálculo matriz de “única tanda”, y las entradas en el circuito de la Fig. 4a y las salidas desde el circuito de la Fig. 4a son idénticas a las entradas en el calculador de matriz 1168 o a las salidas desde el calculador de matriz 1168.The notation in Fig. 4b resembles a stereo notation with a left channel L and a right channel R. This notation has been applied to provide a simpler explanation, although it is clear to those skilled in the art that the L signals R can be any combination of two channel signals in a multichannel signal having more than two channel signals. Matrix operation 1169 unifies the operations in blocks 1160, 1161 and 1162 of Fig. 4a in a "single round" array calculation type, and the inputs in the circuit of Fig. 4a and the outputs from the circuit of Fig. 4a are identical to the inputs in the matrix calculator 1168 or to the outputs from the matrix calculator 1168.

La Fig. 4c ilustra un ejemplo para una regla de combinación inversa aplicada por el combinador 1162 en la Fig. 4a. Particularmente, la regla de combinación es similar a la regla de combinación del lado del decodificador en la codificación central/lateral bien conocida, donde L = M S, y R = M - S. Se entiende que la señal S utilizada por la regla de combinación inversa en la Fig. 4c es la señal calculada por el calculador de señales de combinación, es decir, la combinación de la señal de predicción en la línea 1163 y la señal residual decodificada en la línea 114. Se entiende que en la presente memoria descriptiva, las señales en las líneas a veces están designadas por los números de referencia para las líneas o a veces están indicadas por los mismos números de referencia, los cuales se han asignado a las líneas. Por lo tanto, la notación es tal que una línea que tiene una determinada señal está indicando la señal propiamente dicha. Una línea puede ser una línea física en una implementación de cableado permanente. En una implementación computarizada, sin embargo, una línea física no existe, sino que la señal representada por la línea se transmite desde un módulo de cálculo hacia el otro módulo de cálculo.Fig. 4c illustrates an example for a reverse combination rule applied by the combiner 1162 in Fig. 4a. Particularly, the combination rule is similar to the combination rule on the decoder side in the well-known central / lateral coding, where L = MS, and R = M - S. It is understood that the signal S used by the combination rule Inverse in Fig. 4c is the signal calculated by the combination signal calculator, ie, the combination of the prediction signal on line 1163 and the decoded residual signal on line 114. It is understood that in the present specification , the signals on the lines are sometimes designated by the reference numbers for the lines or are sometimes indicated by the same reference numbers, which have been assigned to the lines. Therefore, the notation is such that a line having a certain signal is indicating the signal itself. A line can be a physical line in a permanent wiring implementation. In a computerized implementation, however, a physical line does not exist, but the signal represented by the line is transmitted from one calculation module to the other calculation module.

La Fig. 2 ilustra un codificador de audio para codificar una señal de audio multicanal 200 que tiene dos o más señales de canal, donde una primera señal de canal está ilustrada en 201 y un segundo canal está ilustrado en 202. Ambas señales se introducen en un calculador del codificador 203 para calcular una primera señal de combinación 204 y una señal de predicción residual 205 utilizando la primera señal de canal 201 y la segunda señal de canal 202 y la información de predicción 206, de modo que cuando se combina la señal de predicción residual 205 con una señal de predicción proveniente de la primera señal de combinación 204 y la información de predicción 206 da como resultado una segunda señal de combinación, donde la primera señal de combinación y la segunda señal de combinación pueden obtenerse de la primera señal de canal 201 y la segunda señal de canal 202 utilizando una regla de combinación.Fig. 2 illustrates an audio encoder for encoding a multi-channel audio signal 200 having two or more channel signals, where a first channel signal is illustrated at 201 and a second channel is illustrated at 202. Both signals are input to a calculator of the encoder 203 for calculating a first combination signal 204 and a residual prediction signal 205 using the first channel signal 201 and the second channel signal 202 and the prediction information 206, so that when the signal of Residual prediction 205 with a prediction signal from the first combination signal 204 and the prediction information 206 results in a second combination signal, where the first combination signal and the second combination signal can be obtained from the first signal of channel 201 and the second channel signal 202 using a combination rule.

La información de predicción se genera por un optimizador 207 para calcular la información de predicción 206 de modo que la señal de predicción residual cumple un objetivo de optimización 208. La primera señal de combinación 204 y la señal residual 205 se introducen en un codificador de señales 209 para codificar la primera señal de combinación 204 para obtener una primera señal de combinación codificada 210 y para codificar la señal residual 205 para obtener una señal residual codificada 211. Ambas señales codificadas 210, 211 se introducen en una interfaz de salida 212 para combinar la primera señal de combinación codificada 210 con la señal de predicción residual codificada 211 y la información de predicción 206 para obtener una señal multicanal codificada 213, que es similar a la señal multicanal codificada 100 introducida en la interfaz de entrada 102 del decodificador de audio ilustrado en la Fig. 1.The prediction information is generated by an optimizer 207 to calculate the prediction information 206 so that the residual prediction signal meets an optimization objective 208. The first combination signal 204 and the residual signal 205 are input to a signal encoder. 209 to encode the first combination signal 204 to obtain a first coded combination signal 210 and to encode the residual signal 205 to obtain a coded residual signal 211. Both coded signals 210, 211 are input to an output interface 212 to combine the first coded combination signal 210 with the coded residual prediction signal 211 and the prediction information 206 to obtain a coded multichannel signal 213, which is similar to the encoded multi-channel signal 100 input into the input interface 102 of the audio decoder illustrated in FIG. 1.

Dependiendo de la implementación, el optimizador 207 recibe, ya sea la primera señal de canal 201 y la segunda señal de canal 202 o, tal como se ilustra en las líneas 214 y 215, la primera señal de combinación 214 y la segunda señal de combinación 215 provenientes de un combinador 2031 de la Fig. 3a, las cuales se analizarán posteriormente.Depending on the implementation, the optimizer 207 receives either the first channel signal 201 and the second channel signal 202 or, as illustrated in lines 214 and 215, the first combination signal 214 and the second combination signal. 215 from a combiner 2031 of Fig. 3a, which will be analyzed later.

Un objetivo preferido de optimización se ilustra en la Fig. 2, en la cual la ganancia de codificación se maximiza, es decir, la tasa de bits se reduce tanto como sea posible. En este objetivo de optimización, la señal residual D minimizada con respecto a a. Esto significa, en otras palabras, que la información de predicción a se elige de tal modo que se minimiza ||S - aM||2 Esto tiene como resultado una solución para a que se ilustra la Fig. 2. Las señales S, M están proporcionadas en forma de bloque y son preferentemente señales del dominio espectral, donde la notación ||...|| significa la norma 2 del argumento, y donde <...> ilustra el producto vectorial en forma habitual. Cuando la primera señal de canal 201 y la segunda señal de canal 202 se introducen en el optimizador 207, el optimizador tendría entonces que aplicar la regla de combinación, donde una regla de combinación ejemplar está ilustrada en la Fig. 3c. Sin embargo, cuando la primera señal de combinación 214 y la segunda señal de combinación 215 se introducen en el optimizador 207, entonces el optimizador 207 no necesita implementar la regla de combinación por sí mismo.A preferred optimization objective is illustrated in Fig. 2, in which the coding gain is maximized, i.e., the bit rate is reduced as much as possible. In this optimization objective, the residual signal D minimized with respect to a. This means, in other words, the prediction information to be selected such that || S is minimized -. AM || 2 This results in a solution for to Fig 2. illustrates signals S, M they are provided in block form and are preferably signals of the spectral domain, where the notation || ... || means rule 2 of the argument, and where <...> illustrates the vector product in a usual way. When the first channel signal 201 and the second channel signal 202 are input to the optimizer 207, the optimizer would then have to apply the combination rule, where an exemplary combination rule is illustrated in FIG. 3c. However, when the first combination signal 214 and the second combination signal 215 are entered into the optimizer 207, then the optimizer 207 does not need to implement the combination rule by itself.

Otros objetivos de optimización pueden estar relacionados con la calidad perceptual. Un objetivo de optimización puede contemplar que se obtenga una calidad perceptual máxima. Entonces, el optimizador necesitaría información adicional proveniente de un modelo perceptual. Otras implementaciones del objetivo de optimización pueden referirse a la obtención de una mínima tasa de bits, o una tasa de bits fija. Entonces, el optimizador 207 se implementaría para llevar a cabo una operación de cuantificación/codificación de entropía para determinar la tasa de bits necesaria para determinados valores de a de modo que a se pueda establecer para cumplir los requerimientos tales como una mínima tasa de bits, o como alternativa, una tasa de bits fija. Otras implementaciones del objetivo de optimización pueden estar relacionadas con un uso mínimo de los recursos del codificador o del decodificador. En el caso de una implementación de dicho objetivo de optimización, la información en los recursos necesarios estaría disponible para una determinada optimización en el optimizador 207. Adicionalmente, una combinación de estos objetivos de optimización u otros objetivos de optimización se puede aplicar para controlar el optimizador 207, el cual calcula la información de predicción 206.Other optimization objectives may be related to perceptual quality. An optimization objective can contemplate that a maximum perceptual quality is obtained. Then, the optimizer would need additional information from a perceptual model. Other implementations of the optimization objective may relate to obtaining a minimum bit rate, or a fixed bit rate. Then, the optimizer 207 would be implemented to carry out an entropy quantization / coding operation to determine the bit rate necessary for certain values of a so that a can be set to meet the requirements such as a minimum bit rate, or as an alternative, a fixed bit rate. Other implementations of the optimization objective may be related to a minimum use of the encoder or decoder resources. In the case of an implementation of said optimization objective, information on the necessary resources would be available for a certain optimization in the optimizer 207. Additionally, a combination of these optimization objectives or other optimization objectives can be applied to control the optimizer 207, which calculates the prediction information 206.

El calculador del codificador 203 en la Fig. 2 se puede implementar en distintas formas, donde una primera implementación ejemplar está ilustrada en la Fig. 3a, en la cual una regla de combinación explícita se lleva a cabo en el combinador 2031. Una implementación alternativa ejemplar está ilustrada en la Fig. 3b, donde se utiliza un calculador de matriz 2039. El combinador 2031 en la Fig. 3a se puede implementar para llevar a cabo la regla de combinación ilustrada en la Fig. 3c, la cual es de manera ejemplar la regla de codificación central/lateral bien conocida, donde un factor de ponderación de 0,5 se aplica a todos los ramales. Sin embargo se pueden implementar otros factores de ponderación o ningún factor de ponderación dependiendo de la implementación. Adicionalmente, cabe destacar que se pueden aplicar otras reglas de combinación tales como otras reglas de combinación lineales o reglas de combinación no lineales, siempre que haya una regla de combinación inversa correspondiente, la cual se puede aplicar en el combinador del decodificador 1162 ilustrado en la Fig. 4a, el cual aplica una regla de combinación que es inversa a la regla de combinación aplicada por el codificador. Debido a que puede usarse cualquier regla de predicción invertible, puesto que la influencia en la forma de onda está “equilibrada” por la predicción, es decir, cualquier error está incluido en la señal residual transmitida, puesto que la operación de predicción llevada a cabo por el optimizador 207 en combinación con el calculador del codificador 203 es un proceso que conserva la forma de onda.The calculator of the encoder 203 in Fig. 2 can be implemented in different ways, where a first exemplary implementation is illustrated in Fig. 3a, in which an explicit combination rule is carried out in the combiner 2031. An alternative implementation example is illustrated in Fig. 3b, where a matrix calculator 2039 is used. The combiner 2031 in Fig. 3a can be implemented to carry out the combination rule illustrated in Fig. 3c, which is exemplary the well-known central / lateral coding rule, where a weighting factor of 0.5 applies to all branches. However, other weighting factors or no weighting factors can be implemented depending on the implementation. Additionally, it should be noted that other combination rules such as other linear combination rules or non-linear combination rules may be applied, provided there is a corresponding inverse combination rule, which may be applied in the decoder's combiner 1162 illustrated in FIG. Fig. 4a, which applies a combination rule that is inverse to the combination rule applied by the encoder. Because any invertible prediction rule can be used, since the influence on the waveform is "balanced" by the prediction, that is, any error is included in the residual signal transmitted, since the prediction operation carried out by the optimizer 207 in combination with the calculator of the encoder 203 is a process that preserves the waveform.

El combinador 2031 emite la primera señal de combinación 204 y una segunda señal de combinación 2032. La primera señal de combinación se introduce en un predictor 2033, y la segunda señal de combinación 2032 se introduce en el calculador residual 2034. El predictor 2033 calcula una señal de predicción 2035, la cual se combina con la segunda señal de combinación 2032 para obtener finalmente la señal residual 205. Particularmente, el combinador 2031 está configurado para combinar las dos señales de canal 201 y 202 de la señal de audio multicanal en dos formas distintas para obtener la primera señal de combinación 204 y la segunda señal de combinación 2032, donde las dos formas distintas están ilustradas en la Fig. 3c. El predictor 2033 está configurado para aplicar la información de predicción a la primera señal de combinación 204 o una señal proveniente de la primera señal de combinación para obtener la señal de predicción 2035. La señal proveniente de la señal de combinación puede provenir de cualquier operación no lineal o lineal, donde se prefiere una transformada de real a imaginaria/transformada de imaginaria a real, la cual se puede implementar utilizando un filtro lineal tal como un filtro FIR que lleva a cabo adiciones ponderadas de determinados valores.The combiner 2031 outputs the first combination signal 204 and a second combination signal 2032. The first combination signal is input to a predictor 2033, and the second combination signal 2032 is input to the residual calculator 2034. The predictor 2033 calculates a prediction signal 2035, which is combined with the second combination signal 2032 to finally obtain the residual signal 205. Particularly, the combiner 2031 is configured to combine the two channel signals 201 and 202 of the multichannel audio signal in two ways different to obtain the first combination signal 204 and the second combination signal 2032, where the two different forms are illustrated in Fig. 3c. The predictor 2033 is configured to apply the prediction information to the first combination signal 204 or a signal from the first combination signal to obtain the prediction signal 2035. The signal from the combination signal may come from any non-operating operation. linear or linear, where a transform from real to imaginary / transformed from imaginary to real is preferred, which can be implemented using a linear filter such as a FIR filter that carries out weighted additions of certain values.

El calculador residual 2034 en la Fig. 3a puede llevar a cabo una operación de sustracción de modo que la señal de predicción se sustrae de la segunda señal de combinación. Sin embargo, son posibles otras operaciones en el calculador residual. De la misma manera, el calculador de señales de combinación 1161 en la Fig. 4a puede llevar a cabo una operación de adición donde la señal residual decodificada 114 y la señal de predicción 1163 se añaden juntas para obtener la segunda señal de combinación 1165. La Fig. 5a ilustra una implementación preferida de un codificador de audio. En comparación con el codificador de audio ilustrado en la Fig. 3a, la primera señal de canal 201 es una representación espectral de una primera señal de canal de dominio de tiempo 55a. De la misma manera, la segunda señal de canal 202 es una representación espectral de una señal de canal de dominio de tiempo 55b. La conversión desde el dominio de tiempo en la representación espectral se lleva a cabo por un convertidor de tiempo/frecuencia 50 para la primera señal de canal y por un convertidor de tiempo/frecuencia 51 para la segunda señal de canal. Preferentemente, pero no necesariamente, los convertidores espectrales 50, 51 están implementados como convertidores de valor real. El algoritmo de conversión puede ser una transformada coseno discreta, una transformada FFT, donde sólo se utiliza la parte real, una MDCT o cualquier otra transformada que proporcione valores espectrales de valor real. Como alternativa, ambas transformadas se pueden implementar como una transformada imaginaria, tal como una DST, una MDST o una FFT donde sólo se utiliza la parte imaginaria y se descarta la parte real. También se puede utilizar cualquier otra transformada que proporcione sólo valores imaginarios. Un motivo por el cual utilizar una transformada pura de valor real o una transformada pura imaginaria es la complejidad computacional, debido a que, para cada uno de los valores espectrales, sólo se tiene que procesar un único valor tal como magnitud o la parte real o, como alternativa, la fase o la parte imaginaria. A diferencia de una transformada totalmente compleja tal como una FFT, tendrían que procesarse dos valores, es decir, la parte real y la parte imaginaria para cada una de las líneas espectrales, lo cual es un aumento de la complejidad computacional en un factor de al menos 2. En este punto, otro motivo para utilizar una transformada de valor real es que dicha transformada generalmente se muestrea críticamente, y de este modo proporciona un dominio adecuado (y comúnmente utilizado) para la cuantificación de señales y la codificación de entropía (el paradigma convencional de "codificación de audio perceptual" implementado en “MP3”, AAC, o en sistemas de codificación de audio similares). The residual computer 2034 in Fig. 3a can perform a subtraction operation so that the prediction signal is subtracted from the second combination signal. However, other operations in the residual calculator In the same way, the combination signal calculator 1161 in FIG. 4a can perform an addition operation where the decoded residual signal 114 and the prediction signal 1163 are added together to obtain the second combination signal 1165. The Fig. 5a illustrates a preferred implementation of an audio encoder. In comparison with the audio encoder illustrated in Fig. 3a, the first channel signal 201 is a spectral representation of a first time domain channel signal 55a. In the same way, the second channel signal 202 is a spectral representation of a time domain channel signal 55b. The conversion from the time domain to the spectral representation is carried out by a time / frequency converter 50 for the first channel signal and by a time / frequency converter 51 for the second channel signal. Preferably, but not necessarily, the spectral converters 50, 51 are implemented as real value converters. The conversion algorithm can be a discrete cosine transform, an FFT transform, where only the real part, an MDCT or any other transform that provides real value spectral values is used. Alternatively, both transforms can be implemented as an imaginary transform, such as a DST, an MDST or an FFT where only the imaginary part is used and the real part is discarded. Any other transform that provides only imaginary values can also be used. One reason why using a pure transform of real value or an imaginary pure transform is computational complexity, because, for each of the spectral values, only a single value such as magnitude or the real part has to be processed or , as an alternative, the phase or the imaginary part. Unlike a totally complex transform such as an FFT, two values would have to be processed, that is, the real part and the imaginary part for each of the spectral lines, which is an increase in computational complexity by a factor of minus 2. At this point, another reason to use a real value transform is that said transform is generally sampled critically, and thus provides a suitable (and commonly used) domain for signal quantization and entropy coding (the conventional paradigm of "perceptual audio coding" implemented in "MP3", AAC, or similar audio coding systems).

La Fig. 5a ilustra adicionalmente el calculador residual 2034 como un sumador, el cual recibe la señal lateral como su entrada “más” y el cual recibe la salida de la señal de predicción por el predictor 2033 como su entrada “menos”. Adicionalmente, la Fig. 5a ilustra la situación en la que la información de control del predictor se transmite desde el optimizador hacia el multiplexor 212, el cual emite una corriente de bits multiplexada que representa la señal de audio multicanal codificada. Particularmente, la operación de predicción se lleva a cabo de tal modo que la señal lateral es previsible desde la señal central tal como se ilustra en las Ecuaciones a la derecha de la Fig. 5a.Fig. 5a further illustrates the residual computer 2034 as an adder, which receives the side signal as its "plus" input and which receives the output of the prediction signal by the predictor 2033 as its "minus" input. Additionally, FIG. 5a illustrates the situation in which the predictor control information is transmitted from the optimizer to the multiplexer 212, which outputs a multiplexed bitstream representing the encoded multichannel audio signal. Particularly, the prediction operation is carried out in such a way that the lateral signal is predictable from the central signal as illustrated in the Equations to the right of Fig. 5a.

Preferentemente, la información de control del predictor 206 es un factor tal como se ilustra a la derecha en la Fig. 3b. En una forma de realización en la cual la información de control de predicción sólo comprende una porción real tal como la parte real de una a de valor complejo o una magnitud de a de valor complejo, donde esta porción corresponde a un factor distinto de cero, se puede obtener una ganancia de codificación significativa cuando la señal central y la señal lateral son similares entre sí debido a su estructura de forma de onda, si bien tienen distintas amplitudes.Preferably, the control information of the predictor 206 is a factor as illustrated to the right in Fig. 3b. In an embodiment in which the prediction control information comprises only a real portion such as the real part of a complex value a or a magnitude of a complex value, where this portion corresponds to a non-zero factor, a significant coding gain can be obtained when the central signal and the side signal are similar to each other due to their waveform structure, although they have different amplitudes.

Sin embargo, cuando la información de control de predicción sólo comprende una segunda porción, la cual puede ser la parte imaginaria de un factor de valor complejo o la información de fase del factor de valor complejo, donde la parte imaginaria o la información de fase son distintas de cero, la presente invención consigue una ganancia de codificación significativa para las señales, las cuales están desfasadas entre sí por un valor distinto de 0° o 180°, y que tienen además del desfase, características de forma de onda similares y relaciones de amplitud similares.However, when the prediction control information comprises only a second portion, which may be the imaginary part of a complex value factor or the phase information of the complex value factor, where the imaginary part or the phase information is other than zero, the present invention achieves a significant coding gain for the signals, which are offset from each other by a value other than 0 ° or 180 °, and which have in addition to the phase shift, similar waveform characteristics and ratios of similar amplitude.

Preferentemente, una información de control de predicción es de valor complejo. Por lo tanto se puede obtener una ganancia de codificación significativa para las señales que tienen distinta amplitud y que están desfasadas. En una situación en la cual las transformadas de tiempo/frecuencia proporcionan espectros complejos, la operación 2034 sería una operación compleja en la cual la parte real de la información de control del predictor se aplica a la parte real del espectro complejo M y la parte imaginaria de la información de predicción compleja se aplica a la parte imaginaria del espectro complejo. Entonces, en el sumador 2034, el resultado de esta operación de predicción es un espectro real previsto y un espectro imaginario previsto, y el espectro real previsto se sustraería del espectro real de la señal lateral S (en forma de banda), y el espectro imaginario previsto se sustraería de la parte imaginaria del espectro de S para obtener un espectro residual complejo D.Preferably, a prediction control information is of complex value. Therefore, a significant coding gain can be obtained for the signals that have different amplitude and that are out of phase. In a situation in which the time / frequency transforms provide complex spectra, operation 2034 would be a complex operation in which the real part of the predictor control information is applied to the real part of the complex spectrum M and the imaginary part of the complex prediction information is applied to the imaginary part of the complex spectrum. Then, in adder 2034, the result of this prediction operation is a predicted real spectrum and a predicted imaginary spectrum, and the expected real spectrum would be subtracted from the real spectrum of the side signal S (in the form of a band), and the spectrum Imaginary predicted would be subtracted from the imaginary part of the spectrum of S to obtain a complex residual spectrum D.

Las señales de dominio de tiempo L y R son señales de valor real, si bien las señales de dominio de frecuencia pueden ser de valor real o complejo. Cuando las señales de dominio de frecuencia son de valor real, entonces la transformada es una transformada de valor real. Cuando las señales de dominio de frecuencia son complejas, entonces la transformada es una transformada de valor complejo. Esto significa que la entrada a las transformadas de tiempo a frecuencia y la salida de las transformadas de frecuencia a tiempo son de valor real, en tanto que las señales de dominio de frecuencia podrían ser, por ejemplo, señales de dominio QMF de valor complejo.The time domain signals L and R are real value signals, although the frequency domain signals may be of real or complex value. When the frequency domain signals are of real value, then the transform is a real value transform. When the frequency domain signals are complex, then the transform is a complex value transform. This means that the input to the time-to-frequency transforms and the output of the frequency-to-time transforms are of real value, while the frequency domain signals could be, for example, complex valued QMF domain signals.

La Fig. 5b ilustra un decodificador de audio correspondiente al codificador de audio ilustrado en la Fig. 5a. Los elementos similares con respecto al decodificador de audio de la Fig. 1 tienen números de referencia similares. Fig. 5b illustrates an audio decoder corresponding to the audio encoder illustrated in Fig. 5a. Similar elements with respect to the audio decoder of Fig. 1 have similar reference numbers.

La salida de la corriente de bits por el multiplexor de la corriente de bits 212 en la Fig. 5a se introduce en un desmultiplexor de la corriente de bits 102 en la Fig. 5b. El desmultiplexor de la corriente de bits 102 desmultiplexa la corriente de bits en la señal de mezcla descendente M y la señal residual D. La señal de mezcla descendente M se introduce en un descuantificador 110a. La señal residual D se introduce en un descuantificador 110b. Adicionalmente, el desmultiplexor de la corriente de bits 102 desmultiplexa una información de control del predictor 108 desde la corriente de bits e introduce la misma en el predictor 1160. El predictor 1160 emite una señal lateral prevista a ■ M y el combinador 1161 combina la señal residual emitida por el descuantificador 110b con la señal lateral prevista para obtener finalmente la señal lateral reconstruida S. La señal a continuación se introduce en el combinador 1162, el cual lleva a cabo, por ejemplo, un procesamiento de suma/diferencia, tal como se ilustra en la Fig. 4c con respecto a la codificación central/lateral. Particularmente, el bloque 1162 lleva a cabo una decodificación central/lateral (inversa) para obtener una representación de dominio de frecuencia del canal izquierdo y una representación de dominio de frecuencia del canal derecho. La representación del dominio de frecuencia a continuación se convierte en una representación del dominio de tiempo por los convertidores de frecuencia/tiempo 52 y 53 correspondientes.The output of the bitstream by the multiplexer of the bit stream 212 in FIG. 5a is input to a demultiplexer of the bitstream 102 in FIG. 5b. The bitstream demultiplexer 102 demultiplexes the bit stream in the downmix signal M and the residual signal D. The downmix signal M is input to a dequantizer 110a. The residual signal D is inserted into a dequantizer 110b. Additionally, the bit stream demultiplexer 102 demultiplexes a control information from the predictor 108 from the bit stream and inputs it into the predictor 1160. The predictor 1160 outputs a predicted side signal at ■ M and the combiner 1161 combines the signal residual emitted by the dequantizer 110b with the lateral signal provided to finally obtain the reconstructed lateral signal S. The signal is then input to the combiner 1162, which performs, for example, a sum / difference processing, as illustrated in Fig. 4c with respect to the central / lateral coding. Particularly, block 1162 performs a central / lateral decoding (inverse) to obtain a frequency domain representation of the left channel and a frequency domain representation of the right channel. The frequency domain representation below is converted into a time domain representation by the corresponding frequency / time converters 52 and 53.

Dependiendo de la implementación del sistema, los convertidores de frecuencia/tiempo 52, 53 son convertidores de frecuencia/tiempo de valor real cuando la representación del dominio de frecuencia es una representación de valor real, o convertidores de frecuencia/tiempo de valor complejo cuando la representación del dominio de frecuencia es una representación de valor complejo.Depending on the implementation of the system, the frequency / time converters 52, 53 are real time frequency / time converters when the frequency domain representation is a real value representation, or complex value frequency / time converters when the Frequency domain representation is a complex value representation.

Sin embargo, para aumentar la eficacia se prefiere llevar a cabo una transformada de valor real tal como se ilustra en otra implementación en la Fig. 6a para el codificador y de acuerdo con una forma de realización de la presente invención en la Fig. 6b para el decodificador de acuerdo con una forma de realización de la presente invención. Las transformadas de valor real 50 y 51 están implementadas por una MDCT. Adicionalmente, la información de predicción se calcula como un valor complejo que tiene una parte real y una parte imaginaria. Debido a que ambos espectros M, S son espectros de valor real y debido a que, por lo tanto, no existe ninguna parte imaginaria del espectro, se proporciona un convertidor de real a imaginario 2070, el cual calcula un espectro imaginario estimado 600 a partir del el espectro de valor real de la señal M. Este transformador de real a imaginario 2070 es una parte del optimizador 207, y el espectro imaginario 600 estimado por el bloque 2070 se introduce en la etapa del optimizador de a 2071 junto con el espectro real M para calcular la información de predicción 206, la cual ahora tiene un factor de valor real indicado en 2073 y un factor imaginario indicado en 2074. Ahora, de acuerdo con esta forma de realización, el espectro de valor real de la primera señal de combinación M se multiplica por la parte real aR 2073 para obtener la señal de predicción, la cual a continuación se sustrae del espectro lateral de valor real. Adicionalmente, el espectro imaginario 600 se multiplica por la parte imaginaria ai ilustrada en 2074 para obtener la señal de predicción adicional, donde esta señal de predicción a continuación se sustrae del espectro lateral de valor real tal como se indica en 2034b. Entonces, la señal de predicción residual D se cuantifica en el cuantificador 209b, en tanto que el espectro de valor real de M se cuantifica/codifica en el bloque 209a. Adicionalmente, se prefiere cuantificar y codificar la información de predicción a en el cuantificador/codificador de entropía 2072 para obtener el valor de a complejo codificado, el cual se transmite al multiplexor de la corriente de bits 212 de la Fig. 5a, por ejemplo, y el cual se introduce finalmente en una corriente de bits como la información de predicción.However, to increase the efficiency it is preferred to carry out a real value transform as illustrated in another implementation in Fig. 6a for the encoder and in accordance with an embodiment of the present invention in Fig. 6b for the decoder according to an embodiment of the present invention. The real value transforms 50 and 51 are implemented by an MDCT. Additionally, the prediction information is calculated as a complex value that has a real part and an imaginary part. Since both spectra M, S are real-value spectra and because, therefore, no imaginary part of the spectrum exists, a real-to-imaginary converter 2070 is provided, which calculates an estimated imaginary spectrum 600 from of the real value spectrum of the signal M. This transformer from real to imaginary 2070 is a part of the optimizer 207, and the imaginary spectrum 600 estimated by the block 2070 is introduced in the optimizer stage of a 2071 together with the real spectrum M to calculate the prediction information 206, which now has a real value factor indicated in 2073 and an imaginary factor indicated in 2074. Now, according to this embodiment, the real value spectrum of the first combination signal M is multiplied by the real part aR 2073 to obtain the prediction signal, which is then subtracted from the real-value side spectrum. Additionally, the imaginary spectrum 600 is multiplied by the imaginary part ai illustrated in 2074 to obtain the additional prediction signal, where this prediction signal is then subtracted from the real-value side spectrum as indicated in 2034b. Then, the residual prediction signal D is quantized in quantizer 209b, while the real value spectrum of M is quantized / encoded in block 209a. Additionally, it is preferred to quantize and encode the prediction information a in the entropy quantizer / encoder 2072 to obtain the value of a coded complex, which is transmitted to the bitstream multiplexer 212 of FIG. 5a, for example, and which is finally introduced into a stream of bits as the prediction information.

Con respecto a la posición del módulo de cuantificación/codificación (Q/C) 2072 para a, se destaca que los multiplicadores 2073 y 2074 preferentemente utilizan exactamente la misma a (cuantificada) que también se utilizará en el decodificador. De este modo se podría mover 2072 directamente hacia la salida de 2071, o se podría considerar que la cuantificación de a ya se ha tenido en cuenta en el proceso de optimización en 2071.Regarding the position of the quantization module / coding (Q / C) 2072 for a, it stands multipliers 2073 and 2074 preferably use exactly the same to (quantized) also used in the decoder. In this way, 2072 could be moved directly towards the 2071 output, or it could be considered that the quantification of a has already been taken into account in the optimization process in 2071.

A pesar de que se podría calcular un espectro complejo en el lado del codificador debido a que toda la información está disponible, se prefiere realizar la transformada de real a compleja en el bloque 2070 en el codificador de modo que se produzcan condiciones similares con respecto a un decodificador ilustrado en la Fig. 6b. El decodificador recibe un espectro codificado de valor real de la primera señal de combinación y una representación espectral de valor real de la señal residual codificada. Adicionalmente, se obtiene una información de predicción compleja codificada en 108 y se lleva a cabo una decodificación de entropía y una descuantificación en el bloque 65 para obtener la parte real aR ilustrada en 1160b y la parte imaginaria ai ilustrada en 1160c. Las señales centrales emitidas por los elementos de ponderación 1160b y 1160c se añaden a la señal de predicción residual decodificada y descuantificada. Particularmente, los valores espectrales introducidos en el ponderador 1160c, donde la parte imaginaria del factor de predicción compleja se utiliza como el factor de ponderación, provienen del espectro de valor real M por el convertidor de real a imaginario 1160a, el cual se implementa preferentemente del mismo modo que el bloque 2070 de la Fig. 6a relacionada con el lado del codificador. En el lado del decodificador no hay disponible una representación de valor complejo de la señal central o de la señal lateral, lo cual implica una diferencia con respecto al lado del codificador. El motivo es que sólo los espectros de valor real codificados se han transmitido desde el codificador hacia el decodificador debido a las tasas de bits y por razones de complejidad.Although a complex spectrum could be calculated on the encoder side because all the information is available, it is preferred to perform the transform from real to complex in block 2070 in the encoder so that similar conditions occur with respect to a decoder illustrated in Fig. 6b. The decoder receives a coded real-value spectrum of the first combining signal and a real-valued spectral representation of the coded residual signal. Additionally, a complex prediction information encoded at 108 is obtained and an entropy decoding and dequantization is performed in block 65 to obtain the real part aR illustrated at 1160b and the imaginary part ai illustrated at 1160c. The central signals emitted by the weighting elements 1160b and 1160c are added to the decoded and dequantized residual prediction signal. Particularly, the spectral values entered in the weigher 1160c, where the imaginary part of the complex prediction factor is used as the weighting factor, come from the real-value spectrum M by the imaginary-real converter 1160a, which is preferably implemented from the same as block 2070 of FIG. 6a related to the encoder side. On the decoder side, a complex value representation of the central signal or the side signal is not available, which implies a difference with respect to the encoder side. The reason is that only the coded real-valued spectra have been transmitted from the encoder to the decoder because of the bit rates and for complexity reasons.

El transformador de real a imaginario 1160a o el bloque correspondiente 2070 de la Fig. 6a se pueden implementar tal como se publica en el documento WO 2004/013839 A1 o en el documento WO 2008/014853 A1 o en la Patente de Estados Unidos N° 6.980.933. Como alternativa se puede aplicar cualquier otra implementación conocida en la técnica, y una implementación preferida se analiza en el contexto de las Figs. 10a, 10b.The real-to-imaginary transformer 1160a or the corresponding block 2070 of Fig. 6a can be implemented as published in WO 2004/013839 A1 or in WO 2008/014853 A1 or in U.S. Pat. 6,980,933. As an alternative, any other known implementation can be applied in the technique, and a preferred implementation is discussed in the context of Figs. 10a, 10b.

Específicamente, tal como se ilustra en la Fig. 10a, el convertidor de real a imaginario 1160a comprende un selector de trama espectral 1000 conectado a un calculador del espectro imaginario 1001. El selector de trama espectral 1000 recibe una indicación de una trama actual i en la entrada 1002 y, dependiendo de la implementación, información de control en una entrada de control 1003. Cuando, por ejemplo, la indicación en la línea 1002 indica que se tiene que calcular un espectro imaginario para una trama actual i, y cuando la información de control 1003 indica que sólo se tiene que utilizar la trama actual para dicho cálculo, entonces el selector de trama espectral 1000 sólo selecciona la trama actual i y transmite esta información al calculador de espectro imaginario. Por lo tanto, el calculador de espectro imaginario sólo utiliza las líneas espectrales de la trama actual i para llevar a cabo una combinación ponderada de las líneas ubicadas en la trama actual (bloque 1008), con respecto a la frecuencia, próxima a, o alrededor de la línea espectral actual k, para la cual se tiene que calcular una línea imaginaria tal como se ilustra en 1004 en la Fig. 10b. Sin embargo, cuando el selector de trama espectral 1000 recibe una información de control 1003 que indica que la trama anterior i-1 y la trama siguiente i+1 se tienen que utilizar también para el cálculo del espectro imaginario, entonces el calculador de espectro imaginario adicionalmente recibe los valores provenientes de las tramas i-1 y i+1 y lleva a cabo una combinación ponderada de las líneas en las tramas correspondientes tal como se ilustra en 1005 para la trama i-1 y en 1006 para la trama i+1. Los resultados de las operaciones de ponderación se combinan mediante una combinación ponderada en el bloque 1007 para obtener finalmente una línea imaginaria k para la trama fi la cual a continuación se multiplica por la parte imaginaria de la información de predicción en el elemento 1160c para obtener la señal de predicción para esta línea, la cual a continuación se añade a la línea correspondiente de la señal central en el sumador 1161b para el decodificador. En el codificador se lleva a cabo la misma operación, si bien se realiza una sustracción en el elemento 2034b.Specifically, as illustrated in Fig. 10a, the imaginary real converter 1160a comprises a spectral frame selector 1000 connected to an imaginary spectrum calculator 1001. The spectral frame selector 1000 receives an indication of a current frame i in input 1002 and, depending on the implementation, control information at a control input 1003. When, for example, the indication on line 1002 indicates that an imaginary spectrum has to be calculated for a current frame i, and when the information control 1003 indicates that only the current frame has to be used for said calculation, then the spectral frame selector 1000 only selects the current frame i and transmits this information to the imaginary spectrum calculator. Therefore, the imaginary spectrum calculator only uses the spectral lines of the current frame i to perform a weighted combination of the lines located in the current frame (block 1008), with respect to the frequency, close to, or around of the current spectral line k, for which an imaginary line has to be calculated as illustrated at 1004 in Fig. 10b. However, when the spectral frame selector 1000 receives control information 1003 which indicates that the previous frame i-1 and the following frame i + 1 must also be used for the calculation of the imaginary spectrum, then the imaginary spectrum calculator additionally it receives the values coming from the frames i-1 and i + 1 and carries out a weighted combination of the lines in the corresponding frames as illustrated in 1005 for the frame i-1 and in 1006 for the frame i + 1 . The results of the weighting operations are combined by a weighted combination in block 1007 to finally obtain an imaginary line k for the frame fi which is then multiplied by the imaginary part of the prediction information in element 1160c to obtain the prediction signal for this line, which is then added to the corresponding line of the central signal in adder 1161b for the decoder. The same operation is carried out in the encoder, although a subtraction is carried out in the element 2034b.

Cabe destacar que la información de control 1003 puede indicar adicionalmente el uso de más tramas que las dos tramas circundantes o, por ejemplo, el uso de la trama actual y exactamente uno o más tramas anteriores pero sin utilizar tramas “futuras” para reducir el retardo sistemático.It should be noted that the control information 1003 may additionally indicate the use of more frames than the two surrounding frames or, for example, the use of the current frame and exactly one or more previous frames but without using "future" frames to reduce the delay systematic.

Adicionalmente, cabe destacar que la combinación ponderada en etapas ilustrada en la Fig. 10b, en la cual, en una primera operación, se combinan las líneas provenientes de una trama y, posteriormente, se combinan por sí mismos los resultados de dichas operaciones de combinación en tramas, también se puede llevar a cabo en el otro orden. El otro orden significa que, en una primera etapa, las líneas para la frecuencia actual k provenientes de un número de tramas adyacentes indicado por la información de control 103 se combinan mediante una combinación ponderada. Esta combinación ponderada se lleva a cabo para las líneas k, k-1, k-2, k+1, k+2, etc., dependiendo del número de líneas adyacentes a utilizar para estimar la línea imaginaria. Entonces, los resultados de dichas combinaciones “en tiempo” se someten a una combinación ponderada en la “dirección de frecuencia” para obtener finalmente la línea imaginaria k para la trama fi. Los valores ponderados se fijan en un valor -1 y 1 preferentemente, y las ponderaciones se pueden implementar en una combinación directa de filtro FIR o IIR, la cual lleva a cabo una combinación lineal de líneas espectrales o de señales espectrales de distintas frecuencias y distintas tramas.Additionally, it should be noted that the stepwise combination illustrated in Fig. 10b, in which, in a first operation, the lines coming from a frame are combined and, subsequently, the results of said combination operations are combined by themselves. in frames, it can also be carried out in the other order. The other order means that, in a first step, the lines for the current frequency k from a number of adjacent frames indicated by the control information 103 are combined by a weighted combination. This weighted combination is carried out for the lines k, k-1, k-2, k + 1, k + 2, etc., depending on the number of adjacent lines to be used to estimate the imaginary line. Then, the results of said combinations "in time" are subjected to a weighted combination in the "frequency direction" to finally obtain the imaginary line k for the frame fi. The weighted values are preferably set to -1 and 1, and the weights can be implemented in a direct combination of FIR or IIR filter, which performs a linear combination of spectral lines or spectral signals of different frequencies and different frames.

Tal como se indica en las Figs. 6a y 6b, el algoritmo de transformada preferido es el algoritmo de transformada MDCT, el cual se aplica en la dirección hacia delante en los elementos 50 y 51 en la Fig. 6a y el cual se aplica en la dirección hacia atrás en los elementos 52, 53, posterior a una operación de combinación en el combinador 1162 que opera en el dominio espectral.As indicated in Figs. 6a and 6b, the preferred transform algorithm is the MDCT transform algorithm, which is applied in the forward direction in the elements 50 and 51 in Fig. 6a and which is applied in the backward direction in the elements 52 , 53, subsequent to a combination operation in combiner 1162 operating in the spectral domain.

La Fig. 8a ilustra una implementación más detallada del bloque 50 o 51. Particularmente, se introduce una secuencia de muestras de audio del dominio de tiempo en un generador de ventanas de análisis 500, el cual lleva a cabo una operación de generación de ventanas que utiliza una ventana de análisis y, particularmente, lleva a cabo esta operación en una trama mediante un modo de tramas pero utilizando un paso o solapamiento del 50 %. El resultado del generador de ventanas de análisis, es decir, una secuencia de tramas de muestras divididas en ventanas se introduce en un bloque de transformada MDCT 501, el cual emite la secuencia de tramas de MDCT de valor real, donde estas tramas están afectadas por el solapamiento. A modo de ejemplo, el generador de ventanas de análisis aplica ventanas de análisis que tienen una longitud de 2048 muestras. Entonces, el bloque de transformada MDCT 501 emite espectros de MDCT que tienen 1024 líneas espectrales reales o valores MDCT. Preferentemente, el generador de ventanas de análisis 500 y/o el transformador de MDCT 501 se pueden controlar mediante un control de longitud de ventana o longitud de transformada 502 de modo que, por ejemplo, para las porciones transitorias en la señal, la longitud de ventana/longitud de transformada se reduce para obtener mejores resultados de codificación. Fig. 8a illustrates a more detailed implementation of block 50 or 51. Particularly, a sequence of audio samples of the time domain is introduced in an analysis window generator 500, which performs a window generation operation that uses an analysis window and, in particular, performs this operation in a frame using a frame mode but using a step or overlap of 50%. The result of the analysis window generator, that is, a sequence of frames of samples divided into windows, is input to a MDCT transform block 501, which outputs the sequence of MDCT frames of real value, where these frames are affected by the overlap As an example, the analysis window generator applies analysis windows that have a length of 2048 samples. Then, the MDCT transform block 501 emits MDCT spectra having 1024 real spectral lines or MDCT values. Preferably, the analysis window generator 500 and / or the MDCT transformer 501 can be controlled by a window length control or transform length 502 so that, for example, for the transient portions in the signal, the length of window / transform length is reduced to obtain better coding results.

La Fig. 8b ilustra la operación de MDCT inversa llevada a cabo en los bloques 52 y 53. A modo de ejemplo, el bloque 52 comprende un bloque 520 para llevar a cabo una transformada de MDCt inversa trama por trama. Cuando, por ejemplo, una trama de valores MDCT tiene 1024 valores, entonces la salida de esta transformada inversa de MDCT tiene 2048 muestras de tiempo afectadas por el solapamiento. Dicha trama se suministra a un generador de ventanas de síntesis 521, el cual aplica una venta de síntesis a esta trama de 2048 muestras. La trama dividida en ventanas a continuación se transmite a un procesador de solapar/añadir 522, el cual, a modo de ejemplo, aplica un 50 % de solapamiento entre dos tramas subsiguientes y, entonces, lleva a cabo una adición de muestra por muestra de modo que un bloque de 2048 muestras finalmente da como resultado 1024 muestras nuevas de la señal de salida libre de solapamiento. Nuevamente se prefiere aplicar un control de longitud de ventana/transformada utilizando información, la cual por ejemplo se transmite en la información secundaria de la señal multicanal codificada según lo indicado en 523.Fig. 8b illustrates the reverse MDCT operation carried out in blocks 52 and 53. By way of example, block 52 comprises a block 520 for performing a frame-by-frame reverse MDCt transform. When, for example, a MDCT value frame has 1024 values, then the output of this inverse MDCT transform has 2048 time samples affected by the overlap. Said frame is supplied to a synthesis window generator 521, which applies a synthesis sale to this frame of 2048 samples. The frame divided into windows is then transmitted to an overlay / add processor 522, which, by way of example, applies a 50% overlap between two subsequent frames and, then, performs an addition of sample per sample so that a block of 2048 samples eventually results in 1024 new samples of the overlapping free output signal. Again it is preferred to apply a window / transform length control using information, which for example is transmitted in the secondary information of the encoded multichannel signal as indicated in 523.

Los valores de predicción de a se podrían calcular para cada una de las líneas espectrales individuales de un espectro de MDCt . Sin embargo, se ha descubierto que esto no es necesario y que se puede ahorrar una cantidad significativa de información secundaria llevando a cabo un cálculo de bandas de la información de predicción. En otros términos, un convertidor espectral 50 ilustrado en la Fig. 9, el cual es por ejemplo un procesador de MDCT como se analiza en el contexto de la Fig. 8a, proporciona un espectro de resolución de alta frecuencia que tiene determinadas líneas espectrales ilustradas en la Fig. 9b. Este espectro de resolución de alta frecuencia se utiliza por un selector de línea espectral 90 que proporciona un espectro de resolución de baja frecuencia, el cual comprende determinadas bandas B1, B2, B3, ... , BN. Este espectro de resolución de baja frecuencia se transmite al optimizador 207 para calcular la información de predicción de modo que no se calcula una información de predicción para cada una de las líneas espectrales, sino que solamente para cada una de las bandas. Para tal fin, el optimizador 207 recibe las líneas espectrales por banda y calcula la operación de optimización basándose en la presunción de que se utiliza el mismo valor a para todas las líneas espectrales en la banda.The prediction values of a could be calculated for each of the individual spectral lines of a MDCt spectrum. However, it has been found that this is not necessary and that a significant amount of secondary information can be saved by carrying out a band calculation of the prediction information. In other words, a spectral converter 50 illustrated in FIG. 9, which is for example an MDCT processor as discussed in the context of FIG. 8a, provides a high frequency resolution spectrum having certain illustrated spectral lines. in Fig. 9b. This high frequency resolution spectrum is used by a spectral line selector 90 which provides a low frequency resolution spectrum, which comprises certain bands B1, B2, B3, ..., BN. This low frequency resolution spectrum is transmitted to the optimizer 207 to calculate the prediction information so that a prediction information is not calculated for each of the spectral lines, but only for each of the bands. For this purpose, the optimizer 207 receives the spectral lines per band and calculates the optimization operation based on the presumption that the same value a is used for all the spectral lines in the band.

Preferentemente, las bandas están conformadas en una forma psicoacústica de modo que el ancho de banda de las bandas aumenta desde frecuencias inferiores hasta frecuencias superiores tal como se ilustra en la Fig. 9b. Como alternativa, a pesar de que no se prefiere tanto como la implementación de ancho de banda en aumento, también se podrían utilizar bandas de frecuencia de igual tamaño, donde cada una de las bandas de frecuencia tiene al menos dos o, típicamente muchas más, tal como al menos 30 líneas de frecuencia. Típicamente, para un espectro de 1024 líneas espectrales se calculan menos de 30 valores de a complejos, y preferentemente, más de 5 valores de a. Para los espectros con menos de 1024 líneas espectrales (por ejemplo, 128 líneas) se utilizan preferentemente menos bandas de frecuencia (por ejemplo, 6) para a.Preferably, the bands are formed in a psychoacoustic manner so that the bandwidth of the bands increases from lower frequencies to higher frequencies as illustrated in FIG. 9b. As an alternative, although it is not preferred as much as the implementation of increasing bandwidth, frequency bands of equal size could also be used, where each of the frequency bands has at least two or, typically many more, such as at least 30 frequency lines. Typically, for a spectrum of 1024 spectral lines, less than 30 values of a complexes are calculated, and preferably, more than 5 values of a. For the spectra with less than 1024 spectral lines (eg, 128 lines), preferably less frequency bands (eg, 6) are used for a.

Para calcular los valores de a no se requiere necesariamente el espectro de MDCT de alta resolución. Como alternativa, también se puede utilizar un banco de filtros que tiene una resolución de frecuencia similar a la resolución necesaria para calcular los valores de a. Cuando se tienen que implementar bandas que aumentan en frecuencia, en ese caso dicho banco de filtros debería tener un ancho de banda variable. Sin embargo, cuando es suficiente un ancho de banda constante de frecuencias bajas a altas, entonces se puede utilizar un banco de filtros tradicional con sub-bandas de ancho equivalente.To calculate the values of a , the high resolution MDCT spectrum is not necessarily required. As an alternative, you can also use a filter bank that has a frequency resolution similar to the resolution needed to calculate the values of a. When bands that increase in frequency have to be implemented, in that case said filter bank should have a variable bandwidth. However, when a constant bandwidth of low to high frequencies is sufficient, then a traditional filter bank with sub-bands of equivalent width can be used.

Dependiendo de la implementación, el signo del valor de a indicado en la Fig. 3b o 4b se puede invertir. Sin embargo, para ser coherentes, es necesario que dicha reversión del signo se utilice en el lado del codificador así como también en el lado del decodificador. A diferencia de la Fig. 6a, la Fig. 5a ilustra una vista generalizada del codificador, donde el elemento 2033 es un predictor que se controla por la información de control del predictor 206, la cual se determina en el elemento 207 y la cual se incorpora como información secundaria en la corriente de bits. En lugar de la MDCT utilizada en la Fig. 6a en los bloques 50, 51 se utiliza una transformada generalizada de tiempo/frecuencia en la Fig. 5a tal como se analiza. Según se indicó anteriormente, la Fig. 6a es el proceso del codificador, el cual corresponde al proceso del decodificador en la Fig. 6b, donde L representa la señal de canal izquierdo, R representa la señal de canal derecho, M representa la señal central o la señal de mezcla descendente, S representa la señal lateral y D representa la señal residual. Como alternativa, L también se conoce como la primera señal de canal 201, R también se conoce como la segunda señal de canal 202, M también se conoce como la primera señal de combinación 204 y S también se conoce como la segunda señal de combinación 2032.Depending on the implementation, the sign of the value of a indicated in Fig. 3b or 4b can be inverted. However, in order to be coherent, it is necessary that said reversion of the sign be used on the encoder side as well as on the decoder side. Unlike Fig. 6a, Fig. 5a illustrates a generalized view of the encoder, where item 2033 is a predictor that is controlled by the predictor control information 206, which is determined in item 207 and which is it incorporates as secondary information in the bitstream. Instead of the MDCT used in Fig. 6a in blocks 50, 51 a generalized time / frequency transform is used in Fig. 5a as analyzed. As indicated above, Fig. 6a is the encoder process, which corresponds to the decoder process in Fig. 6b, where L represents the left channel signal, R represents the right channel signal, M represents the center signal or the downmix signal, S represents the side signal and D represents the residual signal. Alternatively, L is also known as the first channel signal 201, R is also known as the second channel signal 202, M is also known as the first combination signal 204, and S is also known as the second combination signal 2032 .

Preferentemente, los módulos 2070 en el codificador y 1160a en el decodificador deberían coincidir exactamente para asegurar una correcta codificación de forma de onda. Esto se aplica preferentemente al caso en el cual dichos módulos utilizan alguna forma de aproximación tal como filtros truncados o cuando se utiliza solamente uno o dos en lugar de tres tramas de MDCT, es decir, la trama de MDCT actual en la línea 60, la trama de MDCT anterior en la línea 61 y la trama de MDCT siguiente en la línea 62.Preferably, the modules 2070 in the encoder and 1160a in the decoder should exactly match to ensure correct waveform coding. This applies preferably to the case in which said modules use some form of approximation such as truncated filters or when only one or two are used instead of three MDCT frames, ie the current MDCT frame on line 60, the MDCT frame above on line 61 and the next MDCT frame on line 62.

Adicionalmente, se prefiere que el módulo 2070 en el codificador en la Fig. 6a utilice el espectro de MDCT no cuantificado M como entrada, a pesar de que el módulo de real a imaginario (R21) 1160a en el decodificador tiene sólo el espectro de MDCT cuantificado disponible como entrada. Como alternativa, se puede utilizar también una implementación en la cual el codificador utiliza los coeficientes de MDCT cuantificados como entrada en el módulo 2070. Sin embargo, el uso del espectro de MDCT no cuantificado como entrada en el módulo 2070 es el enfoque preferido desde un punto de vista perceptual.Additionally, it is preferred that the module 2070 in the encoder in Fig. 6a uses the non-quantized MDCT spectrum M as input, although the real-to-imaginary (R21) 1160a module in the decoder has only the MDCT spectrum quantified available as input. Alternatively, an implementation in which the encoder uses the MDCT coefficients quantized as input in the 2070 module can also be used. However, the use of the non-quantized MDCT spectrum as input to the 2070 module is the preferred approach from a Perceptual point of view.

A continuación se analizan más detalladamente diversos aspectos de formas de realización de la presente invención.In the following, various aspects of embodiments of the present invention are discussed in more detail.

La codificación de estéreo paramétrico convencional se basa en la capacidad del dominio de QMF (híbrido) complejo sobremuestreado de permitir un procesamiento de señales perceptualmente motivado con variación de tiempo y frecuencia sin introducir artefactos de solapamiento. Sin embargo, en el caso de la codificación de mezcla descendente/residual (como se utiliza para las altas tasas de bits consideradas en este punto), el codificador de estéreo unificado resultante actúa como un codificador de forma de onda. Esto permite la operación en un dominio críticamente muestreado, tal como el dominio de MDCT, debido a que el paradigma de codificación de forma de onda asegura que la propiedad de cancelación de solapamiento de la cadena de procesamiento de MDCT-IMDCT se conserve suficientemente bien.Conventional parametric stereo coding is based on the ability of the over-sampled complex QMF (hybrid) domain to allow perceptually motivated signal processing with time variation and frequency without introducing overlapping artifacts. However, in the case of the down / residual mix encoding (as used for the high bitrates considered in this section), the resulting unified stereo encoder acts as a waveform encoder. This allows operation in a critically sampled domain, such as the MDCT domain, because the waveform coding paradigm ensures that the overlap cancellation property of the MDCT-IMDCT processing chain is sufficiently well preserved.

Sin embargo, para poder aprovechar la eficacia de codificación mejorada que se puede lograr en el caso de señales estéreo con diferencias de tiempo o fase entre canales por medio de un coeficiente de predicción de valor complejo a, se necesita una representación de valor complejo de dominio de frecuencia de la señal de mezcla descendente DMX como entrada en la matriz de mezcla ascendente de valor complejo. Esto se puede obtener utilizando una transformada de MDST además de la transformada de MDCT para la señal DMX. El espectro de MDST se puede calcular (en forma exacta o como una aproximación) a partir del espectro de MDCT.However, in order to take advantage of the improved coding efficiency that can be achieved in the case of stereo signals with time or phase differences between channels by means of a complex value prediction coefficient a, a complex domain value representation is needed. frequency of the DMX downmix signal as input into the complex value upmix array. This can be obtained by using an MDST transform in addition to the MDCT transform for the DMX signal. The MDST spectrum can be calculated (in exact form or as an approximation) from the MDCT spectrum.

Asimismo, la parametrización de la matriz de mezcla ascendente se puede simplificar transmitiendo el coeficiente de predicción compleja a en lugar de los parámetros MPS. De este modo, se transmiten sólo dos parámetros (parte real e imaginaria de a) en lugar de tres (ICC, CLD y IPD). Esto resulta posible debido a la redundancia en la parametrización de MPS en el caso de la codificación de mezcla descendente/residual. La parametrización de MPS incluye información acerca de la cantidad relativa de descorrelación a añadir en el decodificador (es decir, la relación de energía entre las señales RES y DMX), y esta información es redundante cuando se transmiten las señales reales DMX y RES.Also, the parameterization of the upmix matrix can be simplified by transmitting the complex prediction coefficient a instead of the MPS parameters. In this way, only two parameters are transmitted (real and imaginary part of a) instead of three (ICC, CLD and IPD). This is possible due to the redundancy in the parameterization of MPS in the case of the down / residual mix coding. The MPS parameterization includes information about the relative amount of decorrelation to be added at the decoder (ie, the energy ratio between the RES and DMX signals), and this information is redundant when the real DMX and RES signals are transmitted.

Debido a la misma razón, el factor de ganancia g, mostrado en la matriz de mezcla ascendente anterior, es obsoleto en el caso de la codificación de mezcla descendente/residual. De este modo, la matriz de mezcla ascendente para la codificación de mezcla descendente/residual con predicción compleja es ahora:Due to the same reason, the gain factor g, shown in the previous upmix matrix, is obsolete in the case of the down / residual mix coding. In this way, the upmix matrix for the down / residual mix coding with complex prediction is now:

Figure imgf000012_0001
Figure imgf000012_0001

En comparación con la Ecuación 1169 en la Fig. 4b, el signo de alfa está invertido en esta ecuación, y DMX=M y RES=D. Esta es, por lo tanto, una implementación/notación alternativa con respecto a la Fig. 4b.Compared to Equation 1169 in Fig. 4b, the alpha sign is inverted in this equation, and DMX = M and RES = D. This is, therefore, an alternative implementation / notation with respect to Fig. 4b.

Existen dos opciones para calcular la señal de predicción residual en el codificador. Una opción consiste en utilizar los valores espectrales de MDCT cuantificados de la mezcla descendente. Esto tendría como resultado la misma distribución de error de cuantificación que en la codificación M/S debido a que el codificador y el decodificador utilizan los mismos valores para generar la predicción. La otra opción consiste en utilizar los valores espectrales de MDCT no cuantificados. Esto implica que el codificador y el decodificador no utilizarán los mismos datos para generar la predicción, lo que permite la redistribución espacial del error de codificación de acuerdo con las propiedades de enmascaramiento instantáneo de la señal a expensas de una ganancia de codificación un tanto reducida.There are two options for calculating the residual prediction signal in the encoder. One option is to use the quantized MDCT spectral values of the downmix. This would result in the same quantization error distribution as in the M / S coding because the encoder and the decoder use the same values to generate the prediction. The other option is to use the non-quantized MDCT spectral values. This implies that the encoder and the decoder will not use the same data to generate the prediction, which allows the spatial redistribution of the coding error according to the instantaneous masking properties of the signal at the expense of a somewhat reduced coding gain.

Es preferible calcular el espectro de MDST directamente en el dominio de frecuencia por medio del filtrado bidimensional de FIR de tres tramas de MDCT adyacentes como se ha analizado. Los último se puede considerar como una transformada “de real a imaginaria” (R2I). La complejidad del cálculo de frecuencia-dominio de la MDST se puede reducir de diversas formas, lo que significa que se calcula sólo una aproximación del espectro de MDST:It is preferable to calculate the MDST spectrum directly in the frequency domain by means of two-dimensional FIR filtering of three adjacent MDCT frames as analyzed. The latter can be considered as a transform "from real to imaginary" (R2I). The complexity of the frequency-domain calculation of the MDST can be reduced in various ways, which means that only an approximation of the MDST spectrum is calculated:

• Limitando el número de derivaciones de filtro FIR.• Limiting the number of FIR filter branches.

• Estimando la MDST a partir de la trama de MDCT real solamente.• Estimating the MDST from the real MDCT plot only.

• Estimando la MDST a partir de la trama de MDCT previa y actual.• Estimating the MDST from the previous and current MDCT plot.

Siempre que se utilice la misma aproximación en el codificador y en el decodificador, las propiedades de codificación de forma de onda no resultarán afectadas. Dichas aproximaciones del espectro de MDST, sin embargo, pueden conducir a una reducción en la ganancia de codificación lograda por la predicción compleja.Whenever the same approximation is used in the encoder and the decoder, the waveform coding properties will not be affected. Such approximations of the MDST spectrum, however, can lead to a reduction in the coding gain achieved by the complex prediction.

En caso de que el codificador de MDCT subyacente soporte la conmutación de forma de ventana, los coeficientes del filtro bidimensional FIR utilizado para calcular el espectro de MDST tienen que adaptarse a las formas de ventana reales. Los coeficientes de filtros aplicados al espectro de MDCT de la trama actual dependen de la ventana completa, es decir, es necesario un conjunto de coeficientes para cada tipo de ventana y para cada transición de ventana. Los coeficientes de filtros aplicados al espectro de MDCT de la trama anterior/siguiente dependen sólo del solapamiento de la mitad de ventana con la trama actual, es decir, para éstos es necesario un conjunto de coeficientes sólo para cada tipo de ventana (sin coeficientes adicionales para las transiciones). In case the underlying MDCT encoder supports window form switching, the coefficients of the FIR two-dimensional filter used to calculate the MDST spectrum have to be adapted to the actual window forms. The filter coefficients applied to the MDCT spectrum of the current frame depend on the entire window, that is, a set of coefficients is required for each type of window and for each window transition. The filter coefficients applied to the MDCT spectrum of the previous / next frame depend only on the overlap of the window half with the current frame, that is, for these a set of coefficients is necessary only for each window type (without additional coefficients) for transitions).

En caso de que el codificador de MDCT subyacente utilice una conmutación de longitud de transformada, incluyendo la trama de MDCT anterior y/o siguiente en la aproximación, esto resulta más complicado alrededor de las transiciones entre las distintas longitudes de transformadas. Debido al distinto número de coeficientes de MDCT en la trama actual y anterior/siguiente, el filtrado bidimensional resulta más complicado en este caso. Para evitar la creciente complejidad computacional y estructural, la trama anterior/siguiente se puede excluir del filtrado en las transiciones de longitud de transformada, a expensas de una menor exactitud de la aproximación para las tramas respectivas.In case the underlying MDCT encoder uses a transform-length switch, including the previous and / or next MDCT frame in the approach, this becomes more complicated around the transitions between the different transform lengths. Due to the different number of MDCT coefficients in the current and previous / next frames, two-dimensional filtering is more complicated in this case. To avoid the increasing computational and structural complexity, the previous / next frame can be excluded from the filtering in the transitions of transform length, at the expense of a lower accuracy of the approximation for the respective frames.

Asimismo, se debe tener especial cuidado con las partes más bajas y más altas del espectro de MDST (próximas a DC y fs/2), donde hay menos coeficientes de MDCT circundantes para el filtrado de FIR que los necesarios. Aquí, el proceso de filtrado necesita adaptarse para calcular el espectro de MDST correctamente. Esto se puede llevar a cabo, ya sea utilizando una extensión simétrica del espectro de MDCT para los coeficientes que faltan (de acuerdo con la periodicidad de los espectros de señales discretas de tiempo), o adaptando los coeficientes de filtro en forma correspondiente. Por supuesto, el tratamiento de dichos casos especiales se puede simplificar a expensas de una menor exactitud en la proximidad de los límites del espectro de MDST.Also, special care should be taken with the lower and higher parts of the MDST spectrum (close to DC and fs / 2), where there are fewer surrounding MDCT coefficients for FIR filtering than necessary. Here, the filtering process needs to be adapted to calculate the MDST spectrum correctly. This can be done either by using a symmetric extension of the MDCT spectrum for the missing coefficients (according to the periodicity of the discrete time signal spectra), or by adapting the filter coefficients accordingly. Of course, the treatment of such special cases can be simplified at the expense of less accuracy in the vicinity of the MDST spectrum limits.

El cálculo del espectro de MDST exacto desde los espectros de MDCT transmitidos en el decodificador aumenta el retardo del decodificador por una trama (aquí se presume que son 1024 muestras).The calculation of the exact MDST spectrum from the MDCT spectra transmitted in the decoder increases the decoder delay by one frame (here it is presumed to be 1024 samples).

El retardo adicional se puede evitar utilizando una aproximación del espectro de MDST que no requiere el espectro de MDCT de la trama siguiente como entrada.The additional delay can be avoided by using an approximation of the MDST spectrum that does not require the MDCT spectrum of the next frame as input.

La siguiente lista de elementos resume las ventajas de la codificación estéreo unificada basada en MDCT en comparación con la codificación estéreo unificada basada en QMF:The following list of elements summarizes the advantages of unified stereo coding based on MDCT compared to unified stereo coding based on QMF:

• Sólo un pequeño aumento en la complejidad computacional (cuando no se utiliza SBR).• Only a small increase in computational complexity (when SBR is not used).

• Amplía la capacidad hasta una reconstrucción perfecta si los espectros de MDCT no están cuantificados. Cabe destacar que esto no ocurre para la codificación estéreo unificada basada en QMF.• Extend capacity to perfect reconstruction if the MDCT spectra are not quantized. Note that this does not happen for unified stereo encoding based on QMF.

• Extensión natural de la codificación M/S e intensidad de la codificación estéreo.• Natural extension of M / S coding and intensity of stereo coding.

• Arquitectura de limpieza que simplifica el ajuste del codificador, debido a que el procesamiento de la señal estéreo y la cuantificación/codificación se pueden acoplar fuertemente. Cabe destacar que en la codificación estéreo unificada basada en QMF, las tramas de envolvente de MPEG y las tramas de MDCT no están alineadas y dichas bandas de factor de escala no coinciden con las bandas del parámetro.• Cleaning architecture that simplifies the encoder setting, because stereo signal processing and quantization / coding can be strongly coupled. It should be noted that in the unified stereo encoding based on QMF, the MPEG envelope frames and the MDCT frames are not aligned and said scale factor bands do not coincide with the bands of the parameter.

• Codificación eficaz de parámetros de estéreo, debido a que sólo se tienen que transmitir dos parámetros (a compleja) en lugar de tres parámetros como en envolvente de MPEG (ICC, CLD, IPD).• Effective encoding of stereo parameters, because only two parameters have to be transmitted (to complex) instead of three parameters as in MPEG envelope (ICC, CLD, IPD).

• No presenta un retardo adicional en el decodificador si el espectro de MDST se calcula como una aproximación (sin utilizar la trama siguiente).• It does not present an additional delay in the decoder if the MDST spectrum is calculated as an approximation (without using the next frame).

Las propiedades importantes de una implementación se pueden resumir del siguiente modo:The important properties of an implementation can be summarized as follows:

a) Los espectros de MDST se calculan por medio del filtrado bidimensional de FIR a partir de los espectros de MDCT actuales, anteriores y siguientes. Se posibilitan distintas compensaciones de complejidad/calidad para el cálculo de MDST (aproximación) reduciendo el número de derivaciones de filtro FIR y/o el número de tramas de MDCT utilizadas. En particular, si una trama adyacente no está disponible debido a la pérdida de trama durante la transmisión o la conmutación de longitud de transformada, dicha trama particular se excluye del valor estimado de MDST. Para el caso de la conmutación de longitud de transformada, la exclusión se señala en la corriente de bits.a) The MDST spectra are calculated by means of two-dimensional FIR filtering from the current, previous and following MDCT spectra. Different complexity / quality compensations are enabled for the calculation of MDST (approximation) by reducing the number of FIR filter derivations and / or the number of MDCT frames used. In particular, if an adjacent frame is not available due to frame loss during transmission or transform-length switching, that particular frame is excluded from the estimated value of MDST. For the case of the transformation length switching, the exclusion is indicated in the bitstream.

b) Sólo dos parámetros, la parte real e imaginaria del coeficiente de predicción compleja a, se transmiten en lugar de ICC, CLD, e IPD. Las partes reales e imaginarias de a se tratan en forma independiente, se limitan al rango [-3,0, 3,0] y se cuantifican con un tamaño de paso de 0,1. Si un determinado parámetro (parte real o imaginaria de a) no se utiliza en una determinada trama, esto se señala en la corriente de bits, y el parámetro irrelevante no se transmite. Los parámetros se codifican en forma diferencial al tiempo o en forma diferencial a la frecuencia y finalmente se aplica la codificación de Huffman utilizando el libro de códigos de factor de escala. Los coeficientes de predicción se actualizan cada segunda banda de factor de escala, lo que produce una resolución de frecuencia similar a la resolución de frecuencia del envolvente de MPEG. Este esquema de cuantificación y codificación da como resultado una tasa promedio de bits de aproximadamente 2 kb/s para la información secundaria estéreo dentro de una configuración típica que tiene un objetivo de tasa de bits de 96 kb/s. b) Only two parameters, the real and imaginary part of the complex prediction coefficient a, are transmitted in place of ICC, CLD, and IPD. The real and imaginary parts of a are treated independently, are limited to the range [-3.0, 3.0] and are quantified with a step size of 0.1. If a certain parameter (real or imaginary part of a) is not used in a certain frame, this is signaled in the bit stream, and the irrelevant parameter is not transmitted. The parameters are coded differentially to time or differential to the frequency and finally the Huffman coding is applied using the scale factor codebook. The prediction coefficients are updated every second scale factor band, which produces a frequency resolution similar to the frequency resolution of the MPEG envelope. This quantization and coding scheme results in an average bitrate of approximately 2 kb / s for the secondary stereo information within a typical configuration having a bit rate objective of 96 kb / s.

Los detalles preferidos, adicionales o alternativos de la implementación comprenden:Preferred, additional or alternative details of the implementation include:

c) Para cada uno de los dos parámetros de a se puede elegir una codificación no diferencial (PCM) o diferencial (DPCM) por trama o por corriente, señalada por un bit correspondiente en la corriente de bits. Para codificación DPCM, es posible, ya sea una codificación diferencial de tiempo o de frecuencia. Nuevamente, esto se puede señalar utilizando una bandera de un bit.c) For each of the two parameters of a, a non-differential (PCM) or differential (DPCM) coding may be chosen per frame or current, indicated by a corresponding bit in the bit stream. For DPCM coding, it is possible, either a differential time or frequency coding. Again, this can be signaled by using a one-bit flag.

d) En lugar de reutilizar un código predefinido tal como el libro de factor de escala AAC, se puede utilizar un libro de código especializado no variable o adaptativo de señales para codificar los valores del parámetro a, o se puede volver a palabras de código sin signo de longitud fija (por ejemplo, de 4 bits) o de complemento de dos. e) El rango de los valores del parámetro a así como también el tamaño del paso de cuantificación de parámetros se pueden elegir arbitrariamente y optimizar hasta las características de señales en cuestión.d) Instead of reusing a predefined code such as the AAC scale factor book, a specialized non-variable or adaptive code book of signals can be used to encode the values of parameter a, or it can be reverted to code words without fixed-length (for example, 4-bit) sign or complement of two. e) The range of the values of parameter a as well as the size of the parameter quantization step can be chosen arbitrarily and optimized up to the signal characteristics in question.

f) El número y ancho espectral y/o temporal de las bandas de parámetro activo a se pueden elegir arbitrariamente y optimizar hasta las características de señales determinadas. En particular, la configuración de banda se puede señalar por trama o por corriente.f) The number and spectral and / or temporal width of the active parameter bands a can be chosen arbitrarily and optimized up to the characteristics of certain signals. In particular, the band configuration can be indicated by frame or by current.

g) Además de, o en lugar de los mecanismos indicados en a) anteriormente, se puede señalar explícitamente por medio de un bit por trama en la corriente de bits que sólo se utiliza el espectro de MDCT de la trama actual para calcular la aproximación del espectro de MDST, es decir, que las tramas de MDCT adyacentes no se tienen en cuenta.g) In addition to or instead of the mechanisms indicated in a) above, it can be explicitly indicated by means of one bit per frame in the bit stream that only the MDCT spectrum of the current frame is used to calculate the approximation of the MDST spectrum, ie, that adjacent MDCT frames are not taken into account.

Las formas de realización se refieren a un sistema de la invención para la codificación estéreo unificada en el dominio de MDCT. Esto permite utilizar las ventajas de la codificación estéreo unificada en el sistema de USAC de MPEG incluso a tasas de bits más altas (donde no se utiliza SBR) sin el aumento significativo en la complejidad computacional que ocurriría con un enfoque basado en QMF.The embodiments relate to a system of the invention for unified stereo coding in the MDCT domain. This allows the advantages of unified stereo coding to be used in the MPEG USAC system even at higher bit rates (where SBR is not used) without the significant increase in computational complexity that would occur with a QMF-based approach.

Las dos listas siguientes resumen los aspectos preferidos de la configuración que se ha descrito anteriormente, los cuales se pueden utilizar como alternativa entre sí o además de otros aspectos:The following two lists summarize the preferred aspects of the configuration described above, which can be used as an alternative to each other or in addition to other aspects:

la) concepto general: predicción compleja de MDCT lateral a partir de MDCT y MDST centrales;the) general concept: complex prediction of lateral MDCT from MDCT and central MDST;

lb) calcular/estimar la MDST a partir de MDCT (“R2I”) en el dominio de frecuencia utilizando 1 o más tramas (3 tramas causan retardo);lb) calculate / estimate the MDST from MDCT ("R2I") in the frequency domain using 1 or more frames (3 frames cause delay);

lc) truncado del filtro (incluso descendiendo hasta 1-trama 2-derivaciones, es decir, [-101]) para reducir la complejidad computacional;lc) truncated filter (even going down to 1-frame 2-leads, that is, [-101]) to reduce computational complexity;

ld) tratamiento adecuado de DC y fs/2;ld) adequate treatment of DC and fs / 2;

le) tratamiento adecuado de conmutación de forma de ventana;le) suitable window-shape switching treatment;

lf) no utilizar una trama anterior/siguiente si tiene un tamaño de transformada diferente;lf) do not use a previous / next frame if it has a different transform size;

lg) predicción basada en coeficientes de MDCT no cuantificados o cuantificados en el codificador;lg) prediction based on MDCT coefficients not quantified or quantified in the encoder;

2a) cuantificar y codificar la parte real e imaginaria del coeficiente de predicción compleja directamente (es decir, sin parametrización de envolvente de MPEG);2a) quantifying and encoding the real and imaginary part of the complex prediction coefficient directly (ie without MPEG envelope parameterization);

2b) utilizar cuantificador uniforme para esto (tamaño de paso, por ejemplo, 0,1);2b) use uniform quantifier for this (step size, for example, 0.1);

2c) utilizar una resolución de frecuencia adecuada para los coeficientes de predicción (por ejemplo, 1 coeficiente por 2 bandas de factor de escala);2c) use an appropriate frequency resolution for the prediction coefficients (for example, 1 coefficient by 2 bands of scale factor);

2d) señalización económica en el caso de que todos los coeficientes de predicción sean reales;2d) economic signaling in the event that all prediction coefficients are real;

2e) bit explícito por trama para forzar la operación de R2I de 1-trama.2e) explicit bit per frame to force the operation of R2I of 1-frame.

En una forma de realización, el codificador comprende adicionalmente: un convertidor espectral (50, 51) para convertir una representación del dominio de tiempo de las dos señales de canal en una representación espectral de las dos señales de canal que tienen señales de subbandas para las dos señales de canal, en el que el combinador (2031), el predictor (2033) y el calculador de la señal residual (2034) están configurados para procesar cada una de las subbandas por separado de modo que la primera señal combinada y la señal residual se obtienen para una pluralidad de subbandas, en el que la interfaz de salida (212) está configurada para combinar la primera señal combinada codificada y la señal residual codificada para la pluralidad de subbandas.In one embodiment, the encoder further comprises: a spectral converter (50, 51) for converting a time domain representation of the two channel signals into a spectral representation of the two channel signals having subband signals for the two channel signals, wherein the combiner (2031), the predictor (2033) and the residual signal calculator (2034) are configured to process each of the subbands separately so that the first combined signal and the signal residual are obtained for a plurality of sub-bands, wherein the output interface (212) is configured to combine the first coded combined signal and the coded residual signal for the plurality of sub-bands.

A pesar de que algunos aspectos se han descrito en el contexto de un aparato, queda claro que dichos aspectos también representan una descripción del método correspondiente, donde un bloque o dispositivo corresponde a una etapa del método o a una característica de un etapa del método. En forma análoga, los aspectos descritos en el contexto de una etapa del método también representan una descripción de un bloque o elemento o característica correspondiente de un aparato correspondiente.Although some aspects have been described in the context of an apparatus, it is clear that these aspects also represent a description of the corresponding method, where a block or device corresponds to a method step or a characteristic of a method step. In an analogous manner, the aspects described in the context of a method step also represent a description of a corresponding block or element or characteristic of a corresponding apparatus.

En un ejemplo, se aplica un tratamiento adecuado de conmutación de forma de ventana. En la Fig. 10a se considera que una información de forma de ventana 109 se puede introducir en el calculador del espectro imaginario 1001. Específicamente, el calculador del espectro imaginario, el cual lleva a cabo la conversión de real a imaginaria del espectro de valor real tal como el espectro de MDCT (como por ejemplo el elemento 2070 en la Fig. 6a o el elemento 1160a en la Fig. 6b) se puede implementar como un filtro FIR o IIR. Los coeficientes FIR o IIR en este módulo de real a imaginario 1001 dependen de la forma de ventana de la mitad izquierda y de la mitad derecha de la trama actual. Esta forma de ventana puede ser distinta para una ventana seno o una ventana de KBD (Derivada de Kaiser Bessel) y dependiendo de la configuración de secuencia de ventana determinada puede ser una ventana larga, una ventana de inicio, una ventana de parada y una ventana de parada-inicio o una ventana corta. El módulo de real a imaginario puede comprender un filtro bidimensional FIR, donde una dimensión es la dimensión de tiempo donde dos tramas de MDCT subsiguientes se introducen en el filtro FIR y la segunda dimensión es la dimensión de frecuencia, donde se introducen los coeficientes de frecuencia de una trama.In one example, an appropriate window-shape switching treatment is applied. In Fig. 10a it is considered that a window shape information 109 can be input to the imaginary spectrum calculator 1001. Specifically, the imaginary spectrum calculator, which performs the real-to-imaginary conversion of the real-value spectrum such as the MDCT spectrum (such as element 2070 in Fig. 6a or element 1160a in Fig. 6b) can be implemented as an FIR or IIR filter. The FIR or IIR coefficients in this real-to-imaginary module 1001 depend on the window shape of the left half and the right half of the current frame. This window form can be different for a sine window or a KBD window (derived from Kaiser Bessel) and depending on the configuration of a certain window sequence it can be a long window, a start window, a stop window and a window Stop-start or a short window. The real-to-imaginary module may comprise a two-dimensional filter FIR, where one dimension is the time dimension where two subsequent MDCT frames are introduced in the FIR filter and the second dimension is the frequency dimension, where the frequency coefficients are introduced of a plot.

La siguiente tabla proporciona distintos coeficientes de filtro MDST para una secuencia de ventana actual para distintas formas de ventana y distintas implementaciones de la mitad izquierda y la mitad derecha de la ventana.The following table provides different MDST filter coefficients for a current window sequence for different window forms and different implementations of the left half and the right half of the window.

T l A - P r m r fil r MD T r l v n n lT l A - P r m r fil r MD T r l v n n l

Figure imgf000015_0001
Figure imgf000015_0001

Adicionalmente, la información de forma de ventana 109 proporciona información de la forma de ventana para la ventana anterior, cuando se utiliza la ventana anterior para calcular el espectro de MDST a partir del espectro de MDCT. En la tabla siguiente se proporcionan los coeficientes de filtro MDST correspondientes para la ventana anterior.Additionally, the window shape information 109 provides information of the window shape for the previous window, when the above window is used to calculate the MDST spectrum from the MDCT spectrum. The corresponding MDST filter coefficients for the previous window are provided in the following table.

T l B - r m r fil r MD T r l v n n n ri r T l B - r m r fil r MD T r l v n n n ri

Figure imgf000015_0002
Figure imgf000015_0002

Figure imgf000016_0001
Figure imgf000016_0001

De este modo, dependiendo de la información de la forma de ventana 109, el calculador del espectro imaginario 1001 en la Fig. 10a se adapta aplicando distintos conjuntos de coeficientes de filtro.Thus, depending on the information of the window form 109, the imaginary spectrum calculator 1001 in FIG. 10a is adapted by applying different sets of filter coefficients.

La información de la forma de ventana, la cual se utiliza en el lado del decodificador se calcula en el lado del codificador y se transmite como información secundaria junto con la señal de salida del codificador. En el lado del decodificador, la información de la forma de ventana 109 se extrae de la corriente de bits mediante el desmultiplexor de la corriente de bits (por ejemplo 102 en la Fig. 5b) y se proporciona al calculador del espectro imaginario 1001 tal como se ilustra en la Fig. 10a.The information of the window form, which is used on the decoder side, is calculated on the encoder side and transmitted as secondary information together with the output signal of the encoder. On the decoder side, the information of the window form 109 is extracted from the bitstream by the bitstream demultiplexer (for example 102 in FIG. 5b) and is provided to the imaginary spectrum calculator 1001 such as it is illustrated in Fig. 10a.

Cuando la información de la forma de ventana 109 señala que la trama anterior tenía un distinto tamaño de transformada, entonces se prefiere que la trama anterior no se utilice para calcular el espectro imaginario a partir del espectro de valor real. Lo mismo ocurre cuando al interpretar la información de la forma de ventana 109 se descubre que la trama siguiente tiene un distinto tamaño de transformada. Entonces, la trama siguiente no se utiliza para calcular el espectro imaginario a partir del espectro de valor real. En dicho caso cuando, por ejemplo, la trama anterior tenía un distinto tamaño de transformada que la trama actual y cuando la trama siguiente nuevamente tiene un distinto tamaño de transformada en comparación con la trama actual, entonces sólo la trama actual, es decir, los valores espectrales de la ventana actual, se utilizan para estimar el espectro imaginario.When the information of the window form 109 indicates that the previous frame had a different transform size, then it is preferred that the previous frame is not used to calculate the imaginary spectrum from the real value spectrum. The same happens when interpreting the information of the window form 109 it is discovered that the next frame has a different transform size. Then, the following frame is not used to calculate the imaginary spectrum from the real value spectrum. In that case when, for example, the previous frame had a different transform size than the current frame and when the next frame again has a different transform size compared to the current frame, then only the current frame, ie the Spectral values of the current window are used to estimate the imaginary spectrum.

La predicción en el codificador está basada en los coeficientes de frecuencia no cuantificados o cuantificados tales como los coeficientes de MDCT. Cuando, por ejemplo, la predicción ilustrada por el elemento 2033 en la Fig. 3a, está basada en datos no cuantificados, entonces el calculador residual 2034 también opera preferentemente en datos no cuantificados y la señal residual de salida del calculador, es decir, la señal residual 205 se cuantifica antes de codificarse por entropía y transmitirse a un decodificador. Sin embargo, en una forma de realización alternativa se prefiere que la predicción esté basada en coeficientes de MDCT cuantificados. Entonces, la cuantificación puede ocurrir antes del combinador 2031 en la Fig. 3a de tal modo que un primer canal cuantificado y un segundo canal cuantificado sean la base para calcular la señal residual. Como alternativa, la cuantificación también puede ocurrir a continuación del combinador 2031 de tal modo que la primera señal de combinación y la segunda señal de combinación se calculen en una forma no cuantificada y se cuantifiquen antes de que se calcule la señal residual. De nuevo, como alternativa, el predictor 2033 puede operar en el dominio no cuantificado y la señal de predicción 2035 se cuantifica antes de introducirse en el calculador residual. Entonces, es útil que la segunda señal de combinación 2032, que también se introduce en el calculador residual 2034, también se cuantifique antes de que el calculador residual calcule la señal residual 1070 en la Fig. 6a, la cual se puede implementar dentro del predictor 2033 en la Fig. 3a, opere en los mismos datos cuantificados que estén disponibles en el lado del decodificador. Entonces se puede garantizar que el espectro de MDST estimado en el codificador para el fin de llevar a cabo el cálculo de la señal residual sea exactamente el mismo que el espectro de MDST en el lado del decodificador utilizado para llevar a cabo la predicción inversa, es decir, para calcular la señal lateral desde la señal residual. Para tal fin, la primera señal de combinación tal como la señal M en la línea 204 en la Fig. 6a se cuantifica antes de que se introduzca en el bloque 2070. Entonces, el espectro de MDST calculado utilizando el espectro de MDCT cuantificado de la trama actual, y dependiendo de la información de control, el espectro de MDCT cuantificado de la trama anterior o siguiente, se introduce en el multiplicador 2074, y la salida del multiplicador 2074 de la Fig. 6a nuevamente será un espectro no cuantificado. Este espectro no cuantificado se sustraerá del espectro introducido en el sumador 2034b y finalmente se cuantificará en el cuantificador 209b.The prediction in the encoder is based on the unquantized or quantized frequency coefficients such as the MDCT coefficients. When, for example, the prediction illustrated by the element 2033 in Fig. 3a is based on non-quantized data, then the residual computer 2034 also preferably operates on non-quantized data and the residual output signal of the calculator, i.e. residual signal 205 is quantized before being encoded by entropy and transmitted to a decoder. However, in an alternative embodiment it is preferred that the prediction be based on quantified MDCT coefficients. Then, quantization may occur before combiner 2031 in Fig. 3a such that a first quantized channel and a second quantized channel are the basis for calculating the residual signal. Alternatively, quantization can also occur after the combiner 2031 in such a way that the first combination signal and the second combination signal are calculated in an unquantified form and quantified before the residual signal is calculated. Again, alternatively, the predictor 2033 can operate in the unquantized domain and the prediction signal 2035 is quantized before entering the residual calculator. Then, it is useful that the second combination signal 2032, which is also input to the residual computer 2034, is also quantized before the residual computer calculates the residual signal 1070 in FIG. 6a, which can be implemented within the predictor. 2033 in Fig. 3a, operate on the same quantized data that is available on the decoder side. It can then be guaranteed that the MDST spectrum estimated in the encoder for the purpose of carrying out the calculation of the residual signal is exactly the same as the MDST spectrum on the decoder side used to carry out the inverse prediction, is say, to calculate the lateral signal from the residual signal. For this purpose, the first combining signal such as signal M on line 204 in Fig. 6a is quantized before it is introduced into block 2070. Then, the MDST spectrum calculated using the quantified MDCT spectrum of the current frame, and depending on the control information, the quantized MDCT spectrum of the previous or next frame is entered into the multiplier 2074, and the output of the multiplier 2074 of Fig. 6a again will be an unquantized spectrum. This unquantized spectrum will be subtracted from the spectrum introduced in the adder 2034b and finally quantized in the quantizer 209b.

En una forma de realización, la parte real y la parte imaginaria del coeficiente de predicción compleja por banda de predicción se cuantifican y codifican directamente, es decir, por ejemplo, sin la parametrización de envolvente de MPEG. La cuantificación se puede llevar a cabo utilizando un cuantificador uniforme con un tamaño de paso, por ejemplo, de 0,1. Esto significa que no se aplica ningún tamaño de paso de cuantificación logarítmica o similar, sino que se aplica cualquier tamaño de paso lineal. En una implementación, el rango de valores para la parte real y la parte imaginaria del coeficiente de predicción compleja tiene un rango desde -3 a 3, lo que significa que se utilizan 60 o, dependiendo de los detalles de implementación, 61 pasos de cuantificación para la parte real y la parte imaginaria del coeficiente de predicción compleja.In one embodiment, the real part and the imaginary part of the complex prediction coefficient per prediction band are directly quantized and coded, ie, for example, without the MPEG envelope parameterization. The quantification can be carried out using a uniform quantizer with a step size, for example, 0.1. This means that no logarithmic quantization step or similar size is applied, but any linear step size is applied. In one implementation, the range of values for the real part and the imaginary part of the complex prediction coefficient has a range from -3 to 3, which means that 60 or, depending on the details of implementation, 61 quantization steps are used for the real part and the imaginary part of the complex prediction coefficient.

Preferentemente, la parte real aplicada en el multiplicador 2073 en la Fig. 6a y la parte imaginaria 2074 aplicada en la Fig. 6a se cuantifican antes de aplicarse de modo que, nuevamente, se utiliza el mismo valor para la predicción en el lado del codificador así como se utiliza en el lado del decodificador. Esto garantiza que la señal de predicción residual cubra - además del error de cuantificación introducido - cualquier error que pudiera ocurrir cuando se aplica un coeficiente de predicción no cuantificado en el lado del codificador mientras se aplica un coeficiente de predicción cuantificado en el lado del decodificador. Preferentemente, la cuantificación se aplica de modo que - tanto como sea posible - la misma situación y las mismas señales estén disponibles en el lado del codificador y en el lado del decodificador. De este modo se prefiere cuantificar la entrada en el calculador de real a imaginario 2070 utilizando la misma cuantificación aplicada en el cuantificador 209a. Adicionalmente se prefiere cuantificar la parte real y la parte imaginaria del coeficiente de predicción de a para llevar a cabo las multiplicaciones en el elemento 2073 y en el elemento 2074. La cuantificación es la misma que se aplica en el cuantificador 2072. Adicionalmente, la señal lateral emitida por el bloque 2031 en la Fig. 6a también se puede cuantificar antes de los sumadores 2034a y 2034b. Sin embargo, no resulta problemático que el cuantificador 209b lleve a cabo la cuantificación posteriormente a la adición, donde la adición por dichos sumadores se aplica con una señal lateral no cuantificada.Preferably, the real part applied in the multiplier 2073 in Fig. 6a and the imaginary part 2074 applied in Fig. 6a are quantized before being applied so that, again, the same value is used for the prediction on the encoder side as well as it is used on the decoder side. This ensures that the residual prediction signal covers - in addition to the quantization error introduced - any errors that may occur when applied an unquantized prediction coefficient on the encoder side while applying a quantized prediction coefficient on the decoder side. Preferably, the quantization is applied so that - as much as possible - the same situation and the same signals are available on the side of the encoder and on the side of the decoder. In this way, it is preferred to quantify the input in the calculator from real to imaginary 2070 using the same quantization applied in quantizer 209a. Additionally it is preferred to quantify the real part and the imaginary part of the prediction coefficient of a to carry out the multiplications in the element 2073 and in the element 2074. The quantization is the same as that applied in the quantizer 2072. Additionally, the signal The lateral one emitted by block 2031 in Fig. 6a can also be quantized before adders 2034a and 2034b. However, it is not problematic for the quantifier 209b to carry out the quantification subsequent to the addition, where the addition by said adders is applied with a non-quantized side signal.

En un ejemplo adicional, puede aplicarse una señalización económica en caso de que todos los coeficientes de predicción sean reales. Puede ocurrir que todos los coeficientes de predicción para una trama determinada, es decir, para la misma porción de tiempo de la señal de audio se calculen como reales. Dicha situación puede ocurrir cuando la señal central completa y la señal lateral completa no están desfasadas entre sí o están un poco desfasadas. Para ahorrar bits, esto se indica por un único indicador real. Entonces, no es necesario señalar la parte imaginaria del coeficiente de predicción en la corriente de bits con una palabra de código que represente un valor cero. En el lado del decodificador, la interfaz del decodificador de la corriente de bits, tal como un desmultiplexor de la corriente de bits, interpretará este indicador real y a continuación no buscará palabras de código para una parte imaginaria sino que asumirá que todos los bits están en la sección correspondiente de la corriente de bits como bits para coeficientes de predicción de valor real. Asimismo, cuando el predictor 2033 recibe una indicación de que todas las partes imaginarias de los coeficientes de predicción en la trama son cero, no necesitará calcular un espectro de MDST, o generalmente un espectro imaginario a partir del espectro de MDCT de valor real. Por lo tanto, el elemento 1160a en el decodificador de la Fig. 6b se desactivará y la predicción inversa sólo tendrá lugar utilizando el coeficiente de predicción de valor real aplicado en el multiplicador 1160b en la Fig. 6b. Esto mismo ocurre para el lado del codificador donde el elemento 2070 se desactivará y la predicción sólo tendrá lugar utilizando el multiplicador 2073. Esta información secundaria se utiliza preferentemente como un bit adicional bit por trama y el decodificador leerá este bit, trama por trama, para decidir si el convertidor de real a imaginario 1160a estará activo para una trama o no. De este modo, al proporcionar esta información se logra un tamaño reducido de la corriente de bits debido a la señalización más eficaz de todas las partes imaginarias del coeficiente de predicción que son cero para una trama y, adicionalmente, proporciona menos complejidad para el decodificador para dicha trama que da como resultado inmediatamente un menor consumo de batería de dicho procesador implementado, por ejemplo, en un dispositivo móvil alimentado por batería.In a further example, an economic signaling can be applied in case all the prediction coefficients are real. It can happen that all the prediction coefficients for a certain frame, that is, for the same time portion of the audio signal, are calculated as real. This situation can occur when the complete central signal and the complete lateral signal are not out of phase with each other or are a little out of phase. To save bits, this is indicated by a single real indicator. Then, it is not necessary to indicate the imaginary part of the prediction coefficient in the bit stream with a code word representing a zero value. On the decoder side, the interface of the bit stream decoder, such as a bit stream demultiplexer, will interpret this actual flag and then not look up code words for an imaginary part but assume that all the bits are in the corresponding section of the bit stream as bits for real value prediction coefficients. Also, when the predictor 2033 receives an indication that all the imaginary parts of the prediction coefficients in the frame are zero, it will not need to calculate an MDST spectrum, or generally an imaginary spectrum from the real value MDCT spectrum. Therefore, the element 1160a in the decoder of Fig. 6b will be deactivated and the inverse prediction will only take place using the actual value prediction coefficient applied in the multiplier 1160b in Fig. 6b. The same happens for the encoder side where the element 2070 will be deactivated and the prediction will only take place using the multiplier 2073. This secondary information is preferably used as an additional bit bit by frame and the decoder will read this bit, frame by frame, for decide whether the real to imaginary converter 1160a will be active for a frame or not. In this way, by providing this information a small size of the bit stream is achieved due to the most efficient signaling of all the imaginary parts of the prediction coefficient that are zero for a frame and, additionally, it provides less complexity for the decoder for said frame that immediately results in a lower battery consumption of said implemented processor, for example, in a mobile device powered by a battery.

La predicción compleja estéreo de acuerdo con las formas de realización preferidas de la presente invención es una herramienta para la codificación eficaz de pares de canales con diferencias de nivel y/o fase entre los canales. Al utilizar un parámetro de valor complejo a, los canales izquierdo y derecho se reconstruyen por medio de la matriz siguiente. dmxIm indica la MDST correspondiente a la MDCT de los canales de mezcla descendente dmxRe.The complex stereo prediction according to the preferred embodiments of the present invention is a tool for efficient coding of channel pairs with level and / or phase differences between the channels. When using a complex value parameter a, the left and right channels are reconstructed by means of the following matrix. dmxIm indicates the MDST corresponding to the MDCT of the dmxRe downmix channels.

Figure imgf000017_0001
Figure imgf000017_0001

La ecuación anterior es otra representación, la cual se divide con respecto a la parte real y a la parte imaginaria de a y representa la ecuación para una operación combinada de predicción/combinación, en la cual la señal prevista S no se calcula necesariamente.The above equation is another representation, which is divided with respect to the real part and the imaginary part of a and represents the equation for a combined prediction / combination operation, in which the predicted signal S is not necessarily calculated.

Los siguientes elementos de datos se utilizan preferentemente para esta herramienta:The following data elements are preferably used for this tool:

cplx_pred_all 0: Algunas bandas utilizan la codificación L/R, señalada por cplx_pred_used[] cplx_pred_all 0: Some bands use the L / R encoding, signaled by cplx_pred_used []

1: Todas las bandas utilizan la predicción compleja estéreo 1: All bands use stereo complex prediction

cplx_pred_used[g][sfb] Una bandera de un bit por grupo de ventanas g y banda de factor de escala sfb (después del mapeo a partir de las bandas de predicción) que indica que cplx_pred_used [g] [sfb] A one bit flag per window group g and scale factor band sfb (after mapping from the prediction bands) indicating that

0: no se utiliza la predicción compleja, se utiliza la codificación L/R0: complex prediction is not used, L / R coding is used

1: se utiliza la predicción compleja1: complex prediction is used

complex_coef 0: aIm = 0 para todas las bandas de predicción complex_coef 0: aIm = 0 for all prediction bands

1: aim se transmite para todas las bandas de predicción1: aim is transmitted for all prediction bands

use_prev_frame 0: Utilizar sólo la trama actual para estimación de MDST use_prev_frame 0: Use only the current frame for MDST estimation

1: Utilizar la trama actual y anterior para estimación de MDST1: Use the current and previous frame for MDST estimation

delta code time 0: Codificación diferencial de frecuencia de los coeficientes de predicción delta code time 0: Differential frequency coding of the prediction coefficients

1: Codificación diferencial de tiempo de los coeficientes de predicción hcod_alpha_q_re Código de Huffman de aRe1: Time differential coding of prediction coefficients hcod_alpha_q_re Huffman code of aRe

hcod_alpha_q_im Código de Huffman de aIm hcod_alpha_q_im Huffman Code of aIm

Estos elementos de datos se calculan en un codificador y se introducen en la información secundaria de una señal de audio multicanal o estéreo. Los elementos se extraen de la información secundaria en el lado del decodificador por medio de un extractor de información secundaria y se utilizan para controlar el calculador del decodificador para llevar a cabo una acción correspondiente.These data elements are calculated in an encoder and entered into the secondary information of a multi-channel or stereo audio signal. The elements are extracted from the secondary information on the side of the decoder by means of a secondary information extractor and used to control the decoder computer to carry out a corresponding action.

La predicción compleja estéreo necesita el espectro de MDCT de mezcla descendente del par de canales actuales y, en el caso de complex_coef == 1, un valor estimado del espectro de MDST de mezcla descendente del par de canales actuales, es decir, la contraparte imaginaria del espectro de MDCT. El valor estimado de la MDST de mezcla descendente se calcula desde la MDCT de mezcla descendente de la trama actual y, en el caso de use_prev_frame == 1, desde la MDCT de mezcla descendente de la trama anterior. La MDCT de mezcla descendente de la trama anterior del grupo de ventanas g y del grupo de ventanas b se obtiene a partir de los espectros izquierdo y derecho reconstruidos de dicha trama.The complex stereo prediction requires the MDCT spectrum of downmixing of the pair of current channels and, in the case of complex_coef == 1, an estimated value of the downmixing MDST spectrum of the pair of current channels, that is, the imaginary counterpart. of the MDCT spectrum. The estimated value of the downmix MDST is calculated from the downmix MDCT of the current frame and, in the case of use_prev_frame == 1, from the downmix MDCT of the previous frame. The MDCT of downmixing of the previous frame of window group g and of window group b is obtained from the reconstructed left and right spectra of said frame.

En el cálculo del valor estimado de la MDST de mezcla descendente se utiliza la longitud de transformada MDCT de valor uniforme, la cual depende de window_sequence, así como también de filter_coefs y filter_coefs_prev, que son matrices que contienen los núcleos de filtro y que se obtienen de acuerdo con las tablas anteriores.In the calculation of the estimated value of the downmix MDST, the MDCT transform length of uniform value is used, which depends on window_sequence, as well as filter_coefs and filter_coefs_prev, which are matrices that contain the filter cores and which are obtained according to the previous tables.

Para todos los coeficientes de predicción, la diferencia de un valor anterior (en tiempo o frecuencia) se codifica utilizando un libro de códigos de Huffman. Los coeficientes de predicción no se transmiten para las bandas de predicción para las cuales se utilizó cplx_pred_used = 0.For all prediction coefficients, the difference of a previous value (in time or frequency) is encoded using a Huffman codebook. The prediction coefficients are not transmitted for the prediction bands for which cplx_pred_used = 0 was used.

Los coeficientes de predicción inversa cuantificados alpha_re y alpha_im que proporcionan porThe inverse prediction coefficients quantified alpha_re and alpha_im that provide for

alpha_re = alpha_q_re*0,1alpha_re = alpha_q_re * 0.1

alpha_im = alpha_q_im*0,1alpha_im = alpha_q_im * 0.1

Cabe destacar que la invención no sólo se aplica a señales estéreo, es decir, señales multicanal que tienen sólo dos canales, sino que también se aplica a dos canales de una señal multicanal que tiene tres o más canales, tal como una señal 5.1 o 7.1.It should be noted that the invention not only applies to stereo signals, ie multichannel signals having only two channels, but also applies to two channels of a multichannel signal having three or more channels, such as a 5.1 or 7.1 signal. .

Dependiendo de determinados requisitos para la implementación, las formas de realización de la invención se pueden implementar en un hardware o en un software. La implementación se puede llevar a cabo utilizando un medio digital de almacenamiento, por ejemplo un disco flexible, un DVD, un CD, una ROM, una PROM, una EPROM, una EEPROM o una memoria FLASH, que tiene señales de control legibles electrónicamente almacenadas en el mismo, las cuales colaboran (o son capaces de colaborar) con un sistema informático programable de modo que el método respectivo se lleve a cabo.Depending on certain requirements for implementation, the embodiments of the invention can be implemented in hardware or software. The implementation can be carried out using a digital storage medium, for example a floppy disk, a DVD, a CD, a ROM, a PROM, an EPROM, an EEPROM or a FLASH memory, which has electronically readable control signals stored in it, which collaborate (or are able to collaborate) with a programmable computer system so that the respective method is carried out.

Algunas formas de realización de acuerdo con la invención comprenden un portador de datos no transitorio o tangible que tiene señales de control legibles electrónicamente, las cuales son capaces de colaborar con un sistema informático programable, de modo que uno de los métodos descritos en el presente documento se lleve a cabo. En general, las formas de realización de la presente invención se pueden implementar como un producto de programa informático con un código de programa, siendo el código de programa operativo para llevar a cabo uno de los métodos cuando el producto de programa informático se ejecuta en una computadora. El código de programa se puede almacenar, por ejemplo, en un portador legible por máquina.Some embodiments according to the invention comprise a non-transient or tangible data carrier having electronically readable control signals, which are capable of collaborating with a programmable computer system, so that one of the methods described herein is carried out. In general, the embodiments of the present invention can be implemented as a computer program product with a program code, the program code being operative to carry out one of the methods when the computer program product is executed in a computer program. computer. The program code can be stored, for example, in a machine readable carrier.

Otras formas de realización comprenden el programa informático para llevar a cabo uno de los métodos descritos en el presente documento, almacenados en un portador legible por máquina. Other embodiments comprise the computer program for carrying out one of the methods described herein, stored in a machine-readable carrier.

En otros términos, una forma de realización del método de la invención es, por lo tanto, un programa informático que tiene un código de programa para llevar a cabo uno de los métodos descritos en el presente documento, cuando el programa informático se ejecuta en una computadora.In other words, an embodiment of the method of the invention is, therefore, a computer program having a program code for carrying out one of the methods described herein, when the computer program is executed in a computer.

Una forma de realización adicional de los métodos de la invención es, por lo tanto, un portador de datos (o un medio digital de almacenamiento, o un medio legible por computadora) que comprende, grabado en el mismo, el programa informático para llevar a cabo uno de los métodos descritos en el presente documento.A further embodiment of the methods of the invention is, therefore, a data carrier (or a digital storage medium, or a computer readable medium) comprising, recorded therein, the computer program to carry one of the methods described in this document.

Una forma de realización adicional del método de la invención es, por lo tanto, una corriente de datos o una secuencia de señales que representa el programa informático para llevar a cabo uno de los métodos descritos en el presente documento. La corriente de datos o la secuencia de señales pueden estar configuradas, por ejemplo, para transferirse mediante una conexión de comunicación de datos, por ejemplo, a través de Internet.A further embodiment of the method of the invention is, therefore, a data stream or signal sequence representing the computer program to carry out one of the methods described herein. The data stream or signal sequence can be configured, for example, to be transferred via a data communication connection, for example, via the Internet.

Una forma de realización adicional comprende un medio de procesamiento, por ejemplo, una computadora, o un dispositivo lógico programable, configurado o adaptado para llevar a cabo uno de los métodos descritos en el presente documento.A further embodiment comprises a processing means, for example, a computer, or a programmable logic device, configured or adapted to carry out one of the methods described herein.

Una forma de realización adicional comprende una computadora que tiene instalado en la misma el programa informático para llevar a cabo uno de los métodos descritos en el presente documento.A further embodiment comprises a computer that has installed in it the computer program to carry out one of the methods described in this document.

En algunas formas de realización, se puede utilizar un dispositivo lógico programable (por ejemplo un campo de matrices de puertas programables) para llevar a cabo algunas o todas las funcionalidades de los métodos descritos en el presente documento. En algunas formas de realización, un campo de matrices de puertas programables puede colaborar con un microprocesador para llevar a cabo uno de los métodos descritos en el presente documento. En general, los métodos son llevados a cabo preferentemente por cualquier aparato de hardware.In some embodiments, a programmable logic device (e.g., a field of programmable gate arrays) may be used to carry out some or all of the functionalities of the methods described herein. In some embodiments, a field of programmable gate arrays can collaborate with a microprocessor to carry out one of the methods described herein. In general, the methods are preferably carried out by any hardware apparatus.

Las formas de realización descritas anteriormente son simplemente ilustrativas de los principios de la presente invención. Cabe entender que las modificaciones y variaciones de las disposiciones y detalles descritos en el presente documento resultarán evidentes para los expertos en la materia. Por consiguiente, el intento es que la invención sólo esté limitada por el alcance de las siguientes reivindicaciones de la patente y no por los detalles específicos presentados a modo de descripción y explicación de las formas de realización incluidas en el presente documento. The embodiments described above are merely illustrative of the principles of the present invention. It is understood that the modifications and variations of the provisions and details described in this document will be evident to those skilled in the art. Accordingly, the intent is that the invention is limited only by the scope of the following claims of the patent and not by the specific details presented by way of description and explanation of the embodiments included herein.

Claims (9)

REIVINDICACIONES 1. Decodificador de audio para decodificar una señal de audio multicanal codificada (100), comprendiendo la señal de audio multicanal codificada una primera señal de combinación codificada generada basándose en una regla de combinación para combinar una primera señal de audio de canal y una segunda señal de audio de canal de una señal de audio multicanal, una señal de predicción residual codificada e información de predicción, que comprende: An audio decoder for decoding an encoded multichannel audio signal (100), the encoded multichannel audio signal comprising a first coded combination signal generated based on a combination rule for combining a first channel audio signal and a second signal channel audio of a multichannel audio signal, a coded residual prediction signal and prediction information, comprising: un decodificador de señales (110) para decodificar la primera señal de combinación codificada (104) para obtener una primera señal de combinación decodificada (112) y para decodificar la señal residual codificada (106) para obtener una señal residual decodificada (114); ya signal decoder (110) for decoding the first coded combination signal (104) to obtain a first decoded combination signal (112) and to decode the coded residual signal (106) to obtain a decoded residual signal (114); Y un calculador del decodificador (116) para calcular una señal multicanal decodificada que tiene una primera señal de canal decodificada (117), y una segunda señal de canal decodificada (118) utilizando la señal residual decodificada (114), la información de predicción (108) y la primera señal de combinación decodificada (112), de modo que la primera señal de canal decodificada (117) y la segunda señal de canal decodificada (118) son al menos aproximaciones de la primera señal de canal y la segunda señal de canal de la señal de audio multicanal, en el que la información de predicción (108) comprende un factor de valor real distinto de cero y un factor imaginario distinto de cero,a decoder calculator (116) for calculating a decoded multichannel signal having a first decoded channel signal (117), and a second decoded channel signal (118) using the decoded residual signal (114), the prediction information (108) ) and the first decoded combination signal (112), so that the first decoded channel signal (117) and the second decoded channel signal (118) are at least approximations of the first channel signal and the second channel signal of the multi-channel audio signal, wherein the prediction information (108) comprises a non-zero real-value factor and an imaginary non-zero factor, en el que el calculador del decodificador (116) comprende:wherein the decoder calculator (116) comprises: un predictor (1160) para aplicar la información de predicción (108) a la primera señal de combinación decodificada (112) o a una señal (601) proveniente de la primera señal de combinación decodificada para obtener una señal de predicción (1163);a predictor (1160) for applying the prediction information (108) to the first decoded combination signal (112) or to a signal (601) from the first decoded combination signal to obtain a prediction signal (1163); un calculador de señales de combinación (1161) para calcular una segunda señal de combinación (1165) combinando la señal residual decodificada (114) y la señal de predicción (1163); ya combination signal calculator (1161) for calculating a second combination signal (1165) by combining the decoded residual signal (114) and the prediction signal (1163); Y un combinador (1162) para combinar la primera señal de combinación decodificada (112) y la segunda señal de combinación (1165) para obtener una señal de audio multicanal decodificada que tiene la primera señal de canal decodificada (117) y la segunda señal de canal decodificada (118),a combiner (1162) for combining the first decoded combination signal (112) and the second combination signal (1165) to obtain a decoded multi-channel audio signal having the first decoded channel signal (117) and the second channel signal decoded (118), en el que la señal de audio multicanal codificada comprende una información de control (1003) que indica en un primer estado que el predictor (1160) es para usar al menos una trama anterior o posterior en tiempo a una trama actual de la primera señal de combinación decodificada, y que indica en un segundo estado que el predictor (1160) es para usar una única trama de la primera señal de combinación decodificada para una estimación de una parte imaginaria para la trama actual de la primera señal de combinación decodificada,wherein the encoded multichannel audio signal comprises a control information (1003) which indicates in a first state that the predictor (1160) is for using at least one previous or subsequent frame in time to a current frame of the first signal of decoded combination, and indicating in a second state that the predictor (1160) is to use a single frame of the first decoded combination signal for an estimate of an imaginary part for the current frame of the first decoded combination signal, en el que el predictor (1160) está configurado para multiplicar la primera señal de combinación decodificada por el factor de valor real para obtener una primera parte de la señal de predicción,wherein the predictor (1160) is configured to multiply the first combination signal decoded by the real value factor to obtain a first part of the prediction signal, en el que el predictor (1160) comprende un calculador de real a imaginario (1160a) para estimar una parte imaginaria de la primera señal de combinación decodificada (112) utilizando una parte real de la primera señal de combinación decodificada (112),wherein the predictor (1160) comprises a real-to-imaginary calculator (1160a) for estimating an imaginary part of the first decoded combination signal (112) using a real part of the first decoded combination signal (112), en el que el predictor (1160) está configurado para multiplicar la parte imaginaria (601) de la primera señal de combinación decodificada por el factor imaginario de la información de predicción (108) para obtener una segunda parte de la señal de predicción;wherein the predictor (1160) is configured to multiply the imaginary part (601) of the first combination signal decoded by the imaginary factor of the prediction information (108) to obtain a second part of the prediction signal; en el que el calculador de señal de combinación (1161) está configurado para combinar linealmente la primera parte de la señal de predicción y la segunda parte de la señal de predicción y la señal residual decodificada para obtener la segunda señal de combinación (1165),wherein the combination signal calculator (1161) is configured to linearly combine the first part of the prediction signal and the second part of the prediction signal and the decoded residual signal to obtain the second combination signal (1165), en el que el calculador de real a imaginario (1160a) comprende un selector de tramas espectral (1000) conectado a un calculador de espectro imaginario (1001), ywherein the imaginary real calculator (1160a) comprises a spectral frame selector (1000) connected to an imaginary spectrum calculator (1001), and en el que el selector de tramas espectral (1000) está configurado para recibir la información de control (1003) y para detectar un estado de la información de control (1003) y para seleccionar la al menos una trama anterior o posterior en tiempo a una trama actual de la primera señal de combinación decodificada para su uso por el calculador de espectro imaginario (1001) cuando la información de control (1003) tiene el primer estado y para seleccionar únicamente la única trama de la primera señal de combinación decodificada para su uso por el calculador de espectro imaginario (1001) cuando la información de control (1003) tiene el segundo estado.wherein the spectral frame selector (1000) is configured to receive the control information (1003) and to detect a status of the control information (1003) and to select the at least one previous or subsequent frame in time to a current frame of the first decoded combination signal for use by the imaginary spectrum calculator (1001) when the control information (1003) has the first state and for selecting only the only frame of the first decoded combination signal for its use by the imaginary spectrum calculator (1001) when the control information (1003) has the second state. 2. Decodificador de audio de acuerdo con la reivindicación 1,2. Audio decoder according to claim 1, en el que la primera señal de combinación codificada (104) y la señal residual codificada (106) se han generado utilizando una conversión de tiempo-espectral de generación de solapamiento,wherein the first coded combination signal (104) and the coded residual signal (106) have been generated using a time-spectral conversion of overlapping generation, en el que el decodificador además comprende:wherein the decoder further comprises: un convertidor espectral-tiempo (52, 53) para generar una primera señal de canal de dominio de tiempo y una segunda señal de canal de dominio de tiempo utilizando un algoritmo de conversión espectral-tiempo que coincide con el algoritmo de conversión de tiempo-espectral;a spectral-time converter (52, 53) for generating a first time domain channel signal and a second time domain channel signal using a spectral-time conversion algorithm that matches the time-spectral conversion algorithm ; un procesador de solapar/añadir (522) para llevar a cabo un procesamiento de solapar-añadir para la primera señal de canal de dominio de tiempo y para la segunda señal de canal de dominio de tiempo para obtener una primera señal de dominio de tiempo sin solapamiento y una segunda señal de dominio de tiempo sin solapamiento. an overlap / add processor (522) to perform an overlap-add processing for the first time domain channel signal and for the second time domain channel signal to obtain a first time domain signal without overlap and a second time domain signal without overlapping. 3. Decodificador de audio de acuerdo con una de las reivindicaciones anteriores,3. Audio decoder according to one of the preceding claims, en el que la primera señal de combinación codificada o decodificada (104) y la señal de predicción residual codificada o decodificada (106) comprenden, cada una, una primera pluralidad de señales de subbanda, en el que la información de predicción comprende una segunda pluralidad de parámetros de información de predicción, siendo la segunda pluralidad más pequeña que la primera pluralidad,wherein the first coded or decoded combination signal (104) and the coded or decoded residual prediction signal (106) each comprise a first plurality of subband signals, wherein the prediction information comprises a second plurality of prediction information parameters, the second plurality being smaller than the first plurality, en el que el predictor (1160) está configurado para aplicar el mismo parámetro de predicción a al menos dos señales de subbanda diferentes de la primera señal de combinación decodificada,wherein the predictor (1160) is configured to apply the same prediction parameter to at least two different subband signals of the first decoded combination signal, en el que el calculador del decodificador (116) o el calculador de señales de combinación (1161) o el combinador (1162) están configurados para llevar a cabo un procesamiento en subbandas; ywherein the calculator of the decoder (116) or the combination signal calculator (1161) or the combiner (1162) are configured to perform subband processing; Y en el que el decodificador de audio además comprende un banco de filtros de síntesis (52, 53) para combinar señales de subbandas de la primera señal de combinación decodificada y la segunda señal de combinación decodificada para obtener una primera señal decodificada de dominio de tiempo y una segunda señal decodificada de dominio de tiempo.wherein the audio decoder further comprises a bank of synthesis filters (52, 53) for combining subband signals of the first decoded combination signal and the second decoded combination signal to obtain a first decoded time domain signal and a second decoded time domain signal. 4. Codificador de audio para codificar una señal de audio multicanal que tiene dos o más señales de canal, que comprende:4. Audio encoder for encoding a multichannel audio signal having two or more channel signals, comprising: un calculador del codificador (203) para calcular una primera señal de combinación (204) y una señal de predicción residual (205) utilizando una primera señal de canal (201) y una segunda señal de canal (202) e información de predicción (206), de modo que una señal de predicción residual, cuando se combina con una señal de predicción proveniente de la primera señal de combinación o una señal proveniente de la primera señal de combinación y la información de predicción (206) da como resultado una segunda señal de combinación (2032), la primera señal de combinación (204) y la segunda señal de combinación (2032) siendo derivables a partir de la primera señal de canal (201) y la segunda señal de canal (202) utilizando una regla de combinación; un optimizador (207) para calcular la información de predicción (206) de modo que la señal de predicción residual (205) satisface un objetivo de optimización (208);an encoder calculator (203) for calculating a first combination signal (204) and a residual prediction signal (205) using a first channel signal (201) and a second channel signal (202) and prediction information (206) ), so that a residual prediction signal, when combined with a prediction signal from the first combination signal or a signal from the first combination signal and the prediction information (206) results in a second signal of combination (2032), the first combination signal (204) and the second combination signal (2032) being derivable from the first channel signal (201) and the second channel signal (202) using a combination rule ; an optimizer (207) for calculating the prediction information (206) so that the residual prediction signal (205) satisfies an optimization objective (208); un codificador de señal (209) para codificar la primera señal de combinación (204) y la señal de predicción residual (205) para obtener una primera señal de combinación codificada (210) y una señal residual codificada (211); ya signal encoder (209) for encoding the first combination signal (204) and the residual prediction signal (205) to obtain a first coded combination signal (210) and a coded residual signal (211); Y una interfaz de salida (212) para combinar la primera señal de combinación codificada (210), la señal de predicción residual codificada (211) y la información de predicción (206) para obtener una señal de audio multicanal codificada,an output interface (212) for combining the first coded combination signal (210), the coded residual prediction signal (211) and the prediction information (206) to obtain a coded multichannel audio signal, en el que el calculador del codificador (203) comprende:wherein the calculator of the encoder (203) comprises: un combinador (2031) para combinar la primera señal de canal (201) y la segunda señal de canal (202) de dos maneras diferentes para obtener la primera señal de combinación (204) y la segunda señal de combinación (2032);a combiner (2031) for combining the first channel signal (201) and the second channel signal (202) in two different ways to obtain the first combination signal (204) and the second combination signal (2032); un predictor (2033) para aplicar la información de predicción (206) a la primera señal de combinación (204) o una señal (600) proveniente de la primera señal de combinación (204) para obtener una señal de predicción (2035); ya predictor (2033) for applying the prediction information (206) to the first combination signal (204) or a signal (600) from the first combination signal (204) to obtain a prediction signal (2035); Y un calculador de señal residual (2034) para calcular la señal de predicción residual (205) combinando la señal de predicción (2035) y la segunda señal de combinación (2032),a residual signal calculator (2034) for calculating the residual prediction signal (205) by combining the prediction signal (2035) and the second combination signal (2032), en el que la primera señal de canal es una representación espectral de un bloque de muestras, en el que la segunda señal de canal es una representación espectral de un bloque de muestras, en el que las representaciones espectrales son representaciones espectrales reales puras,wherein the first channel signal is a spectral representation of a block of samples, wherein the second channel signal is a spectral representation of a block of samples, in which the spectral representations are pure real spectral representations, en el que el optimizador (207) está configurado para calcular la información de predicción (206) como un factor imaginario distinto de cero,wherein the optimizer (207) is configured to calculate the prediction information (206) as an imaginary factor other than zero, en el que el predictor (2033) comprende un transformador de real a imaginario (2070) para estimar una parte imaginaria de la primera señal de combinación (112) utilizando la primera señal de combinación,wherein the predictor (2033) comprises a real-to-imaginary transformer (2070) for estimating an imaginary part of the first combining signal (112) using the first combination signal, en el que el calculador del codificador (203) está configurado para calcular la primera señal de combinación (204) y la primera señal residual (2032) de modo que la señal de predicción es proveniente de la parte imaginaria de la primera señal de combinación (112) utilizando el factor imaginario,wherein the encoder calculator (203) is configured to calculate the first combination signal (204) and the first residual signal (2032) so that the prediction signal is from the imaginary part of the first combination signal ( 112) using the imaginary factor, en el que el predictor (2033) está configurado para recibir una información de control (1003) que indica en un primer estado que el predictor (2033) es para usar al menos una trama anterior o posterior en tiempo a una trama actual de la primera señal de combinación, y que indica en un segundo estado que el predictor (2033) es para usar una única trama de la primera señal de combinación decodificada para la estimación de una parte imaginaria de la trama actual de la primera señal de combinación,wherein the predictor (2033) is configured to receive control information (1003) which indicates in a first state that the predictor (2033) is to use at least one previous or subsequent frame in time to a current frame of the first combination signal, and indicating in a second state that the predictor (2033) is to use a single frame of the first decoded combination signal for the estimation of an imaginary part of the current frame of the first combination signal, en el que el calculador de real a imaginario (2070) comprende un selector de tramas espectral (1000) conectado a un calculador de espectro imaginario (1001), ywherein the imaginary real calculator (2070) comprises a spectral frame selector (1000) connected to an imaginary spectrum calculator (1001), and en el que el selector de tramas espectral (1000) está configurado para recibir la información de control (1003) y para detectar un estado de la información de control (1003) y para seleccionar la al menos una trama anterior o posterior en tiempo a una trama actual de la primera señal de combinación para su uso por el calculador de espectro imaginario (1001) cuando la información de control (1003) tiene el primer estado y para seleccionar únicamente la única trama de la primera señal de combinación para su uso por el calculador de espectro imaginario (1001) cuando la información de control (1003) tiene el segundo estado. wherein the spectral frame selector (1000) is configured to receive the control information (1003) and to detect a status of the control information (1003) and to select the at least one previous or subsequent frame in time to a current frame of the first combination signal for use by the imaginary spectrum calculator (1001) when the control information (1003) has the first state and to select only the only frame of the first combination signal for use by the imaginary spectrum calculator (1001) when the control information (1003) has the second state. 5. Codificador de audio de acuerdo con la reivindicación 4, en el que el predictor (2033) comprende un cuantificador para cuantificar la primera señal de canal, la segunda señal de canal, la primera señal de combinación o la segunda señal de combinación para obtener una o más señales cuantificadas, y en el que el predictor (2033) está configurado para calcular la señal residual utilizando señales cuantificadas.5. Audio encoder according to claim 4, wherein the predictor (2033) comprises a quantizer for quantizing the first channel signal, the second channel signal, the first combination signal or the second combination signal to obtain one or more quantized signals, and wherein the predictor (2033) is configured to calculate the residual signal using quantized signals. 6. Codificador de audio de acuerdo con una de las reivindicaciones 4 a 5,6. Audio encoder according to one of claims 4 to 5, en el que el optimizador (207) está configurado para calcular la información de predicción (206) adicionalmente como un factor de valor real distinto de cero,wherein the optimizer (207) is configured to calculate the prediction information (206) additionally as a non-zero real value factor, en el que el calculador del codificador (203) está configurado para calcular la primera señal de combinación y la señal de predicción residual de modo que la señal de predicción residual es proveniente de la representación espectral real pura utilizando el factor de valor real.wherein the encoder calculator (203) is configured to calculate the first combination signal and the residual prediction signal so that the residual prediction signal is derived from the pure real spectral representation using the real value factor. 7. Método de decodificación de una señal de audio multicanal codificada (100), comprendiendo la señal de audio multicanal codificada una primera señal de combinación codificada generada basándose en una regla de combinación para combinar una primera señal de audio de canal y una segunda señal de audio de canal de una señal de audio multicanal, una señal de predicción residual codificada e información de predicción, que comprende: decodificar (110) la primera señal de combinación codificada (104) para obtener una primera señal de combinación decodificada (112), y decodificar la señal residual codificada (106) para obtener una señal residual decodificada (114); y7. Method of decoding a coded multichannel audio signal (100), the encoded multichannel audio signal comprising a first coded combination signal generated based on a combination rule for combining a first channel audio signal and a second channel signal. channel audio of a multichannel audio signal, a coded residual prediction signal and prediction information, comprising: decoding (110) the first coded combination signal (104) to obtain a first decoded combination signal (112), and decoding the coded residual signal (106) to obtain a decoded residual signal (114); Y calcular (116) una señal multicanal decodificada que tiene una primera señal de canal decodificada (117), y una segunda señal de canal decodificada (118) utilizando la señal residual decodificada (114), la información de predicción (108) y la primera señal de combinación decodificada (112), de modo que la primera señal de canal decodificada (117) y la segunda señal de canal decodificada (118) son al menos aproximaciones de la primera señal de canal y la segunda señal de canal de la señal multicanal, en el que la información de predicción (108) comprende un factor de valor real distinto de cero y un factor imaginario distinto de cero,calculating (116) a decoded multichannel signal having a first decoded channel signal (117), and a second decoded channel signal (118) using the decoded residual signal (114), the prediction information (108) and the first signal of decoded combination (112), so that the first decoded channel signal (117) and the second decoded channel signal (118) are at least approximations of the first channel signal and the second channel signal of the multichannel signal, wherein the prediction information (108) comprises a real value factor other than zero and an imaginary factor other than zero, en el que el cálculo (116) comprende:wherein the calculation (116) comprises: aplicar la información de predicción (108) a la primera señal de combinación decodificada (112) o a una señal (601) proveniente de la primera señal de combinación decodificada para obtener una señal de predicción (1163);applying the prediction information (108) to the first decoded combination signal (112) or to a signal ( 601 ) from the first decoded combination signal to obtain a prediction signal (1163); calcular una segunda señal de combinación (1165) combinando la señal residual decodificada (114) y la señal de predicción (1163); ycalculating a second combination signal (1165) by combining the decoded residual signal (114) and the prediction signal (1163); Y combinar la primera señal de combinación decodificada (112) y la segunda señal de combinación (1165) para obtener una señal de audio multicanal decodificada que tiene la primera señal de audio de canal decodificada (117) y la segunda señal de canal decodificada (118),combining the first decoded combination signal (112) and the second combination signal (1165) to obtain a decoded multi-channel audio signal having the first decoded channel audio signal (117) and the second decoded channel signal (118) , en el que la señal de audio multicanal codificada comprende una información de control (1003) que indica en un primer estado que la aplicación de la información de predicción es para usar al menos una trama anterior o posterior en tiempo a una trama actual de la primera señal de combinación decodificada, y que indica en un segundo estado que la aplicación de la información de predicción es para usar únicamente una trama de la primera señal de combinación decodificada para una estimación de una parte imaginaria para la trama actual de la primera señal de combinación decodificada,wherein the encoded multichannel audio signal comprises a control information (1003) which indicates in a first state that the application of the prediction information is to use at least one previous or subsequent frame in time to a current frame of the first decoded combination signal, and indicating in a second state that the application of the prediction information is to use only a frame of the first decoded combination signal for an estimate of an imaginary part for the current frame of the first combination signal decoded, en el que la aplicación de la información de predicción comprende multiplicar la primera señal de combinación decodificada por el factor de valor real para obtener una primera parte de la señal de predicción,wherein the application of the prediction information comprises multiplying the first combination signal decoded by the real value factor to obtain a first part of the prediction signal, en el que la aplicación de la información de predicción comprende estimar una parte imaginaria de la primera señal de combinación decodificada (112) utilizando una parte real de la primera señal de combinación decodificada (112),wherein the application of the prediction information comprises estimating an imaginary part of the first decoded combination signal (112) using a real part of the first decoded combination signal (112), en el que la aplicación de la información de predicción comprende multiplicar la parte imaginaria (601) de la primera señal de combinación decodificada por el factor imaginario de la información de predicción (108) para obtener una segunda parte de la señal de predicción,wherein the application of the prediction information comprises multiplying the imaginary part (601) of the first combination signal decoded by the imaginary factor of the prediction information (108) to obtain a second part of the prediction signal, en el que el cálculo de una segunda señal de combinación (1165) comprende combinar linealmente la primera parte de la señal de predicción y la segunda parte de la señal de predicción y la señal residual decodificada para obtener la segunda señal de combinación (1165),wherein the calculation of a second combination signal (1165) comprises linearly combining the first part of the prediction signal and the second part of the prediction signal and the decoded residual signal to obtain the second combination signal (1165), en el que la estimación de una parte imaginaria de la primera señal de combinación decodificada (112) comprende seleccionar una o más tramas espectrales (1000) y calcular un espectro imaginario (1001), y en el que la selección de una o más tramas espectrales (1000) comprende recibir la información de control (1003) y detectar un estado de la información de control (1003) y seleccionar la al menos una trama anterior o posterior en tiempo a una trama actual de la primera señal de combinación decodificada para calcular el espectro imaginario (1001) cuando la información de control (1003) tiene el primer estado y seleccionar únicamente la única trama de la primera señal de combinación decodificada para calcular el espectro imaginario (1001) cuando la información de control (1003) tiene el segundo estado.wherein the estimation of an imaginary part of the first decoded combination signal (112) comprises selecting one or more spectral frames (1000) and calculating an imaginary spectrum (1001), and wherein selecting one or more spectral frames (1000) comprises receiving the control information (1003) and detecting a status of the control information (1003) and selecting the at least one previous or subsequent frame in time to a current frame of the first decoded combination signal to calculate the imaginary spectrum (1001) when the control information (1003) has the first state and select only the only frame of the first decoded combination signal to calculate the imaginary spectrum (1001) when the control information (1003) has the second state . 8. Método de codificación de una señal de audio multicanal que tiene dos o más señales de canal, que comprende: calcular (203) una primera señal de combinación (204) y una señal de predicción residual (205) utilizando una primera señal de canal (201) y una segunda señal de canal (202) e información de predicción (206), de modo que una señal de predicción residual, cuando se combina con una señal de predicción proveniente de la primera señal de combinación o una señal proveniente de la primera señal de combinación y la información de predicción (206) da como resultado una segunda señal de combinación (2032), la primera señal de combinación (204) y la segunda señal de combinación (2032) siendo derivables a partir de la primera señal de canal (201) y la segunda señal de canal (202) utilizando una regla de combinación;8. Method of encoding a multi-channel audio signal having two or more channel signals, comprising: calculating (203) a first combination signal (204) and a residual prediction signal (205) using a first channel signal (201) and a second channel signal (202) and prediction information (206), so that a residual prediction signal, when combined with a prediction signal from the first combination signal or a signal from the first combination signal and the prediction information (206) results in a second combination signal (2032) ), the first combination signal (204) and the second combination signal (2032) being derivable from the first channel signal (201) and the second channel signal (202) using a combination rule; calcular (207) la información de predicción (206) de modo que la señal de predicción residual (205) satisface un objetivo de codificación (208);calculating (207) the prediction information (206) such that the residual prediction signal (205) satisfies a coding objective (208); codificar (209) la primera señal de combinación (204) y la señal de predicción residual (205) para obtener una primera señal de combinación codificada (210) y una señal residual codificada (211); yencoding (209) the first combination signal (204) and the residual prediction signal (205) to obtain a first coded combination signal (210) and a coded residual signal (211); Y combinar (212) la primera señal de combinación codificada (210), la señal de predicción residual codificada (211) y la información de predicción (206) para obtener una señal de audio multicanal codificada,combining (212) the first coded combination signal (210), the coded residual prediction signal (211) and the prediction information (206) to obtain a coded multichannel audio signal, en el que el cálculo (203) comprende:wherein the calculation (203) comprises: combinar la primera señal de canal (201) y la segunda señal de canal (202) en dos maneras diferentes para obtener la primera señal de combinación (204) y la segunda señal de combinación (2032);combining the first channel signal (201) and the second channel signal (202) in two different ways to obtain the first combination signal (204) and the second combination signal (2032); aplicar la información de predicción (206) a la primera señal de combinación (204) o a una señal (600) proveniente de la primera señal de combinación (204) para obtener una señal de predicción (2035); y calcular la señal de predicción residual (205) combinando la señal de predicción (2035) y la segunda señal de combinación (2032),applying the prediction information (206) to the first combination signal (204) or to a signal (600) from the first combination signal (204) to obtain a prediction signal (2035); and calculating the residual prediction signal (205) by combining the prediction signal (2035) and the second combination signal (2032), en el que la primera señal de canal es una representación espectral de un bloque de muestras, en el que la segunda señal de canal es una representación espectral de un bloque de muestras, en el que las representaciones espectrales son representaciones espectrales reales puras,wherein the first channel signal is a spectral representation of a block of samples, wherein the second channel signal is a spectral representation of a block of samples, in which the spectral representations are pure real spectral representations, en el que el cálculo (207) de la información de predicción (206) comprende calcular la información de predicción (206) como un factor de valor real distinto de cero y un factor imaginario distinto de cero,wherein the calculation (207) of the prediction information (206) comprises calculating the prediction information (206) as a non-zero real-value factor and an imaginary non-zero factor, en el que la aplicación de la información de predicción (206) comprende estimar (2070) una parte imaginaria de la primera señal de combinación (112) utilizando la primera señal de combinación,wherein the application of the prediction information (206) comprises estimating (2070) an imaginary part of the first combination signal (112) using the first combination signal, en el que el cálculo (203) comprende calcular la primera señal de combinación (204) y la primera señal residual (2032) de modo que la señal de predicción se deriva de la parte imaginaria de la primera señal de combinación (112) utilizando el factor imaginario,wherein the calculation (203) comprises calculating the first combination signal (204) and the first residual signal (2032) so that the prediction signal is derived from the imaginary part of the first combination signal (112) using the imaginary factor, en el que la aplicación de la información de predicción comprende:wherein the application of the prediction information comprises: multiplicar la primera señal de combinación (204) por una parte real de la información de predicción (2073) para obtener una primera parte de la señal de predicción;multiplying the first combination signal (204) by a real part of the prediction information (2073) to obtain a first part of the prediction signal; estimar (2070) una parte imaginaria (600) de la primera señal de combinación utilizando la primera señal de combinación (204); yestimating (2070) an imaginary part (600) of the first combination signal using the first combination signal (204); Y multiplicar la parte imaginaria de la primera señal combinada por una parte imaginaria de la información de predicción (2074) para obtener una segunda parte de la señal de predicción;multiplying the imaginary part of the first combined signal by an imaginary part of the prediction information (2074) to obtain a second part of the prediction signal; en el que el cálculo de la señal residual (2034) comprende combinar linealmente la señal de la primera parte de la señal de predicción o la señal de la segunda parte de la señal de predicción y la segunda señal de combinación para obtener la señal de predicción residual (205), ywherein the calculation of the residual signal (2034) comprises linearly combining the signal of the first part of the prediction signal or the signal of the second part of the prediction signal and the second combination signal to obtain the prediction signal residual (205), and en el que la aplicación de la información de predicción comprende recibir una información de control (1003) que indica en el primer estado que la aplicación de la información de predicción es para usar al menos una trama anterior o posterior en tiempo a una trama actual de la primera señal de combinación decodificada, y que indica en el segundo estado que la aplicación de la información de predicción es para usar únicamente una única trama de la primera señal de combinación decodificada para una estimación de una parte imaginaria para la trama actual de la primera señal de combinación decodificada,wherein the application of the prediction information comprises receiving control information (1003) which indicates in the first state that the application of the prediction information is to use at least one previous or subsequent frame in time to a current frame of the first decoded combination signal, and indicating in the second state that the application of the prediction information is to use only a single frame of the first decoded combination signal for an estimate of an imaginary part for the current frame of the first decoded combination signal, en el que la estimación (2070) de una parte imaginaria de la primera señal de combinación (112) comprende seleccionar una o más tramas espectrales (1000) y calcular un espectro imaginario (1001), ywherein the estimate (2070) of an imaginary part of the first combination signal (112) comprises selecting one or more spectral frames (1000) and calculating an imaginary spectrum (1001), and en el que la selección de una o más tramas espectrales (1000) comprende recibir la información de control (1003) y detectar un estado de la información de control (1003) y seleccionar la al menos una trama anterior o posterior en tiempo a una trama actual de la primera señal de combinación para calcular (1001) el calculador de espectro imaginario cuando la información de control (1003) tiene el primer estado y para seleccionar únicamente la única trama de la primera señal de combinación para calcular (1001) el espectro imaginario cuando la información de control (1003) tiene el segundo estado.wherein the selection of one or more spectral frames (1000) comprises receiving the control information (1003) and detecting a status of the control information (1003) and selecting the at least one previous or subsequent frame in time to a frame current of the first combination signal to calculate (1001) the imaginary spectrum calculator when the control information (1003) has the first state and to select only the single frame of the first combination signal to calculate (1001) the imaginary spectrum when the control information (1003) has the second state. 9. Programa informático adaptado para realizar, cuando se ejecuta en un ordenador o un procesador, el método de la reivindicación 7 o el método de la reivindicación 8. 9. Computer program adapted to perform, when executed in a computer or a processor, the method of claim 7 or the method of claim 8.
ES15176783T 2010-04-09 2011-03-23 Multichannel audio coding using complex prediction and explicit estimation signaling Active ES2707473T3 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US32268810P 2010-04-09 2010-04-09
US36390610P 2010-07-13 2010-07-13
EP10169432A EP2375409A1 (en) 2010-04-09 2010-07-13 Audio encoder, audio decoder and related methods for processing multi-channel audio signals using complex prediction

Publications (1)

Publication Number Publication Date
ES2707473T3 true ES2707473T3 (en) 2019-04-03

Family

ID=65681314

Family Applications (4)

Application Number Title Priority Date Filing Date
ES15176783T Active ES2707473T3 (en) 2010-04-09 2011-03-23 Multichannel audio coding using complex prediction and explicit estimation signaling
ES15176785T Active ES2704891T3 (en) 2010-04-09 2011-03-23 Multichannel audio coding using complex prediction and real indicator
ES15176781T Active ES2704261T3 (en) 2010-04-09 2011-03-23 Multichannel audio encoding that uses complex prediction and a transform length indicator
ES15176778T Active ES2708581T3 (en) 2010-04-09 2011-03-23 Multichannel audio coding using complex prediction and window shape information

Family Applications After (3)

Application Number Title Priority Date Filing Date
ES15176785T Active ES2704891T3 (en) 2010-04-09 2011-03-23 Multichannel audio coding using complex prediction and real indicator
ES15176781T Active ES2704261T3 (en) 2010-04-09 2011-03-23 Multichannel audio encoding that uses complex prediction and a transform length indicator
ES15176778T Active ES2708581T3 (en) 2010-04-09 2011-03-23 Multichannel audio coding using complex prediction and window shape information

Country Status (2)

Country Link
ES (4) ES2707473T3 (en)
TR (5) TR201900906T4 (en)

Also Published As

Publication number Publication date
ES2704261T3 (en) 2019-03-15
ES2708581T3 (en) 2019-04-10
TR201900830T4 (en) 2019-02-21
ES2704891T3 (en) 2019-03-20
TR201901427T4 (en) 2019-02-21
TR201900906T4 (en) 2019-02-21
TR201900414T4 (en) 2019-02-21
TR201820422T4 (en) 2019-01-21

Similar Documents

Publication Publication Date Title
ES2701456T3 (en) Coding of multichannel audio signals using complex prediction and differential coding
ES2914474T3 (en) Decoding method of a stereo audio signal encoded using a variable prediction address
ES2707473T3 (en) Multichannel audio coding using complex prediction and explicit estimation signaling
BR122020025095B1 (en) AUDIO OR VIDEO ENCODER, AUDIO OR VIDEO DECODER AND RELATED METHODS FOR PROCESSING THE AUDIO OR VIDEO SIGNAL OF MULTIPLE CHANNELS USING A VARIABLE FORECAST DIRECTION