ES2650117T3 - Aparato y procedimiento para procesar una señal de audio empleando una combinación en un intervalo de solapamiento - Google Patents
Aparato y procedimiento para procesar una señal de audio empleando una combinación en un intervalo de solapamiento Download PDFInfo
- Publication number
- ES2650117T3 ES2650117T3 ES14755081.8T ES14755081T ES2650117T3 ES 2650117 T3 ES2650117 T3 ES 2650117T3 ES 14755081 T ES14755081 T ES 14755081T ES 2650117 T3 ES2650117 T3 ES 2650117T3
- Authority
- ES
- Spain
- Prior art keywords
- block
- aliasing
- modified
- processor
- interval
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/022—Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/147—Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/032—Quantisation or dequantisation of spectral components
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/0212—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/028—Noise substitution, i.e. substituting non-tonal spectral components by noisy source
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/038—Speech enhancement, e.g. noise reduction or echo cancellation using band spreading techniques
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Algebra (AREA)
- Discrete Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Stereophonic System (AREA)
- Quality & Reliability (AREA)
- Stereo-Broadcasting Methods (AREA)
- Complex Calculations (AREA)
- Analogue/Digital Conversion (AREA)
- Control Of Amplification And Gain Control (AREA)
- Peptides Or Proteins (AREA)
Abstract
Un aparato para procesar una señal de audio que comprende una secuencia de bloques (114) de valores espectrales, que comprende: un procesador (100) para procesar la secuencia de bloques utilizando al menos un primer valor de modificación (102) para un primer bloque para obtener una primera señal obtenida como resultado con aliasing reducido o libre de aliasing en un intervalo de solapamiento (170) y utilizando al menos un segundo valor de modificación diferente (106) de un segundo bloque de la secuencia de bloques para obtener una segunda señal obtenida como resultado con aliasing reducido o libre de aliasing (108) en el intervalo de solapamiento (107); y un combinador (110) para combinar la primera señal obtenida (104) y la segunda señal obtenida (108) como resultado en el intervalo de solapamiento (170), para obtener una señal procesada (112) para el intervalo de solapamiento (170), en el que el procesador (100) comprende: un modificador (510, 509, 508, 507) para modificar el primer bloque de la secuencia utilizando al menos un primer valor de modificación (102) para obtener un primer bloque modificado (551), para modificar el segundo bloque de la secuencia utilizando al menos un segundo valor de modificación (106) para obtener un segundo bloque modificado (552), para modificar el segundo bloque utilizando al menos un primer valor de modificación (102) para obtener un tercer bloque modificado (553) y para modificar el primer bloque utilizando al menos un segundo valor de modificación (106) para obtener un cuarto bloque modificado (554); un convertidor espectral a tiempo (501, 502, 503, 504) para convertir el primer a cuarto bloques modificados en representaciones en el tiempo de los mismos (561, 562, 563, 564) y un sumador y solapamiento (505, 506) para solapar y sumar las representaciones en el tiempo (561, 563) del primer y tercer bloques modificados (551, 553) para obtener la primera señal obtenida como resultado (104) y para el solapamiento y suma de las representaciones en el tiempo (562, 564) del segundo y cuarto bloques modificados (552, 554) para obtener la segunda señal obtenida como resultado (108).
Description
DESCRIPCIÓN
Aparato y procedimiento para procesar una señal de audio empleando una combinación en un intervalo de solapamiento 5
[0001] La presente invención se relaciona con el procesamiento de audio y, en particular, con el procesamiento de audio en el contexto del procesamiento afectado por aliasing de las señales de audio.
[0002] En la operación normal, la Transformada de Coseno Discreta Modificada (MDCT, por sus siglas en 10 inglés) tiene características que la convierten en una herramienta muy adecuada para aplicaciones de codificación de
audio. Genera una representación de señales espectrales críticamente muestreadas a partir de tramas solapadas y produce una reconstrucción perfecta. Esto significa que la señal de entrada puede ser reconstruida a partir de coeficientes espectrales de una transformada directa mediante la aplicación de transformada inversa y una operación de solapamiento y suma en las regiones de solapamiento. Sin embargo, si se aplica un procesamiento adicional a los 15 coeficientes espectrales, la MDCT presenta algunas desventajas en comparación con las representaciones sobremuestreadas como el procesamiento de solapamiento basado en DFT (Transformada Discreta de Fourier). Aun el control de ganancia relativamente sencillo dependiente del tiempo y la frecuencia como el utilizado para el control de intervalos dinámicos o la prevención de recortes puede producir efectos secundarios adversos. Por lo tanto, se aplica el procesamiento separado basado en DFT posterior a la decodificación de audio en varias aplicaciones que 20 requieren este tipo de modificación de la señal, si bien se dispondría de una representación espectral basada en MDCT en el decodificador. Una desventaja sumada a la complejidad informática es el retardo adicional introducido por ese tipo de post-procesamiento.
[0003] Una estrategia común para la reducción del aliasing en el dominio del tiempo por MDCT consiste en 25 recrear una transformada solapada modulada compleja sobremuestreada (MCLT, por sus siglas en inglés). La MCLT
surge como resultado de la combinación de la MDCT con su contraparte compleja, la Transformada de Seno Modificada Discreta (MDST, por sus siglas en inglés). La MCLT ofrece características similares, como una representación por DFT de una señal, y por lo tanto su robustez contra el aliasing en el dominio del tiempo (TDA, por sus siglas en inglés) debido a que la manipulación espectral es comparable a la representación por DFT. Sin embargo, 30 lamentablemente el cálculo del espectro de MDST del espectro de MDCT es muy complejo en términos informáticos y produce un retardo significativo de la señal. De ahí las técnicas del estado actual de la técnica para reducir tanto el retardo como la complejidad [2-3]. En estas estrategias se utiliza una transformada real a compleja (R2C) para aproximar los valores de MDST necesarios. Luego, en el dominio de la MCLT, se aplica la manipulación de los coeficientes espectrales. Posteriormente, los valores complejos se vuelven a transformar al dominio MDCT empleando 35 una transformada compleja a real (C2R).
[0004] Si bien esta estrategia ofrece buenos resultados en términos de robustez del solapamiento, tiene algunas desventajas. En primer lugar, se estiman los coeficientes de MDST y su precisión está definida por la cantidad de complejidad informática. En segundo lugar, la cadena de transformación R2C-C2R sigue produciendo retardo.
40
[1] H. S. Malvar, “A modulated complex lapped transform and its applications to audio processing”, in Proc. IEEE Int. Conf. on Acoustics, Speech, and Signal Processing (ICASSP), Phoenix, marzo de 1999.
[2] Kuech, F.; Edler, B., “Aliasing Reduction for Modified Discrete Cosine Transform Domain Filtering and its Application to Speech Enhancement”, in IEEE Workshop on Applications of Signal Processing to Audio and Acoustics, 21-24 de
45 oct. de 2007.
[3] Edler, B., “Aliasing Reduction for Gain Control with Critically Sampled Filter Banks”, in First International Conference on Communications and Electronics, ICCE '06, 10-11 de octubre de 2006.
[4] E. Larsen and R. M. Aarts. Audio Bandwidth Extension - Application to psychoacoustics, Signal Processing and Loudspeaker Design. John Wiley & Sons, Ltd, 2004.
50 [5] M. Dietz, L. Liljeryd, K. Kjorling and O. Kunz, “Spectral Band Replication, a novel approach in audio coding,” in 112th aEs Convention, Munich, mayo de 2002.
[6] P. Ekstrand, “Bandwidth Extension of Audio Signals by Spectral Band Replication”, en Proceedings of 1 st IEEE Benelux Workshop on MPCA, Leuven, noviembre de 2002. El documento WO2012/08541 (Philippe Pierrick y col.) describe un procesamiento de ecualización de tramas de audio consecutivas en el dominio de la transformada por 55 medio de la aplicación de un ajuste de filtrado en las tramas de audio afines.
Un objetivo de la presente invención es dar a conocer un concepto mejorado para el procesamiento de una señal de audio.
[0005] Este objetivo se logra por medio de un aparato para procesar una señal de audio de la reivindicación 1, un procedimiento para procesar una señal de audio de la reivindicación 14 o un programa informático de la reivindicación 15. En un aspecto de la presente invención, un aparato para procesar una señal de audio que comprende una secuencia de bloques de valores espectrales comprende un procesador para procesar la secuencia
5 de bloques de valores espectrales utilizando al menos un valor de modificación para un primer bloque para obtener una primera señal obtenida como resultado con aliasing reducido o libre de aliasing en un intervalo de solapamiento y utilizando al menos un segundo valor de modificación diferente de un segundo bloque de la secuencia de bloques de valores espectrales para obtener una segunda señal obtenida como resultado con aliasing reducido o libre de aliasing en el intervalo de solapamiento. Seguidamente, ambas señales en el intervalo de solapamiento, que en ambos casos
10 constituyen una determinada representación de una de la misma porción de señal, se combinan para obtener la señal procesada para el intervalo de solapamiento.
[0006] Preferentemente, esta combinación se basa en una atenuación cruzada de una señal obtenida como resultado con la otra señal obtenida como resultado, es decir un desvanecimiento gradual de la primera señal obtenida
15 como resultado y simultáneamente un fundido de entrada o aparición gradual de la segunda señal obtenida como resultado.
[0007] Preferentemente, el procesador comprende un modificador para modificar el primer bloque de la secuencia utilizando al menos un primer valor de modificación para obtener un primer bloque modificado, para
20 modificar el segundo bloque de la secuencia utilizando al menos un segundo valor de modificación para obtener un segundo bloque modificado, para modificar el segundo bloque utilizando al menos un primer valor de modificación para obtener un tercer bloque modificado y para modificar el primer bloque utilizando al menos un segundo valor de modificación para obtener un cuarto bloque modificado. Se incluye un convertidor espectral a tiempo que está configurado para convertir el primer a cuarto bloques modificados en representaciones en el tiempo de los mismos y
25 un sumador de solapamiento para solapar y sumar el primer y tercer bloques modificados para obtener una señal obtenida como resultado y para el solapamiento y suma de las representaciones en el tiempo del segundo y cuarto bloques modificados para obtener la segunda señal obtenida como resultado. Por ende, se llevan a cabo básicamente dos operaciones paralelas de transformación inversa, una con el primer valor de modificación de ganancia y una con el segundo valor de modificación de ganancia.
30
[0008] Cuando el valor de modificación de ganancia es sólo variante en el tiempo, es decir que es constante en todo el intervalo de frecuencias, luego sólo se utiliza un único valor de modificación de ganancia para la modificación de un bloque. Sin embargo, si el valor de modificación de ganancia varía en la frecuencia, luego se modifica cada bloque de valores espectrales con una pluralidad de valores de modificación de ganancia. Un valor de modificación
35 de ganancia se puede aplicar a cada valor espectral individual o a un grupo de valores espectrales, como por ejemplo 2, 3, 4 o 5 valores espectrales adyacentes en la frecuencia. En el caso general, sin embargo, puede existir un único valor de modificación de ganancia para todas y cada una de las líneas espectrales, se modifica un bloque de valores espectrales con un número de valores de modificación de ganancia, en el que el número es igual al número de valores espectrales contenido en el bloque de valores espectrales.
40
[0009] Por consiguiente, según este aspecto, se generan dos señales de salida con aliasing reducido o libre de aliasing correspondiente a la región de solapamiento y luego se realiza una atenuación cruzada entre esas dos señales de salida o resultado.
45 [0010] Según un aspecto adicional de la presente invención, un aparato para procesar una señal de audio
comprende un procesador para calcular una señal afectada por aliasing utilizando al menos un primer valor de modificación para un primer bloque de la secuencia y al menos un segundo valor de modificación diferente para un segundo bloque de la secuencia de bloques de valores espectrales. A continuación, se estima una señal de error de aliasing, en el que esta señal de error de aliasing está incluida en la señal de audio afectada por aliasing o sometida
50 a aliasing. Seguidamente, la señal afectada por aliasing y la señal de error de aliasing se combinan, de tal manera que la señal obtenida por la combinación sea una señal con aliasing reducido o sin aliasing.
[0011] En otras palabras, el otro aspecto radica en el cálculo de una señal afectada por aliasing y una señal de
error de aliasing y una combinación subsiguiente de ambas señales para obtener la señal con aliasing reducido o sin
55 aliasing. Preferentemente, el aliasing se cancela mediante una reconstrucción de la señal de entrada en una región de solapamiento mediante una transformación adicional de frecuencia a tiempo con ganancias iguales para ambos bloques, una multiplicación con una función de ventanas o una función relacionada, una inversión temporal, una multiplicación con una diferencia de ganancias entre los dos valores de ganancia o modificación y una resta de la salida del procesamiento con una ganancia diferente.
[0012] Preferentemente, el algoritmo de transformación empleado es una transformada de coseno discreta modificada MDCT y la operación de transformación inversa es una transformada de coseno discreta modificada inversa. Por otro lado, se pueden utilizar otras transformadas introductorias de aliasing tales como una MDST
5 (transformada de seno discreta modificada) o una transformada de coseno discreta modificada inversa (IMDST) o cualquier otra transformada de este tipo, en la cual del lado del análisis, un número de muestras en una porción de tiempo es mayor que el número de valores espectrales o, dicho de otro modo, en el cual una región de solapamiento entre dos porciones de tiempo subsiguientes da lugar a dos bloques sucesivos de valores espectrales, es decir a bloques de valores espectrales que son subsiguientes en el tiempo. En este caso, ambos bloques de valores 10 espectrales están relacionados, al menos en parte, con una y la misma región de solapamiento, es decir la región de solapamiento entre esas dos porciones de tiempo que en última instancia producen como resultado los dos bloques de valores espectrales subsiguientes en el tiempo. Esto significa que, del lado del análisis, el número de muestras en el dominio del tiempo en un bloque de muestras o en una trama es mayor que el número de valores en el dominio de la frecuencia en un bloque de representaciones en el dominio de la frecuencia y, del lado de la síntesis, el número de 15 muestras sintetizadas en el dominio del tiempo es mayor que el número de valores espectrales en un bloque utilizado para sintetizar bloques solapados de muestras en el dominio del tiempo.
[0013] Sin embargo, como etapa final del lado de la síntesis, se realiza un procesamiento de solapamiento y suma de manera que, al final, un número de muestras en el intervalo de solapamiento sea menor que el número de
20 muestras en el dominio del tiempo en una trama sintetizada y es preferentemente igual al número de valores espectrales de un bloque de valores espectrales. En este último caso, se obtiene una transformada con muestreo crítico y dichas transformadas son preferibles en el marco de la presente invención, aunque la presente invención también se puede aplicar a transformadas con muestreo no crítico, si bien estas transformadas tienen algún tipo de sobrecarga en comparación con las transformadas con muestreo crítico.
25
[0014] Los aspectos de la invención no sólo son útiles para compensar el aliasing debido a la modificación de ganancias variante en el tiempo-frecuencia, sino también para la extensión del ancho de banda (BWE, por sus siglas en inglés). En este caso práctico el espectro replicado producido por la etapa de copia del algoritmo de BWE debe ser modelado con una envolvente espectral para que coincida en todo lo posible con la envolvente espectral original [430 6]. Esta envolvente espectral depende, en general, tanto del tiempo como de la frecuencia. Si bien en la mayoría de
las técnicas de BWE del estado de la técnica el esquema de copiado es constante, es posible ejecutar un copiado variante en el tiempo que lleva a un aliasing adicional. La nueva técnica propuesta de cancelación de aliasing también puede manejar estas distorsiones de BWE.
35 [0015] A continuación se discuten las realizaciones preferidas de la presente invención en el contexto de los
dibujos adjuntos, en los cuales:
La Fig. 1a es una realización preferida de un primer aspecto;
40 La Fig. 1b es una realización preferida de un segundo aspecto;
La Fig. 1c es una representación esquemática de una secuencia de bloques de valores espectrales;
La Fig. 1d es una representación esquemática de la secuencia de las porciones de tiempo solapadas que da lugar a 45 la secuencia de bloques de la Fig. 1c;
La Fig. 2a ilustra una implementación de una transformada directa que introduce efecto aliasing;
La Fig. 2b ilustra una implementación de una transformada inversa que introduce efecto aliasing;
50
La Fig. 3a ilustra otra realización del segundo aspecto;
La Fig. 3b ilustra otra realización del segundo aspecto;
55 La Fig. 3c ilustra un diagrama esquemático de una aplicación de extensión de ancho de banda correspondiente al primer y segundo aspectos;
La Fig. 4 ilustra un componente de error de efecto aliasing correspondiente al segundo aspecto;
La Fig. 5a ilustra una realización del primer aspecto;
La Fig. 5b ilustra una realización del segundo aspecto;
5 La Fig. 6 ilustra un término de efecto aliasing generado por la reconstrucción, inversión del tiempo y enventanado o relacionado con el segundo aspecto;
La Fig. 7 ilustra factores de ganancia variantes en una trama;
10 La Fig. 8 ilustra una aplicación de factores de ganancia con anterioridad a un procesamiento por MDCT inversa y La Fig. 9 ilustra señales relacionadas con el procesamiento de la Fig. 8.
[0016] La Fig. 1a ilustra un aparato para procesar una señal de audio que comprende una secuencia de bloques 15 de valores espectrales según el primer aspecto. El aparato para procesar comprende un procesador 100 para procesar
la secuencia de bloques de valores espectrales utilizando al menos un valor de modificación 102 para un primer bloque para obtener una primera señal obtenida como resultado 104 con aliasing reducido o sin aliasing. El procesador procesa además el segundo bloque de la secuencia de bloques, que sigue en el tiempo al primer bloque o que precede en el tiempo al primer bloque y es inmediatamente adyacente al primer bloque utilizando al menos un segundo valor 20 de modificación diferente, es decir un segundo valor de modificación 106, que es diferente del primer valor de modificación para obtener una segunda señal obtenida como resultado con aliasing reducido o sin aliasing 108 en un intervalo de solapamiento. De ahí, el procesador genera dos señales en el dominio del tiempo sin aliasing o al menos con aliasing reducido correspondiente al mismo intervalo de solapamiento. Estas señales 108 son introducidas a un combinador 110 para combinar la primera y segunda señales obtenidas como resultado en el intervalo de solapamiento 25 para obtener una señal procesada 112 correspondiente al intervalo de solapamiento. Preferentemente, el procesador está configurado para generar dos señales de salida sin aliasing correspondientes a la región de solapamiento y a continuación ejecuta preferentemente una atenuación cruzada entre esas dos señales de salida sin aliasing. Una implementación para que el procesador pueda lograr esto es la inclusión de un procesamiento de transformada inversa completo, tal como un procesamiento por IMDCT de ambos bloques o valores de modificación diferentes para ambos 30 bloques. En otras palabras, el procesador genera un procesamiento de IMDCT completo para el intervalo de solapamiento del primer bloque, uno y único valor de modificación para el primer y segundo bloques. Más aun, el procesador ejecuta un procesamiento de IMDCT completo en el primer y segundo bloques, aunque ahora utilizando un segundo valor de modificación diferente. Estas dos operaciones de procesamiento de IMDCT completo dan lugar a dos señales obtenidas como resultado en el dominio del tiempo sin aliasing o al menos con aliasing en el intervalo 35 de solapamiento, que luego son combinadas por el combinador.
[0017] A continuación se discute un segundo aspecto en el contexto de la Fig. 1 b. La Fig. 1 b ilustra un aparato para procesar una señal de audio que comprende una secuencia de bloques de valores espectrales según una realización de la presente invención con respecto al segundo aspecto. El aparato comprende un procesador 150 para
40 calcular una señal afectada por aliasing 154 utilizando al menos un primer valor de modificación 102 correspondiente al primer bloque de la secuencia 114 de bloques de valores espectrales y utilizando al menos un segundo valor de modificación 106 diferente para un segundo bloque de la secuencia 114 de bloques de valores espectrales. El procesador está configurado para estimar, además de la señal afectada por aliasing 154, una señal de error de aliasing 158. Por añadidura, el aparato comprende un combinador 152 para combinar la señal afectada por aliasing y la señal 45 de error de aliasing de tal manera que una señal de audio procesada 112 obtenida por la combinación efectuada por el combinador 152 sea una señal con aliasing reducido o sin aliasing.
[0018] Específicamente, según el segundo aspecto ilustrado en la Fig. 1b, el procesamiento se ejecuta empleando los valores de modificación diferentes para los bloques que pertenecen al mismo intervalo de solapamiento
50 que se produce en la señal afectada por aliasing 154. Sin embargo, a diferencia de la técnica anterior, en que se utiliza esta señal afectada por aliasing para un posterior procesamiento y se tolera el error inducido por aliasing, esto no se realiza en la presente invención. Por el contario, el procesador 150 calcula además una señal de error de aliasing 158, luego se combina la señal de error de aliasing con la señal afectada por aliasing por lo general restando o en general por una combinación lineal ponderada de manera que la señal de audio procesada quede preferentemente libre de 55 aliasing, aunque incluso cuando no se calcula con precisión la combinación o la señal de error de aliasing específica, la combinación de todos modos da lugar a una señal de audio procesada con menos error de aliasing que la señal afectada por aliasing 154.
[0019] En muchas aplicaciones, es conveniente modificar los coeficientes espectrales mediante la aplicación
de factores de ganancia a los mismos antes de alimentarlos a la IMDCT, por lo que:
Yj(k) = g¡{k) • Xj(k)
5 siendo Xj(k) el espectro de MDCT de la j° trama, k es el índice de frecuencia, g7(k) es una función de ponderación espectral dependiente del tiempo y la frecuencia y Yj(k) es el espectro de MDCT filtrado. Esta aplicación de factores de ganancia también está expuesta en la Fig. 8.
[0020] En particular, la Fig. 8 ilustra un sistema de síntesis de MDCT típico de la técnica anterior, en el cual los 10 valores espectrales de un bloque precedente 800 que tiene un índice de tiempo j-1 es multiplicado por dicho al menos
un factor de ganancia j por un multiplicador 802. Además, el bloque actual 804 con el índice de tiempo j es multiplicado o modificado en un factor de ganancia gj correspondiente al bloque actual indicado en 805. Específicamente, el factor de ganancia 801 correspondiente al bloque precedente con el índice de tiempo j-1 indicado en 801 y el factor de ganancia gj correspondiente al bloque actual 805 son diferentes entre sí. Además, como se 15 esboza en la Fig. 8, el factor de ganancia puede ser dependiente de la frecuencia. Esto está indicado por el índice de frecuencia k. Por ende, cada valor espectral con el índice k se multiplica por el correspondiente primer o segundo factor de ganancia 801, 805 según el bloque 800 o 804 al que pertenece el factor de ganancia. En consecuencia, debido a que los factores de ganancia correspondientes a los dos bloques son variantes en el tiempo y/o variantes en la frecuencia, se produce un error de aliasing en el procesamiento cuando se aplica el procesamiento de la Fig. 8. Este 20 procesamiento consiste en una operación de IMDCt 807 correspondiente al bloque precedente 800 y otra operación de IMDCT 808 correspondiente al bloque actual 804. La operación de IMDCT consiste en una transformación de frecuencia tiempo y una operación subsiguiente de desplegado como se describe más adelante con más detalles en el contexto de la Fig. 2b. A continuación, un procesamiento de solapamiento y suma que comprende además, antes de la suma real, un enventanado es ejecutado por el bloque 809 para obtener en última instancia una señal afectada 25 por aliasing y(n) indicada en 810. Por consiguiente, la señal afectada por aliasing 810 puede ser por lo general exactamente igual a la señal afectada por aliasing ilustrada en 154 en la Fig. 154.
[0021] Si las ganancias en dos tramas subsiguientes son diferentes, los términos de aliasing ya no se cancelan entre sí, como se puede apreciar en la Fig. 9 (derecha), en la que los factores de ganancia son constantes en toda la
30 frecuencia, pero no en el tiempo. En este ejemplo, son g0(k) = 1 y g1(k) = 0.7, por lo que el componente de aliasing restante es el aliasing de la trama 0 multiplicado por un factor de 0,3.
[0022] Se debe tener en cuenta que para ese caso tan sencillo, que fuera elegido principalmente con fines ilustrativos, no sería necesario el procesamiento en el dominio de la frecuencia, ya que se podría obtener un efecto
35 similar sin problemas de aliasing mediante la aplicación de una envolvente temporal adecuada. Sin embargo, este ejemplo ayuda a explicar la idea básica del esquema de reducción de aliasing. En este caso, el resto del componente de aliasing se invierte en el tiempo y la señal de entrada enventanada se multiplica por la diferencia de los dos factores de ganancia, que es, por ejemplo, de 0,3. Por lo tanto, se puede cancelar el aliasing mediante las siguientes etapas:
40 • reconstrucción de la señal de entrada en la región de solapamiento mediante una IMDCT adicional con ganancias iguales para los dos bloques
• multiplicación con la función w(n) • w(N + n)
• inversión en el tiempo
• multiplicación por la diferencia de ganancia 0,3
45 • resta de la salida del procesamiento con una ganancia diferente
[0023] En la Fig. 6 se ilustra la salida de las tres primeras etapas.
[0024] En el primer aspecto, se calculan dos señales de salida libres de aliasing correspondientes a la región 50 de solapamiento luego se ejecuta una atenuación cruzada entre ellas. La Fig. 5a ilustra un diagrama de bloques de
una realización.
[0025] Se obtiene la primera señal p1j(n) del procesamiento de IMDCT de las dos tramas afectadas con los coeficientes espectrales Xj_1(k) y Xj(k) con series iguales de factores de ganancia gj-1(k). Los componentes de
55 aliasing en el dominio del tiempo de las dos tramas se cancelan entre sí, puesto que no hay diferencias de ganancia. La segunda señal p2,j(n) se genera correspondientemente a partir de Xj_1(k) y Xj(k), aunque ahora empleando los factores de ganancia gj(k). La variación de la forma espectral se puede obtener ahora realizando una atenuación cruzada de p1j(n) a p2j(n) dentro de la región de solapamiento:
y(jN + n) = /(n) • Pij(n) + (1 - /(n)) • p2j(n)
siendo /(n) decreciente en general, en forma monótona, de 1 a 0 en el intervalo 0 < n < N. En el caso de /(n) = 1 - 5 w2(n), se puede demostrar que ambas estrategias producen exactamente la misma salida (véase el Anexo para detalles). La libertad de elegir funciones de atenuación cruzada independientemente de la ventana de MDCT, otorga un beneficio sin embargo, en el caso de esta estrategia, como se ilustra en la Fig. 5a.
[0026] En cuanto a la variación de ganancia pura, un segundo procedimiento puede reducir los componentes
10 de aliasing generando dos señales libres de aliasing y ejecutando una atenuación cruzada. En este caso, cada una de las dos señales es obtenida utilizando el mismo parche e iguales factores de ganancia en las dos tramas correspondientes (véase la Fig. 5b). No es necesario hacer una distinción especial para el parcheo constante y fijo. El parcheo constante inferiría un mapeo igual Pj(k) = P(k) para todas las tramas.
15 [0027] El procesamiento se complica más, si el factor de ganancias no sólo varía en el tiempo, sino en la
frecuencia. En este caso, ya no es posible el reemplazo por una envolvente temporal y la generación de la señal de entrada invertida en el tiempo tampoco aporta una señal adecuada para la reducción del componente de aliasing. Esto está ilustrado en el siguiente ejemplo, en el cual las ganancias en la primera trama son constantes una vez más en toda la frecuencia (g0(k) = 1), aunque en la segunda trama g1(k) varía, como se demuestra en la Fig. 7.
20
[0028] Esto lleva a un componente de aliasing sin cancelar; que sin embargo tiene una forma diferente de la
expuesta en la Fig. 9 (derecha). Como se ve en el primer ejemplo, las diferencias de ganancia están causando componentes de aliasing sin cancelar. De ahí el procedimiento expuesto en la Fig. 3a.
25 [0029] La reducción del aliasing se ejecuta mediante las siguientes etapas ilustradas en la Fig. 3a:
• generar coeficientes espectrales adicionales mediante la ponderación (307, 308) de los coeficientes originales por las diferencias de ganancia:
30 Uj_i(k) = (gj(k) - gj-i(k)) • Xj-i(k)
!j(k) = (gj(k) - gj-i(k)) • Xj(k)
• reconstrucción (303. 304, 306) de la señal de entrada en la región de solapamiento por IMDCT adicional con Uj-i(k) y Uj(k)
35 • multiplicación (330) con la función w(n) • w(N + n)
• inversión en el tiempo (340)
• combinación, como por ejemplo adición o resta a la salida del procesamiento con una ganancia diferente
[0030] El orden del término de diferencia de ganancia (gj(k) - gj-i(k)) determina si la salida de la inversión 40 en el tiempo debe ser sumada o restada de la salida de IMDCT normal en el caso de la implementación de MDCT
específicamente ilustrada. Para otras implementaciones de MDCT, los signos pueden ser diferentes:
(gj(k) - gj-i(k)): suma la salida de la inversión en el tiempo a la salida de IMDCT normal.
(gj-i(k) - gj(k)): resta la salida de la inversión en el tiempo de la salida de IMDCT.
45
[0031] Por ende, en el caso de la realización antes descrita y en el caso ilustrado en la Fig. 3a, en el cual se ilustra (gj(k) - gj-i(k)), el combinador 341 debe ser implementado en forma de sumador para sumar ambas entradas.
50 [0032] Se debe tener en cuenta que los signos necesarios pueden ser diferentes para diferentes
implementaciones de las transformadas solapadas. Por ejemplo, hay al menos cuatro realizaciones correspondientes a la MDCT apilada de modo impar. Además, hay otras realizaciones para la MDCT apilada de modo par o una ELT (Extended Lapped Transform, Transformada Solapada Extendida) con múltiple solapamiento. En el caso de la MDCT apilada de modo impar, los signos para los términos de corrección son diferentes. Por ende, la combinación realizada 55 en el bloque 341 puede comprender una suma o una resta.
[0033] El término de corrección de aliasing correspondiente al ejemplo en cuestión está expuesto junto con la
salida de la IMDCT con aliasing en la Fig. 4.
[0034] La etapa de copiado de un algoritmo de BWE está descrita por una función de mapeo P{k). Para copiar la mitad inferior de los coeficientes espectrales en la mitad superior, se haría lo siguiente:
5
í k para 0 < k < N P(k)=\., M 2
(k - ™¡2 para N¡2 < k < N
[0035] La función de ganancia sería constante e igual a 1 en la mitad inferior:
10 9j(k) = 1 para 0 < k < N¡2
[0036] En caso de variar los factores de ganancia en la mitad superior del espectro, se produciría una vez más el aliasing sin cancelar. Sin embargo, se podría ejecutar la reducción del aliasing exactamente de la misma manera descrita en la primera estrategia anterior con la única diferencia de que también se tiene que tomar en cuenta el
15 parcheo en la generación de la señal de compensación. Esto se puede lograr empleando los coeficientes espectrales mapeados a medida que son alimentados a la IMDCT y ponderándolos de manera apropiada con diferencias de ganancia. En este caso, todas las diferencias de ganancia de la mitad inferior serían cero.
[0037] La extensión de ancho de banda más avanzada podría aplicar parcheo que varíe de trama en trama. 20 Esto se puede describir definiendo una función de mapeo individual Pj{k) por cada trama. En este caso, la reducción
del aliasing debe tomar en cuenta que se pueden copiar diferentes componentes en el mismo índice de frecuencia en las dos tramas, influyendo sobre la región de solapamiento común. Esto debe ser considerado en la generación de la reducción del componente de aliasing. Para ello, en primer lugar se debe tratar el parche como antes, con una ganancia de gj-í{k) en la trama j -1 y 0 en la trama j, y se presume que el parche de la trama j tiene una ganancia 25 de 0 en la trama j -1 y gj(k) en la trama j. Los coeficientes espectrales obtenidos para la generación de la señal de reducción del aliasing son los siguientes:
!j(k) = -gj-1(k) • Xj-Í (Pj-1(k)) + gj(k) • Xj-1(Pj(k))
Uj-1(k) = -gj-1(k) • Xj (Pj-1(k)) + gj(k) • Xj{Pj(k))
30
[0038] El diagrama de bloques correspondiente a esta configuración está expuesto en la Fig. 3b.
[0039] En la siguiente sección se discuten los dos aspectos de la Figs. 3a como así también de las Figs. 5a y 5b en forma más detallada con respecto a las similitudes.
35
[0040] La MDCT con una resolución de frecuencia de N coeficientes espectrales de una trama Xj(n) de 2N muestras a partir de la posición de la muestra jN se define por:
XÁk) =
M
N , w(n)xJ(n) C0S(N{n+N + 1){k + 2)j’0 < k < N
■n — n ' '
40
siendo w(n) una función de ventana de longitud 2N, k es el índice de frecuencia, n es el índice de muestreo en el dominio del tiempo. La trama Xj(n) de la señal temporal x(n) se define de la siguiente manera:
45
Xj(n) = x(jN + n), 0 <n <2N
[0041] Se obtiene una trama de salida intermedia yj(n),0 < n <2N de los componentes espectrales Yj(k) con
la transformada inversa:
yj{n)
í\ — ± . .
Nw(n) , Yj{k) cos [N{n +Y + 2){k +1)) ,0 <n<2N
\ k=0 ' '
[0042] Se calcula el procesamiento de MDCT inversa (IMDCT) de salida final sumando los siguientes
segmentos de solapamiento:
[0043]
y(jN + n) = yj-iiN + n) + yj(n)
Con la abreviatura Ck(x) = Cos(N-(k +l)*) y con las condiciones de enventanado
5
y
10
w(N - 1 - n) = w(N + n) w2(n) = 1 - w2(N + n)
la salida de la IMDCT en la región de solapamiento tras la aplicación de los factores de ganancia es:
N-l
yin) = , yk(n)
k = 0
15 con
ykin) = w(N + n)gj-i(k)Ck (n+3NN +1^j-iW + w(n)gj(k)Ck (n+j + l;)Xj(k)
[0044] La corrección del término de aliasing del segundo aspecto descrito con respecto a las Figs. 1b, 3a
20 después del solapamiento y suma, enventanado e inversión en el tiempo es:
r(n) = , Yk(n)
con
25
[0045]
30
[0046]
35 rkin)
$k(n)
40
rk(n) = w(n)w(N + n)
w(n) (gj-i(k') - gj(k)) -k^-n-l^Xj-i(k) + w(N + n) (gj-i(k) - gj(k)) Ck (^ -n- 2)Xj(k)
Los términos de coseno tienen las siguientes simetrías:
(5N
Ck\^--n--] = i
Ck
Al sustituir éstas se obtiene:
1\ /3N 1\
2/ = -k ( 2 +n + 2) /3N 1\ /N 1\
(Y-n-2) = -Ck{2+rl + 2)
= w(n)w(N + n) ?w(n)gj-i(k)Ck (@N + n + 22) Xj-i(k)
-w(N + n)gj-i{k)Ck (N+n+l) Xj(k) -w(n)gj(k)Ck (@N + n+2)Xj-i(k)
+w(N + n)gj(k)Ck (N + n+l) Xj(k)j = w2(n)w(N + n)gj-i{k)Ck (@N + n+l) Xj-i(k)
-w(n)w2(N + n)gj-iik)Ck (N + n+1')Xj(k) -w2(n)w(N + n)gj(k)Ck (@N + n+ ^) Xj-i(k) +w(n)w2(N + n)gJ(k)Ck (N + n+2) Xj(k)
[0047]
La resta de rk(n) de yk(n) da los términos que conforman la salida de la reducción del aliasing:
Vk(n)-rk(n) = (l - w2(n)) [w(N + n)gj_1(k)ck (@5 + n + 1)Xj_i(k)
+w(n)gj-1(k)ck (5 + n + j1) Xj(k)]
+w2(n) [w(W + n)gj(k)Ck (@25+n+ 2)Xj_i(k)
+w(n)gJ (k)Ck (5 + n + 2) Xj(k)]
5
[0048] Que corresponden a una atenuación cruzada entre señales reconstruidas con ganancias gj_1(k) y gj(k) según el primer aspecto ilustrado y descrito con referencia a las Figs. 1a, 5a y 5b.
[0049] A continuación se hace referencia a las Figs. 1c y 1d para ilustrar la relación de porciones y bloques 10 temporales ya sea en el codificador o lado del análisis o en el decodificador o lado de síntesis.
[0050] La Fig. 1d ilustra una representación esquemática de una 0° porción temporal a una tercera porción temporal y cada porción temporal de estas porciones temporales sucesivas tiene un cierto intervalo de solapamiento 170. Basándose en estas porciones temporales, los bloques de la secuencia de bloques que representan porciones
15 temporales solapadas son generados por el procesamiento que se discute en más detalle con respecto a la Fig. 2a que ilustra un lado del análisis de una operación de transformación que introduce aliasing.
[0051] En particular, la señal en el dominio del tiempo ilustrada en la Fig. 1d, cuando la Fig. 1d se aplica al lado del análisis es enventanada por un procedimiento de enventanado 201 que aplica una ventana de análisis. Por ende,
20 para obtener la 0a porción temporal, por ejemplo, el dispositivo de enventanado aplica la ventana de análisis, por ejemplo, a 2048 muestras, y específicamente de la muestra 1 a la muestra 2048. Por lo tanto, N es igual a 1024 y una ventana tiene una longitud de 2N muestras, que en el ejemplo es 2048. Seguidamente, el dispositivo de enventanado aplica otra operación de análisis, aunque no para la muestra 2049 como primera muestra del bloque, sino para la muestra 1025 como primera muestra del bloque para obtener la primera porción temporal. De esa manera se obtiene 25 el primer intervalo de solapamiento 170, que tiene una longitud de 1024 muestras con un 50 % de solapamiento. Este procedimiento se aplica además para la segunda y tercera porciones temporales, aunque siempre con un solapamiento para obtener un cierto intervalo de solapamiento 170.
[0052] Se debe hacer hincapié en que el solapamiento no tiene que ser necesariamente un solapamiento de 30 50 %, sino que el solapamiento puede ser mayor o menos y puede haber incluso un múltiple solapamiento, es decir
un solapamiento de más de dos ventanas de manera tal que una muestra de la señal de audio no contribuya a las dos ventanas y, en consecuencia, sólo a los bloques de valores espectrales, sino que entonces una muestra contribuye a aun más de dos ventanas/bloques de valores espectrales. Por otro lado, los expertos en la materia han de comprender además que existen otras formas de ventanas que se pueden aplicar mediante el dispositivo de enventanado 201 de 35 la Fig. 2a, que tienen 0 porciones y/o porciones con valores unitarios. En el caso de esas porciones con valores unitarios, parece que dichas porciones se solapan por lo general con 0 porciones de las ventanas precedentes o subsiguientes y, por lo tanto, una determinada muestra de audio situada en una porción constante de una ventana con valores unitarios contribuye sólo a un único bloque de valores espectrales.
40 [0053] Las porciones temporales enventanadas obtenidas por la Fig. 1d son enviadas a continuación a un
plegador 202 para ejecutar una operación de plegado. Esta operación de plegado puede ejecutar, por ejemplo, un plegado de manera que a la salida del plegador 202, sólo existan los bloques de valores de muestreo con N muestras por bloque. A continuación, después de la operación de plegado ejecutada por el plegador 202, se aplica un convertidor de tiempo-frecuencia que es, por ejemplo, un convertidor DCT-IV que convierte N muestras por bloque a la entrada a 45 N valores espectrales a la salida del convertidor de tiempo-frecuencia 203.
[0054] Por consiguiente, en la Fig. 1c se ilustra la secuencia de bloques de valores espectrales obtenida a la
salida del bloque 203, que muestra específicamente el primer bloque 191 al que se asocia un primer valor de modificación ilustrado en 102 en la Fig. 1a y 1b y que consta de un segundo bloque 192 al cual está asociado el 50 segundo valor de modificación, tal como 106 indicado en las Figs. 1a y 1b. Naturalmente, la secuencia tiene más bloques 193 o 194, que preceden al segundo bloque o incluso delante del primer bloque ilustrado. El primer y segundo bloques 191, 192 se obtienen, por ejemplo, transformando la primera porción temporal enventanada de la Fig. 1d para obtener el primer bloque y el segundo bloque se obtiene transformando la segunda porción temporal enventanada de la Fig. 1d mediante el convertidor de tiempo-frecuencia 203 de la Fig. 2a. Por ende, al estar ambos bloques de valores 55 espectrales adyacentes en el tiempo en la secuencia de bloques de valores espectrales, representan un intervalo de solapamiento que cubre la primera porción temporal y la segunda porción temporal.
[0055] A continuación, se discute la Fig. 2b para ilustrar un procesamiento del lado de la síntesis o del lado del decodificador del resultado del procesamiento del lado del codificador o el análisis de la Fig. 2a. La secuencia de bloques de valores espectrales emitida por el convertidor de frecuencia 203 de la Fig. 2a es introducida en un modificador 211. Según lo esbozado, cada bloque de valores espectrales tiene N valores espectrales en el caso del
5 ejemplo ilustrado en la Figs. 1c a 2b. Cada bloque tiene asociado sus valores de modificación tales como 102, 104 ilustrados en la Figs. 1a y 1b. Seguidamente, en una operación típica de IMDCT o en una transformada de síntesis para reducir la redundancia típica, se llevan a cabo operaciones ilustradas por un convertidor de frecuencia-tiempo 212, un plegador 213 para desplegar, un procedimiento de enventanado 214 para aplicar una ventana de síntesis y una operación de solapamiento y suma ilustrada por el bloque 215 para obtener la señal en el dominio del tiempo en 10 el intervalo de solapamiento. Esta tiene, en el ejemplo, 2N valores por bloque, por lo que después de cada operación de solapamiento y suma, se obtienen N nuevas muestras en el dominio del tiempo sin aliasing siempre que los valores de modificación 102, 104 no sean variables en el tiempo o la frecuencia. Sin embargo, si esos valores son variables en el tiempo y la frecuencia, luego la señal de salida del bloque 215 no queda sin aliasing, aunque este problema es abordado por el primer y el segundo aspecto de la presente invención como se discute en el contexto de las Figs. 1b 15 y 1a y como se discute en el contexto de las demás figuras de la memoria descriptiva.
[0056] A continuación se presenta una ilustración adicional de los procedimientos ejecutados por los bloques de la Fig. 2a y la Fig. 2b.
20 [0057] La ilustración se ejemplifica con referencia a la MDCT, aunque se pueden procesar otras transformadas
introductoras de aliasing de manera similar y análoga. Como transformada solapada, la MDCT es algo inusual en comparación con otras transformadas relacionadas con Fourier por el hecho de que tiene la mitad de salidas que
número de entradas (en lugar del mismo número). En particular, es una función lineal F : R2N ® RN (en el que R denota la serie de números reales). Los 2N números reales x0, . .., x2N-1 se transforman en los N números reales 25 X0, ..., XN-1 según la fórmula:
AIX —l
Xk = Z Xn C0s
n=0
* n +1 + N Y k +1
N l 2 2 A 2,
(El coeficiente de normalización delante de esta transformada, en este caso la unidad, es un número arbitrario 30 convencional y difiere entre tratamientos. Sólo hay restricción en cuanto al producto de las normalizaciones de la MDCT y la IMDCT, expuestas a continuación).
[0058] La MDCT inversa se conoce como IMDCT. Dado que hay diferentes números de entradas y salidas, a primera vista podría parecer que la MDCT no se debe invertir. Sin embargo, se obtiene una invertibilidad perfecta
35 sumando las IMDCTs solapadas de bloques solapados adyacentes en el tiempo, haciendo que se cancelen los errores y se recuperen los datos originales; esta técnica se conoce como cancelación del efecto aliasing en el dominio del tiempo (TDAC).
[0059] La IMDCT transforma N números reales X0, ..., XN-1 en 2N números reales y0, ..., y2N-1 según la 40 fórmula:
y,
1 n -i
. X
N k=
cos
k=0
*
N
r i N
n +-----1----
l 2 2 _
r
i
k +
l 2
(Como en el caso de DCT-IV, una transformada ortogonal, la inversa tiene la misma forma que la transformada directa). 45
[0060] En el caso de una MDCT enventanada con la normalización de ventanas habitual (véase más adelante), el coeficiente de normalización delante de la IMDCT debe ser multiplicado por 2 (es decir, se transforma en 2/N).
[0061] En aplicaciones típicas de compresión de señales, las propiedades de transformación mejoran 50 adicionalmente utilizando una función de ventana wn (n = 0, ..., 2N-1) que se multiplica por xn y yn en las fórmulas de
MDCT y IMDCT antes expuestas, para evitar discontinuidades en los límites n = 0 y 2N haciendo que la función pase sin obstáculos a cero en esos puntos. (Es decir, se enventanan los datos antes de la MDCT y después de la IMDCT.) En principio, x e y podrían tener diferentes funciones de ventana y la función de ventana también podría cambiar de
un bloque al siguiente (especialmente en el caso en que se combinan bloques de datos de diferentes tamaños), aunque para simplificar, se tiene en cuenta el caso común de funciones de ventana idénticas para bloques de igual tamaño.
[0062] La transformada se mantiene reversible (es decir que la TDAC da resultado), para una ventana simétrica
5 wn = w2N-1-n, siempre que w satisfaga la condición de Princen-Bradley:
w + W+N = 1
se utilizan diversas funciones de ventana. Una ventana que produce una forma conocida como transformada solapada 10 modulada está dada por
wn = sin
p
2Ñ
( 1
n + —
l 2,
y se utiliza para MP3 y MPEG-2 AAC, y 15
w
n
= sin
f
l
P 2
— sin 2
p
2Ñ
n + i
-)
para Vorbis. AC-3 utiliza una ventana derivada según Kaiser-Bessel (KBD) y MPEG-4 AAC también utilizan una ventana de KBD.
20
[0063] Nótese que las ventanas aplicadas a la MDCT son diferentes de las ventanas utilizadas para otros tipos de análisis de señal, puesto que deben satisfacer la condición de Princen-Bradley. Una de las razones para esta diferencia es que las ventanas de MDCT se aplican dos veces, tanto para la MDCT (análisis) como para la IMDCT (síntesis).
25
[0064] Como se puede apreciar al estudiar las definiciones, incluso en el caso de N la MDCT es esencialmente equivalente a una DCT-IV, en la que la entrada es desplazada por N/2 y se transforman dos bloques de N-datos a la vez. Al examinar esta equivalencia más detenidamente, se pueden deducir fácilmente importantes propiedades como TDAC.
30
[0065] Para definir la relación exacta con la DCT-IV, se debe tener en cuenta que la DCT-IV corresponde a condiciones de límites pares/impares alternados: par en su límite izquierdo (alrededor de n=-1/2), impar en su límite derecho (alrededor de n=N-1/2), y así sucesivamente (en lugar de límites periódicos como en el caso de una DFT). Esto surge de las identidades y, por consiguiente, si sus entradas
35
- cos
- p - n -1 +1 1 1 + = cos P n +11 1 +
- _ Ñ 2 ) l 2 )- _ Ñ 2 ) l 2 )-
y
- 40
- cos P 2 Ñ - n -1 +11 1 ^T + = - cos f n +11 1 ^T +
- . ñ i 2) l 2 )- L Ñ l 2 ) l 2 )-
[0066] Por consiguiente, si sus entradas son una matriz x de una longitud N, se puede imaginar la extensión
de esta matriz a (x, -xR, -x, xR, ...) y así sucesivamente, en la que xR denota x en orden inverso.
45 [0067] Considérese una MDCT con 2N entradas y N salidas, en la que se dividen las entradas en cuatro bloques
(a, b, c, d) cada uno de un tamaño N/2. Si una se desplaza a la derecha en N/2 (con respecto al término +N/2 de la definición de MDCT), luego (b, c, d) se extienden más allá del final de las N entradas de DCT-IV, por lo que se debe
“plegarlas” según las condiciones de los límites antes citadas.
[0068] Así, la MDCT de 2N entradas (a, b, c, d) es exactamente equivalente a una DCT-IV de las N entradas: (-cR-d, a-bR), en la que R denota la inversión ya mencionada.
5
[0069] Esto está ejemplificado con respecto a la función de ventana 202 en la Fig. 2a. a es la porción 204b, b es la porción 205a, c es la porción 205b y d es la porción 206a.
[0070] (De esta manera, se puede aplicar de manera sencilla cualquier algoritmo para el cómputo de la DCT- 10 IV a MDCT.)
De manera similar, la anterior fórmula de IMDCT es precisamente la 1/2 de la DCT-IV (que es su propia inversa) en la que la salida se extiende (por medio de las condiciones de los límites) a una longitud 2N y se vuelve a desplazar N/2 a la izquierda. La DCT-IV inversa daría simplemente nuevamente las entradas (-cR-d, a-bR) de lo anterior. Cuando esto se extiende mediante las condiciones de los límites y se desplaza, se obtiene:
15
IMDCT(MDCT(a, b, c, d)) = (a-bR, b-aR, c+dR, d+cR) / 2.
[0071] Por consiguiente, la mitad de las salidas de IMDCT es redundante, ya que b-aR = -(a-bR)R, y del mismo modo con respecto a los últimos dos términos. Si se agrupa la entrada en bloques más grandes A,B de un
20 tamaño N, en el que A=(a, b) y B=(c, d), se puede expresar este resultado de manera más sencilla:
IMDCT(MDCT(A, B)) = (A-AR, B+BR) / 2
[0072] Se puede entender ahora cómo funciona la TDAC. Supóngase que se calcula la MDCT del 2N bloque 25 adyacente en el tiempo, 50 % solapado (B, C). En ese caso la IMDCT dará, como antes: (B-BR, C+CR) / 2. Al sumar
esto al resultado anterior de la IMDCT en la mitad solapada, los términos inversos se cancelan y se obtiene simplemente B, recuperando los datos originales.
[0073] Ahora queda claro el origen de la expresión “cancelación del efecto aliasing en el dominio del tiempo”. 30 El uso de datos de entrada que se extienden más allá de los límites de la DCT-IV lógica hace que los datos se solapen
de la misma manera que se solapan las frecuencias más allá de la frecuencia de Nyquist con frecuencias menores, excepto que este efecto aliasing se produce en el dominio del tiempo en lugar del dominio de la frecuencia: no se puede distinguir las contribuciones de a y de bR a la MDCT de (a, b, c, d), o, del mismo modo, al resultado de la IMDCT(MDCT(a, b, c, d)) = (a-bR, b-aR, c+dR, d+cR) / 2. Las combinaciones c-dR y así sucesivamente, tienen 35 exactamente los signos correctos para que las combinaciones se cancelen al sumarse.
[0074] En el caso de N impares (que raramente se utilizan en la práctica), N/2 no es un número entero por lo que la MDCT no es simplemente una permutación por desplazamiento de una DCT-IV. En este caso, el desplazamiento adicional de media muestra significa que la MDCT/IMDCT se torna equivalente a la DCT-III/II, y el
40 análisis es análogo al anterior.
[0075] Ya se ha visto que la MDCT de 2N entradas (a, b, c, d) es equivalente a una DCT-IV de las N entradas (-cR-d, a-bR). La DCT-IV está destinada a un caso en que la función en el límite derecho es impar y, por lo tanto, los valores cercanos al límite derecho se acercan a 0. Si la señal de entrada es lisa, este es el caso: los componentes
45 más a la derecha de a y bR son consecutivos en la secuencia de entrada (a, b, c, d), y por lo tanto su diferencia es pequeña. Miremos al punto medio del intervalo: si se reescribe la expresión anterior en términos de (-cR-d, a-bR) = (-d, a)-(b,c)R, el segundo término, (b,c)R, da una transición lisa en el centro. Sin embargo, en el primer término, (-d, a), existe una discontinuidad potencial en la que el extremo derecho -d se encuentra con el extremo izquierdo de a. Esta es la razón para usar una función de ventana que reduce los componentes cerca de los límites de la secuencia 50 de entrada (a, b, c, d) hacia 0.
[0076] Anteriormente, se comprobó la propiedad de TDAC para la MDCT habitual, demostrando que la suma de las IMDCTs de los bloques adyacentes en el tiempo en su mitad solapada recupera los datos originales. La derivación de esta propiedad inversa para la MDCT circunscripta en ventanas sólo es ligeramente más complicada.
55
[0077] Presúmase series consecutivas solapadas de 2N entradas (A,B) y (B,C), correspondientes a los bloques A,B,C de un tamaño N. Recordemos de lo expuesto que cuando (A, B) y (B, C) son introducidos en una MDCT,
una IMDCT, y sumados en su mitad solapada, se obtiene (B + BR) / 2 + (B — BR) / 2 = B , los datos originales.
[0078] Supóngase ahora que se multiplican las entradas de MDCT y las salidas de IMDCT mediante una función de ventana de longitud 2N. Como en el caso anterior, se presume una función de ventana simétrica, que por
lo tanto tiene la forma (W, WR) en la que W es un vector de longitud N y R denota la inversión como antes. Luego la
5 condición de Princen-Bradley se puede expresar como W2 + WR = (l, 1,...), efectuándose los cuadrados y sumas elemento por elemento.
[0079] Por lo tanto, en lugar de ejecutar una MDCT (A,B), se ejecuta ahora las MDCTs (WA,WrB) realizando todas las multiplicaciones elemento por elemento. Cuando se ingresa esto en una IMDCT y se vuelve a multiplicar
10 (elemento por elemento) por la función de ventana, la última mitad N se convierte en:
Wr ( WrB+(WrB)r)= Wr (WRB+ WBr)=Wr2B+ WWrBr
(Nótese que ya no se realiza la multiplicación por 1/2, puesto que la normalización de IMDCT difiere en un factor de 2 15 en el caso enventanado).
[0080] De manera similar, la MDCT y IMDCT enventanadas de (B,C) da, en su primera mitad N:
20 W •(WB - WrBr ) = W2 B - WWrBr
[0081] Cuando se suman estas dos mitades entre sí, se recuperan los datos originales. También es posible la reconstrucción en el contexto de la conmutación de ventanas, cuando las dos mitades solapadas de la ventana cumplen la condición de Princen-Bradley. En este caso la reducción del efecto aliasing podría hacerse exactamente
25 de la misma manera antes descrita. En el caso de transformadas con múltiples solapamientos, serían necesarias más de dos ramas utilizando todos los valores de ganancia implicados.
[0082] A continuación se discute con más detalles el primer aspecto con referencia a las Figs. 5a y 5b. Específicamente, el procesador 100 ilustrado en la Fig. 1a puede incluir la totalidad o sólo una parte de los elementos
30 501 a 506 ilustrados en las Figs. 5a en el recuadro definido por el número de referencia 100. Preferentemente, el procesador 100 comprende un modificador para modificar el primer bloque de la secuencia ilustrado como Xj-1 utilizando al menos un primer valor de modificación 102 para obtener un primer bloque modificado 551. Esta modificación es ejecutada preferentemente por un multiplicador de ganancia 510, que puede ser implementado en forma digital o analógica o de cualquier otra manera adecuada. Además, el modificador está configurado para modificar 35 el segundo bloque indicado con Xj(k) utilizando al menos un segundo valor de modificación 106 para obtener un segundo bloque modificado 552. Una vez más, esta modificación es ejecutada preferentemente por un multiplicador 509 que puede ser implementado de manera igual al multiplicador 510 o de otra manera. Además, el modificador está configurado para modificar el segundo bloque Xj(k) utilizando al menos un primer valor de modificación 102 para obtener un tercer bloque modificado 553, en la que esta modificación, una vez más, puede ser ejecutada por un 40 multiplicador 508 que puede ser implementado de manera igual o diferente con respecto a los multiplicadores 510 o 509.
[0083] Además, el modificador está configurado para modificar el primer bloque xj-1 utilizando al menos un segundo valor de modificación 106, es decir Xj(k) para obtener un cuarto bloque modificado 554. Preferentemente, el
45 cuarto bloque modificado 554 es generado nuevamente por un multiplicador 507 que puede ser implementado de manera igual o diferente con respecto a los multiplicadores 510, 509, 508.
[0084] Además, el procesador 100 comprende preferentemente un convertidor espectral-tiempo para convertir el primer a cuarto bloques modificados 551 a 554 a representaciones correspondientes en el tiempo 561, 562, 563,
50 564. En particular, el convertidor espectral-tiempo es implementado de manera que comprenda los bloques de IMDCT 501, 502, 503, 504 que generan los correspondientes primer a cuarto bloques modificados 561 a 564. El convertidor espectral-tiempo puede ser implementado en forma de algoritmo de IMDCT que comprende elementos reales 212 (convertidor frecuencia-tiempo), 213 (plegador para un desplegado) y 214 (una técnica de enventanado de síntesis) de la Fig. 2b. Sin embargo, el convertidor espectral-tiempo puede ser implementado en forma de cualquier 55 transformador que reduzca el efecto aliasing que da lugar, a la salida, a un bloque de valores de muestreo en el dominio del tiempo con un número más elevado de muestras en comparación con el número de muestras a la entrada del mismo. Por otro lado, para una implementación eficiente desde el punto de vista informático, no se podría calcular
toda la IMDCT completa o la totalidad de la transformada inversa reductora del efecto aliasing, sino sólo la sección temporal que contiene la señal con aliasing reducido o cancelación de aliasing. En este sentido, p. ej., en el caso de la IMDCT se podría omitir una operación de desplegado y la mitad de la operación de enventanado de síntesis. Por ende, el procesador puede estar configurado para ejecutar transformadas solapadas con un intervalo de solapamiento, 5 y en el que el procesador está configurado para ejecutar sólo operaciones que afecten los valores en el intervalo de solapamiento y no para ejecutar operaciones que no influyan sobre los valores en el intervalo de solapamiento. Con respecto a la Fig. 2b, las operaciones que no afectan el intervalo de solapamiento son operaciones de desplegado del bloque 213 que influyen sobre la primera mitad del bloque precedente y la segunda mitad del bloque actual. Además, tampoco son necesarias operaciones de enventanado para la primera mitad del bloque precedente y la segunda mitad 10 del bloque actual para esta implementación eficiente. Esto se debe a que sólo la segunda mitad del bloque precedente y la primera mitad del bloque actual corresponden al intervalo de solapamiento.
[0085] En la realización de la Fig. 5a, el número de muestras ingresado al bloque de IMDCT es igual a N y el número de muestras emitido por el bloque de IMDCT es 2N. Sin embargo, se pueden implementar otras relaciones
15 numéricas correspondientes a otros factores de solapamiento, siempre que el número de muestras emitido por el convertidor espectral-tiempo sea mayor que el número de muestras en el dominio espectral introducidas en el correspondiente convertidor espectral-tiempo.
[0086] Además, el convertidor espectral-tiempo puede ser implementado de manera que contenga 20 convertidores de espectral a tiempo individuales para la conversión de cada señal individual o puede comprender un
único convertidor de espectral a tiempo tal como cualquier bloque 501 de la Fig. 5a y un correspondiente controlador de secuencia para transformar sucesivamente un bloque modificado tras otro.
[0087] Además, el procesador 100 comprende un sumador de solapamiento para sumar con solapamiento las 25 representaciones del primer 561 y tercer 563 bloques modificados para obtener la primera señal obtenida como
resultado 104 que no tiene efecto aliasing o al menos tiene aliasing reducido.
[0088] Además, el sumador de solapamiento está configurado para sumar con solapamiento las representaciones en el tiempo del segundo 562 y el cuarto 564 bloques modificados para obtener la segunda señal
30 obtenida como resultado 108 que también está libre de efecto aliasing o al menos con aliasing reducido. Esta operación de solapamiento y suma correspondiente a la primera y tercera representaciones en el tiempo es ejecutada por un bloque de solapamiento y suma 505 y la otra operación de solapamiento y suma correspondiente a las representaciones en el tiempo del segundo y cuarto bloques modificados, es decir para la señal de la línea 562 y 564 es ejecutada por otro bloque de solapamiento y suma 506. Una vez más, el sumador de solapamiento puede constar 35 de esos bloques separados o de un único bloque y se puede implementar el control de secuencia correspondiente de cualquier otra manera imaginable para obtener el resultado definido. Preferentemente, cada uno de los bloques 505, 506 es implementado en el bloque correspondiente 215 descrito en el contexto de la Fig. 2b.
[0089] Preferentemente, el combinador 110 en la Fig. 5a está configurado para combinar la primera señal 40 obtenida como resultado 104 y la segunda señal obtenida como resultado 108 mediante el desvanecimiento gradual
de la primera señal obtenida como resultado y la aparición gradual de la segunda señal obtenida como resultado. Para este fin, se incluye un bloque de desvanecimiento gradual 520 para la primera señal obtenida como resultado 104 y el bloque de aparición gradual 521 para la segunda señal obtenida como resultado. La combinación en sí puede ser ejecutada por un sumador 522 ilustrado en la Fig. 5a como elemento separado. Sin embargo, se debe hacer hincapié 45 en que la operación real del combinador 510 es preferentemente una combinación lineal ponderada en que, por cada muestra, la función de desvanecimiento gradual 520 otorga un cierto factor de ponderación y luego la muestra correspondiente ponderada con este factor de ponderación se suma a una muestra correspondiente de la otra señal obtenida como resultado que es ponderada con un factor de ponderación provisto por la función de aparición gradual 521 de la muestra correspondiente.
50
[0090] Como se reseñara, el procesador 100 está configurado para ejecutar una operación de IMDCT al realizar una conversión de espectral a tiempo y esta operación de IMDCT puede comprender las funcionalidades de los bloques 212, 213, 214, aunque la operación de IMDCT puede ser implementada de cualquier otra manera y hay un número de algoritmos eficientes de IMDCT muy conocidos que procuran básicamente el mismo resultado que el
55 descrito en el contexto de las Figs. 2a y 2b.
[0091] Además, el procesador 100 está configurado para ejecutar una operación de procesamiento de solapamiento y suma 505, 506 en el cálculo de la primera y segunda señales obtenidas como resultado en un intervalo de solapamiento ilustrado en 170 en la Fig. 1d. Además, el combinador 104 está configurado para combinar la primera
y segunda señales obtenidas como resultado en un intervalo de combinación, es decir por ejemplo en un intervalo de solapamiento y suma en el que este intervalo de combinación es igual al intervalo de solapamiento.
[0092] Por consiguiente, se debe hacer hincapié en que también se puede considerar que la Fig. 1d representa 5 la operación de solapamiento y suma ejecutada por el bloque 215 del lado de la síntesis. Luego, cada “porción
temporal” de la Fig. 1d representa un bloque emitido por el procedimiento de enventanado de síntesis 214 de la Fig. 2b, y las muestras en el intervalo de solapamiento de dicho bloque enventanado se suman a las muestras del intervalo de solapamiento del siguiente bloque enventanado. Además, se ponderan las muestras correspondientes con factores de ponderación provistos por una función de desvanecimiento gradual tal como 520 y una función de aparición gradual 10 522 según la necesidad. Por ejemplo, cuando la primera porción temporal corresponde a un bloque enventanado, luego en el intervalo de solapamiento 170 de la Fig. 1d, la primera porción temporal sería objeto de desvanecimiento gradual durante el intervalo de solapamiento y, al mismo tiempo, la segunda porción temporal sería objeto de aparición gradual dentro del intervalo de solapamiento. Por ende, una función de desvanecimiento gradual produciría factores de desvanecimiento gradual que decrecen de 1 a 0 preferentemente de manera lineal e igualmente distribuidos por 15 todo el número de muestras de 1 a N. De esa manera, cuando la longitud de un bloque enventanado es 2N, entonces el intervalo entre 1 y 0 se dividiría en N intervalos iguales por cada intervalo, se determinaría el factor de desvanecimiento gradual como centro de cada intervalo, por ejemplo. De modo similar, una función de aparición gradual sería una función que aporta factores de aparición gradual en incremento lineal de 0 a 1, una vez más con N intervalos iguales.
20
[0093] Sin embargo, se pueden aplicar otras funciones aparte de las funciones lineales, y es preferible que, por cada muestra, la suma del factor de aparición gradual de la muestra y el factor de desvanecimiento gradual de la muestra sea igual a 1, de manera que la aparición gradual/desvanecimiento gradual o, en general, la atenuación cruzada no dé lugar a variación de la amplitud o sonoridad de la señal de audio. Por lo tanto, una suma de la parte de
25 aparición gradual y la parte de desvanecimiento gradual correspondiente a cada muestra en un intervalo de atenuación cruzada es constante y preferentemente igual a 1.
[0094] Preferentemente, la presente invención se aplica en el contexto de funcionalidades de llenado de ancho de banda en el contexto de la Fig. 5b. Extensión de ancho de banda significa que el ancho de banda de la señal de
30 entrada se extiende de manera que, por lo general, la señal de salida generada por la tecnología de extensión de ancho de banda tenga un ancho de banda más elevado que la señal de entrada. Por otra parte, sin embargo, también existen tecnologías de llenado de ancho de banda que no necesariamente aumentan el ancho de banda, sino que rellenan agujeros espectrales dentro de la señal de entrada. Cuando se considera que la banda de frecuencia superior es un “agujero espectral”, entonces la funcionalidad de llenado de ancho de banda es similar a una tecnología de 35 extensión de ancho de banda. Sin embargo, si un agujero espectral de la señal de entrada que está situado, con respecto a la frecuencia, por debajo de un intervalo en el cual existen valores espectrales, la funcionalidad de llenado de ancho de banda no extiende el ancho de banda, sino que el resultado de la tecnología tiene el mismo ancho de banda que la entrada. En este contexto, SBR, (“Spectral Band Replication” - Replicado de banda espectral) por ejemplo, es un ejemplo de tecnología de extensión de ancho de banda y el llenado inteligente de brechas (IGF) es un 40 ejemplo de funcionalidad general de llenado de ancho de banda sin aumentar necesariamente el ancho de banda de la señal de entrada.
[0095] Preferentemente, el procesador 100 está configurado para aplicar una funcionalidad de llenado de ancho de banda con una función de parcheo para parchear los valores espectrales de un intervalo de origen 300 a un
45 intervalo de destino 334, y el procesador está configurado para aplicar la función de parcheo al calcular la primera y segunda señales obtenidas como resultado. A título de ejemplo, la Fig. 3c ilustra un parcheador para generar, a partir de una secuencia de bloques de valores espectrales que tienen una elevada resolución o que representan un intervalo de origen, una secuencia 334 de bloques de valores espectrales en un intervalo de llenado de ancho de banda o intervalo de destino. El parcheador está indicado en 332 en la Fig. 3c y puede ser implementado para aplicar una 50 función de parcheo P(k) según lo ilustrado. Opcionalmente, como se ilustra en la Fig. 3c y en el caso de aplicarse una funcionalidad de llenado de ancho de banda, la construcción del procesador 100 y el combinador 110 es igual que si no se aplicara ningún llenado de ancho de banda aparte del hecho de que la secuencia de bloques de valores espectrales indicada en 334 en la Fig. 5b es una salida del parcheador de la Fig. 3c y los factores de ganancia 102, 106 o, en general, los factores de modificación para cada bloque, están definidos por cierta funcionalidad de llenado 55 de ancho de banda tal como el replicado de la banda espectral, el llenado inteligente de brechas o cualquier otra funcionalidad de llenado de ancho de banda. Por consiguiente, el parcheador 332 puede ser parte del procesador o puede ser implementado como etapa previa al procesamiento aplicada a la entrada al procesador.
[0096] Por ende, el aparato para procesar una señal de audio comprende un parcheador, ya sea como parte
del procesador 100 o como bloque aplicado en la dirección del procesamiento de señales, antes del procesador 100 de la Fig. 1a, en el que este parcheador está configurado para generar el primer bloque en un intervalo de llenado de ancho de banda utilizando valores espectrales de un intervalo de frecuencias diferente, es decir de un intervalo de origen según una función de parcheo correspondiente al primer bloque y el parcheador está configurado además para 5 generar el segundo bloque de valores espectrales en un intervalo de llenado de ancho de banda o intervalo de destino utilizando un intervalo espectral de una región de frecuencias diferente o región de origen según una función de parcheo para el segundo bloque, que puede ser la misma función de parcheo o una función de parcheo diferente.
[0097] Además, como ya se mencionara en el contexto de la Fig. 5a o 5b, el procesador está configurado para 10 ejecutar una funcionalidad similar a la multiplicación 510, 509, 508, 507 para modificar el primer y segundo bloques
utilizando funciones de ganancia o valores de ganancia como valores de modificación.
[0098] Se discuten otras realizaciones del segundo aspecto de la presente invención en el contexto de las Figs.
3a y 3b.
15
[0099] Las Fig. 3a y 3b ilustran un aparato para procesar una señal de audio que comprende una secuencia de bloques de los valores espectrales 114. Cada implementación comprende un procesador 150 para calcular una señal afectada por aliasing 154 utilizando al menos un primer valor de modificación 102 para un primer bloque de la secuencia de bloques 114 y al menos un segundo valor de modificación diferente para un segundo bloque de la
20 secuencia de bloques. Preferentemente, la funcionalidad del procesador para calcular una señal afectada por aliasing comprende un modificador de ganancia para modificar el primer bloque utilizando al menos un primer valor de modificación para obtener un primer bloque modificado 351. Esta modificación es ejecutada preferentemente por un multiplicador 310, aunque puede ser implementada según se discute en el contexto del multiplicador correspondiente 510 de la Fig. 5. Además, el modificador de ganancia está configurado para modificar el segundo bloque Xj(k) utilizando 25 al menos un segundo valor de modificación 106 para obtener un segundo bloque modificado 352. Una vez más, esta modificación puede ser ejecutada por un multiplicador 309 que, nuevamente, puede ser implementado según se discute en el contexto del multiplicador 510. Para generar la señal afectada por aliasing, el procesador 150 comprende un convertidor espectral-tiempo para convertir el primer y segundo bloques modificados en representaciones en el dominio del tiempo 361, 362, y además, un sumador de solapamiento está configurado para el solapamiento y suma 30 de las representaciones en el dominio del tiempo del primer y segundo bloques, es decir 361 y 362, para obtener la señal afectada por aliasing 154.
[0100] Además, el procesador también está configurado para estimar la señal de error de aliasing. Para ello, el procesador 150 comprende una funcionalidad adicional del modificador de ganancia ilustrado por un multiplicador 308
35 y 307 para modificar el primer bloque y el segundo bloque utilizando al menos un primer valor de modificación 102 o al menos un segundo valor de modificación 106 para obtener un tercer bloque modificado 353 y un cuarto bloque modificado 354.
[0101] Además, se ilustra un convertidor espectral-tiempo en 303 y 304 para convertir el tercer bloque 40 modificado 353 y el cuarto bloque modificado 354 a una representación en el dominio del tiempo 363 y 364,
respectivamente, y a continuación estos tercer y cuarto bloques modificados son procesados por un sumador de solapamiento para el solapamiento y suma de las representaciones en el dominio del tiempo del tercer y cuarto bloques modificados para obtener la señal de error de aliasing 158.
45 [0102] Para manipular la señal de error de aliasing 158 a fin de obtener una buena combinación con la señal
afectada por aliasing 158, el combinador comprende un enventanador 330 para aplicar una función de ventana, y un bloque de inversión de tiempo 340 para la inversión en el tiempo de una señal.
[0103] La diferencia entre los valores de modificación de ganancia es aplicada en el dominio de la frecuencia,
50 es decir en el procesador antes de la ejecución de la conversión espectral a tiempo en los bloques 303 y 304. Para ello, se hace referencia a la Fig. 3a. En particular, en esta realización, el procesador comprende el modificador de ganancia, que está configurado para modificar el primer bloque xj-1 mediante el multiplicador 307 usando una diferencia entre al menos un primer valor de modificación y al menos un segundo valor de modificación, en el que esta diferencia se calcula preferentemente por cada valor de frecuencia o valor espectral indicado por el índice k en la Fig. 3a. 55 Además, el modificador de ganancia está configurado para modificar el segundo bloque utilizando la diferencia 125 dentro de un multiplicador 308 para obtener el tercer bloque modificado 353 y el cuarto bloque modificado 354. En esta realización, que está ilustrada en la Fig. 3a, el combinador comprende la ventana 330 y la inversión en el tiempo
340.
[0104] Si bien el orden de las operaciones de procesamiento dentro del combinador está indicado de manera
que el dispositivo de enventanado 330 opere en la dirección de flujo de la señal antes de la inversión en el tiempo 340, resulta evidente que también se puede invertir el orden de las operaciones de estos elementos.
5 [0105] Por lo tanto, el procesador 150 de la Fig. 3a es tal que el modificador de ganancia modifique el primer
bloque y el segundo bloque usando al menos un primer o al menos un segundo valores de modificación. La modificación de la Fig. 3a incurre tanto en la modificación de ambos valores de modificación debido a que la diferencia entre ambos valores de modificación es utilizada, en realidad, para la modificación que es ejecutada, por ejemplo, por los multiplicadores 308, 307, en el que la diferencia de ganancia está indicada en 125 en la Fig. 3a.
10
[0106] Además, como se reseñara, se aplica preferentemente la operación de enventanado 330 y la operación de inversión en el tiempo 340. Sin embargo, en otras implementaciones, por ejemplo cuando se implementa la transformada de espectral a tiempo de manera diferente, podría no ser necesario en absoluto aplicar una inversión temporal 340. Además, cuando no se aplican ventanas de análisis ni síntesis, sino cuando se aplican solamente, por
15 ejemplo, “ventanas rectangulares”, también se puede prescindir el enventanado 330.
[0107] Sin embargo, en una realización preferida, se ilustra el dispositivo de enventanado y el operador de inversión en tiempo y se ubican en el orden ilustrado.
20 [0108] A continuación se describe la Fig. 3b en forma más detallada. La Fig. 3b es análoga a la Fig. 3a en que
la aplicación de la “diferencia” de ganancia se aplica en el dominio de la frecuencia. Sin embargo, dado que se aplica una operación de parcheo, la diferencia de ganancia no se puede aplicar en forma explícita, sino que se toman en cuenta preferentemente las diferentes operaciones de parcheo.
25 [0109] Por lo tanto, para obtener la señal de error de aliasing, en la operación de parcheo en el contexto de
una funcionalidad de llenado de ancho de banda discutida en el contexto de la Fig. 3c, se aplican preferentemente los siguientes procedimientos. Antes que nada, se calculan el bloque de valores espectrales 306a, que es el primer bloque, pero el primer bloque se parchea por medio de la operación de parcheo para el segundo bloque y seguidamente se multiplica este primer bloque 306a por el factor de ganancia 106 correspondiente al segundo bloque.
30
[0110] Además, como se ilustra, se genera el primer bloque de valores espectrales 306b, que es igual al primer bloque 304b, es decir el primer bloque al cual se aplica la operación de parcheo asociada al primer bloque, y luego se multiplica la señal por el primer factor de modificación 102. A continuación las señales generadas por los multiplicadores se combinan, como por ejemplo se restan o suman en 329, lo que puede ser implementado en forma
35 de un sustractor o un sumador con entrada negada etc. Seguidamente, se obtiene el tercer bloque modificado que corresponde básicamente al bloque 353. De manera similar, se obtiene el 354, es decir parcheando el segundo bloque Xj con la operación de parcheo correspondiente al segundo bloque, es decir utilizando el bloque 304b y multiplicando este bloque por el segundo factor de modificación 106. Sin embargo, el segundo bloque también se somete a un algoritmo de parcheo asociado al primer bloque, como se indica en el punto 306d y a continuación se multiplica el
40 resultado por el primer factor de multiplicación por medio de un multiplicador 307b. A continuación se suman las señales de salida de los multiplicadores 307a y 307b entre sí en el sumador 328 para obtener, por último, el cuarto bloque modificado 354. Seguidamente se somete al tercer y cuarto bloques modificados 353 y 354 a una transformación espectral a tiempo como se discute en el contexto de la Fig. 3a y seguidamente son sometidos a solapamiento y suma empleando el bloque 306 ilustrado en la Fig. 3b. Luego se ejecutan las mismas operaciones en
45 el combinador, como por ejemplo el enventanado 330, la inversión entiempo 340, y por último la combinación 152 para obtener, en última instancia, la señal sin efecto aliasing 112.
[0111] Si bien se ha descrito la presente invención en el contexto de los diagramas de bloques en que los
bloques representan componentes de hardware reales o lógicos, la presente invención también puede ser
50 implementada por un procedimiento implementado por ordenador. En este último caso, los bloques representan etapas correspondientes del procedimiento, en el que estas etapas representan las funcionalidades ejecutadas por los correspondientes bloques de hardware físicos o lógicos.
[0112] Si bien se han descrito algunos aspectos en el contexto de un aparato, es obvio que estos aspectos
55 también representan una descripción del procedimiento correspondiente, en el cual un bloque o dispositivo
corresponde a una etapa del procedimiento o a una característica de una etapa del procedimiento. De manera análoga, los aspectos descritos en el contexto de una etapa del procedimiento también representan una descripción de un bloque o ítem correspondiente o de una característica de un aparato correspondiente. Algunos o todos los pasos del procedimiento pueden ser ejecutados por medio de (o utilizando) un aparato de hardware, como por ejemplo, un
microprocesador, un ordenador programable o un circuito electrónico. En algunas realizaciones, una cualquiera o más de las etapas más importantes del procedimiento pueden ser ejecutadas por ese tipo de aparato.
[0113] La señal transmitida o codificada de la presente invención puede ser almacenada en un medio de 5 almacenamiento digital o puede ser transmitida por un medio de transmisión tal como un medio de transmisión
inalámbrico o un medio de transmisión cableado tal como internet.
[0114] Dependiendo de ciertos requisitos de implementación, las realizaciones de la invención pueden ser implementadas en hardware o en software. La implementación se puede realizar empleando un medio de
10 almacenamiento digital, por ejemplo un disquete, un DVD, un Blu-Ray, un CD, una ROM, una PROM, una EPROM, una EEPROM o una memoria FLASH, que tiene almacenadas en la misma señales control legibles electrónicamente, que cooperan (o tienen capacidad para cooperar) con un sistema informático programable de tal manera que se ejecute el procedimiento respectivo. Por lo tanto, el medio de almacenamiento digital puede ser legible por un ordenador.
15
[0115] Algunas realizaciones según la invención comprenden un portador de datos que comprende señales de control legibles electrónicamente, con capacidad para cooperar con un sistema informático programable de tal manera que se ejecute uno de los procedimientos descritos en esta invención.
20 [0116] En general, las realizaciones de la presente invención pueden ser implementadas en forma de producto
programa informático con un código de programa, en el que el código de programa cumple la función de ejecutar uno de los procedimientos al ejecutarse el programa informático en un ordenador. El código de programa puede ser almacenado, por ejemplo, en un portador legible por una máquina.
25 [0117] Otras realizaciones comprenden el programa informático para ejecutar uno de los procedimientos
descritos en esta invención, almacenado en un portador legible por una máquina.
[0118] En otras palabras, una realización del procedimiento de la invención consiste, por lo tanto, en un programa informático que consta de un código de programa para realizar uno de los procedimientos descritos en esta
30 invención al ejecutarse el programa informático en un ordenador.
[0119] Otra realización de los procedimientos de la invención consiste, por lo tanto, en un portador de datos (o medio de almacenamiento digital, no transitorio tal como un medio de almacenamiento digital o medio legible por ordenador) que comprende, grabado en el mismo, el programa informático para ejecutar uno de los procedimientos
35 descritos en esta invención. El portador de datos, el medio de almacenamiento digital o el medio grabado son por lo general tangibles y no transitorios.
[0120] Otra realización del procedimiento de la invención es, por lo tanto, un flujo de datos o una secuencia de señales que representa el programa informático para ejecutar uno de los procedimientos descritos en esta invención.
40 El flujo de datos o la secuencia de señales pueden estar configurados, por ejemplo, para ser transferida a través de una conexión de comunicación de datos, por ejemplo a través de internet.
[0121] Otra realización comprende un medio de procesamiento, por ejemplo un ordenador, un dispositivo lógico programable, configurado o adaptado para ejecutar uno de los procedimientos descritos en esta invención.
45
[0122] Otra realización comprende un ordenador en el que se ha instalado el programa informático para ejecutar uno de los procedimientos descritos en esta invención.
[0123] Otra realización según la invención comprende un aparato o sistema configurado para transferir (por 50 ejemplo por vía electrónica u óptica) un programa informático para poner en práctica uno de los procedimientos
descritos en esta invención en un receptor. El receptor puede ser, por ejemplo, un ordenador, un dispositivo móvil, un dispositivo de memoria y similar. El aparato o sistema puede comprender, por ejemplo, un servidor de archivos para transferir el programa informático al receptor.
55 [0124] En algunas realizaciones, se puede utilizar un dispositivo lógico programable (por ejemplo una matriz
de puertas programables en el campo) para ejecutar algunas o todas las funcionalidades de los procedimientos descritos en esta invención. En algunas realizaciones, una matriz de puertas programables en el campo puede cooperar con un microprocesador para ejecutar uno de los procedimientos descritos en esta invención. Por lo general, los procedimientos son ejecutados preferentemente por cualquier aparato de hardware.
[0125] Las realizaciones precedentemente descritas son meramente ilustrativas de los principios de la presente
invención. Se entiende que las modificaciones y variaciones de las disposiciones y detalles descritos en esta invención han de ser evidentes para los expertos en la materia. Por lo tanto, sólo es intención limitarse al alcance de las 5 siguientes reivindicaciones de patente inminente y no a los detalles específicos presentados a manera de descripción y explicación de las realizaciones presentadas en esta invención.
Claims (15)
- REIVINDICACIONES1. Un aparato para procesar una señal de audio que comprende una secuencia de bloques (114) de valores espectrales, que comprende:5un procesador (100) para procesar la secuencia de bloques utilizando al menos un primer valor de modificación (102) para un primer bloque para obtener una primera señal obtenida como resultado con aliasing reducido o libre de aliasing en un intervalo de solapamiento (170) y utilizando al menos un segundo valor de modificación diferente (106) de un segundo bloque de la secuencia de bloques para obtener una segunda señal obtenida como resultado con aliasing 10 reducido o libre de aliasing (108) en el intervalo de solapamiento (107); yun combinador (110) para combinar la primera señal obtenida (104) y la segunda señal obtenida (108) como resultado en el intervalo de solapamiento (170), para obtener una señal procesada (112) para el intervalo de solapamiento (170), en el que el procesador (100) comprende:15 un modificador (510, 509, 508, 507) para modificar el primer bloque de la secuencia utilizando al menos un primer valor de modificación (102) para obtener un primer bloque modificado (551), para modificar el segundo bloque de la secuencia utilizando al menos un segundo valor de modificación (106) para obtener un segundo bloque modificado (552), para modificar el segundo bloque utilizando al menos un primer valor de modificación (102) para obtener un tercer bloque modificado (553) y para modificar el primer bloque utilizando al menos un segundo valor de modificación 20 (106) para obtener un cuarto bloque modificado (554);un convertidor espectral a tiempo (501, 502, 503, 504) para convertir el primer a cuarto bloques modificados en representaciones en el tiempo de los mismos (561, 562, 563, 564) y un sumador y solapamiento (505, 506) para solapar y sumar las representaciones en el tiempo (561, 563) del primer y tercer bloques modificados (551, 553) para obtener la primera señal obtenida como resultado (104) y para el solapamiento y suma de las representaciones en el 25 tiempo (562, 564) del segundo y cuarto bloques modificados (552, 554) para obtener la segunda señal obtenida como resultado (108).
- 2. Aparato según la reivindicación 1, en el que el combinador (110) está configurado para combinar la primera señal obtenida como resultado (104) y la segunda señal obtenida como resultado (108) mediante el30 desvanecimiento gradual (520) de la primera señal obtenida como resultado y la aparición gradual (521) de la segunda señal obtenida como resultado y la adición de ambas señales (522).
- 3. Aparato de una de las reivindicaciones anteriores,en el cual el procesador (100) está configurado para ejecutar una operación de transformada de coseno discreta 35 modificada inversa al realizar una conversión espectral-tiempo.
- 4. Aparato de una de las reivindicaciones anteriores,en el cual el procesador (100) está configurado para ejecutar una operación de procesamiento de solapamiento y suma (505, 506) al calcular la primera y segunda señales así obtenidas en el intervalo de solapamiento, y 40 en el que el combinador (110) está configurado para combinar la primera y segunda señales así obtenidas en un intervalo de combinación, en el que el intervalo de combinación es idéntico al margen de solapamiento (170).
- 5. Aparato de una de las reivindicaciones anteriores,en el que el combinador (110) está configurado para ejecutar una función de atenuación cruzada, en el que la función 45 de atenuación cruzada comprende una parte de desvanecimiento gradual (520) y una parte de aparición gradual (521), en el que es constante una suma (522) de un coeficiente de ponderación de la parte de desvanecimiento gradual (520) y de un coeficiente de ponderación de aparición gradual (521) de una muestra en un intervalo de atenuación cruzada.
- 6. Aparato de una de las reivindicaciones anteriores,50 en el que el combinador (110) está configurado para ejecutar una operación de atenuación cruzada, en el que la operación de atenuación cruzada comprende una parte de desvanecimiento gradual que disminuye de forma monótona (520) y una parte de aparición gradual que aumenta de forma monótona (521).
- 7. Aparato de una de las reivindicaciones anteriores,55 en el que el procesador (100) está configurado para aplicar una operación de llenado de ancho de banda (332) que incluye una función de parcheo para parchear los valores espectrales de un intervalo de origen (300) a un intervalo de destino (334) yen el que el procesador (100) está configurado para aplicar la función de parcheo al calcular la primera y segunda señales así obtenidas.
- 8. Aparato de una de las reivindicaciones anteriores, que comprende además:un parcheador (332) para generar el primer bloque en un intervalo de llenado de ancho de banda utilizando los valores 5 espectrales de un intervalo de frecuencias diferente según una función de parcheo correspondiente al primer bloque y para generar el segundo bloque en un intervalo de llenado de ancho de banda con valores espectrales correspondientes a una región de frecuencia diferente según una función de parcheo asociada al segundo bloque.
- 9. Aparato de una de las reivindicaciones anteriores,10 en el que el procesador (100) está configurado para ejecutar una operación de multiplicación del primer y segundo bloques utilizando las funciones de ganancia como valores de modificación.
- 10. Aparato de una de las reivindicaciones anteriores,en el que el procesador (100) está configurado para procesar la secuencia de bloques, en el que el primer bloque es 15 adyacente en tiempo con el segundo bloque, y en el que el primer y segundo bloques son adyacentes en tiempo al tener un solapamiento que equivale al 55 % a 45 % de una porción temporal.
- 11. Aparato de una de las reivindicaciones anteriores,en el que el procesador (100) está configurado para aplicar una operación de conversión espectral-tiempo que consta 20 de una parte de transformación espectral-tiempo (212) y una parte de ventana de síntesis (214) aplicada a una salida de la parte de transformación espectral-tiempo (212, 213).
- 12. Aparato de una de las reivindicaciones anteriores,en el cual el procesador (100) está configurado para operar utilizando valores de modificación variantes en el tiempo 25 y la frecuencia.
- 13. Aparato de una de las reivindicaciones anteriores, en el cual el procesador está configurado para ejecutar transformadas solapadas con un intervalo de solapamiento y en el que el procesador está configurado para ejecutar sólo operaciones que afecten los valores en el intervalo de solapamiento y para no ejecutar operaciones que30 no influyan sobre los valores en el intervalo de solapamiento.
- 14. Procedimiento para procesar una señal de audio que comprende una secuencia de bloques (114) de valores espectrales:35 procesar (100) la secuencia de bloques utilizando al menos un primer valor de modificación (102) para un primer bloque para obtener una primera señal obtenida como resultado con aliasing reducido o libre de aliasing en un margen de solapamiento (170) y utilizando al menos un segundo valor de modificación diferente (106) de un segundo bloque de la secuencia de bloques para obtener una segunda señal obtenida como resultado con aliasing reducido o libre de aliasing (108) en el margen de solapamiento (107); y40 combinar (110) la primera señal obtenida (104) y la segunda señal obtenida (108) como resultado en el margen de solapamiento (170) para obtener una señal procesada (112) en el intervalo de solapamiento (170), en el que el procesador (100) comprende:modificar el primer bloque de la secuencia utilizando al menos un primer valor de modificación (102) para obtener un 45 primer bloque modificado (551),modificar el segundo bloque de la secuencia utilizando al menos un segundo valor de modificación (106) para obtener un segundo bloque modificado (552),modificar el segundo bloque utilizando al menos un primer valor de modificación (102) para obtener un tercer bloque modificado (553)50 modificar el primer bloque utilizando al menos un segundo valor de modificación (106) para obtener un cuarto bloque modificado (554);convertir el primer a cuarto bloques modificados en representaciones en el tiempo de los mismos (561, 562, 563, 564) solapar y sumar la representaciones en el tiempo (561, 563) del primero y tercer bloques modificados (551, 553) para obtener una señal obtenida como resultado (104) y55 solapar y sumar las representaciones en el tiempo (562, 564) del segundo y cuarto bloques modificados (552, 554) para obtener la segunda señal obtenida como resultado (108).
- 15. Programa informático que comprende instrucciones que, cuando el programa es ejecutado por un ordenador o procesador, provoca que el ordenador ponga en práctica el procedimiento de la reivindicación 14.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP13181507 | 2013-08-23 | ||
| EP13181507 | 2013-08-23 | ||
| PCT/EP2014/067944 WO2015025051A1 (en) | 2013-08-23 | 2014-08-22 | Apparatus and method for processing an audio signal using a combination in an overlap range |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2650117T3 true ES2650117T3 (es) | 2018-01-17 |
Family
ID=51392261
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES14755081.8T Active ES2650117T3 (es) | 2013-08-23 | 2014-08-22 | Aparato y procedimiento para procesar una señal de audio empleando una combinación en un intervalo de solapamiento |
| ES14758321.5T Active ES2693559T3 (es) | 2013-08-23 | 2014-08-22 | Aparato y procedimiento para procesar una señal de audio mediante una señal de error de aliasing |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES14758321.5T Active ES2693559T3 (es) | 2013-08-23 | 2014-08-22 | Aparato y procedimiento para procesar una señal de audio mediante una señal de error de aliasing |
Country Status (18)
| Country | Link |
|---|---|
| US (2) | US10210879B2 (es) |
| EP (2) | EP3036738B1 (es) |
| JP (2) | JP6286552B2 (es) |
| KR (2) | KR101820028B1 (es) |
| CN (2) | CN105556600B (es) |
| AR (2) | AR097443A1 (es) |
| AU (2) | AU2014310548B2 (es) |
| BR (2) | BR112016003265B1 (es) |
| CA (2) | CA2921192C (es) |
| ES (2) | ES2650117T3 (es) |
| MX (2) | MX352576B (es) |
| MY (2) | MY175355A (es) |
| PL (1) | PL3028275T3 (es) |
| PT (1) | PT3028275T (es) |
| RU (2) | RU2643662C2 (es) |
| SG (2) | SG11201601032RA (es) |
| TW (2) | TWI570708B (es) |
| WO (2) | WO2015025051A1 (es) |
Family Cites Families (30)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6124895A (en) * | 1997-10-17 | 2000-09-26 | Dolby Laboratories Licensing Corporation | Frame-based audio coding with video/audio data synchronization by dynamic audio frame alignment |
| JP4281131B2 (ja) * | 1998-10-22 | 2009-06-17 | ソニー株式会社 | 信号符号化装置及び方法、並びに信号復号装置及び方法 |
| US6226608B1 (en) * | 1999-01-28 | 2001-05-01 | Dolby Laboratories Licensing Corporation | Data framing for adaptive-block-length coding system |
| US6658383B2 (en) * | 2001-06-26 | 2003-12-02 | Microsoft Corporation | Method for coding speech and music signals |
| US6963842B2 (en) | 2001-09-05 | 2005-11-08 | Creative Technology Ltd. | Efficient system and method for converting between different transform-domain signal representations |
| US20030187663A1 (en) | 2002-03-28 | 2003-10-02 | Truman Michael Mead | Broadband frequency translation for high frequency regeneration |
| WO2004082288A1 (en) * | 2003-03-11 | 2004-09-23 | Nokia Corporation | Switching between coding schemes |
| DE102004021403A1 (de) * | 2004-04-30 | 2005-11-24 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Informationssignalverarbeitung durch Modifikation in der Spektral-/Modulationsspektralbereichsdarstellung |
| CN1862969B (zh) * | 2005-05-11 | 2010-06-09 | 尼禄股份公司 | 自适应块长、常数变换音频解码方法 |
| US7974837B2 (en) * | 2005-06-23 | 2011-07-05 | Panasonic Corporation | Audio encoding apparatus, audio decoding apparatus, and audio encoded information transmitting apparatus |
| DE102006010212A1 (de) * | 2006-03-06 | 2007-09-20 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung und Verfahren zur Simulation von WFS-Systemen und Kompensation von klangbeeinflussenden WFS-Eigenschaften |
| EP2002426B1 (en) * | 2006-04-04 | 2009-09-02 | Dolby Laboratories Licensing Corporation | Audio signal loudness measurement and modification in the mdct domain |
| DE102006047197B3 (de) * | 2006-07-31 | 2008-01-31 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung und Verfahren zum Verarbeiten eines reellen Subband-Signals zur Reduktion von Aliasing-Effekten |
| DE102006051673A1 (de) * | 2006-11-02 | 2008-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung und Verfahren zum Nachbearbeiten von Spektralwerten und Encodierer und Decodierer für Audiosignale |
| KR101016224B1 (ko) * | 2006-12-12 | 2011-02-25 | 프라운호퍼-게젤샤프트 추르 푀르데룽 데어 안제반텐 포르슝 에 파우 | 인코더, 디코더 및 시간 영역 데이터 스트림을 나타내는 데이터 세그먼트를 인코딩하고 디코딩하는 방법 |
| CN101046964B (zh) * | 2007-04-13 | 2011-09-14 | 清华大学 | 基于重叠变换压缩编码的错误隐藏帧重建方法 |
| CA2698039C (en) | 2007-08-27 | 2016-05-17 | Telefonaktiebolaget Lm Ericsson (Publ) | Low-complexity spectral analysis/synthesis using selectable time resolution |
| BRPI0821091B1 (pt) * | 2007-12-21 | 2020-11-10 | France Telecom | processo e dispositivo de codificação/decodificação por transformada com janelas adaptativas, e memória legível por computador |
| PL2301020T3 (pl) * | 2008-07-11 | 2013-06-28 | Fraunhofer Ges Forschung | Urządzenie i sposób do kodowania/dekodowania sygnału audio z użyciem algorytmu przełączania aliasingu |
| PL2234103T3 (pl) * | 2009-03-26 | 2012-02-29 | Fraunhofer Ges Forschung | Urządzenie i sposób manipulacji sygnałem audio |
| ES2825032T3 (es) * | 2009-06-23 | 2021-05-14 | Voiceage Corp | Cancelación de solapamiento de dominio de tiempo directo con aplicación en dominio de señal original o ponderado |
| ES2441069T3 (es) * | 2009-10-08 | 2014-01-31 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Decodificador multimodo para señal de audio, codificador multimodo para señal de audio, procedimiento y programa de computación que usan un modelado de ruido en base a linealidad-predicción-codificación |
| EP2473995B9 (en) | 2009-10-20 | 2016-12-21 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio signal encoder, audio signal decoder, method for providing an encoded representation of an audio content, method for providing a decoded representation of an audio content and computer program for use in low delay applications |
| MX2012004648A (es) | 2009-10-20 | 2012-05-29 | Fraunhofer Ges Forschung | Codificacion de señal de audio, decodificador de señal de audio, metodo para codificar o decodificar una señal de audio utilizando una cancelacion del tipo aliasing. |
| ES2706061T3 (es) * | 2010-01-13 | 2019-03-27 | Voiceage Corp | Decodificación de audio con cancelación directa de distorsión por repliegue espectral en el dominio del tiempo usando filtrado predictivo lineal |
| EP2372704A1 (en) | 2010-03-11 | 2011-10-05 | Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. | Signal processor and method for processing a signal |
| EP2375409A1 (en) * | 2010-04-09 | 2011-10-12 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoder, audio decoder and related methods for processing multi-channel audio signals using complex prediction |
| ES2710554T3 (es) * | 2010-07-08 | 2019-04-25 | Fraunhofer Ges Forschung | Codificador que utiliza cancelación del efecto de solapamiento hacia delante |
| FR2969804A1 (fr) * | 2010-12-23 | 2012-06-29 | France Telecom | Filtrage perfectionne dans le domaine transforme. |
| TWI564882B (zh) * | 2011-02-14 | 2017-01-01 | 弗勞恩霍夫爾協會 | 利用重疊變換之資訊信號表示技術(一) |
-
2014
- 2014-08-22 CA CA2921192A patent/CA2921192C/en active Active
- 2014-08-22 RU RU2016110398A patent/RU2643662C2/ru active
- 2014-08-22 KR KR1020167007348A patent/KR101820028B1/ko active Active
- 2014-08-22 JP JP2016535499A patent/JP6286552B2/ja active Active
- 2014-08-22 PT PT147550818T patent/PT3028275T/pt unknown
- 2014-08-22 KR KR1020167007352A patent/KR101831286B1/ko active Active
- 2014-08-22 ES ES14755081.8T patent/ES2650117T3/es active Active
- 2014-08-22 EP EP14758321.5A patent/EP3036738B1/en active Active
- 2014-08-22 BR BR112016003265-9A patent/BR112016003265B1/pt active IP Right Grant
- 2014-08-22 EP EP14755081.8A patent/EP3028275B1/en active Active
- 2014-08-22 SG SG11201601032RA patent/SG11201601032RA/en unknown
- 2014-08-22 RU RU2016110408A patent/RU2641253C2/ru active
- 2014-08-22 PL PL14755081T patent/PL3028275T3/pl unknown
- 2014-08-22 JP JP2016535500A patent/JP6333379B2/ja active Active
- 2014-08-22 WO PCT/EP2014/067944 patent/WO2015025051A1/en not_active Ceased
- 2014-08-22 MY MYPI2016000332A patent/MY175355A/en unknown
- 2014-08-22 CN CN201480046719.7A patent/CN105556600B/zh active Active
- 2014-08-22 WO PCT/EP2014/067945 patent/WO2015025052A1/en not_active Ceased
- 2014-08-22 SG SG11201601298WA patent/SG11201601298WA/en unknown
- 2014-08-22 AU AU2014310548A patent/AU2014310548B2/en active Active
- 2014-08-22 ES ES14758321.5T patent/ES2693559T3/es active Active
- 2014-08-22 AU AU2014310547A patent/AU2014310547B2/en active Active
- 2014-08-22 MX MX2016001856A patent/MX352576B/es active IP Right Grant
- 2014-08-22 CA CA2921195A patent/CA2921195C/en active Active
- 2014-08-22 MX MX2016001961A patent/MX354372B/es active IP Right Grant
- 2014-08-22 BR BR112016003029-0A patent/BR112016003029B1/pt active IP Right Grant
- 2014-08-22 MY MYPI2016000290A patent/MY184723A/en unknown
- 2014-08-22 CN CN201480046726.7A patent/CN105556601B/zh active Active
- 2014-08-25 TW TW103129185A patent/TWI570708B/zh active
- 2014-08-25 AR ARP140103179A patent/AR097443A1/es active IP Right Grant
- 2014-08-25 AR ARP140103180A patent/AR097444A1/es active IP Right Grant
- 2014-08-25 TW TW103129187A patent/TWI570709B/zh active
-
2016
- 2016-02-18 US US15/047,334 patent/US10210879B2/en active Active
- 2016-02-18 US US15/047,322 patent/US10157624B2/en active Active
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2950286T3 (es) | Decodificador para decodificar una señal de audio codificada y codificador para codificar una señal de audio | |
| ES2751275T3 (es) | Procesador, procedimiento y programa informático para el tratamiento de una señal de audio mediante el uso de las partes de superposición truncadas de ventanas de análisis y de síntesis | |
| BR112012009249B1 (pt) | Aparelho e método para gerar um sinal de áudio de alta frequência usando sobreamostragem conformável | |
| ES2650117T3 (es) | Aparato y procedimiento para procesar una señal de audio empleando una combinación en un intervalo de solapamiento | |
| HK1224801B (en) | Apparatus and method for processing an audio signal using a combination in an overlap range | |
| HK1224801A1 (en) | Apparatus and method for processing an audio signal using a combination in an overlap range | |
| HK1225153A1 (en) | Apparatus and method for processing an audio signal using an aliasing error signal | |
| HK1225153B (en) | Apparatus and method for processing an audio signal using an aliasing error signal | |
| BR112012022899B1 (pt) | Processador de sinais, provedor de janelas, sinal de mídia codificado, método para o processamento de um sinal e método para a provisão de uma janela |