ES2797525T3 - Simultaneous noise shaping in time domain and frequency domain for TDAC transformations - Google Patents

Simultaneous noise shaping in time domain and frequency domain for TDAC transformations Download PDF

Info

Publication number
ES2797525T3
ES2797525T3 ES10822970T ES10822970T ES2797525T3 ES 2797525 T3 ES2797525 T3 ES 2797525T3 ES 10822970 T ES10822970 T ES 10822970T ES 10822970 T ES10822970 T ES 10822970T ES 2797525 T3 ES2797525 T3 ES 2797525T3
Authority
ES
Spain
Prior art keywords
window
filter
spectral
noise
inverse
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
ES10822970T
Other languages
Spanish (es)
Inventor
Bruno Bessette
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.)
VoiceAge Corp
Original Assignee
VoiceAge Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by VoiceAge Corp filed Critical VoiceAge Corp
Application granted granted Critical
Publication of ES2797525T3 publication Critical patent/ES2797525T3/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/26Pre-filtering or post-filtering
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0212Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0204Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using subband decomposition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L2019/0001Codebooks
    • G10L2019/0007Codebook element generation
    • G10L2019/0008Algebraic codebooks

Abstract

Un método de conformación de ruido en el dominio de la frecuencia para interpolar una forma espectral y una envolvente en el dominio del tiempo del ruido de cuantificación en una señal de audio en ventana y codificada por transformación, caracterizado porque comprende: procesar (305) las bandas espectrales cuantificadas C1f[k], C2f[k], C3f[k], ..., CMf[k] de la señal de audio en ventana y codificada por transformación a través de los filtros inversos respectivos (Filtro inverso 1, Filtro inverso 2, Filtro inverso 3, ..., Filtro inverso M) para producir las bandas espectrales decodificadas C1[k], C2[k], C3[k], ..., CM[k]; concatenar (306) las bandas espectrales decodificadas C1[k], C2[k], C3[k], ..., CM[k] para producir los coeficientes espectrales decodificados (Y[k]); y transformación inversa (307) de los coeficientes espectrales decodificados (Y[k]) para producir un bloque decodificado de muestras en el dominio del tiempo (y[n]) de la señal de audio; en donde el procesamiento (305) de las bandas espectrales cuantificadas C1f[k], C2f[k], C3f[k], ..., CMf[k] comprende, para cada banda espectral cuantificada C1f[k], C2f[k], C3f[k], ..., CMf[k]: calcular (308) las ganancias de ruido g1[m] y g2[m] que representan las formas espectrales del ruido de cuantificación respectivamente en una primera transición (A) entre una ventana de procesamiento de transformación actual (ventana 1) y una ventana de procesamiento de transformación anterior (ventana 0) y en una segunda transición (B) entre la ventana de procesamiento de transformación actual (ventana 1) y una ventana de procesamiento de transformación posterior (ventana 2); y filtrar los coeficientes espectrales cuantificados (Yf[k]) de la banda espectral cuantificada mediante el uso de la relación: **(Ver fórmula)** donde a y b son los parámetros del filtro y m identifica la banda espectral, y donde **(Ver fórmula)**A frequency domain noise shaping method for interpolating a spectral shape and time domain envelope of quantization noise in a windowing and transformation-encoded audio signal, characterized in that it comprises: processing (305) the quantized spectral bands C1f [k], C2f [k], C3f [k], ..., CMf [k] of the audio signal in window and encoded by transformation through the respective inverse filters (Inverse filter 1, Filter Inverse 2, Inverse Filter 3, ..., Inverse Filter M) to produce the decoded spectral bands C1 [k], C2 [k], C3 [k], ..., CM [k]; concatenating (306) the decoded spectral bands C1 [k], C2 [k], C3 [k], ..., CM [k] to produce the decoded spectral coefficients (Y [k]); and inverse transformation (307) of the decoded spectral coefficients (Y [k]) to produce a decoded block of samples in the time domain (y [n]) of the audio signal; where the processing (305) of the quantized spectral bands C1f [k], C2f [k], C3f [k], ..., CMf [k] comprises, for each quantized spectral band C1f [k], C2f [k ], C3f [k], ..., CMf [k]: calculate (308) the noise gains g1 [m] and g2 [m] that represent the spectral shapes of the quantization noise respectively in a first transition (A) between a current transformation processing window (window 1) and a previous transformation processing window (window 0) and in a second transition (B) between the current transformation processing window (window 1) and a processing window of post transformation (window 2); and filter the quantized spectral coefficients (Yf [k]) of the quantized spectral band by using the relationship: ** (See formula) ** where a and b are the filter parameters and m identifies the spectral band, and where ** ( See formula) **

Description

DESCRIPCIÓNDESCRIPTION

Conformación simultánea de ruido en el dominio del tiempo y el dominio de la frecuencia para transformaciones TDAC Simultaneous noise shaping in time domain and frequency domain for TDAC transformations

Campo de la invenciónField of the invention

La presente invención se refiere a un método y dispositivo de conformación de ruido en el dominio de la frecuencia para interpolar una forma espectral y una envolvente en el dominio del tiempo de un ruido de cuantificación en una señal de audio en ventana y codificada por transformación.The present invention relates to a frequency domain noise shaping method and device for interpolating a spectral shape and time domain envelope of a quantization noise into a windowing and transform encoded audio signal.

AntecedentesBackground

La codificación de transformación especializada produce importantes ahorros en la velocidad de bits al representar señales digitales como el audio. Las transformaciones tal como la Transformada discreta de Fourier (DFT) y la Transformada discreta de coseno (DCT) proporcionan una representación compacta de la señal de audio al condensar la mayor parte de la energía de la señal en relativamente pocos coeficientes espectrales, en comparación con las muestras en el dominio del tiempo donde la energía se distribuye en todas las muestras. Esta propiedad de compactación de energía de las transformaciones puede conducir a una cuantificación eficiente, por ejemplo, a través de la asignación de bits adaptativa, y la minimización de la distorsión percibida, por ejemplo, mediante el uso de modelos de enmascaramiento de ruido. Una reducción de datos adicional puede lograrse mediante el uso de transformaciones solapadas y la cancelación de solapamiento en el dominio del tiempo (TDAC). La DCT modificada (MDCT) es un ejemplo de tales transformaciones solapadas, en las que los bloques adyacentes de muestras de la señal de audio a procesar se solapan entre sí para evitar artefactos de discontinuidad mientras se mantiene el muestreo crítico (N muestras de la señal de audio de entrada producen N coeficientes de transformación). La propiedad TDAC de la MDCT proporciona esta ventaja adicional en la compactación de energía.Specialized transform coding produces significant bit rate savings when representing digital signals such as audio. Transformations such as the Discrete Fourier Transform (DFT) and the Discrete Cosine Transform (DCT) provide a compact representation of the audio signal by condensing most of the signal energy into relatively few spectral coefficients, compared to the samples in the time domain where the energy is distributed in all the samples. This energy compaction property of transformations can lead to efficient quantization, for example, through adaptive bit allocation, and minimization of perceived distortion, for example, through the use of noise masking models. Further data reduction can be achieved through the use of overlapping transformations and time domain overlap cancellation (TDAC). Modified DCT (MDCT) is an example of such overlapping transformations, in which adjacent blocks of samples of the audio signal to be processed overlap each other to avoid discontinuity artifacts while maintaining critical sampling ( N samples of the signal input audio output N transform coefficients). The TDAC property of the MDCT provides this additional advantage in energy compaction.

Los modelos recientes de codificación de audio usan un enfoque multimodo. En este enfoque, pueden usarse varias herramientas de codificación para codificar de manera más eficiente cualquier tipo de señal de audio (voz, música, mixta, etc.). Estas herramientas comprenden transformaciones tal como la MDCt y predictores tales como los predictores de tono y filtros de codificación predictiva lineal (LPC) usados en la codificación de voz. Cuando se opera un códec multimodo, las transiciones entre los diferentes modos de codificación se procesan cuidadosamente para evitar artefactos audibles debido a la transición. En particular, la conformación del ruido de cuantificación en los diferentes modos de codificación se realiza típicamente mediante el uso de diferentes procedimientos. En las tramas que usan codificación de transformación, el ruido de cuantificación se forma en el dominio de transformación (es decir, al cuantificar los coeficientes de transformación), al aplicar varias etapas de cuantificación que se controlan por factores de escala derivados, por ejemplo, de la energía de la señal de audio en diferentes bandas espectrales. Por otro lado, en las tramas que usan un modelo predictivo en el dominio del tiempo (que típicamente involucra predictores a largo plazo y predictores a corto plazo), el ruido de cuantificación se forma mediante el uso de un llamado filtro de ponderación cuya función de transferencia en el dominio de transformación za menudo se denota W(z). La conformación de ruido se aplica entonces al filtrar primero las muestras en el dominio del tiempo de la señal de audio de entrada a través del filtro de ponderación W(z) para obtener una señal ponderada, y luego codificar la señal ponderada en este llamado dominio ponderado. La forma espectral, o respuesta de frecuencia, del filtro de ponderación W(z) se controla de manera que el ruido de codificación (o cuantificación) quede enmascarado por la señal de audio de entrada. Típicamente, el filtro de ponderación W(z) se deriva del filtro LPC, que modela la envolvente espectral de la señal de audio de entrada.Recent models of audio coding use a multimode approach. In this approach, various encoding tools can be used to more efficiently encode any type of audio signal (voice, music, mixed, etc.). These tools comprise transformations such as MDCt and predictors such as pitch predictors and linear predictive coding (LPC) filters used in speech coding. When operating a multimode codec, the transitions between the different encoding modes are carefully processed to avoid audible artifacts due to the transition. In particular, the shaping of the quantization noise in the different coding modes is typically done using different procedures. In frames that use transform coding, quantization noise is formed in the transform domain (that is, when quantizing the transform coefficients), by applying various quantization steps that are controlled by derived scale factors, for example, of the audio signal energy in different spectral bands. On the other hand, in frames that use a predictive model in the time domain (which typically involves long-term predictors and short-term predictors), the quantization noise is formed by using a so-called weighting filter whose function of transfer in the transformation domain z is often denoted W (z). Noise shaping is then applied by first filtering the time-domain samples of the input audio signal through the W ( z) weighting filter to obtain a weighted signal, and then encoding the weighted signal in this so-called domain. weighted. The spectral shape, or frequency response, of the weighting filter W ( z) is controlled so that the encoding (or quantizing) noise is masked by the input audio signal. Typically, the weighting filter W ( z) is derived from the LPC filter, which models the spectral envelope of the input audio signal.

Un ejemplo de un códec de audio multimodo es el Códec unificado de voz y audio (USAC) del Grupo de expertos en imágenes en movimiento (MPEG). Este códec integra herramientas que incluyen la codificación de transformación y la codificación predictiva lineal, y puede cambiar entre diferentes modos de codificación en dependencia de las características de la señal de audio de entrada. Hay tres (3) modos de codificación básicos en el USAC:An example of a multimode audio codec is the Unified Voice and Audio Codec (USAC) from the Moving Pictures Experts Group (MPEG). This codec integrates tools including transform coding and linear predictive coding, and can switch between different coding modes depending on the characteristics of the input audio signal. There are three (3) basic encoding modes in the USAC:

1) Un modo de codificación basado en la codificación de audio avanzada (AAC), que codifica la señal de audio de entrada mediante el uso de la MDCT y la cuantificación derivada perceptivamente de los coeficientes de la MDCT;1) A coding mode based on Advanced Audio Coding (AAC), which encodes the input audio signal by using the MDCT and quantization perceptually derived from the MDCT coefficients;

2) Un modo de codificación basado en la predicción lineal excitada de código algebraico (ACELP), que codifica la señal de audio de entrada como una señal de excitación (una señal en el dominio del tiempo) procesada a través de un filtro de síntesis; y2) A coding mode based on Algebraic Code Excited Linear Prediction (ACELP), which encodes the input audio signal as an excitation signal (a time-domain signal) processed through a synthesis filter; and

3) Un modo de codificación basado en excitación codificada por transformación (TCX) que es una especie de híbrido entre los dos modos anteriores, en donde la excitación del filtro de síntesis del segundo modo se codifica en el dominio de la frecuencia; en realidad, esta es una señal objetivo o la señal ponderada que se codifica en el dominio de transformación. 3) A transform-coded excitation-based (TCX) coding mode which is a kind of hybrid between the two above modes, wherein the excitation of the synthesis filter of the second mode is encoded in the frequency domain; actually this is a target signal or the weighted signal that is encoded in the transform domain.

En el USAC, el modo de codificación basado en TCX y el modo de codificación basado en AAC usan una transformación similar, por ejemplo, la MDCT. Sin embargo, en su forma estándar, la AAC y la TCX no aplican el mismo mecanismo para controlar la forma espectral del ruido de cuantificación. La AAC controla explícitamente el ruido de cuantificación en el dominio de la frecuencia en las etapas de cuantificación de los coeficientes de transformación. La TCX, sin embargo, controla la forma espectral del ruido de cuantificación mediante el uso del filtrado en el dominio del tiempo y, más específicamente, mediante el uso de un filtro de ponderación W(z) como se describió anteriormente. Para facilitar la conformación del ruido de cuantificación en un códec de audio multimodo, existe la necesidad de un dispositivo y un método para la conformación simultánea del ruido en el dominio del tiempo y el dominio de la frecuencia para las transformaciones TDAC. Jeremie Lecomte y otros: "Efficient Cross-Fade Windows for Transitions between LPC-Based and Non-LPC Based Audio Coding", CONVENCIÓN AES 126; MAYO 2009 describe el cambio entre ventanas de diferentes formas en los bordes AAC y TCX.In USAC, the TCX-based encoding mode and the AAC-based encoding mode use a similar transformation, for example, the MDCT. However, in their standard form, AAC and TCX do not apply the same mechanism to control the spectral shape of quantization noise. The AAC explicitly controls the quantization noise in the frequency domain in the quantization steps of the transform coefficients. The TCX, however, controls the spectral shape of the quantization noise through the use of time-domain filtering and, more specifically, through the use of a W ( z) weighting filter as described above. To facilitate shaping of quantization noise in a multimode audio codec, there is a need for a device and method for simultaneous shaping of noise in the time domain and the frequency domain for the TDAC transformations. Jeremie Lecomte and others: "Efficient Cross-Fade Windows for Transitions between LPC-Based and Non-LPC Based Audio Coding", AES 126 CONVENTION; MAY 2009 describes the switching between windows of different shapes at the AAC and TCX edges.

