MX2010010747A - Descodificador de señal de audio, codificador de señal de audio, representacion de señal de audio de multi-canal codificada, metodos y programa de computadora. - Google Patents
Descodificador de señal de audio, codificador de señal de audio, representacion de señal de audio de multi-canal codificada, metodos y programa de computadora.Info
- Publication number
- MX2010010747A MX2010010747A MX2010010747A MX2010010747A MX2010010747A MX 2010010747 A MX2010010747 A MX 2010010747A MX 2010010747 A MX2010010747 A MX 2010010747A MX 2010010747 A MX2010010747 A MX 2010010747A MX 2010010747 A MX2010010747 A MX 2010010747A
- Authority
- MX
- Mexico
- Prior art keywords
- time
- audio
- channel
- representation
- distortion
- Prior art date
Links
- 230000005236 sound signal Effects 0.000 title claims abstract description 200
- 238000000034 method Methods 0.000 title claims description 57
- 238000004590 computer program Methods 0.000 title claims description 14
- 230000003595 spectral effect Effects 0.000 claims description 34
- 230000009466 transformation Effects 0.000 claims description 4
- 238000012952 Resampling Methods 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 description 37
- 238000004422 calculation algorithm Methods 0.000 description 33
- 239000000523 sample Substances 0.000 description 31
- 230000015654 memory Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 18
- 230000007704 transition Effects 0.000 description 17
- 230000015572 biosynthetic process Effects 0.000 description 15
- 238000005070 sampling Methods 0.000 description 15
- 230000002123 temporal effect Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 10
- 238000010606 normalization Methods 0.000 description 9
- 238000013507 mapping Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000001228 spectrum Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000000737 periodic effect Effects 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 4
- 230000000873 masking effect Effects 0.000 description 4
- 230000002829 reductive effect Effects 0.000 description 4
- 230000002441 reversible effect Effects 0.000 description 4
- 230000003247 decreasing effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000005562 fading Methods 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 108010076504 Protein Sorting Signals Proteins 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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
- 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/04—Time compression or expansion
-
- 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/04—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 predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/167—Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
-
- 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/022—Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Stereophonic System (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Se describe un descodificador de señal de audio para proveer una representación de señal de audio de multi-canal descodificada en base a una representación de señal de audio de multi-canal codificada que comprende un descodificador de distorsión del tiempo configurado para usar selectivamente contornos de distorsión del tiempo específicos de canal de audio individuales o un contorno de distorsión del tiempo de multi-canal adjunto para la reconstrucción de una pluralidad de canales de audio representados por la representación de señal de audio de multi-canal codificada. Un codificador de señal de audio para proveer una representación codificada de una señal de audio de multi-canal comprende un proveedor de representación de audio codificado configurado para proveer selectivamente una representación de audio que comprende una información de contorno de distorsión del tiempo común, asociada comúnmente don una pluralidad de canales de audio de la señal de audio de multi-canal o una representación de audio codificada que comprende información de contorno de distorsión del tiempo individual, asociada individualmente con los canales de audio diferentes de la pluralidad de canales de audio, dependiendo de la información que describe la similaridad o diferencia entre contornos de distorsión del tiempo asociados con los canales de audio de la pluralidad de canales de audio.
Description
DESCODIFICADOR DE SEÑAL DE AUDIO, CODIFICADOR DE SEÑAL DE AUDIO, REPRESENTACIÓN DE SEÑAL DE AUDIO DE MULTI-CANAL
CODIFICADA, MÉTODOS Y PROGRAMA DE COMPUTADORA
ANTECEDENTES DE LA INVENCIÓN
Las modalidades de acuerdo con la invención son concernientes con un descodificador de señal de audio. Modalidades adicionáles de acuerdo con la invención son concernientes con un codificador de señal de audio. Modalidades adicionales de acuerdo con la invención son concernientes con una representación de señal de audio de multi-canal codificada. Modalidades adicionales de acuerdo con la invención son concernientes con un método para proveer una representación de señal de audio de multi-canal descodificada, con un método para proveer una representación codificada de una señal de audio de multi-canal y con un programa de computadora para implementar dichos métodos.
Algunas modalidades de acuerdo con la invención son concernientes con métodos para un codificador de transformada de MDCT distorsionada en el tiempo.
En lo siguiente, se dará una breve introducción al campo de codificación de audio distorsionada en el tiempo, conceptos de los cuales pueden ser aplicados en conjunción con algunas modalidades de la invención.
En años recientes, se han desarrollado técnicas para transformar una señal de audio a una representación de dominio
de frecuencia y para codificar eficientemente esta representación de dominio de frecuencia, por ejemplo, tomando en cuenta umbrales de enmascaramiento perceptual. Este concepto de codificación de señal de audio es particularmente eficiente si las longitudes de bloque, para los cuales un conjunto de coeficientes espectrales codificados son transmitidos, son largos .y si solamente un número comparativamente pequeño de coeficientes espectrales está por encima del umbral de enmascaramiento global mientras que un número grande de coeficientes espectrales están cerca o debajo del umbral de enmascaramiento global y pueden asi ser despreciados (o codificados con longitud de código mínima) .
Por ejemplo, las transformadas dobladas moduladas a base de coseno o a base de seno son frecuentemente usadas en aplicaciones para codificación fuente debido a sus propiedades de compactación de energía. Esto es, para tonos armónicos con frecuencias fundamentales constantes (altura), concentran la energía de señal a un número bajo de componentes espectrales
(sub-bandas) , lo que conduce a una representación de señal eficiente .
En general, la altura (fundamental) de una señal se comprenderá que es la frecuencia dominante más baja distinguible del espectro de la señal. En el modelo de habla común, la altura es la frecuencia de la señal de excitación modulada por la garganta humana. Si solamente una frecuencia
fundamental estuviera presente, el espectro seria extremadamente simple, comprendiendo la frecuencia fundamental y los sobretonos solamente. Tal espectro podría ser codificado altamente de manera eficiente. Para señales con altura variable, sin embargo, la energía correspondiente a cada componente armónico es esparcida sobre varios coeficientes de transformada, conduciendo así a una reducción de eficiencia de codificación.
Con el fin de superar esta recepción de la eficiencia de codificación, la señal de audio a ser codificada es re-muestreada efectivamente en una rejilla temporal no uniforme. En el procesamiento subsecuente, las posiciones de muestra obtenidas por el re-muestreo uniforme son procesadas como si representaran valores en una rejilla temporal uniforme. Esta, operación es denotada comúnmente por la parte "formación de tiempo". Los tiempos de muestra pueden ser escogidos ventajosamente en dependencia de la variación temporal de la altura, de tal manera que una variación de altura en la versión distorsionada en el tiempo de la señal de audio es más pequeña que una variación de altura en la variación original de la señal de audio (antes de la distorsión de tiempo) . Después de la distorsión en el tiempo de la señal de audio, la versión distorsionada en el tiempo de la señal de audio es convertida al dominio de frecuencia. La distorsión de tiempo altura-dependiente tiene el efecto de que la representación del
dominio de frecuencia de la señal de audio distorsionada en el tiempo es comúnmente concentrada a un número mucho más pequeño de componentes espectrales que una representación de dominio de frecuencia de la señal de audio original (no distorsionada en el tiempo) .
En el lado del descodificador, la representación de frecuencia-dominio de la señal de audio distorsionada en el tiempo es convertida de regreso al dominio de tiempo, de tal manera que una representación de tiempo-dominio de la señal de audio distorsionada en el tiempo está disponible en el lado del descodificador . Sin embargo, en la representación del dominio de tiempo de la señal de audio distorsionada en el tiempo reconstruida del lado del descodificador , las variaciones de altura originales de la señal de audio de entrada del lado del codificador no son incluidas. Asi, todavía otra distorsión de tiempo mediante re-muestreo de la representación del dominio de tiempo reconstruida del lado del descodificador de la señal de audio distorsionada en el tiempo es aplicada. Con el fin de obtener una buena reconstrucción de la señal de audio concentrada del lado del codificador en el descodificador, es deseable que la distorsión en el tiempo del lado del descodificador sea por lo menos aproximadamente la operación inversa con respecto a la distorsión de tiempo del lado del codificador. Con el fin de obtener una distorsión de tiempo apropiada, es deseable tener información disponible en el lado
del descodificador que permite el ajuste de distorsión de tiempo del lado del descodificador .
Ya que es comúnmente requerido transferir tal información del descodificador de señal de audio al descodificador de señal de audio, es deseable mantener una velocidad de bits requerida para esta transmisión pequeña en tanto que todavía permite una reconstrucción confiable de la información de distorsión de tiempo requerida en el lado del descodificador .
En vista de la discusión anterior, hay un deseo de tener un concepto que permita un almacenamiento eficiente en velocidad de bits y/o transmisión de una señal de audio de multi-canal .
BREVE DESCRIPCIÓN DE LA INVENCIÓN
Una modalidad de acuerdo con la invención crea un descodificador de señal de . audio para proveer una representación de señal de audio de multi-canal descodificada en base a una representación de señal de audio de multi-canal descodificada. El descodificador de señal de audio comprende un descodificador de distorsión del tiempo configurado para usar selectivamente contornos de distorsión del tiempo específicos de canal de audio individuales o un contorno de distorsión del tiempo de multi-canal adjunto para una reconstrucción de distorsión del tiempo de una pluralidad de canales de audio
representados por la representación de señal de audio de multi-canal codificada.
Esta modalidad de acuerdo con la invención está basada en el descubrimiento de que una codificación eficiente de diferentes tipos de señales de audio de multi-canal puede ser obtenida al conmutar entre un almacenamiento y/o transmisión de contornos de distorsión del tiempo específicos del canal de audio y contornos de distorsión del tiempo de multi-canal adjuntos. Se ha encontrado que, en algunos casos, una variación de altura es significativamente diferente en los canales de una señal de audio de multi-canal. También, se ha encontrado que en otros casos, la variación de altura es aproximadamente igual para múltiples canales de una señal de audio de multi-canal. En vista de estos tipos diferentes de señales (o porciones de señal de una sola señal de audio) , se ha encontrado que la exigencia de codificación puede ser mejorada si el descodificador es apto de derivar flexiblemente
(conmutable o selectivamente) los contornos de distorsión del tiempo para la reconstrucción de los diferentes canales de la señal de audio de multi-canal a partir de representaciones de contorno de distorsión del tiempo específicas de canal de audio individuales o de una representación de contorno de distorsión del tiempo de multi-canal adjunta.
En una modalidad preferida, el descodificador de distorsión del tiempo está configurado para usar selectivamente
un contorno de distorsión del tiempo de multi-canal adjunto para una reconstrucción de distorsión del tiempo de una pluralidad de canales de audio para los cuales la información del dominio espectral codificada individual está disponible. De acuerdo con un aspecto de la invención, se ha encontrado que el uso de un contorno de distorsión del tiempo de multi-canal adjunto para una reconstrucción de distorsión del tiempo de una pluralidad de canales de audio no es solamente aplicable si los diferentes canales de audio representan un contenido de audio similar, si no aún si diferentes canales de audio representan un contenido de audio significativamente diferente. Asi, se ha encontrado que es útil combinar el concepto de .usar un contorno de distorsión del tiempo de multi-canal adjunto para la evaluación de información de domino espectral codificada individual para diferentes canales de audio. Por ejemplo, este concepto es particularmente útil si un primer canal de audio representa una primera arte de una pieza polifónica de música, mientras que un segundo canal de audio representa una segunda parte de la pieza polifónica de música. La primera señal de audio y la segunda señal de audio pueden por ejemplo, representar el sonido producido por diferentes cantantes o por diferentes instrumentos. Asi, una representación de dominio espectral del primer canal de audio puede ser significativamente diferente de una representación del dominio espectral de dicho canal de audio. Por ejemplo, las frecuencias
fundamentales de los diferentes canales de audio pueden ser diferentes. También, los diferentes canales de audio pueden comprender diferentes características con respecto a las harmónicas de la frecuencia fundamental. No obstante, puede haber una tendencia significativa de que las alturas de los diferentes canales de audio varían aproximadamente en paralelo. En este caso, es muy eficiente aplicar una distorsión en tiempo común (descrita por el contorno de distorsión del tiempo de multi-canal adjunto) a los diferentes canales de audio, aunque los diferentes canales de audio comprenden contenidos de audio significativamente diferentes (por ejemplo, que tienen diferentes frecuencias fundamentales y diferentes espectros harmónicos. No obstante, en otros casos, es naturalmente deseable aplicar diferentes distorsiones de tiempo a diferentes canales de audio.
En una modalidad preferida de la invención, el descodificador de distorsión del tiempo está configurado para recibir una primera información de dominio espectral codificada asociada con un primero de los canales de audio y para proveer, en base a lo mismo, una representación del dominio de tiempo distorsionada del primer canal de audio utilizando una transformación de dominio de frecuencia a dominio de tiempo. También, el descodificador de distorsión del tiempo está configurado además para recibir una segunda información de dominio espectral codificada, asociada con un segundo de los
canales de audio y para proveer, en base a lo mismo, una representación del dominio de tiempo distorsionada del segundo canal de audio utilizando una transformación de dominio de frecuencia a dominio de tiempo. En este caso, la segunda información de dominio espectral codificada puede ser diferente de la primera información de dominio espectral. También, el. descodificador de distorsión del tiempo está configurado para re-muestrear de manera variable · en el tiempo, en base al contorno de distorsión del tiempo de multi-canal adjunto, la representación del dominio del tiempo distorsionada del primer canal de audio o una versión procesada del mismo, para obtener una representación muestreada regularmente con el primer canal de audio y para re-muestrear de manera variable en el tiempo, también en base al contorno de distorsión del tiempo de multi-canal adjunto, la representación del dominio de tiempo distorsionada del segundo canal de audio o una versión procesada de la misma, para obtener una representación muestreada regularmente del segundo canal de audio.
En otra modalidad preferida, el descodificador de distorsión del tiempo está configurado para derivar un contorno de tiempo de multi-canal adjunto a partir de la información de contorno de distorsión del tiempo de multi-canal adjunta. Además, el descodificador de distorsión del tiempo está configurado para derivar una primera forma de ventana especifica de canal individual asociada con el primero de los
canales de audio en base a la primera información de forma de ventana codificada y para derivar una segunda forma de ventana especifica de canal individual asociada con el segundo de los canales de audio en base a la segunda información de forma de ventana codificada. El descodificador de distorsión del tiempo está configurado además para aplicar la primera forma de ventana a la representación del dominio de tiempo distorsionada del primer canal de audio, para obtener una versión procesada de la representación del dominio de tiempo distorsionada del primer canal de audio y para aplicar la segunda forma de ventana a la representación del dominio de tiempo distorsionada del segundo canal de audio, para obtener una versión procesada de la representación del dominio de tiempo distorsionada del segundo canal de audio. En este caso, el descodificador de distorsión del tiempo es apto de aplicar diferentes formas de ventana a las representaciones de dominio de tiempo distorsionadas del primero y segundo canal de audio dependiendo de la formación de forma de ventana especifica de canal individual .
Se ha encontrado que es en algunos casos recomendable aplicar ventanas de diferentes formas a diferentes señales de audio en preparación de una operación de distorsión de tiempo, aún si la separación de distorsión de tiempo está basada en un contorno de distorsión del tiempo común. Por ejemplo, puede haber una transición entre un cuadro, en el cual hay un
contorno de distorsión del tiempo común para dos canales de audio y un cuadro subsecuente en el cual hay diferentes contornos de distorsión del tiempo para los dos canales de audio. Sin embargo, el contorno de distorsión del tiempo de uno de los dos canales de audio en el cuadro subsecuente puede ser una continuación no variable del contorno de distorsión del tiempo común en el cuadro presente, mientras que el contorno de distorsión del tiempo del otro canal de audio en el cuadro subsecuente puede ser variable con respecto al contorno de distorsión del tiempo común del cuadro presente. Asi, una forma de ventana que está adaptada a una evolución no variable del contorno de distorsión del tiempo es representada para uno de los canales de audio, mientras que una forma de ventana adaptada a una evolución variable del contorno de distorsión del tiempo puede ser aplicada para el otro canal de audio. Asi, la evolución diferente de los canales de audio puede ser tomada en consideración.
En otra modalidad de acuerdo con la invención', el descodificador de distorsión del tiempo puede estar configurado para aplicar un escalamiento de tiempo común, que es determinado por el contorno de distorsión del tiempo del multi-canal adjunto y diferentes, formas de ventana cuando se forman ventanas de las representaciones de dominio del tiempo de los primeros y segundos canales de audio. Se a encontrado que aún si se usan diferentes formas de ventana para la formación de
ventanas diferentes canales de audió antes de la distorsión del tiempo respectiva, el escalamiento en el tiempo del contorno de distorsión debe ser adaptado en paralelo con el fin de evitar la degradación de la impresión de audición. '
Otra modalidad de acuerdo con la invención crea un codificador de señal de audio para proveer una representación codificada de una señal de audio de multi-canal. El codificador de señal de audio comprende un proveedor de representación de audio codificada configurado para proveer selectivamente una representación de audio que comprende una información de contorno de distorsión del tiempo común, asociada comúnmente con una pluralidad de canales de audio de la señal de audio de multi-canal o una representación de audio codificada que comprende información de contorno de distorsión del tiempo individual, asociado individualmente con los diferentes canales de audio de la pluralidad de canales de audio, dependiendo de una información que describe una similaridad de diferencias entre los contornos de distorsión del tiempo asociados con canales de audio de la pluralidad de canales de audio. Esta modalidad de acuerdo con la invención está basada en el descubrimiento de que en muchos casos, múltiples canales de una señal de audio de multi-canal comprenden características de variación de altura similares. Así, es en algunos casos, eficiente incluir a la representación codificada de la señal de audio de multi-canal una información .de contorno de distorsión
del tiempo común, asociada comúnmente con una pluralidad de los canales de audio. De esta manera, la eficiencia de codificación puede ser mejorada para muchas señales. Sin embargo, se ha encontrado que para otros tipos de señales (o aún para otras porciones de una señal) no es recomendable usar tal información de distorsión del tiempo común. Asi, una codificación de señal es suficiente y puede ser obtenida si el codificador de señal de audio determina la similaridad o diferencia entre contornos de distorsión asociados con los diferentes canales de audio bajo consideración. Sin embargo, se ha encontrado que es por supuesto valioso tener una mirada en los contornos de distorsión del tiempo individuales, debido a que hay muchas señales que comprenden una representación del dominio del tiempo significativamente diferentes o representación del dominio de frecuencia significativamente diferente, aunque tienen contornos de distorsión del tiempo muy similares. Asi, se ha encontrado que la evaluación del contorno de distorsión del tiempo es un nuevo criterio para la determinación de la similaridad en las señales, que proporciona una información extra cuando se compara con una sola evaluación de las representaciones del dominio de tiempo de múltiples señales de audio o de las representaciones del dominio de frecuencia de la-s señales de audio.
En una modalidad preferida, el proveedor de representación de audio codificada está configurado para
aplicar una información de contorno de distorsión del tiempo común para obtener una versión distorsionada en el tiempo de un primero de los canales de audio y para obtener una versión distorsionada en el tiempo de un segundo de los canales de audio. El proveedor de representación de audio codificada está configurado además para proveer una primera información del dominio espectral codificada individual asociada con el primero de los canales de audio en base a la versión distorsionada en el tiempo del canal de audio y para proveer una segunda información del dominio espectral codificado individual asociada con el segundo canal de audio en base a la versión distorsionada en el tiempo del segundo de los canales de audio. Esta modalidad está basada en el descubrimiento mencionado anteriormente de que los canales de audio pueden tener contenidos de audio significativamente diferentes, aún si tienen un contorno de distorsión del tiempo muy similar. Asi, es frecuentemente recomendable proveer diferente información del . dominio espectral asociado con diferentes canales de audio, aún si los canales de audio son distorsionados en el tiempo de acuerdo con una información de distorsión del tiempo común. En otras palabras, la modalidad está basada en el descubrimiento de que no hay ninguna interrelación estricta entre la similaridad de los contornos de distorsión del tiempo y la similaridad de las representaciones del dominio de frecuencia de los diferentes canales de audio.
En otra modalidad preferida, el codificador está configurado para obtener la información de contorno de distorsión común de tal manera que el contorno de distorsión común representa un promedio de contornos de distorsión individuales asociados con el primer canal de señal de audio y con el segundo canal de señal de audio.
En otra modalidad preferida, el proveedor de representación de audio codificada está configurado para proveer una información lateral dentro de la representación codificada de la señal de audio de multi-canal, de tal manera que la información lateral indica, en una base según el cuadro de audio, si los datos de distorsión del tiempo están presentes para un cuadro si una información del contorno de distorsión del tiempo común está presenté para un cuadro. Al proveer información de si datos de distorsión del tiempo están presentes para un cuadro, es posible reducir la velocidad de bits preferida para la transmisión de la información de distorsión del tiempo. Se ha encontrado que es comúnmente referido transmitir una información que describe una pluralidad de valores de contorno de distorsión del tiempo dentro de un cuadro, si se usa la información del tiempo para tal cuadro. Sin embargo, también se ha encontrado que hay muchos cuadros para los cuales la aplicación de una distorsión del tiempo no efectúa una ventaja significativa. Todavía, se ha encontrado que es más eficiente indicar, utilizando por ejemplo un bit de
información adicional, si los datos de distorsión del tiempo para un cuadro están .disponibles. Al usar tal señalización, la transmisión de la información de distorsión del tiempo extensa (que comprende comúnmente información con respecto a una pluralidad de valores de contorno de distorsión del tiempo) puede ser omitida, ahorrando mediante esto bits.
Una modalidad adicional de acuerdo con la invención crea una representación de señal de audio de multi-canal codificada que representa una señal de audio de multi-canal. La representación de señal de audio de multi-canal comprende una representación . del dominio de frecuencia codificada que representa una pluralidad de canales de audio distorsionados en el tiempo, distorsionándose en el tiempo de acuerdo con una distorsión del tiempo común. La representación de señal de audio de multi-canal también comprende una representación codificada de una información de contorno de distorsión del tiempo común, asociada comúnmente con los canales de audio y que representan la distorsión del tiempo común.
En una modalidad preferida, la representación del dominio de frecuencia codificada comprende información del dominio de frecuencia codificada de múltiples canales de audio que tienen diferente contenido de audio. También, la representación codificada de la información de contorno de distorsión común está asociada con los múltiples canales de audio que tienen diferentes contenidos de audio.
Otra modalidad de acuerdo con la invención crea un método para proveer una representación de señal de audio multi-canal codificada en base a una representación de señal de audio de multi-canal codificada. Este método puede ser complementado por cualquiera de los elementos y funcionalidades descritos en la presente también para el aparato de la invención.
Todavía otra modalidad de acuerdo con la invención crea un método para proveer una representación codificada de una señal de audio de multi-canal. Este método puede ser complementado por cualquiera de los elementos y funcionalidades descritos en la presente también para el aparato de la invención .
Todavía otra modalidad de acuerdo con la invención crea un programa de computadora para implementar los métodos mencionados anteriormente.
BREVE DESCRIPCIÓN DE LAS FIGURAS
Las modalidades de acuerdo con la invención serán descritas subsecuentemente tomando referencias a las figuras adjuntas en las cuales:
La figura 1 muestra un diagrama de bloques esquemático de un codificador de audio de distorsión de tiempo;
La figura 2 muestra un diagrama de bloques esquemático de un descodificador de audio de distorsión de tiempo;
La figura 3 muestra un diagrama de bloques esquemático de un descodificador de señal de audio de acuerdo con una modalidad de la invención;
La figura 4 muestra un diagrama de flujo de un método para proveer una representación de señal de audio descodificada de acuerdo con una modalidad de la invención;
La figura 5 muestra un extracto detallado de un diagrama de bloques esquemático de un descodificador de señal de audio de acuerdo con una modalidad de la invención;
La figura 6 muestra un extracto detallado de un diagrama de flujo de un método para proveer una representación de señal de audio descodificada de acuerdo con una modalidad de la invención;
Las figuras 7a, 7b muestran una representación gráfica de una reconstrucción del contorno de distorsión de tiempo de acuerdo con una modalidad de la invención;
La figura 8 muestra otra representación gráfica de una reconstrucción de un contorno de distorsión de tiempo de acuerdo con una modalidad de la invención;
Las figuras 9a y 9b muestran algoritmos para el cálculo del contorno de distorsión de tiempo;
La figura 9c muestra una tabla de un mapeo de un índice de proporción de distorsión de tiempo a un valor de proporción de distorsión de tiempo;
Las figuras 10a y 10b muestran representaciones de
algoritmos para el cálculo de un contorno de tiempo, una posición de muestra, una longitud de transición, una "primera posición" y una "última posición";
La figura 10c muestra una representación de algoritmos para un cálculo de forma de ventana;
Las figuras lOd y lOe muestran una representación de algoritmos para una aplicación de una ventana;
La figura lOf muestra una representación de algoritmos para un re - muestreo variable en el tiempo;
La figura lOg muestra una representación gráfica de algoritmos para un procesamiento de cuadro de distorsión post -tiempo y para superposición y adición;
Las figuras lia y 11b muestran una leyenda;
La figura 12 muestra una representación gráfica de un contorno de tiempo que puede ser extraído de un contorno de distorsión de tiempo;
La figura 13 muestra un diagrama de bloques detallado esquemático de un aparato para proveer un contorno de distorsión, de acuerdo con una modalidad de la invención;
La figura 14 muestra un diagrama de bloques esquemático de un descodificador de señal de audio de acuerdo con otra modalidad de la invención;
La figura 15 muestra un diagrama de bloques esquemático de otro calculador de contorno de distorsión de tiempo, de acuerdo con una modalidad de la invención;
Las figuras 16a, 16b muestran una representación gráfica del cálculo de valores de nodo de distorsión de tiempo, de acuerdo con una modalidad de la invención;
La figura 17 muestra un diagrama de bloques esquemático de otro codificador de señal de audio de acuerdo con una modalidad de la invención;
La figura 18 muestra un diagrama de bloques esquemático de otro descodificador de señal de audio de acuerdo con una modalidad de la invención y
Las figuras 19a - 19f muestran representaciones de elementos de sintaxis de una corriente de audio, de acuerdo con una modalidad de la invención.
DESCRIPCIÓN DETALLADA DE LAS MODALIDADES
1. Codificador de audio de distorsión de tiempo de acuerdo con la figura 1
Ya que la presente invención está relacionada con la codificación de audio de formación de tiempo y descodificación de audio de distorsión de tiempo, se dará una vista general breve de un prototipo de codificador de audio de formación de tiempo y un descodificador de audio de distorsión de tiempo en los cuales se puede aplicar la presente invención.
La figura 1 muestra un diagrama de bloques esquemático de un codificador de audio de distorsión de tiempo, al cual se pueden integrar algunos aspectos y modalidades de la
invención. El codificador de señal de audio 100 de la figura 1 está configurado para recibir una señal de audio de entrada 110 y proveer una representación codificada de la señal de audio de entrada 110 en una secuencia de cuadros. El codificador de audio 100 comprende un muestreador 104, que está adaptado para tomar muestras de la señal de audio 110 (señal de entrada) para derivar bloques de señales (representaciones muestreadas) 105 usadas como base para una transformada de dominio de frecuencia. El codificador de audio 100 comprende además un calculador de ventana de transformada 106, adaptado para derivar ventanas de escalamiento para las representaciones muestreadas 105 emitidas del muestreador 104. Estas son introducidas a un formador de ventana 108 que es apto para aplicar las ventanas de escalamiento a las representaciones muestreadas 105 derivadas del muestreador 104. En algunas modalidades, el codificador de audio 100 puede comprender adicionalmente un transformador de dominio de frecuencia 108a con el fin de derivar una representación de dominio de frecuencia (por ejemplo, en forma de coeficiente de transformada) de las representaciones muestreadas y escaladas 105. Las representaciones de dominio de frecuencia pueden ser procesadas o transmitidas adicionalmente como una representación codificada de la señal de audio 110.
El codificador de audio 100 usa además un contorno de altura 112 de la señal de audio 110, que puede ser provisto al
codificador de audio 100 o que puede ser derivado por el codificador de audio 100. El codificador de audio 100 puede por consiguiente comprender opcionalmente un estimador de altura para derivar el contorno de altura 112. El muestreador 104 puede operar sobre una representación continua de la señal de audio de entrada 110. Alternativamente, el muestreador 104 puede operar sobre una representación ya muestreada de la señal de audio de entrada 110. En el último caso, el muestreador 104 puede volver a tomar muestras de la señal de audio 110. El muestreador 104 puede por ejemplo estar adaptado a la superposición de bloques de audio vecinos de distorsión de tiempo de tal manera que la porción de superposición tiene una altura constante o variación de altura reducida dentro de cada uno de los bloques de entrada después de la toma de muestras.
El calculador de ventana de transformada 106 deriva las ventanas de escalamiento para los bloques de audio dependiendo de la distorsión de tiempo efectuada por el muestreador 104. Para este fin, un bloque de ajuste de velocidad de muestras opcional 114 puede estar presente con el fin de definir una regla de distorsión de tiempo usada por el muestreador, que es luego también provista al especulador de ventana de transformada 106. En una modalidad alternativa, el bloque de ajuste de velocidad de muestreo 114 puede ser emitido y el contorno de altura 112 puede ser provisto directamente al calculador de ventana de transformada 106, que puede por si
mismo efectuar los cálculos apropiados.
Además, el muestreador 104 puede comunicar el muestreo aplicado al calculador de ventana de transformada 106 con el fin de permitir el cálculo de ventanas de escalamiento apropiadas .
La distorsión de tiempo es efectuada de tal manera que un contorno de altura de los bloques de audio muestreados distorsionados en tiempo y muestreados por el muestreador 104 es más constante que el contorno de altura de la señal de audio original 110 dentro del bloque de entrada.
2. Descodificador de audio de distorsión de tiempo de acuerdo con la figura 2.
¦ La figura 2 muestra un diagrama de bloques esquemático de un descodificador de audio de distorsión de tiempo 200 para el procesamiento de una primera representación distorsionada en el tiempo y muestreada o simplemente representación distorsionada en el tiempo de un primero y segundo cuadro de una señal de audio que tiene una señal de audio en los cuales el segundo cuadro sigue el primer cuadro y para el procesamiento adicional de una segunda representación distorsionada en el tiempo del segundo cuadro y de un tercer cuadro en seguida del segundo cuadro en la secuencia de cuadros. El descodificador de audio 200 comprende un calculador de ventana de transformada 210 apto para derivar una primera
ventana de escalamiento para la primera representación distorsionada en el tiempo 211a utilizando información en cuanto a un contorno de altura 212 del primero y el segundo cuadro y para derivar una segunda ventana de escalamiento para la segunda representación distorsionada en el tiempo 211b utilizando información en cuanto a un contorno de altura del segundo y tercer cuadro, en donde las ventanas de escalamiento pueden tener números idénticos de muestras y en donde el primer número de muestras usadas para desvanecer la primera ventana de escalamiento puede diferir del segundo número de muestras usadas para desvanecer la segunda ventana de escalamiento. El descodificador de audio 200 comprende además un formador de ventana 216 apto para . aplicar la primera ventana de escalamiento a la primera representación de distorsión de tiempo y para aplicar la segunda ventana de escalamiento a la segunda representación distorsionada en el tiempo. El descodificador de audio 200 comprende además un re muestreador 218 adaptado para distorsionar inversamente el tiempo la primera representación distorsionada en el tiempo escalada para derivar una primera representación muestreada utilizando la información en cuanto al contorno de altura del primero y el segundo cuadro y para distorsionar inversamente en el tiempo la segunda representación escalada para derivar una segunda representación muestreada utilizando la información en cuanto al contorna de altura del segundo y el tercer cuadro, de
tal manera que una porción de la 'primera representación muestreada correspondiente al segundo cuadro comprende un contorno de altura que es igual, dentro del intervalo de tolerancia predeterminado, a un contorno de altura de la porción de la segunda representación muestreada correspondiente al segundo cuadro. Con el fin de derivar la ventana de escalamiento, el calculador de ventana de transformada 210 puede ya sea recibir el contorno de altura 212 directamente o recibir información en cuanto a la distorsión de tiempo desde un ajustador de velocidad de muestras opcional 220, que recibe el contorno de altura 212 y que deriva una estrategia de distorsión de tiempo inversa, de tal manera que las posiciones de muestra en una escala de tiempo lineal para las muestras de superposición son idénticas o caso idénticas y espaciadas regularmente, de tal manera que la altura se convierte en la misma en las regiones de superposición y opcionalmente las longitudes de desvanecimiento diferentes de partes de ventana traslapantes antes de la distorsión de tiempo inversa se vuelven de la misma longitud después de la distorsión de tiempo inversa.
El descodificador de audio 200 comprende además un adicionador opcional 230, que está adaptado para agregar la porción de la primera representación muestreada correspondiente al segundo cuadro y la porción de la segunda representación muestreada correspondiente al segundo cuadro para derivar una
representación de construida de segundo cuadro de la señal de audio como una señal de salida 242. La primera representación distorsionada en el tiempo y la segunda representación distorsionada en el tiempo podrían ser provistas, en una modalidad, como una entrada al descodificador de audio 200. En una modalidad adicional, el descodificador de audio 200 puede comprender opcionalmente un transformador de dominio de frecuencia inverso 240, que puede derivar las primeras y segundas representaciones distorsionadas en" el tiempo de representaciones de dominio de frecuencia de las primeras y segundas representaciones distorsionadas en el tiempo provistas a la entrada del transformador de dominio de frecuencia inverso 240.
3. Descodificador de señal de audio de distorsión de tiempo de acuerdo con la Figura 3
En lo siguiente, se describirá un descodificador de señal de audio simplificado. La Figura 3 muestra un diagrama de bloques esquemático de este descodificador ,de señal audio simplificado 300. El descodificador de señal de audio 300 está configurado para recibir la representación de señal de audio codificada 310, y proveer, en base a la misma, una representación de señal de audio descodificada 312, en donde la representación de señal de audio codificada 310 comprende una información de evaluación del contorno de distorsión . de tiempo.
El descodificador de señal de audio 300 comprende un calculador de contorno de formación de tiempo 320 configurado para generar datos de contorno de distorsión de tiempo 322 en base a la información de evolución de contorno de distorsión de tiempo, tal información de evolución del contorno de distorsión de tiempo describe una evolución temporal del contorno de distorsión de tiempo, y tal información de evolución del contorno de distorsión de tiempo está comprendida por la representación de señal de audio codificada 310. Cuando se derivan los datos de contorno de distorsión de tiempo 322 de la información de evolución del contorno de distorsión de tiempo 312, el calculador de contorno de distorsión de tiempo 320 se reinicia repetidamente desde un valor de inicio de contorno de distorsión de tiempo predeterminada, como se describirá en detalle en lo siguiente. El reinicio puede tener la consecuencia de que el contorno de distorsión de tiempo comprende discontinuidades (cambios graduales que son más grandes que las etapas codificadas por la información de evolución del contorno de formación de tiempo 312) . El decodificador de señal de audio 300 comprende además un reescalador de datos de contorno de formación de tiempo 330 que está configurado para reescalar por lo menos una porción de los datos de contorno de distorsión de tiempo 322, de tal manera que se evita una discontinuidad en el reinicio del cálculo del contorno de distorsión de tiempo, es reducido o eliminado, en
una versión reescalada 332 del contorno de distorsión de tiempo .
El descodificador de señal de audio 300 también comprende un descodificador de distorsión 340 configurado para proveer una representación de señal de audio descodificada 312 en base a la representación de señal de audio codificada 310 y que utiliza la versión reescalada 332 del contorno de distorsión de tiempo.
Para poner el descodificador de señal de audio 300 en el contexto de decodificación de audio de distorsión de tiempo, se debe notar que la representación de señal de audio codificada 310 puede comprender una representación codificada de los coeficientes de transformada 211 y también una representación codificada del contorno de altura 212 (también designado como el contorno de distorsión de tiempo) . El calculador de contorno de distorsión de tiempo 320 y el reescalador de datos de contorno de distorsión de tiempo 330 pueden estar configurados para proveer una representación reconstruida del contorno de altura 212 en forma de la versión reescalada 332 del contorno de distorsión de tiempo. El descodificador de distorsión 340 por ejemplo, puede tomar la funcionalidad de la formación de ventana 216, la retoma de muestras 218, el ajuste de velocidad de muestreo 220 y el ajuste de la forma de ventana 210. Además, el descodificador de distorsión 340 puede por ejemplo comprender opcionalmente la
funcionalidad de la transformada inversa 240 y el traslape/adición 230, de tal manera que la representación de señal de audio descodificada 312 puede ser equivalente a la señal de audio de salida 232 del descodificador de audio de distorsión de tiempo 200.
Al aplicar el re-escalamiento a los datos de contorno de distorsión de tiempo 322, se puede obtener una versión reescalada continua (o por lo menos aproximadamente continua) 332 del contorno de distorsión de tiempo, asegurando mediante esto que se evite un sobreflujo o subflu o numérico aún cuando se usa una información de evolución de contorno de distorsión de tiempo de variación relativa eficiente de codificar.
4. Método para proveer una representación de señal de audio descodificada de acuerdo con la Figura 4
La Figura 4 muestra un diagrama de flujo de un método para proveer una representación de señal de audio descodificada en base a una representación de señal de audio codificada que comprende una información de evolución del contorno de distorsión de tiempo, que puede ser efectuada por el aparato 300 de acuerdo con la Figura 3. El método 400 comprende una primera etapa 410 para generar los datos de contorno de distorsión de tiempo, reiniciándose repetidamente desde un valor de inicio de contorno de distorsión de tiempo predeterminado, en base a la información de evolución de
contorno de distorsión de tiempo que describe una evolución temporal del contorno de distorsión de tiempo.
El método 400 comprende además una etapa 420 de reescalamiento de lo menos una porción de los datos de control de distorsión de tiempo, de tal manera que una discontinuidad en uno de los reinicios es evitada, reducida o eliminada en una versión reescalada del contorno de distorsión de tiempo.
El método 400 comprende además una etapa 430 de proveer una representación de señal de audio descodificada en base a la representación de señal de audio codificada utilizando la versión reescalada del contorno de distorsión de tiempo .
5. Descripción detallada de una modalidad de acuerdo con la invención con referencia a las Figuras 5-9
En lo siguiente, se describirá una modalidad de acuerdo con la invención en detalle con referencia a las Figuras 5-9.
La Figura 5 muestra un diagrama de bloques esquemático de un aparato 500 para proveer información de control de distorsión de tiempo 512 en base a la información de evolución del contorno de distorsión de tiempo 510. El aparato 500 comprende medios 520 para proveer una información de contorno de distorsión de tiempo reconstruida 522 en base a la información de evolución de contorno de distorsión de tiempo
510, y un calculador de información de control de distorsión de tiempo 530 para proveer la información de control de distorsión de tiempo 512 en base a la información de contorno de distorsión de tiempo reconstruida 522.
Medios 520 para proveer la información de contorno de distorsión de tiempo reconstruida
En lo siguiente, se describirá la estructura y funcionalidad de los medios 520. Los medios 520 comprenden un' calculador de contorno de distorsión de tiempo 540, que está configurado para recibir la información de evolución de contorno de distorsión de tiempo 510 y para proveer, en base a la misma, una nueva información de porción de contorno de distorsión 542. Por ejemplo, un conjunto de información de evolución del contorno de distorsión de tiempo puede ser transmitido al aparato 500 para cada cuadro de la señal de audio a ser reconstruido. No obstante, el conjunto de información de evolución de contorno de distorsión de tiempo 510 asociado con el cuadro de la señal de audio a ser reconstruido puede ser usado para la reconstrucción de una pluralidad de cuadros de la señal de audio. Similarmente, una pluralidad de conjuntos de información de evolución de contorno de distorsión de tiempo puede ser usado para la reconstrucción del contenido de audio de un solo cuadro de la señal de audio, como se discutirá en detalle en lo siguiente. Como conclusión,
se puede afirmar que en algunas modalidades, la información de evolución del contorno de distorsión de tiempo 510 puede ser actualizada a la misma velocidad a la cual conjuntos del coeficiente de dominio de transformada de la señal de audio a ser reconstruida o actualizada (una porción de contorno de distorsión de tiempo por cuadro de la señal de audio) .
El calculador de contorno de distorsión de tiempo 540 comprende un calculador de valor de modo de distorsión 544, que está configurado para calcular una pluralidad (o secuencia temporal) de valores de nodo de contorno de distorsión en base a la pluralidad (o secuencia temporal) de valores de proporción de contorno de distorsión de tiempo (o índices de proporción de distorsión de tiempo) , en donde los valores de proporción de distorsión de tiempo (o índices) están comprendidos por la información de evolución del contorno de distorsión de tiempo 510. Para este propósito, el calculador de valor de nodo de distorsión 544 está configurado para iniciar la provisión de los valores de nodo de contorno de distorsión de tiempo a un valor de partida predeterminado (por ejemplo 1) y para calcular valores de nodo de contorno de distorsión de tiempo subsecuentes que utilizan los valores de proporción de contorno de distorsión de tiempo, como se discutirá posteriormente en la presente.
Además, el calculador de contorno de distorsión de tiempo 540 comprende opcionalmente un interpolador 548 que está
configurado para interpolar entre, valores de nodo de contorno de distorsión de tiempo subsecuentes. Asi, es obtiene la descripción 542 de la nueva porción de contorno de distorsión de tiempo, en donde la nueva porción de contorno de distorsión de tiempo se inicia comúnmente a partir del valor de partida predeterminado usado por el calculador de valor de nodo de distorsión 524. Además, los medios 520 están configurados para considerar porciones de contorno de distorsión de tiempo adicionales, es decir una llamada "última porción de contorno de distorsión de tiempo" y una llamada "porción de contorno de distorsión de tiempo actual" para la provisión de una plena sección de contorno de distorsión de tiempo. Para este propósito, los medios 520 están configurados para guardar la llamada "última porción de contorno de distorsión de tiempo" y la llamada "porción de contorno de distorsión de tiempo actual" en una memoria no mostrada en la Figura 5.
Sin embargo, los medios 520 también comprenden un reescalador 550, que está configurado para reescalar la "última porción de contorno de distorsión de tiempo" y la "porción de contorno de distorsión de tiempo actual" para evitar (o reducir o eliminar) cualesquier discontinuidades en la plena sección de contorno de distorsión de tiempo, que está basada en la "última porción de contorno de distorsión de tiempo", la "porción . de contorno de distorsión de tiempo actual" y la "nueva porción de contorno de distorsión de tiempo". Para este propósito, el re-
escalador 550 está configurado para recibir la descripción almacenada de la "última porción de contorno de distorsión de tiempo" y de la "porción de contorno de distorsión de tiempo actual" y para reescalar conjuntamente la "última porción de contorno de distorsión de tiempo" y la "porción de contorno de distorsión de tiempo actual", para obtener versiones reescaladas de la "última porción de contorno de distorsión de tiempo" y la "porción de contorno de distorsión de tiempo actual". Detalles concernientes con el re-escalamiento efectuado por el re-escalador 550 serán discutidos a continuación, con referencia a las Figuras 7a, 7b y 8.
Además, el re-escalador 550 puede también estar configurado para recibir, por ejemplo de una memoria no mostrada en la Figura 5, un valor de suma asociado con la "última porción de contorno de distorsión de tiempo" y otro valor de suma asociado con la "porción de contorno de distorsión de tiempo actual". Estos valores de suma son algunas veces designado con "last_warp_sum" y "cur_warp_sum", respectivamente. El re-escalador 550 está configurado para reescalar los valores de suma asociados con las porciones de contorno de distorsión de tiempo que utilizan el mismo factor de re-escalamiento con los cuales las porciones de contorno de distorsión de tiempo correspondientes son reescaladas. Asi, se tienen valores de suma «reescalados .
En algunos casos, los medios 520 pueden comprender un
actualizador 560, que está configurado para actualizar repetidamente las porciones de contorno de distorsión de tiempo introducidas al re-escalador 550 y también los valores de suma introducidos al re-escalador 550. Por ejemplo, el actualizador 560 puede estar configurado para actualizar dicha información a la velocidad de cuadro. Por ejemplo, la "nueva porción de contorno de distorsión de tiempo" del presente ciclo de cuadros puede servir como la "porción de contorno de distorsión de tiempo actual" en un siguiente ciclo de cuadro. Similarmente, la "porción de contorno de distorsión de tiempo actual" reescalada del ciclo de cuadros actual puede servir como la "última porción de contorno de distorsión de tiempo" en un siguiente ciclo de cuadros. Asi, se crea una implementación eficiente en memoria, debido a que la "última porción de contorno de distorsión de tiempo" del ciclo de cuadros actual puede ser descartada después de la consumación del ciclo de cuadros actual.
Para resumir lo anterior, los medios 520 están configurados para proveer, para cada ciclo de cuadros (con la excepción de algunos ciclo de cuadros especiales, por ejemplo al comienzo de una secuencia de cuadros, o al final de una secuencia de cuadros, o en un cuadro en el cual la distorsión de tiempo es inactiva) una descripción de una sección de contorno de distorsión de tiempo que comprende una descripción de una "nueva porción de contorno de distorsión de tiempo", de
una "porción de contorno de distorsión de tiempo actual reescalada" y de una "última porción de contorno de distorsión de tiempo reescalada". Además, los medios 520 pueden proveer, para cada ciclo de cuadro (con la excepción del ciclo de cuadros especial mencionado anteriormente) una representación de valores de suma de contorno de distorsión, por ejemplo, que comprenden un "nuevo valor de toma de porción de contorno de distorsión .de tiempo", un "valor de suma de contorno de distorsión de tiempo actual reescalado" y un "último valor de suma de contorno de distorsión de tiempo reescalado".
El calculador de información de control de distorsión de tiempo 530 está configurado para calcular la información de control de distorsión de tiempo 512 en base a la información de contorno de distorsión de tiempo reconstruida provista por los medios 520. Por ejemplo, el calculador de información de control de distorsión de tiempo comprende un calculador de contorno de tiempo 570, que está configurado para calcular un contorno de tiempo 572 en base a la información de control de distorsión de tiempo reconstruida. Además, el calculador de información de contorno de distorsión de tiempo 530 comprende un calculador de posición de muestras 574, que está configurado para recibir el contorno de tiempo 572 y proveer, en base a lo mismo, una información de posición de muestra, por ejemplo en forma de un vector de posición de muestra 576. El vector de posición de muestra 576 describe la distorsión de tiempo
efectuada, por ejemplo por el re-muestreador 218.
El calculador de información de control de distorsión de tiempo 530 también comprende un calculador de longitud de transición, que está configurado para derivar una información de longitud de transición a partir de la información de control de distorsión de tiempo reconstruida. La información de longitud de transición 582 puede comprender por ejemplo una información que describe una longitud de transición izquierda y una información que describe una longitud de transición derecha. La longitud de transición puede depender por ejemplo de la longitud de segmento de tiempo descritos por la "última porción de contorno de distorsión de tiempo", la "porción de contorno de distorsión de tiempo actual" y la "nueva porción de contorno de distorsión de tiempo". Por ejemplo, la longitud de transición puede ser acortada (cuando se compara con una longitud de transición predeterminada) si la extensión temporal de un segmento de tiempo descrito por la "última porción de contorno de distorsión de tiempo" es más corta que una extensión temporal del segmento de tiempo descrito por la "porción de contorno de distorsión de tiempo actual", o si la extensión temporal de un segmento de tiempo descrita por la "nueva porción de contorno de distorsión de tiempo" es más corta que la extensión temporal del segmento de tiempo descrito por la "porción de contorno de distorsión de tiempo actual".
Además, el calculador de información de control de
distorsión de tiempo 530 puede comprender además un calculador de primera y última posición 584, que está configurado para calcular una llamada "primera posición" y una llamada "última posición" en base a la longitud de transición izquierda y derecha. La "primera posición" y la "última posición" incrementan la eficiencia del re-muestreador, ya que las regiones fuera de estas posiciones son idénticas a cero después de la formación de ventanas y. por consiguiente no necesitan ser tomados en cuenta para la distorsión de tiempo. Se debe notar aquí que el vector de posición de muestra 576 comprende, por ejemplo, información requerida por la distorsión de tiempo efectuada por el re-muestreador 280. Además, la longitud de transición izquierda y derecha 582 y la "primera posición" y "última posición" 586 constituyen información, que es por ejemplo, requerida por el formador de ventanas 216.
Asi, se puede decir que los medios 520 y el calculador de información de control de distorsión de tiempo 530 pueden emprender conjuntamente la funcionalidad del ajuste de velocidad de muestras 220, del ajuste de forma de ventana 210 y del cálculo de posición de toma de muestras 219.
En lo siguiente, la funcionalidad de un descodificador de audio que comprende los medios 520 y el calculador de información de control de distorsión de tiempo 530 serán descritos con referencia a las Figuras. 6, 7a, 7b, 8, 9a-9c, 10a-10g, lia, 11b y 12·.
La Figura 6 muestra un diagrama de flujo de un método¦ para descodificar una representación codificada de una señal de audio, de acuerdo con una modalidad de la invención. El método 600 comprende proveer una información de contorno de distorsión de tiempo reconstruida, en donde la provisión de la información de contorno de distorsión de tiempo reconstruida comprende calcular 610 valores de nodo de distorsión, interpolar 620 entre los valores de nodo de distorsión y reescalamiento 630 de una o más porciones de contorno de distorsión previamente calculadas y uno o más valores de suma de contorno de distorsión previamente calculados. El método 600 comprende además calcular 640 información de control de distorsión de tiempo utilizando una "nueva porción de contorno de distorsión de tiempo" obtenida en las etapas 610 y 620, las porciones de contorno de distorsión de tiempo previamente calculadas reescaladas ("porción de contorno dé distorsión de tiempo actual" y "última porción de contorno de distorsión de tiempo") y también, opcionalmente, utilizando los valores de suma de contorno de distorsión previamente calculados reescalados. Como resultado, una información de contorno de tiempo y/o una información de posición de muestra y/o una información de longitud de transición y/o una primera porción y información de última posición puede ser obtenida en la etapa 640.
El método 600 comprende además efectuar 650 ' la
reconstrucción de señal distorsionada . en el tiempo utilizando la información de control de distorsión de tiempo obtenida en la etapa 640. detalles concernientes con la reconstrucción de señal de distorsión de tiempo serán descritos subsecuentemente.
El método 600 también comprende una etapa 660 de actualizar una memoria como se describirá posteriormente en la presente .
Cálculo de las porciones de contorno de distorsión de tiempo
En lo siguiente, detalles concernientes con el cálculo de las porciones de contorno de distorsión de tiempo serán descritos, con referencia a las Figuras 7a, 7b, 8, 9a, 9b, 9c.
Se supondrá ' que un estado inicial está presente, que es ilustrado en una representación gráfica 710 de la Figura 7a. Como se puede ver, una primera porción de contorno de distorsión 716 (porción de contorno de distorsión 1) y una segunda porción de contorno de distorsión 718 (porción de contorno de distorsión '2) están presentes. Cada una de .las porciones de contorno de distorsión comprenden comúnmente una pluralidad de valores de datos de contorno de distorsión discretos, que son almacenados comúnmente en una memoria. Los diferentes valores de datos del contorno de distorsión están asociados con los valores de tiempo, en donde un tiempo es mostrado en una absisa 712. La magnitud de los valores de datos
de contorno de distorsión son mostrados en las ordenadas 714. Como se puede ver, la primera porción de contorno de distorsión tiene un valor final de uno y la segunda porción de contorno de distorsión tiene un valor de partida de uno, en donde el valor de uno puede ser considerado como un "valor predeterminado". Se debe notar que la primera porción de contorno de distorsión 716 puede ser considerada como la "última porción de distorsión de tiempo" (también designada como "last_ arp_contour" ) , mientras que la segunda porción de contorno de distorsión 718 puede ser considerada como una "porción de contorno de distorsión de tiempo actual" (también denominada como "cur_warp-contour" ) .
Iniciando del estado inicial, se calcula una nueva porción de contorno de distorsión, por ejemplo, en las etapas 610, 620 del método 600. Asi, los valores de datos de contorno de distorsión de la tercera porción de contorno de distorsión (también designada como "porción de contorno de distorsión 3" o "nueva porción de contorno de distorsión de tiempo" o "new_warp-contour" ) es calculada. El cálculo puede ser separado, por ejemplo, en un cálculo de valores' de nodo de distorsión, de acuerdo con un algoritmo 910 mostrado en la Figuras 9a y una interpolación 620 entre los valores de nodo de distorsión de acuerdo con el algoritmo 920 mostrado en la Figura 9a. Asi, se obtiene una nueva porción de contorno de distorsión 722, que inicia a partir del valor predeterminado (por ejemplo, uno) y que es mostrado en una representación
gráfica 720 de la Figura 7a. Como se puede ver, la primera porción de contorno de distorsión de tiempo 716, la segunda porción de contorno de distorsión de tiempo 718 y la tercera porción de contorno de distorsión de tiempo nueva están asociadas con intervalos de tiempo subsecuentes y contiguos. Además, se puede ver que hay una discontinuidad 724 entre un punto final 718b de la segunda porción de contorno de distorsión de tiempo 718 y un punto de inicio 722a de la tercera porción de contorno de distorsión de tiempo.
Se debe notar aquí que la discontinuidad 724 comprende comúnmente una magnitud que es más grande que una variación entre cualesquier dos valores de datos de contorno de distorsión temporalmente adyacentes del contorno de distorsión de tiempo dentro de una porción de contorno de distorsión de tiempo. Esto es debido al hecho de que el valor de inicio 722a de la tercera porción de contorno de distorsión de tiempo 722 es forzada a un valor predeterminado . (por ejemplo, uno) , independiente del valor final 718b de la segunda porción de contorno de distorsión de tiempo 718. Se debe notar que la discontinuidad 724 es por consiguiente más grande que la variación inevitable entre dos valores de datos de contorno de distorsión discretos adyacentes.
No obstante, esta discontinuidad entre la segunda porción de contorno de distorsión de tiempo 718 y la tercera porción de contorno de' distorsión de tiempo 722 seria
perjudicial para el uso adicional de los valores de datos de contorno de distorsión de tiempo.
Asi, la primera porción de contorno de distorsión de tiempo y la segunda porción de contorno de distorsión de tiempo son reescaladas conjuntamente en la etapa 630 del método 600. Por ejemplo, los valores de datos del contorno de distorsión de tiempo de la primera porción del contorno de distorsión de tiempo 716 y los valores de datos del contorno de distorsión de tiempo de la segunda porción del contorno de distorsión de tiempo 718 son reescalados por multiplicación con un factor de re-escalamiento (también designado como "norm_fac") . Asi, se obtiene una versión reescalada 716 de la primera porción de contorno de distorsión de tiempo 716 y también una versión reescalada 718' de la segunda porción de contorno de distorsión de tiempo 718. En contraste, la tercera porción de contorno de distorsión de tiempo es comúnmente dejada sin aceptar en esta etapa de re-escalamiento, como se puede ver en una representación gráfica 730 de la Figura 7a. El re-escalamiento puede ser efectuado de tal manera que el punto final reescalado 718b comprende por lo menos aproximadamente el mismo valor de datos como el punto de partida 722a de la tercera porción de contorno de distorsión de tiempo 722. Asi, la versión reescalada 716' de la primera porción de contorno de distorsión de tiempo, la versión reescalada 718' de la segunda porción de contorno de distorsión de tiempo y la tercera porción de
contorno de distorsión de tiempo 722 forman con untamente una sección de contorno de distorsión de tiempo (aproximadamente) continua. En particular, el escalamiento puede ser efectuado de tal manera que la diferencia entre el valor de datos del punto final reescalado 718b y el punto de partida 722 no es mayor- que un máximo de la diferencia entre cualesquier dos valores de datos adyacentes de las porciones de contorno de distorsión de tiempo 716' , 718' , 722.
Asi, la sección de contorno de distorsión de tiempo aproximadamente continua que comprende las porciones de contorno de distorsión de tiempo escaladas 716' , 718' y la porción de contorno de distorsión de tiempo original 722 es usada para el cálculo de la información de control de distorsión de tiempo que es efectuada en la etapa 640. Por ejemplo, la información de control de distorsión de tiempo puede ser calculada para un cuadro de audio asociado temporalmente con la segunda porción de contorno de distorsión de tiempo 718.
Sin embárgo, después del cálculo de la información de control de distorsión de tiempo en la etapa 640, se puede efectuar una reconstrucción de señal distorsionada en el tiempo en la etapa 650, que será explicada en más detalle posteriormente en la presente.
Subsecuentemente, se requiere obtener información de control de distorsión de tiempo para un siguiente cuadro de
audio. Para este propósito, la versión reescalada 716' de la primera porción del contorno de distorsión de tiempo puede ser descartada para ahorrar memoria, debido a que ya no se necesita. Sin embargo, la versión reescalada 716' puede naturalmente también ser guardada para cualquier propósito. Además, la versión reescalada 718' de la segunda porción de contorno de distorsión de tiempo toma el lugar de la "última porción de contorno de distorsión de tiempo" para el nuevo cálculo, como se puede ver en una representación gráfica 740 de la Figura 7b. Además, la tercera porción de contorno de distorsión de tiempo 722, que tomó el lugar de la "nueva porción de contorno de distorsión de tiempo" en el cálculo previo, toma el papel de la "porción de contorno de distorsión de tiempo actual" para un siguiente cálculo. La asociación es mostrada en la representación gráfica 740. .
Subsecuentemente a esta actualización de la memoria
(etapa 660 del método 600), se calcula una nueva porción del contorno de distorsión de tiempo 752 como se puede ver en la representación gráfica 750. Para este propósito, las etapas 610 y 620 del método 600 pueden ser re-ejecutadas con nuevos datos introducidos. La cuarta porción de contorno de distorsión de tiempo 752 toma el papel de la "nueva porción de del tiempo" por ahora. Como se puede ver, hay comúnmente una discontinuidad entre un punto final 722b de la tercera porción de contorno de distorsión de tiempo y un punto de partida 750a de la cuarta
porción de contorno de distorsión de tiempo 752. Esta discontinuidad 754 es reducida o eliminada por un reescalamiento subsecuente (etapa 630 del método 600) de la versión reescalada 718' de la segunda porción de contorno de distorsión de tiempo y de la versión original de la tercera porción de contorno de distorsión de tiempo 722. Asi, una versión reescalada dos veces 718" de la segunda porción de contorno de distorsión de tiempo y una versión reescalada una vez 722' de la tercera porción de contorno de distorsión de tiempo son obtenidas, como se puede ver de una representación gráfica 760 de la Figura 7b. Como se puede ver, las porciones de contorno de distorsión de tiempo 718", 722' , 752 forman una sección de contorno de distorsión de tiempo por lo menos aproximadamente continua, que puede ser usada para el cálculo de la información de control de distorsión de tiempo en la red-ejecución de la etapa 640.
Por ejemplo, la información de control de distorsión de tiempo puede ser calculada en base a las porciones de contorno de distorsión de tiempo 718", 722', 752, tal información de control de distorsión de tiempo está asociada con un cuadro de tiempo _ de señal de audio centrado sobre la segunda porción de contorno de distorsión de tiempo.
Se debe notar que en algunos casos es deseable tener un valor de suma de contorno de distorsión asociado para cada una de las porciones de contorno de distorsión de tiempo. Por
ejemplo, un primer valor de suma de contorno de distorsión puede ser asociado con la primera porción de contorno de distorsión de tiempo, un segundo valor de suma de contorno de distorsión puede ser asociado con la segunda porción de contorno de distorsión de tiempo y asi sucesivamente. Los valores de suma de contorno de distorsión pueden ser usados por ejemplo, para el cálculo de la información de control de distorsión de tiempo en la etapa 640.
Por ejemplo, el valor de suma de contorno de distorsión puede representar una suma de los valores de datos de contorno de distorsión de una porción de contorno de distorsión de tiempo respectiva. Sin embargo, ya que las porciones de contorno de distorsión de tiempo son escaladas, es algunas veces deseable también escalar el valor de suma de contorno de distorsión de tiempo, de tal manera que el valor de suma del contorno de distorsión de tiempo sigue la característica de su porción de contorno de distorsión de tiempo asociada. Así, un valor de suma de contorno de distorsión asociado con la segunda porción de contorno de distorsión de tiempo 718 puede ser escalado (por ejemplo, por el mismo factor de escalamiento) cuando la segunda porción de contorno de distorsión de tiempo 718 es escalada para obtener la porción escalada 718' de la misma. Similarmente, el valor de suma de contorno de distorsión asociado con la primera porción de contorno de distorsión de tiempo 716 puede ser escalado (por
ejemplo, con el mismo factor de escalamiento) cuando la primera porción de contorno de distorsión de tiempo 716 es escalada para obtener la porción escalada 716' de la misma, si se desea.
Además, se puede efectuar una re-asociación (o reasignación de memoria) cuando se procede a la consideración de una nueva porción de contorno de distorsión de tiempo. Por ejemplo, el valor de suma de contorno de distorsión asociado con la versión escalada 718' de la segunda porción de contorno de distorsión de tiempo, que toma el papel de un "valor de suma de contorno de distorsión de tiempo actual" para el cálculo de la información de control de distorsión de tiempo asociada con las porciones de contorno de distorsión de tiempo 716' , 718' , 722 puede ser considerado como un "último valor de suma de distorsión de tiempo" para el cálculo de una información de control de distorsión de tiempo asociada con las porciones de contorno de distorsión de tiempo 718", 722', 752. Similarmente, el valor de suma del contorno de distorsión asociado con la tercera porción de contorno de distorsión de tiempo 722 puede, ser considerado como un "nuevo valor de suma de contorno de distorsión " para el cálculo de la información de control de distorsión de tiempo asociada con las porciones de contorno de distorsión de tiempo 716' , 718' , 722 y puede ser mapeada para actuar como "valor de suma de contorno de distorsión actual" para el cálculo de la información de control de distorsión de
tiempo asociada con las porciones de contorno de distorsión de tiempo 718", 722' , 752. Además, el valor de suma de contorno de distorsión recién calculado de la cuarta porción de contorno de distorsión de tiempo 752 puede tomar el papel del "nuevo valor de suma del contorno de distorsión" para el cálculo de la información del control de distorsión de tiempo asociada con las porciones de contorno de distorsión de tiempo 718", 722' , 752.
Ejemplo de acuerdo con la Figura 8
La Figura 8 muestra una representación gráfica que ilustra un problema que es resuelto por las modalidades de acuerdo con la invención. Una primera representación gráfica 810 muestra una evolución temporal de una altura relativa reconstruida con el tiempo, que es obtenida en algunas modalidades convencionales. Las abcisas 812 describen el tiempo, las ordenadas 814 describen la altura relativa. La curva 816 muestra la evolución temporal de la altura relativa con el paso del tiempo, que podría ser reconstruida a partir de una información de altura relativa. Concerniente con la reconstrucción del contorno de altura relativo, se debe notar que para la aplicación de la transformada de coseno discreta modificada distorsionada en el tiempo (MDCT) solamente el conocimiento de la variación relativa de la altura dentro del cuadro actual es necesaria. Con el fin de entender esto, se
hace referencia a las etapas de cálculo para obtener el contorno de tiempo a partir del contorno de altura relativa, que conduce a un contorno de tiempo idéntico para versiones escaladas del mismo contorno de altura relativo. Por consiguiente, es suficiente codificar solamente el valor de altura relativo en lugar de un valor de altura absoluto, lo que incrementa la eficiencia de codificación. Para incrementar adicionalmente la eficiencia, el valor cuantificado real no es la altura relativa, si no el cambio relativo en altura, esto es, la proporción de la altura relativa actual con respecto a la altura relativa previa (como se discutirá en detalle en lo siguiente) . En algunos cuadros, en donde por ejemplo, la señal exhibe ninguna estructura armónica, ningun'a distorsión de tiempo podría ser deseable. En tales casos, una bandera adicional puede indicar opcionalmente un contorno de altura plano en lugar de la codificación de este . contorno plano con el método mencionado anteriormente. Puesto que en las señales del mundo real la cantidad de tales cuadros es comúnmente suficientemente alta, el intercambio entre los bits adicionales agregados en todos los tiempos y los bits ahorrados para el cuadro sin distorsión están a favor del ahorro de bits.
El valor de partida para el cálculo de la variación de altura (contorno de altura relativo o contorno de distorsión de tiempo) puede ser elegido arbitrariamente y aún diferir en el codificador y descodificador . Debido a la naturaleza de los
valores de partida diferentes de MDCT distorsionados en el tiempo (TW-MDCT) de la variación de altura todavía produce las mismas posiciones de muestra y formas de ventana adaptadas para efectuar el TW-MDCT.
Por ejemplo, un codificador (audio) obtiene un contorno de altura para cada nodo que es expresado como retraso de altura real en muestras en conjunción con una especificación con voz/sin voz opcional que fue por ejemplo, obtenida al aplicar una estimación de altura y decisión con voz/sin voz conocida de la codificación de habla. Si para el nodo actual la clasificación es ajustada a con voz o no está disponible ninguna una decisión de voz/sin voz, el codificador calcula la proporción entre el retraso de altura real y lo cuantifica o solo ajusta la proporción a uno y es sin voz. Otro ejemplo, podría ser que la variación de altura es estimada directamente mediante un método apropiado (por ejemplo, estimación de variación de señal) .
En el descodificador, el valor de inicio para la primera altura relativa al inicio del audio codificado es ajustado a un valor arbitrario, por ejemplo, a uno. Por consiguiente, el contorno de altura relativo descodificado ya no está en el mismo intervalo absoluto del contorno de altura del codificador, si no una versión escalada del mismo. Todavía, como se describe anteriormente, el algoritmo de TW-MDCT conduce a las mismas porciones de muestra y formas de ventana. Además,
el codificador podría decidir si las proporciones de altura codificadas producirían un contorno de altura plano, no enviar el contorno plenamente codificado, si no ajustaría bandera de activePitchData a cero en lugar de esto, ahorrando bits en este cuadro (por ejemplo, ahorrando numPitchbits * numPitches bits en este cuadro) .
En lo siguiente, los problemas serán discutidos que ocurren en ausencia de la re-normalización del contorno de altura de la invención. Como se menciona anteriormente, para el TW-MDCT, solamente el cambio de altura relativo dentro de una cierta extensión de tiempo limitado alrededor del bloque actual es necesario para el cálculo de la distorsión de tiempo y la adaptación de forma de ventana correcta (véanse las especificaciones anteriores). La distorsión de tiempo sigue el contorno descodificado para segmentos en donde se ha detectado un cambio de altura y sigue siendo constante en todos los otros casos (véase la representación gráfica 810 de la Figura 8). Para el cálculo de las posiciones de ventana y toma de muestras de un bloque, tres segmentos de contorno de altura relativos consecutivos (por ejemplo, tres porciones de contorno de distorsión de tiempo) son necesarios, en donde el tercero es el recién transmitido en el cuadro (designado como "nueva porción de contorno de distorsión de tiempo") y los otros dos son guardados en la memoria del pasado (por ejemplo, designados como "última porción del contorno de distorsión de tiempo" y
"porción de contorno de distorsión de tiempo actual") .
Para tener un ejemplo, se hace referencia por ejemplo, a las explicaciones que se hicieron con referencia a las Figuras 7a y 7b y también a las representaciones gráficas 810, 860 de la Figura 8. Para calcular, por ejemplo, las posiciones de toma de muestras de la ventana para (o asociada con) el cuadro 1, que se extiende desde el cuadro 0 al cuadro 2, se necesitan los contornos de altura de (o asociados con) el cuadro 0, 1 y 2. En la corriente de bits, solamente la información de altura para el cuadro 2 es enviada en el cuadro actual y los otros dos son tomados del pasado. Como se explica en la presente, el contorno de altura puede ser conseguido mediante la aplicación de la primera proporción de altura relativa descodificada a la última altura del cuadro 1 para obtener el cuadro en el primer nodo del cuadro 2 y asi sucesivamente. Es ahora posible, · debido a la naturaleza de la señal, que si el contorno de altura es simplemente proseguido
(esto es, si la parte recién transmitida del contorno es anexada a las dos partes existentes sin ninguna modificación) que un traslape del intervalo en el formato del número interno del codificador se presente después de un cierto tiempo. Por ejemplo, una seña podría iniciar con un segmento de características armónicas fuertes y un valor de altura alto al comienzo que es descendente en todo el segmento, conduciendo a una altura relativa decreciente. Luego, un segmento y ninguna
información de altura puede seguir, de tal manera que la altura relativa se mantiene constante. Luego, otra vez, una sección armónica puede iniciar con una altura absoluta que es más alta que la última altura absoluta al segmento previo y otra vez yendo hacia abajo. Sin embargo, simplemente se continúa la altura relativa, es la misma como al final del último segmento armónico y avanzará además hacia abajo y asi sucesivamente. Si la señal es suficiente fuerte y tiene en sus segmentos armónicos una tendencia global al ir ya sea hacia arriba o hacia abajo (como se muestra en la representación gráfica 810 de la Figura 8), más pronto o más tarde la altura relativa llega a la frontera de un intervalo del formato del número interno. Es bien conocido de la codificación del habla que las señales de habla exhiben por supuesto tal característica. Por consiguiente, no es sorpresa que la codificación de un conjunto concatenado de señales del mundo real que incluyen habla excedan realmente el intervalo de los valores flotantes usados para la altura relativa después de una cantidad relativamente corta de tiempo cuando se usa el método convencional descrito anteriormente.
Para resumir, para un segmento de señal de audio (o cuadro) para el cual se puede diseñar una altura, una evolución apropiada del contorno de altura relativo (o contorno de distorsión de tiempo) podría ser determinado. Para segmentos de señal de audio (o cuadro de señal de audio) para los cuales no
se puede determinar una altura (por ejemplo, debido a que los segmentos de señal de audio son semejantes a ruido) el contorno de altura relativo (o contorno de distorsión de tiempo) podría ser mantenido constante. Así, si hubiera un equilibrio entre los segmentos de audio con altura incrementada y altura decreciente, el contorno 'de altura relativo (o contorno de distorsión de tiempo) avanzaría ya sea a un sub-flujo numérico o un desbordamiento numérico.
Por ejemplo, en la representación gráfica 810, se muestra un contorno de altura relativa para el caso en que hay una pluralidad de porciones de contorno de altura relativa 820a, 820b, 820c, 820d con altura decreciente y algunos segmentos de audio 822a, 822b sin altura, pero ningún segmento de audio con altura incrementada. Así, se puede ver que el contorno de altura relativo 810 avanza a un subflujo numérico
(por lo menos bajo circunstancias muy adversas) .
En lo siguiente, se describirá una solución para este problema. Para impedir los problemas mencionados anteriormente, en particular el sub-flujo o desbordamiento numérico, una normalización de contorno de altura relativa periódica ha sido introducida de acuerdo con un aspecto de la invención. Puesto que el cálculo del contorno de tiempo distorsionado y la forma de ventana solamente dependen del cambio relativo con respecto a los tres segmentos de contorno de altura relativos mencionados anteriormente (también designadas como "porciones
de contorno de distorsión de tiempo") , como se explica en la presente, es posible normalizar este contorno (por ejemplo, el contorno de distorsión de tiempo que puede estar compuesto de tres piezas de "porciones de contorno de distorsión de tiempo") para cada cuadro (por ejemplo, de la señal de audio) nuevamente con el mismo resultado.
Para esto, la referencia fue por ejemplo, escogida para ser la última muestra del segundo segmento de contorno (también designado como "porción de contorno de distorsión de tiempo") y el contorno es ahora normalizado (por ejemplo, multiplicativamente en el dominio lineal) de tal manera que esta muestra tiene un valor de 1.0 (véase la representación gráfica 860 de la Figura 8).
La representación gráfica 860 de la Figura 8 representa la normalización de contorno de altura relativa. Las abcisas 862 muestran en tiempo, subdividido en cuadros (cuadros 0, 1, 2). Las ordenadas 864 describen el valor de contorno de altura relativa.
Un contorno de altura relativa antes de la normalización es diseñado con 870 y cubre dos cuadros (por ejemplo, cuadro número 0 y cuadro número 1). Un nuevo segmento de contorno de altura relativa (también designada como "porción de contorno de distorsión de tiempo") que inicia del valor de partida de contorno de altura relativa predeterminado (o valor de partida del contorno de distorsión de tiempo) es designado
con 874. Como se puede ver, el reinicio del nuevo segmento de contorno de altura relativo 874 del valor de partida del contorno de altura relativa predeterminado (por ejemplo, uno) efectúa una discontinuidad entre el segmento de contorno de altura relativa 870 al punto en el tiempo de inicio y el nuevo segmento de contorno de altura relativa 874, que es designado con 878. Esta discontinuidad efectuaría un problema severo para la derivación de cualquier información de control de distorsión de tiempo del contorno y dará como resultado posiblemente distorsiones de audio. Por consiguiente, un segmento de contorno de altura relativa obtenido previamente 870 precedente al reinicio de punto en el tiempo de reinicio es reescalado (o normalizado) , para obtener un segmento de contorno de altura relativa reescalado 870' . Las normalizaciones efectuadas de tal manera que en la última muestra del segmento de contorno de altura relativa 870 es escalada al valor de partida de contorno de altura relativa predeterminada (por ejemplo, de 1.0).
Descripción detallada del algoritmo
En lo siguiente, algunos de los algoritmos efectuados por el descodificador de audio de conformidad con una modalidad de la invención serán descritos en detalle. Para este propósito, se hará referencia a las Figuras 5, 6, 9a, 9b, 9c y 10a-10g. Además, se hace referencia a la leyenda de elementos de datos, elementos de ayuda y constantes de las Figuras lia y
11b.
Generalmente hablando, se puede decir que el método descrito en la presente puede ser usado para descodificar una corriente de audio que es codificada de acuerdo con una transformada de coseno discreta modificada de distorsión de tiempo. Asi, cuando la TW-MDCT es habilitada para la corriente de audio (que puede ser indicada por una bandera, por ejemplo, denominada como bandera "tw dct", que puede estar comprendida en una información de configuración especifica) , un banco de filtros distorsionados en el tiempo y conmutación de bloqueo para reemplazar un banco de filtros estándar y conmutación de bloques. Adicionalmente, a la transformada de coseno discreta modificada inversa (IMDCT) el banco de filtros distorsionado en el tiempo y conmutación de bloque contiene un mapeo de dominio de tiempo a dominio de tiempo desde una red en el tiempo espaciada arbitrariamente a la rejilla de tiempo espaciada regularmente de manera normal y adaptación correspondiente de formas de ventana.
En lo siguiente, el proceso de descodificación será descrito. En una primera etapa, el contorno de distorsiones descodificado. El contorno de distorsión puede por ejemplo, puede ser verificado utilizando índices del libro de códigos del nodo del contorno de distorsión. Los índices del libro de códigos transformados de contorno de distorsión son descodificados, por ejemplo utilizando el algoritmo mostrado en
una representación gráfica 910 de la Figura 9a. De acuerdo con el algoritmo, se derivan valores de proporción de distorsión
(warp_value_tbl) a partir de los índices de libro de códigos de proporción de distorsión ( tw_proporción) , por ejemplo utilizando un mapeo definido por la tabla de mapeo 990 de la Figura 9c. Como se puede ver del algoritmo mostrado como el número de referencia 910, los valores de nodo de distorsión pueden ser ajustados a un valor predeterminado constante, si la bandera (tw_data_present) indica que los datos de distorsión de tiempo no están presentes. En contraste, si la bandera indica que datos de distorsión en tiempo están presentes, un primer valor de nodo de distorsión puede ser ajustado al valor de partida del contorno de distorsión de tiempo predeterminado
(por ejemplo, uno) . Los valores de nodo de distorsión ejemplares (de una porción de contorno de distorsión de tiempo) pueden ser combinados en base a la formación de un producto de valores de proporción de distorsiones de tiempo múltiples. Por ejemplo, un nodo de distorsión de un nodo inmediatamente siguiente al primer nodo de distorsión i = 0) puede ser igual a un primer valor de proporción de distorsión (si el valor de partida es uno) o igual a un producto del primer valor de proporción de distorsión y el valor de partida. Valores de nodo de distorsión de tiempo subsecuentes (i = 2, 3, num_t _nodes) son calculados al formar un producto de múltiples valores de proporción de distorsión de tiempo (opcionalmente
tomando en consideración el valor de partida, si el valor de partida difiere de uno) . Naturalmente, el orden de la formación del producto es arbitrario. Sin embargo, es ventajoso derivar un valor de modo de distorsión (i + l)-ésimo a partir de un valor de nodo de distorsión i-ésimo al multiplicar el valor del nodo de distorsión i-ésimo con un solo valor de proporción de distorsión que describe la proporción entre dos valores del nodo subsecuente del contorno de distorsión de tiempo.
Como se puede ver del algoritmo mostrado en el número de referencia 910, pueden haber múltiples índices de código de libros de proporción de distorsión para una sola porción de contorno de distorsión de tiempo en un solo cuadro de audio (en donde puede haber una correspondencia de 1 a 1 entre porciones de contorno de distorsión de tiempo y cuadros de audio) .
Para resumir, una pluralidad de valores de nodos de distorsión de tiempo puede ser obtenida para una porción del contorno de distorsión de tiempo dada (o un cuadro de audio dado) en la etapa 610, por ejemplo, utilizando el calculador de valor de nodo de distorsión 544. Subsecuentemente, se puede efectuar una interpolación lineal entre los valores de nodo de distorsión de tiempo (warp_node_values [i] ) . Por ejemplo, para obtener los valores de datos de contorno de distorsión de tiempo de la "nueva porción de contorno de distorsión de tiempo" (new_warp_contour ) se pueden usar el algoritmo mostrado con el número de referencia 920 en la Figura 9a pueden ser
usados. Por ejemplo, el número de muestras de la nueva porción de contorno de distorsión de tiempo es igual a la mitad del número de las muestras de dominio de tiempo de una transformada de coseno discreta modificada inversa. Con respecto a esta cuestión, se debe notar que. cuadros de señal de audio adyacentes son desplazados comúnmente (por lo menos aproximadamente) por la mitad del número de las muestras de dominio de tiempo del MDCT o IMDCT. En otras palabras, para obtener el nuevo_ contorno de distorsión [], el arp_node_values [ ] de muestra en muestra (N_muestras de largo), los valores de nodo_de distorsión son interpolados linealmente entre los nodos espaciados igualmente (Inter. _dist aparte) utilizando el algoritmo mostrado con el número de referencia 920.
La interpolación puede ser efectuada por ejemplo, por el interpolador 548 del aparato de la Figura 5 o en la etapa 620 del método 600.
Antes de obtener el contorno completo de distorsión para este cuadro (esto es, para el cuadro actualmente bajo consideración) los valores almacenados en memoria del pasado son reescalados, de tal manera que el último valor de distorsión del past_warp_contour [ ] es igual a uno (o cualquier otro valor predeterminado que es preferiblemente igual al valor de partida de la nueva porción de contorno de distorsión de tiempo) .
Se debe notar aquí que el término de "contorno, de distorsión del pasado" comprende preferiblemente la "última porción del contorno de distorsión de tiempo" descrita anteriormente y la "porción de contorno de distorsión de tiempo actual" descrita anteriormente. También se debe notar que el "contorno de distorsión del pasado" comprende comúnmente una longitud que es igual al número de muestras de dominio del tiempo del I DCT, de tal manera que valores del "contorno de distorsión del pasado" son designados con índices entre cero y 2*n_largo-l. Así, "past_warp_contour [ 2*n_largo-l ] " designa un último valor de' designación del "contorno de distorsión del pasado". Así, un factor de normalización "norm_fac" puede ser calculado de acuerdo con la ecuación mostrada con el número de referencia 930 en la Figura 9a. Así, el contorno de distorsión del pasado (que comprende la "última porción de contorno de distorsión de tiempo" y la "porción de contorno de distorsión de tiempo actual") pueden ser reescalados multiplicativamente de acuerdo con la ecuación mostrada con el número de referencia 932 en la Figura 9a. Además, el "último valor de suma del contorno de distorsión" (last_warp_sum) y el "valor de suma de contorno de distorsión actual" ( cur_warp_sum) pueden ser reescalados multiplicativamente, como se muestra con los números de referencia 934 y 936 de la Figura 9a. El reescalamiento puede ser efectuado por el re-escalador 550 de la Figura 5 o en la etapa 630 del método 600 de la Figura 6.
Se debe notar que la normalización descrita en la presente, por ejemplo en el número de referencia 930, podría luego ser modificada, por ejemplo, al reemplazar el valor de partida "1" por cualquier otro valor predeterminado deseado.
Al aplicar la normalización, un "warp_contour [ ] completo" también designado como una "sección de contorno de distorsión de tiempo" es obtenida al concatenar el "past_warp_contour" y el "new_warp_contour" . Así, tres porciones de contorno de distorsión de tiempo ("última porción de contorno de distorsión de tiempo" y "porción de contorno de distorsión de tiempo actual" y "nueva porción de contorno de distorsión de tiempo") del "contorno de distorsión pleno" que pueden ser aplicados en etapas adicionales de cálculo.
Además, se calcula un valor de suma de contorno de distorsión (new_wa p_sum) por ejemplo, como una suma sobre todos los valores de "ne _warp_contour [ ] " . Por ejemplo, un nuevo valor de suma de contorno de distorsión puede ser calculado de acuerdo con los algoritmos mostrados en el número de referencia 940 en la Figura 9a.
En seguida de los cálculos descritos anteriormente, la información de entrada requerida por el calculador de información de control de distorsión de tiempo 330 o por la etapa 640 del método 600 está disponible. Así, el cálculo 640 de la información de control de distorsión de tiempo puede ser efectuado, por ejemplo, por el calculador de información de
control de distorsión de tiempo 530. También, la reconstrucción de señal distorsionada en el tiempo 650 puede ser efectuada por el descodificador de audio. Tanto el cálculo 640 como la reconstrucción de señal distorsionada en el tiempo 650 serán explicados en más detalle posteriormente en la presente .
Sin embargo, es importante notar que el algoritmo presente procede iterativamente. Es por consiguiente, computacionalmente eficiente actualizar una memoria. Por · ejemplo, es posible descartar información acerca de la última porción de contorno de distorsión de tiempo. Además, es recomendable usar la "porción de contorno de distorsión de tiempo actual" presente como una "última porción de contorno de distorsión de tiempo" en un siguiente ciclo de cálculos. Además, es recomendable usar la presente "nueva porción de contorno de distorsión de tiempo" como una "porción de contorno de distorsión de tiempo actual" en un siguiente signo del cálculo. Esta asignación se puede hacer utilizando la ecuación ilustrada con el número de referencia en la presente 950 en la Figura 9b (en donde warp_contour [n] describe en la presente la "nueva porción de contorno de distorsión de tiempo presente" para 2* n_largo<3.n_largo) .
Asignaciones apropiadas se pueden ver en los números de referencia 952 y 954 en la Figura 9b.
En otras palabras, las memorias temporales usadas
para descodificar el siguiente cuadro pueden ser actualizadas de acuerdo con las ecuaciones mostradas en los números de referencia 950, 952 y 954.
Se debe notar que la actualización de acuerdo con las ecuaciones 950, 952 y 954 no proporciona un resultado razonable si la información apropiada no es generada para- un cuadro previo- asi, antes de descodificar el primer cuadro o si el último cuadro fue codificado con un tipo diferente de codificador (por ejemplo, un codificador de dominio de LPC) en el contexto de un codificador cambiado, los estados de memoria pueden ser ajustados de acuerdo con las ecuaciones mostradas con los números de referencia 960, 962 y 964 de la Figura 9b.
Cálculo de información de control de distorsión de tiempo
En lo siguiente, se describirá brevemente cómo se puede calcular la información de contorno de distorsión de tiempo en base al contorno de distorsión de tiempo (que comprende, por ejemplo, tres porciones de contorno de distorsión de tiempo) y en base a los valores de suma de contorno de distorsión.
Por ejemplo, es deseable reconstruir un contorno de tiempo utilizando el contorno de distorsión de tiempo. Para este propósito, se puede usar un algoritmo que es mostrado con los números de referencia 1010, 1012 en la Figura 10a. Como se puede ver, el contorno del tiempo mapea un índice i (0<i<3
n_la£go) sobre un valor de contorno de tiempo correspondiente. Un ejemplo de tal mapeo es mostrado en la Figura 12.
En base al cálculo del contorno de tiempo, es . comúnmente requerido calcular una posición de muestra (simple_pos [ ] ) , que describe posiciones de las muestras distorsionadas en el tiempo en una escala de tiempo lineal. Tal cálculo puede ser efectuado utilizando un algoritmo que es mostrado con el número de referencia 1030 en la Figura 10b. En el algoritmo 1030, se pueden usar funciones auxiliares, que son mostradas con los números de referencia 1020 y 1022 en la Figura 10a. Asi, se puede obtener una información acerca del tiempo de muestra.
Además, algunas longitudes de las transiciones distorsionadas en el tiempo (warped_trans_len_left ; warped_trans_len_right ) son calculadas, por ejemplo utilizando un algoritmo 1032 mostrado en la Figura 10b. Opcionalmente, las longitudes de transición de distorsión de tiempo pueden ser adaptadas dependiendo del tipo de ventana o una longitud de transformada, por ejemplo utilizando un algoritmo mostrado con el número de referencia 1034 en la Figura 10b. Además, una llamada "primera posición" y una llamada "última posición" pueden ser calculadas en base a las informaciones de longitudes de transición, por ejemplo utilizando un algoritmo mostrado con el número de referencia 1036 en la Figura 10b. Para resumir, las posiciones de muestra y ajuste de longitudes de ventana,
que pueden ser efectuadas por el aparato 530 en la etapa 640 del método 600 serán efectuadas. Del "warp_contour [ ] " un vector de las posiciones de muestra ("simple_pos [ ] ") de las muestras distorsionadas en el tiempo sobre una escala de tiempo lineal pueden ser calculadas. Para esto, primero el contorno de tiempo puede ser generado "utilizando el algoritmo mostrado en los números de referencia 1010, 1012. Con las funciones auxiliares "warp_in_vec ( ) " y "warp_time_inv ( ) ", mostradas con los números de referencia 1020 y 1022, el vector de posición de muestra ("sample_pos [ ] ") y las longitudes de transición de ( "warped_trans_len_left" y "warped_trans_len_right" ) son calculadas, por ejemplo utilizando los algoritmos mostrados en los números de referencia 1030, 1032,· 1034 y 1036. Asi, se obtiene la información de control de distorsión de tiempo 512.
Reconstrucción de señal distorsionada en el tiempo
En lo siguiente, la reconstrucción de señal distorsionada en el tiempo, que puede ser efectuada en base a la información de control de distorsión de tiempo será discutida brevemente para poner el cálculo del contorno de distorsión de tiempo en el contexto apropiado.
La reconstrucción de una señal de audio comprende la ejecución de una transformada de coseno discreta modificada inversa, que no es descrita en la presente en detalle, debido a que es bien conocido para cualquiera experimentado en el arte.
La ejecución de la transformada de coseno discreta modificada inversa permite reconstruir muestras de dominio de tiempo distorsionadas en base a un conjunto de coeficientes de dominio de frecuencia. La ejecución del IMDCT puede ser efectuada por ejemplo, de cuadro en cuadro, lo que significa, por ejemplo un cuadro de 2048 muestras de dominio de tiempo distorsionadas es reconstruido en base a un conjunto de 1024 coeficientes de dominio de frecuencia. Para la reconstrucción correcta es necesario que no más de dos ventanas subsecuentes se traslapen. Debido a la naturaleza de TW-MDCT podría ocurrir que una porción distorsionada en el tiempo inversamente de un cuadro se extienda a un cuadro no vecino, violando asi el prerrequisito afirmado anteriormente. Por consiguiente, la longitud de desvanecimiento de la forma de ventana necesita ser acortada al calcular los valores de warped_trans len left y warped_trans_len_right apropiados mencionados anteriormente.
Una operación de formación de ventana y cambio de bloques 650b es luego aplicada a las muestras de dominio de tiempo obtenidas del IMDCT. La formación de ventana y cambio de bloques pueden ser aplicados a las muestras de dominio de tiempo distorsionados provistos por el IMDCT 650a dependiendo de la información de control de distorsión de tiempo, para obtener muestras de dominio de tiempo distorsionadas de ventana. Por ejemplo, dependiendo de la información de "forma ventana" o elemento, se pueden usar diferentes
prototipos de ventana de transformada sobre-muestreadas , en donde la longitud de las ventanas sobre-mestreadas puede ser dada por la ecuación mostrada en e.l número de referencia 1040 en la Figura 10c. Por ejemplo, para un primer tipo de forma de ventana (por ejemplo, forma de ventana = 1) los coeficientes de ventana son dados por una ventana derivada de "kaiser-Bessel"
(KBD) de acuerdo con la definición mostrada en el número de referencia 1042 de la Figura 10c, en donde W , la "función de ventana de centro de Kaiser-Bessel" es definida como se muestra en el número de referencia 1044 en la Figura 10c.
De otra manera, cuando se usa una forma de ventana diferente (por ejemplo, si la forma de ventana = 0), se puede emplear una ventana de seno de acuerdo con la definición del número de referencia 1046. Para todas las clases de secuencias de ventana ("secuencias_ventana" ) , el prototipo usado para la parte de ventana izquierda es determinada por la forma de ventana del bloque previo. La fórmula mostrada con el número de referencia 1048 de la Figura 10c expresa este hecho. Asimismo, el prototipo para la forma de ventana derecha es determinado por la fórmula mostrada con el número de referencia 1050 en la Figura 10c.
En lo siguiente, se describirá la aplicación de las ventanas descritas anteriormente a las muestras de dominio de tiempo distorsionadas provistas por el IMDCT . En algunas modalidades, la información para un cuadro puede ser provista
por una pluralidad de secuencias cortas (por ejemplo, ocho secuencias cortas) . En otras modalidades, la información para el cuadro puede ser provista utilizando bloques de diferentes longitudes, en donde se puede requerir un tratamiento especial para secuencias de partida, secuencias separadas y/o secuencias de longitudes no estándar. Sin embargo, puesto que la longitud transicional puede ser determinada como se describe anteriormente, puede ser suficiente diferenciar entre cuadros codificados utilizando ocho secuencias cortas (indicadas por una información del tipo de cuadro apropiado "eight_short_sequence" ) y todos los otros cuadros.
Por ejemplo, en un cuadro descrito por ocho secuencias cortas, un algoritmo mostrado con el número de referencia 1060 en la Figura lOd puede ser aplicado para la formación de ventanas. En contraste, para cuadros codificados utilizando otra información, un algoritmo es mostrado con el número de referencia 1064 en la Figura lOe puede ser aplicado. En otras palabras, la porción semejante al código C mostrada con el número de referencia 1060 en la Figura lOd describe la formación de ventana y superposición-adición interna de una llamada ""ocho secuencias cortas". En contraste, la porción semejante al código C mostrada en el número de referencia 1064 en la Figura lOd describe la formación de ventanas en ortos casos .
7.1
Re-muestreo
En lo siguiente, la distorsión de tiempo inversa 650c de las muestras de dominio de tiempo distorsionadas en ventana en dependencia de la información de control de distorsión de tiempo será descrita, mediante lo cual muestras de dominio de tiempo muestreadas regularmente o simplemente muestras de dominio de tiempo son obtenidas mediante un re-muestreo o retoma de muestras variable en el tiempo. En el re-muestreo variable en el tiempo, el bloque de ventana z[] es re-muestreado de acuerdo con las posiciones muestreadas, por ejemplo utilizando una respuesta de impulso mostrada con el número de referencia 1070 en la Figura lOf . Antes del re-muestreo, el bloque de ventana puede ser relleno con ceros sobre ambos extremos, como se muestra con el número de referencia 1072 en la Figura lOf. El re-muestreo por si mismo es descrito por la sección de seudocódigos mostrada con el número de referencia 1074 en la Figura lOf.
Procesamiento de cuadro del post-remuestreador
En lo siguiente, un post-procesamiento opcional 650d de las muestras de dominio de tiempo será descrito. En algunas modalidades, el procesamiento de cuadro de post-re-toma de muestras puede ser efectuado dependiendo del tipo de la secuencia de ventana. Dependiendo del parámetro "secuencia_ventana", ciertas etapas de procesamiento
adicionales pueden ser aplicadas.
Por ejemplo, si la secuencia de ventana es una llamada "OCHO_SECUENCIAS_CORTAS" , una llamada "SECUENCIA DE INICIO LARGA" , una llamada " SECUENCIA DE INICIO DE PARADA", una llamada "SECUENCIA 1152 DE INICIO DE PARADA" seguida por una llamada SECUENCIA_LPD, iun post-procesamiento como se muestra en los números de referencia 1080a, 1080b, 1082 puede ser efectuado .
Por ejemplo, si la siguiente secuencia de ventana es una llamada "SECUENCIA_LPD", se puede calcular una ventana de corrección Wcorr(n) puede ser calculada como se muestra en el número de referencia 1080a, tomando en cuenta las definiciones mostradas en el número de referencia 1080b. También, la ventama de corrección Wcorr(n) puede ser aplicada como se muestra con el número de referencia 1082 en la Figura lOg.
Para todos los otros casos, nada se puede hacer, como se puede ver con el número de referencia 1084 en la Figura lOg.
Traslape y adición con secuencias de ventana previas
Además, un traslape y adición 650e de las muestras de dominio de tiempo actuales con una o más muestras de dominio de tiempo previas puede ser efectuada. El traslape y adición pueden ser los mismos para todas las secuencias y pueden ser descritos matemáticamente como se muestra con el número de referencia 1086 en la Figura lOg.
Leyenda
Con respecto a las explicaciones dadas, también se hace referencia a la leyenda que es mostrada en las Figuras lia y lid. En particular, la longitud de ventana de síntesis N para la transformada inversa es comúnmente una función del elemento de sintaxis "ventana_secuencia" y el contexto algorítmico. Puede por ejemplo ser definida como se muestra en el número de 1190 de la Figura 11b.
Modalidad de acuerdo con la Figura 13
La Figura 13 muestra ' un diagrama de bloques esquemático de medios 1300 para proveer una información de contorno de distorsión de tiempo reconstruida que emprende la funcionalidad de los medios 520 descritos con referencia a la Figura 5. Sin embargo, la trayectoria de datos y la memoria temporales son mostrados en más detalle. Los medios 1300 comprenden un calculador de valor de nodo de distorsión 1344, que toma la función del calculador de valor de nodo distorsionado 544. El calculador de valor de nodo de distorsión 1344 recibe un índice de libro de códigos "tw_ratio[]" de la proporción de distorsión como información de proporción de distorsión codificada. El calculador de valor de nodo de distorsión comprende una tabla de valores de distorsión que representan, por ejemplo, el mapeo de un índice de proporción
de distorsión de tiempo sobre un valor de proporción de distorsión en el tiempo representado en la Figura 9c. El calculador de valor de nodo de distorsión 1344 puede comprender además un multiplicador para efectuar el algoritmo representado con el número de referencia 910 de la Figura 9a. Asi, el calculador del valor de nodo de distorsión proporciona valores de nodo de distorsión "warp_node_values [i] " . Además, los medios 1300 comprenden un interpolador de contorno de distorsión 1348, que toma la función del interpolador 540a, y que puede ser configurado para efectuar el algoritmo mostrado en el numeral de referencia 920 de la Figura 9a, obteniendo mediante esto valores del nuevo contorno de distorsión ( "new_warp_contour" ) . Los medios 1300 comprenden además una nueva memoria temporal de contorno de distorsión 1350, que guarda los valores del nuevo contorno de distorsión (esto es warp_contour [i], con 2 · n_long=i<3 · n_long) . Los medios 1300 comprenden además una memoria temporal/actualizador de contorno de distorsión del pasado 1360, que guarda la "última porción de contorno de distorsión de tiempo" y la "porción de contorno de distorsión de tiempo actual" y actualiza el contenido de memoria en respuesta a un re-escalamiento y en respuesta a la consumación del procesamiento del cuadro actual. Asi, la memoria temporal/actualizador de contorno de distorsión del pasado 1360 puede estar en cooperación con el re-escalador de contorno de distorsión del pasado 1370, de tal manera que la memoria
temporal/actualizador de contorno de distorsión del pasado y el re-escalador de contorno de distorsión del pasado satisfacen conjuntamente la funcionalidad de los algoritmos 930, 932, 934, 936, 950, 960. Opcionalmente, la memoria temporal/actualizador de contorno de distorsión del pasado 1360 puede también tomar la funcionalidad de los algoritmos 932, 936, 952, 954, 962, 964.
Asi, los medios 1300 proveen el contorno de distorsión ( "warp_contour" ) y opcionalmente también proveen los valores de suma de contorno de distorsión.
Codificador de Señal de Audio de acuerdo con la Figura 14
En lo siguiente, se describirá un codificador de señal de audio de acuerdo con un aspecto de la invención. El codificador de señal de audio de la Figura 14 es designado en su totalidad con 1400. El codificador de señal de audio 1400 está configurado para recibir una señal de audio 1410 y opcionalmente, una información de contorno de distorsión provista externamente 1412 asociada con la señal de audio 1410. Además, el codificador de señal de audio 1400 está configurado para proveer una representación codificada 1440 de la señal de audio 1410.
El codificador de señal de audio 1400 comprende un codificador de contorno de distorsión de tiempo 1420, configurado para recibir una información de contorno de
distorsión de tiempo 1422 asociada con la señal de audio 1410 y para provee una información de contorno de distorsión de tiempo codificada 1424 en base a la misma.
El codificador de señal de audio 1400 comprende además aun procesador de señal de distorsión de tiempo (o codificador de señal de distorsión de tiempo) 1430 que está configurado para recibir la señal de audio 1410 y para proveer, en base a la misma, una representación codificada distorsionada en el tiempo 1432 de la señal de audio 1410, tomando en cuenta la formado de tiempo descrita por la información de distorsión en el tiempo 1422. La representación codificada 1414 de la señal de audio 1410 comprende la información de contorno de distorsión de tiempo codificada 1424 y la representación codificada 1432 del espectro de la señal de audio 1410.
Opcionalmente, el codificador de señal de audio 1400 comprende un calculador de información de contorno de distorsión 1440, que está configurado para proveer la información de contorno de distorsión en el tiempo 1422 en base a la señal de audio 1410. Alternativamente, sin embargo, la información de contorno de distorsión en el tiempo 1422 puede ser provista en base a la información de contorno de distorsión provista externamente 1412.
El codificador de contorno de distorsión en el tiempo 1420 puede estar configurado para calcular la proporción entre valores de nodo subsecuentes del contorno de distorsión de
tiempo descrito por la información de contorno de distorsión en el tiempo 1422. Por ejemplo, los valores de nodo pueden ser valores de muestra del contorno de distorsión de tiempo representado por la información de contorno de distorsión en el tiempo. Por ejemplo, si la información de contorno de distorsión en el tiempo comprende una pluralidad de valores para cada cuadro de la señal de audio 1410, los valores de nodo de distorsión en el tiempo puede ser un sub-conjunto verdadero de esta información de contorno de distorsión de tiempo. Por ejemplo, los valores de nodo de distorsión en el tiempo pueden ser un sub-conjunto verdadero periódico de los valores de contorno de distorsión de tiempo. Un valor de nodo de contorno de distorsión en el tiempo puede estar presente por N de las muestras de audio, en donde N puede ser mayor o igual a 2.
El calculador de proporción de valor de nodo de contorno de tiempo puede estar configurado para calcular una proporción entre valores de nodo de distorsión en el tiempo subsecuentes del contorno de distorsión de tiempo, proporcionando asi una información que describe una proporción entre valores de nodo subsecuentes del contorno de distorsión de tiempo. Un codificador de proporción del codificador de contorno de distorsión de tiempo puede estar configurado para codificar la proporción entre valores de nodo subsecuentes del contorno de distorsión de tiempo. Por ejemplo, el codificador de proporción puede mapear diferentes proporciones a diferentes
índices de libro de códigos diferentes. Por ejemplo, se puede escoger un mapeo de tal manera que las proporciones provistas por el calculador de proporción de valor de distorsión de contorno en el tiempo están dentro de un intervalo de entre 0.9 y 1.1, o aún entre 0.95 y 1.05. Así, el codificador de proporción puede estar configurado para mapear este intervalo a diferentes índices de libro de códigos. Por ejemplo, correspondencias mostradas en la tabla de la Figura 9c pueden actuar como puntos de soporte en este mapeo, de tal manera que, por ejemplo, una proporción de 1 es mapeada sobre un índice de libro de códigos de 3, mientras que una proporción de 1.0057 es mapeada a un índice de libro de código de 4, y así sucesivamente (compárese Figura 9c) . Los valores de proporción entre aquellos mostrados en la tabla de la Figura 9c pueden ser mapeados a índices de libro de códigos apropiados, por ejemplo al índice de libro de códigos del valor de proporción más cercano para el cual el índice de libro de códigos es dado en la tabla de la Figura 9c.
Naturalmente, diferentes codificaciones pueden ser usadas, de tal manera que, por ejemplo, un número de índices de libro de código disponibles puede ser escogidos más grandes o más pequeños que los mostrados en la presente. También, la asociación entre valores de nodo de contorno de distorsión e índices de valores de libro de códigos pueden ser escogidos apropiadamente. También, los índices de libro de códigos pueden
ser codificados, por ejemplo utilizando una codificación binaria, utilizando opcionalmente una codificación de entropía.
Así, se obtienen las proporciones codificadas 1424.
El procesador de señal de distorsión de tiempo 1430 comprende un convertidor de dominio de tiempo de distorsión de tiempo a dominio de frecuencia 1434, que está configurado para recibir la señal de audio 1410 y una información de contorno de distorsión de tiempo 1422a asociada con la señal de audio (o una versión codificada de la misma) , y para proveer, en base a la misma, una representación de dominio espectral (dominio de frecuencia) 1436.
La información de contorno de distorsión de tiempo 1422a puede ser derivada preferiblemente de la información codificada 1424 provista por y el codificador de contorno de distorsión de tiempo 1420 utilizando un descodificador de distorsión 1425. De esta manera, es puede obtener que el codificador (en particular el procesador de señal de distorsión de tiempo 1430 del mismo) y el descodificador (que recibe la representación codificada 1414 de la señal de audio) operen en los mismos contornos de distorsión, es decir, el contorno de distorsión descodificado (tiempo) . Sin embargo, en una modalidad simplificada, la información de contorno de distorsión de tiempo 1422a usada por el procesador de señal de distorsión de tiempo 1430 puede ser idéntica a la información de contorno de distorsión de tiempo 1422 introducida al
codificador de contorno de distorsión de ' tiempo 1420.
El convertidor de dominio de tiempo de distorsión de tiempo a dominio de frecuencia 1434 puede considerar por ejemplo una distorsión de tiempo cuando forma la representación de dominio espectral 1436, por ejemplo utilizando una operación de re-muestreo variable en el tiempo de la señal de audio 1410. Alternativamente, sin embargo, el re-muestreo variable en el tiempo y la conversión de dominio en el tiempo a dominio de frecuencia pueden ser integrados en una sola etapa de procesamiento. El procesador de señal de distorsión de tiempo también comprende un codificador de valor espectral 1438, que está configurado para codificar la representación de dominio espectral 1346. El codificador de valor espectral 1438 puede estar configurado por ejemplo para tomar en consideración el enmascaramiento perceptual. También, el codificador de valor espectral 1438 puede estar configurado para adaptar la exactitud de codificación a la relevancia perceptual de las bandas de frecuencia y para aplicar una codificación de
1
entropía. Así, se obtenido la representación codificada 1432 de la señal de audio 1410.
Calculador de contorno de distorsión de tiempo de acuerdo con la Figura 15
La Figura 15 muestra un diagrama de bloques esquemático de un calculador de contorno de distorsión de
tiempo, de acuerdo con otra modalidad de la invención. El calculador de contorno de distorsión de tiempo 1500 está configurado para recibir una información de proporción de distorsión codificada 1510 para proveer, en base a la misma, una pluralidad de valores de nodo de distorsión 1512. El calculador de contorno de distorsión de tiempo 1500 comprende, por ejemplo, un descodificador de proporción de distorsión 1520, que está configurado para derivar una secuencia de valores de proporción de distorsión 1522 a partir ' de la información de proporción de distorsión codificada 1510. El calculador de contorno de distorsión de tiempo 1500 también comprende un calculador de contorno de distorsión 1530, que está configurado para derivar la secuencia de valores de nodo de distorsión 1512 a partir de la secuencia de los valores de proporción de distorsión 1522. Por ejemplo, el calculador de contorno de distorsión puede estar configurado para obtener los valores de nodo de contorno de distorsión partiendo de un valor de inicio de contorno de distorsión, en donde las proporciones entre el valor de partida del contorno de distorsión, asociado con un nodo de partida de contorno de distorsión, y los valores de nodo de contorno de distorsión son determinados por los valores de proporción de distorsión 1522. El calculador de valbr de nodo de distorsión también está configurado para calcular un valor del nodo de contorno de distorsión 1512 de un nodo de contorno de distorsión dado que está espaciado del nodo
de inicio de contorno de distorsión por un nodo de contorno de distorsión intermediario, en base a una formación de producto que comprende una proporción entre el valor de partida de contorno de distorsión (por ejemplo 1) y el valor de nodo de contorno de distorsión del nodo de contorno de distorsión intermedio y una proporción entre el valor de nodo de contorno de distorsión del nodo de contorno de distorsión intermedio y el valor de nodo de contorno de distorsión del nodo de contorno de distorsión dado como factores.
En lo siguiente, la operación del calculador de contorno de distorsión en el tiempo 1500 será discutida brevemente con referencia a las Figuras 16a y 16b.
La Figura 16a muestra una representación gráfica de un cálculo sucesivo de un contorno de distorsión de tiempo. Una primera representación gráfica 1610 muestra una secuencia de índices de libro de códigos de proporción de distorsión en el tiempo 1510 (índice=0, índice=l, índice=2, índice=3, índice=7) . Además, la representación gráfica 1610 muestra una secuencia de virus de proporción de distorsión (0.983, 0.988, 0.994, 1..000, 1.023) asociados con los índices de libro de códigos. Además, se puede ver que un primer valor de nodo distorsionado 1621 (i=0) es escogido como 1 (en donde 1 es un valor de partida) . Como se puede ver, un segundo valor de nodo de distorsión 1622 (i=l) es obtenido al multiplicar el valor de partida de 1 con el primer valor de proporción de 0.983 (asociado con el primer
índice 0) . Se puede ver además que el tercer valor de nodo de distorsión 1623 es obtenido al multiplicar el segundo valor de nodo de distorsión 1622 de 0.983 con el segundo valor de proporción de distorsión de 0.988 (asociado con el segundo índice de 1)'. De la misma manera, el cuarto valor de nodo de formación 1624 es obtenido al multiplicar el tercer valor de nodo de distorsión 1623 con el tercer valor de proporción de distorsión de 0.994 (asociado con un tercer índice de 2) .
Así, se obtiene una secuencia de valores de nodo de distorsión 1621, 1622, 1623, 1624, 1625, 1626.
Un valor de nodo de distorsión respetivo es obtenido efectivamente de tal manera que es un producto del valor de partida (por ejemplo 1) y todos los valores de proporción de distorsión intermedios que caen entre,, los nodos de distorsión de partida 1621 y el respectivo valor de nodo de distorsión 1622 a 1626.
Una representación gráfica 1640 ilustra una interpolación lineal entre los valores de nodo de distorsión. Por ejemplo, los valores interpolados 1621a, 1621b, 1621c podrían ser obtenidos en un descodificador de señal de audio entre dos valores de nodo de distorsión de tiempo adyacentes 1621, 1622, por ejemplo haciendo uso de una interpolación lineal.
La Figura 16b muestra una representación gráfica de una reconstrucción de contorno de distorsión de tiempo
utilizando un reinicio periódico de un valor de partida predeterminado, que puede opcionalmente ser implementado en el calculador de contorno de distorsión de tiempo 1500. En otras palabras, el reinicio repetido o periódico no es un elemento esencial, a condición de que un desbordamiento numérico pueda ser evitado mediante cualquier otra medida apropiada en el lado del codificador o en el lado del descodificador . Como se puede ver, una porción de contorno de distorsión puede iniciar desde un nodo de partida 1660, en donde se pueden determinar los nodos de contorno de distorsión 1661, 1662, 1663, 1664 para este propósito, valores de proporción de distorsión (0.983, 0.988, 0.965, 1.000) pueden ser considerados, de tal manera que los nodos de contorno de distorsión adyacentes 1661 a 1664 de la primera porción de contorno de distorsión de tiempo están separados por proporciones determinadas por estos valores de proporción de distorsión. Sin embargo, una segunda porción de contorno de distorsión en el tiempo adicional puede ser iniciada después de un nodo final 1664 de la primera porción de contorno de distorsión de tiempo (que comprende los nodos 1660-1664) ha sido alcanzado. La segunda porción de contorno de distorsión de tiempo puede iniciar desde un nuevo nodo de partida 1665, que puede tomar el valor de partida predeterminado, independientemente de cualesquier valores de proporción de distorsión. Asi, los valores de nodo de distorsión de la segunda porción de contorno de distorsión de
tiempo pueden ser calculados partiendo del nodo de partida 1665 de la segunda porción de contorno de distorsión de tiempo en base a los valores de proporción de distorsión de la segunda porción de contorno de distorsión de tiempo. Más tarde, una tercera porción de contorno de distorsión en el tiempo puede iniciar de un nodo de partida correspondiente 1670, que puede tomar otra vez el valor de partida predeterminado independientemente de cualesquier valores de proporción de distorsión. Asi, se tiene un reinicio periódico de las porciones de contorno de distorsión de tiempo. Opcionalmente, una re-normalización repetida puede ser aplicada, como se describe en detalle anteriormente.
El codificador de señal de audio de acuerdo con la Figura 17
En lo siguiente, un codificador de señal de audio de acuerdo con otra modalidad de la invención será descrito brevemente con referencia a la Figura 17. El codificador de señal de audio 1700 está configurado para recibir una señal de audio de multi-canal 1710 y proveer una representación codificada 1712 de la señal de audio de ' multi-canal 1710. El codificador de señal de audio 1700 comprende un proveedor de representación de audio codificado 1720, que está configurado para proveer selectivamente una representación de audio que comprende una información de contorno de distorsión común, asociada comúnmente con una pluralidad de canales de audio de
la señal de audio de multi-canal, o una representación de audio codificada que comprende información de contorno de distorsión individual, asociada individualmente con los diferentes canales de audio de la pluralidad de canales de audio, dependiendo de la información que describe una similaridad o diferencia entre contornos de distorsión asociados con los canales de audio de la pluralidad de canales de audio.'
Por ejemplo, el codificador de señal de audio 1700 comprende un calculador de similaridad de contorno de distorsión o calculador de diferencia de contorno de distorsión 1730 configurado para proveer la información 1732 que describe la similaridad o diferencia entre contorno de distorsión asociado con los canales de audio. El proveedor de representación de audio codificado comprende, por ejemplo, un codificador de contorno de distorsión de tiempo selectivo 1722 configurado para recibir información de contorno de distorsión de tiempo 1724 (que puede ser provista externamente o que puede ser provista por un calculador de información de contorno de distorsión de tiempo opcional 1734) y la información 1732. Si la información 1732 indica que los contornos de distorsión de tiempo de dos o más canales de audio son suficientemente similares, el codificador de contorno de distorsión de tiempo selectivo 1722 puede estar configurado para proveer una información de contorno de distorsión de tiempo codificada
adjunta. La información de contorno . de distorsión adjunta puede por ejemplo estar basada en un promedio de la información de contorno de distorsión de dos o más canales. Sin embargo, alternativamente, la información de contorno de distorsión adjunta puede estar basada en una sola información de contorno de distorsión de un solo canal de audio, pero asociada con untamente con una pluralidad de canales.
Sin embargo, si la información 1732 indica que los contornos de distorsión de múltiples canales de audio no son suficientemente similares, el codificador de contorno de distorsión de tiempo selectivo 1722 puede proveer información codificada separada de los diferentes contornos de distorsión de tiempo.
El proveedor de representación de audio codificado 1720 también comprende un procesador de señal de distorsión de tiempo 1726, que también está configurado para recibir la información de contorno de distorsión de tiempo 1724 y la señal de audio de multi-canal 1710. El procesador de señal de distorsión de tiempo 1726 está configurado para codificar los múltiples canales de la señal de audio 1710. El procesador de señal de distorsión en el tiempo 1726 puede comprender diferentes modos de operación. Por ejemplo, el procesador de señal de distorsión de tiempo 1726 puede estar configurado para codificar selectivamente canales de audio individual o conjuntamente codificarlos, aprovechando similaridades de
inter-canal . En algunos casos, es preferido que el procesador de señal de distorsión en el tiempo 1726 sea capaz de codificar comúnmente múltiples canales de audio que tienen una información de contorno de distorsión en el tiempo común. Hay casos en los cuales un canal de audio izquierdo y un canal de audio derecho exhiben la misma evolución de altura relativa pero tienen de otra manera diferentes características de señal, por ejemplo diferentes frecuencias fundamentales absolutas o diferentes envolventes espectrales. En este caso, no es deseable codificar el canal de audio izquierdo y el canal de audio derecho conjuntamente, debido a la diferencia significativa entre el canal de audio izquierdo y el canal de audio derecho. No obstante, la evolución de altura relativa en el canal de audio izquierdo y el canal de audio derecho puede ser paralela, de tal manera que la aplicación de una distorsión de tiempo común es una solución muy eficiente. Un ejemplo de tal señal de audio es una música polifónica, en donde el contenido de múltiples canales de audio exhiben una diferencia significativa (por ejemplo, son dominadas por diferentes cantantes o instrumentos musicales) , pero exhiben una variación de altura similar. Así, la eficiencia de codificación puede ser mejorada significativamente al proveer la posibilidad de tener una codificación conjunta de los contornos de distorsión de tiempo para múltiples canales de audio en tanto que se mantiene la opción de codificar separadamente los espectros de
frecuencia de los diferentes canales de audio para los cuales se provee una información de contorno de altura común.
El proveedor de representación de audio codificado 1720 comprende opcionalmente un codificador de información lateral 1728, que está configurado para recibir la información 1732 y proveer una información lateral que indica si un contorno de distorsión codificado común es provisto para múltiples canales de audio o si contornos de distorsión codificados individuales . son provistos para los múltiples canales de audio. Por ejemplo, tal información lateral puede ser provista en forma de una bandera de 1 bit llamada "common_tw" .
Para resumir, el codificador de contorno de distorsión de tiempo selectivo 1722 provee selectivamente representaciones codificadas individuales de los contornos de audio de distorsión de tiempo asociados con múltiples señales de audio, o una representación de contorno de distorsión de tiempo codificada adjunta que representa un solo contorno de distorsión de tiempo adjunto asociado con múltiples canales de audio. El codificador de información lateral 1728 provee opcionalmente una información lateral que indica si las representaciones de contorno de distorsión. de tiempo individuales o una representación de contorno de distorsión de tiempo adjunta son provistas. El procesador de señal de distorsión de tiempo 1726 proporciona representaciones
codificadas de los múltiples canales de audio. Opcionalmente, una información codificada común puede ser provista para múltiples canales de audio. Sin embargo, comúnmente es aún posible proveer representaciones codificadas individuales de múltiples canales de audio, para los cuales una representación de contorno de distorsión de tiempo común está disponible, de tal manera que diferentes canales de audio que tienen contenido de audio diferente, pero idéntico distorsión de tiempo son representados apropiadamente. Consecuentemente, la representación codificada 1712 comprende información codificada provista por el codificador de contorno de distorsión de tiempo selectivo 1722, y el procesador de señal de distorsión de tiempo 1726 y opcionalmente, el codificador de información lateral 1728.
El decodificador de señal de audio de acuerdo con la Figura 18
La Figura 18 muestra un diagrama de bloques esquemático de un descodificador de señal de audio de acuerdo con una modalidad de la invención. El descodificador de señal de audio 1800 está configurado para recibir una representación de señal de audio codificada 1810 (por ejemplo, la representación codificada 1712) y proveer, en base a la misma, una representación descodificada 1812 de la señal de audio de multi-canal. El descodificador de señal de audio 1800 comprende un extractor de información lateral 1820 y un descodificador de
distorsión de tiempo 1830. El extractor de información lateral 1820 está configurado para extraer una información de aplicación de contorno de distorsión de tiempo 1822 y una información de contorno de distorsión 1824 de la representación de señal de audio codificada 1810. Por ejemplo, el extractor de información lateral 1820 puede estar configurado para reconocer si una sola información de contorno de distorsión de tiempo común está disponible para múltiples canales de la señal de audio codificada, o si la información de contorno de distorsión de tiempo separad está disponible para múltiples canales. Asi, el extractor de información lateral puede proveer tal información de aplicación de contorno de distorsión en el tiempo 1822 (que indica si información de contorno ' de distorsión de tiempo conjunta o individual está disponible) y la información de contorno de distorsión en el tiempo 1824 (que describe la evolución temporal del contorno de distorsión en el tiempo común (adjunta) o de los contornos de distorsión de tiempo individuales) . El descodificador de distorsión de tiempo 1830 puede estar configurado para reconstruir la representación descodificada de la señal de audio de multi-canal en base a la representación de señal de audio codificada 1810, tomando en consideración la distorsión de tiempo descrita por la información 1822, 1824. Por ejemplo, el descodificador de distorsión de tiempo 1830 puede estar configurado para aplicar un contorno de distorsión de tiempo común para descodificar
diferentes canales de audio, para los cuales información de dominio de frecuencia codificada individual está disponible. Asi, el descodificador de distorsión de tiempo 1830 puede reconstruir por ejemplo diferentes canales de la señal de audio de multi-canal, que comprenden distorsión de tiempo similar o idéntica pero diferente altura.
Corriente de audio de acuerdo con las Figuras 19a a 19e
En lo siguiente, una corriente de audio ' será descrita, que comprende una representación codificada de uno o más señal de canales de audio y uno o más contornos de distorsión de tiempo.
La Figura 19a muestra una representación gráfica de un llamado elemento de corriente de datos "USAC_raw_data_block" que puede comprender un solo elemento de canal (SCE) , un par de elementos de canal (CPE) o una combinación de uno o más elementos de canal individuales y/o uno o más pares de elementos de canal.
El "USAC_raw_data_block" puede comprender comúnmente un bloque de datos de audio codificados, mientras que la información de contorno de distorsión de tiempo individual puede ser provista en un elemento de corriente de datos separado. No obstante, es usualmente posible codificar algo de los datos de contorno de distorsión de tiempo al "USAC raw data block" .
Como se puede ver de la Figura 19b, un solo elemento de canal comprende comúnmente una corriente de canal de dominio de frecuencia ("fd_channel_stream") , que será explicado en detalle con referencia a la Figura 9d.
Como se puede ver de la Figura 19c, un par de elementos de canal ("channel-_pair_element") comprende comúnmente una pluralidad de corrientes de canal de dominio de frecuencia. También, el par de elementos de canal puede comprender información de distorsión de tiempo. Por ejemplo, una bandera de activación de distorsión de tiempo ( "tw_MDCT" ) que puede ser transmitida en un elemento de corriente de datos de configuración o en el "USAC_saw_data_block" determina si la información de distorsión en el tiempo está incluida en el par de elementos de canal. Por ejemplo, si la bandera "tw_MDCT" indica que la distorsión de tiempo está activa, el par de elementos de canal puede comprender una bandera ( "common_tw" ) que indica si hay una distorsión de tiempo común para los canales de audio del par de elementos de canal. Si la bandera (common_tw) indica que hay una distorsión de tiempo común para múltiples de los canales de audio, entonces una información de distorsión en el tiempo común (tw_data) está incluida en el par de elementos de canal, por ejemplo, separados de las corrientes de canal de dominio de frecuencia.
Con referencia ahora a la Figura 19d, se describe la corriente de canal de dominio de frecuencia. Como se puede ver
de la Figura 19d, la corriente de canal de dominio de frecuencia, por ejemplo, comprende una información de ganancia global. También, la corriente de canal de dominio de frecuencia comprende los datos de distorsión de tiempo, si la distorsión de tiempo está activa (bandera "tw_ DCT" activa) y si no hay una información de distorsión en el tiempo, común para múltiples canales de señal de audio (bandera "common_tw" está inactiva) .
Además, una corriente de canal ,de dominio de frecuencia también comprende datos de factor de escala ("scale_factor_data") y datos espectrales codificados (para datos espectrales codificados por ejemplo aritméticamente "ac_espectral_data" ) .
Con referencia ahora a la Figura 19e, la sintaxis de los datos de distorsión de tiempo son discutidos brevemente. Los datos de distorsión de tiempo pueden comprender por ejemplo, opcionalmente una bandera (por ejemplo, "tw_data_present" o "active Pitch Data") que indica si los datos de distorsión de tiempo están presentes. Si los datos de distorsión de tiempo están presentes, (esto es, el contorno de distorsión de tiempo no es plano) los datos de distorsión de tiempo pueden comprender una secuencia de una pluralidad de valores de proporción de distorsión de tiempo codificados (por ejemplo, "tw_ratio [i]" o "pitchldx [i] ") , que pueden por ejemplo ser codificados de acuerdo con la tabla de libro de códigos de la Figura 9c .
Asi, los datos de distorsión de tiempo' pueden comprender una bandera que indica que no hay datos de distorsión de tiempo disponibles, que pueden ser ajustados por un codificador de señal de audio, si el contorno de distorsión de tiempo es constante (las proporciones de distorsión de tiempo son aproximadamente iguales a 1.000). En contraste, si el contorno de distorsión de tiempo es variable, las proporciones entre nodos de contorno de distorsión de tiempo subsecuentes pueden ser codificados utilizando los índices de libro de códigos que compone la información de "tw_ratio".
Conclusión
Resumiendo lo anterior, las modalidades de acuerdo con la invención efectúan diferentes mejoras en el campo de distorsión de tiempo.
Los aspectos de la invención descritos en la presente están en el contexto de un codificador de transformada de MDCT distorsionada en el tiempo (véase, por ejemplo, referencia [1]). Las modalidades de acuerdo con la invención proveen métodos para un desempeño mejorado de un codificador de transformada de MDCT distorsionada en el tiempo.
De acuerdo con un aspecto de la invención, se provee un formato de corriente de bits particularmente eficiente. La descripción de formato de corriente de bits está basada sobre y mejora la sintaxis de corriente de bits AAC de MPEG-2 (véase,
por ejemplo, referencia [2] ) , pero es por supuesto aplicable a todos los formatos de corrientes de bits con un encabezado de descripción general al inicio de una corriente y una sintaxis de información de cuadro en cuadro individual.
Por ejemplo, la siguiente información lateral puede ser transmitida en la corriente de bits:
En general, una bandera de un bit (por ejemplo, llamada "tw_MDCT") puede estar presente en la configuración especifica de audio general (GASC) , que indica si la distorsión de tiempo está activa o no. Los datos de altura pueden ser transmitidos utilizando la sintaxis mostrada en la Figura 19e o la sintaxis mostrada en la Figura 19f. En la sintaxis mostrada en la Figura 19f, el número de alturas ( "numPitches" ) puede ser igual a 16, y el número de bits de altura en ( "numPitchBits" ) puede ser igual a 3. En otras palabras, pueden haber 16 valores de proporción de distorsión codificados por porción de contorno de distorsión de tiempo (o por cuadro de señal de audio) , y cada valor de proporción de contorno de distorsión puede ser codificado utilizando 3 bits.
Además, en un solo elemento de canal (SCE) los datos de altura (pitch_data [ ] ) pueden estar ubicados antes de los datos de sección en el canal individual, si la distorsión está activa.
En un par de elementos de canal (CPE) , una bandera de atura común señala si hay datos de altura comunes para ambos
canales, lo que sigue después que, si no, los contornos de altura individuales son encontrados en los canales individuales .
En lo siguiente, se dará un ejemplo para un par de elementos de canal. Un ejemplo podría ser una señal de una sola fuente de sonido armónica, colocada dentro del panorama estéreo. En este caso, los contornos de altura relativos para el primer canal y el segundo canal serán iguales o diferirían solamente ligeramente debido a algunos errores pequeños en la estimación de la variación. En este caso, el codificador puede decidir que en lugar de enviar dos contornos de altura codificados separados para cada canal, enviar solamente un contorno de altura que es el promedio del contorno de altura del primero y segundo canal y usar el mismo contorno en la aplicación del TW-MDCT sobre ambos canales. Por otra parte, podría haber una señal en donde la estimación del contorno de altura produce resultado diferentes para el primero y segundo canal respectivamente. En este caso, los contornos de altura codificados individualmente son enviados dentro del canal correspondiente.
En lo siguiente, se describirá una descodificación ventajosa de datos de contorno de altura de acuerdo con un aspecto de la invención. Por ejemplo, si la bandera "active PitchData" es 0, el contorno de altura es ajustado a 1 para todas las muestras en el cuadro, de otra manera los nodos de
contorno de altura individuales son calculados como sigue:
- hay numPitches + 1 nodos,
- nodo [0] es siempre 1.0;
nodo [i] =nodo [i-1] «relChange [i] (i=l ..numPitches+1) , en donde el relChange es obtenido por la cuantificación inversa del pitchldx[i].
El' contorno de altura es luego generado por la interpolación lineal entre los nodos, en donde las posiciones de muestra de nodo son 0 : frameLen/numPitches : frameLen.
Alternativas de Implementación
Dependiendo de ciertos requerimiéntos de implementación, las modalidades de la invención pueden ser implementadas en elementos físicos o en elementos de programación. La implementación puede ser efectuada utilizando un medio de almacenamiento digital, por ejemplo un disco flexible, un DVD, un CD, un ROM, un PROM, un EPROM, un EEPROM o una memoria instantánea, que tiene señales de control que se pueden leer electrónicamente guardadas en el mismo, que cooperan (o son aptas de cooperar) con un sistema de computadora programable de tal manera que el método respectivo es ejecutado.
Algunas modalidades de acuerdo con la invención comprenden un portador de datos que tiene señales de control que se pueden leer electrónicamente, que son aptas de cooperar
con un sistema de computadora programable, de tal manera que uno de los métodos descritos en la presente es efectuado.
En general, las modalidades de la presente invención pueden ser implementadas como un producto de programa de computadora con un código de programa, el código de programa es operativo para efectuar uno de los métodos cuando el producto de programa de computadora se ejecuta en una computadora. El código de programa puede por ejemplo ser guardado en un portador que se puede leer por una máquina.
Otras modalidades comprenden el programa de computadora para efectuar uno de los métodos descritos en la presente, guardados sobre un portador que se puede leer por una máquina .
En otras palabras, una modalidad del método de la invención es, por consiguiente, un programa de computadora que tiene códigos de programa para efectuar uno de los métodos descritos en la presente, cuando el programa de computadora se ejecuta en una computadora.
Una modalidad adicional del método de la invención es, por consiguiente, un portador de datos (o un medio de almacenamiento digital o un medio que se puede leer por computadora) que comprende, grabado sobre el mismo, el programa de computadora para efectuar uno de los métodos descritos en la presente .
Una modalidad adicional del método de la invención
es, por consiguiente, una corriente de datos o una secuencia de señales que representan el programa de computadora para efectuar uno de los métodos descritos en la presente. La corriente de datos o la secuencia de señales pueden por ejemplo estar configuradas para ser transferidas vía una conexión de comunicación de datos, por ejemplo vía Internet.
Una modalidad adicional comprende medios de procesamiento, por ejemplo una computadora, o un dispositivo lógico programable, configurado o apto para efectuar uno de los métodos descritos en la presente.
Una modalidad adicional comprende una computadora que tiene instalado en la misma el programa de computadora para efectuar uno de los métodos descritos en la presente.
En algunas modalidades, se puede usar un dispositivo lógico programable (por ejemplo un arreglo de compuertas programable en el campo) para efectuar algunas o toda las funcionalidades de los métodos descritos en la presente. En algunas modalidades, un arreglo de compuerta programable en el campo puede cooperar con un microprocesador con el fin de efectuar uno de los métodos descritos en la presente.
Claims (15)
1. Un descodificador de señal de audio para proveer una representación de señal de audio de multi-canal descodificada en base a una representación de señal de audio de multi-canal codificada, el descodificador de señal de audio está caracterizado porque comprende: un descodificador de distorsión del tiempo configurado para usar selectivamente contornos de distorsión del tiempo específicos de canal de audio individuales o un contorno de distorsión del tiempo de multi-canal adjunto para la reconstrucción de una pluralidad de canales de audio representados por la representación de señal de audio de multi- canal codificada.
2. El descodificador de señal de audio de conformidad con la reivindicación 1, caracterizado porque el descodificador de distorsión del tiempo está configurado para usar selectivamente un contorno de distorsión del tiempo de multi- canal adjunto para una reconstrucción de distorsión en el tiempo de una pluralidad de canales de audio representados por la representación de señal de audio de multi-canal codificada para la cual información del dominio espectral codificada individual está disponible.
3. El descodificador de señal de audio de conformidad -con la reivindicación 2, caracterizado porque el descodificador de distorsión del tiempo está configurado para recibir una primera información del dominio espectral asociada con un primero de los canales de audio y para proveer, en base a lo mismo, una representación del dominio de tiempo del primer canal de audio utilizando una transformación del dominio de frecuencia a dominio de tiempo distorsionado; en donde el descodificador de distorsión del tiempo está configurado además para recibir una segunda información del dominio espectral codificada, asociada con un segundo de los canales de audio y para proveer, en base a lo mismo, una representación del dominio de tiempo distorsionada del segundo canal de audio utilizando una transformación del dominio de frecuencia a dominio de tiempo; en donde la segunda información del dominio espectral es diferente de la primera información del dominio espectral y en donde el descodificador de distorsión del tiempo está configurado para re-muestrear variablemente en el tiempo, en base al contorno de distorsión del tiempo de multi-canal adjunto, la representación del dominio de tiempo distorsionada del primer canal de audio o una versión procesada de la misma, para obtener una representación muestreada regularmente del primer canal de audio y para re-muestrear de manera variable en el tiempo, en base al contorno de distorsión del tiempo de multi-canal adjunto, la representación del dominio de tiempo distorsionada del segundo canal de audio o una versión procesada del mismo, para obtener una representación muestreada regularmente del segundo canal de audio.
4. El descodificador de señal de audio de conformidad con cualquiera de las reivindicaciones 1 a 3, caracterizado porque el descodificador de distorsión del tiempo está configurado para derivar un contorno de tiempo de multi-canal adjunto a partir de la información de contorno de distorsión del tiempo de multi-canal adjunta y derivar una primera forma de ventana especifica de canal individual asociada con el primero de los canales de audio en base a la primera información de forma de ventana codificada y derivar una segunda forma de ventana especifica de canal individual asociada con el segundo de los canales de audio en base a la segunda información de forma de ventana codificada y aplicar la primera forma de ventana a la representación del dominio de tiempo distorsionada del primer canal de audio, para obtener una versión procesada de la representación del dominio de tiempo distorsionada del primer canal de audio y aplicar la segunda forma de ventana a la representación del dominio de tiempo distorsionada del segundo canal de audio, para obtener una versión procesada de la representación del dominio de tiempo distorsionada del segundo canal de audio; en donde el descodificador de distorsión del tiempo es apto de aplicar diferentes formas de ventana a las representaciones del dominio de tiempo ' distorsionadas del primero y segundo canal de audio de un cuadro dado dependiendo de la información de forma de ventana especifica de canal individual .
5. El descodificador de señal de audio de conformidad con la reivindicación 4, caracterizado porque el descodificador de distorsión del tiempo está configurado para aplicar un escalamiento de tiempo común, que es determinado por el contorno de tiempo multi-canal adjunto a diferentes formas de ventana cuando se forman en ventanas las representaciones del dominio de tiempo distorsionadas de los primeros y segundos canales de audio.
6. Un codificador de señal de audio para proveer una representación codificada de una señal de audio de multi-canal, el codificador de señal de audio está caracterizado porque comprende : un proveedor de representación de audio codificada configurado para proveer selectivamente una representación de audio codificada que comprende una información de contorno de distorsión del tiempo de multi-canal común, asociada comúnmente con una pluralidad de canales de audio de la señal de audio de multi-canal o una representación de audio codificada que comprende información del contorno de distorsión del tiempo individual, asociada individualmente con los diferentes canales de audio de la pluralidad de canales de audio, dependiendo de la información que describe una similaridad de diferencias entre los contornos de distorsión del tiempo asociados con los canales de audio de la pluralidad de canales de audio.
7. El descodificador de señal de audio de conformidad con la reivindicación 6, caracterizado porque el proveedor de representación de audio codificada está configurado para aplicar una información de contorno de distorsión del tiempo de multi-canal común para obtener una versión distorsionada en el tiempo de un primero de los canales de audio y para obtener una versión distorsionada en el tiempo de un segundo de los canales de audio y proveer una primera información de dominio espectral codificada individual asociada con un primero de los canales de audio, en base a la versión distorsionada en el tiempo del primer canal de audio y proveer una segunda información del dominio espectral codificada individual asociada con un segundo de los canales de audio, en base a la versión distorsionada en el tiempo del segundo canal de audio.
8. El descodificador de señal de audio de conformidad con la reivindicación 6 o 7, caracterizado porque el proveedor de representación de audio codificado está configurado para proveer la representación codificada de la señal, de audio de multi-canal, de tal manera que la representación codificada de la señal de multi-canal comprende la información de contorno de distorsión del tiempo de multi-canal común, una representación espectral codificada de una versión distorsionada en el tiempo de una primera señal de canal de audio, " distorsionada en el tiempo de acuerdo con la información de contorno de distorsión del tiempo de multi-canal común y una representación espectral codificada de una versión distorsionada en el tiempo de una segunda señal de audio de canal, distorsionada en el tiempo de acuerdo con la información de contorno de distorsión del tiempo de multi-canal común.
9. El descodificador de señal de audio de conformidad con cualquiera de las reivindicaciones 6 a 8, caracterizado porque el codificador de señal de audio está configurado para obtener la información de contorno de distorsión en el tiempo de multi-canal común, de tal manera que la información de contorno de distorsión del tiempo de multi-canal común representa un promedio de contornos de distorsión individuales asociados con el primer canal de señal de audio y el segundo canal de señal de audio.
10. El descodificador de señal de audio de conformidad con cualquiera de las reivindicaciones 6 a 9, caracterizado porque el proveedor de representación de audio codificado está configurado para proveer una información lateral dentro de la representación codificada de la señal de-audio de multi-canal, la información lateral indica, en una base por cuadro de audio , si datos de distors ión del tiempo están presentes para un cuadro de audio dado y si una información de contorno de distors ión del tiempo común está presente para el cuadro de audio dado .
11 . Una representación de señal de audio de multi-canal codificada que representa una señal de audio de multi-canal , la representación de señal de audio de multi-canal está caracteri zada porque comprende : una representación del dominio de frecuencia codificada que representa una pluralidad de canales de audio distorsionados en el tiempo , distorsionados en el tiempo de acuerdo con una distorsión del tiempo común y una representación codi ficada de una información de contorno de distorsión del tiempo de multi-canal común , asociada comúnmente con los canales de audio y que representa la distorsión del tiempo común .
12. La representación de canal de audio codificada de conformidad con la reivindicación 11, caracterizada porque la representación del dominio de frecuencia codificada comprende información del dominio de frecuencia codificada individual de múltiples canales de audio que tienen diferentes contenidos de audio y en donde la representación codificada de la información de contorno de distorsión del tiempo de multi-canal común está asociada con los múltiples canales de audio que tienen diferente contenido de audio.
13. Un método para proveer una representación de señal de audio de multi-canal descodificada en base a una representación de señal de audio de multi-canal codificada, el método está caracterizado porque comprende: utilizando selectivamente contornos de distorsión de tiempo especifico de canal de audio individuales o un contorno de distorsión del tiempo de multi-canal adjunto para una reconstrucción de la pluralidad de canales de audio representados por la representación de señal de audio de multi-canal codificada.
14. Un método para proveer una representación codificada de una señal de audio de multi-canal, el método está caracterizado porque comprende: proveer selectivamente una representación de audio codificada que conprende una información de contorno de distorsión del tiempo de multi-canal común, asociada comúnmente con una pluralidad de canales de audio con la señal de audio de multi-canal o una representación de audio codificada que comprende información de contorno de distorsión del tiempo individual, asociada individualmente con los diferentes canales de audio de la pluralidad de canales de audio, dependiendo de la información que describe la similaridad o diferencia entre contornos de distorsión del tiempo asociados con los canales de audio de la. pluralidad de señales de audio.
15. Un programa de computadora para efectuar el método de conformidad con la reivindicación 13 o la reivindicación 14, caracterizado porque el programa de computadora se ejecuta en una computadora.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US7987308P | 2008-07-11 | 2008-07-11 | |
US10382008P | 2008-10-08 | 2008-10-08 | |
PCT/EP2009/004758 WO2010003583A1 (en) | 2008-07-11 | 2009-07-01 | Audio signal decoder, audio signal encoder, encoded multi-channel audio signal representation, methods and computer program |
Publications (1)
Publication Number | Publication Date |
---|---|
MX2010010747A true MX2010010747A (es) | 2010-11-30 |
Family
ID=41131685
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
MX2010010749A MX2010010749A (es) | 2008-07-11 | 2009-07-01 | Descodificador de señal de audio, proveedor de datos de contorno de distorsion de tiempo, metodo y programa de computadora. |
MX2010010747A MX2010010747A (es) | 2008-07-11 | 2009-07-01 | Descodificador de señal de audio, codificador de señal de audio, representacion de señal de audio de multi-canal codificada, metodos y programa de computadora. |
MX2010010748A MX2010010748A (es) | 2008-07-11 | 2009-07-01 | Calculador de contorno de distorsion de tiempo, codificador de señal de audio, representacion de señal de audio codificada, metodos y programas de computadora. |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
MX2010010749A MX2010010749A (es) | 2008-07-11 | 2009-07-01 | Descodificador de señal de audio, proveedor de datos de contorno de distorsion de tiempo, metodo y programa de computadora. |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
MX2010010748A MX2010010748A (es) | 2008-07-11 | 2009-07-01 | Calculador de contorno de distorsion de tiempo, codificador de señal de audio, representacion de señal de audio codificada, metodos y programas de computadora. |
Country Status (18)
Country | Link |
---|---|
US (3) | US9043216B2 (es) |
EP (3) | EP2260485B1 (es) |
JP (4) | JP5323180B2 (es) |
KR (3) | KR101205615B1 (es) |
CN (3) | CN102007531B (es) |
AR (3) | AR072739A1 (es) |
AT (2) | ATE532177T1 (es) |
AU (3) | AU2009267486B2 (es) |
BR (2) | BRPI0906300B1 (es) |
CA (3) | CA2718859C (es) |
ES (3) | ES2376849T3 (es) |
HK (3) | HK1151620A1 (es) |
MX (3) | MX2010010749A (es) |
MY (1) | MY154452A (es) |
PL (3) | PL2257945T3 (es) |
RU (3) | RU2527760C2 (es) |
TW (3) | TWI453732B (es) |
WO (3) | WO2010003582A1 (es) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7720677B2 (en) * | 2005-11-03 | 2010-05-18 | Coding Technologies Ab | Time warped modified transform coding of audio signals |
EP2107556A1 (en) * | 2008-04-04 | 2009-10-07 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio transform coding using pitch correction |
MY154452A (en) | 2008-07-11 | 2015-06-15 | Fraunhofer Ges Forschung | An apparatus and a method for decoding an encoded audio signal |
ES2654433T3 (es) | 2008-07-11 | 2018-02-13 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Codificador de señal de audio, método para codificar una señal de audio y programa informático |
PL2471061T3 (pl) * | 2009-10-08 | 2014-03-31 | Fraunhofer Ges Forschung | Działający w wielu trybach dekoder sygnału audio, działający w wielu trybach koder sygnału audio, sposoby i program komputerowy stosujące kształtowanie szumu oparte o kodowanie z wykorzystaniem predykcji liniowej |
RU2586848C2 (ru) | 2010-03-10 | 2016-06-10 | Долби Интернейшнл АБ | Декодер звукового сигнала, кодирующее устройство звукового сигнала, способы и компьютерная программа, использующие зависящее от частоты выборки кодирование контура деформации времени |
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 |
EP2553928A4 (en) * | 2010-03-26 | 2014-06-25 | Agency Science Tech & Res | METHODS AND DEVICES FOR OBTAINING AN ENCODED DIGITAL SIGNAL |
ES2558508T3 (es) * | 2011-01-25 | 2016-02-04 | Nippon Telegraph And Telephone Corporation | Método de codificación, codificador, método de determinación de la cantidad de una característica periódica, aparato de determinación de la cantidad de una característica periódica, programa y medio de grabación |
ES2639646T3 (es) | 2011-02-14 | 2017-10-27 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Codificación y decodificación de posiciones de impulso de pistas de una señal de audio |
ES2529025T3 (es) | 2011-02-14 | 2015-02-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Aparato y método para procesar una señal de audio decodificada en un dominio espectral |
MY159444A (en) | 2011-02-14 | 2017-01-13 | Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E V | Encoding and decoding of pulse positions of tracks of an audio signal |
AR085224A1 (es) | 2011-02-14 | 2013-09-18 | Fraunhofer Ges Forschung | Codec de audio utilizando sintesis de ruido durante fases inactivas |
SG192734A1 (en) | 2011-02-14 | 2013-09-30 | Fraunhofer Ges Forschung | Apparatus and method for error concealment in low-delay unified speech and audio coding (usac) |
ES2534972T3 (es) | 2011-02-14 | 2015-04-30 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Predicción lineal basada en esquema de codificación utilizando conformación de ruido de dominio espectral |
TWI564882B (zh) | 2011-02-14 | 2017-01-01 | 弗勞恩霍夫爾協會 | 利用重疊變換之資訊信號表示技術(一) |
EP3503098B1 (en) | 2011-02-14 | 2023-08-30 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method decoding an audio signal using an aligned look-ahead portion |
JP5914527B2 (ja) | 2011-02-14 | 2016-05-11 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | 過渡検出及び品質結果を使用してオーディオ信号の一部分を符号化する装置及び方法 |
CN103620679B (zh) | 2011-03-18 | 2017-07-04 | 弗劳恩霍夫应用研究促进协会 | 具有灵活配置功能的音频编码器和解码器 |
TWI450266B (zh) * | 2011-04-19 | 2014-08-21 | Hon Hai Prec Ind Co Ltd | 電子裝置及音頻資料的解碼方法 |
US9967600B2 (en) * | 2011-05-26 | 2018-05-08 | Nbcuniversal Media, Llc | Multi-channel digital content watermark system and method |
ES2549953T3 (es) * | 2012-08-27 | 2015-11-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Aparato y método para la reproducción de una señal de audio, aparato y método para la generación de una señal de audio codificada, programa de ordenador y señal de audio codificada |
CN102855884B (zh) * | 2012-09-11 | 2014-08-13 | 中国人民解放军理工大学 | 基于短时连续非负矩阵分解的语音时长调整方法 |
CN105976824B (zh) | 2012-12-06 | 2021-06-08 | 华为技术有限公司 | 信号解码的方法和设备 |
US9548056B2 (en) * | 2012-12-19 | 2017-01-17 | Dolby International Ab | Signal adaptive FIR/IIR predictors for minimizing entropy |
RU2638734C2 (ru) | 2013-10-18 | 2017-12-15 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Кодирование спектральных коэффициентов спектра аудиосигнала |
FR3015754A1 (fr) * | 2013-12-20 | 2015-06-26 | Orange | Re-echantillonnage d'un signal audio cadence a une frequence d'echantillonnage variable selon la trame |
EP2980791A1 (en) * | 2014-07-28 | 2016-02-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Processor, method and computer program for processing an audio signal using truncated analysis or synthesis window overlap portions |
JP6807033B2 (ja) * | 2015-11-09 | 2021-01-06 | ソニー株式会社 | デコード装置、デコード方法、およびプログラム |
US10074373B2 (en) * | 2015-12-21 | 2018-09-11 | Qualcomm Incorporated | Channel adjustment for inter-frame temporal shift variations |
EP3405951B1 (en) | 2016-01-22 | 2019-11-13 | Fraunhofer Gesellschaft zur Förderung der Angewand | Apparatuses and methods for encoding or decoding a multi-channel audio signal using frame control synchronization |
CN107749304B (zh) | 2017-09-07 | 2021-04-06 | 电信科学技术研究院 | 有限冲激响应滤波器系数矢量的可持续更新方法及装置 |
BR112022003440A2 (pt) * | 2019-09-03 | 2022-05-24 | Dolby Laboratories Licensing Corp | Codec de efeitos de baixa latência, baixa frequência |
TWI752551B (zh) * | 2020-07-13 | 2022-01-11 | 國立屏東大學 | 迅吃偵測方法、迅吃偵測裝置與電腦程式產品 |
Family Cites Families (81)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5054075A (en) | 1989-09-05 | 1991-10-01 | Motorola, Inc. | Subband decoding method and apparatus |
JP3076859B2 (ja) | 1992-04-20 | 2000-08-14 | 三菱電機株式会社 | ディジタルオーディオ信号の信号処理装置 |
US5408580A (en) | 1992-09-21 | 1995-04-18 | Aware, Inc. | Audio compression system employing multi-rate signal analysis |
JPH0784597A (ja) * | 1993-09-20 | 1995-03-31 | Fujitsu Ltd | 音声符号化装置および音声復号化装置 |
US5717823A (en) * | 1994-04-14 | 1998-02-10 | Lucent Technologies Inc. | Speech-rate modification for linear-prediction based analysis-by-synthesis speech coders |
FI105001B (fi) | 1995-06-30 | 2000-05-15 | Nokia Mobile Phones Ltd | Menetelmä odotusajan selvittämiseksi puhedekooderissa epäjatkuvassa lähetyksessä ja puhedekooderi sekä lähetin-vastaanotin |
US5704003A (en) | 1995-09-19 | 1997-12-30 | Lucent Technologies Inc. | RCELP coder |
JP3707116B2 (ja) | 1995-10-26 | 2005-10-19 | ソニー株式会社 | 音声復号化方法及び装置 |
US5659622A (en) | 1995-11-13 | 1997-08-19 | Motorola, Inc. | Method and apparatus for suppressing noise in a communication system |
US5848391A (en) | 1996-07-11 | 1998-12-08 | Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. | Method subband of coding and decoding audio signals using variable length windows |
US6134518A (en) | 1997-03-04 | 2000-10-17 | International Business Machines Corporation | Digital audio signal coding using a CELP coder and a transform coder |
KR100261253B1 (ko) | 1997-04-02 | 2000-07-01 | 윤종용 | 비트율 조절이 가능한 오디오 부호화/복호화 방법및 장치 |
US6070137A (en) | 1998-01-07 | 2000-05-30 | Ericsson Inc. | Integrated frequency-domain voice coding using an adaptive spectral enhancement filter |
DE69926821T2 (de) | 1998-01-22 | 2007-12-06 | Deutsche Telekom Ag | Verfahren zur signalgesteuerten Schaltung zwischen verschiedenen Audiokodierungssystemen |
US6115689A (en) | 1998-05-27 | 2000-09-05 | Microsoft Corporation | Scalable audio coder and decoder |
US6453285B1 (en) | 1998-08-21 | 2002-09-17 | Polycom, Inc. | Speech activity detector for use in noise reduction system, and methods therefor |
US6449590B1 (en) | 1998-08-24 | 2002-09-10 | Conexant Systems, Inc. | Speech encoder using warping in long term preprocessing |
US6330533B2 (en) | 1998-08-24 | 2001-12-11 | Conexant Systems, Inc. | Speech encoder adaptively applying pitch preprocessing with warping of target signal |
US7047185B1 (en) | 1998-09-15 | 2006-05-16 | Skyworks Solutions, Inc. | Method and apparatus for dynamically switching between speech coders of a mobile unit as a function of received signal quality |
US6424938B1 (en) | 1998-11-23 | 2002-07-23 | Telefonaktiebolaget L M Ericsson | Complex signal activity detection for improved speech/noise classification of an audio signal |
US6691084B2 (en) | 1998-12-21 | 2004-02-10 | Qualcomm Incorporated | Multiple mode variable rate speech coding |
US6223151B1 (en) | 1999-02-10 | 2001-04-24 | Telefon Aktie Bolaget Lm Ericsson | Method and apparatus for pre-processing speech signals prior to coding by transform-based speech coders |
DE19910833C1 (de) | 1999-03-11 | 2000-05-31 | Mayer Textilmaschf | Kurzketten-Schärmaschine |
WO2000074039A1 (en) | 1999-05-26 | 2000-12-07 | Koninklijke Philips Electronics N.V. | Audio signal transmission system |
US6604070B1 (en) * | 1999-09-22 | 2003-08-05 | Conexant Systems, Inc. | System of encoding and decoding speech signals |
US6782360B1 (en) | 1999-09-22 | 2004-08-24 | Mindspeed Technologies, Inc. | Gain quantization for a CELP speech coder |
US6978236B1 (en) * | 1999-10-01 | 2005-12-20 | Coding Technologies Ab | Efficient spectral envelope coding using variable time/frequency resolution and time/frequency switching |
US6366880B1 (en) | 1999-11-30 | 2002-04-02 | Motorola, Inc. | Method and apparatus for suppressing acoustic background noise in a communication system by equaliztion of pre-and post-comb-filtered subband spectral energies |
JP2001255882A (ja) * | 2000-03-09 | 2001-09-21 | Sony Corp | 音声信号処理装置及びその信号処理方法 |
JP2002149200A (ja) | 2000-08-31 | 2002-05-24 | Matsushita Electric Ind Co Ltd | 音声処理装置及び音声処理方法 |
US6850884B2 (en) | 2000-09-15 | 2005-02-01 | Mindspeed Technologies, Inc. | Selection of coding parameters based on spectral content of a speech signal |
EP1340317A1 (en) | 2000-11-03 | 2003-09-03 | Koninklijke Philips Electronics N.V. | Parametric coding of audio signals |
US6925435B1 (en) | 2000-11-27 | 2005-08-02 | Mindspeed Technologies, Inc. | Method and apparatus for improved noise reduction in a speech encoder |
SE0004818D0 (sv) | 2000-12-22 | 2000-12-22 | Coding Technologies Sweden Ab | Enhancing source coding systems by adaptive transposition |
WO2002082428A1 (en) | 2001-04-05 | 2002-10-17 | Koninklijke Philips Electronics N.V. | Time-scale modification of signals applying techniques specific to determined signal types |
FI110729B (fi) | 2001-04-11 | 2003-03-14 | Nokia Corp | Menetelmä pakatun audiosignaalin purkamiseksi |
CN1312662C (zh) | 2001-05-10 | 2007-04-25 | 杜比实验室特许公司 | 通过降低前噪声改善音频编码系统的瞬时性能的方法 |
DE20108778U1 (de) * | 2001-05-25 | 2001-08-02 | Mannesmann VDO AG, 60388 Frankfurt | Gehäuse für ein in einem Fahrzeug verwendbares Gerät zur automatischen Ermittlung von Straßenbenutzungsgebühren |
US6879955B2 (en) * | 2001-06-29 | 2005-04-12 | Microsoft Corporation | Signal modification based on continuous time warping for low bit rate CELP coding |
EP1278185A3 (en) | 2001-07-13 | 2005-02-09 | Alcatel | Method for improving noise reduction in speech transmission |
US6963842B2 (en) | 2001-09-05 | 2005-11-08 | Creative Technology Ltd. | Efficient system and method for converting between different transform-domain signal representations |
CN1319043C (zh) | 2001-10-26 | 2007-05-30 | 皇家飞利浦电子股份有限公司 | 用于编码和解码音频信号的方法与设备以及包括这样的设备的系统 |
CA2365203A1 (en) | 2001-12-14 | 2003-06-14 | Voiceage Corporation | A signal modification method for efficient coding of speech signals |
JP2003316392A (ja) | 2002-04-22 | 2003-11-07 | Mitsubishi Electric Corp | オーディオ信号の復号化及び符号化装置、復号化装置並びに符号化装置 |
US7457757B1 (en) | 2002-05-30 | 2008-11-25 | Plantronics, Inc. | Intelligibility control for speech communications systems |
US7447631B2 (en) | 2002-06-17 | 2008-11-04 | Dolby Laboratories Licensing Corporation | Audio coding system using spectral hole filling |
TWI288915B (en) | 2002-06-17 | 2007-10-21 | Dolby Lab Licensing Corp | Improved audio coding system using characteristics of a decoded signal to adapt synthesized spectral components |
US7043423B2 (en) | 2002-07-16 | 2006-05-09 | Dolby Laboratories Licensing Corporation | Low bit-rate audio coding systems and methods that use expanding quantizers with arithmetic coding |
CN1703736A (zh) | 2002-10-11 | 2005-11-30 | 诺基亚有限公司 | 用于源控制可变比特率宽带语音编码的方法和装置 |
CN1757060B (zh) | 2003-03-15 | 2012-08-15 | 曼德斯必德技术公司 | Celp语音编码的话音指数控制 |
JP4629353B2 (ja) * | 2003-04-17 | 2011-02-09 | インベンテイオ・アクテイエンゲゼルシヤフト | エスカレータまたは動く歩道のための移動手摺り駆動装置 |
BRPI0409970B1 (pt) | 2003-05-01 | 2018-07-24 | Nokia Technologies Oy | “Método para codificar um sinal de som amostrado, método para decodificar um fluxo de bit representativo de um sinal de som amostrado, codificador, decodificador e fluxo de bit” |
US7363221B2 (en) | 2003-08-19 | 2008-04-22 | Microsoft Corporation | Method of noise reduction using instantaneous signal-to-noise ratio as the principal quantity for optimal estimation |
KR100604897B1 (ko) | 2004-09-07 | 2006-07-28 | 삼성전자주식회사 | 하드 디스크 드라이브 조립체, 하드 디스크 드라이브의장착 구조 및 이를 채용한 휴대폰 |
KR100640893B1 (ko) | 2004-09-07 | 2006-11-02 | 엘지전자 주식회사 | 음성 인식용 베이스밴드 모뎀 및 이동통신용 단말기 |
EP1849154B1 (en) * | 2005-01-27 | 2010-12-15 | Synchro Arts Limited | Methods and apparatus for use in sound modification |
US8155965B2 (en) | 2005-03-11 | 2012-04-10 | Qualcomm Incorporated | Time warping frames inside the vocoder by modifying the residual |
CN101167125B (zh) * | 2005-03-11 | 2012-02-29 | 高通股份有限公司 | 用于对声码器内的帧进行相位匹配的方法及设备 |
BRPI0608306A2 (pt) | 2005-04-01 | 2009-12-08 | Qualcomm Inc | sistemas, métodos e equipamentos para supressão de rajada em banda alta |
JP4550652B2 (ja) | 2005-04-14 | 2010-09-22 | 株式会社東芝 | 音響信号処理装置、音響信号処理プログラム及び音響信号処理方法 |
US7885809B2 (en) | 2005-04-20 | 2011-02-08 | Ntt Docomo, Inc. | Quantization of speech and audio coding parameters using partial information on atypical subsequences |
US8892448B2 (en) | 2005-04-22 | 2014-11-18 | Qualcomm Incorporated | Systems, methods, and apparatus for gain factor smoothing |
JP4450324B2 (ja) | 2005-08-15 | 2010-04-14 | 日立オートモティブシステムズ株式会社 | 内燃機関の始動制御装置 |
JP2007084597A (ja) | 2005-09-20 | 2007-04-05 | Fuji Shikiso Kk | 表面処理カーボンブラック組成物およびその製造方法 |
US7720677B2 (en) * | 2005-11-03 | 2010-05-18 | Coding Technologies Ab | Time warped modified transform coding of audio signals |
US7366658B2 (en) | 2005-12-09 | 2008-04-29 | Texas Instruments Incorporated | Noise pre-processor for enhanced variable rate speech codec |
ES2391117T3 (es) | 2006-02-23 | 2012-11-21 | Lg Electronics Inc. | Método y aparato para procesar una señal de audio |
TWI294107B (en) | 2006-04-28 | 2008-03-01 | Univ Nat Kaohsiung 1St Univ Sc | A pronunciation-scored method for the application of voice and image in the e-learning |
RU2418322C2 (ru) | 2006-06-30 | 2011-05-10 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Аудиокодер, аудиодекодер и аудиопроцессор, имеющий динамически изменяющуюся характеристику перекоса |
US7873511B2 (en) * | 2006-06-30 | 2011-01-18 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio encoder, audio decoder and audio processor having a dynamically variable warping characteristic |
US8682652B2 (en) | 2006-06-30 | 2014-03-25 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio encoder, audio decoder and audio processor having a dynamically variable warping characteristic |
CN100489964C (zh) * | 2006-08-18 | 2009-05-20 | 广州广晟数码技术有限公司 | 音频解码 |
US8239190B2 (en) | 2006-08-22 | 2012-08-07 | Qualcomm Incorporated | Time-warping frames of wideband vocoder |
CN101025918B (zh) | 2007-01-19 | 2011-06-29 | 清华大学 | 一种语音/音乐双模编解码无缝切换方法 |
US9653088B2 (en) | 2007-06-13 | 2017-05-16 | Qualcomm Incorporated | Systems, methods, and apparatus for signal encoding using pitch-regularizing and non-pitch-regularizing coding |
EP2107556A1 (en) | 2008-04-04 | 2009-10-07 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio transform coding using pitch correction |
ES2654433T3 (es) | 2008-07-11 | 2018-02-13 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Codificador de señal de audio, método para codificar una señal de audio y programa informático |
MY154452A (en) | 2008-07-11 | 2015-06-15 | Fraunhofer Ges Forschung | An apparatus and a method for decoding an encoded audio signal |
JP5297891B2 (ja) | 2009-05-25 | 2013-09-25 | 京楽産業.株式会社 | 遊技機 |
US8670990B2 (en) * | 2009-08-03 | 2014-03-11 | Broadcom Corporation | Dynamic time scale modification for reduced bit rate audio coding |
WO2011048815A1 (ja) * | 2009-10-21 | 2011-04-28 | パナソニック株式会社 | オーディオ符号化装置、復号装置、方法、回路およびプログラム |
-
2009
- 2009-06-23 MY MYPI2011000095A patent/MY154452A/en unknown
- 2009-07-01 EP EP09776910A patent/EP2260485B1/en active Active
- 2009-07-01 AU AU2009267486A patent/AU2009267486B2/en active Active
- 2009-07-01 AU AU2009267484A patent/AU2009267484B2/en active Active
- 2009-07-01 JP JP2011510908A patent/JP5323180B2/ja active Active
- 2009-07-01 MX MX2010010749A patent/MX2010010749A/es active IP Right Grant
- 2009-07-01 KR KR1020107021830A patent/KR101205615B1/ko active IP Right Grant
- 2009-07-01 EP EP09776909A patent/EP2257945B1/en active Active
- 2009-07-01 KR KR1020107021806A patent/KR101205593B1/ko active IP Right Grant
- 2009-07-01 US US12/935,718 patent/US9043216B2/en active Active
- 2009-07-01 PL PL09776909T patent/PL2257945T3/pl unknown
- 2009-07-01 ES ES09776908T patent/ES2376849T3/es active Active
- 2009-07-01 ES ES09776910T patent/ES2404132T3/es active Active
- 2009-07-01 CN CN2009801116873A patent/CN102007531B/zh active Active
- 2009-07-01 AT AT09776909T patent/ATE532177T1/de active
- 2009-07-01 BR BRPI0906300-5A patent/BRPI0906300B1/pt active IP Right Grant
- 2009-07-01 RU RU2010139023/08A patent/RU2527760C2/ru active
- 2009-07-01 PL PL09776910T patent/PL2260485T3/pl unknown
- 2009-07-01 CA CA2718859A patent/CA2718859C/en active Active
- 2009-07-01 AT AT09776908T patent/ATE532176T1/de active
- 2009-07-01 RU RU2010139022/28A patent/RU2486484C2/ru active
- 2009-07-01 CA CA2718740A patent/CA2718740C/en active Active
- 2009-07-01 US US12/935,740 patent/US9025777B2/en active Active
- 2009-07-01 AU AU2009267485A patent/AU2009267485B2/en active Active
- 2009-07-01 CN CN2009801116869A patent/CN102007537B/zh active Active
- 2009-07-01 WO PCT/EP2009/004757 patent/WO2010003582A1/en active Application Filing
- 2009-07-01 CA CA2718857A patent/CA2718857C/en active Active
- 2009-07-01 KR KR1020107021817A patent/KR101205644B1/ko active IP Right Grant
- 2009-07-01 ES ES09776909T patent/ES2376974T3/es active Active
- 2009-07-01 MX MX2010010747A patent/MX2010010747A/es active IP Right Grant
- 2009-07-01 WO PCT/EP2009/004756 patent/WO2010003581A1/en active Application Filing
- 2009-07-01 WO PCT/EP2009/004758 patent/WO2010003583A1/en active Application Filing
- 2009-07-01 BR BRPI0906320-0A patent/BRPI0906320B1/pt active IP Right Grant
- 2009-07-01 RU RU2010139021/08A patent/RU2509381C2/ru active
- 2009-07-01 MX MX2010010748A patent/MX2010010748A/es active IP Right Grant
- 2009-07-01 US US12/935,731 patent/US9299363B2/en active Active
- 2009-07-01 EP EP09776908A patent/EP2257944B1/en active Active
- 2009-07-01 JP JP2011510909A patent/JP5551686B2/ja active Active
- 2009-07-01 PL PL09776908T patent/PL2257944T3/pl unknown
- 2009-07-01 JP JP2011510907A patent/JP5323179B2/ja active Active
- 2009-07-01 CN CN2009801116801A patent/CN102007536B/zh active Active
- 2009-07-09 TW TW098123192A patent/TWI453732B/zh active
- 2009-07-09 TW TW098123191A patent/TWI459374B/zh active
- 2009-07-09 TW TW098123194A patent/TWI451402B/zh active
- 2009-07-13 AR ARP090102630A patent/AR072739A1/es active IP Right Grant
- 2009-07-13 AR ARP090102629A patent/AR072500A1/es active IP Right Grant
- 2009-07-13 AR ARP090102627A patent/AR072498A1/es unknown
-
2011
- 2011-06-07 HK HK11105652.5A patent/HK1151620A1/xx unknown
- 2011-06-07 HK HK11105650.7A patent/HK1151619A1/xx unknown
- 2011-06-08 HK HK11105751.5A patent/HK1151883A1/xx unknown
-
2014
- 2014-01-27 JP JP2014012379A patent/JP6041815B2/ja active Active
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
MX2010010747A (es) | Descodificador de señal de audio, codificador de señal de audio, representacion de señal de audio de multi-canal codificada, metodos y programa de computadora. | |
BRPI0906319B1 (pt) | Decodificador de sinal de áudio, codificador de sinal de áudio, representação de sinal de áudio multi-canal codificado e métodos |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FG | Grant or registration |