ES2604983T3 - Ajuste de nivel en el dominio del tiempo para decodificación o codificación de señales de audio - Google Patents
Ajuste de nivel en el dominio del tiempo para decodificación o codificación de señales de audio Download PDFInfo
- Publication number
- ES2604983T3 ES2604983T3 ES14702195.0T ES14702195T ES2604983T3 ES 2604983 T3 ES2604983 T3 ES 2604983T3 ES 14702195 T ES14702195 T ES 14702195T ES 2604983 T3 ES2604983 T3 ES 2604983T3
- Authority
- ES
- Spain
- Prior art keywords
- audio signal
- representation
- level
- frequency band
- time domain
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000005236 sound signal Effects 0.000 title claims abstract description 247
- 230000008859 change Effects 0.000 claims abstract description 171
- 238000007781 pre-processing Methods 0.000 claims abstract description 23
- 238000000034 method Methods 0.000 claims description 66
- 230000007704 transition Effects 0.000 claims description 20
- 238000011002 quantification Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 10
- 230000015572 biosynthetic process Effects 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 230000002441 reversible effect Effects 0.000 claims description 7
- 238000009966 trimming Methods 0.000 claims description 7
- 230000003595 spectral effect Effects 0.000 description 78
- 238000013139 quantization Methods 0.000 description 23
- 238000012545 processing Methods 0.000 description 19
- 238000012986 modification Methods 0.000 description 16
- 230000004048 modification Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 9
- 238000001228 spectrum Methods 0.000 description 9
- 238000010606 normalization Methods 0.000 description 7
- 238000012805 post-processing Methods 0.000 description 7
- 238000001914 filtration Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 239000013598 vector Substances 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 239000003607 modifier Substances 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000007493 shaping process Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013479 data entry Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 108010076504 Protein Sorting Signals Proteins 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 238000012800 visualization 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
- 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/005—Correction of errors induced by the transmission channel, if related to the coding algorithm
-
- 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
-
- 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/0017—Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error
-
- 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/0018—Speech coding using phonetic or linguistical decoding of the source; Reconstruction using text-to-speech synthesis
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L21/0224—Processing in the time domain
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L21/0232—Processing in the frequency domain
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0316—Speech enhancement, e.g. noise reduction or echo cancellation by changing the amplitude
- G10L21/0324—Details of processing therefor
- G10L21/0332—Details of processing therefor involving modification of waveforms
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0316—Speech enhancement, e.g. noise reduction or echo cancellation by changing the amplitude
- G10L21/0324—Details of processing therefor
- G10L21/034—Automatic adjustment
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Tone Control, Compression And Expansion, Limiting Amplitude (AREA)
Abstract
Un decodificador de señales de audio (100) configurado para proporcionar una representación de señal de audio decodificada basándose en una representación de señal de audio codificada, comprendiendo el decodificador de señales de audio: una etapa de pre-procesamiento de decodificador (110) configurada para obtener una pluralidad de señales de banda de frecuencia a partir de la representación de la señal de audio codificada; un estimador de recorte (120) configurado para analizar la información adicional con respecto a una ganancia de las señales de banda de frecuencia de la representación de la señal de audio codificada en cuanto a si la información adicional sugiere un recorte potencial para determinar un factor de cambio de nivel actual para la representación de señal de audio codificada, en el que cuando la información adicional sugiere el recorte potencial, el factor de cambio de nivel actual provoca que la información de la pluralidad de señales de banda de frecuencia se cambie hacia un bit menos significativo de tal forma que se gana un espacio en al menos un bit más significativo; un cambiador de nivel (130) configurado para cambiar los niveles de las señales de banda de frecuencia de acuerdo con el factor de cambio de nivel actual para obtener las señales de banda de frecuencia cambiadas de nivel; un convertidor del dominio de la frecuencia al dominio del tiempo (140) configurado para convertir las señales de banda de frecuencia cambiadas de nivel a una representación en el dominio del tiempo; y un compensador de cambio de nivel (150) configurado para actuar sobre la representación en el dominio del tiempo para compensar al menos parcialmente un cambio de nivel aplicado a las señales de banda de frecuencia cambiadas de nivel por el cambiador de nivel (130) y para obtener una representación en el dominio del tiempo sustancialmente compensada.
Description
5
10
15
20
25
30
35
40
45
50
55
60
Ajuste de nivel en el dominio del tiempo para decodificacion o codificacion de senales de audio
DESCRIPCION
La presente invencion se refiere a codificacion, decodificacion, y procesamiento de senales de audio, y, en particular, al ajuste de un nivel de una senal que se va a convertir de frecuencia a tiempo (o que se va a convertir de tiempo a frecuencia) al intervalo dinamico de un convertidor de frecuencia a tiempo correspondiente (o convertidor de tiempo a frecuencia). Algunas realizaciones de la presente invencion se refieren al ajuste del nivel de una senal que se va a convertir de frecuencia a tiempo (o que se va a convertir de tiempo a frecuencia) al intervalo dinamico de un convertidor correspondiente implementado en aritmetica de punto fijo o enteros. Las realizaciones adicionales de la presente invencion se refieren a la prevencion de recortes para senales de audio decodificadas espectrales que utilizan ajuste de nivel en el dominio del tiempo en combinacion con informacion adicional.
El procesamiento de senales de audio se hace mas y mas importante. Los desaffos aumentan conforme se necesitan codecs de audio perceptuales modernos para ofrecer una calidad de audio satisfactoria a tasas de bits cada vez mas bajas.
En la produccion actual de contenido de audio y las cadenas de suministro el contenido maestro digitalmente disponible (flujo PCM (flujo modulado por codificacion de impulsos)) se codifica por ejemplo por un codificador AAC profesional (codificacion de audio avanzada) en el lado de creacion del contenido. El flujo de bits AAC resultante entonces se pone a disposicion para la compra por ejemplo a traves de una tienda de medios digitales en lmea. Parece que en casos raros algunas de las muestras PCM decodificadas se “recortan”, lo que significa que dos o mas muestras consecutivas alcanzaron el nivel maximo que se puede representar por la resolucion de bits subyacente (por ejemplo 16 bits) de una representacion de punto fijo cuantificada de forma uniforme (por ejemplo modulada de acuerdo con PCM) para la forma de onda de salida. Esto puede conducir a distorsiones audibles (chasquidos o distorsion corta). Aunque tfpicamente se hara un esfuerzo en el lado del codificador para evitar la ocurrencia del recorte en el lado del decodificador, sin embargo el recorte puede presentarse en el lado del decodificador por varias razones, tal como diferentes implementaciones del decodificador, errores de redondeo, errores de transmision, etc. Suponiendo que una senal de audio en la entrada del codificador esta por debajo del umbral de recorte, son multiples las razones del recorte en un codificador de audio perceptual moderno. En primer lugar, el codificador de audio aplica cuantificacion a la senal transmitida que esta disponible en una descomposicion de frecuencia de la forma de onda de entrada para reducir la tasa de datos de transmision. Los errores de cuantificacion en el dominio de la frecuencia dan como resultado pequenas desviaciones de la amplitud de senal y la fase con respecto a la forma de onda original. Si los errores de fase o amplitud se suman de forma constructiva, la posicion resultante en el dominio del tiempo puede ser temporalmente mas alta que la forma de onda original. En segundo lugar, los metodos de codificacion parametrica (por ejemplo replicacion de banda espectral, SBR) parametrizan la potencia de senal de una forma bastante basta. Tfpicamente se omite la informacion de fase. En consecuencia, la senal en el lado del receptor se regenera solamente con la potencia correcta pero sin la conservacion de la forma de onda. Las senales con una amplitud cerca a la escala completa son propensas al recorte.
Los sistemas de codificacion de audio modernos ofrecen la posibilidad de transmitir un parametro de nivel de sonoridad (g1) dandole a los decodificadores la posibilidad de ajustar la sonoridad para la reproduccion con niveles unificados. En general, esto puede conducir al recorte, si la senal de audio se codifica a niveles suficientemente altos y las ganancias de normalizacion transmitidas sugieren el aumento de los niveles de sonoridad. Ademas, la practica comun en la masterizacion del contenido de audio (especialmente musica) aumenta las senales de audio a los valores maximos posibles, produciendo el recorte de la senal de audio cuando se cuantifica de forma basta por los codecs de audio.
Para evitar el recorte de las senales de audio, se conocen los llamados limitadores como una herramienta apropiada para restringir los niveles de audio. Si una senal de audio entrante excede un cierto umbral, el limitador se activa y atenua la senal de audio de una forma que la senal de audio no excede un nivel dado a la salida. Desafortunadamente, antes del limitador, se necesita un espacio suficiente (en terminos del intervalo dinamico y/o resolucion de bits).
Por lo general, se logra cualquier normalizacion de sonoridad en el dominio de la frecuencia junto con un llamado “control de intervalo dinamico” (TRC). Esto permite suavizar la mezcla de normalizacion de sonoridad e incluso si la ganancia de normalizacion vana de trama a trama debido a la superposicion del banco de filtros.
Ademas, debido a una cuantificacion o descripcion parametrica pobre, cualquier senal de audio codificada puede tener recorte si el audio original se masterizo a niveles cercanos al umbral de recorte.
La publicacion tecnica del ISO/IEC MPEG-2 Advanced Audio Coding por Bosi et al., Journal of the Audio Engineering Society, vol. 45, n. ° 10, octubre de 1997, pags. 789-811, describe las caractensticas principales del sistema AAC (ISO/IEC 13818-7). Esta tecnologfa combina la eficiencia de codificacion de un banco de filtros de alta
5
10
15
20
25
30
35
40
45
50
55
60
resolucion, tecnicas de prediccion y codificacion Huffman con funcionalidades adicionales que tienen por objeto suministrar calidad de audio muy alta a una diversidad de tasas de datos.
Es tipicamente deseable mantener la complejidad computacional, el uso de memoria y el consumo de potencia tan bajos como sea posible en dispositivos de procesamiento de senales de digitales altamente eficientes basandose en una aritmetica de punto fijo. Por esta razon, tambien es deseable mantener la longitud de palabra de las muestras de audio tan baja como sea posible. Para tener en cuenta cualquier espacio potencial para recorte debido a la normalizacion de la sonoridad, un banco de filtros, que tfpicamente es una parte de un codificador o decodificador de audio, se tendna que disenar con una longitud de palabra mayor.
Sena deseable permitir la limitacion de senal sin perder precision de datos y/o sin una necesidad de utilizar una longitud de palabra mayor para un banco de filtros del decodificador o un banco de filtros del codificador. Como alternativa o ademas, sena deseable si se pudiera determinar un intervalo dinamico relevante de la senal que se va a convertir de frecuencia a tiempo o viceversa de forma continua de una forma trama por trama para secciones de tiempo consecutivas o “tramas” de la senal de tal forma que el nivel de la senal se pueda ajustar de una forma que el intervalo dinamico relevante actual se ajuste en el intervalo dinamico proporcionado por el convertidor (convertidor del dominio de la frecuencia al dominio del tiempo o convertidor del dominio del tiempo al dominio de la frecuencia). Tambien sena deseable hacer un cambio de nivel de este tipo para el fin de conversion de frecuencia a tiempo o conversion de tiempo a frecuencia sustancialmente “transparente” a otros componentes del decodificador o codificador.
Al menos uno de estos deseos y/o deseos adicionales posibles se tratan mediante un decodificador de senales de audio de acuerdo con la reivindicacion 1, un codificador de senales de audio de acuerdo con la reivindicacion 14, y un metodo para decodificar una representacion de senal de audio codificada de acuerdo con la reivindicacion 15.
Se proporciona un decodificador de senales de audio para proporcionar una representacion de senal de audio decodificada basandose en una representacion de senal de audio codificada. El decodificador de senales de audio comprende una etapa de pre-procesamiento de decodificador configurada para obtener una pluralidad de senales de banda de frecuencia a partir de la presentacion de senal de audio codificada. El decodificador de senales de audio comprende ademas un estimador de recorte configurado para analizar al menos una de la representacion de senal de audio codificada, la pluralidad de senales de frecuencia, y la informacion adicional con respecto a una ganancia de las senales de banda de frecuencia de la representacion de senal de audio codificada en cuanto a si la informacion de senal de audio codificada, la pluralidad de senales de frecuencia, y/o la informacion adicional sugiere o sugieren un recorte potencial para determinar un factor de cambio de nivel actual para la representacion de senal de audio codificada. Cuando la informacion adicional sugiere el recorte potencial, el factor de cambio de nivel actual provoca que la informacion de la pluralidad de senales de banda de frecuencia se cambie hacia un bit menos significativo por lo que se gana espacio en al menos un bit mas significativo. El decodificador de senales de audio tambien comprende un cambiador de nivel configurado para cambiar los niveles de las senales de banda de frecuencia de acuerdo con el factor de cambio de nivel para obtener las senales de banda de frecuencia cambiadas de nivel. Ademas, el decodificador de senales de audio comprende un convertidor del dominio de la frecuencia al dominio del tiempo configurado para convertir las senales de banda de frecuencia cambiadas de nivel a una representacion en el dominio del tiempo. El decodificador de senales de audio comprende ademas un compensador de cambio de nivel configurado para actuar sobre la representacion en el dominio del tiempo para compensar al menos parcialmente un cambio de nivel aplicado a las senales de banda de frecuencia cambiadas de nivel por el cambiador de nivel y para obtener una representacion en el dominio del tiempo sustancialmente compensada.
Las realizaciones adicionales de la presente invencion proporcionan un codificador de senales de audio configurado para proporcionar una representacion de senal de audio codificada basandose en una representacion en el dominio del tiempo de una senal de audio de entrada. El codificador de senales de audio comprende un estimador de recorte configurado para analizar la representacion en el dominio del tiempo de la senal de audio de entrada en cuanto a si se sugiere el recorte potencial para determinar un factor de cambio del nivel actual para la presentacion de senal de entrada. Cuando se sugiere el recorte potencial, el factor de cambio de nivel actual provoca que la representacion en el dominio del tiempo de la senal de audio de entrada se cambie hacia un bit menos significativo por lo que se gana espacio en al menos un bit mas significativo. El codificador de senales de audio comprende ademas un cambiador de nivel configurado para cambiar un nivel de la representacion del dominio del tiempo de la senal de audio de entrada de acuerdo con el factor de cambio de nivel para obtener una representacion en el dominio del tiempo cambiada de nivel. Ademas, el codificador de senales de audio comprende un convertidor del dominio del tiempo al dominio de la frecuencia configurado para convertir la representacion en el dominio del tiempo cambiada de nivel en una pluralidad de senales de banda de frecuencia. El codificador de senales de audio tambien comprende un compensador de cambio de nivel configurado para actuar sobre la pluralidad de senales de banda de frecuencia para compensar al menos parcialmente un cambio de nivel aplicado a la presentacion en el dominio del tiempo cambiada de nivel mediante el cambiador de nivel y para obtener una pluralidad de senales de banda de frecuencia sustancialmente compensadas.
Las realizaciones adicionales de la presente invencion proporcionan un metodo para decodificar la presentacion de
5
10
15
20
25
30
35
40
45
50
55
60
senal de audio codificada para obtener una representacion de senal de audio decodificada. El metodo comprende pre-procesar la representacion de senal de audio codificada para obtener una pluralidad de senales de banda de frecuencia. El metodo comprende ademas analizar al menos una de la representacion de senal de audio codificada, las senales de banda de frecuencia, y la informacion adicional con respecto a una ganancia en las senales de banda de frecuencia en cuanto si se sugiere el recorte potencial para determinar un factor de cambio de nivel actual para la presentacion de senal de audio codificada. Cuando se sugiere el recorte potencial, el factor de cambio de nivel actual provoca que la representacion en el dominio del tiempo de la senal de audio de entrada se cambie hacia un bit menos significativo por lo que se gana espacio en al menos un bit mas significativo. Ademas, el metodo comprende cambiar los niveles de las senales de banda de frecuencia de acuerdo con el factor de cambio de nivel para obtener las senales de banda de frecuencia cambiadas de nivel. El metodo tambien comprende realizar una conversion del dominio frecuencia al dominio del tiempo de las senales de banda de frecuencia a una representacion en el dominio del tiempo. El metodo comprende ademas actuar sobre la representacion en el dominio del tiempo para compensar al menos parcialmente un cambio de nivel aplicado a las senales de banda de frecuencia cambiadas de nivel y para obtener una representacion en el dominio del tiempo sustancialmente compensada.
Ademas, se proporciona un programa informatico para implementar los metodos descritos anteriormente cuando se ejecutan en una computadora o procesador de senales.
Las realizaciones adicionales proporcionan un decodificador de senales de audio para proporcionar una representacion de senal de audio decodificada basandose en una representacion de senal de audio codificada. El decodificador de senales de audio comprende una etapa de pre-procesamiento de decodificador configurada para obtener una pluralidad de senales de banda de frecuencia a partir de la presentacion de senal de audio codificada. El decodificador de senales de audio comprende ademas un estimador de recorte configurado para analizar al menos una de la representacion de senal de audio codificada, la pluralidad de senales de banda de frecuencia, y la informacion adicional con respecto a una ganancia de las senales de banda de frecuencia de la representacion de senal de audio codificada para determinar un factor de cambio de nivel actual para la representacion de senal de audio codificada. El decodificador de senales de audio tambien comprende un cambiador de nivel configurado para cambiar los niveles de las senales de banda de frecuencia de acuerdo con el factor de cambio de nivel para obtener las senales de banda de frecuencia cambiadas de nivel. Ademas, el decodificador de senales de audio comprende un convertidor del dominio de la frecuencia al dominio del tiempo configurado para convertir las senales de banda de frecuencia cambiadas de nivel a una representacion en el dominio del tiempo. El decodificador de senales de audio comprende ademas un compensador de cambio de nivel configurado para actuar sobre la representacion en el dominio del tiempo para compensar al menos parcialmente un cambio de nivel aplicado a las senales de banda de frecuencia cambiadas de nivel por el cambiador de nivel y para obtener una representacion en el dominio del tiempo sustancialmente compensada.
Las realizaciones adicionales de la presente invencion proporcionan un codificador de senales de audio configurado para proporcionar una representacion de senal de audio codificada basandose en una representacion en el dominio del tiempo de una senal de audio de entrada. El codificador de senales de audio comprende un estimador de recorte configurado para analizar la representacion en el dominio del tiempo de la senal de audio de entrada para determinar un factor de cambio de nivel actual para la representacion de senal de entrada. El codificador de senales de audio comprende ademas un cambiador de nivel configurado para cambiar un nivel de la representacion en el dominio del tiempo de la senal de audio de entrada de acuerdo con el factor de cambio de nivel para obtener una representacion en el dominio del tiempo cambiada de nivel. Ademas, el codificador de senales de audio comprende un convertidor del dominio del tiempo al dominio de la frecuencia configurado para convertir la representacion en el dominio del tiempo cambiada de nivel en una pluralidad de senales de banda de frecuencia. El codificador de senales de audio tambien comprende un compensador de cambio de nivel configurado para actuar sobre la pluralidad de senales de banda de frecuencia para compensar al menos parcialmente un cambio de nivel aplicado a la presentacion en el dominio del tiempo cambiada de nivel por el cambiador de nivel y para obtener una pluralidad de senales de banda de frecuencia sustancialmente compensadas.
Las realizaciones adicionales de la presente invencion proporcionan un metodo para decodificar la presentacion de senal de audio codificada para obtener una representacion de senal de audio decodificada. El metodo comprende pre-procesar la representacion de senal de audio codificada para obtener una pluralidad de senales de banda de frecuencia. El metodo comprende ademas analizar al menos una de la representacion de senal de audio codificada, las senales de banda de frecuencia, y se sugiere informacion adicional con respecto a una ganancia de las senales de banda de frecuencia para determinar un factor de cambio actual para la presentacion de senal de audio codificada. Ademas, el metodo comprende cambiar los niveles de las senales de banda de frecuencia de acuerdo con el factor de cambio de nivel para obtener las senales de banda de frecuencia cambiadas de nivel. El metodo tambien comprende realizar una conversion del dominio de la frecuencia al dominio del tiempo de las senales de banda de frecuencia a una representacion en el dominio del tiempo. El metodo comprende ademas actuar sobre la representacion en el dominio del tiempo para compensar al menos parcialmente un cambio de nivel aplicado a las senales de banda de frecuencia cambiadas de nivel y para obtener una representacion en el dominio del tiempo sustancialmente compensada.
5
10
15
20
25
30
35
40
45
50
55
60
Al menos algunas de las realizaciones estan basadas en la idea de que es posible, sin perder informacion relevante, cambiar la pluralidad de senales de banda de frecuencia de una representacion en el dominio de la frecuencia mediante un cierto factor de cambio de nivel durante intervalos de tiempo, en los cuales es relativamente alto un nivel general de sonoridad de la senal de audio. En su lugar, la informacion relevante se cambia a bits que son susceptibles de contener ruido, de cualquier modo. De esta forma, un convertidor del dominio de la frecuencia al dominio del tiempo que tiene una longitud de palabra limitada se puede utilizar a pesar de que un intervalo dinamico de las senales de banda de frecuencia puede ser mas grande que el soportado por la longitud de palabra limitada del convertidor del dominio de la frecuencia al dominio del tiempo. En otras palabras, al menos algunas realizaciones de la presente invencion aprovechan el hecho de que el bit o bits menos significativos tipicamente no transportan alguna informacion relevante mientras la senal de audio es relativamente sonora, es decir, mientras la informacion relevante es mas probable que este contenida en el bit o bits mas significativos. El cambio de nivel aplicado a las senales de banda de frecuencia cambiadas de nivel tambien puede tener el beneficio de reducir que se presente una probabilidad de recorte dentro de la representacion en el dominio del tiempo, donde dicho recorte puede resultar a partir de una superposicion constructiva de una o mas senales de banda de frecuencia de la pluralidad de senales de banda de frecuencia.
Estas ideas y hallazgos tambien se aplican de una forma analoga al codificador de senales de audio y el metodo para codificar una senal de audio original para obtener una presentacion de senal de audio codificada.
A continuacion, se describen las realizaciones de la presente invencion en mas detalle con referencia a las figuras, en las cuales:
La Figura 1 ilustra un codificador de acuerdo con el estado de la tecnica;
La Figura 2 representa un decodificador de acuerdo con el estado de la tecnica;
La Figura 3 ilustra otro codificador de acuerdo con el estado de la tecnica;
La Figura 4 representa un decodificador adicional de acuerdo con el estado de la tecnica;
La Figura 5 muestra un diagrama de bloques esquematico de un decodificador de senales de audio de acuerdo con al menos una realizacion;
La Figura 6 muestra un diagrama de bloques esquematico de un decodificador de senales de audio de acuerdo con al menos una realizacion adicional;
La Figura 7 muestra un diagrama de bloques que ilustra un concepto del decodificador de senales de audio propuesto y el metodo propuesto para decodificar una representacion de senal de audio codificada de acuerdo con las realizaciones;
La Figura 8 es una visualizacion esquematica del cambio de nivel para ganar espacio;
La Figura 9 muestra un diagrama de bloques esquematico de un ajuste de forma de transicion posible que puede ser un componente del decodificador o codificador de senales de audio de acuerdo con al menos a algunas realizaciones;
La Figura 10 representa una unidad de estimacion de acuerdo con una realizacion adicional que comprende un ajustador de filtro de prediccion;
La Figura 11 ilustra un aparato para generar un flujo de datos de regreso;
La Figura 12 ilustra un codificador de acuerdo con el estado de la tecnica;
La Figura 13 representa un decodificador de acuerdo con el estado de la tecnica;
La Figura 14 ilustra otro codificador de acuerdo con el estado de la tecnica; y
La Figura 15 muestra un diagrama de bloques esquematico de un codificador de senales de audio de acuerdo con al menos una realizacion; y
La Figura 16 muestra un diagrama de flujo esquematico de un metodo para decodificar la representacion de senal de audio codificada de acuerdo con al menos una realizacion.
5
10
15
20
25
30
35
40
45
50
55
60
El procesamiento de audio ha avanzado en muchos aspectos y ha sido objeto de varios estudios, la forma de codificar y decodificar de forma eficiente de una senal de datos de audio. La codificacion eficiente, por ejemplo, se proporciona mediante MPEG AAC (MPEG = grupo de expertos en imagenes en movimiento; AAC = codificacion de audio avanzada). Algunos aspectos de MPEG AAC se explican en mas detalle mas adelante, como una introduccion a la codificacion y decodificacion de audio. La descripcion de MPEG AAC solamente se ha de entender como un ejemplo, puesto que los conceptos descritos se pueden aplicar a otros esquemas de codificacion y decodificacion de audio, tambien.
De acuerdo con MPEG AAC, los valores espectrales de una senal de audio se codifican empleando factores de escala, cuantificacion y libros de codigos, en particular libros de codigo Huffman.
Antes que se lleve a cabo la codificacion Huffman, el codificador agrupa la pluralidad de coeficientes espectrales que se van a codificar en diferentes secciones (los coeficientes espectrales que se han obtenido a partir de componentes corriente arriba, tal como un banco de filtros, un modelo psico-acustico, y un cuantificador controlado por el modelo psico-acustico con respecto a las resoluciones de cuantificacion y los umbrales de cuantificacion). Para cada seccion de coeficientes espectrales, el codificador elige un libro de codigos Huffman para codificacion Huffman. La MPEG AAC proporciona once libros de codigos Huffman de espectros diferentes para codificar los datos espectrales a partir de los cuales el codificador selecciona el libro de codigos que mejor se ajusta para codificar los coeficientes espectrales de la seccion. El codificador proporciona un identificador del libro de codigos que identifica el libro de codigos utilizado para la codificacion Huffman de los coeficientes espectrales de la seccion al decodificador como informacion adicional.
En un lado del decodificador, el decodificador analiza la informacion adicional recibida para determinar cual de la pluralidad de libros de codigos Huffman de espectro se ha utilizado para codificar los valores espectrales de una seccion. El decodificador lleva a cabo la decodificacion Huffman basandose en la informacion adicional acerca del libro de codigos Huffman empleado para codificar los coeficientes espectrales de la seccion que se va a decodificar por el decodificador.
Despues de la decodificacion Huffman, se obtiene una pluralidad de valores espectrales cuantificados en el decodificador. El decodificador entonces puede llevar a cabo cuantificacion inversa para invertir una cuantificacion no uniforme que pudo haber sido llevada a cabo por el codificador. Mediante esto, se obtienen los valores espectrales cuantificados de forma inversa en el decodificador.
Sin embargo, los valores espectrales cuantificados de forma inversa pueden aun no estar modificados a escala. Los valores espectrales no modificados a escala, derivados se han agrupado en bandas de factor de escala, cada banda de factor de escala que tiene un factor de escala comun. El factor de escala para cada banda de factor de escala esta disponible para el decodificador como informacion adicional, que se ha proporcionado por el codificador. Al usar esta informacion, el decodificador multiplica los valores espectrales no modificados a escala de una banda de factor de escala por su factor de escala. Mediante esto, se obtienen los valores espectrales modificados a escala.
La codificacion y decodificacion de los valores espectrales de acuerdo con el estado de la tecnica se explica ahora con referencia a las Figuras 1-4.
La Figura 1 ilustra un codificador de acuerdo con el estado de la tecnica. El codificador comprende un banco de filtros T/F (tiempo a frecuencia) 10 para transformar una senal de audio AS, que sera codificada, del dominio del tiempo a un dominio de la frecuencia para obtener una senal de audio en el dominio de la frecuencia. La senal de audio en el dominio de la frecuencia se alimenta en una unidad de factor de escala 20 para determinar los factores de escala. La unidad de factor de escala 20 se adapta para dividir los coeficientes espectrales de la senal de audio en el dominio de la frecuencia en varios grupos de coeficientes espectrales llamados bandas de factor de escala, que comparten un factor de escala. Un factor de escala representa un valor de ganancia utilizado para cambiar la amplitud de todos los coeficientes espectrales en la banda de factor de escala respectiva. La unidad de factor de escala 20 se adapta ademas para generar y emitir coeficientes espectrales no modificados a escala de la senal de audio en el dominio de la frecuencia.
Ademas, el codificador en la Figura 1 comprende un cuantificador para cuantificar los coeficientes espectrales no modificados a escala de la senal de audio en el dominio de la frecuencia. El cuantificador 30 puede ser un cuantificador no uniforme.
Despues de la cuantificacion, los espectros no modificados a escala, cuantificados de la senal de audio se alimentan en un codificador Huffman 40 para someterse a codificacion Huffman. La codificacion Huffman se utiliza para reducir la redundancia del espectro cuantificado de la senal de audio. La pluralidad de coeficientes espectrales cuantificados no modificados a escala se agrupa en secciones. Mientras en la MPEG AAC se proporcionan once libros de codigos posibles, todos los coeficientes espectrales de una seccion se codifican por el mismo libro de codigos Huffman.
5
10
15
20
25
30
35
40
45
50
55
60
El codificador elegira uno de los once libros de codigos Huffman posibles que es particularmente adecuado para codificar los coeficientes espectrales de la seccion. Mediante esto, la seleccion del libro de codigos Huffman del codificador para una seccion particular depende de los valores espectrales de la seccion particular. Los coeficientes espectrales sometidos a codificacion Huffman entonces se pueden transmitir al decodificador junto con informacion adicional que comprende, por ejemplo, informacion acerca del libro de codigos Huffman que se ha utilizado para codificar una seccion de coeficientes espectrales, un factor de escala que se ha utilizado para una banda de factor de escala particular, etc.
Se codifican dos o cuatro coeficientes espectrales por una palabra de codigo del libro de codigos Huffman empleado para codificacion Huffman de los coeficientes espectrales de la seccion. El codificador transmite las palabras de codigo que representan los coeficientes espectrales codificados al decodificador junto con informacion adicional que comprende la longitud de una seccion asf como informacion acerca del libro de codigos Huffman utilizado para codificar los coeficientes espectrales de la seccion.
En la MPEG AAC, se proporcionan once libros de codigos Huffman de espectro para codificar los datos espectrales de la senal de audio. El libro de codigos Huffman de espectro diferente se puede identificar por su mdice el libro de codigos (un valor entre 1 y 11). La dimension del libro de codigos Huffman indica cuantos coeficientes espectrales se codifican por una palabra de codigo del libro de codigos Huffman considerado. En la MPEG AAC, la dimension de un libro de codigos Huffman indica, ya sea 2 o 4, que una palabra de codigo codifica ya sea dos o cuatro valores espectrales de la senal de audio.
Sin embargo, los libros de codigos Huffman diferentes tambien difieren con respecto a otras propiedades. Por ejemplo, el valor absoluto maximo de un coeficiente espectral que se puede codificar por el libro de codigos Huffman vana de libro de codigos a libro de codigos y puede ser, por ejemplo, 1, 2, 4, 7, 12 o mayor. Ademas, un libro de codigos Huffman considerado se puede adaptar para codificar valores con signo o no.
Al emplear codificacion Huffman, los coeficientes espectrales se codifican por palabras de codigos de diferentes longitudes. La MPEG AAC proporciona dos libros de codigos Huffman diferentes que tienen un valor maximo absoluto de 1, dos libros de codigos Huffman diferentes que tienen un valor maximo absoluto de 2, dos libros de libros de codigos Huffman diferentes que tienen un valor maximo absoluto de 4, dos libros de codigos Huffman diferentes que tienen un valor maximo absoluto de 7 y dos libros de codigos Huffman diferentes que tienen un valor maximo absoluto de 12, en donde cada libro de codigos Huffman representa una funcion de distribucion de probabilidad diferente. El codificador Huffman siempre elegira el libro de codigos Huffman que mejor se ajusta para la codificacion de los coeficientes espectrales.
La Figura 2 ilustra un decodificador de acuerdo con el estado de la tecnica. Los valores espectrales sometidos a codificacion Huffman se reciben por un decodificador Huffman 50. El decodificador Huffman 50 tambien recibe, como informacion adicional, informacion acerca del libro de codigos Huffman utilizado para codificar los valores espectrales para cada seccion de valores espectrales. El decodificador Huffman 50 entonces realiza decodificacion Huffman para obtener los valores espectrales cuantificados no modificados a escala. Los valores espectrales cuantificados, no modificados a escala se alimentan en un cuantificador inverso 60. El cuantificador inverso realiza cuantificacion inversa para obtener los valores espectrales no modificados a escala, cuantificados de forma inversa, que se alimentan a un modificador de escala 70. El modificador de escala 70 tambien recibe factores de escala como informacion adicional para cada banda de factor de escala. Basandose en los factores de escala recibidos, el modificador de escala 70 modifica la escala de los valores espectrales cuantificados de forma inversa no modificados a escala para obtener los valores espectrales cuantificados de forma inversa, modificados a escala. Un banco de filtros F/T 80 entonces transforma los valores espectrales cuantificados de forma inversa, modificados a escala de la senal de audio en el dominio de la frecuencia a partir del dominio de la frecuencia al dominio del tiempo para obtener valores de muestra de una senal de audio en el dominio del tiempo.
La Figura 3 ilustra un codificador de acuerdo con el estado de la tecnica que difiere del codificador de la Figura 1 en que el codificador de la Figura 3 comprende ademas una unidad TNS del lado del codificador (TNS = conformacion de ruido temporal). La conformacion de ruido temporal se puede emplear para controlar la forma temporal del ruido de cuantificacion al llevar a cabo un proceso de filtrado con respecto a las porciones de los datos espectrales de la senal de audio. La unidad TNS del lado del codificador 15 lleva a cabo un calculo de codificacion predictiva lineal (LPC) con respecto a los coeficientes espectrales de la senal de audio en el dominio de la frecuencia que se va a codificar. Entre otros, los que resultan a partir del calculo LPC son los coeficientes de reflexion, tambien llamados como coeficientes PARCOR. La conformacion de ruido temporal no se utiliza si la ganancia de prediccion, que tambien se deriva por el calculo LPC, no excede un cierto valor umbral. Sin embargo, si la ganancia de prediccion es mayor que el valor umbral, se emplea la conformacion de ruido temporal. La unidad TNS del lado del codificador elimina todos los coeficientes de reflexion que son menores que un cierto valor umbral. Los coeficientes de reflexion restantes se convierten en coeficientes de prediccion lineal y se utilizan como coeficientes de filtro de conformacion de ruido en el codificador. La unidad TNS del lado del codificador entonces realiza una operacion de filtro en aquellos coeficientes espectrales, para los cuales se emplea TNS, para obtener coeficientes espectrales procesados
5
10
15
20
25
30
35
40
45
50
55
60
de la senal de audio. La informacion adicional que indica informacion TNS, por ejemplo, los coeficientes de reflexion (coeficientes PARCOR) se transmite al decodificador.
La Figura 4 ilustra un decodificador de acuerdo con el estado de la tecnica que difiere del decodificador ilustrado en la Figura 2 en la medida en que el decodificador de la Figura 4 comprende ademas una unidad TNS del lado del decodificador 75. La unidad TNS del lado del decodificador recibe espectros modificados a escala cuantificados de forma inversa de la senal de audio y tambien recibe informacion TNS, por ejemplo, informacion que indica los coeficientes de reflexion (coeficientes PARCOR). La unidad TNS del lado del decodificador 75 procesa los espectros cuantificados de forma inversa de la senal de audio para obtener un espectro cuantificado de forma inversa procesado de la senal de audio.
La Figura 5 muestra un diagrama de bloques esquematico de un decodificador de senales de audio 100 de acuerdo con al menos una realizacion de la presente invencion. El decodificador de senales de audio se configura para recibir una representacion de senal de audio codificada. Tfpicamente, la presentacion de senal de audio codificada esta acompanada por informacion adicional. La representacion de senal de audio codificada junto con la informacion adicional se puede proporcionar en la forma de un flujo de datos que se ha producido por, por ejemplo, un codificador de audio perceptual. El decodificador de senales de audio 100 se configura ademas para proporcionar una representacion de senal de audio decodificada que puede ser identica a la senal etiquetada “representacion en el dominio del tiempo sustancialmente compensada” en la Figura 5 o derivada a partir de la misma utilizando procesamiento posterior.
El decodificador de senales de audio 100 comprende una etapa de pre-procesamiento de decodificador 110 que se configura para obtener una pluralidad de senales de banda de frecuencia a partir de la representacion de senal de audio codificada. Por ejemplo, la etapa de pre-procesamiento de decodificador 110 puede comprender un desempaquetador de flujo de bits en caso de que la representacion de senal de audio codificada y la informacion adicional esten contenidas en un flujo de bits. Algunas de las normas de codificacion de audio pueden utilizar resoluciones que vanan en el tiempo y tambien resoluciones diferentes para la pluralidad de senales de banda de frecuencia, dependiendo del intervalo de frecuencia en el cual la presentacion de senal de audio codificada lleve actualmente informacion relevante (alta resolucion) o informacion irrelevante (baja resolucion o ningun dato en absoluto). Esto significa que una banda de frecuencia en la cual la representacion de senal de audio codificada tiene actualmente una gran cantidad de informacion relevante se codifica tfpicamente utilizando una resolucion altamente precisa (es decir, que utiliza un numero relativamente alto de bits) durante ese intervalo de tiempo, a diferencia de una senal de banda de frecuencia que lleva temporalmente ninguna o solamente muy poca informacion. Incluso puede suceder que para algunas de las senales de banda de frecuencia que el flujo de bits no contenga de forma temporal datos o bits, en absoluto, debido a que estas senales de banda de frecuencia no contienen ninguna informacion relevante durante el intervalo de tiempo correspondiente. El flujo de bits proporcionado a la etapa de pre-procesamiento de decodificador 110 contiene tfpicamente informacion (por ejemplo, como parte de la informacion adicional) que indica cuales senales de banda de frecuencia de la pluralidad de senales de banda de frecuencia contienen datos para el intervalo de tiempo o “trama” actualmente considerada y la resolucion de bits correspondiente.
El decodificador de senales de audio 100 comprende ademas un estimador de recorte 120 configurado para analizar la informacion adicional con respecto a una ganancia de las senales de banda de frecuencia de la representacion de senal de audio codificada para determinar un factor de cambio de nivel actual para la representacion de senal de audio codificada. Algunas normas de codificacion de audio perceptual utilizan factores de escala individuales para las diferentes senales de banda de frecuencia de la pluralidad de senales de banda de frecuencia. Los factores de escala individuales indican para cada senal de banda de frecuencia el intervalo de amplitud actual, con respecto a las otras senales de banda de frecuencia. Para algunas realizaciones de la presente invencion un analisis de estos factores de escala permite una evaluacion aproximada de una amplitud maxima que puede tener lugar en una representacion en el dominio del tiempo correspondiente despues de que la pluralidad de senales de banda de frecuencia se ha convertido de un dominio de la frecuencia a un dominio del tiempo. Esta informacion entonces se puede utilizar para determinar si, sin ningun procesamiento apropiado como se propone por la presente invencion, sena probable que tuviera lugar el recorte dentro de la representacion del dominio del tiempo para el intervalo de tiempo o “trama” considerada. El estimador de recorte 120 se configura para determinar un factor de cambio de nivel que cambia todas las senales de banda de frecuencia de la pluralidad de senales de banda de frecuencia en una cantidad identica con respecto al nivel (con respecto a una amplitud de senal o potencia de senal, por ejemplo). El factor de cambio de nivel se puede determinar para cada intervalo de tiempo (trama) de una forma individual, es decir, el factor de cambio de nivel es variable en el tiempo. Tfpicamente, el estimador de recorte 120 intentara ajustar los niveles de la pluralidad de senales de banda de frecuencia mediante el factor de cambio que es comun para todas las senales de banda de frecuencia de una forma que es muy poco probable que tenga lugar recorte dentro de la representacion del dominio del tiempo, pero al mismo tiempo manteniendo un intervalo dinamico razonable para las senales de banda de frecuencia. Como un ejemplo, se considera una trama de la representacion de la senal de audio codificada en la cual un numero de los factores de escala es relativamente alto. El estimador de recorte 120 ahora puede considerar el peor de los casos, es decir, picos de senal posibles dentro de la pluralidad de
5
10
15
20
25
30
35
40
45
50
55
60
senales de banda de frecuencia que se superponen o suman de una forma constructiva, dando como resultado una amplitud grande dentro de la representacion en el dominio del tiempo. El factor de cambio de nivel ahora se puede determinar como un numero que provoca que este pico hipotetico dentro de la representacion en el dominio del tiempo este dentro de un intervalo dinamico deseado, posiblemente con la consideracion adicional de un margen. Al menos de acuerdo con a algunas realizaciones el estimador de recorte 120 no necesita la propia representacion de senal de audio codificada para evaluar una probabilidad de recorte dentro de la representacion en el dominio del tiempo para el intervalo de tiempo o trama considerada. La razon es que al menos algunas normas de codificacion de audio perceptual eligen los factores de escala para las senales de banda de frecuencia para la pluralidad de senales de banda de frecuencia de acuerdo con la amplitud mas grande que se tiene que codificar dentro de una cierta senal de banda de frecuencia y el intervalo de tiempo considerado. En otras palabras, el volumen mas alto que se puede representar por la resolucion de bits elegida para la senal de banda de frecuencia disponible, es muy probable que se tenga lugar al menos una vez durante el intervalo de tiempo o trama considerada, dadas las propiedades del esquema de codificacion. Al usar esta suposicion, el estimador de recorte 120 puede centrarse en evaluar la informacion adicional con respecto a la ganancia o ganancias de las senales de banda de frecuencia (por ejemplo, dicho factor de escala y los parametros posiblemente adicionales) para determinar el factor de cambio de nivel actual para la representacion de senal de audio codificada y el intervalo de tiempo considerado (trama).
El decodificador de senales de audio 100 comprende ademas un cambiador de nivel 130 configurado para cambiar los niveles de las senales de banda de frecuencia de acuerdo con el factor de cambio de nivel para obtener las senales de banda de frecuencia cambiadas de nivel.
El decodificador de senales de audio 100 comprende ademas un convertidor del dominio de la frecuencia al dominio del tiempo 140 configurado para convertir las senales de banda de frecuencia cambiadas de nivel en una representacion en el dominio del tiempo. El convertidor del dominio de la frecuencia al dominio del tiempo 140 puede ser un banco de filtros inverso, una transformacion discreta de coseno modificada inversa (MDCT inversa), un filtro de espejo en cuadratura inverso (QMF inverso), por nombrar algunos. Para algunas normas de codificacion de audio el convertidor del dominio de la frecuencia al dominio del tiempo 140 se puede configurar para soportar formacion de ventanas de tramas consecutivas, en el que dos tramas se superponen durante, por ejemplo, el 50 % de su duracion.
La representacion en el dominio del tiempo proporcionada por el convertidor del dominio de la frecuencia al dominio del tiempo 140 se proporciona a un compensador de cambio de nivel 150 que se configura para actuar sobre la representacion en el dominio del tiempo para compensar al menos parcialmente un cambio de nivel aplicado a las senales de banda de frecuencia cambiadas de nivel por el cambiador de nivel 130, y para obtener una representacion en el dominio del tiempo sustancialmente compensada. El compensador de cambio de nivel 150 recibe ademas el factor de cambio de nivel del estimador de recorte 140 o una senal derivada del factor de cambio de nivel. El cambiador de nivel 130 y el compensador de cambio de nivel 150 proporcionan un ajuste de ganancia de las senales de banda de frecuencia cambiadas de nivel y un ajuste de ganancia de compensacion de la presentacion en el dominio del tiempo, respectivamente, en el que dicho ajuste de ganancia evita el convertidor del dominio de la frecuencia al dominio del tiempo 140. De esta forma, las senales de banda de frecuencia cambiadas de nivel y la representacion en el dominio del tiempo se pueden ajustar a un intervalo dinamico proporcionado por el convertidor del dominio de la frecuencia al dominio del tiempo 140 que se puede limitar debido a una longitud de palabra fija y/o una implementacion aritmetica de punto fijo del convertidor 140. En particular, el intervalo dinamico relevante de las senales de banda de frecuencia cambiadas de nivel y la representacion en el dominio del tiempo correspondiente pueden estar en niveles de potencia de senal o valores de amplitud relativamente altos durante tramas relativamente sonoras. Por el contrario, el intervalo dinamico relevante de la senal de banda de frecuencia cambiada de nivel y en consecuencia tambien de la representacion en el dominio del tiempo correspondiente pueden estar en valores de potencia de senal o valores de amplitud relativamente pequenos durante tramas relativamente suaves. En el caso de tramas sonoras, la informacion contenida en los bits inferiores de una representacion binaria de las senales de banda de frecuencia cambiadas de nivel puede considerarse tipicamente como despreciable en comparacion con la informacion que esta contenida dentro de los bits superiores. Tfpicamente, el factor de cambio de nivel es comun para todas las senales de banda de frecuencia lo que hace posible compensar el cambio de nivel aplicado a las senales de banda de frecuencia cambiadas de nivel incluso corriente abajo del convertidor del dominio de la frecuencia al dominio del tiempo 140. A diferencia del factor de cambio de nivel propuesto que se determina por el propio decodificador de senal de audio 100, el llamado parametro de ganancia global esta contenido dentro del flujo de bits que se produjo por un codificador de senales de audio remoto y se proporciono al decodificador de senales de audio 100 como una entrada. Ademas, la ganancia global se aplica a la pluralidad de senales de banda de frecuencia entre la etapa de pre-procesamiento de decodificador 110 y el convertidor del dominio de la frecuencia al dominio del tiempo 140. Tfpicamente, la ganancia global se aplica a la pluralidad de senales de banda de frecuencia en sustancialmente el mismo lugar dentro de la cadena de procesamiento de senales como los factores de escala para las diferentes senales de banda de frecuencia. Esto significa que para una trama relativamente sonora las senales de banda de frecuencia proporcionadas al convertidor del dominio de la frecuencia al dominio del tiempo 140 son ya relativamente sonoras, y por lo tanto pueden provocar recorte en la representacion en el dominio del tiempo correspondiente, debido a que la pluralidad de senales de
5
10
15
20
25
30
35
40
45
50
55
60
banda de frecuencia no proporcionaron suficiente espacio en caso de que las senales de banda de frecuencia diferentes se sumaran de una forma constructiva, conduciendo por lo tanto a una amplitud de senal relativamente alta dentro de la representacion en el dominio del tiempo.
El enfoque propuesto, es decir, por ejemplo implementado por el decodificador de senales de audio 100 ilustrado esquematicamente en la Figura 5, permite la limitacion de la senal sin perder precision de datos o utilizar longitudes de palabra superiores para los bancos de filtros de decodificador (por ejemplo, el convertidor del dominio de la frecuencia al dominio del tiempo 140).
Para superar el problema de la longitud de palabra restringida de los bancos de filtros, la normalizacion de sonoridad como fuente de recorte potencial se puede mover al procesamiento en el dominio del tiempo. Esto permite que el banco de filtros 140 se implemente con la longitud de palabra original o la longitud de palabra reducida en comparacion con una implementacion donde la normalizacion de sonoridad se realiza dentro del procesamiento en el dominio de la frecuencia. Para realizar una mezcla suave de valores de ganancia, se puede realizar un ajuste de forma de transicion como se explicara mas adelante en el contexto de la Figura 9.
Ademas, las muestras de audio dentro del flujo de bits se cuantifican por lo general a menor precision que la senal de audio reconstruida. Esto permite algun espacio en el banco de filtros 140. El decodificador 100 deriva alguna estimacion del otro parametro de flujo de bits p (tal como el factor de ganancia global) y, para el caso donde es probable el recorte de la senal de salida, se aplica un cambio de nivel (g2) para evitar el recorte en el banco de filtros 140. Este cambio de nivel se senaliza al dominio del tiempo para compensacion apropiada mediante el compensador de cambio de nivel 150. Si no se estima el recorte, la senal de audio permanece sin cambios y por lo tanto el metodo no tiene ninguna perdida de precision.
El estimador de recorte se puede configurar ademas para determinar una probabilidad de recorte basandose en la informacion adicional y/o para determinar el factor de cambio de nivel actual basandose en la probabilidad de recorte. Aunque la probabilidad de recorte solo indica una tendencia, en lugar de un hecho permanente, puede proporcionar informacion util relacionada con el factor de cambio de nivel que se puede aplicar de forma razonable a la pluralidad de senales de banda de frecuencia para una trama dada de la representacion de senal de audio codificada. La determinacion de la probabilidad de recorte puede ser relativamente sencilla en terminos de complejidad o esfuerzo computacional y en comparacion con la conversion del dominio de la frecuencia al dominio del tiempo realizada por el convertidor del dominio de la frecuencia al dominio del tiempo 140.
La informacion adicional puede comprender al menos uno de un factor de ganancia global para la pluralidad de senales de banda de frecuencia y una pluralidad de factores de escala. Cada factor de escala puede corresponder a una o mas senales de banda de frecuencia de la pluralidad de senales de banda de frecuencia. El factor de ganancia global y/o la pluralidad de factores de escala proporcionan ya informacion util relacionada con un nivel de sonoridad de la trama actual que se va a convertir al dominio del tiempo mediante el convertidor 140.
De acuerdo con al menos algunas realizaciones, la etapa de pre-procesamiento de decodificador 110 se puede configurar para obtener la pluralidad de senales de banda de frecuencia en la forma de una pluralidad de tramas sucesivas. El estimador de recorte 120 se puede configurar para determinar el factor de cambio de nivel actual para una trama actual. En otras palabras, el decodificador de senales de audio 100 se puede configurar para determinar de forma dinamica los factores de cambio de nivel variables para diferentes tramas de la representacion de la senal de audio codificada, por ejemplo dependiendo de un grado variable de la sonoridad dentro de las tramas sucesivas.
La representacion de senal de audio decodificada se puede determinar basandose en la representacion en el dominio del tiempo sustancialmente compensada. Por ejemplo, el decodificador de senales de audio 100 puede comprender ademas un limitador en el dominio del tiempo corriente abajo del compensador de cambio de nivel 150. De acuerdo con algunas realizaciones, el compensador de cambio de nivel 150 puede ser una parte de un limitador en el dominio del tiempo de este tipo.
De acuerdo con realizaciones adicionales, la informacion adicional con respecto a la ganancia de las senales de banda de frecuencia puede comprender una pluralidad de factores de ganancia relacionados con la banda de frecuencia.
La etapa de pre-procesamiento de decodificador 110 puede comprender un cuantificador inverso configurado para pre-cuantificar cada senal de banda de frecuencia utilizando un indicador de cuantificacion espedfico de la banda de frecuencia de una pluralidad de indicadores de cuantificacion espedficos de la banda de frecuencia. En particular, pueden haberse cuantificado diferentes senales de banda de frecuencia utilizando diferentes resoluciones de cuantificacion (o resoluciones de bits) mediante un codificador de senales de audio que ha creado la presentacion de senal de audio codificada y la informacion adicional correspondiente. Los diferentes indicadores de cuantificacion espedficos de la banda de frecuencia pueden por lo tanto proporcionar una informacion acerca de una resolucion de amplitud para las diversas senales de banda de frecuencia, dependiendo de una resolucion de amplitud requerida para esa senal de banda de frecuencia particular determinada anteriormente por el codificador de senales de audio.
5
10
15
20
25
30
35
40
45
50
55
60
La pluralidad de indicadores de cuantificacion espedficos de la banda de frecuencia puede ser parte de la informacion adicional proporcionada a la etapa de pre-procesamiento de decodificador 110 y pueden proporcionar informacion adicional que se va a utilizar mediante el estimador de recorte 120 para determinar el factor de cambio de nivel.
El estimador de recorte 120 se puede configurar ademas para analizar la informacion adicional con respecto a si la informacion adicional sugiere un recorte potencial dentro de la representacion en el dominio del tiempo. Un hallazgo de este tipo entonces se interpretana como un bit menos significativo (LSB) que no contiene informacion relevante. En este caso el cambio de nivel aplicado por el cambiador de nivel 130 puede cambiar la informacion hacia el bit menos significativo de tal forma que al liberar un bit mas significativo (MSB) se gana algun espacio en el bit mas significativo, que puede ser necesario para la resolucion en el dominio del tiempo en caso de que dos o mas de las senales de banda de frecuencia se sumen de una forma constructiva. Este concepto tambien se puede extender a los n bits menos significativos y a los n bits mas significativos.
El estimador de recorte 120 se puede configurar para considerar un ruido de cuantificacion. Por ejemplo, en decodificacion AAC, tanto la “ganancia global” como las “bandas de factor de escala” se utilizan para normalizar el audio/sub-banda. Como consecuencia, la informacion relevante de cada valor (espectral) se cambia a los MSB, mientras que los LSB se desprecian en la cuantificacion. Despues de la re-cuantificacion en el decodificador, tfpicamente solamente los LSB contienen ruido. Si la “ganancia global” y los valores de “banda de factor de escala” (p) sugieren un recorte potencial despues del banco de filtros de reconstruccion 140, se puede suponer de forma razonable que los LSB no contienen informacion. Con el metodo propuesto, el decodificador 100 cambia la informacion tambien en estos bits para ganar algun espacio con los MSB. Esto provoca sustancialmente que no haya perdida de informacion.
El aparato propuesto (decodificador o codificador de senales de audio) y los metodos permiten la prevencion de recortes para decodificadores/codificadores de audio sin emplear un banco de filtro de alta resolucion para el espacio requerido. Esto es tfpicamente mucho menos costoso en terminos de requisitos de memoria y complejidad computacional que realizar/implementar un banco de filtros con resolucion mas alta.
La Figura 6 muestra un diagrama de bloques esquematico de un decodificador de senales de audio 100 de acuerdo con realizaciones adicionales de la presente invencion. El decodificador de senales de audio 100 comprende un cuantificador inverso 210 (Q-1) que se configura para recibir la representacion de senal de audio codificada y tfpicamente tambien la informacion adicional o una parte de la informacion adicional. En algunas realizaciones, el cuantificador inverso 210 puede comprender un desempaquetador de flujo de bits configurado para desempaquetar un flujo de bits que contiene la representacion de senal de audio codificada y la informacion adicional, por ejemplo en la forma de paquetes de datos, en el que cada paquete de datos puede corresponder a un cierto numero de tramas de la representacion de senal de audio codificada. Como se explico anteriormente, dentro de la representacion de senal de audio codificada y dentro de cada trama, cada banda de frecuencia puede tener su propia resolucion de cuantificacion individual. De esta forma, las bandas de frecuencia que requieren de forma temporal una cuantificacion relativamente precisa, para representar de forma correcta las porciones de la senal de audio dentro de las bandas de frecuencia, pueden tener una resolucion de cuantificacion precisa de este tipo. Por otra parte, las bandas de frecuencia que contienen, durante una trama dada, nada o solamente una pequena cantidad de informacion se puede cuantificar utilizando una cuantificacion mucho mas basta, ahorrando por lo tanto bits de datos. El cuantificador inverso 210 se puede configurar para proporcionar las diferentes bandas de frecuencia, que se han cuantificado utilizando resoluciones de cuantificacion variables en el tiempo e individuales, a una resolucion de cuantificacion comun. La resolucion de cuantificacion comun puede ser, por ejemplo, la resolucion proporcionada por una representacion aritmetica de punto fijo que se utiliza por el decodificador de senales de audio 100 de forma interna para los calculos y el procesamiento. Por ejemplo, el decodificador de senales de audio 100 puede utilizar de forma interna una representacion de punto fijo de 16 bits o de 24 bits. La informacion adicional proporcionada al cuantificador inverso 210 puede contener informacion relacionada con diferentes resoluciones de cuantificacion para la pluralidad de senales de banda de frecuencia para cada nueva trama. El cuantificador inverso 210 se puede considerar como un caso especial de la etapa de pre-procesamiento de decodificador 110 representada en la Figura 5.
El estimador de recorte 120 mostrado en la Figura 6 es similar al estimador de recorte 120 en la Figura 5.
El decodificador de senales de audio 100 comprende ademas el cambiador de nivel 230 que se conecta a una salida del cuantificador inverso 210. El cambiador de nivel 230 recibe ademas informacion adicional o una parte de la informacion adicional, asf como el factor de cambio de nivel que se determina mediante el estimador de recorte 120 de una forma dinamica, es decir, para cada intervalo de tiempo o trama, el factor de cambio de nivel puede suponer un valor diferente. El factor de cambio de nivel se aplica de forma consistente a la pluralidad de senales de banda de frecuencia utilizando una pluralidad de multiplicadores o elementos de modificacion de escala 231, 232 y 233. Puede ocurrir que algunas de las senales de banda de frecuencia sean relativamente fuertes cuando dejan el cuantificador inverso 210, posiblemente utilizando ya sus MSB respectivos. Cuando estas senales de banda de frecuencia fuertes
5
10
15
20
25
30
35
40
45
50
55
60
se suman dentro del convertidor del dominio de la frecuencia al dominio del tiempo 140, se puede observar un desbordamiento dentro de la representacion en el dominio del tiempo emitida por el convertidor del dominio de la frecuencia del dominio del tiempo 140. El factor de cambio de nivel determinado por el estimador de recorte 120 y aplicado por los elementos de modificacion de escala 231, 232, 233 hace posible reducir de forma selectiva (es decir, teniendo en cuenta la informacion adicional actual) los niveles de las senales de banda de frecuencia de tal forma que es menos probable que tenga lugar un desbordamiento de la representacion en el dominio del tiempo. El cambiador de nivel 230 comprende ademas una segunda pluralidad de multiplicadores o elementos de modificacion de escala 236, 237, 238 configurados para aplicar los factores de escala espedficos de la banda de frecuencia a las bandas de frecuencia correspondientes. La informacion adicional puede comprender M factores de escala. El cambiador de nivel 230 proporciona la pluralidad de senales de banda de frecuencia cambiadas de nivel al convertidor del dominio de la frecuencia al dominio del tiempo 140 que se configura para convertir las senales de banda de frecuencia cambiadas de nivel a la representacion en el dominio del tiempo.
El decodificador de senales de audio 100 de la Figura 6 comprende ademas el compensador de cambio de nivel 150 que comprende en la realizacion representada un multiplicador o elemento de modificacion de escala adicional 250 y un calculador redproco 252. El calculador redproco 252 recibe el factor de cambio de nivel y determina la redproca (1/x) del factor de cambio de nivel. La redproca del factor de cambio de nivel se reenvfa al elemento de modificacion de escala adicional 250 donde se multiplica por la representacion en el dominio del tiempo para producir la representacion en el dominio del tiempo sustancialmente compensada. Como alternativa a los multiplicadores o elementos de modificacion de escala 231, 232, 233 y 252 tambien puede ser posible utilizar elementos de suma/resta para aplicar el factor de cambio de nivel a la pluralidad de senales de banda de frecuencia y a la representacion en el dominio del tiempo.
De forma opcional, el decodificador de senales de audio 100 en la Figura 6 comprende ademas un elemento de procesamiento posterior 260 conectado a una salida del compensador de cambio de nivel 150. Por ejemplo, el elemento de procesamiento posterior 260 puede comprender un limitador en el dominio del tiempo que tiene una caractenstica fija para reducir o eliminar cualquier recorte que pueda aun estar presente dentro de la representacion en el dominio del tiempo sustancialmente compensada, a pesar de la provision del cambiador de nivel 230 y el compensador de cambio de nivel 150. Una salida del elemento de procesamiento posterior opcional 260 proporciona la representacion de senal de audio decodificada. En caso de que no este presente el elemento de procesamiento posterior opcional 260, la representacion de senal de audio decodificada puede estar disponible en la salida del compensador de cambio de nivel 150.
La Figura 7 muestra un diagrama de bloques esquematico de un decodificador de senales de audio 100 de acuerdo con realizaciones adicionales posibles de la presente invencion. Un decodificador de flujo de bits/cuantificador inverso 310 se configura para procesar un flujo de bits entrante y para derivar la siguiente informacion a partir del mismo: la pluralidad de senales de banda de frecuencia X1(f), los parametros de flujo de bits p, y una ganancia global g1. Los parametros de flujo de bits p pueden comprender los factores de escala para las bandas de frecuencia y/o la ganancia global g1.
Los parametros de flujo de bits p se proporcionan al estimador de recorte 320 que deriva el factor de escala 1/g2 a partir de los parametros de flujo de bits p. El factor de escala 1/g2 se alimenta al cambiador de nivel 330 que en la realizacion representada tambien implementa un control de intervalo dinamico (DRC). El cambiador de nivel 330 puede recibir ademas los parametros de flujo de bits p o una porcion de los mismos para aplicar los factores de escala a la pluralidad de senales de banda de frecuencia. El cambiador de nivel 330 emite la pluralidad de senales de banda de frecuencia cambiadas de nivel X2(f) al banco de filtros inversos 340 que proporciona la conversion del dominio de la frecuencia al dominio del tiempo. En una salida del banco de filtros inversos 340, se proporciona la representacion en el dominio del tiempo X3(t) que se va a suministrar al compensador de cambio de nivel 350. El compensador de cambio de nivel 350 es un multiplicador o elemento de modificacion de escala, como en la realizacion representada en la Figura 6. El compensador de cambio de nivel 350 es una parte de un procesamiento en el dominio del tiempo posterior 360 para procesamiento de alta precision, por ejemplo, que soporta una longitud de palabra mas larga que el banco de filtros inversos 340. Por ejemplo, el banco de filtros inversos puede tener una longitud de palabra de 16 bits y el procesamiento de alta precision realizado por el procesamiento en dominio del tiempo posterior se puede realizar utilizando 20 bits. Como otro ejemplo, la longitud de palabra del banco de filtros inversos 340 puede ser de 24 bits y la longitud de palabra del procesamiento de alta precision puede ser de 30 bits. En cualquier caso, el numero de bits no debera considerarse como que limita el alcance de la presente patente/solicitud de patente a menos que se indique explfcitamente. El procesamiento en el dominio del tiempo posterior 360 emite la representacion de senal de audio decodificada X4(t).
El cambio de ganancia aplicado g2 se alimenta hacia la implementacion del limitador 360 para compensacion. El limitador 362 se puede implementar con alta precision.
Si el estimador de recorte 320 no estima ningun recorte, las muestras de audio permanecen sustancialmente sin cambios, es decir como si no se hubiera realizado el cambio de nivel y la compensacion de cambio de nivel.
5
10
15
20
25
30
35
40
45
50
55
60
El estimador de recorte proporciona la redproca g2 del factor de cambio de nivel 1/g2 a un combinador 328 donde se combina con la ganancia global g1 para producir una ganancia combinada g3.
El decodificador de senales de audio 100 comprende ademas un ajuste de forma de transicion 370 que se configura para proporcionar transiciones suaves cuando la ganancia combinada g3 cambia de forma abrupta de una trama precedente a una trama actual (o de la trama actual a una trama posterior). El ajustador de forma de transicion 370 se puede configurar para encadenar el factor de cambio de nivel actual y un factor de cambio de nivel posterior para obtener un factor de cambio de nivel encadenado g4 para uso por el compensador cambio de nivel 350. Para permitir la transicion suave de los factores de ganancia que cambian, se tiene que realizar un ajuste de forma de transicion. Esta herramienta crea un vector de factores de ganancia g4(t) (un factor para cada muestra de la senal de audio correspondiente). Para simular el mismo comportamiento del ajuste de ganancia que producina el procesamiento de la senal en el dominio de la frecuencia, se tienen que utilizar las mismas ventanas de transicion W del banco de filtros 340. Una trama cubre una pluralidad de muestras. El factor de ganancia combinado g3 es tfpicamente constante para la duracion de una trama. La ventana de transicion W es tfpicamente una trama larga y proporciona valores de ventana diferentes para cada muestra dentro de la trama (por ejemplo, el primer medio periodo de un coseno). Los detalles relacionados con una implementacion posible del ajuste de forma de transicion se proporcionan en la Figura 9 y en la descripcion correspondiente mas adelante.
La Figura 8 ilustra esquematicamente el efecto de un cambio de nivel aplicado a la pluralidad de senales de banda de frecuencia. Una senal de audio (por ejemplo, cada una de la pluralidad de senales de banda de frecuencia) se puede representar utilizando una resolucion de 16 bits, como se simboliza por el rectangulo 402. El rectangulo 404 ilustra esquematicamente como se emplean los bits de la resolucion de 16 bits para representar la muestra cuantificada dentro de una de las senales de banda de frecuencia proporcionadas por la etapa de pre-procesamiento de decodificador 110. Se puede ver que la muestra cuantificada puede utilizar un cierto numero de bits empezando del bit mas significativo (MSB) hasta un ultimo bit utilizado para la muestra cuantificada. Los bits restantes hasta el bit menos significativo (LSB) contienen solamente ruido de cuantificacion. Esto se puede explicar por el hecho de que para la trama actual la senal de banda de frecuencia correspondiente se represento dentro del flujo de bits solamente mediante un numero reducido de bits (< 16 bits). Incluso si se utilizo la resolucion de bits completa de 16 bits dentro del flujo de bits para la trama actual y para la banda de frecuencia correspondiente, el bit menos significativo contiene tfpicamente una cantidad significativa de ruido de cuantificacion.
Un rectangulo 406 en la Figura 8 ilustra esquematicamente el resultado del cambio de nivel de la senal de banda de frecuencia. Puesto que se puede esperar que el contenido del bit o bits menos significativos contenga una cantidad considerable de ruido de cuantificacion, la muestra cuantificada se puede cambiar hacia el bit menos significativo, sustancialmente sin perder informacion relevante. Esto se puede lograr al cambiar simplemente los bits hacia abajo (“desplazamiento a la derecha”), o recalculando de forma real la representacion binaria. En ambos casos, el factor de cambio de nivel se puede memorizar para compensacion posterior del cambio de nivel aplicado (por ejemplo, por medio del compensador de cambio de nivel 150 o 350). El cambio de nivel da como resultado espacio adicional en el bit o bits mas significativos.
La Figura 9 ilustra esquematicamente una implementacion posible del ajuste de forma de transicion 370 mostrado en la Figura 7. El ajustador de forma de transicion 370 puede comprender una memoria 371 para un factor de cambio de nivel anterior, un primer sistema de formacion de ventanas 372 configurado para generar una primera pluralidad de muestras en ventanas al aplicar una forma de ventana al factor de cambio de nivel actual, un segundo sistema de formacion de ventanas 376 configurado para generar una segunda pluralidad de muestras en ventanas al aplicar una forma de ventana anterior al factor de cambio de nivel anterior proporcionado por la memoria 371, y un combinador de muestras 379 configurado para combinar mutuamente muestras en ventanas correspondientes de la primera pluralidad de muestras en ventanas y de la segunda pluralidad de muestras en ventanas para obtener una pluralidad de muestras combinadas. El primer sistema de formacion de ventanas 372 comprende un proveedor de forma de ventana 373 y un multiplicador 374. El segundo sistema de formacion de ventanas 376 comprende un proveedor de forma de ventana anterior 377 y un multiplicador adicional 378. El multiplicador 374 y el multiplicador adicional 378 emiten vectores durante el tiempo. En el caso del primer sistema de formacion de ventanas 372 cada elemento de vector corresponde a la multiplicacion del factor de ganancia combinado actual g3(t) (constante durante la trama actual) con la forma de ventana actual proporcionada por el proveedor de forma de ventana 373. En el caso del segundo sistema de formacion de ventanas 376 cada elemento de vector corresponde a la multiplicacion del factor de ganancia combinado anterior g3(t-T) (constante durante la trama anterior) con la forma de ventana anterior proporcionada por el proveedor de forma de ventana anterior 377.
De acuerdo con la realizacion ilustrada esquematicamente en la Figura 9, el factor de ganancia de la trama anterior se tiene que multiplicar por la ventana de la “segunda mitad” del banco de filtros 340, mientras que el factor de ganancia real se multiplica por la secuencia de ventana de la “primera mitad”. Estos dos vectores se pueden sumar para formar un vector de ganancia g4(t) que se va a multiplicar por elemento con la senal de audio X3(t) (vease la Figura 7).
5
10
15
20
25
30
35
40
45
50
55
60
Las formas de ventana se pueden guiar por la informacion adicional w del banco de filtros 340, si se requiere.
La forma de ventana y la forma de ventana anterior tambien se pueden utilizar mediante el convertidor del dominio de la frecuencia al dominio del tiempo 340 de tal forma que la misma forma de ventana y la forma de ventana anterior se utilizan para convertir las senales de banda de frecuencia cambiadas de nivel a la representacion en el dominio del tiempo y para la formacion de ventanas del factor de cambio de nivel actual y del factor de cambio de nivel anterior.
El factor de cambio de nivel actual puede ser valido para una trama actual de la pluralidad de senales de banda de frecuencia. El factor de cambio de nivel anterior puede ser valido para una trama anterior de la pluralidad de senales de banda de frecuencia. La trama actual y la trama anterior se pueden superponer, por ejemplo por 50 %.
El ajuste de forma de transicion 370 se puede configurar para combinar el factor de nivel anterior con una segunda porcion de la forma de ventana anterior que da como resultado una secuencia de factor de trama anterior. El ajuste de forma de transicion 370 se puede configurar ademas para combinar el factor de cambio de nivel actual con una primera porcion de la forma de ventana actual que da como resultado una secuencia de factor de trama actual. Se puede determinar una secuencia del factor de cambio de nivel encadenado basandose en la secuencia de factor de trama anterior y la secuencia de factor de trama actual.
El enfoque propuesto no se limita necesariamente a decodificadores, sino que tambien los codificadores pueden tener un ajuste de ganancia o limitador en combinacion con un banco de filtros que puede beneficiarse del metodo propuesto.
La Figura 10 ilustra como se conectan la etapa de pre-procesamiento de decodificador 110 y el estimador de recorte 120. La etapa de pre-procesamiento del decodificador 110 corresponde a o comprende el determinador del libro de codigos 1110. El estimador de recorte 120 comprende una unidad de estimacion 1120. El determinador de libro de codigos 1110 se adapta para determinar un libro de codigos a partir de una pluralidad de libros de codigos como un libro de codigos identificado, en el que la senal de audio se ha codificado empleando el libro de codigos identificado. La unidad de estimacion 1120 se adapta para derivar un valor de nivel, por ejemplo un valor de energfa, un valor de amplitud o un valor de sonoridad, asociado con el libro de codigos identificado como un valor de nivel derivado. Ademas, la unidad de estimacion 1120 se adapta para estimar una estimacion de nivel, por ejemplo una estimacion de energfa, una estimacion de amplitud o una estimacion de sonoridad, de la senal de audio utilizando el valor del nivel derivado. Por ejemplo, el determinador del libro de codigos 1110 puede determinar el libro de codigos, que se ha utilizado por un codificador para codificar la senal de audio, recibiendo informacion adicional transmitida junto con la senal de audio codificada. En particular, la informacion adicional puede comprender informacion que identifica el libro de codigos utilizado para codificar una seccion considerada de la senal de audio. Tal informacion puede transmitirse, por ejemplo, desde el codificador al decodificador como un numero, que identifica un libro de codigos Huffman utilizado para codificar la seccion considerada de la senal de audio.
La Figura 11 ilustra una unidad de estimacion de acuerdo con una realizacion. La unidad de estimacion comprende un derivador de valor de nivel 1210 y una unidad de modificacion de escala 1220. El derivador de valor de nivel se adapta para derivar un valor de nivel asociado con el libro de codigos identificado, es decir, el libro de codigos que se utilizo para codificar los datos espectrales por el codificador, buscando el valor de nivel en una memoria, solicitando el valor de nivel desde una base de datos local o solicitando el valor de nivel asociado con el libro de codigos identificado desde una computadora remota. En una realizacion, el valor de nivel, que se busca o solicita mediante el derivador de valor de nivel, puede ser un valor de nivel promedio que indica un nivel promedio de un valor espectral no modificado a escala codificado al utilizar el libro de codigos identificado.
Mediante esto, el valor de nivel derivado no se calcula a partir de los valores espectrales reales sino en su lugar, se utiliza un valor de nivel promedio que depende solamente del libro de codigos empleado. Como se ha explicado anteriormente, el codificador se adapta en general para seleccionar el libro de codigos a partir de una pluralidad de libros de codigos que se adaptan mejor para codificar los datos espectrales respectivos de una seccion de la senal de audio. Puesto que los libros de codigos difieren, por ejemplo con respecto a sus valores maximos absolutos que se pueden codificar, el valor promedio que se codifica por un libro de codigos Huffman difiere del libro de codigos a libro de codigos y, por lo tanto, tambien el nivel de valor promedio de un coeficiente espectral codificado mediante un libro de codigos particular difiere del libro de codigos al libro de codigos.
Por lo tanto, de acuerdo con una realizacion, un valor de nivel promedio para codificar un coeficiente espectral de una senal de audio que emplea un libro de codigos Huffman particular se puede determinar para cada libro de codigos Huffman y, por ejemplo, se puede almacenar en una memoria, una base de datos o en una computadora remota. El derivador de valor de nivel entonces tiene que buscar o solicitar simplemente el valor de nivel asociado con el libro de codigos identificado que se ha empleado para codificar los datos espectrales, para obtener el valor de nivel derivado asociado con el libro de codigos identificado.
5
10
15
20
25
30
35
40
45
50
55
60
Sin embargo, se tiene que tener en cuenta que los libros de codigos Huffman a menudo se emplean para codificar valores espectrales no modificados a escala, como es el caso para la MPEG AAC. Entonces, sin embargo, se debe tener en cuenta la modificacion a escala cuando se lleva a cabo una estimacion de nivel. Por lo tanto, la unidad de estimacion de la Figura 11 tambien comprende una unidad de modificacion de escala 1220. La unidad de modificacion de escala se adapta para derivar un factor de escala relacionado con la senal de audio codificada o a una porcion de la senal de audio codificada como un factor de escala derivado. Por ejemplo, con respecto a un decodificador, la unidad de modificacion de escala 1220 determinara un factor de escala para cada banda de factor de escala. Por ejemplo, la unidad de modificacion de escala 1220 puede recibir informacion acerca del factor de escala de una banda de factor de escala recibiendo informacion adicional transmitida desde un codificador al decodificador. La unidad de modificacion de escala 1220 se adapta ademas para determinar un valor de nivel modificado a escala basandose en el factor de escala y el valor de nivel derivado.
En una realizacion, donde el valor de nivel derivado es un valor de energfa derivado, la unidad de modificacion de escala se adapta para aplicar el factor de escala derivado al valor de energfa derivado para obtener un valor de nivel modificado a escala multiplicando el valor de energfa derivado por el cuadrado del factor de escala derivado.
En otra realizacion, donde el valor de nivel derivado es un valor de amplitud derivado, y la unidad de modificacion de escala se adapta para aplicar el factor de escala derivado al valor de amplitud derivado para obtener un valor de nivel modificado a escala multiplicando el valor de amplitud derivado por el factor de escala derivado.
En una realizacion adicional, en la que el valor de nivel derivado es un valor de sonoridad derivado, y la unidad de modificacion de escala 1220 se adapta para aplicar el factor de escala derivado al valor de sonoridad derivado para obtener un valor de nivel modificado a escala multiplicando el valor de sonoridad derivado por el cubo del factor de escala derivado. Existen formas alternativas para calcular la sonoridad tal como mediante un exponente 3/2. En general, los factores de escala se tienen que transformar al dominio de sonoridad, cuando el valor de nivel derivado es un valor de sonoridad.
Estas realizaciones tienen en cuenta, que se determina un valor de energfa basandose en el cuadrado de los coeficientes espectrales de una senal de audio, que se determina un valor de amplitud basandose en los valores absolutos de los coeficientes espectrales de una senal de audio, y que se determina un valor de sonoridad basandose en los coeficientes espectrales de una senal de audio que se ha transformado al dominio de sonoridad.
La unidad de estimacion se adapta para estimar una estimacion de nivel de la senal de audio utilizando el valor de nivel modificado a escala. En la realizacion de la Figura 11, la unidad de estimacion se adapta para emitir el valor de nivel modificado a escala como la estimacion de nivel. En este caso, no se lleva a cabo pos-procesamiento del valor de nivel modificado a escala. Sin embargo, como se ilustra en la realizacion de la Figura 12, la unidad de estimacion tambien se puede adaptar para llevar a cabo un pos-procesamiento. Por lo tanto, la unidad de estimacion de la Figura 12 comprende un pos-procesador 1230 para pos-procesar uno o mas valores de nivel modificados a escala para estimar una estimacion de nivel. Por ejemplo, la estimacion de nivel de la unidad de estimacion se puede determinar mediante el pos-procesador 1230 determinando un valor promedio de una pluralidad de valores de nivel modificados a escala. Este valor promediado se puede emitir por la unidad de estimacion como la estimacion de nivel.
En comparacion con las realizaciones presentadas, un enfoque del estado de la tecnica para estimar, por ejemplo, la energfa de una banda de factor de escala sena realizar la decodificacion Huffman y la cuantificacion inversa para todos los valores espectrales y calcular la energfa sumando el cuadrado de todos los valores espectrales cuantificados de forma inversa.
En las realizaciones propuestas, sin embargo, este proceso computacionalmente complejo del estado de la tecnica se reemplaza por una estimacion del nivel promedio que solamente depende del factor de escala y los usos del libro de codigos y no de los valores cuantificados reales.
Las realizaciones de la presente invencion emplean el hecho de que un libro de codigos Huffman se disena para proporcionar codificacion optima despues de una estadfstica especializada. Esto significa que el libro de codigos se ha disenado de acuerdo con la probabilidad de los datos, por ejemplo, AAC-ELD (AAC-ELD = codificacion de audio avanzada - bajo retardo mejorado): lmeas espectrales. Este proceso se puede invertir para obtener la probabilidad de los datos de acuerdo con el libro de codigos. La probabilidad de cada entrada de datos dentro de un libro de codigos (mdice) esta dada por la longitud de palabra de codigo. Por ejemplo,
p (mdice) = 2A-longitud(palabra de codigo)
es decir
p (mdice) = 2_l°ngitud(palabra de codigo)
5
10
15
20
25
30
35
40
45
50
55
60
en el que p(mdice) es la probabilidad de una entrada de datos (un mdice) dentro de un libro de codigos.
Basandose en esto, el nivel esperado se puede pre-calcular y almacenar de la siguiente manera: cada mdice representa una secuencia de valores enteros (x), por ejemplo, lmeas espectrales, donde la longitud de la secuencia depende de la dimension del libro de codigos, por ejemplo, 2 o 4 para AAC-ELD.
La Figura 13a y 13b ilustran un metodo para generar un valor de nivel, por ejemplo un valor de energfa, un valor de amplitud o un valor de sonoridad, asociado con un libro de codigos de acuerdo con una realizacion. El metodo comprende:
Determinar una secuencia de valores numericos asociados con una palabra de codigo del libro de codigos para cada palabra de codigo del libro de codigos (etapa 1310). Como se ha explicado anteriormente, un libro de codigos codifica una secuencia de valores numericos, por ejemplo, 2 o 4 valores numericos por una palabra de codigo del libro de codigos. El libro de codigos comprende una pluralidad de libros de codigos para codificar una pluralidad de secuencias de valores numericos. La secuencia de valores numericos, que se determina, es la secuencia de valores numericos que se codifica por la palabra de codigo considerada del libro de codigos. La etapa 1310 se lleva a cabo para cada palabra de codigo del libro de codigos. Por ejemplo, si el libro de codigos comprende 81 palabras de codigo, se determinan 81 secuencias de valores numericos en la etapa 1310.
En la etapa 1320, se determina una secuencia cuantificada de forma inversa de valores numericos para cada palabra de codigo del libro de codigos aplicando un cuantificador inverso a los valores numericos de la secuencia de valores numericos de una palabra de codigo para cada palabra de codigo del libro de codigos. Como se ha explicado anteriormente, un codificador puede emplear en general cuantificacion cuando se codifican los valores espectrales de la senal de audio, por ejemplo cuantificacion no uniforme. Como consecuencia, esta cuantificacion se tiene que invertir en el lado del decodificador.
Despues, en la etapa 1330, se determina una secuencia de valores de nivel para cada palabra de codigo del libro de codigos.
Si se va a generar un valor de energfa como el valor de nivel del libro de codigos, entonces se determina una secuencia de valores de energfa para cada palabra de codigo, y se calcula el cuadrado de cada valor de la secuencia cuantificada de forma inversa de los valores numericos para cada palabra de codigo del libro de codigos.
Si, sin embargo, se va a generar un valor de amplitud como el valor del nivel de libros de codigos, entonces se determina una secuencia de valores de amplitud para cada palabra de codigo, y se calcula el valor absoluto de cada valor de la secuencia cuantificada de forma inversa de valores numericos para cada palabra de codigo del libro de codigos.
Si, aunque, se va a generar un valor de sonoridad como el valor de nivel del libro de codigos, entonces se determina una secuencia de valores de sonoridad para cada palabra de codigo, y se calcula el cubo de cada valor de la secuencia cuantificada de forma inversa de valores numericos para cada palabra de codigo del libro de codigos. Existen formas alternativas para calcular la sonoridad tal como mediante un exponente 3/2. En general, los valores de la secuencia cuantificada de forma inversa de valores numericos se tienen que transformar al dominio de sonoridad, cuando se va a generar un valor de sonoridad como el valor del nivel del libro de codigos.
Posteriormente, en la etapa 1340, se calcula un valor de suma de nivel para cada palabra de codigo del libro de codigos sumando los valores de la secuencia de valores de nivel para cada palabra de codigo del libro de codigos.
Entonces, en la etapa 1350, se determina un valor de suma de nivel de probabilidad ponderada para cada palabra de codigo del libro de codigos multiplicando el valor de suma de nivel de una palabra de codigo por un valor de probabilidad asociado con la palabra de codigo para cada palabra de codigo del libro de codigos. Mediante esto, se tiene en cuenta que algunas de las secuencias de valores numericos, por ejemplo, secuencias de coeficientes espectrales, no apareceran tan a menudo como otras secuencias de coeficientes espectrales. El valor de probabilidad asociado con la palabra de codigo tiene esto en cuenta. Un valor de probabilidad de este tipo se puede derivar a partir de la longitud de palabra de codigo, ya que las palabras de codigos que es mas probable que aparezcan se codifican utilizando palabras de codigos que tienen una longitud mas corta, mientras que otras palabras de codigo que es menos probable que aparezcan se codificaran utilizando palabras de codigo que tienen una longitud mas larga, cuando se emplea codificacion Huffman.
En la etapa 1360, se determinara un valor de suma de nivel de probabilidad ponderada promediado para cada palabra de codigo del libro de codigos dividiendo el valor de suma de nivel de probabilidad ponderada de una palabra de codigo por un valor de dimension asociado con el libro de codigos para cada palabra de codigo del libro de codigos. Un valor de dimension indica el numero de valores espectrales que se codifican por una palabra de
5
10
15
20
25
30
35
40
45
50
55
60
codigo del libro de codigos. Mediante esto, se determina un valor de suma de nivel de probabilidad ponderada, promediado que representa un valor de nivel (probabilidad ponderada) para un coeficiente espectral que se codifica por la palabra de codigo.
Entonces, en la etapa 1370, el valor de nivel del libro de codigos se calcula sumando los valores de suma del nivel de probabilidad ponderada promediados de todas las palabras de codigo.
Se tiene que senalar, que una generacion de este tipo de un valor de nivel se tiene que realizar solo una vez para un libro de codigos. Si se determina el valor de nivel de un libro de codigos, este valor se puede buscar y utilizar simplemente, por ejemplo por un aparato para estimacion de nivel de acuerdo con las realizaciones descritas anteriormente.
A continuacion, se presenta un metodo para generar un valor de energfa asociado con un libro de codigos de acuerdo con una realizacion. Para estimar el valor esperado de la energfa de los datos codificados con el libro de codigos dado, se tienen que realizar las siguientes etapas solamente una vez para cada mdice del libro de codigos:
A) aplicar el cuantificador inverso a los valores enteros de la secuencia (por ejemplo AAC-ELD: XA(4/3)).
B) calcular la energfa elevando al cuadrado cada valor de la secuencia de A)
C) crear la suma de la secuencia B)
D) multiplicar C) con la probabilidad dada del mdice
E) dividir por la dimension del libro de codigos para obtener la energfa esperada por lmea espectral.
Finalmente, se tienen que sumar todos los valores calculados por E) para obtener la energfa esperada del libro de codigos completo.
Despues de que la salida de estas etapas se almacena en una tabla, los valores de energfa estimados se pueden buscar simplemente basandose en el mdice del libro de codigos, es decir, dependiendo de en que libro de codigos se utilice. Los valores espectrales reales no se tienen que someter a decodificacion Huffman para esta estimacion.
Para estimar la energfa total de los datos espectrales de una trama de audio completa, se tiene que tener en cuenta el factor de escala. El factor de escala se puede extraer del flujo de bits sin una cantidad significativa de complejidad. El factor de escala se puede modificar antes de que se aplique a la energfa esperada, por ejemplo se puede calcular el cuadrado del factor de escala utilizado. Entonces la energfa esperada se multiplica por el cuadrado del factor de escala utilizado.
De acuerdo con las realizaciones descritas anteriormente, el valor espectral para cada banda de factor de escala se puede estimar sin decodificar los valores espectrales sometidos a codificacion Huffman. Las estimaciones del nivel se pueden utilizar para identificar los flujos con un nivel bajo, por ejemplo con baja potencia, que son los que tfpicamente no dan como resultado recortes. Por lo tanto, la decodificacion completa de estos tales se puede omitir.
De acuerdo con una realizacion, un aparato para estimacion de nivel comprende ademas una memoria o una base de datos que tiene almacenada en la misma una pluralidad de valores de memoria del nivel del libro de codigos que indican un valor de nivel que esta asociado con un libro de codigos, en el que cada uno de la pluralidad de libros de codigos tiene un valor de memoria del nivel del libro de codigos asociado con el almacenado en la memoria o la base de datos. Ademas, el derivador de valor de nivel se configura para derivar el valor de nivel asociado con el libro de codigos identificado derivando un valor de memoria de nivel del libro de codigos asociado con el libro de codigos identificado desde la memoria o desde la base de datos.
El nivel estimado de acuerdo con las realizaciones descritas anteriormente puede variar si una etapa de procesamiento adicional como prediccion, tal como filtrado de prediccion, se aplica en el codec, por ejemplo, para filtrado AAC-ELD TNS (conformacion de ruido temporal). En este punto, los coeficientes de la prediccion se transmiten dentro del flujo de bits, por ejemplo, para tNs como coeficientes PARCOR.
La Figura 14 ilustra una realizacion en la que la unidad de estimacion comprende ademas un ajustador de filtro de prediccion 1240. El ajustador de filtro de prediccion se adapta para derivar uno o mas coeficientes de filtro de prediccion relacionados con la senal de audio codificada o con una porcion de la senal de audio codificada como coeficientes de filtro de prediccion derivados. Ademas, el ajustador de filtro de prediccion se adapta para obtener un valor de nivel ajustado de filtro de prediccion basandose en los coeficientes de filtro prediccion y el valor de nivel derivado. Ademas, la unidad de estimacion se adapta para estimar una estimacion de nivel de la senal de audio utilizando el valor de nivel ajustado de filtro de prediccion.
5
10
15
20
25
30
35
40
45
50
55
En una realizacion, los coeficientes PARCOR para TNS se utilizan como los coeficientes de filtro de prediccion. La ganancia de prediccion del proceso de filtrado se puede determinar a partir de aquellos coeficientes de una forma muy eficiente. Con respecto a TNS, la ganancia de prediccion se puede calcular de acuerdo con la formula: ganancia = 1/prod(1-parcor.A2).
Por ejemplo, si se tienen que tener en cuenta los 3 coeficientes PARCOR, por ejemplo, parcori, parcor2 y parcor3, la ganancia se calcula de acuerdo con la formula:
. 1
ganancia = ^
(1 - parcoif j(l — parcor, — parcor3)
Para n coeficientes PARCOR parcori, parcor2, ... parcorn, se aplica la siguiente formula:
Esto significa que la amplificacion de la senal de audio a traves del filtrado se puede estimar sin aplicar la propia operacion de filtrado.
La Figura 15 muestra un diagrama de bloques esquematico de un codificador 1500 que implementa el ajuste de ganancia propuesto que “evita” el banco de filtros. El codificador de senales de audio 1500 se configura para proporcionar una representacion de senal de audio codificada basandose en una representacion en el dominio del tiempo de una senal de audio de entrada. La representacion en el dominio del tiempo puede ser, por ejemplo, una senal de entrada de audio modulada por codificacion de impulsos.
El codificador de senales de audio comprende un estimador de recorte 1520 configurado para analizar la representacion en el dominio del tiempo de la senal de audio de entrada para determinar un factor de cambio de nivel actual para la representacion de senal de entrada. El codificador de senales de audio comprende ademas un cambiador de nivel 1530 configurado para cambiar un nivel de la representacion en el dominio del tiempo de la senal de audio de entrada de acuerdo con el factor de cambio de nivel para obtener una representacion en el dominio del tiempo cambiada de nivel. Un convertidor del dominio del tiempo al dominio de la frecuencia 1540 (por ejemplo, un banco de filtros, tal como un banco de filtros de espejo en cuadratura, una transformada discreta de coseno modificada, etc.) se configura para convertir la representacion en el dominio del tiempo cambiada de nivel en una pluralidad de senales de banda de frecuencia. El codificador de senales de audio 1500 tambien comprende un compensador de cambio de nivel 1550 configurado para actuar sobre la pluralidad de senales de banda de frecuencia para compensar al menos parcialmente un cambio de nivel aplicado a la representacion en el dominio del tiempo cambiada de nivel por el cambiador de nivel 1530 y para obtener una pluralidad de senales de banda de frecuencia sustancialmente compensadas.
El codificador de senales de audio 1500 puede comprender ademas un componente de asignacion de bits/ruido, cuantificador y de codificacion 1510 y un modelo psicoacustico 1508. El modelo psicoacustico 1508 determina los umbrales de enmascaramiento de tiempo-frecuencia variables en (y/o resoluciones de cuantificacion de trama individual y de banda de frecuencia individual, y factores de escala) basandose en la senal de audio de entrada PCM, que se va a utilizar mediante la asignacion de bits/ruido, cuantificador y la codificacion 1610. Los detalles relacionados con una posible implementacion del modelo psicoacustico y otros aspectos de la codificacion de audio perceptual se pueden encontrar, por ejemplo, en las normas internacionales ISO/IEC 11172-3 e ISO/IEC 13818-3. La asignacion de bits/ruido, cuantificador, y la codificacion 1510 se configuran para cuantificar la pluralidad de senales de banda de frecuencia de acuerdo con sus resoluciones de cuantificacion de trama individual y de banda de frecuencia individual, y para proporcionar estos datos a un formateador de flujo de bits 1505 que emite un flujo de bits codificado que se va a proporcionar a uno o mas decodificadores de senales de audio. La asignacion de bits/ruido, cuantificador y la codificacion 1510 se pueden configurar para determinar la informacion adicional ademas de la pluralidad de senales de frecuencia cuantificadas. Esta informacion adicional tambien se puede proporcionar al formateador de flujo de bits 1505 para inclusion en el flujo de bits.
La Figura 16 muestra un diagrama de flujo esquematico de un metodo para decodificar una representacion de senal de audio codificada para obtener una representacion de senal de audio decodificada. El metodo comprende una etapa 1602 de pre-procesar la representacion de senal de audio codificada para obtener una pluralidad de senales de banda de frecuencia. En particular, el pre-procesamiento puede comprender desempaquetar un flujo de bits en datos que corresponden a tramas sucesivas, y re-cuantificar (cuantificacion inversa) los datos relacionados con la
5
10
15
20
25
30
35
40
45
50
55
60
banda de frecuencia de acuerdo con las resoluciones de cuantificacion espedficas de la banda de frecuencia para obtener una pluralidad de senales de banda de frecuencia.
En una etapa 1604 del metodo para decodificar, se analiza la informacion adicional con respecto a una ganancia de las senales de banda de frecuencia para determinar un factor de cambio de nivel actual para la representacion de senal de audio codificada. La ganancia relacionada con las senales de banda de frecuencia puede ser individual para cada senal de banda de frecuencia (por ejemplo, los factores de escala conocidos en algunos esquemas de codificacion de audio perceptual o parametros similares) o comun para todas las senales de banda de frecuencia (por ejemplo, la ganancia global conocida en algunos esquemas de codificacion de audio perceptual). El analisis de la informacion adicional permite reunir informacion acerca de una sonoridad de la senal de audio codificada durante la trama disponible. La sonoridad, a su vez, puede indicar una tendencia de la representacion de senal de audio decodificada a entrar en recorte. El factor de cambio de nivel se determina tipicamente como un valor que evita tal recorte mientras conserva un intervalo dinamico relevante y/o contenido de informacion relevante de (todas) las senales de banda de frecuencia.
El metodo para decodificar comprende ademas una etapa 1606 para cambiar los niveles de la senal de banda de frecuencia de acuerdo con el factor de cambio de nivel. En caso de que las senales de banda de frecuencia se cambien de nivel a un nivel inferior, el cambio de nivel crea algun espacio adicional en el bit o bits mas significativos de una representacion binaria de las senales de banda de frecuencia. Este espacio adicional puede ser necesario cuando se convierte la pluralidad de senales de banda de frecuencia del dominio de la frecuencia al dominio del tiempo para obtener una representacion en el dominio del tiempo, que se realiza en una etapa posterior 1608. En particular, el espacio adicional reduce el riesgo de que la representacion en el dominio del tiempo se recorte si algunas de las senales de banda de frecuencia estan cerca de un lfmite superior relacionado con su amplitud y/o potencia. Como consecuencia, la conversion del dominio de la frecuencia al dominio del tiempo se puede realizar utilizando una longitud de palabra relativamente corta.
El metodo para decodificar tambien comprende una etapa 1609 para actuar sobre la representacion en el dominio del tiempo para compensar al menos parcialmente un cambio de nivel aplicado a las senales de banda de frecuencia cambiadas de nivel. Posteriormente, se obtiene una representacion en el dominio del tiempo sustancialmente compensada.
En consecuencia, un metodo para decodificar una representacion de senal de audio codificada a una representacion de senal de audio decodificada comprende:
- pre-procesar la representacion de senal de audio codificada para obtener una pluralidad de senales de banda de frecuencia;
- analizar la informacion adicional con respecto a una ganancia de las senales de banda de frecuencia para determinar un factor de cambio de nivel actual para la representacion de senal de audio codificada;
- cambiar los niveles de las senales de banda de frecuencia de acuerdo con el factor de cambio de nivel para obtener las senales de banda de frecuencia cambiadas de nivel,
- realizar una conversion del dominio de la frecuencia al dominio del tiempo de las senales de banda de frecuencia a una representacion en el dominio del tiempo; y
- actuar sobre la representacion en el dominio del tiempo para compensar al menos parcialmente un cambio de nivel aplicado a las senales de banda de frecuencia cambiadas de nivel y para obtener una representacion en el dominio del tiempo sustancialmente compensada.
De acuerdo con aspectos adicionales, analizar la informacion adicional puede comprender: determinar una probabilidad de recorte basandose en la informacion adicional y para determinar el factor de cambio de nivel actual basandose en la probabilidad de recorte.
De acuerdo con aspectos adicionales, la informacion adicional puede comprender al menos uno de un factor de ganancia global para la pluralidad de senales de banda de frecuencia y una pluralidad de factores de escala, correspondiendo cada factor de escala a una senal de banda de frecuencia de la pluralidad de senales de banda de frecuencia.
De acuerdo con aspectos adicionales, el pre-procesamiento de la representacion de senal de audio codificada puede comprender obtener la pluralidad de senales de banda de frecuencia en la forma de una pluralidad de tramas sucesivas, y analizar la informacion adicional puede comprender determinar el factor de cambio de nivel actual para una trama actual.
De acuerdo con aspectos adicionales, la representacion de senal de audio decodificada se puede determinar basandose en la representacion en el dominio del tiempo sustancialmente compensada.
De acuerdo con aspectos adicionales, el metodo puede comprender ademas: aplicar una caractenstica de limitador
5
10
15
20
25
30
35
40
45
50
55
60
en el dominio del tiempo posterior para actuar sobre la representacion en el dominio del tiempo para compensar al menos parcialmente el cambio de nivel.
De acuerdo con aspectos adicionales, la informacion adicional con respecto a la ganancia de las senales de banda de frecuencia puede comprender una pluralidad de factores de ganancia relacionados con la banda de frecuencia.
De acuerdo con aspectos adicionales, pre-procesar la senal de audio codificada puede comprender re-cuantificar cada senal de banda de frecuencia utilizando un indicador de cuantificacion espedfico de la banda de frecuencia de una pluralidad de indicadores de cuantificacion espedficos de la banda de frecuencia.
De acuerdo con aspectos adicionales, el metodo puede comprender ademas realizar un ajuste en forma de transicion, comprendiendo el ajuste de forma de transicion: encadenar el factor de cambio de nivel actual y un factor de cambio de nivel posterior para obtener un factor de cambio de nivel encadenado para uso durante la accion de la compensacion al menos parcialmente del cambio de nivel.
De acuerdo con aspectos adicionales, el ajuste de forma de transicion puede comprender ademas:
- almacenar temporalmente un factor de cambio de nivel anterior,
- generar una primera pluralidad de muestras en ventanas aplicando una forma de ventana al factor de cambio de nivel actual,
- generar una segunda pluralidad de muestras en ventanas aplicando una forma de ventana anterior al factor de cambio de nivel anterior proporcionado por la accion de almacenar temporalmente el factor de cambio de nivel anterior, y
- combinar mutuamente las muestras en ventanas correspondientes de la primera pluralidad de muestras en ventanas y de la segunda pluralidad de muestras en ventanas para obtener una pluralidad de muestras combinadas.
De acuerdo con aspectos adicionales, la forma de ventana y la forma de ventana anterior tambien se puede utilizar mediante la conversion del dominio de la frecuencia al dominio del tiempo por lo que se utiliza la misma forma de ventana y la forma de ventana anterior para convertir las senales de banda de frecuencia cambiadas de nivel en la representacion en el dominio del tiempo y para aplicar formacion de ventanas del factor de cambio de nivel actual y el factor de cambio de nivel anterior.
De acuerdo con aspectos adicionales, el factor de cambio de nivel actual puede ser valido para una trama actual de la pluralidad de las senales de banda de frecuencia, en la que el factor de cambio de nivel anterior puede ser valido para una trama anterior de la pluralidad de senales de banda de frecuencia, y en la que la trama actual y la trama anterior pueden superponerse. El ajuste de forma de transicion se puede configurar
- para combinar el factor de cambio de nivel anterior con una segunda porcion de la forma de ventana anterior que da como resultado una secuencia de factor de trama anterior,
- para combinar el factor de cambio de nivel actual con una primera porcion de la forma de ventana actual que da como resultado una secuencia de factor de trama actual, y
- para determinar una secuencia del factor de cambio de nivel encadenado basandose en la secuencia de factor de trama anterior y la secuencia de factor de trama actual.
De acuerdo con aspectos adicionales, analizar la informacion adicional se puede realizar con respecto a si la informacion adicional sugiere un recorte potencial dentro de la representacion en el dominio del tiempo lo que significa que un bit menos significativo no contiene informacion relevante, y en el que en este caso el cambio de nivel cambia la informacion hacia el bit menos significativo por lo que al liberar un bit mas significativo se gana algun espacio en el bit mas significativo.
De acuerdo con aspectos adicionales, se puede proporcionar un programa informatico para implementar el metodo para decodificar o el metodo para codificar, cuando el programa informatico se ejecuta en una computadora o procesador de senales.
Aunque algunos aspectos se han descrito en el contexto de un aparato, es claro que estos aspectos tambien representan una descripcion del metodo correspondiente, donde un bloque o dispositivo corresponde a una etapa de metodo o una caractenstica de una etapa de metodo. De forma analoga, los aspectos descritos en el contexto de una etapa de metodo tambien representan una descripcion de un bloque o elemento o caractenstica correspondiente de un aparato correspondiente.
La senal descompuesta inventiva se puede almacenar en un medio de almacenamiento digital o se puede transmitir en un medio de transmision tal como un medio de transmision inalambrico o un medio de transmision alambrico tal como internet.
5
10
15
20
25
30
35
40
45
50
Dependiendo de ciertos requisitos de implementacion, las realizaciones de la invencion se pueden implementar en hardware o software. La implementacion se puede realizar utilizando un medio de almacenamiento digital, por ejemplo un disco flexible, un DVD, un CD, una ROM, una PROM, una EPROM, una EEPROM, o una memoria FLASH, que tienen senales de control legibles de forma electronica almacenadas en los mismos, que cooperan (o son capaces de cooperar) con un sistema informatico programable de manera que se realiza el metodo respectivo.
Algunas realizaciones de acuerdo con la invencion comprenden un portador de datos no transitorio que tiene senales de control legibles de forma electronica, que son capaces de cooperar con un sistema informatico programable, de tal forma que ser realiza uno de los metodos descritos en el presente documento.
En general, las realizaciones de la presente invencion se pueden implementar como un producto de programa informatico con un codigo de programa, siendo el codigo de programa operativo para realizar uno de los metodos cuando el producto de programa informatico se ejecuta en una computadora. El codigo de programa puede almacenarse, por ejemplo, en un portador legible por maquina.
Otras realizaciones comprenden el programa informatico para realizar uno de los metodos descritos en el presente documento, almacenado en un portador legible por maquina.
En otras palabras, una realizacion del metodo inventivo es, por lo tanto, un programa informatico que tiene un codigo de programa para realizar uno de los metodos descritos en el presente documento, cuando el programa informatico se ejecuta en una computadora.
Una realizacion adicional del metodo inventivo es, por lo tanto, un portador de datos (o un medio de almacenamiento digital, o un medio legible por computadora) que comprende, grabado en el mismo, el programa informatico para realizar uno de los metodos descritos en el presente documento.
Una realizacion adicional del metodo inventivo es, por lo tanto, un flujo de datos o una secuencia de senales que representan el programa informatico para realizar uno de los metodos descritos en el presente documento. El flujo de datos o la secuencia de senales pueden configurarse, por ejemplo, para que se transfieran mediante una conexion de comunicacion de datos, por ejemplo mediante internet.
Una realizacion adicional comprende un medio de procesamiento, por ejemplo una computadora, o un dispositivo logico programable, configurado para o adaptado para realizar uno de los metodos descritos en el presente documento.
Una realizacion adicional comprende una computadora que tiene instalado en la misma el programa informatico para realizar uno de los metodos descritos en el presente documento.
En algunas realizaciones, un dispositivo logico programable (por ejemplo un campo de matriz de puertas programables) se puede utilizar para realizar algunas o todas las funcionalidades de los metodos descritos en el presente documento. En algunas realizaciones, un campo de matriz de puertas programables puede cooperar con un microprocesador para realizar uno de los metodos descritos en el presente documento. En general, los metodos se realizan de manera preferente por cualquier aparato de hardware.
Las realizaciones descritas anteriormente son simplemente ilustrativas para los principios de la presente invencion. Se entiende que las modificaciones y variaciones de las disposiciones y los detalles descritos en el presente documento seran evidentes para otros expertos en la tecnica. Se propone, por lo tanto, que se lfmite solamente por el alcance de las reivindicaciones de la patente proximas y no por los detalles espedficos presentados a manera de descripcion y explicacion de las realizaciones en el presente documento.
Claims (17)
- 51015202530354045505560REIVINDICACIONES1. Un decodificador de senales de audio (100) configurado para proporcionar una representacion de senal de audio decodificada basandose en una representacion de senal de audio codificada, comprendiendo el decodificador de senales de audio:una etapa de pre-procesamiento de decodificador (110) configurada para obtener una pluralidad de senales de banda de frecuencia a partir de la representacion de la senal de audio codificada;un estimador de recorte (120) configurado para analizar la informacion adicional con respecto a una ganancia de las senales de banda de frecuencia de la representacion de la senal de audio codificada en cuanto a si la informacion adicional sugiere un recorte potencial para determinar un factor de cambio de nivel actual para la representacion de senal de audio codificada, en el que cuando la informacion adicional sugiere el recorte potencial, el factor de cambio de nivel actual provoca que la informacion de la pluralidad de senales de banda de frecuencia se cambie hacia un bit menos significativo de tal forma que se gana un espacio en al menos un bit mas significativo;un cambiador de nivel (130) configurado para cambiar los niveles de las senales de banda de frecuencia de acuerdo con el factor de cambio de nivel actual para obtener las senales de banda de frecuencia cambiadas de nivel;un convertidor del dominio de la frecuencia al dominio del tiempo (140) configurado para convertir las senales de banda de frecuencia cambiadas de nivel a una representacion en el dominio del tiempo; yun compensador de cambio de nivel (150) configurado para actuar sobre la representacion en el dominio del tiempo para compensar al menos parcialmente un cambio de nivel aplicado a las senales de banda de frecuencia cambiadas de nivel por el cambiador de nivel (130) y para obtener una representacion en el dominio del tiempo sustancialmente compensada.
- 2. Decodificador de senales de audio (100) de acuerdo con la reivindicacion 1, en el que el estimador de recorte (120) se configura ademas para determinar una probabilidad de recorte basandose en al menos una de la informacion adicional y la representacion de senal de audio codificada, y para determinar el factor de cambio de nivel actual basandose en la probabilidad de recorte.
- 3. Decodificador de senales de audio (100) de acuerdo con la reivindicacion 1 o 2, en el que la informacion adicional comprende al menos uno de un factor de ganancia global para la pluralidad de senales de banda de frecuencia y una pluralidad de factores de escala, correspondiendo cada factor de escala a una senal de banda de frecuencia o un grupo de senales de banda de frecuencia dentro de la pluralidad de senales de banda de frecuencia.
- 4. Decodificador de senales de audio (100) de acuerdo con una cualquiera de las reivindicaciones precedentes, en el que la etapa de pre-procesamiento de decodificador (110) se configura para obtener la pluralidad de senales de banda de frecuencia en la forma de una pluralidad de tramas sucesivas, y en el que el estimador de recorte (120) se configura para determinar el factor de cambio de nivel actual para una trama actual.
- 5. Decodificador de senales de audio (100) de acuerdo con una cualquiera de las reivindicaciones precedentes, en el que la representacion de senal de audio decodificada se determina basandose en la representacion en el dominio del tiempo sustancialmente compensada.
- 6. Decodificador de senales de audio (100) de acuerdo con una cualquiera de las reivindicaciones precedentes, que comprende ademas un limitador en el dominio del tiempo corriente abajo del compensador de cambio de nivel (150).
- 7. Decodificador de senales de audio (100) de acuerdo con una cualquiera de las reivindicaciones precedentes, en el que la informacion adicional con respecto a la ganancia de las senales de banda de frecuencia comprende una pluralidad de factores de ganancia relacionados con la banda de frecuencia.
- 8. Decodificador de senales de audio (100) de acuerdo con una cualquiera de las reivindicaciones precedentes, en el que la etapa de pre-procesamiento de decodificador (110) comprende un cuantificador inverso configurado para re- cuantificar cada senal de banda de frecuencia utilizando un indicador de cuantificacion espedfico de la banda de frecuencia de una pluralidad de indicadores de cuantificacion espedficos de la banda de frecuencia.
- 9. Decodificador de senales de audio (100) de acuerdo con una cualquiera de las reivindicaciones precedentes, que comprende ademas un ajustador de forma de transicion configurado para encadenar el factor de cambio de nivel actual y un factor de cambio de nivel posterior para obtener un factor de cambio de nivel encadenado para uso por el compensador (150) de cambio de nivel.
- 10. Decodificador de senales de audio (100) de acuerdo con la reivindicacion 9, en el que el ajustador de forma de51015202530354045505560transicion comprende una memoria (371) para un factor de cambio de nivel anterior, un primer sistema de formacion de ventanas (372) configurado para generar una primera pluralidad de muestras en ventanas aplicando una forma de ventana al factor de cambio de nivel actual, un segundo sistema de formacion de ventanas (376) configurado para generar una segunda pluralidad de muestras en ventanas aplicando una forma de ventana anterior al factor de cambio de nivel anterior proporcionado por la memoria (371), y un combinador de muestras (379) configurado para combinar mutuamente las muestras en ventanas correspondientes de la primera pluralidad de muestras en ventanas y de la segunda pluralidad de muestras en ventanas para obtener una pluralidad de muestras combinadas.
- 11. Decodificador de senales de audio (100) de acuerdo con la reivindicacion 10,en el que el factor de cambio de nivel actual es valido para una trama actual de la pluralidad de senales de banda de frecuencia, en el que el factor de cambio de nivel anterior es valido para una trama anterior de la pluralidad de senales de banda de frecuencia, y en el que la trama actual y la trama anterior se superponen;en el que el ajuste de forma de transicion se configurapara combinar el factor de cambio de nivel anterior con una segunda porcion de la forma de ventana anterior que da como resultado una secuencia de factor de trama anterior,para combinar el factor de cambio de nivel actual con una porcion de la forma de ventana actual que da como resultado una secuencia de factor de trama actual, ypara determinar una secuencia del factor de cambio de nivel encadenado basandose en la secuencia de factor de trama anterior y la secuencia de factor de trama actual.
- 12. Decodificador de senales de audio (100) de acuerdo con una cualquiera de las reivindicaciones precedentes, en el que el estimador de recorte (120) se configura para analizar al menos una de la representacion de senal de audio codificada y la informacion adicional con respecto a si al menos una de la representacion de senal de audio codificada y la informacion adicional sugieren un recorte potencial dentro de la representacion en el dominio del tiempo lo que significa que un bit menos significativo no contiene informacion relevante, y en el que en este caso el cambio de nivel aplicado por el cambiador de nivel cambia la informacion hacia el bit menos significativo por lo que al liberar un bit mas significativo se gana algun espacio en el bit mas significativo.
- 13. Decodificador de senales de audio (100) de acuerdo con una cualquiera de las reivindicaciones precedentes, en el que el estimador de recorte (120) comprende:un determinador del libro de codigos (1110) para determinar un libro de codigos a partir de una pluralidad de libros de codigos como un libro de codigos identificado, en el que la representacion de senal de audio codificada se ha codificado empleando el libro de codigos identificado, yuna unidad de estimacion (1120) configurada para derivar un valor de nivel asociado con el libro de codigos identificado como un valor de nivel derivado y, para estimar una estimacion de nivel de la senal de audio utilizando el valor de nivel derivado.
- 14. Codificador de senales de audio configurado para proporcionar una representacion de senal de audio codificada basandose en una representacion en el dominio del tiempo de una senal de audio de entrada, comprendiendo el codificador de senales de audio:un estimador de recorte configurado para analizar la representacion en el dominio del tiempo de la senal de audio de entrada en cuanto a sf se sugiere el recorte potencial para determinar un factor de cambio de nivel actual para la representacion de senal de entrada, en el que cuando se sugiere el recorte potencial, el factor de cambio de nivel actual provoca que la representacion en el dominio del tiempo de la senal de audio de entrada se cambie hacia un bit menos significativo por lo que se gana un espacio en al menos un bit mas significativo;un cambiador de nivel configurado para cambiar un nivel de la representacion en el dominio del tiempo de la senal de audio de entrada de acuerdo con el factor de cambio de nivel actual para obtener una representacion en el dominio del tiempo cambiada de nivel;un convertidor del dominio del tiempo al dominio de la frecuencia configurado para convertir la representacion en el dominio del tiempo cambiada de nivel a una pluralidad de senales de banda de frecuencia; yun compensador de cambio de nivel configurado para actuar sobre la pluralidad de senales de banda de frecuencia para compensar al menos parcialmente un cambio de nivel aplicado a la representacion en el dominio del tiempo cambiada de nivel mediante el cambiador de nivel y para obtener una pluralidad de senales de banda de frecuencia sustancialmente compensadas.
- 15. Metodo para decodificar una representacion de senal de audio codificada y para proporcionar una representacion de senal de audio decodificada correspondiente, comprendiendo el metodo:510152025303540pre-procesar la representacion de senal de audio codificada para obtener una pluralidad de senales de banda de frecuencia;analizar la informacion adicional con respecto a una ganancia de las senales de banda de frecuencia en cuanto a si la informacion adicional sugiere un recorte potencial para determinar un factor de cambio de nivel actual para la representacion de senal de audio codificada, en el que cuando la informacion adicional sugiere el recorte potencial, el factor de cambio de nivel actual provoca que la informacion de la pluralidad de senales de banda de frecuencia se cambie hacia un bit menos significativo por lo que se gana un espacio en al menos un bit mas significativo;cambiar los niveles de las senales de banda de frecuencia de acuerdo con el factor de cambio de nivel para obtener las senales de banda de frecuencia cambiadas de nivel;realizar una conversion del dominio de la frecuencia al dominio del tiempo de las senales de banda de frecuencia a una representacion en el dominio del tiempo; yactuar sobre la representacion en el dominio del tiempo para compensar al menos parcialmente un cambio de nivel aplicado a las senales de banda de frecuencia cambiadas de nivel y para obtener una representacion en el dominio del tiempo sustancialmente compensada.
- 16. Metodo de codificacion de senal de audio para proporcionar una representacion de senal de audio codificada basandose en una representacion en el dominio del tiempo de una senal de audio de entrada, comprendiendo el metodo:analizar la representacion del dominio del tiempo de la senal de audio de entrada en cuanto a si se sugiere recorte potencial para determinar un factor de cambio de nivel actual para la representacion de senal de entrada, en el que cuando se sugiere el recorte potencial, el factor de cambio de nivel actual provoca que la representacion en el dominio del tiempo de la senal de audio de entrada se cambie hacia un bit menos significativo por lo que se gana un espacio en al menos un bit mas significativo;cambiar un nivel de la representacion en el domino del tiempo de la senal de audio de entrada de acuerdo con el factor de cambio de nivel actual para obtener una representacion en el dominio de tiempo cambiada de nivel;convertir la representacion en el dominio del tiempo cambiada de nivel en una pluralidad de senales de banda de frecuencia; yactuar sobre la pluralidad de senales de banda de frecuencia para compensar al menos parcialmente un cambio de nivel aplicado a la representacion en el dominio del tiempo cambiada de nivel mediante el cambio y para obtener una pluralidad de senales de banda de frecuencia sustancialmente compensadas.
- 17. Programa informatico adaptado para ordenar a una computadora para que realice el metodo de la reivindicacion 15 o 16.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP13151910.0A EP2757558A1 (en) | 2013-01-18 | 2013-01-18 | Time domain level adjustment for audio signal decoding or encoding |
EP13151910 | 2013-01-18 | ||
PCT/EP2014/050171 WO2014111290A1 (en) | 2013-01-18 | 2014-01-07 | Time domain level adjustment for audio signal decoding or encoding |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2604983T3 true ES2604983T3 (es) | 2017-03-10 |
Family
ID=47603376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES14702195.0T Active ES2604983T3 (es) | 2013-01-18 | 2014-01-07 | Ajuste de nivel en el dominio del tiempo para decodificación o codificación de señales de audio |
Country Status (11)
Country | Link |
---|---|
US (1) | US9830915B2 (es) |
EP (2) | EP2757558A1 (es) |
JP (1) | JP6184519B2 (es) |
KR (2) | KR20150106929A (es) |
CN (1) | CN105210149B (es) |
BR (1) | BR112015017293B1 (es) |
CA (1) | CA2898005C (es) |
ES (1) | ES2604983T3 (es) |
MX (1) | MX346358B (es) |
RU (1) | RU2608878C1 (es) |
WO (1) | WO2014111290A1 (es) |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2581810C (en) | 2004-10-26 | 2013-12-17 | Dolby Laboratories Licensing Corporation | Calculating and adjusting the perceived loudness and/or the perceived spectral balance of an audio signal |
TWI529703B (zh) | 2010-02-11 | 2016-04-11 | 杜比實驗室特許公司 | 用以非破壞地正常化可攜式裝置中音訊訊號響度之系統及方法 |
CN103325380B (zh) | 2012-03-23 | 2017-09-12 | 杜比实验室特许公司 | 用于信号增强的增益后处理 |
US10844689B1 (en) | 2019-12-19 | 2020-11-24 | Saudi Arabian Oil Company | Downhole ultrasonic actuator system for mitigating lost circulation |
CN104303229B (zh) | 2012-05-18 | 2017-09-12 | 杜比实验室特许公司 | 用于维持与参数音频编码器相关联的可逆动态范围控制信息的系统 |
EP2757558A1 (en) * | 2013-01-18 | 2014-07-23 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Time domain level adjustment for audio signal decoding or encoding |
TR201802631T4 (tr) | 2013-01-21 | 2018-03-21 | Dolby Laboratories Licensing Corp | Program Ses Şiddeti ve Sınır Meta Verilere Sahip Sesli Enkoder ve Dekoder |
KR102071860B1 (ko) | 2013-01-21 | 2020-01-31 | 돌비 레버러토리즈 라이쎈싱 코오포레이션 | 상이한 재생 디바이스들에 걸친 라우드니스 및 동적 범위의 최적화 |
CN116665683A (zh) | 2013-02-21 | 2023-08-29 | 杜比国际公司 | 用于参数化多声道编码的方法 |
CN104080024B (zh) | 2013-03-26 | 2019-02-19 | 杜比实验室特许公司 | 音量校平器控制器和控制方法以及音频分类器 |
CN110083714B (zh) | 2013-04-05 | 2024-02-13 | 杜比实验室特许公司 | 用于自动文件检测的对来自基于文件的媒体的特有信息的获取、恢复和匹配 |
TWM487509U (zh) | 2013-06-19 | 2014-10-01 | 杜比實驗室特許公司 | 音訊處理設備及電子裝置 |
CN104301064B (zh) | 2013-07-16 | 2018-05-04 | 华为技术有限公司 | 处理丢失帧的方法和解码器 |
US10095468B2 (en) | 2013-09-12 | 2018-10-09 | Dolby Laboratories Licensing Corporation | Dynamic range control for a wide variety of playback environments |
CN105531759B (zh) | 2013-09-12 | 2019-11-26 | 杜比实验室特许公司 | 用于下混合音频内容的响度调整 |
CN105580277B (zh) * | 2013-11-27 | 2019-08-09 | 密克罗奇普技术公司 | 主时钟高精度振荡器 |
CN110808723B (zh) | 2014-05-26 | 2024-09-17 | 杜比实验室特许公司 | 音频信号响度控制 |
CN106683681B (zh) | 2014-06-25 | 2020-09-25 | 华为技术有限公司 | 处理丢失帧的方法和装置 |
CN112185401B (zh) | 2014-10-10 | 2024-07-02 | 杜比实验室特许公司 | 基于发送无关的表示的节目响度 |
EP3258467B1 (en) * | 2015-02-10 | 2019-09-18 | Sony Corporation | Transmission and reception of audio streams |
CN104795072A (zh) * | 2015-03-25 | 2015-07-22 | 无锡天脉聚源传媒科技有限公司 | 一种音频数据的编码方法及装置 |
CN105662706B (zh) * | 2016-01-07 | 2018-06-05 | 深圳大学 | 增强时域表达的人工耳蜗信号处理方法及系统 |
CN109328382B (zh) * | 2016-06-22 | 2023-06-16 | 杜比国际公司 | 用于将数字音频信号从第一频域变换到第二频域的音频解码器及方法 |
KR102709737B1 (ko) * | 2016-11-30 | 2024-09-26 | 삼성전자주식회사 | 오디오 신호를 전송하는 전자 장치 및 오디오 신호를 전송하는 전자 장치의 제어 방법 |
KR102565447B1 (ko) * | 2017-07-26 | 2023-08-08 | 삼성전자주식회사 | 청각 인지 속성에 기반하여 디지털 오디오 신호의 이득을 조정하는 전자 장치 및 방법 |
US11120363B2 (en) | 2017-10-19 | 2021-09-14 | Adobe Inc. | Latency mitigation for encoding data |
US11086843B2 (en) | 2017-10-19 | 2021-08-10 | Adobe Inc. | Embedding codebooks for resource optimization |
US10942914B2 (en) * | 2017-10-19 | 2021-03-09 | Adobe Inc. | Latency optimization for digital asset compression |
EP3483879A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Analysis/synthesis windowing function for modulated lapped transformation |
EP3483886A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Selecting pitch lag |
WO2019091576A1 (en) * | 2017-11-10 | 2019-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits |
EP3483884A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Signal filtering |
EP3483882A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Controlling bandwidth in encoders and/or decoders |
EP3483878A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio decoder supporting a set of different loss concealment tools |
US10331400B1 (en) * | 2018-02-22 | 2019-06-25 | Cirrus Logic, Inc. | Methods and apparatus for soft clipping |
CN109286922B (zh) * | 2018-09-27 | 2021-09-17 | 珠海市杰理科技股份有限公司 | 蓝牙提示音处理方法、系统、可读存储介质和蓝牙设备 |
CN113366865B (zh) * | 2019-02-13 | 2023-03-21 | 杜比实验室特许公司 | 用于音频对象聚类的自适应响度规范化 |
US11322127B2 (en) * | 2019-07-17 | 2022-05-03 | Silencer Devices, LLC. | Noise cancellation with improved frequency resolution |
CN111342937B (zh) * | 2020-03-17 | 2022-05-06 | 北京百瑞互联技术有限公司 | 一种动态调整编解码处理器电压和/或频率的方法和装置 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2311919B (en) | 1994-12-15 | 1999-04-28 | British Telecomm | Speech processing |
US6280309B1 (en) | 1995-10-19 | 2001-08-28 | Norton Company | Accessories and attachments for angle grinder |
US5796842A (en) * | 1996-06-07 | 1998-08-18 | That Corporation | BTSC encoder |
US6289309B1 (en) * | 1998-12-16 | 2001-09-11 | Sarnoff Corporation | Noise spectrum tracking for speech enhancement |
JP3681105B2 (ja) * | 2000-02-24 | 2005-08-10 | アルパイン株式会社 | データ処理方式 |
ES2269112T3 (es) * | 2000-02-29 | 2007-04-01 | Qualcomm Incorporated | Codificador de voz multimodal en bucle cerrado de dominio mixto. |
US6651040B1 (en) * | 2000-05-31 | 2003-11-18 | International Business Machines Corporation | Method for dynamic adjustment of audio input gain in a speech system |
CA2359771A1 (en) * | 2001-10-22 | 2003-04-22 | Dspfactory Ltd. | Low-resource real-time audio synthesis system and method |
JP2003280691A (ja) * | 2002-03-19 | 2003-10-02 | Sanyo Electric Co Ltd | 音声処理方法および音声処理装置 |
US20050004793A1 (en) * | 2003-07-03 | 2005-01-06 | Pasi Ojala | Signal adaptation for higher band coding in a codec utilizing band split coding |
DE10345995B4 (de) | 2003-10-02 | 2005-07-07 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung und Verfahren zum Verarbeiten eines Signals mit einer Sequenz von diskreten Werten |
US7751572B2 (en) * | 2005-04-15 | 2010-07-06 | Dolby International Ab | Adaptive residual audio coding |
US8396717B2 (en) * | 2005-09-30 | 2013-03-12 | Panasonic Corporation | Speech encoding apparatus and speech encoding method |
DE102006022346B4 (de) * | 2006-05-12 | 2008-02-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Informationssignalcodierung |
CA2645915C (en) * | 2007-02-14 | 2012-10-23 | Lg Electronics Inc. | Methods and apparatuses for encoding and decoding object-based audio signals |
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 |
US8126578B2 (en) * | 2007-09-26 | 2012-02-28 | University Of Washington | Clipped-waveform repair in acoustic signals using generalized linear prediction |
CN101897118A (zh) * | 2007-12-11 | 2010-11-24 | Nxp股份有限公司 | 防止音频信号限幅 |
CN101350199A (zh) * | 2008-07-29 | 2009-01-21 | 北京中星微电子有限公司 | 音频编码器及音频编码方法 |
ES2963744T3 (es) * | 2008-10-29 | 2024-04-01 | Dolby Int Ab | Protección de recorte de señal usando metadatos de ganancia de audio preexistentes |
US8346547B1 (en) * | 2009-05-18 | 2013-01-01 | Marvell International Ltd. | Encoder quantization architecture for advanced audio coding |
CN103250206B (zh) * | 2010-10-07 | 2015-07-15 | 弗朗霍夫应用科学研究促进协会 | 用于比特流域中的编码音频帧的强度估计的装置及方法 |
EP2727383B1 (en) * | 2011-07-01 | 2021-04-28 | Dolby Laboratories Licensing Corporation | System and method for adaptive audio signal generation, coding and rendering |
IN2014KN01222A (es) * | 2011-12-15 | 2015-10-16 | Fraunhofer Ges Forschung | |
EP2757558A1 (en) * | 2013-01-18 | 2014-07-23 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Time domain level adjustment for audio signal decoding or encoding |
-
2013
- 2013-01-18 EP EP13151910.0A patent/EP2757558A1/en not_active Withdrawn
-
2014
- 2014-01-07 KR KR1020157021762A patent/KR20150106929A/ko active Application Filing
- 2014-01-07 WO PCT/EP2014/050171 patent/WO2014111290A1/en active Application Filing
- 2014-01-07 RU RU2015134587A patent/RU2608878C1/ru active
- 2014-01-07 EP EP14702195.0A patent/EP2946384B1/en active Active
- 2014-01-07 ES ES14702195.0T patent/ES2604983T3/es active Active
- 2014-01-07 JP JP2015553045A patent/JP6184519B2/ja active Active
- 2014-01-07 CN CN201480016606.2A patent/CN105210149B/zh active Active
- 2014-01-07 MX MX2015009171A patent/MX346358B/es active IP Right Grant
- 2014-01-07 CA CA2898005A patent/CA2898005C/en active Active
- 2014-01-07 KR KR1020177024874A patent/KR101953648B1/ko active IP Right Grant
- 2014-01-07 BR BR112015017293-8A patent/BR112015017293B1/pt active IP Right Grant
-
2015
- 2015-07-09 US US14/795,063 patent/US9830915B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
BR112015017293A2 (pt) | 2018-05-15 |
BR112015017293B1 (pt) | 2021-12-21 |
MX346358B (es) | 2017-03-15 |
KR20170104661A (ko) | 2017-09-15 |
EP2946384A1 (en) | 2015-11-25 |
WO2014111290A1 (en) | 2014-07-24 |
CA2898005C (en) | 2018-08-14 |
CN105210149B (zh) | 2019-08-30 |
JP2016505168A (ja) | 2016-02-18 |
US20160019898A1 (en) | 2016-01-21 |
EP2757558A1 (en) | 2014-07-23 |
MX2015009171A (es) | 2015-11-09 |
US9830915B2 (en) | 2017-11-28 |
EP2946384B1 (en) | 2016-11-02 |
JP6184519B2 (ja) | 2017-08-23 |
RU2608878C1 (ru) | 2017-01-25 |
KR20150106929A (ko) | 2015-09-22 |
CN105210149A (zh) | 2015-12-30 |
CA2898005A1 (en) | 2014-07-24 |
KR101953648B1 (ko) | 2019-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2604983T3 (es) | Ajuste de nivel en el dominio del tiempo para decodificación o codificación de señales de audio | |
US11107483B2 (en) | Audio encoder for encoding a multichannel signal and audio decoder for decoding an encoded audio signal | |
RU2696292C2 (ru) | Аудиокодер и декодер | |
US9812136B2 (en) | Audio processing system | |
JP5096468B2 (ja) | サイド情報なしの時間的ノイズエンベロープの自由な整形 | |
US20100292994A1 (en) | method and an apparatus for processing an audio signal | |
JP5752134B2 (ja) | 最適化された低スループットパラメトリック符号化/復号化 | |
JP6368029B2 (ja) | 雑音信号処理方法、雑音信号生成方法、符号化器、復号化器、並びに符号化および復号化システム | |
EP2981961B1 (en) | Advanced quantizer | |
TW201923747A (zh) | 控制編碼器及/或解碼器中頻寬之技術 |