Resumen de la invenciónSummary of the invention

El alcance de la invención se establece solamente por las reivindicaciones adjuntas. De acuerdo con un primer aspecto, la presente invención se refiere a un método de conformación de ruido en el dominio de la frecuencia para interpolar una forma espectral y una envolvente en el dominio del tiempo de un ruido de cuantificación en una señal de audio en ventana y codificada por transformación, que comprende dividir los coeficientes de transformación de la señal de audio en ventana y codificada por transformación en una pluralidad de bandas espectrales. El método de conformación de ruido en el dominio de la frecuencia comprende además, para cada banda espectral: calcular una primera ganancia que representa, junto con las ganancias correspondientes calculadas para las otras bandas espectrales, una forma espectral del ruido de cuantificación en una primera transición entre una primera ventana de tiempo y una segunda ventana de tiempo; calcular una segunda ganancia que representa, junto con las ganancias correspondientes calculadas para las otras bandas espectrales, una forma espectral del ruido de cuantificación en una segunda transición entre la segunda ventana de tiempo y una tercera ventana de tiempo; y filtrar los coeficientes de transformación de la segunda ventana de tiempo en base a las primera y segunda ganancias, para interpolar entre las primera y segunda transiciones la forma espectral y la envolvente en el dominio del tiempo del ruido de cuantificación.The scope of the invention is established solely by the appended claims. According to a first aspect, the present invention relates to a frequency domain noise shaping method for interpolating a spectral shape and time domain envelope of a quantization noise in a windowed audio signal. and transform-encoded, which comprises dividing the transformation coefficients of the windowing and transform-encoded audio signal into a plurality of spectral bands. The frequency domain noise shaping method further comprises, for each spectral band: calculating a first gain that represents, together with the corresponding gains calculated for the other spectral bands, a spectral shape of the quantization noise in a first transition between a first time window and a second time window; calculating a second gain representing, together with the corresponding gains calculated for the other spectral bands, a spectral shape of the quantization noise at a second transition between the second time window and a third time window; and filtering the transformation coefficients of the second time window based on the first and second gains, to interpolate between the first and second transitions the spectral shape and time domain envelope of the quantization noise.

De acuerdo con un segundo aspecto, la presente invención se refiere a un dispositivo de conformación de ruido en el dominio de la frecuencia para interpolar una forma espectral y una envolvente en el dominio del tiempo de un ruido de cuantificación en una señal de audio en ventana y codificada por transformación, que comprende: un divisor de los coeficientes de transformación de la señal de audio en ventana y codificada por transformación en una pluralidad de bandas espectrales; una calculadora, para cada banda espectral, de una primera ganancia que representa, junto con las ganancias correspondientes calculadas para las otras bandas espectrales, una forma espectral del ruido de cuantificación en una primera transición entre una primera ventana de tiempo y una segunda ventana de tiempo, y de un segunda ganancia que representa, junto con las ganancias correspondientes calculadas para las otras bandas espectrales, una forma espectral del ruido de cuantificación en una segunda transición entre la segunda ventana de tiempo y una tercera ventana de tiempo; y un filtro de los coeficientes de transformación de la segunda ventana de tiempo en base a las primera y segunda ganancias, para interpolar entre las primera y segunda transiciones la forma espectral y la envolvente en el dominio del tiempo del ruido de cuantificación.According to a second aspect, the present invention relates to a frequency domain noise shaping device for interpolating a spectral shape and a time domain envelope of a quantization noise in a windowing audio signal. and transform encoded, comprising: a divider of the transformation coefficients of the windowing and transform encoded audio signal into a plurality of spectral bands; a calculator, for each spectral band, of a first gain representing, together with the corresponding gains calculated for the other spectral bands, a spectral shape of the quantization noise in a first transition between a first time window and a second time window , and of a second gain representing, together with the corresponding gains calculated for the other spectral bands, a spectral shape of the quantization noise in a second transition between the second time window and a third time window; and a filter of the transformation coefficients of the second time window based on the first and second gains, to interpolate between the first and second transitions the spectral shape and the envelope in the time domain of the quantization noise.

En la presente descripción y las reivindicaciones adjuntas, el término "ventana de tiempo" designa un bloque de muestras en el dominio del tiempo, y el término "señal en ventana" designa una ventana del dominio del tiempo después de la aplicación de una ventana no rectangular.In the present description and the appended claims, the term "time window" designates a block of samples in the time domain, and the term "signal in window" designates a window of the time domain after application of a non-window. rectangular.

Los anteriores y otros objetivos, ventajas y características de la presente invención resultarán más evidentes tras la lectura de la siguiente descripción no restrictiva de una modalidad ilustrativa de la misma, que se muestra a manera de ejemplo solo con referencia a las figuras acompañantes.The foregoing and other objectives, advantages and characteristics of the present invention will become more apparent upon reading the following non-restrictive description of an illustrative embodiment thereof, which is shown by way of example only with reference to the accompanying figures.

Breve descripción de las figurasBrief description of the figures

En las figuras adjuntas:In the attached figures:

La Figura 1 es un diagrama de bloques esquemático que ilustra el principio general de la Conformación de ruido temporal (TNS);Figure 1 is a schematic block diagram illustrating the general principle of Temporal Noise Shaping (TNS);

La Figura 2 es un diagrama de bloques esquemático de un dispositivo de conformación de ruido en el dominio de la frecuencia para interpolar una forma espectral y una envolvente en el dominio del tiempo del ruido de cuantificación; La Figura 3 es un diagrama de flujo que describe las operaciones de un método de conformación de ruido en el dominio de la frecuencia para interpolar la forma espectral y la envolvente en el dominio del tiempo del ruido de cuantificación; La Figura 4 es un diagrama esquemático de las posiciones relativas de la ventana para transformaciones y ganancias de ruido, que considera el cálculo de las ganancias de ruido para la ventana 1;Figure 2 is a schematic block diagram of a frequency domain noise shaping device for interpolating a spectral shape and time domain envelope of quantization noise; Figure 3 is a flow chart describing the operations of a frequency domain noise shaping method to interpolate the spectral shape and time domain envelope of quantization noise; Figure 4 is a schematic diagram of the relative positions of the window for noise gains and transformations, considering the calculation of the noise gains for window 1;

La Figura 5 es un gráfico que ilustra el efecto de la interpolación de la forma del ruido, tanto en la forma espectral como en la envolvente en el dominio del tiempo del ruido de cuantificación;Figure 5 is a graph illustrating the effect of noise shape interpolation, both in spectral shape and in the time domain envelope of quantization noise;

La Figura 6 es un gráfico que ilustra una mésima envolvente en el dominio del tiempo, que puede verse como la forma de ruido en una mésima banda espectral que evoluciona en el tiempo desde el punto A al punto B;Figure 6 is a graph illustrating a nth time domain envelope, which can be seen as the shape of noise in a nth spectral band evolving in time from point A to point B;

La Figura 7 es un diagrama de bloques esquemático de un codificador capaz de conmutar entre un modo de codificación en el dominio de la frecuencia mediante el uso de, por ejemplo, MDCT y un modo de codificación en el dominio del tiempo mediante el uso de, por ejemplo, ACELP, el codificador que aplica la Conformación del ruido en el dominio de la frecuencia (FNDS) para codificar un bloque de muestras de una señal de audio de entrada; yFigure 7 is a schematic block diagram of an encoder capable of switching between a frequency domain encoding mode by using, for example, MDCT and a time domain encoding mode by using, for example, ACELP, the encoder that applies Frequency Domain Noise Shaping (FNDS) to encode a block of samples of an input audio signal; and

La Figura 8 es un diagrama de bloques esquemático de un decodificador que produce un bloque de señal de síntesis mediante el uso de FDNS, en donde el decodificador puede cambiar entre un modo de codificación en el dominio de la frecuencia mediante el uso de, por ejemplo, MDCT y un modo de codificación en el dominio del tiempo mediante el uso de, por ejemplo, ACELP.Figure 8 is a schematic block diagram of a decoder that produces a synthesis signal block using FDNS, where the decoder can switch between a frequency domain encoding mode by using, for example , MDCT and a time domain encoding mode using, for example, ACELP.

Descripción detallada Detailed description

Primero se discutirá brevemente el principio básico de la Conformación de ruido temporal (TNS), mencionada en la siguiente descripción.First the basic principle of Temporal Noise Shaping (TNS), mentioned in the following description, will be briefly discussed.

La TNS es una técnica conocida por los expertos en la técnica de la codificación de audio para conformar el ruido de codificación en el dominio del tiempo. Con referencia a la Figura 1, un sistema TNS 100 comprende:TNS is a technique known to those of skill in the audio coding art for shaping coding noise in the time domain. With reference to Figure 1, a TNS system 100 comprises:

• Un procesador de transformación 101 para someter un bloque de muestras de una señal de audio de entrada x[n] a una transformación, por ejemplo, la Transformada discreta del coseno (DCT) o la DCT modificada (MDCT), y producir los coeficientes de transformación X[k]; • A transform processor 101 to subject a block of samples of an input audio signal x [n] to a transform, for example, the Discrete Cosine Transform (DCT) or the Modified DCT (MDCT), and produce the coefficients transformation X [k];

Un único filtro 102 aplicado a todas las bandas espectrales, más específicamente a todos los coeficientes de transformación X[k] del procesador de transformación 101 para producir los coeficientes de transformación filtrados X[k]; A single filter 102 applied to all spectral bands, more specifically to all transformation coefficients X [k] of the transformation processor 101 to produce the filtered transformation coefficients X [k];

Un procesador 103 para cuantificar, codificar, transmitir a un receptor o almacenar en un dispositivo de almacenamiento, decodificar y cuantificar inversamente los coeficientes de transformación filtrados X f[k] para producir los coeficientes de transformación cuantificados Yf[k]; A processor 103 for quantizing, encoding, transmitting to a receiver or storing in a storage device, decoding and inversely quantizing the filtered transformation coefficients X f [k] to produce the quantized transformation coefficients Y f [k];

Un único filtro inverso 104 para procesar los coeficientes de transformación cuantificados Yf[k] para producir los coeficientes de transformación decodificados Y[k]; y finalmente, A single inverse filter 104 to process the quantized transform coefficients Y f [k] to produce the decoded transform coefficients Y [k]; and finally,

• Un procesador de transformación inversa 105 para aplicar una transformación inversa a los coeficientes de transformación decodificados Y[k] para producir un bloque decodificado de muestras de salida en el dominio del tiempo y[n]. • An inverse transform processor 105 for applying an inverse transform to the decoded transform coefficients Y [k] to produce a decoded block of time domain output samples y [n].

Dado que, en el ejemplo de la Figura 1, el procesador de transformación 101 usa la DCT o MDCT, la transformación inversa aplicada en el procesador de transformación inversa 105 es la DCT inversa o MDCT inversa. El filtro único 102 de la Figura 1 se deriva de un filtro de predicción óptimo para los coeficientes de transformación. Esto da como resultado, en TNS, la modulación del ruido de cuantificación con una envolvente en el dominio del tiempo que sigue a la envolvente en el dominio del tiempo de la señal de audio para la trama actual.Since, in the example of Figure 1, the transform processor 101 uses the DCT or MDCT, the inverse transform applied in the reverse transform processor 105 is the reverse DCT or inverse MDCT. The single filter 102 of Figure 1 is derived from an optimal prediction filter for the transformation coefficients. This results, in TNS, modulation of the quantization noise with a time domain envelope that follows the time domain envelope of the audio signal for the current frame.

Con referencia a las Figuras 2 y 3, la siguiente descripción describe simultáneamente un dispositivo de conformación de ruido en el dominio de la frecuencia 200 y el método 300 para interpolar la forma espectral y la envolvente en el dominio del tiempo del ruido de cuantificación. Más específicamente, en el dispositivo 200 y el método 300, la forma espectral y la amplitud en el dominio del tiempo del ruido de cuantificación en la transición entre dos bloques codificados por transformación superpuestos se interpolan simultáneamente. Los bloques adyacentes codificados por transformación pueden ser de naturaleza similar, tal como dos bloques consecutivos de codificación de audio avanzada (AAC) producidos por un codificador AAC o dos bloques consecutivos de excitación codificada por transformación (TCX) producidos por un codificador TCX, pero también pueden ser de diferente naturaleza tal como un bloque AAC seguido de un bloque TCX, o viceversa, en donde dos codificadores distintos se usan consecutivamente. Tanto la forma espectral como la envolvente en el dominio del tiempo del ruido de cuantificación evolucionan suavemente (o se interpolan continuamente) en la unión entre dos de estos bloques codificados por transformación.With reference to Figures 2 and 3, the following description simultaneously describes a frequency domain noise shaping device 200 and method 300 for interpolating the time domain spectral shape and envelope of quantization noise. More specifically, in device 200 and method 300, the spectral shape and time domain amplitude of the quantization noise at the transition between two overlapping transform-coded blocks are interpolated simultaneously. The adjacent transform-coded blocks can be of a similar nature, such as two consecutive advanced audio coding (AAC) blocks produced by an AAC encoder or two consecutive transform-coded excitation (TCX) blocks produced by a TCX encoder, but also they can be of a different nature such as an AAC block followed by a TCX block, or vice versa, where two different encoders are used consecutively. Both the spectral shape and the time domain envelope of the quantization noise smoothly evolve (or continually interpolate) at the junction between two of these transform-coded blocks.

Operación 301 (Figura 3) - TransformaciónOperation 301 (Figure 3) - Transformation

La señal de audio de entrada x[n] de las Figuras 2 y 3 es un bloque de N muestras en el dominio del tiempo de la señal de audio de entrada que cubre la longitud de un bloque de transformación. Por ejemplo, la señal de entrada x[n] abarca la longitud de la ventana en el dominio del tiempo 1 de la Figura 4.The input audio signal x [n] of Figures 2 and 3 is a block of N samples in the time domain of the input audio signal that covers the length of a transform block. For example, the input signal x [n] spans the length of the window in time domain 1 of Figure 4.

En la operación 301, la señal de entrada x[n] se transforma a través de un procesador de transformación 201 (Figura 2). Por ejemplo, el procesador de transformación 201 puede implementar una MDCT que incluye una ventana en el dominio del tiempo (por ejemplo, la ventana 1 de la Figura 4) que multiplica la señal de entrada x[n] antes de calcular los coeficientes de transformación X[k]. Como se ilustra en la Figura 2, el procesador de transformación 201 genera los coeficientes de transformación X[k]. En el ejemplo no limitativo de una TCMD, los coeficientes de transformación X[k] comprenden N coeficientes espectrales, que es el mismo que el número de muestras en el dominio del tiempo que forman la señal de audio de entrada x[n]. In step 301, the input signal x [n] is transformed through a transform processor 201 (Figure 2). For example, the transform processor 201 may implement an MDCT that includes a time domain window (eg, window 1 of Figure 4) that multiplies the input signal x [n] before calculating the transform coefficients. X [k]. As illustrated in Figure 2, the transformation processor 201 generates the transformation coefficients X [k]. In the non-limiting example of a TCMD, the transform coefficients X [k] comprise N spectral coefficients, which is the same as the number of time-domain samples that make up the input audio signal x [n].

Operación 302 (Figura 3) - División de bandaOperation 302 (Figure 3) - Band Division

En la operación 302, un divisor de banda 202 (Figura 2) divide los coeficientes de transformación X[k] en M bandas espectrales. Más específicamente, los coeficientes de transformación X[k] se dividen en la bandas espectrales B i [k], B2[k], B3[k], ..., BM[k]. La concatenación de las bandas espectrales B i [k], B2[k], B3[k], ..., BM[k] da el conjunto completo de coeficientes de transformación, específicamente B[k]. El número de bandas espectrales y el número de coeficientes de transformación por banda espectral pueden variar en dependencia de la resolución de frecuencia deseada.In step 302, a band divider 202 (Figure 2) divides the transformation coefficients X [k] into M spectral bands. More specifically, the transformation coefficients X [k] are divided into the spectral bands B i [k], B 2 [k], B 3 [k], ..., B M [k]. The concatenation of the spectral bands B i [k], B 2 [k], B 3 [k], ..., B M [k] gives the complete set of transformation coefficients, specifically B [k]. The number of spectral bands and the number of transform coefficients per spectral band can vary depending on the desired frequency resolution.

Operación 303 (Figura 3) - Filtrado 1, 2, 3, ..., M Operation 303 (Figure 3) - Filtering 1, 2, 3, ..., M

Después de la división de banda 302, en la operación 303, cada banda espectral B i [k], B2[k], B3[k], ..., BM[k] se filtra a través de un filtro específico de banda (Filtros 1, 2, 3, ..., M en la Figura 2). Los Filtros 1, 2, 3, ..., M pueden ser diferentes para cada banda espectral, o puede usarse el mismo filtro para todas las bandas espectrales. En una modalidad, los Filtros 1, 2, 3, ..., M de la Figura 2 son diferentes para cada bloque de muestras de la señal de audio de entrada x[n]. La operación 303 produce las bandas filtradas B i f [k], B2f[k], B3[k], ..., BMf[k] de las Figuras 2 y 3.After band division 302, in step 303, each spectral band B i [k], B 2 [k], B 3 [k], ..., B M [k] is filtered through a filter band specific (Filters 1, 2, 3, ..., M in Figure 2). Filters 1, 2, 3, ..., M can be different for each spectral band, or the same filter can be used for all spectral bands. In one embodiment, Filters 1, 2, 3, ..., M in Figure 2 are different for each block of samples of the input audio signal x [n]. Step 303 produces the filtered bands B if [k], B 2f [k], B 3 [k], ..., B Mf [k] of Figures 2 and 3.

Operación 304 (Figura 3) - Cuantificación, codificación, transmisión o almacenamiento, decodificación, cuantificación inversaOperation 304 (Figure 3) - Quantize, encode, transmit or store, decode, inverse quantize

En la operación 304, las bandas filtradas B i f[k], B2f[k], B3f[k], ..., BMf[k] de los Filtros 1, 2, 3, ..., M pueden cuantificarse, codificarse, transmitirse a un receptor (no mostrado) y/o almacenarse en cualquier dispositivo de almacenamiento (no mostrado). La cuantificación, codificación, transmisión a un receptor y/o almacenamiento en un dispositivo de almacenamiento se realizan y/o controlan mediante un procesador Q de la Figura 2. El procesador Q puede conectarse además a y controlar un transceptor (no mostrado) para transmitir las bandas cuantificadas, codificadas y filtradas B i f [k], B2f[k], B3f[k], ..., BMf[k] al receptor. De la misma manera, el procesador Q puede conectarse a y controlar el dispositivo de almacenamiento para almacenar las bandas cuantificadas, codificadas y filtradas B i f[k], B2f[k], B3f[k], ..., BMf[k]. In step 304, the filtered bands B if [k], B 2f [k], B 3f [k], ..., B Mf [k] of Filters 1, 2, 3, ..., M can quantized, encoded, transmitted to a receiver (not shown) and / or stored on any storage device (not shown). Quantization, encoding, transmission to a receiver and / or storage in a storage device are performed and / or controlled by a processor Q of Figure 2. The processor Q can further connect to and control a transceiver (not shown) to transmit the quantized, encoded and filtered bands B if [k], B 2f [k], B 3f [k], ..., B Mf [k] to the receptor. In the same way, the processor Q can connect to and control the storage device to store the quantized, encoded and filtered bands B if [k], B 2f [k], B 3f [k], ..., B Mf [ k].

En la operación 304, las bandas cuantificadas, codificadas y filtradas B i f [k], B2f[k], B3[k ], ..., BMf[k ]también pueden recibirse por el transceptor o recuperarse desde el dispositivo de almacenamiento, decodificarse y cuantificarse inversamente por el procesador Q. Estas operaciones de recepción (a través del transceptor) o recuperación (desde el dispositivo de almacenamiento), decodificación y cuantificación inversa producen las bandas espectrales cuantificadas C i f [k], C2f[k], C3f[k], ..., CMf[k] en la salida del procesador Q.In step 304, the quantized, coded and filtered bands B if [k], B 2f [k], B 3 [k], ..., B Mf [k] can also be received by the transceiver or recovered from the device. storage, decoding and inverse quantization by processor Q. These receive (through the transceiver) or retrieve (from the storage device), decode and inverse quantize operations produce the quantized spectral bands C if [k], C 2f [ k], C 3f [k], ..., C Mf [k] at the output of processor Q.

Cualquier tipo de cuantificación, codificación, transmisión (y/o almacenamiento), recepción, decodificación y cuantificación inversa pueden usarse en la operación 304 sin pérdida de generalidad.Any type of quantization, encoding, transmission (and / or storage), reception, decoding, and inverse quantization can be used in step 304 without loss of generality.

Operación 305 (Figura 3) - Filtrado inverso 1, 2, 3, ..., M Operation 305 (Figure 3) - Reverse Filtering 1, 2, 3, ..., M

En la operación 305, las bandas espectrales cuantificadas C i f [k], C2f[k], C3f[k], ..., CMf[k] se procesan a través de filtros inversos, más específicamente el Filtro inverso 1, el Filtro inverso 2, el Filtro inverso 3, ..., el Filtro inverso M de la Figura 2, para producir las bandas espectrales decodificadas C i [k], C2[k], C3[k ],..., Cm[k]. El Filtro inverso 1, el Filtro inverso 2, el Filtro inverso 3, ..., el Filtro inverso M tienen funciones de transferencia inversas de las funciones de transferencia del Filtro 1, el Filtro 2, el Filtro 3, ..., el Filtro M, respectivamente.In step 305, the quantized spectral bands C if [k], C 2f [k], C 3f [k], ..., C Mf [k] are processed through inverse filters, more specifically Inverse Filter 1 , the Inverse Filter 2, the Inverse Filter 3, ..., the Inverse Filter M of Figure 2, to produce the decoded spectral bands C i [k], C 2 [k], C 3 [k], .. ., C m [k]. Reverse Filter 1, Reverse Filter 2, Reverse Filter 3, ..., Reverse Filter M have inverse transfer functions of the transfer functions of Filter 1, Filter 2, Filter 3, ..., the Filter M, respectively.

Operación 306 (Figura 3) - Concatenación de banda espectralOperation 306 (Figure 3) - Spectral band concatenation

En la operación 306, las bandas espectrales decodificadas C i [k], C2[k], C3[k], ..., CM[k] se concatenan después en un concatenador de banda 203 de la Figura 2, para producir los coeficientes espectrales decodificados Y[k] (espectro decodificado).In step 306, the decoded spectral bands C i [k], C 2 [k], C 3 [k], ..., C M [k] are then concatenated in a band concatenator 203 of Figure 2, to produce the decoded spectral coefficients Y [k] (decoded spectrum).

Operación 307 (Figura 3) - Transformación inversaOperation 307 (Figure 3) - Inverse transformation

Finalmente, en la operación 307, un procesador de transformación inversa 204 (Figura 2) aplica una transformación inversa a los coeficientes espectrales decodificados Y[k] para producir un bloque decodificado de las muestras de salida en el dominio del tiempo y[n]. En el caso del ejemplo no limitativo anterior que usa la MDCT, el procesador de transformación inversa 204 aplica la MDCT inversa (IMDCT) a los coeficientes espectrales decodificados Y[k]. Finally, at step 307, an inverse transform processor 204 (Figure 2) applies an inverse transform to the decoded spectral coefficients Y [k] to produce a decoded block of the time domain output samples y [n]. In the case of the above non-limiting example using the MDCT, the inverse transform processor 204 applies the inverse MDCT (IMDCT) to the decoded spectral coefficients Y [k].

Operación 308 (Figura 3) - Cálculo de las ganancias de ruido g i [m] y g2[m] Operation 308 (Figure 3) - Calculation of noise gains g i [m] and g2 [m]

En la Figura 2, el Filtro 1, el Filtro 2, el Filtro 3, ..., el Filtro M y el Filtro inverso 1, el Filtro inverso 2, el Filtro inverso 3, ..., los parámetros del Filtro inverso M (ganancias de ruido) g i [m ]y g2[m] como entrada. Estas ganancias de ruido representan las formas espectrales del ruido de cuantificación y se describirán adicionalmente en la presente descripción más abajo. Además, los Filtrados 1, 2, 3, ..., M de la Figura 3 pueden ser secuenciales; el Filtro 1 puede aplicarse antes que el Filtro 2, luego el Filtro 3, y así sucesivamente hasta el Filtro M (Figura 2). Los Filtrados inversos 1, 2, 3, ..., M también pueden ser secuenciales; el Filtro inverso 1 puede aplicarse antes que el Filtro inverso 2, luego el Filtro inverso 3, y así sucesivamente hasta el Filtro inverso M (Figura 2). Como tal, cada filtro y filtro inverso pueden usar como estado inicial el estado final del filtro o filtro inverso anterior. Esta operación secuencial puede garantizar la continuidad en el proceso de filtrado de una banda espectral a la siguiente. En una modalidad, esta restricción de continuidad en los estados de filtro de una banda espectral a la siguiente puede no aplicarse.In Figure 2, Filter 1, Filter 2, Filter 3, ..., Filter M and Reverse Filter 1, Reverse Filter 2, Reverse Filter 3, ..., Reverse Filter M parameters (noise gains) g i [m] and g 2 [m] as input. These noise gains represent the spectral shapes of the quantization noise and will be described further in the present description below. Furthermore, Filters 1, 2, 3, ..., M of Figure 3 can be sequential; Filter 1 can be applied before Filter 2, then Filter 3, and so on up to Filter M (Figure 2). Inverse Filters 1, 2, 3, ..., M can also be sequential; Reverse Filter 1 can be applied before Reverse Filter 2, then Reverse Filter 3, and so on up to Reverse Filter M (Figure 2). As such, each filter and reverse filter can use as the initial state the final state of the previous filter or reverse filter. This sequential operation can guarantee continuity in the filtering process from one spectral band to the next. In one embodiment, this continuity restriction on filter states from one spectral band to the next may not apply.

La Figura 4 ilustra cómo puede usarse la conformación del ruido en el dominio de la frecuencia para interpolar la forma espectral y la envolvente en el dominio del tiempo del ruido de cuantificación al procesar una señal de audio segmentada por ventanas superpuestas (ventana 0, ventana 1, ventana 2 y ventana 3) en bloques de transformación adyacentes superpuestos (bloques de muestras de la señal de audio de entrada). Cada ventana de la Figura 4, es decir, la ventana 0, la ventana 1, la ventana 2 y la ventana 3, muestra el intervalo de tiempo de un bloque de transformación y la forma de la ventana aplicada por el procesador de transformación 201 de la Figura 2 a ese bloque de muestras de la señal de audio de entrada. Como se describió anteriormente, el procesador de transformación 201 de la Figura 2 implementa tanto la visualización en ventanas de la señal de audio de entrada x[n] como la aplicación de la transformación para producir los coeficientes de transformación X[k]. La forma de las ventanas (ventana 0, ventana 1, ventana 2 y ventana 3) mostradas en la Figura 4 puede cambiarse sin pérdida de generalidad.Figure 4 illustrates how frequency domain noise shaping can be used to interpolate the spectral shape and time domain envelope of quantization noise when processing an audio signal segmented by overlapping windows (window 0, window 1 , window 2 and window 3) into overlapping adjacent transform blocks (sample blocks of the input audio signal). Each window in Figure 4, that is, window 0, window 1, window 2 and window 3, shows the time interval of a transformation block and the shape of the window applied by the transformation processor 201 of Figure 2 to that sample block of the input audio signal. As described above, the transform processor 201 of Figure 2 implements both the windowing of the input audio signal x [n] and the application of the transform to produce the transformation coefficients X [k]. The shape of the windows (window 0, window 1, window 2 and window 3) shown in Figure 4 can be changed without loss of generality.

En la Figura 4, se considera el procesamiento de un bloque de muestras de la señal de audio de entrada x[n] desde el principio hasta el final de la ventana 1. El bloque de muestras de la señal de audio de entrada x[n] se suministra al procesador de transformación 201 de la Figura 2. En la operación de cálculo 308 (Figura 3), la calculadora 205 (Figura 2) calcula dos conjuntos de ganancias de ruido g i [m] y g2[m] usados para las operaciones de filtrado (Filtros 1 al M y Filtros inversos 1 al M). Estos dos conjuntos de ganancias de ruido en realidad representan los niveles deseados de ruido en las M bandas espectrales en una posición dada en el tiempo. Por lo tanto, las ganancias de ruido g i [m] y g2[m] cada una representa la forma espectral del ruido de cuantificación en tal posición en el eje del tiempo. En la Figura 4, las ganancias de ruido g i [m] corresponden a algún análisis centrado en el punto A en el eje de tiempo, y las ganancias de ruido g2[m] corresponden a otro análisis más arriba en el eje del tiempo, en la posición B. Para un funcionamiento óptimo, los análisis de estas ganancias de ruido se centran en el punto medio de la superposición entre las ventanas adyacentes y los bloques de muestras correspondientes. En consecuencia, con referencia a la Figura 4, el análisis para obtener las ganancias de ruido g i [m] para la ventana 1 se centra en el punto medio de la superposición (o transición) entre la ventana 0 y la ventana 1 (vea el punto A en el eje de tiempo). Además, el análisis para obtener las ganancias de ruido g2[m] para la ventana 1 se centra en el punto medio de la superposición (o transición) entre la ventana 1 y la ventana 2 (vea el punto B en el eje de tiempo).In Figure 4, we consider the processing of a block of samples of the input audio signal x [n] from the beginning to the end of window 1. The block of samples of the input audio signal x [n ] is supplied to the transform processor 201 of Figure 2. In calculation operation 308 (Figure 3), the calculator 205 (Figure 2) calculates two sets of noise gains g i [m] and g 2 [m] used for filtering operations (Filters 1 to M and Inverse Filters 1 to M). These two sets of noise gains actually represent the desired levels of noise in the M spectral bands at a given position in time. Therefore, the noise gains g i [m] and g 2 [m] each represent the spectral shape of the quantization noise at that position on the time axis. In Figure 4, the noise gains g i [m] correspond to some analysis centered at point A on the time axis, and the noise gains g 2 [m] correspond to another analysis further up the time axis. , at position B. For optimal performance, the analyzes of these noise gains are focused on the midpoint of the overlap between adjacent windows and corresponding sample blocks. Consequently, with reference to Figure 4, the analysis to obtain the noise gains g i [m] for window 1 is centered on the midpoint of the overlap (or transition) between window 0 and window 1 (see point A on the time axis). Additionally, the analysis to obtain the noise gains g 2 [m] for window 1 is centered on the midpoint of the overlap (or transition) between window 1 and window 2 (see point B on the time axis ).

La calculadora 205 (Figura 2) puede usar una pluralidad de diferentes procedimientos de análisis para obtener los conjuntos de ganancias de ruido g i [m] y g2[m], siempre que tal procedimiento de análisis conduzca a un conjunto de ganancias de ruido adecuadas en el dominio de la frecuencia para cada una de las M bandas espectrales B i [k], B2[k], B3[k], ..., BM[k] de las Figuras 2 y 3. Por ejemplo, puede aplicarse una Codificación predictiva lineal (LPC) a la señal de audio de entrada x[n] para obtener un predictor a corto plazo del cual se deriva un filtro de ponderación W(z). El filtro de ponderación W(z) luego se mapea en el dominio de la frecuencia para obtener las ganancias de ruido g i [m] y g2[m]. Este sería un procedimiento de análisis típico que se puede usar cuando el bloque de muestras de la señal de entrada x[n] en la ventana 1 de la Figura 4 está codificado en el modo TCX. Otro enfoque para obtener las ganancias de ruido g i [m] y g2[m] de las Figuras 2 y 3 podría ser como en AAC, donde el nivel de ruido en cada banda de frecuencia se controla por factores de escala (derivados de un modelo psicoacústico) en el dominio MDCT.The calculator 205 (Figure 2) can use a plurality of different analysis procedures to obtain the sets of noise gains g i [m] and g 2 [m], as long as such analysis procedure leads to a set of noise gains suitable in the frequency domain for each of the M spectral bands B i [k], B 2 [k], B 3 [k], ..., B M [k] of Figures 2 and 3. By For example, Linear Predictive Coding (LPC) can be applied to the input audio signal x [n] to obtain a short-term predictor from which a weighting filter W ( z) is derived . The weighting filter W ( z) is then mapped in the frequency domain to obtain the noise gains g i [m] and g 2 [m]. This would be a typical analysis procedure that can be used when the input signal sample block x [n] in window 1 of Figure 4 is encoded in TCX mode. Another approach to obtain the noise gains g i [m] and g 2 [m] from Figures 2 and 3 could be as in AAC, where the noise level in each frequency band is controlled by scale factors (derived from a psychoacoustic model) in the MDCT domain.

Al haber procesado a través del procesador de transformación 201 de la Figura 2, el bloque de muestras de la señal de entrada x[n] que abarca la longitud de la ventana 1 de la Figura 4, y al haber obtenido los conjuntos de ganancias de ruido g i [m] y g2[m] en las posiciones A y B en el eje de tiempo de la Figura 4 mediante el uso de la calculadora 205, se realizan las operaciones de filtrado para cada banda espectral B i [k], B2[k], B3[k], ..., BM[k] de la Figura 2. El objetivo de las operaciones de filtrado (y filtrado inverso) es lograr una forma espectral deseada del ruido de cuantificación en las posiciones A y B en el eje del tiempo, y también asegurar una transición o interpolación suave de esta forma espectral o la envolvente de esta forma espectral del punto A al punto B, en una base de muestra por muestra. Esto se muestra en la Figura 5, en la cual una ilustración de las ganancias de ruido g i [m] se muestra en el punto A y una ilustración de las ganancias de ruido g2[m] se muestra en el punto B. Si cada una de las bandas espectrales B i [k], B2[k], B3[k], ..., BM[k] simplemente se multiplicó por una función de las ganancias de ruido g i [m] y g2[m], por ejemplo, al tomar una suma ponderada de g i [m] y g2[m] y multiplicar por este resultado los coeficientes en la banda espectral Bm[k], m que toma uno de los valores 1, 2, 3, ..., M, entonces las curvas de ganancia interpoladas mostradas en la Figura 5 serían constantes (horizontales) desde el punto A hasta el punto B. Para obtener curvas de ganancia de ruido que varían suavemente de la ganancia g i [m] a la ganancia g2[m] para cada banda espectral como se muestra en la Figura 5, el filtrado puede aplicarse a cada banda espectral Bm[k]. Por la propiedad de dualidad de muchas transformaciones lineales, en particular la DCT y la MDCT, una operación de filtrado (o convolución) en un dominio da como resultado una multiplicación en el otro dominio. En consecuencia, filtrar los coeficientes de transformación en una banda espectral Bm[k] da como resultado la interpolación y la aplicación de una envolvente en el dominio del tiempo (multiplicación) al ruido de cuantificación en esa banda espectral. Esta es la base de TNS, cuyo principio se presenta brevemente en la descripción anterior de la Figura 1. Having processed through the transformation processor 201 of Figure 2, the block of samples of the input signal x [n] that spans the length of window 1 of Figure 4, and having obtained the sets of gains of noise g i [m] and g 2 [m] at positions A and B on the time axis of Figure 4 by using the calculator 205, filtering operations are performed for each spectral band B i [k] , B 2 [k], B 3 [k], ..., B M [k] of Figure 2. The objective of the filtering operations (and inverse filtering) is to achieve a desired spectral shape of the quantization noise in the positions A and B on the time axis, and also ensure a smooth transition or interpolation of this spectral shape or the envelope of this spectral shape from point A to point B, on a sample-by-sample basis. This is shown in Figure 5, in which an illustration of the noise gains g i [m] is shown at point A and an illustration of the noise gains g 2 [m] is shown at point B. If each of the spectral bands B i [k], B 2 [k], B 3 [k], ..., B M [k] was simply multiplied by a function of the noise gains g i [m] and g 2 [m], for example, by taking a weighted sum of g i [m] and g 2 [m] and multiplying by this result the coefficients in the spectral band B m [k], m that takes one of the values 1, 2, 3, ..., M, then the interpolated gain curves shown in Figure 5 would be constant (horizontal) from point A to point B. To obtain noise gain curves that vary smoothly from the gain g i [m] at the gain g 2 [m] for each spectral band as shown in Figure 5, filtering can be applied to each spectral band B m [k]. Because of the duality property of many linear transformations, in particular DCT and MDCT, a filtering operation (or convolution) in one domain results in multiplication in the other domain. Consequently, filtering the transform coefficients in a spectral band B m [k] results in the interpolation and application of a time domain envelope (multiplication) to the quantization noise in that spectral band. This is the basis of TNS, the principle of which is briefly presented in the above description of Figure 1.

Sin embargo, existen diferencias fundamentales entre TNS y la interpolación propuesta en la presente descripción. Como una primera diferencia entre TNS y la técnica descrita en la presente descripción, el objetivo y el procesamiento son diferentes. En la técnica descrita en la presente descripción, el objetivo es imponer, durante la duración de una ventana dada (por ejemplo, la ventana 1 de la Figura 4), una envolvente en el dominio del tiempo para el ruido de cuantificación en una banda dada Bm[k] que varía suavemente de la ganancia de ruido g i [m] calculada en el punto A a la ganancia de ruido g2[m] calculada en el punto B. La Figura 6 muestra un ejemplo de la envolvente interpolada en el dominio del tiempo de la ganancia de ruido, para la banda espectral Bm[k]. Hay varias posibilidades para tal curva interpolada, y el filtro en el dominio de la frecuencia correspondiente para esa banda espectral Bm[k]. Por ejemplo, puede usarse una estructura de filtro recursivo de primer orden para cada banda espectral. Son posibles muchas otras estructuras de filtro, sin pérdida de generalidad.However, there are fundamental differences between TNS and the interpolation proposed in the present description. As a first difference between TNS and the technique described in the present description, the aim and the processing are different. In the technique described in the present description, the objective is to impose, during the duration of a given window (for example, window 1 of Figure 4), a time domain envelope for the quantization noise in a given band B m [k] that varies smoothly from the noise gain g i [m] calculated at point A to the noise gain g 2 [m] calculated at point B. Figure 6 shows an example of the interpolated envelope at the time domain of the noise gain, for the spectral band B m [k]. There are several possibilities for such an interpolated curve, and the corresponding frequency domain filter for that spectral band B m [k]. For example, a first order recursive filter structure can be used for each spectral band. Many other filter structures are possible, without loss of generality.

Dado que el objetivo es conformar, a través del filtrado, el ruido de cuantificación en cada banda espectral Bm[k], la primera preocupación se dirige a los Filtros inversos 1 al M de la Figura 2, que es la operación de filtrado inverso que formará el ruido de cuantificación introducido por el procesador Q (Figura 2). Since the objective is to shape, through filtering, the quantization noise in each spectral band B m [k], the first concern is directed to the Inverse Filters 1 to M of Figure 2, which is the inverse filtering operation which will form the quantization noise introduced by the Q processor (Figure 2).

Si consideramos entonces que los coeficientes de transformación cuantificados Yf[k] de la banda espectral Cmf[k] se filtran de la siguiente maneraIf we then consider that the quantized transformation coefficients Yf [k] of the spectral band Cmf [k] are filtered in the following way

Cm[k] = aC^[k]+bCm[k-l] Cm [k] = aC ^ [k] + bCm [k-l] (i)(i)

mediante el uso de los parámetros de filtro a y b. La ecuación (1) representa un filtro recursivo de primer orden, aplicado a los coeficientes de transformación de la banda espectral Cm [k]. Como se indicó anteriormente, está dentro del alcance de la presente invención usar otras estructuras de filtro.by using filter parameters a and b. Equation (1) represents a first-order recursive filter, applied to the transformation coefficients of the spectral band C m [k]. As indicated above, it is within the scope of the present invention to use other filter structures.

Para comprender el efecto, en el dominio del tiempo, del filtro de la Ecuación (1) aplicado en el dominio de la frecuencia, se hace uso de una propiedad de dualidad de las transformadas de Fourier que se aplica en particular a la MDCT. Esta propiedad de dualidad establece que una convolución (o filtrado) de una señal en un dominio es equivalente a una multiplicación (o en realidad, una modulación) de la señal en el otro dominio. Por ejemplo, si el siguiente filtro se aplica a una señal en el dominio del tiempo x[n]:To understand the effect, in the time domain, of the filter of Equation (1) applied in the frequency domain, use is made of a property of duality of the Fourier transforms that applies in particular to the MDCT. This property of duality states that a convolution (or filtering) of a signal in one domain is equivalent to a multiplication (or actually, a modulation) of the signal in the other domain. For example, if the following filter is applied to a signal in the time domain x [n ]:

y[n\ = ax[n] + by[n - 1] (2) y [n \ = ax [n] + by [n - 1] ( 2 )

donde x[n] es la entrada del filtro y y[n] es la salida del filtro, entonces esto es equivalente a multiplicar la transformación de la entrada x[n], que puede notarse X (ee), por:where x [n] is the input of the filter and y [n] is the output of the filter, then this is equivalent to multiplying the transformation of the input x [n], which can be noted X ( e e), by:

Figure imgf000007_0001
Figure imgf000007_0001

En la Ecuación (3), e es la frecuencia normalizada (en radianes por muestra) y H(ee) es la función de transferencia del filtro recursivo de la Ecuación (2). Lo que se usa es el valor de H(ee) al principio (e = 0) y al final (e = n) de la escala del dominio de la frecuencia. Es fácil demostrar que, para la Ecuación (3),In Equation (3), e is the normalized frequency (in radians per sample) and H (ee) is the transfer function of the recursive filter of Equation (2). What is used is the value of H ( ee) at the beginning (e = 0) and at the end (e = n) of the frequency domain scale. It is easy to show that, for Equation (3),

Figure imgf000007_0002
Figure imgf000007_0002

las Ecuaciones (4) y (5) representan los valores iniciales y finales de la curva descrita por la Ecuación (3). Entre esos dos puntos, la curva evolucionará suavemente entre los valores iniciales y finales. Para la Transformada discreta de Fourier (DFT), que es una transformación de valor complejo, esta curva tendrá valores complejos. Pero para otras transformaciones de valor real tales como la DCT y la MDCT, esta curva exhibirá solo valores reales.Equations (4) and (5) represent the initial and final values of the curve described by Equation (3). Between these two points, the curve will evolve smoothly between the initial and final values. For the Discrete Fourier Transform (DFT), which is a complex value transformation, this curve will have complex values. But for other real value transformations such as DCT and MDCT, this curve will display only real values.

Ahora, debido a la propiedad de dualidad de la transformada de Fourier, si el filtrado de la Ecuación (2) se aplica en el dominio de la frecuencia como en la Ecuación (1), entonces esto tendrá el efecto de multiplicar la señal en el dominio del tiempo por una envolvente suave con valores iniciales y finales como en las Ecuaciones (4) y (5). Esta envolvente en el dominio del tiempo tendrá una forma que podría parecerse a la curva de la Figura 6. Además, si el filtrado en el dominio de la frecuencia como en la Ecuación ( i) se aplica solo a una banda espectral, entonces la envolvente en el dominio del tiempo producida solo se relaciona con esa banda espectral. Los otros filtros entre el Filtro inverso 1, el Filtro inverso 2, el Filtro inverso 3, ..., el Filtro inverso M de las Figuras 2 y 3 producirán diferentes envolventes en el dominio del tiempo para las bandas espectrales correspondientes, tales como las que se muestran en la Figura 5.Now, due to the duality property of the Fourier transform, if the filtering of Equation (2) is applied in the frequency domain as in Equation (1), then this will have the effect of multiplying the signal in the time domain by a smooth envelope with initial and final values as in Equations (4) and (5). This time domain envelope will have a shape that might look like the curve in Figure 6. Also, if the frequency domain filtering as in Equation (i) is applied to only one spectral band, then the envelope in the time domain produced it is only related to that spectral band. The other filters between Inverse Filter 1, Inverse Filter 2, Inverse Filter 3, ..., Inverse Filter M of Figures 2 and 3 will produce different time domain envelopes for the corresponding spectral bands, such as the shown in Figure 5.

Se recuerda que estas envolventes en el dominio del tiempo de cada banda espectral se hacen iguales, al principio y al final de un bloque de muestras de la señal de entrada x[n] (por ejemplo, la ventana 1 de la Figura 4), a las ganancias de ruido gi[m ] y g2[m] calculadas en estos instantes de tiempo. Para la mésima banda espectral, la ganancia de ruido al comienzo del bloque de muestras de la señal de entrada x[n] (trama) es gi[m ] y la ganancia de ruido al final del bloque de muestras de la señal de entrada x[n] (trama) es g2[m]. Entre los puntos de inicio (A) y final (B), se hacen las envolventes en el dominio del tiempo (una por banda espectral), más específicamente se interpolan para variar suavemente en el tiempo, de manera que la ganancia de ruido en cada banda espectral evolucione suavemente en la señal en el dominio del tiempo. De esta manera, la forma espectral del ruido de cuantificación evoluciona suavemente en el tiempo, desde el punto A hasta el punto B. Esto se muestra en la Figura 5. La forma espectral punteada en el instante de tiempo C representa la forma espectral instantánea del ruido de cuantificación en algún instante de tiempo entre el comienzo y el final del segmento (puntos A y B).Remember that these envelopes in the time domain of each spectral band become equal, at the beginning and at the end of a block of samples of the input signal x [n] (for example, window 1 of Figure 4), to the noise gains gi [m] and g 2 [m] calculated in these instants of time. For the nth spectral band, the noise gain at the beginning of the sample block of the input signal x [n] (frame) is gi [m] and the noise gain at the end of the sample block of the input signal x [n] (raster) is g 2 [m]. Between the start (A) and end (B) points, the envelopes are made in the time domain (one per spectral band), more specifically they are interpolated to vary smoothly in time, so that the noise gain in each spectral band evolves smoothly in the signal in the time domain. In this way, the spectral shape of the quantization noise evolves smoothly in time, from point A to point B. This is shown in Figure 5. The dotted spectral shape at time C represents the instantaneous spectral shape of the quantization noise at some point in time between the beginning and the end of the segment (points A and B).

Para el caso específico del filtro en el dominio de la frecuencia de la Ecuación (1), esto implica las siguientes restricciones para determinar los parámetros a y b en la ecuación de filtro de las ganancias de ruido gi[m ] y g2[m]: For the specific case of the filter in the frequency domain of Equation (1), this implies the following restrictions to determine the parameters a and b in the filter equation of the noise gains gi [m] and g 2 [m] :

ato

&!>»] = T^b (6) &!> »] = T ^ b (6)

ato

g2W 1 b g2W 1 b (7)(7)

Para simplificar la notación, establezcamos gi = gi[m] y g2 = g2[m], y recordemos que esto es solo para la banda espectral Bm[k]. Se obtienen las siguientes relaciones:To simplify the notation, let's set gi = gi [m ] and g 2 = g 2 [m], and remember that this is only for the spectral band Bm [k]. The following relationships are obtained:

Figure imgf000008_0001
Figure imgf000008_0001

De las Ecuaciones (8) y (9), es sencillo, para cada Filtro inverso 1,2,3, ..., M, calcular los coeficientes del filtro a y b como una función de g1 y g2. Se obtienen las siguientes relaciones:From Equations (8) and (9), it is simple, for each Inverse Filter 1,2,3, ..., M, to calculate the filter coefficients a and b as a function of g 1 and g 2 . The following relationships are obtained:

Figure imgf000008_0002
Figure imgf000008_0002

Para resumir, los coeficientes a y b en las Ecuaciones (10) y (11) son los coeficientes a usar en el filtrado en el dominio de la frecuencia de la Ecuación (1) para conformar temporalmente el ruido de cuantificación en esa mésima banda espectral de manera que siga la envolvente en el dominio del tiempo que se muestra en la Figura 6. En el caso especial de la MDCT usada como la transformada en el procesador de transformación 201 de la Figura 2, los signos de las Ecuaciones (10) y (11) se invierten, es decir, los coeficientes de filtro a usar en la Ecuación (1) se convierten en:To summarize, the coefficients a and b in Equations (10) and (11) are the coefficients to use in the frequency domain filtering of Equation (1) to temporarily shape the quantization noise in that mth spectral band so that it follows the time domain envelope shown in Figure 6. In the special case of the MDCT used as the transform in the transformation processor 201 of Figure 2, the signs of Equations (10) and (11) are inverted, that is, the filter coefficients to be used in Equation (1) become:

Figure imgf000008_0003
Figure imgf000008_0003

b g i ~ 8 i b gi ~ 8 i

(13)(13)

8 1 8 28 1 8 2

Esta inversión en el dominio del tiempo de la Cancelación de solapamiento en el dominio del tiempo (TDAC) es específica para el caso especial de la MDCT.This time domain reversal of Time Domain Overlap Cancellation (TDAC) is specific to the special case of MDCT.

Ahora, el filtrado inverso de la Ecuación (1) conforma tanto el ruido de cuantificación como la señal misma. Para garantizar un proceso reversible, más específicamente para garantizar que y[n] = x[n] en las Figuras 2 y 3 si el ruido de cuantificación es cero, un filtrado a través del Filtro 1, el Filtro 2, el Filtro 3,..., el Filtro M también se aplica a cada banda espectral Bm[k] antes de la cuantificación en el procesador Q (Figura 2). El Filtro 1, el Filtro 2, el Filtro 3, ..., el Filtro M de la Figura 2 forman prefiltros (es decir, filtros previos a la cuantificación) que en realidad son el "inverso" del Filtro inverso 1, el Filtro inverso 2, el Filtro inverso 3, ..., el Filtro inverso M. En el caso específico de la Ecuación (1) que representa la función de transferencia del Filtro inverso 1, el Filtro inverso 2, el Filtro inverso 3, ..., el Filtro inverso M, los filtros antes de la cuantificación, más específicamente el Filtro 1, el Filtro 2, el Filtro 3, ..., el Filtro M de la Figura 2 se definen por:Now, the reverse filtering of Equation (1) makes up both the quantization noise and the signal itself. To guarantee a reversible process, more specifically to guarantee that y [n] = x [n] in Figures 2 and 3 if the quantization noise is zero, a filter through Filter 1, Filter 2, Filter 3, ..., Filter M is also applied to each spectral band Bm [k] before quantization in the Q processor (Figure 2). Filter 1, Filter 2, Filter 3, ..., Filter M in Figure 2 form pre-filters (ie, pre-quantization filters) that are actually the "inverse" of Inverse Filter 1, the Filter Inverse Filter 2, Inverse Filter 3, ..., Inverse Filter M. In the specific case of Equation (1) that represents the transfer function of Inverse Filter 1, Inverse Filter 2, Inverse Filter 3, .. ., Inverse Filter M, filters before quantization, more specifically Filter 1, Filter 2, Filter 3, ..., Filter M of Figure 2 are defined by:

Bmf[k] = aBm[k]-bBm[ k - 1] (14) Bmf [k] = aBm [k] -bBm [k - 1 ] (14)

En la Ecuación (14), los coeficientes a y b calculados para los Filtros 1, 2, 3, ..., M son los mismos que en las Ecuaciones (10) y (11), o las Ecuaciones (12) y (13) para el caso especial de la TCMD. La Ecuación (14) describe el inverso del filtro recursivo de la Ecuación (1). Nuevamente, si se usa otro tipo o estructura de filtro diferente al de la Ecuación (1), entonces se usa el inverso de este otro tipo o estructura de filtro en lugar de ese de la Ecuación (14).In Equation (14), the coefficients a and b calculated for Filters 1, 2, 3, ..., M are the same as in Equations (10) and (11), or Equations (12) and ( 13) for the special case of the TCMD. Equation (14) describes the inverse of the recursive filter of Equation (1). Again, if another filter type or structure other than that of Equation (1) is used, then the inverse of this other filter type or structure is used instead of that of Equation (14).

Otro aspecto es que el concepto puede generalizarse a cualquier forma de ruido de cuantificación en los puntos A y B de las ventanas de la Figura 4, y no se limita a formas de ruido que tengan siempre la misma resolución (el mismo número de bandas espectrales M y el mismo número de coeficientes espectrales X[k] por banda). En la descripción anterior, se supuso que el número M de bandas espectrales Bm[k] es el mismo en las ganancias de ruido gi[m] y g2[m], y que cada banda espectral tiene el mismo número de coeficientes de transformación X[k]. Pero en realidad, esto puede generalizarse de la siguiente manera: cuando se aplican los filtros en el dominio de la frecuencia como en las Ecuaciones (1) y (14), los coeficientes del filtro (por ejemplo, coeficientes a y b) pueden recalcularse siempre que la ganancia de ruido en un contenedor de frecuencia k cambie en cualquiera de las descripciones de forma de ruido en el punto A o el punto B. Como un ejemplo, si en el punto A de la Figura 4, la forma de ruido es constante (solo una ganancia para todo el eje de la frecuencia) y en el punto B de la Figura 5 hay tantas ganancias de ruido diferentes como el número N de coeficientes de transformación X[k] (señal de entrada x[n] después de la aplicación de una transformada en el procesador de transformación 201 de la Figura 2). Entonces, al aplicar los filtros del dominio de la frecuencia de las Ecuaciones (1) y (14), los coeficientes de los filtros volverían a calcularse en cada componente de frecuencia, aunque la descripción del ruido en el punto A no cambie sobre todos los coeficientes. Las ganancias de ruido interpoladas de la Figura 5 comenzarían todas desde la misma amplitud (ganancia de ruido constante en el punto A) y convergerían hacia las diferentes ganancias de ruido individuales en las diferentes frecuencias en el punto B.Another aspect is that the concept can be generalized to any form of quantization noise at points A and B of the windows in Figure 4, and is not limited to noise forms that always have the same resolution (the same number of spectral bands M and the same number of spectral coefficients X [k] per band). In the above description, it was assumed that the number M of spectral bands Bm [k] is the same in the noise gains gi [m] and g 2 [m], and that each spectral band has the same number of transformation coefficients X [k]. But in reality, this can be generalized as follows: when applying the filters in the frequency domain as in Equations (1) and (14), the filter coefficients (e.g. coefficients a and b) can always be recalculated that the noise gain in a container of frequency k changes in any of the noise shape descriptions at point A or point B. As An example, if at point A in Figure 4 the noise shape is constant (only one gain for the entire frequency axis) and at point B in Figure 5 there are as many different noise gains as the number N of transformation coefficients X [k] (input signal x [n] after the application of a transform in the transformation processor 201 of Figure 2). Then, when applying the frequency domain filters of Equations (1) and (14), the filter coefficients would be recalculated on each frequency component, even though the noise description at point A does not change over all the coefficients. The interpolated noise gains from Figure 5 would all start from the same amplitude (constant noise gain at point A) and converge towards the different individual noise gains at the different frequencies at point B.

Tal flexibilidad permite el uso del dispositivo de conformación de ruido en el dominio de la frecuencia 200 y el método 300 para interpolar la forma espectral y la envolvente en el dominio del tiempo del ruido de cuantificación en un sistema en el que la resolución de la forma del ruido espectral cambia con el tiempo. Por ejemplo, en un códec de velocidad de bits variable, puede haber suficientes bits en algunas tramas (punto A o punto B en las Figuras 4 y 5) para refinar la descripción de las ganancias de ruido al agregar más bandas espectrales o cambiar la resolución de la frecuencia para seguir mejor las llamadas bandas espectrales críticas, o el uso de una cuantificación en varias etapas de las ganancias de ruido, y así sucesivamente. Los filtros y los filtros inversos de las Figuras 2 y 3, descritos anteriormente como que operan por banda espectral, en realidad pueden verse como un único filtro (o un único filtro inverso) de un componente de frecuencia a la vez de manera que los coeficientes de los filtros se actualizan siempre que el punto de inicio o el punto final de la envolvente de ruido deseada cambia en una descripción del nivel de ruido.Such flexibility allows the use of the frequency domain noise shaping device 200 and method 300 to interpolate the spectral shape and time domain envelope of the quantization noise in a system in which the resolution of the shape spectral noise changes over time. For example, in a variable bit rate codec, there may be enough bits in some frames (point A or point B in Figures 4 and 5) to refine the description of noise gains by adding more spectral bands or changing the resolution. of frequency to better follow the so-called critical spectral bands, or the use of multi-stage quantization of noise gains, and so on. The filters and inverse filters of Figures 2 and 3, previously described as operating by spectral band, can actually be viewed as a single filter (or a single inverse filter) of one frequency component at a time such that the coefficients of the filters are updated whenever the start point or end point of the desired noise envelope changes in a description of the noise level.

En la Figura 7 se ilustra un codificador 700 para codificar señales de audio, cuyo principio puede usarse, por ejemplo, en el Códec unificado de voz y audio (USAC) del Grupo de expertos en imágenes en movimiento (MPEG). Más específicamente, el codificador 700 es capaz de conmutar entre un modo de codificación en el dominio de la frecuencia mediante el uso de, por ejemplo, MDCT y un modo de codificación en el dominio del tiempo mediante el uso de, por ejemplo, ACELP. En este ejemplo particular, el codificador 700 comprende: un codificador ACELP que incluye un cuantificador LPC que calcula, codifica y transmite los coeficientes LPC a partir de un análisis LPC; y un codificador basado en transformación que usa un modelo perceptual (o modelo psicoacústico) y factores de escala para conformar el ruido de cuantificación de los coeficientes espectrales. El codificador basado en transformación comprende un dispositivo como se describió anteriormente, para conformar simultáneamente en el dominio del tiempo y el dominio de la frecuencia el ruido de cuantificación del codificador basado en transformación entre dos límites de trama del codificador basado en transformación. En el que las ganancias del ruido de cuantificación pueden describirse ya sea solo por la información de los coeficientes LPC, o solo por la información de los factores de escala, o por cualquier combinación de ambos. Un selector (no mostrado) elige entre el codificador ACELP que usa el modo de codificación en el dominio del tiempo y el codificador basado en transformación que usa el modo de codificación en el dominio de transformación al codificar una ventana de tiempo de la señal de audio, en dependencia, por ejemplo, del tipo de señal de audio a codificar y/o el tipo de modo de codificación que se usará para ese tipo de señal de audio.Illustrated in Figure 7 is an encoder 700 for encoding audio signals, the principle of which can be used, for example, in the Unified Voice and Audio Codec (USAC) of the Moving Image Experts Group (MPEG). More specifically, encoder 700 is capable of switching between a frequency domain encoding mode by using, for example, MDCT, and a time domain encoding mode by using, for example, ACELP. In this particular example, encoder 700 comprises: an ACELP encoder that includes an LPC quantizer that calculates, encodes, and transmits the LPC coefficients from an LPC analysis; and a transform-based encoder that uses a perceptual model (or psychoacoustic model) and scale factors to shape the quantization noise of the spectral coefficients. The transform-based encoder comprises a device as described above, for simultaneously shaping in the time domain and the frequency domain the quantization noise of the transform-based encoder between two frame boundaries of the transform-based encoder. Wherein the quantization noise gains can be described either by the information of the LPC coefficients only, or only by the information of the scale factors, or by any combination of both. A selector (not shown) chooses between the ACELP encoder that uses the time domain encoding mode and the transform-based encoder that uses the transform domain encoding mode when encoding a time window of the audio signal , depending, for example, on the type of audio signal to be encoded and / or the type of encoding mode that will be used for that type of audio signal.

Todavía con referencia a la Figura 7, las operaciones de ventanas se aplican primero en el procesador de ventanas 701 a un bloque de muestras de una señal de audio de entrada. De esta manera, se producen versiones en ventanas de la señal de audio de entrada en las salidas del procesador de ventanas 701. Estas versiones en ventanas de la señal de audio de entrada tienen posiblemente longitudes diferentes en dependencia de los procesadores posteriores en los que se usarán como entrada en la Figura 7.Still referring to Figure 7, windowing operations are first applied in windowing processor 701 to a sample block of an input audio signal. In this manner, windowing versions of the input audio signal are produced at the outputs of the windowing processor 701. These windowing versions of the input audio signal possibly have different lengths depending on the subsequent processors in which they are being used. will be used as input in Figure 7.

Como se describió anteriormente, el codificador 700 comprende un codificador ACELP que incluye un cuantificador LPC que calcula, codifica y transmite los coeficientes LPC a partir de un análisis LPC. Más específicamente, con referencia a la Figura 7, el codificador ACELP del codificador 700 comprende un analizador LPC 704, un cuantificador LPC 706, una calculadora de objetivos ACELP 708 y un codificador de excitación 712. El analizador LPC 704 procesa una primera versión en ventana de la señal de audio de entrada del procesador 701 para producir los coeficientes LPC. Los coeficientes LPC del analizador LPC 704 se cuantifican en un cuantificador LPC 706 en cualquier dominio adecuado para la cuantificación de esta información. En una trama ACELP, la conformación de ruido se aplica como conocen bien los expertos en la técnica como un filtro en el dominio del tiempo, mediante el uso de un filtro de ponderación derivado del filtro LPC (coeficientes LPC). Esto se realiza en la calculadora de objetivos ACELP 708 y el codificador de excitación 712. Más específicamente, la calculadora 708 usa una segunda versión en ventana de la señal de audio de entrada (mediante el uso de típicamente una ventana rectangular) y produce en respuesta a los coeficientes LPC cuantificados del cuantificador 706 las llamadas señales objetivo en la codificación ACELP. A partir de las señales objetivo producidas por la calculadora 708, el codificador 712 aplica un procedimiento para codificar la excitación del filtro LPC para el bloque actual de muestras de la señal de audio de entrada.As described above, encoder 700 comprises an ACELP encoder that includes an LPC quantizer that calculates, encodes, and transmits the LPC coefficients from an LPC analysis. More specifically, with reference to Figure 7, the ACELP encoder of encoder 700 comprises an LPC 704 analyzer, an LPC 706 quantizer, an ACELP 708 target calculator, and an excitation encoder 712. The LPC 704 analyzer processes a first windowed version. of the input audio signal from processor 701 to produce the LPC coefficients. The LPC coefficients from the LPC 704 analyzer are quantized in an LPC 706 quantizer in any suitable domain for the quantification of this information. In an ACELP frame, noise shaping is applied as is well known to those of ordinary skill in the art as a time domain filter, using a weighting filter derived from the LPC filter (LPC coefficients). This is done in the ACELP 708 target calculator and 712 excitation encoder. More specifically, the 708 calculator uses a second windowed version of the input audio signal (using typically a rectangular window) and outputs in response to the quantized LPC coefficients of quantizer 706 the so-called target signals in the ACELP encoding. From the target signals produced by calculator 708, encoder 712 applies a procedure to encode the LPC filter drive for the current sample block of the input audio signal.

Como se describió anteriormente, el sistema 700 de la Figura 7 comprende además un codificador basado en transformación que usa un modelo perceptual (o modelo psicoacústico) y factores de escala para conformar el ruido de cuantificación de los coeficientes espectrales, en donde el codificador basado en transformación comprende un dispositivo para conformar simultáneamente en el dominio del tiempo y el dominio de la frecuencia el ruido de cuantificación del codificador basado en transformación. El codificador basado en transformación comprende, como se ilustra en la Figura 7, un procesador MDCT 702, un procesador FDNS inverso 707 y un cuantificador de espectro procesado 711, en donde el dispositivo para conformar simultáneamente en el dominio del tiempo y el dominio de la frecuencia el ruido de cuantificación del codificador basado en transformación comprende el procesador FDNS inverso 707. El procesador MDCT 702 procesa una tercera versión en ventana de la señal de audio de entrada del procesador de ventanas 701 para producir los coeficientes espectrales. El procesador TCMD 702 es un caso específico del procesador más general 201 de la Figura 2 y se entiende que representa la TCMD (Transformada discreta de coseno modificada). Antes de cuantificarse y codificarse (en cualquier dominio adecuado para la cuantificación y codificación de esta información) para su transmisión por el cuantificador 711, los coeficientes espectrales del procesador MDCT 702 se procesan a través del procesador FDNS inverso 707. El funcionamiento del procesador FDNS inverso 707 es como en la Figura 2, que comienza con los coeficientes espectrales X[k] (Figura 2) como entrada al procesador FDNS 707 y termina antes del procesador Q (Figura 2). El procesador FDNS inverso 707 requiere como entrada los conjuntos de ganancias de ruido gi[m] y g2[m] como se describió en la Figura 2. Las ganancias de ruido se obtienen del sumador 709, que suma dos entradas: la salida de un cuantificador de factores de escala 705 y la salida de una calculadora de ganancias de ruido 710. Son posibles cualquier combinación de factores de escala, por ejemplo, de un modelo psicoacústico, y ganancias de ruido, por ejemplo, de un modelo LPC, desde el uso de solo factores de escala hasta el uso de solo ganancias de ruido, hasta cualquier combinación o proporción de los factores de escala y las ganancias de ruido. Por ejemplo, los factores de escala del modelo psicoacústico pueden usarse como un segundo conjunto de ganancias o factores de escala para refinar o corregir las ganancias de ruido del modelo LPC. En consecuencia con otra alternativa, la combinación de las ganancias de ruido y los factores de escala comprende la suma de las ganancias de ruido y los factores de escala, donde los factores de escala se usan como una corrección de las ganancias de ruido. Para producir los factores de escala cuantificados en la salida del cuantificador 705, una cuarta versión en ventana de la señal de entrada del procesador 701 se procesa por un analizador psicoacústico 703 que produce factores de escala no cuantificados que luego se cuantifican por el cuantificador 705 en cualquier dominio adecuado para la cuantificación de esta información. De manera similar, para producir las ganancias de ruido en la salida de la calculadora 710, se suministra a una calculadora de ganancias de ruido 710 los coeficientes LPC cuantificados del cuantificador 706. En un bloque de señal de entrada donde el codificador 700 cambiaría entre una trama ACELP y una trama MDCT, el FDNS solo se aplica a las muestras codificadas con MDCT.As described above, the system 700 of Figure 7 further comprises a transform-based encoder that uses a perceptual model (or psychoacoustic model) and scale factors to shape the quantization noise of the spectral coefficients, wherein the encoder based on transformation comprises a device for simultaneously shaping in the time domain and the frequency domain the quantization noise of the transform-based encoder. The transform-based encoder comprises, as illustrated in Figure 7, an MDCT processor 702, an inverse FDNS processor 707, and a processed spectrum quantizer 711, wherein the device for simultaneously shaping in the time domain and the domain of the frequency transform-based encoder quantization noise comprises the reverse FDNS processor 707. The processor MDCT 702 processes a third windowing version of the input audio signal from windowing processor 701 to produce the spectral coefficients. The TCMD processor 702 is a specific case of the more general processor 201 of Figure 2 and is understood to represent TCMD (Modified Discrete Cosine Transform). Before being quantized and encoded (in any domain suitable for quantizing and encoding this information) for transmission by quantizer 711, the spectral coefficients from MDCT processor 702 are processed through reverse FDNS processor 707. Operation of the reverse FDNS processor 707 is as in Figure 2, which begins with the spectral coefficients X [k] (Figure 2) as input to the FDNS processor 707 and ends before the Q processor (Figure 2). The inverse FDNS processor 707 requires as input the sets of noise gains gi [m] and g 2 [m] as described in Figure 2. The noise gains are obtained from the adder 709, which adds two inputs: the output of a scale factor quantizer 705 and the output of a noise gain calculator 710. Any combination of scale factors, for example, from a psychoacoustic model, and noise gains, for example, from an LPC model are possible, from the use of only scale factors to the use of only noise gains, up to any combination or proportion of the scale factors and the noise gains. For example, the scale factors of the psychoacoustic model can be used as a second set of gains or scale factors to refine or correct the noise gains of the LPC model. Accordingly with another alternative, the combination of the noise gains and the scale factors comprises the sum of the noise gains and the scale factors, where the scale factors are used as a correction for the noise gains. To produce the quantized scale factors at the output of quantizer 705, a fourth windowed version of the input signal from processor 701 is processed by a psychoacoustic analyzer 703 which produces unquantized scale factors that are then quantized by quantizer 705 at any domain suitable for the quantification of this information. Similarly, to produce the noise gains at the output of the calculator 710, the quantized LPC coefficients of the quantizer 706 are supplied to a noise gain calculator 710. In an input signal block where the encoder 700 would switch between a ACELP frame and one MDCT frame, the FDNS only applies to the MDCT encoded samples.

El multiplexor de bits 713 recibe como entrada los coeficientes espectrales cuantificados y codificados del cuantificador de espectro procesado 711, los factores de escala cuantificados del cuantificador 705, los coeficientes LPC cuantificados del cuantificador LPC 706 y la excitación codificada del filtro LPC del codificador 712 y produce en respuesta a estos parámetros codificados una cadena de bits para la transmisión o almacenamiento.The bit multiplexer 713 receives as input the quantized and coded spectral coefficients from the processed spectrum quantizer 711, the quantized scale factors from the quantizer 705, the quantized LPC coefficients from the LPC quantizer 706, and the coded drive from the LPC filter from the encoder 712 and produces in response to these encoded parameters a string of bits for transmission or storage.

En la Figura 8 se ilustra un decodificador 800 que produce un bloque de señal de síntesis mediante el uso de FDNS, en donde el decodificador puede cambiar entre un modo de decodificación en el dominio de la frecuencia mediante el uso de, por ejemplo, IMDCT y un modo de decodificación en el dominio del tiempo mediante el uso de, por ejemplo, ACELP. Un selector (no mostrado) elige entre el decodificador ACELP que usa el modo de decodificación en el dominio del tiempo y el decodificador basado en transformación que usa el modo de codificación en el dominio de transformación cuando decodifica una ventana de tiempo de la señal de audio de codificación, en dependencia del tipo de codificación de esta señal de audio.Illustrated in Figure 8 is a decoder 800 producing a synthesis signal block using FDNS, where the decoder can switch between a frequency domain decoding mode using, for example, IMDCT and a time-domain decoding mode by using, for example, ACELP. A selector (not shown) chooses between the ACELP decoder using the time domain decoding mode and the transform-based decoder using the transform domain encoding mode when decoding a time window of the audio signal encoding, depending on the type of encoding of this audio signal.

El decodificador 800 comprende un demultiplexor 801 que recibe como entrada la cadena de bits del multiplexor de bits 713 (Figura 7). La cadena de bits recibida se demultiplexa para recuperar los coeficientes espectrales cuantificados y codificados del cuantificador de espectro procesado 711, los factores de escala cuantificados del cuantificador 705, los coeficientes LPC cuantificados del cuantificador LPC 706 y la excitación codificada del filtro LPC del codificador 712. Decoder 800 comprises a demultiplexer 801 that receives as input the bit stream from bit multiplexer 713 (Figure 7). The received bit stream is demultiplexed to recover the quantized and encoded spectral coefficients from the processed spectrum quantizer 711, the quantized scale factors from quantizer 705, the quantized LPC coefficients from the LPC quantizer 706, and the encoded drive from the LPC filter from encoder 712.

Los coeficientes LPC cuantificados recuperados (ventana codificada por transformación de la señal de audio en ventana) del demultiplexor 801 se suministran a un decodificador LPC 804 para producir los coeficientes LPC decodificados. La excitación codificada recuperada del filtro LPC del demultiplexor 301 se suministra a y decodificada por un decodificador de excitación ACELP 805. Un filtro de síntesis ACELP 806 responde a los coeficientes LPC decodificados del decodificador 804 y a la excitación decodificada del decodificador 805 para producir una señal de audio decodificada por ACELP.The recovered quantized LPC coefficients (windowing audio signal transformation encoded window) from demultiplexer 801 are supplied to an LPC decoder 804 to produce the decoded LPC coefficients. The encoded drive recovered from the LPC filter of the demultiplexer 301 is supplied to and decoded by an ACELP 805 drive decoder. An ACELP 806 synthesis filter responds to the decoded LPC coefficients of the decoder 804 and to the decoded drive of the decoder 805 to produce an audio signal. decoded by ACELP.

Los factores de escala cuantificados recuperados se suministran a y decodifican por un decodificador de factores de escala 803.The recovered quantized scale factors are supplied to and decoded by a scale factor decoder 803.

Los coeficientes espectrales cuantificados y codificados recuperados se suministran a un decodificador de coeficientes espectrales 802. El decodificador 802 produce los coeficientes espectrales decodificados que se usan como entrada por un procesador FDNS 807. El funcionamiento del procesador FDNS 807 como se describió en la Figura 2, comienza después del procesador Q y termina antes del procesador 204 (procesador de transformación inversa). El procesador FDNS 807 se suministra con los coeficientes espectrales decodificados del decodificador 802, y una salida del sumador 808 que produce conjuntos de ganancias de ruido, por ejemplo los conjuntos de ganancias de ruido descritos anteriormente gi[m] y g2[m] resultantes de la suma de los factores de escala decodificados del decodificador 803 y las ganancias de ruido calculadas por la calculadora 809. La calculadora 809 calcula las ganancias de ruido de los coeficientes LPC decodificados producidos por el decodificador 804. Como en el codificador 700 (Figura 7), son posibles cualquier combinación de factores de escala (de un modelo psicoacústico) y ganancias de ruido (de un modelo LPC), desde el uso de solo factores de escala hasta el uso de solo ganancias de ruido, hasta cualquier proporción de factores de escala y ganancias de ruido. Por ejemplo, los factores de escala del modelo psicoacústico pueden usarse como un segundo conjunto de ganancias o factores de escala para refinar o corregir las ganancias de ruido del modelo LPC. En consecuencia con otra alternativa, la combinación de las ganancias de ruido y los factores de escala comprende la suma de las ganancias de ruido y los factores de escala, donde los factores de escala se usan como una corrección de las ganancias de ruido. Los coeficientes espectrales resultantes en la salida del procesador FDNS 807 se someten a un procesador IMDCT 810 para producir una señal de audio decodificada por transformación.The recovered encoded and quantized spectral coefficients are supplied to a spectral coefficient decoder 802. Decoder 802 produces the decoded spectral coefficients that are used as input by an FDNS processor 807. The operation of the FDNS processor 807 as described in Figure 2, starts after processor Q and ends before processor 204 (reverse transform processor). The FDNS processor 807 is supplied with the decoded spectral coefficients from the decoder 802, and an output from the adder 808 that produces sets of noise gains, for example the resulting noise gain sets gi [m] and g 2 [m] resulting of the sum of the decoded scale factors of the decoder 803 and the noise gains calculated by the calculator 809. The calculator 809 calculates the noise gains of the decoded LPC coefficients produced by the decoder 804. As in the encoder 700 (Figure 7 ), any combination of scale factors (from a psychoacoustic model) and noise gains (from an LPC model) are possible, from using only scale factors to using only noise gains, to any ratio of factors of scale and noise gains. For example, the scale factors of the psychoacoustic model can be used as a second set of gains or scale factors to refine or correct the noise gains of the LPC model. Consequently with another alternative, the combination of the noise gains and the scale factors comprises the sum noise gains and scale factors, where the scale factors are used as a correction for the noise gains. The resulting spectral coefficients at the output of the FDNS 807 processor are subjected to an IMDCT 810 processor to produce a transform decoded audio signal.

Finalmente, un procesador de ventanas y superposición/adición 811 combina la señal de audio decodificada por ACELP del filtro de síntesis ACELP 806 con la señal de audio decodificada por transformación del procesador IMDCT 810 para producir una señal de audio de síntesis. Finally, a windowing and overlay / add processor 811 combines the ACELP-decoded audio signal from the ACELP 806 synthesis filter with the transform-decoded audio signal from the IMDCT 810 processor to produce a synthesis audio signal.

Claims (1)

REIVINDICACIONES Un método de conformación de ruido en el dominio de la frecuencia para interpolar una forma espectral y una envolvente en el dominio del tiempo del ruido de cuantificación en una señal de audio en ventana y codificada por transformación, caracterizado porque comprende:A frequency domain noise shaping method for interpolating a spectral shape and time domain envelope of quantization noise in a windowing and transform-encoded audio signal, characterized in that it comprises: procesar (305) las bandas espectrales cuantificadas C i [k], C2f[k], C3f[k], ..., CMf[k] de la señal de audio en ventana y codificada por transformación a través de los filtros inversos respectivos (Filtro inverso 1, Filtro inverso 2, Filtro inverso 3, ..., Filtro inverso M) para producir las bandas espectrales decodificadas Ci [k], C2[k], C3[k], ..., CM[k]; concatenar (306) las bandas espectrales decodificadas Ci [k], C2[k], C3[k], ..., CM[k] para producir los coeficientes espectrales decodificados (Y[k]); yprocess (305) the quantized spectral bands C i [k], C 2f [k], C 3f [k], ..., C Mf [k] of the windowed audio signal and encoded by transformation through the respective inverse filters (Inverse filter 1, Inverse filter 2, Inverse filter 3, ..., Inverse filter M) to produce the decoded spectral bands C i [k], C 2 [k], C 3 [k], .. ., C M [k]; concatenating (306) the decoded spectral bands C i [k], C 2 [k], C 3 [k], ..., C M [k] to produce the decoded spectral coefficients ( Y [k]); and transformación inversa (307) de los coeficientes espectrales decodificados (Y[kJ) para producir un bloque decodificado de muestras en el dominio del tiempo (y[nJ) de la señal de audio;inverse transformation (307) of the decoded spectral coefficients ( Y [kJ) to produce a decoded block of samples in the time domain ( y [nJ) of the audio signal; en donde el procesamiento (305) de las bandas espectrales cuantificadas Ci [k], C2f[k], C3[k ] , ..., CM[k ] comprende, para cada banda espectral cuantificada Ci [k], C2f[k], C3[k], ..., CM[kJ: where the processing (305) of the quantized spectral bands C i [k], C 2f [k], C 3 [k], ..., C M [k] comprises, for each quantized spectral band C i [k ], C 2f [k], C 3 [k], ..., C M [kJ: calcular (308) las ganancias de ruido g i [m] y g2[m] que representan las formas espectrales del ruido de cuantificación respectivamente en una primera transición (A) entre una ventana de procesamiento de transformación actual (ventana 1) y una ventana de procesamiento de transformación anterior (ventana 0) y en una segunda transición (B) entre la ventana de procesamiento de transformación actual (ventana 1) y una ventana de procesamiento de transformación posterior (ventana 2); ycalculate (308) the noise gains g i [m] and g 2 [m] representing the spectral shapes of the quantization noise respectively at a first transition (A) between a current transform processing window (window 1) and a previous transform processing window (window 0) and in a second transition (B) between the current transform processing window (window 1) and a post transform processing window (window 2); and filtrar los coeficientes espectrales cuantificados (Y[kJ) de la banda espectral cuantificada mediante el uso de la relación:filter the quantized spectral coefficients ( Y [kJ) from the quantized spectral band by using the relationship: Cm[k\ = aCmj[k \ + bCm[k-1] Cm [k \ = aCmj [k \ + bCm [k- 1] donde a y b son los parámetros del filtro y m identifica la banda espectral, y dondewhere a and b are the filter parameters and m identifies the spectral band, and where a = 2 ((gi[m]g2[m ] ) / ( g 1[m] g2[m])) a = 2 (( gi [m] g2 [m]) / ( g 1 [m] g2 [m])) b = ( (g iM - gilmj) / (gdm] + g2[m])). b = (( g iM-gilmj) / ( gdm] + g2 [m])). Un dispositivo de conformación de ruido en el dominio de la frecuencia para interpolar una forma espectral y una envolvente en el dominio del tiempo del ruido de cuantificación en una señal de audio en ventana y codificada por transformación, caracterizado porque comprende:A frequency domain noise shaping device for interpolating a spectral shape and time domain envelope of quantization noise into a windowing and transform-coded audio signal, characterized in that it comprises: medios para procesar las bandas espectrales cuantificadas Crfk], C2[k], C3f[k], ..., CMf[k] de la señal de audio en ventana y codificada por transformación a través de los filtros inversos respectivos (Filtro inverso 1, Filtro inverso 2, Filtro inverso 3, ..., Filtro inverso M) para producir las bandas espectrales decodificadas C1[k], C2[k], C3[k], ..., CM[kJ;means for processing the quantized spectral bands Crfk], C 2 [k], C 3f [k], ..., C Mf [k] of the windowed and transform-encoded audio signal through the respective inverse filters ( Reverse Filter 1, Reverse Filter 2, Reverse Filter 3, ..., Reverse Filter M) to produce the decoded spectral bands C 1 [k], C 2 [k], C 3 [k], ..., C M [kJ ; medios (203) para concatenar las bandas espectrales decodificadas C1[k], C2[k], C3[k], ..., CM[k] para producir los coeficientes espectrales decodificados (Y[k]); ymeans (203) for concatenating the decoded spectral bands C 1 [k], C 2 [k], C 3 [k], ..., C M [k] to produce the decoded spectral coefficients (Y [k]); and medios (204) para la transformación inversa de los coeficientes espectrales decodificados (Y[k]) para producir un bloque decodificado de muestras en el dominio del tiempo (y[n]) de la señal de audio;means (204) for inverse transformation of the decoded spectral coefficients ( Y [k]) to produce a decoded block of time domain samples ( y [n]) of the audio signal; en donde los medios para procesarlas bandas espectrales cuantificadas Crfk], C2[k], C3[k ] , ..., CM[ k ]comprenden, para cada banda espectral cuantificada C1[k], C2f[k], C3[k], ..., CM[k]: wherein the means for processing the quantized spectral bands Crfk], C 2 [k], C 3 [k], ..., C M [k] comprise, for each quantized spectral band C 1 [k], C 2f [k ], C 3 [k], ..., C M [k]: medios (205) para calcular las ganancias de ruido g 1[m] y g2[m] que representan las formas espectrales del ruido de cuantificación respectivamente en una primera transición (A) entre una ventana de procesamiento de transformación actual (ventana 1) y una ventana de procesamiento de transformación anterior (ventana 0) y en una segunda transición (B) entre la ventana de procesamiento de transformación actual (ventana 1) y una ventana de procesamiento de transformación posterior (ventana 2); ymeans (205) for calculating the noise gains g 1 [m] and g 2 [m] representing the spectral shapes of the quantization noise respectively in a first transition (A) between a current transform processing window (window 1) and a previous transformation processing window (window 0) and in a second transition (B) between the current transformation processing window (window 1) and a later transformation processing window (window 2); and medios para filtrar los coeficientes espectrales cuantificados (Y[k]) de la banda espectral cuantificada mediante el uso de la relación:means of filtering the quantized spectral coefficients ( Y [k]) from the quantized spectral band by using the relationship: C m [ k ] C m [k] - C lC fnf[k] C lC fnf [k] “I" "I" ijC yy i[k~ l]ijC yy i [k ~ l] donde a y b son los parámetros del filtro y m identifica la banda espectral, y dondewhere a and b are the filter parameters and m identifies the spectral band, and where a = 2 ((gi[m]g2[m]) / (g¡[m] + g2[m])) a = 2 (( gi [m] g2 [m]) / ( g¡ [m] + g2 [m])) b = ((g2[m] - gi[m])/ (gilm] g2[m])). b = (( g2 [m] - gi [m]) / ( gilm] g2 [m])).
ES10822970T 2009-10-15 2010-10-15 Simultaneous noise shaping in time domain and frequency domain for TDAC transformations Active ES2797525T3 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US27264409P 2009-10-15 2009-10-15
PCT/CA2010/001649 WO2011044700A1 (en) 2009-10-15 2010-10-15 Simultaneous time-domain and frequency-domain noise shaping for tdac transforms

Publications (1)

Publication Number Publication Date
ES2797525T3 true ES2797525T3 (en) 2020-12-02

Family

ID=43875767

Family Applications (3)

Application Number Title Priority Date Filing Date
ES20166952T Active ES2884133T3 (en) 2009-10-15 2010-10-15 Simultaneous noise shaping in time domain and frequency domain for TDAC transformations
ES10822970T Active ES2797525T3 (en) 2009-10-15 2010-10-15 Simultaneous noise shaping in time domain and frequency domain for TDAC transformations
ES20166953T Active ES2888804T3 (en) 2009-10-15 2010-10-15 Simultaneous noise shaping in the time domain and the frequency domain for TDAC transformations

Family Applications Before (1)

Application Number Title Priority Date Filing Date
ES20166952T Active ES2884133T3 (en) 2009-10-15 2010-10-15 Simultaneous noise shaping in time domain and frequency domain for TDAC transformations

Family Applications After (1)

Application Number Title Priority Date Filing Date
ES20166953T Active ES2888804T3 (en) 2009-10-15 2010-10-15 Simultaneous noise shaping in the time domain and the frequency domain for TDAC transformations

Country Status (6)

Country Link
US (1) US8626517B2 (en)
EP (3) EP3693964B1 (en)
ES (3) ES2884133T3 (en)
IN (1) IN2012DN00903A (en)
PL (1) PL2489041T3 (en)
WO (1) WO2011044700A1 (en)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3693964B1 (en) * 2009-10-15 2021-07-28 VoiceAge Corporation Simultaneous time-domain and frequency-domain noise shaping for tdac transforms
EP2524374B1 (en) 2010-01-13 2018-10-31 Voiceage Corporation Audio decoding with forward time-domain aliasing cancellation using linear-predictive filtering
WO2012091464A1 (en) * 2010-12-29 2012-07-05 삼성전자 주식회사 Apparatus and method for encoding/decoding for high-frequency bandwidth extension
KR101826331B1 (en) * 2010-09-15 2018-03-22 삼성전자주식회사 Apparatus and method for encoding and decoding for high frequency bandwidth extension
CN103443856B (en) * 2011-03-04 2015-09-09 瑞典爱立信有限公司 Rear quantification gain calibration in audio coding
BR112015017748B1 (en) 2013-01-29 2022-03-15 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E. V. FILLING NOISE IN PERCEPTUAL TRANSFORMED AUDIO CODING
AU2014211520B2 (en) * 2013-01-29 2017-04-06 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Low-frequency emphasis for LPC-based coding in frequency domain
DK3537437T3 (en) * 2013-03-04 2021-05-31 Voiceage Evs Llc DEVICE AND METHOD FOR REDUCING QUANTIZATION NOISE IN A TIME DOMAIN DECODER
CN105359210B (en) 2013-06-21 2019-06-14 弗朗霍夫应用科学研究促进协会 MDCT frequency spectrum is declined to the device and method of white noise using preceding realization by FDNS
JP6216553B2 (en) * 2013-06-27 2017-10-18 クラリオン株式会社 Propagation delay correction apparatus and propagation delay correction method
CN104681034A (en) * 2013-11-27 2015-06-03 杜比实验室特许公司 Audio signal processing method
US9276797B2 (en) 2014-04-16 2016-03-01 Digi International Inc. Low complexity narrowband interference suppression
EP2980795A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoding and decoding using a frequency domain processor, a time domain processor and a cross processor for initialization of the time domain processor
WO2019091576A1 (en) 2017-11-10 2019-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits
EP3483880A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Temporal noise shaping
EP3483883A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio coding and decoding with selective postfiltering
EP3483882A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Controlling bandwidth in encoders and/or decoders
EP3483886A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Selecting pitch lag
EP3483884A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Signal filtering
EP3483878A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio decoder supporting a set of different loss concealment tools
EP3483879A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Analysis/synthesis windowing function for modulated lapped transformation
US11295750B2 (en) 2018-09-27 2022-04-05 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for noise shaping using subspace projections for low-rate coding of speech and audio
EP3629327A1 (en) * 2018-09-27 2020-04-01 FRAUNHOFER-GESELLSCHAFT zur Förderung der angewandten Forschung e.V. Apparatus and method for noise shaping using subspace projections for low-rate coding of speech and audio
KR20220066749A (en) * 2020-11-16 2022-05-24 한국전자통신연구원 Method of generating a residual signal and an encoder and a decoder performing the method

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5781888A (en) * 1996-01-16 1998-07-14 Lucent Technologies Inc. Perceptual noise shaping in the time domain via LPC prediction in the frequency domain
US6363338B1 (en) * 1999-04-12 2002-03-26 Dolby Laboratories Licensing Corporation Quantization in perceptual audio coders with compensation for synthesis filter noise spreading
BRPI0113271B1 (en) * 2000-08-16 2016-01-26 Dolby Lab Licensing Corp method for modifying the operation of the coding function and / or decoding function of a perceptual coding system according to supplementary information
US7062040B2 (en) * 2002-09-20 2006-06-13 Agere Systems Inc. Suppression of echo signals and the like
US7650277B2 (en) * 2003-01-23 2010-01-19 Ittiam Systems (P) Ltd. System, method, and apparatus for fast quantization in perceptual audio coders
CA2457988A1 (en) * 2004-02-18 2005-08-18 Voiceage Corporation Methods and devices for audio compression based on acelp/tcx coding and multi-rate lattice vector quantization
CN1954364B (en) * 2004-05-17 2011-06-01 诺基亚公司 Audio encoding with different coding frame lengths
CN100592389C (en) * 2008-01-18 2010-02-24 华为技术有限公司 State updating method and apparatus of synthetic filter
US20070147518A1 (en) * 2005-02-18 2007-06-28 Bruno Bessette Methods and devices for low-frequency emphasis during audio compression based on ACELP/TCX
WO2007083933A1 (en) * 2006-01-18 2007-07-26 Lg Electronics Inc. Apparatus and method for encoding and decoding signal
US8036903B2 (en) * 2006-10-18 2011-10-11 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Analysis filterbank, synthesis filterbank, encoder, de-coder, mixer and conferencing system
US20080294446A1 (en) * 2007-05-22 2008-11-27 Linfeng Guo Layer based scalable multimedia datastream compression
US8301440B2 (en) * 2008-05-09 2012-10-30 Broadcom Corporation Bit error concealment for audio coding systems
KR101622950B1 (en) * 2009-01-28 2016-05-23 삼성전자주식회사 Method of coding/decoding audio signal and apparatus for enabling the method
EP3693964B1 (en) * 2009-10-15 2021-07-28 VoiceAge Corporation Simultaneous time-domain and frequency-domain noise shaping for tdac transforms
US9208792B2 (en) * 2010-08-17 2015-12-08 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for noise injection

Also Published As

Publication number Publication date
WO2011044700A1 (en) 2011-04-21
ES2888804T3 (en) 2022-01-07
EP3693963A1 (en) 2020-08-12
ES2884133T3 (en) 2021-12-10
EP2489041A4 (en) 2013-12-18
PL2489041T3 (en) 2020-11-02
EP3693964A1 (en) 2020-08-12
IN2012DN00903A (en) 2015-04-03
US8626517B2 (en) 2014-01-07
EP2489041B1 (en) 2020-05-20
EP2489041A1 (en) 2012-08-22
EP3693964B1 (en) 2021-07-28
EP3693963B1 (en) 2021-07-21
US20110145003A1 (en) 2011-06-16

Similar Documents

Publication Publication Date Title
ES2797525T3 (en) Simultaneous noise shaping in time domain and frequency domain for TDAC transformations
US11741973B2 (en) Audio encoder for encoding a multichannel signal and audio decoder for decoding an encoded audio signal
ES2401487T3 (en) Apparatus and procedure for encoding / decoding an audio signal using a foreign signal generation switching scheme
US7876966B2 (en) Switching between coding schemes
ES2604983T3 (en) Level adjustment in the time domain for decoding or encoding of audio signals
CN101878504B (en) Low-complexity spectral analysis/synthesis using selectable time resolution
ES2380307T3 (en) Audio coding / decoding scheme of low bit rate with common preprocessing.
ES2660392T3 (en) Encoding spectral coefficients of a spectrum of an audio signal
ES2592416T3 (en) Audio coding / decoding scheme that has a switchable bypass
US8484038B2 (en) Audio signal encoder, audio signal decoder, method for encoding or decoding an audio signal using an aliasing-cancellation
ES2911893T3 (en) Audio encoder, audio decoder, and related methods for processing stereo audio signals using variable prediction direction
ES2760573T3 (en) Audio decoder and method of providing decoded audio information using error concealment that modifies a time domain drive signal
ES2338117T3 (en) AUDIO CODING WITH DIFFERENT LENGTHS OF CODING FRAME.
ES2625952T3 (en) Method for generating concealment frames in communication system
ES2433043T3 (en) Switching the ACELP to TCX encoding mode
ES2533098T3 (en) Audio signal encoder, audio signal decoder, method to provide an encoded representation of audio content, method to provide a decoded representation of audio content and computer program for use in low delay applications
ES2145737T5 (en) DIGITAL VOICE ENCODER WITH LONG-TERM PREDICTOR IMPROVED BY SUBMISSION RESOLUTION.
CN105122357A (en) Low-frequency emphasis for CPL-based coding in frequency domain
ES2657802T3 (en) Audio decoding based on an efficient representation of autoregressive coefficients
US20110087494A1 (en) Apparatus and method of encoding audio signal by switching frequency domain transformation scheme and time domain transformation scheme
ES2950408T3 (en) Downscaling decoding of audio signals
ES2707473T3 (en) Multichannel audio coding using complex prediction and explicit estimation signaling