ES2294685T3 - Procedimiento y dispositivo para cuantificar una señal de informacion. - Google Patents

Procedimiento y dispositivo para cuantificar una señal de informacion. Download PDF

Info

Publication number
ES2294685T3
ES2294685T3 ES05715289T ES05715289T ES2294685T3 ES 2294685 T3 ES2294685 T3 ES 2294685T3 ES 05715289 T ES05715289 T ES 05715289T ES 05715289 T ES05715289 T ES 05715289T ES 2294685 T3 ES2294685 T3 ES 2294685T3
Authority
ES
Spain
Prior art keywords
audio
values
value
threshold
block
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.)
Expired - Lifetime
Application number
ES05715289T
Other languages
English (en)
Inventor
Gerald Schuller
Stefan Wabnik
Jens Hirschfeld
Wolfgang Fiesel
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fraunhofer Gesellschaft zur Foerderung der Angewandten Forschung eV
Original Assignee
Fraunhofer Gesellschaft zur Foerderung der Angewandten Forschung eV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fraunhofer Gesellschaft zur Foerderung der Angewandten Forschung eV filed Critical Fraunhofer Gesellschaft zur Foerderung der Angewandten Forschung eV
Application granted granted Critical
Publication of ES2294685T3 publication Critical patent/ES2294685T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/26Pre-filtering or post-filtering
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/26Pre-filtering or post-filtering
    • G10L19/265Pre-filtering, e.g. high frequency emphasis prior to encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Radar Systems Or Details Thereof (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Image Processing (AREA)

Abstract

Dispositivo para cuantificar una señal de información de una secuencia de valores de información, siendo la señal de información una señal de audio y siendo los valores de información valores de audio, con las siguientes características: un medio (20) para determinar un primer umbral de escucha para un bloque de valores de audio de una secuencia de valores de audio; un medio (24) para calcular una versión de una parametrización de un filtro parametrizable, de manera que su función de transmisión corresponde aproximadamente a la inversa de la magnitud del primer umbral de escucha; un medio (30) para filtrar de manera selectiva en frecuencia la secuencia de valores de audio, para obtener una secuencia de valores de audio filtrados; un medio (28) para cuantificar los valores de audio filtrados, para obtener una secuencia de valores de audio cuantificados, por medio de una función escalonada de cuantificación, que representa los valores de audio filtrados con respecto a los valores de audio cuantificados, y cuya evolución por debajo de un valor de información umbral es más inclinada que por encima del valor de información umbral; presentando el medio (30) para filtrar de manera selectiva en frecuencia el siguiente medio: un medio para filtrar un bloque predeterminado de valores de audio de la secuencia de valores de audio con el filtro parametrizable utilizando una parametrización predeterminada, que de una manera predeterminada depende de la versión de la parametrización, para obtener un bloque de los valores de audio filtrados.

Description

Procedimiento y dispositivo para cuantificar una señal de información.
La presente invención se refiere en general a cuantificadores o a la cuantificación de señales de información y, en ejemplos de realización, a la cuantificación de señales de audio, tal como se utiliza por ejemplo para la compresión de datos de señales de audio o para la codificación de audio. En un ejemplo de realización especial, la presente invención se refiere a una codificación de audio con un tiempo de retardo corto.
El procedimiento de compresión de audio más conocido en la actualidad es el MPEG-1 Layer III. En este procedimiento de compresión los valores de de muestreo o audio de una señal de audio se codifican con pérdida en una señal codificada. En otras palabras, en la compresión la irrelevancia y redundancia de la señal de audio original se reduce o, en el caso ideal, se suprime. Para conseguir esto, mediante un modelo psicoacústico se detectan enmascaramientos simultáneos y temporales, es decir se calcula o determina un umbral de enmascaramiento que cambia en el tiempo y que depende de la señal de audio, que indica, a partir de qué volumen los tonos de una frecuencia determinada empiezan a ser perceptibles para el oído humano. Esta información se utiliza a su vez para la codificación de la señal, cuantificando los valores espectrales de la señal de audio en función del umbral de enmascaramiento de una manera más exacta, menos exacta o no cuantificándolos e integrándolos en la señal codificada.
Los procedimientos de compresión de audio, como el formato MP3, experimentan entonces un límite en su aplicabilidad, cuando se trata de transmitir datos de audio a través de un canal de transmisión con limitación de tasa de bits por un lado comprimidos, por otro lado sin embargo con un tiempo de retardo lo más reducido posible. En algunas aplicaciones, el tiempo de retardo no es importante, como por ejemplo en el archivado de información de audio. Los codificadores de audio con un retardo bajo, denominados a veces también "Codificadores de retardo ultra bajo" (Ultra Low Delay Coder), son sin embargo necesarios cuando se trata de transmisiones de señales de audio críticas en cuanto al tiempo, como por ejemplo durante una teleconferencia, en micrófonos o altavoces inalámbricos. Para estos campos de aplicación, en el artículo de Schuller G. etc. "Perceptual Audio Coding using Adaptive Pre- and Post-Filters and Lossless Compression", IEEE Transactions on Speech and Audio Processing, vol. 10, nº 6, septiembre de 2002, págs. 379 - 390, se propone una codificación de audio, en la que la reducción de irrelevancia y la reducción de redundancia no se realizan basándose en una única transformación, sino en dos transformaciones separadas.
El principio se explica a continuación haciendo referencia a las figuras 12 y 13. La codificación parte de una señal 902 de audio, que ya se ha muestreado y por eso ya existe como una secuencia 904 de valores 906 de audio o de muestreo, indicándose mediante una flecha 908 el orden temporal de los valores 906 de audio. Para bloques sucesivos de valores 906 de audio, que están identificados con una numeración creciente con "nº de bloque", se calcula un umbral de escucha por medio de un modelo psicoacústico. La figura 13 muestra por ejemplo un diagrama, en el que por la frecuencia f con la curva a se ha dibujado el espectro de un bloque de señales de 128 valores 906 de audio y en b, el umbral de enmascaramiento, tal como se ha calculado mediante un modelo psicoacústico, en unidades logarítmicas. El umbral de enmascaramiento muestra, tal como ya se mencionó, hasta qué intensidad las frecuencias son inaudibles para el oído humano, concretamente todos los tonos por debajo del umbral b de enmascaramiento. Basándose en los umbrales de enmascaramiento calculados para cada bloque, ahora se consigue una reducción de irrelevancia mediante el control de un filtro parametrizable seguido de un cuantificador. Para un filtro parametrizable se calcula una parametrización de tal manera, que la respuesta de frecuencia de la misma corresponde a la inversa de la magnitud del umbral de enmascaramiento. Esta parametrización está indicada en la figura 12 mediante x#(i).
Tras filtrar los valores 906 de audio se produce una cuantificación con un incremento constante, por ejemplo una operación de redondeo al siguiente número entero. El ruido de cuantificación causado de este modo es ruido blanco. En el lado del descodificador la señal filtrada "se transforma inversamente" de nuevo con un filtro parametrizable, cuya función de transmisión se ajusta hasta la magnitud del propio umbral de enmascaramiento. De este modo no sólo vuelve a descodificarse la señal filtrada sino que también se adapta el ruido de cuantificación en el lado del descodificador a la forma del umbral de enmascaramiento. Para que el ruido de cuantificación corresponda de una manera lo más exacta posible al umbral de enmascaramiento, en el lado del codificador, para cada conjunto de parámetros o para cada parametrización se calcula además un valor a_{#} de amplificación, que se aplica antes de la cuantificación sobre la señal filtrada. Para que en el lado del descodificador pueda realizarse la transformación inversa, el valor a de amplificación y la parametrización x se transmiten al codificador como información 910 secundaria junto con los datos principales reales, concretamente los valores 912 de audio filtrados, cuantificados. Para la reducción 914 de redundancia estos datos, es decir información 910 secundaria y datos 912 principales, se someten además a una compresión sin pérdida, concretamente a una codificación de entropía, mediante lo que se obtiene la señal
codificada.
El artículo anterior propone como tamaño de bloque un tamaño de 128 valores 906 de muestreo. De este modo se permite un retardo relativamente corto de 8 ms a 32 kHz de tasa de muestreo. Con respecto a la implementación detallada, en el artículo se describe además que, para aumentar la eficacia de la codificación de información secundaria, la información secundaria, concretamente los coeficientes x_{#} y a_{#} sólo se transmiten cuando existe una variación suficiente en comparación con un conjunto de parámetros transmitido anteriormente, es decir, cuando la variación sobrepasa un valor umbral determinado. Además se describe, que la implementación se lleva a cabo preferiblemente de tal manera, que un conjunto de parámetros actual no se aplica directamente a todos los valores de muestreo pertenecientes al bloque correspondiente, sino que se utiliza una interpolación lineal de los coeficientes x_{#} de filtrado, para evitar artefactos audibles. Para realizar la interpolación lineal de los coeficientes de filtrado, se propone una estructura reticular para el filtro, para evitar la aparición de inestabilidades. Para el caso en el que se desee una señal codificada con una tasa de bits controlada, el artículo propone además, multiplicar o atenuar selectivamente la señal filtrada y ajustada a escala con el factor a de amplificación dependiente del tiempo además por un factor diferente de 1, de manera que si bien se producen interferencias audibles, sin embargo puede reducirse la tasa de bits en puntos complejos de codificar de la señal de audio.
Aunque el esquema de codificación de audio descrito en el artículo citado anteriormente ya reduce suficientemente el tiempo de retardo para muchas aplicaciones, en el esquema anterior existe un problema que consiste en que, debido a la necesidad de tener que transmitir el umbral de enmascaramiento o la función de transmisión del filtro en el lado del codificador, a continuación denominado prefiltro, el canal de transmisión se carga de una manera relativamente elevada, a pesar de que los coeficientes de filtrado sólo se transmiten al sobrepasarse un umbral predeterminado.
Otra desventaja del esquema de codificación anterior es que, debido al hecho de que el umbral de enmascaramiento o la inversa del mismo deben ponerse a disposición en el lado del descodificador mediante el conjunto x_{#} de parámetros que va a transmitirse, debe establecerse un compromiso entre, por un lado, una tasa de bits lo más baja posible o una relación de compresión alta y, por otro lado, una aproximación o parametrización lo más exacta posible del umbral de enmascaramiento o la inversa del mismo. Por tanto es inevitable que, mediante el esquema de codificación de audio anterior, el ruido de cuantificación adaptado al umbral de enmascaramiento sobrepase en algunos intervalos de frecuencia el umbral de enmascaramiento y por ello lleve a interferencias de audio audibles para el oyente. La figura 13 muestra por ejemplo con la curva c la respuesta de frecuencia parametrizada del filtro parametrizable en el lado del descodificador. Tal como puede observarse, hay zonas en las que la función de transmisión del filtro en el lado del descodificador, a continuación también denominado postfiltro, sobrepasa el umbral b de enmascaramiento. El problema aumenta ahora porque la parametrización sólo se transmite de manera intermitente en caso de una variación suficiente entre las parametrizaciones y se interpola entremedias., Una interpolación de los coeficientes x# de filtrado solamente, tal como se propone en el artículo, manteniendo el valor a_{#} de amplificación constante de nodo a nodo o de parametrización nueva a parametrización nueva lleva a interferencias audibles. Incluso si la interpolación propuesta en el artículo también se aplica al valor a# de información secundaria, es decir los valores de amplificación transmitidos, en la señal de audio entrante en el lado del descodificador pueden quedar artefactos de audio audibles. Otro problema en el esquema de codificación de audio según la figura 12 ó 13 consiste en que la señal filtrada, debido al filtrado selectivo en frecuencia, puede adoptar una forma no predecible, en la que especialmente debido a una superposición casual de muchas ondas armónicas individuales, un valor de audio individual o valores de audio individuales de la señal codificada se suman para dar valores muy altos, que a su vez en la reducción de redundancia posterior, debido a su aparición poco frecuente, llevan a una peor relación de compresión.
El objetivo de la presente invención consiste en crear un procedimiento y dispositivo para cuantificar una señal de información, de manera que con un empeoramiento de la calidad sólo mínima de la señal de información original puede realizarse una compresión de datos superior de la señal de información.
Este objetivo se soluciona mediante un procedimiento según la reivindicación 9 y un dispositivo según la reivindicación 1.
Una cuantificación según la invención de una señal de información de una secuencia de valores de información comprende filtrar de manera selectiva en frecuencia la secuencia de valores de información, para obtener una secuencia de valores de información filtrados, así como cuantificar los valores de información filtrados, para obtener una secuencia de valores de información cuantificados, por medio de una función escalonada de cuantificación, que representa los valores de información filtrados con respecto a los valores de información cuantificados, y cuya evolución por debajo de un valor de información umbral es más inclinada que por encima del valor de información umbral.
Se ha observado que, mediante el filtrado selectivo en frecuencia de una señal de audio, en la señal de información filtrada resultante se producen artefactos generados artificialmente, en los que valores de información individuales, debido a una interferencia constructiva casual de todas o muchas ondas armónicas, adoptan valores que son significativamente superiores a los valores máximos de la señal original, como por ejemplo más de dos veces superiores. Por tanto, la idea principal de la presente invención es que un corte de la señal de información filtrada por encima de un umbral adecuado, que por ejemplo asciende a dos veces el mayor valor posible de la señal de información original que va a filtrarse, de manera que los artefactos generados artificialmente mediante el filtrado selectivo en frecuencia se igualan o eliminan de la señal de información filtrada, tras el filtrado inverso prácticamente no lleva a un perjuicio de la calidad de la señal de información filtrada inversamente tras la cuantificación, mientras que por el contrario, el corte o el aumento del incremento de cuantificación por encima de un umbral adecuado ofrece ahorros enormes en una representación de bits de la señal de información filtrada.
Según un ejemplo de realización preferido, la señal de información es una señal de audio, en la que la cuantificación selectiva por encima o por debajo de un umbral determinado lleva a una disminución de la calidad de audio prácticamente inaudible con simultáneamente una reducción enorme de la representación de bits.
Para ello, la función escalonada de cuantificación puede estar prevista alternativamente, para cuantificar por encima del valor umbral todos los valores de audio en un escalón de cuantificación más alto, o bien se utiliza una función escalonada de cuantificación que transcurre más plana por encima del valor umbral o que por encima del valor umbral presenta un incremento de cuantificación superior, de manera que los artefactos generados artificialmente pueden cuantificarse de una manera más aproximada.
Ejemplos de realización preferidos de la presente invención se explican con más detalle a continuación haciendo referencia a los dibujos adjuntos. Muestran:
la figura 1, un diagrama de bloques de un codificador de audio según un ejemplo de realización de la presente invención;
la figura 2, un diagrama de flujo para ilustrar el funcionamiento del codificador de audio de la figura 1 en la entrada de datos;
la figura 3, un diagrama de flujo para ilustrar el funcionamiento del codificador de audio de la figura 1 con respecto a la evaluación de la señal de audio entrante mediante un modelo psicoacústico;
la figura 4, un diagrama de flujo para ilustrar el funcionamiento del codificador de audio de la figura 1 con respecto a la aplicación de los parámetros obtenidos mediante el modelo psicoacústico a la señal de audio entrante;
la figura 5a, un diagrama esquemático para ilustrar la señal de audio entrante, la secuencia de valores de audio, de los que se compone la misma, y las etapas de funcionamiento de la figura 4 en relación con los valores de audio;
la figura 5b, un diagrama esquemático para ilustrar la estructura de la señal codificada;
la figura 6, un diagrama de flujo para ilustrar el funcionamiento del codificador de audio de la figura 1 con respecto al procesamiento final hasta la señal codificada;
la figura 7a, un diagrama en el que se muestra un ejemplo de realización para una función escalonada de cuantificación;
la figura 7b, un diagrama en el que se muestra un ejemplo de realización adicional para una función escalonada de cuantificación;
la figura 8, un diagrama de bloques de un descodificador de audio, que puede descodificar una señal de audio codificada mediante el codificador de audio de la figura 1, según un ejemplo de realización de la presente invención;
la figura 9, un diagrama de flujo para ilustrar el funcionamiento del descodificador de la figura 8 en la entrada de datos;
la figura 10, un diagrama de flujo para ilustrar el funcionamiento del descodificador de la figura 8 con respecto al almacenamiento intermedio de los datos de audio filtrados, cuantificados, predescodificados, y el procesamiento de los bloques de audio sin información secundaria correspondiente;
la figura 11, un diagrama de flujo para ilustrar el funcionamiento del descodificador de la figura 8 con respecto al filtrado inverso real;
la figura 12, un diagrama esquemático para ilustrar un esquema de codificación de audio convencional con un tiempo de retardo corto; y
la figura 13, un diagrama, en el que a modo de ejemplo se muestra un espectro de una señal de audio, un umbral de escucha de la misma y la función de transmisión del postfiltro en el descodificador.
La figura 1 muestra un codificador de audio según un ejemplo de realización de la presente invención. El codificador de audio, que en general está indicado con 10, comprende en primer lugar una entrada 12 de datos, en la que éste recibe la señal de audio que va a codificarse, que, como posteriormente se explicará con detalle con referencia a la figura 5a, se compone de una secuencia de valores de audio o valores de muestreo, así como una salida de datos, en la que se proporciona la señal codificada, cuyo contenido de información se explicará con más detalle con referencia a la figura 5b.
El codificador 10 de audio de la figura 1 se divide en una parte 16 de reducción de irrelevancia y una parte 18 de reducción de redundancia. La parte 16 de reducción de irrelevancia comprende un medio 20 para determinar un umbral de escucha, un medio 22 para calcular un valor de amplificación, un medio 24 para calcular una parametrización, un medio 26 de comparación de nodos, un cuantificador 28 y un prefiltro 30 parametrizable así como una memoria 32 intermedia FIFO (first-in-first-out) de entrada, una memoria intermedia o memoria 38 y un multiplicador o un medio 40 de multiplicación. La parte 18 de reducción de redundancia comprende un compresor 34 y un control 36 de la tasa de bits.
La parte 16 de reducción de irrelevancia y la parte 18 de reducción de redundancia están conectadas en serie en este orden entre la entrada 12 de datos y la salida 14 de datos. Especialmente, la entrada 12 de datos está unida con una entrada de datos del medio 20 para determinar un umbral de escucha y con una entrada de datos de la memoria 32 intermedia de entrada. Una salida de datos del medio 20 para determinar un umbral de escucha está unida con una entrada del medio 24 para calcular una parametrización así como con una entrada de datos del medio 22 para calcular un valor de amplificación, para transmitir a los mismos un umbral de escucha determinado. Los medios 22 y 24 calculan basándose en el umbral de escucha una parametrización o un valor de amplificación y están unidos con el medio 26 de comparación de nodos, para transmitir al mismo estos resultados. El medio 26 de comparación de nodos transmite, según un resultado de comparación, tal como aún se explicará a continuación, los resultados calculados por los medios 22 y 24 como parámetro de entrada o parametrización al prefiltro 30 parametrizable. El prefiltro 30 parametrizable está conectado entre una salida de datos de la memoria 32 intermedia de entrada y una entrada de datos de la memoria 38 intermedia. Entre una salida de datos de la memoria 38 intermedia y el cuantificador 28 está conectado el multiplicador 40. El cuantificador 28 transmite a la parte 18 de reducción de redundancia valores de audio, dado el caso multiplicados o ajustados a escala, aunque en cualquier caso filtrados, cuantificados, y concretamente de manera exacta, a una entrada de datos del compresor 34. El medio 26 de comparación de nodos transmite a la parte 18 de reducción de redundancia información, a partir de la que pueden derivarse los parámetros de entrada transmitidos al prefiltro 30 parametrizable, y concretamente de manera exacta a una entrada de datos adicional del compresor 34. El control de la tasa de bits está unido mediante una unión de control con una entrada de control del multiplicador 40, para encargarse de que los valores de audio filtrados, cuantificados, tal como se obtienen del prefiltro 30, se multipliquen mediante el multiplicador 40 por un multiplicador adecuado, tal como se explicará aún con más detalle a continuación. El control 36 de la tasa de bits está conectado entre una salida de datos del compresor 34 y la salida 14 de datos del codificador 10 de audio, para determinar adecuadamente el multiplicador para el multiplicador 40. En la primera pasada de cada valor de audio por el cuantificador 40, el multiplicador está ajustado en primer lugar a un factor de escala adecuado, como por ejemplo 1. La memoria 38 intermedia almacena sin embargo además cada valor de audio filtrado, para dar al control 36 de la tasa de bits la posibilidad, tal como se describe a continuación, de cambiar el multiplicador para una pasada adicional de un bloque de valores de audio. En caso de no indicarse un cambio de este tipo mediante el control 36 de la tasa de bits, entonces la memoria 38 intermedia puede liberar la memoria ocupada por este bloque.
Después de haber descrito anteriormente la estructura del codificador de audio de la figura 1, a continuación se describirá su funcionamiento con referencia a las figuras 2 a 7b.
Tal como puede deducirse de la figura 2, la señal de audio, cuando alcanza la entrada 12 de datos, ya se ha obtenido mediante muestreo 50 de señales de audio a partir de una señal de audio analógica. El muestreo de señales de audio se realiza con una frecuencia de muestreo predeterminada, que habitualmente se encuentra entre 32 - 48 kHz. En consecuencia, en la entrada 12 de datos se encuentra una señal de audio, que se compone de una secuencia de valores de muestreo o de audio. Aunque, tal como resultará evidente a partir de la siguiente descripción, la codificación de la señal de audio no tiene lugar basándose en bloques, los valores de audio se agrupan en la entrada 12 de datos en primer lugar, en una etapa 52, en bloques de audio. La agrupación en bloques de audio se produce, tal como resulta evidente a partir de la siguiente descripción, únicamente con el fin de determinar el umbral de escucha y tiene lugar en una etapa de entrada del medio 20 para determinar un umbral de escucha. En el presente ejemplo de realización se parte, a modo de ejemplo, de que en cada caso 128 valores de audio sucesivos se agrupan en bloques de audio, y que la agrupación tiene lugar de tal manera que los bloques de audio sucesivos por un lado no se superponen y, por otro lado, son directamente adyacentes entre sí. Esto se explica de nuevo brevemente a modo de ejemplo mediante la figura 5a.
La figura 5a muestra con 54 la secuencia de valores de muestreo, estando ilustrado cada valor de muestreo mediante un rectángulo 56. Los valores de muestreo están numerados para la ilustración, estando mostrados a su vez sólo algunos de los valores de muestreo de la secuencia 54 por motivos de claridad. Tal como se muestra mediante corchetes por encima de la secuencia 54, según el presente ejemplo de realización en cada caso 128 valores de muestreo sucesivos están agrupados en un bloque, formando los 128 valores de muestreo directamente siguientes el siguiente bloque. Sólo por precaución se indica que la agrupación en bloques también podría realizarse de otra manera, por ejemplo mediante bloques que se superponen o bloques distanciados y bloques con otro tamaño de bloque, aunque de nuevo se prefiere el tamaño de bloque de 128, porque proporciona un buen compromiso entre por un lado una calidad de audio elevada y, por otro lado, un tiempo de retardo lo más bajo posible.
Mientras que los bloques de audio agrupados en la etapa 52 en el medio 20 se procesan por bloques en el medio 20 para determinar un umbral de escucha, en la memoria 32 intermedia de entrada los valores de audio entrantes se almacenan 54 de manera intermedia hasta que el prefiltro 30 parametrizable haya obtenido del medio 26 de comparación de nodos parámetros de entrada, para efectuar un prefiltrado, tal como aún se describirá a continuación.
Tal como se deduce de la figura 3, el medio 20 para determinar un umbral de escucha comienza su procesamiento directamente después de que hayan entrado suficientes valores de audio en la entrada 12 de datos, para formar un bloque de audio o formar el bloque de audio siguiente, lo que supervisa el medio 20 mediante una comprobación en la etapa 60. En caso de no existir aún un bloque de audio completo que pueda procesarse, entonces el medio 20 espera. En caso de existir un bloque de audio completo para procesarse, entonces el medio 20 para determinar un umbral de escucha calcula en una etapa 62, basándose en un modelo psicoacústico adecuado, en una etapa 62 un umbral de escucha. Para ilustrar el umbral de escucha de nuevo se hace referencia a la figura 12 y especialmente a la curva b, que se ha obtenido basándose en un modelo psicoacústico por ejemplo con referencia a un bloque de audio actual con un espectro a. El umbral de enmascaramiento, que se determina en la etapa 62, es una función dependiente de la frecuencia, que puede variar para bloques de audio sucesivos, y también puede variar claramente de una señal de audio a otra, como por ejemplo de composiciones de música rock a composiciones de música clásica. El umbral de escucha indica para cada frecuencia un valor umbral, por debajo del que el oído humano no puede percibir interferencias.
En una etapa 64 posterior, el medio 24 y el medio 22 calculan a partir del umbral M(f) de escucha calculado (indicando f la frecuencia) un valor a de amplificación o un conjunto de parámetros de N parámetros x(i) (i=1,...,N). La parametrización x(i), que calcula el medio 24 en la etapa 64, está prevista para el prefiltro 30 parametrizable, que por ejemplo se realiza en una estructura de filtro adaptativo, tal como se utiliza en la codificación LPC (LPC = linear predictive coding = codificación predictiva lineal). Sean por ejemplo s(n), con n= 0,... 127, los 128 valores de audio del bloqueo de audio en ese momento y s'(n) los 128 valores de audio filtrados que se obtienen, entonces el filtro se realiza por ejemplo de tal manera que se cumple la siguiente ecuación:
1
siendo K el orden de filtrado y a_{k}^{t}, con k = 1,..., K, los coeficientes de filtrado e ilustrando el índice t que los coeficientes de filtrado varían en bloques de audio sucesivos. El medio 24 calcula ahora la parametrización a_{k}^{t} de tal manera, que la función H(f) de transmisión del prefiltro 30 parametrizable es aproximadamente igual a la inversa de la magnitud del umbral M(f) de enmascaramiento, es decir de manera que es válido
20
ilustrando a su vez la dependencia de t que, para diferentes bloques de audio, el umbral M(f) de enmascaramiento varía. En la implementación del prefiltro 30 como el filtro adaptativo explicado anteriormente, los coeficientes a_{k}^{t} de filtrado se obtienen de la siguiente manera: la transformada de Fourier discreta inversa de |M(f, t)|^{2} con respecto a la frecuencia para el bloque en el instante t da lugar a la función de autocorrelación objetivo r_{mm}^{t}(i). Entonces se obtienen los a_{k}^{t} resolviéndose el sistema de ecuaciones lineal:
21
Sin embargo, para que en la interpolación lineal descrita aún con más detalle a continuación, entre las parametrizaciones no aparezcan inestabilidades, se utiliza preferiblemente para el filtro 30 una estructura reticular, reparametrizándose los coeficientes de filtrado para la estructura reticular en coeficientes de reflexión. Con respecto a detalles más exactos en relación a la configuración del prefiltro, el cálculo de los coeficientes y la reparametrización se hace referencia al artículo de Schuller, etc. mencionado en la introducción de la descripción y especialmente a la página 381, apartado III, que por la presente se incluye como referencia a este respecto.
Mientras que a continuación el medio 24 calcula una parametrización para el prefiltro 30 parametrizable de tal manera que su función de transmisión es igual a la inversa del umbral de enmascaramiento, el medio 22 calcula basándose en el umbral de escucha un límite de potencia de ruido, concretamente un límite que indica qué potencia de ruido puede introducir el cuantificador 28 en la señal de audio filtrada mediante el prefiltro 30, para que el ruido de cuantificación se encuentre, tras el filtrado inverso o postfiltrado en el lado del descodificador, por debajo del umbral M(f) de escucha o exactamente sobre el mismo. El medio 22 calcula este límite de potencia de ruido como el área por debajo del cuadrado de la magnitud del umbral M de escucha, es decir como \Sigma|M(f)|^{2}. El medio 22 calcula el valor a de amplificación a partir del límite de potencia de ruido, calculando la raíz a partir de la fracción de potencia de ruido de cuantificación entre límite de potencia de ruido. El ruido de cuantificación es el ruido provocado por el cuantificador 28. El ruido provocado por el cuantificador 28, tal como aún se describirá, es ruido blanco y por tanto dependiente de la frecuencia. La potencia de ruido de cuantificación es la potencia del ruido de cuantificación.
Tal como resultó evidente a partir de la descripción anterior, el medio 22 calcula, además del valor a de amplificación, también el límite de potencia de ruido. Aunque es posible que el medio 26 de comparación de nodos calcule de nuevo el límite de potencia de ruido a partir del valor a de amplificación obtenido por el medio 22, es además posible, que el medio 22, además del valor a de amplificación del medio 26 de comparación de nodos, transmita también simultáneamente el límite de potencia de ruido determinado.
Tras el cálculo del valor de amplificación así como de la parametrización, el medio 26 de comparación de nodos comprueba a continuación en una etapa 66, si la parametrización recién calculada se diferencia de la parametrización actual, transmitida por último al prefiltro parametrizable, en más de un umbral predeterminado. En caso de que la comprobación en la etapa 66 lleve a que la parametrización recién calculada se diferencia en más del umbral predeterminado de la actual, entonces en el medio 26 de comparación de nodos los coeficientes de filtrado recién calculados y el límite de potencia de ruido o el valor de amplificación recién calculado se almacenan de manera intermedia para una interpolación que aún se explicará y el medio 26 de comparación de nodos transmite en una etapa 68 los coeficientes de filtrado recién calculados y en una etapa 70 el valor de amplificación recién calculado al prefiltro 30. Sin embargo, si este no es el caso, y la parametrización recién calculada no se diferencia en más del umbral predeterminado de la actual, entonces el medio 26 de comparación de nodos transmite al prefiltro 30 en la etapa 72, en lugar de la parametrización recién calculada, sólo la parametrización de nodos actual, es decir aquella parametrización que la última vez llevó en la etapa 66 a un resultado positivo, por tanto, que se diferenció en más de un umbral predeterminado de una parametrización de nodos anterior. Tras las etapas 70 y 72 el proceso de la figura 3 vuelve al procesamiento del siguiente bloque de audio, es decir a la consulta 60.
En caso de que la parametrización recién calculada no se diferencie de la parametrización de nodos actual y por tanto, el prefiltro 30 en la etapa 72 vuelva a obtener la parametrización de nodos ya obtenida anteriormente para al menos el último bloque de audio, entonces el prefiltro 30 aplica esta parametrización de nodos a todos los valores de muestreo de este bloque de audio situado en la FIFO 32, tal como se describirá aún a continuación con más detalle, por lo que este bloque actual se toma de la FIFO 32 y el cuantificador 28 recibe un bloque de audio de valores de audio prefiltrados resultante.
La figura 4 representa el funcionamiento del prefiltro 30 parametrizable con más detalle para el caso en el que éste obtiene la parametrización recién calculada y el valor de amplificación recién calculado, porque los mismos se diferencian lo suficiente de la parametrización de nodos actual. Por tanto, tal como se ha descrito haciendo referencia a la figura 3, para cada uno de los bloques de audio sucesivos no se produce un procesamiento según la figura 4, sino sólo para bloques de audio, en los que la parametrización correspondiente se diferenció lo suficiente de la parametrización de nodos actual. Los otros bloques de audio, tal como acaba de describirse, se prefiltran aplicándose la parametrización de nodos actual en cada caso y el valor de amplificación actual en cada caso correspondiente a todos los valores de muestreo de estos bloques de audio. En una etapa 80 el prefiltro 30 parametrizable supervisa ahora si ha tenido lugar una transmisión de los coeficientes de filtrado recién calculados del medio 26 de comparación de nodos o de parametrizaciones de nodos anteriores. El prefiltro 30 realiza la supervisión 80 hasta que haya tenido lugar una transmisión de este tipo.
Una vez que ha tenido lugar una transmisión de este tipo, el prefiltro 30 comienza con el procesamiento del bloque de audio actual de valores de audio, que ahora se encuentra en la memoria 32 intermedia, es decir aquél para el que acaba de calcularse la parametrización. En la figura 5a se ha ilustrado por ejemplo que todos los valores 56 de audio ya se han procesado antes del valor de audio con el número 0 y por ello, ya han pasado por la memoria 32. El procesamiento del bloque de valores de audio antes del valor de audio con el número 0 se activó en aquel momento, porque la parametrización, que se había calculado para el bloque de audio antes del bloque 0, concretamente x_{0}(i), se diferenció en más del umbral predeterminado de la parametrización de nodos transmitida anteriormente al prefiltro 30. La parametrización x_{0}(i) es por tanto una parametrización de nodos, tal como se denomina en la presente invención. El procesamiento de los valores de audio en el bloque de audio antes del valor de audio 0 se realizó basándose en el conjunto a_{0}, x_{0}(i) de parámetros.
En la figura 5a se parte de que la parametrización, que se ha calculado para el bloque 0 con los valores de audio 0-127, se diferenció en menos del umbral predeterminado de la parametrización x_{0}(i), que se refería al bloque anterior. Por tanto, este bloque 0 también se tomó ya por el prefiltro 30 de la FIFO 3, se procesó de la misma manera con respecto a todos sus valores de muestreo 0-127 por medio de la parametrización x_{0}(i) añadida en la etapa 72, como se indica mediante la flecha 81 descrita con "aplicación directa" y luego se transmitió al cuantificador 28.
La parametrización calculada para el bloque 1 que todavía se encuentra en la FIFO 32 se diferenció sin embargo, según el ejemplo ilustrativo de la figura 5a, en cambio en más del umbral predeterminado de la parametrización x_{0}(i) y por tanto se transmitió al prefiltro 30 en la etapa 68 como parametrización x_{1}(i) junto con el valor a_{1} de amplificación (etapa 70) y, dado el caso, el límite de potencia de ruido correspondiente, debiendo ser los índices de a y x en la figura 5a un índice para los nodos, tal como se utilizan en la interpolación que posteriormente se explicará, que se realiza con respecto a los valores de muestreo 128-255 en el bloque 1, se simboliza mediante una flecha 82 y se realiza mediante las etapas que siguen a partir de la etapa 80 en la figura 4. Con la aparición del bloque de audio con el número 1 comenzaría en consecuencia el procesamiento en la etapa 80.
En el momento de la transmisión del conjunto a_{1}, x_{1} de parámetros, en la memoria 32 sólo se encuentran todavía en consecuencia los valores 128-255 de audio, es decir el bloque de audio actual después del bloque 0 de audio procesado en último lugar por el prefiltro 30. Después de que ahora se haya determinado la transmisión de parámetros x_{1}(i) de nodos en la etapa 80, el prefiltro 30 determina en la etapa 84 el límite q_{1} de potencia de ruido correspondiente al valor a_{1} de amplificación. Esto puede producirse porque el medio 26 de comparación de nodos transmite este valor al prefiltro 30, o mediante un nuevo cálculo de este valor por el prefiltro 30, tal como se ha descrito anteriormente con referencia a la etapa 64.
Después, en una etapa 86, se inicializa un índice j a un valor de muestreo, para indicar el valor de muestreo más antiguo que queda en la memoria 32 FIFO o el primer valor de muestreo del bloque de audio actual "bloque 1", es decir en el presente ejemplo de la figura 5a, el valor de muestreo 128. En una etapa 88 el prefiltro parametrizable realiza una interpolación entre los coeficientes x_{0} y x_{1} de filtrado, valiendo a este respecto la parametrización x_{0} como valor de nodo en el nodo con el número de valor de audio 127 del bloque 0 anterior y la parametrización x_{1} como valor de nodo en el nodo con el número de valor de audio 255 del bloque 1 actual. Estas posiciones 127 y 255 de valor de audio se designan a continuación también como nodo 0 y nodo 1, estando indicadas en la figura 5a las parametrizaciones de nodo referentes a los nodos mediante las flechas 90 y 92.
El prefiltro 30 parametrizable realiza en la etapa 88 la interpolación de los coeficientes x_{0}, x_{1} de filtrado entre los dos nodos en forma de una interpolación lineal, para obtener el coeficiente de filtrado interpolado en la posición j de muestreo, es decir x(t_{j})(i) con i=1...N.
Después, concretamente en la etapa 90, el prefiltro 30 parametrizable realiza una interpolación entre el limite q_{1} y q_{0} de potencia de ruido, para obtener un límite de potencia de ruido interpolado en la posición j de muestreo, es decir q(t_{j}).
En una etapa 92 el prefiltro parametrizable calcula a continuación el valor de amplificación para la posición j de muestreo basándose en el límite de potencia de ruido interpolado y en la potencia de ruido de cuantificación así como preferiblemente también en el coeficiente de filtrado interpolado, concretamente por ejemplo en función de la
{}\hskip17cm raíz de \frac{Potencia \ de \ ruido \ de \ cuantificación}{q(t_{j})}, remitiéndose para ello a las realizaciones con respecto a la etapa 64 de la figura 3.
En una etapa 94, a continuación el prefiltro 30 parametrizable aplica el valor de amplificación calculado así como los coeficientes de filtrado interpolados al valor de muestreo en la posición j de muestreo, para obtener un valor de muestreo filtrado para esta posición de muestreo, concretamente s'(t_{j}).
En una etapa 96 el prefiltro 30 parametrizable comprueba a continuación si la posición j de muestreo ha alcanzado el nodo actual, es decir el nodo 1, en el caso de la figura 5a, la posición 255 de muestreo, es decir el valor de muestreo, para el que debe valer directamente, es decir sin interpolación, la parametrización transmitida al prefiltro 30 parametrizable junto con el valor de amplificación. Si este no es el caso, entonces el prefiltro 30 parametrizable aumenta o incrementa el índice j en 1, repitiéndose de nuevo las etapas 88-96. Sin embargo, en caso de que la comprobación en la etapa 96 resulte positiva, entonces en la etapa 100 el prefiltro parametrizable aplica el valor de amplificación transmitido en último lugar por el medio 26 de comparación de nodos y los coeficientes de filtrado transmitidos en último lugar por el medio 26 de comparación de nodos directamente sin interpolación al valor de muestreo en el nuevo nodo, tras lo que el bloque actual, es decir, en el presente caso, el bloque 1, se ha terminado de procesar, y el proceso se realiza de nuevo en la etapa 80 con respecto al bloque siguiente que va a procesarse que, en función de que la parametrización del siguiente bloque de audio, bloque 2, se distinga lo suficiente de la parametrización x_{1}(i), dado el caso por tanto puede ser este bloque de audio siguiente, bloque 2, o sin embargo un bloque de audio posterior.
Antes de que con respecto a la figura 5 se describa el procedimiento adicional en el procesamiento de los valores s' de muestreo filtrados, a continuación se describen el fin y el trasfondo de la manera de proceder según las figuras 3 y 4. El sentido y el fin del filtrado consisten en filtrar la señal de audio en la entrada 12 con un filtro adaptativo, cuya función de transmisión está adaptada continuamente de la manera más óptima posible a la inversa del umbral de escucha, que también varía en el tiempo. El motivo de ello se basa en que, en el lado del descodificador, el filtrado inverso mediante un filtro adaptativo, cuya función de transmisión está adaptada continuamente al umbral de escucha, forma el ruido de cuantificación blanco introducido mediante una cuantificación de la señal de audio filtrada, es decir el ruido de cuantificación constante en frecuencia, concretamente adaptado a la forma del umbral de escucha.
La aplicación del valor de amplificación en las etapas 94 y 100 en el prefiltro 30 consiste en una multiplicación de la señal de audio o de la señal de audio filtrada, es decir, de los valores s de muestreo o de los valores s' de muestreo filtrados, por el factor de amplificación. El fin consiste en de este modo ajustar lo más alto posible el ruido de cuantificación, que se introduce en la señal de audio filtrada mediante la cuantificación descrita detalladamente a continuación, y que se adapta mediante el filtrado inverso en el lado del descodificador a la forma del umbral de escucha, de manera que, aún así, no sobrepase el umbral de escucha. Esto puede ejemplificarse mediante la fórmula de Parseval, según la cual el cuadrado de la magnitud de una función es igual al cuadrado de la magnitud de la transformada de Fourier. Cuando por tanto en el lado del descodificador vuelve a realizarse la multiplicación de la señal de audio en el prefiltro por el valor de amplificación en sentido inverso, dividiéndose la señal de audio filtrada entre el valor de amplificación, se reduce por tanto igualmente la potencia de ruido de cuantificación, concretamente por el factor a^{-2}, siendo a el valor de amplificación. En consecuencia, mediante la aplicación del valor de amplificación en el prefiltro 30 puede ajustarse la potencia de ruido de cuantificación a la altura óptima, lo que es lo mismo que aumentar el incremento de cuantificación y por tanto reducir el número de los escalones de cuantificación que deben codificarse, lo que a su vez aumenta la compresión en la parte de reducción de redundancia subsiguiente.
Expresado de otro modo, el efecto del prefiltro puede considerarse como una normalización de la señal en su umbral de enmascaramiento, de manera que el nivel de las interferencias de cuantificación o del ruido de cuantificación puede mantenerse constante tanto en tiempo como en frecuencia. Puesto que la señal de audio se encuentra en el dominio temporal, la cuantificación puede por tanto realizarse gradualmente con una cuantificación constante uniforme, tal como aún se describirá a continuación. De esta manera se elimina de manera ideal cualquier irrelevancia de la señal de audio, y puede emplearse un esquema de compresión sin pérdida para eliminar también la redundancia que queda en la señal de audio prefiltrada y cuantificada, tal como aún se describirá a continuación.
Con ayuda de la figura 5a se destacará adicionalmente una vez más claramente que naturalmente los coeficientes de filtrado y los valores a_{0}, a_{1}, x_{0}, x_{1} de amplificación empleados deben estar a disposición en el lado del descodificador como información secundaria, pero que el esfuerzo de transmisión se reduce a este respecto porque no se emplean de nuevo nuevos coeficientes de filtrado y nuevos valores de amplificación simplemente para cada bloque. Más bien tiene lugar una comprobación 66 del valor umbral para transmitir las parametrizaciones como información secundaria sólo en caso de variación de parametrización suficiente y, en caso contrario, no se transmiten la información secundaria o las parametrizaciones. En los bloques de audio, para los que se transmitieron las parametrizaciones, tiene lugar por la zona de estos bloques una interpolación de la parametrización antigua con respecto a la nueva. La interpolación de los coeficientes de filtrado tiene lugar de la manera descrita anteriormente con referencia a la etapa 88. La interpolación, con respecto a la amplificación, tiene lugar dando un rodeo, concretamente a través de una interpolación 90 lineal del límite q_{0}, q_{1} de potencia de ruido. En comparación con una interpolación directa a través del valor de amplificación, la interpolación lineal conduce, con respecto al límite de potencia de ruido, a un mejor resultado de escucha o a menos artefactos audibles.
A continuación se describe ahora con ayuda de la figura 6 el procesamiento posterior de la señal prefiltrada o filtrada previamente, que comprende esencialmente una cuantificación y una reducción de redundancia. En primer lugar se almacenan los valores de muestreo filtrados proporcionados por el prefiltro 30 parametrizable en la memoria 38 intermedia y, al mismo tiempo, se pasan desde la memoria 38 intermedia al multiplicador 40, en el que, a su vez, puesto que se trata de su primera pasada, se reenvían en primer lugar sin modificar, concretamente con un factor de escala de uno, a través del multiplicador 40 al cuantificador 28. Allí los valores de audio filtrados se cortan por encima de un límite superior en una etapa 110 y a continuación se cuantifican en una etapa 112. Las dos etapas 110 y 112 se realizan por el cuantificador 28. Especialmente las dos etapas 110 y 112 se realizan por el cuantificador 28 preferiblemente en una etapa, cuantificando los valores s' de audio filtrados con una función escalonada de cuantificación, que representa los valores s' muestreados filtrados presentes por ejemplo en una representación de coma flotante con respecto a una pluralidad de valores o índices escalonados de cuantificación de número entero y que transcurre de manera plana a partir de un cierto valor umbral para los valores de muestreo filtrados, de manera que los valores de muestreo filtrados que son superiores al valor umbral se cuantifican en el mismo escalón de cuantificación. Un ejemplo de una función escalonada de cuantificación de este tipo está representado en la figura 7a.
Los valores de muestreo filtrados cuantificados se indican en la figura 7a con \sigma'. La función escalonada de cuantificación es preferiblemente una función escalonada de cuantificación con incrementos constantes por debajo del valor umbral, es decir, el salto al siguiente escalón de cuantificación siempre tiene lugar después de un intervalo constante a lo largo de los valores S' de entrada. En la implementación se ajusta el incremento al valor umbral de tal manera que el número de escalones de cuantificación corresponde preferiblemente a una potencia de 2. En comparación con la representación de coma flotante de los valores s' de muestreo filtrados entrantes, el valor umbral es más pequeño de manera que un valor máximo de la zona representable de la representación de coma flotante sobrepasa el valor umbral.
El motivo para el valor umbral consiste en que se ha observado que la señal de audio filtrada, producida por el prefiltro 30, presenta valores de audio aislados que se suman, debido a una acumulación no favorable de armónicos, para dar valores muy grandes. Además se ha observado que un corte de estos valores, tal como se logra mediante la función escalonada de cuantificación mostrada en la figura 7a, lleva a una reducción de datos alta, pero sólo a un perjuicio mínimo de la calidad de audio. Más bien, estos puntos aislados aparecen en la señal de audio filtrada de manera artificial mediante el filtrado selectivo en frecuencia en el filtro 30 parametrizable, de manera que un corte de los mismos perjudica la calidad de audio sólo mínimamente.
Un ejemplo algo más concreto para la función escalonada de cuantificación mostrada en la figura 7a sería una que hasta el valor umbral redondea todos los valores s' de muestreo filtrados hacia el siguiente número entero, y a partir de entonces cuantifica todos los valores de muestreo filtrados situados por encima en el escalón de cuantificación más alto, como por ejemplo 256. Este caso se representa en la figura 7a.
Otro ejemplo de una posible función escalonada de cuantificación sería el mostrado en la figura 7b. Hasta el valor umbral, la función escalonada de cuantificación de la figura 7b corresponde a la de la figura 7a. Sin embargo, en lugar de transcurrir abruptamente plana para valores s' de muestreo por encima del valor umbral, la función escalonada de cuantificación sigue transcurriendo con una pendiente, que es más pequeña que la pendiente en la zona por debajo del valor umbral. Expresado de otro modo, por encima del valor umbral, el incremento de cuantificación es mayor. De este modo se logra un efecto similar que con la función de cuantificación de la figura 7a, pero por un lado con más esfuerzo debido a los diferentes incrementos de la función escalonada de cuantificación por encima y por debajo del valor umbral y, por otro lado, una mejor calidad de audio, porque no se cortan totalmente valores s' de audio filtrados muy altos, sino que únicamente se cuantifican con un incremento de cuantificación mayor.
Tal como ya se ha descrito anteriormente, en el lado del descodificador no sólo deben estar disponibles los valores \sigma' de audio cuantificados y filtrados, sino además también los parámetros de entrada para el prefiltro 30, en los que se ha basado el filtrado de estos valores, concretamente la parametrización de nodos incluyendo una indicación del valor de amplificación correspondiente. En una etapa 114, el compresor 34 emprende por tanto un primer intento de compresión y comprime con esto información secundaria que contiene los valores a_{0} y a_{1} de amplificación en los nodos, como por ejemplo 127 y 255, así como los coeficientes x_{0} y x_{1} de filtrado en los nodos y los valores \sigma' de muestreo filtrados, cuantificados en una señal filtrada provisional. El compresor 34 es a este respecto un codificador que funciona sin pérdida, como por ejemplo un codificador Huffman o aritmético con o sin predicción y/o adaptación.
La memoria 38, por la que pasan los valores \sigma' de audio muestreados, sirve como memoria intermedia para un tamaño adecuado de bloque con el que el compresor 34 procesa los valores \sigma' de audio filtrados, cuantificados producidos por el cuantificador 28 y, ajustados a escala dado el caso tal como se describen a continuación. El tamaño de bloque puede diferenciarse del tamaño de bloque de los bloques de audio, tal como los empleados por el medio 20.
Tal como ya se ha mencionado para el primer intento de compresión, el control 36 de la tasa de bits activa el multiplicador 40 con un multiplicador de 1, de manera que los valores de audio filtrados por el prefiltro 30 llegan sin modificar al cuantificador 28 y desde allí, como valores de audio filtrados, cuantificados, al compresor 34. El compresor 34 supervisa, en una etapa 116, si un cierto tamaño de bloque de compresión, es decir, un cierto número de valores de audio muestreados, cuantificados, se ha codificado en la señal codificada provisional, o si deben codificarse otros valores \sigma' de audio filtrados, cuantificados en la señal codificada provisional actual. Si no se llega al tamaño del bloque de compresión, el compresor 34 sigue realizando la compresión 114 actual. Sin embargo, si se llega al tamaño del bloque de compresión, en una etapa 118 el control 36 de la tasa de bits comprueba si, la cantidad de bits necesaria para la compresión es mayor que una cantidad de bits preestablecida por una tasa de bits deseada. Si este no es el caso, el control 36 de la tasa de bits comprueba en una etapa 120, si la cantidad de bits necesaria es más pequeña que la cantidad de bits preestablecida por la tasa de bits deseada. Si este es el caso, el control 36 de la tasa de bits añade bits de relleno a la señal codificada en la etapa 122, hasta que se consigue la cantidad de bits preestablecida por la tasa de bits deseada. A continuación, en la etapa 124 se produce la salida de la señal codificada. Alternativamente a la etapa 122, el control 36 de la tasa de bits podría transmitir el bloque de compresión de valores \sigma' de audio filtrados todavía almacenado en la memoria 38, que en última instancia es la base de la compresión, en forma multiplicada por un multiplicador superior a 1 por el multiplicador 40, al cuantificador 28 para realizar de nuevo las etapas 110 a 118, hasta que se logra la cantidad de bits preestablecida por la tasa de bits deseada, tal como se muestra por una etapa 125 en línea discontinua.
Sin embargo, si la comprobación en la etapa 118 da como resultado que la cantidad de bits necesaria es mayor que la preestablecida por la tasa de bits deseada, el control 36 de la tasa de bits modifica el multiplicador para el multiplicador 40 hasta un factor entre 0 y 1 exclusivamente. Esto se realiza en la etapa 126. Tras la etapa 126, el control 36 de la tasa de bits se encarga de que la memoria 38 produzca de nuevo el último bloque de compresión de valores \sigma' de audio filtrados en el que se basa la compresión, multiplicándose los mismos a continuación por el factor ajustado en la etapa 126 y alimentándose de nuevo al cuantificador 28, después de lo cual vuelven a realizarse las etapas 110 a 118 y se expulsa la señal codificada hasta entonces de manera provisional.
Se indica a este respecto que, en la realización repetida de las etapas 110 a 116 en la etapa 114 se integra naturalmente también el factor empleado en la etapa 126 (o en la etapa 125) en la señal codificada.
El fin del modo de proceder según la etapa 126 consiste en que, mediante el factor, se aumenta el incremento efectivo del cuantificador 28. Esto significa que el ruido de cuantificación resultante se encuentra de manera uniforme por encima del umbral de enmascaramiento, lo que lleva a interferencias audibles o un ruido audible, pero que sin embargo produce una tasa de bits reducida. Si tras la realización repetida de las etapas 110 a 116, en la etapa 118 se determina de nuevo que la cantidad de bits necesaria es superior a la preestablecida por la tasa de bits deseada, el factor en la etapa 126 se reduce adicionalmente, etc.
Cuando los datos se proporcionan finalmente en la etapa 124 como señal codificada, se realiza el siguiente bloque de compresión de los valores \sigma' de audio filtrados, cuantificados subsiguientes.
Se indica a este respecto además que también podría emplearse otro valor preinicializado para el factor de multiplicación distinto de 1, concretamente por ejemplo 1. Entonces, en cualquier caso tendría lugar previamente, es decir arriba del todo en la figura 6, un ajuste a escala.
La figura 5b ejemplifica de nuevo la señal codificada producida, que se indica en general con 130. La señal codificada comprende información secundaria y datos principales intermedios. La información secundaria comprende, tal como se ya se ha mencionado, información a partir de la cual puede derivarse el valor del valor de amplificación y el valor de los coeficientes de filtrado para bloques de audio especiales, concretamente bloques de audio en los que se ha producido en la secuencia de bloques de audio una variación importante en los coeficientes de filtrado. Dado el caso, la información secundaria comprende además otra información que se refiere al valor de amplificación empleado para el control de bits. Debido a la dependencia mutua entre valor de amplificación y límite q de potencia de ruido, la información secundaria puede comprender opcionalmente, además del valor a_{#} de amplificación para un nodo # también el límite q_{#} de potencia de ruido, o también sólo este último. Dentro de la señal codificada está dispuesta la información secundaria preferiblemente de tal manera que la información secundaria para los coeficientes de filtrado y el valor de amplificación correspondiente o el límite de potencia de ruido correspondiente está dispuesta antes de los datos principales para el bloque de audio de valores \sigma' de audio filtrados, cuantificados, a partir de los cuales se han derivado estos coeficientes de filtrado con el valor de amplificación correspondiente o el límite de potencia de ruido correspondiente, es decir, la información a_{0}, x_{0}(i) secundaria después del bloque -1 y la información a_{1}, x_{1}(i) secundaria después del bloque 1. Expresado de otro modo, los datos principales, es decir, los valores \sigma' de audio filtrados, cuantificados desde exclusivamente un bloque de audio del tipo en el que se ha producido una variación importante en la secuencia de bloques de audio en los coeficientes de filtrado, hasta inclusive el siguiente bloque de audio de este tipo, en la figura 5b por ejemplo los valores s'(t_{0}) - s'(t_{255}) de audio, siempre están dispuestos entre el bloque 132 de información secundaria para el primero de estos dos bloques de audio (bloque -1) y el otro bloque 134 de información secundaria para el segundo de estos dos bloques de audio (bloque 1). Los valores s'(t_{0}) - s'(t_{127}) de audio se han obtenido o pueden descodificarse tal como se mencionó anteriormente en referencia a la figura 5a, únicamente mediante la información 132 secundaria, mientras que los valores s'(t_{128}) - s'(t_{255}) de audio se han obtenido mediante interpolación mediante la información 132 secundaria como valores de nodo en el nodo con el número 127 de valor de muestreo y mediante la información 134 secundaria como valores de nodo en el nodo con el número 255 de valor de muestreo y, por tanto, sólo pueden descodificarse mediante ambas informaciones secundarias.
Además, la información secundaria relativa al valor de amplificación o al límite de potencia de ruido y los coeficientes de filtrado no se integran siempre independientemente unas de otras en cada bloque 132 y 134 de información secundaria. Más bien, esta información secundaria se transmite en diferencias al bloque de información secundaria precedente. En la figura 5b, el bloque 132 de información secundaria contiene a modo de ejemplo el valor a_{0} de amplificación y el coeficiente x_{0} de filtrado relativos al nodo para el instante t_{-1}. En el bloque 132 de información secundaria pueden derivarse estos valores a partir del propio bloque. Sin embargo, a partir del bloque 134 de información secundaria ya no puede derivarse la información secundaria relativa a los nodos en el instante t_{255} únicamente a partir de este bloque. Más bien, el bloque 134 de información secundaria comprende únicamente información sobre diferencias del valor a_{1} de amplificación del nodo en el instante t_{255} con respecto al valor de amplificación del nodo en el instante t_{0} y las diferencias de los coeficientes x_{1} de filtrado con respecto a los coeficientes x_{0} de filtrado. El bloque 134 de información secundaria contiene por consiguiente únicamente la información para a_{1} - a_{0} y x_{1}(i) - x_{0}(i). Sin embargo, para los instantes intermitentes los coeficientes de filtrado y el valor de amplificación o el límite de potencia de ruido deberían transmitirse completamente y no sólo como diferencia al nodo precedente, como por ejemplo cada segundo para permitir a un receptor o descodificador unirse a un flujo en curso de datos de codificación, tal como aún se expondrá a continuación.
Este tipo de integración de la información secundaria en los bloques 132 y 134 de información secundaria ofrece la ventaja de la posibilidad de una tasa de compresión superior. El motivo de esto es que, aunque la información secundaria sólo puede transmitirse en la medida de lo posible cuando se ha producido una variación suficiente de los coeficientes de filtrado con respecto a los coeficientes de filtrado de un nodo precedente, merece la pena el esfuerzo de la formación de la diferencia en el lado del codificador o la formación de la suma en el lado del descodificador, porque las diferencias producidas son pequeñas a pesar de la consulta en la etapa 66, para así permitir ventajas en la codificación de entropía.
Después de haber descrito anteriormente un ejemplo de realización para un codificador de audio, a continuación se describirá un ejemplo de realización para un descodificador de audio adecuado para descodificar la señal codificada creada por el codificador 10 de audio de la figura 1 en una señal de audio descodificada, reproducible o que puede procesarse adicionalmente.
La estructura de este descodificador se muestra en la figura 8. El descodificador que se indica en general con 210, comprende un descompresor 212, una memoria 214 FIFO, un multiplicador 216 y un postfiltro 218 parametrizable. El descompresor 212, la memoria 214 FIFO, el multiplicador 216 y el postfiltro 218 parametrizable están conectados en este orden entre una entrada 220 de datos y una salida 222 de datos del descodificador 210, obteniéndose en la entrada 220 de datos la señal codificada y produciéndose en la salida 222 de datos la señal de audio descodificada, que únicamente se diferencia de la señal de audio original en la entrada 12 de datos del codificador 10 de audio por el ruido de cuantificación generado por el cuantificador 28 en el codificador 10 de audio. El descompresor 212 está unido en una salida de datos adicional con una entrada de control del multiplicador 216, para transmitir al mismo un multiplicador, y a través de otra salida de datos con una entrada de parametrización del postfiltro 218 parametrizable.
Tal como se muestra en la figura 9, el descompresor 212 descomprime en una etapa 224, en primer lugar, la señal comprimida situada en la entrada 220 de datos, para llegar a los datos de audio filtrados, cuantificados, concretamente los valores \sigma' de muestreo, así como la información secundaria correspondiente en los bloques 132, 134 de información secundaria, que indican justamente los coeficientes de filtrado y los valores de amplificación o, en lugar de los valores de amplificación, los límites de potencia de ruido, en los nodos.
Tal como se muestra en la figura 10, el descompresor 212 comprueba en una etapa 226 la señal descomprimida en el orden de su llegada, si la información secundaria en el mismo está contenida con coeficientes de filtrado, y concretamente en forma cerrada en sí misma sin tener en cuenta diferencias con un bloque de información secundaria precedente. Expresado de otro modo, el descompresor 212 solicita el primer bloque 132 de información secundaria. En cuanto el descompresor 212 lo ha encontrado, los valores \sigma' de audio filtrados, cuantificados se almacenan en memoria intermedia en una etapa 228 en la memoria 214 FIFO. Si durante la etapa 228 se ha almacenado un bloque de audio completo de valores \sigma' de audio filtrados, cuantificados, sin que inmediatamente siga un bloque de información secundaria, entonces éste se postfiltra dentro de la etapa 228 en primer lugar mediante la información contenida en la información secundaria recibida en la etapa 226 mediante parametrización y valor de amplificación en el postfiltro y se amplifica en el multiplicador 216, con lo cual se descodifica y por tanto se obtiene el bloque de audio descodificado correspondiente.
En una etapa 230, el descompresor 212 supervisa la señal descomprimida por si aparece un bloque de información secundaria de cualquier tipo, concretamente con coeficientes de filtrado absolutos o diferencias de coeficientes de filtrado para un bloque de información secundaria precedente. En el ejemplo de la figura 5b, el descompresor 212 reconocería por ejemplo, en el reconocimiento del bloque 132 de información secundaria en la etapa 226, en la etapa 230 la aparición del bloque 134 de información secundaria. A este respecto, en la etapa 228 ya se habría descodificado el bloque de valores s'(t_{0}) - s'(t_{127}) de audio filtrados, cuantificados, y concretamente empleando la información 132 secundaria. Por tanto, mientras no aparezca todavía el bloque 134 de información secundaria en la señal descomprimida, en la etapa 228 se continúa el almacenamiento en memoria intermedia y la eventual descodificación de bloques por medio de la información secundaria en la etapa 226, tal como se describió anteriormente.
En cuanto aparece el bloque 134 de información secundaria, el descompresor 212 calcula en la etapa 232, mediante la suma de los valores de diferencia en el bloque 134 de información secundaria para los valores de parámetro en el bloque 132 de información secundaria, los valores de parámetro en el nodo 1, es decir a_{1}, x_{1}(i). Naturalmente se suprime la etapa 232 en caso de que el bloque de información secundaria actual sea un bloque de información secundaria cerrado sin diferencias, lo que, como se ha descrito anteriormente, puede ser el caso por ejemplo todos los segundos. Para que el tiempo de espera para el descodificador 210 no sea demasiado largo, los bloques 132 de información secundaria, en los que pueden derivarse los valores de parámetro de manera absoluta, es decir sin relación con otro bloque de información secundaria, se disponen con separaciones suficientemente pequeñas, de manera que el tiempo de encendido o el tiempo muerto durante el encendido del codificador 210 de audio por ejemplo en el caso de una retransmisión o una radiodifusión no sea demasiado grande. Preferiblemente, el número de los bloques 134 de información secundaria dispuestos entremedias con los valores de diferencia también están dispuestos en un número predeterminado fijo entre los bloques 132 de información secundaria, de manera que el descodificador sabe cuándo se espera de nuevo un bloque de información secundaria de tipo 132 en la señal codificada. Alternativamente, los diferentes tipos de bloques de información secundaria se indican mediante indicadores correspondientes.
Tal como se muestra ahora en la figura 11, después de que haya llegado ahora un bloque de información secundaria para un nuevo nodo, y concretamente, especialmente después de la etapa 226 o 232, en primer lugar se inicializa un índice j de valor de muestreo a 0 en la etapa 234. Este valor corresponde a la posición de muestreo del primer valor de muestreo en el bloque de audio que se mantiene actualmente en la FIFO 214, al que hace referencia la información secundaria actual. Se realiza la etapa 234 por el postfiltro 218 parametrizable. El postfiltro 218 realiza después en una etapa 236 un cálculo del límite de potencia de ruido en el nuevo nodo, correspondiendo esta etapa a la etapa 84 de la figura 4 y pudiendo suprimirse en su caso cuando, por ejemplo, el límite de potencia de ruido se transmite en los nodos adicionalmente a los valores de amplificación. En las siguientes etapas 238 y 240, el postfiltro 218 realiza además interpolaciones con respecto a los coeficientes de filtrado y los límites de potencia de ruido, que corresponden a las interpolaciones 88 y 90 de la figura 4. El siguiente cálculo del valor de amplificación para la posición j de muestreo en la etapa 242 sobre la base del límite de potencia de ruido interpolado y los coeficientes de filtrado interpolados a partir de las etapas 238 y 240, corresponde a la etapa 92 de la figura 4. En una etapa 244, el postfiltro 218 aplica entonces el valor de amplificación así como los coeficientes de filtrado interpolados calculados en la etapa 242 al valor de muestreo en la posición j de muestreo. Esta etapa se diferencia de la etapa 94 de la figura 4 porque los coeficientes de filtrado interpolados se aplican a los valores s' de muestreo filtrados, cuantificados, de tal manera que la función de transmisión del postfiltro parametrizable no corresponde a la inversa del umbral de escucha, sino al propio umbral de escucha. Además, el postfiltro no realiza una multiplicación por el valor de amplificación, sino una división entre el valor de amplificación en el valor s' de muestreo filtrado, cuantificado, o el valor de muestreo filtrado, cuantificado y ya filtrado de manera inversa en la posición j.
Si el postfiltro 218 todavía no ha alcanzado el nodo actual con la posición j de muestreo, lo que comprueba en la etapa 246, en la etapa 248 incrementa el índice j de posición de muestreo y vuelve a empezar las etapas 238 a 246. Sólo cuando se alcanza el nodo, aplica el valor de amplificación y los coeficientes de filtrado del nuevo nodo al valor de muestreo en el nodo, concretamente en la etapa 250. De nuevo la aplicación comprende, como en la etapa 218, en lugar de una multiplicación, una división mediante el valor de amplificación y un filtrado con una función de transmisión igual al umbral de escucha y no a la inversa de este último. Después de la etapa 250, el bloque de audio actual está descodificado mediante interpolación entre dos parametrizaciones de nodos.
Tal como ya se ha mencionado, mediante el filtrado y la aplicación del valor de amplificación en las etapas 218 y 224, el ruido añadido mediante la cuantificación en la codificación en la etapa 110 o 112 se adapta tanto en forma como en altura al umbral de escucha.
Además se indica que en el caso de que los valores de audio filtrados, cuantificados, debido al control de la tasa de bits se hayan sometido antes de la codificación en la señal codificada todavía a una multiplicación adicional en la etapa 126, este factor puede tenerse en cuenta igualmente en las etapas 218 y 224. De manera alternativa, los valores de audio obtenidos mediante el proceso de la figura 11 pueden someterse naturalmente a una multiplicación adicional, para volver a amplificar de manera correspondiente los valores de audio atenuados debido a una tasa de bits reducida.
Con respecto a las figuras 3, 4, 6 y 9 a 11 se indica que éstas muestran diagramas de flujo que ilustran el modo de funcionamiento del codificador de la figura 1 o del descodificador de la figura 8, y que cada una de las etapas representadas en estos diagramas de flujo por un bloque están implementadas como se describen en un medio correspondiente, tal como se describió anteriormente. La implementación de las etapas individuales puede realizarse en este sentido en hardware, como parte de un circuito ASIC, o en software, como rutinas secundarias. Especialmente, en estas figuras las explicaciones inscritas en los bloques indican básicamente a qué operación se refiere la etapa respectiva a la que corresponde el bloque respectivo, mientras que las flechas entre los bloques ilustran el orden de las etapas en el funcionamiento del codificador o del descodificador.
Teniendo en cuenta la descripción anterior se indica además que el esquema de codificación representado anteriormente puede variarse en diferentes aspectos. Por ejemplo no es necesario que una parametrización y un valor de amplificación o un límite de potencia de ruido, tal como se han determinado para un bloque de audio determinado, deban considerarse directamente como válidos para un valor de audio determinado, como en el ejemplo de realización anterior el último valor de audio en cada caso de cada bloque de audio, es decir, del valor 128 en este bloque de audio, de manera que para este valor de audio puede terminarse la interpolación. Más bien es posible relacionar estos valores de parámetro de nodos con un nodo que se encuentra temporalmente entre los instantes t_{n} de muestreo con n=0,..., 127 de los valores de audio de este bloque de audio, de manera que para cada valor de audio sería necesaria una interpolación. Especialmente, la parametrización determinada para un bloque de audio o el valor de amplificación determinado para este bloque de audio, también puede aplicarse directamente a otro valor como por ejemplo el valor de audio en el centro del bloque de audio, como por ejemplo el valor de audio 64 en el caso del tamaño de bloque anterior de 128 valores de audio.
Además se indica que el ejemplo de realización anterior se refirió a un esquema de codificación de audio que se diseñó para crear una señal codificada con una tasa de bits controlada. Sin embargo, el control de la tasa de bits no es necesario en todos los casos de aplicación. Por tanto las etapas 116 a 122 y 126 o 125 correspondientes también pueden suprimirse.
Con respecto al esquema de compresión mencionado con referencia a la etapa 114, también se remite, para completar, al documento de Schuller et al. descrito en la introducción de la descripción, y especialmente al apartado IV cuyo contenido se toma por la presente con respecto a la reducción de redundancia mediante codificación sin pérdida como referencia.
En referencia a la descripción anterior se indica además lo siguiente. Aunque anteriormente la presente invención se ha descrito en referencia a un esquema de codificación de audio especial que permite tiempos de retardo cortos, la presente invención puede aplicarse naturalmente también a otras codificaciones de audio. Así, sería concebible también un esquema de codificación de audio en el que la señal codificada consistiese en sí misma en los valores de audio filtrados, cuantificados, sin que se realizara una reducción de redundancia. Por consiguiente, sería también concebible sin embargo realizar el filtrado selectivo en frecuencia diferente del modo descrito anteriormente, concretamente en el lado del codificador con una función de transmisión igual a la inversa del umbral de escucha y en el lado del descodificador con una función de transmisión igual al umbral de escucha.
Además también pueden omitirse aspectos individuales de los ejemplos de realización anteriores. Así, es posible igualmente, por ejemplo, reduciendo la relación de compresión, transferir la información secundaria relativa a cada bloque de audio, omitir la interpolación y/o transmitir los parámetros en la información secundaria siempre en bloques de información secundaria cerrados en sí mismos y no como diferencias, que se refieren a los bloques de información secundaria precedentes.
Además, la presente invención no se limita a señales de audio. También puede aplicarse además en otras señales de información, concretamente por ejemplo en señales de vídeo que consisten en una secuencia de tramas, es decir, una secuencia de matrices de píxeles.
En cualquier caso, el esquema de codificación de audio anterior proporciona sin embargo una posibilidad de limitar la tasa de bits en un codificador de audio con un tiempo de retardo muy reducido. Los máximos de tasa de bits que aparecen en la codificación en función de la señal de audio, se evitan limitando el margen de valores de salida del prefiltro. Aunque según la naturaleza corresponde a las señales de audio que van a transmitirse, que llevan a tasas de bits de magnitud diferente para la transmisión, concretamente señales de audio más complejas para tasas de bits superiores y menos complejas para tasas de bits inferiores, siempre puede mantenerse un límite superior para la tasa de bits de la transmisión, que a menudo existe por ejemplo en medios de transmisión inalámbricos. La variación de la función escalonada de cuantificación por encima del umbral es un medio adecuado para limitar la tasa de bits al máximo autorizado.
En los ejemplos de realización anteriores, el codificador consistía en un prefiltro, que conforma la señal de audio de manera adecuada, un cuantificador con una altura de escalón de cuantificación, seguido de un codificador de entropía. El cuantificador generó valores que también se denominan índices. En general, índices superiores significan también una tasa de bits superior relacionada con ello, que sin embargo se evitaría limitando (figura 7a) o estrechando (figura 7b) la zona de los índices, pero con la posibilidad de empeorar la calidad de audio.
Además en referencia al ejemplo de realización anterior se indica todavía lo siguiente. Aunque anteriormente se ha descrito que el valor umbral en la cuantificación siempre se mantiene constante o también que la función escalonada de cuantificación siempre permanece constante, es decir, se cuantifican o cortan siempre los artefactos generados en la señal de audio filtrada con una cuantificación más aproximada, con lo cual la calidad de audio, dado el caso, podría empeorarse de manera audible, es posible además emplear estas medidas sólo cuando las requiere la complejidad de la señal de audio, concretamente cuando la tasa de bits necesaria para la codificación sobrepasa una tasa de bits deseada. En este caso, adicionalmente a las funciones escalonadas de cuantificación mostradas en las figuras 7a y 7b, podría emplearse por ejemplo una con un incremento de cuantificación constante a través de todo el margen de valores posible en la salida del prefiltro y el cuantificador respondería por ejemplo a una señal para utilizar o la función escalonada de cuantificación con siempre un incremento de cuantificación constante o una de las funciones escalonadas de cuantificación según las figuras 7a o 7b, de manera que mediante la señal podría comunicarse al cuantificador, que realizara en caso de un empeoramiento mínimo de la calidad de audio la reducción de escalones de cuantificación por encima del valor umbral o el corte por encima del valor umbral. Alternativamente, podría reducirse también gradualmente el valor umbral de manera paulatina. En este caso podría realizarse la reducción del valor umbral, en lugar de la reducción de factor de la etapa 126. Después de un primer intento de compresión sin la etapa 110, la señal comprimida provisionalmente también podría someterse a una cuantificación de valor umbral selectiva en una etapa 126 modificada únicamente, cuando la tasa de bits siga siendo demasiado alta (118). En una nueva pasada se cuantificarían entonces los valores de audio filtrados con la función escalonada de cuantificación que presenta una evolución más plana por encima del umbral de audio. Aún podrían realizarse reducciones de la tasa de bits adicionales en la etapa 126 modificada mediante la reducción del valor umbral y con ello una modificación adicional de la función escalonada de cuantificación.
Especialmente se indica que en función de las circunstancias, el esquema de cuantificación según la invención también puede implementarse en software. La implementación puede realizarse en un medio de almacenamiento digital, especialmente un disquete o un CD con señales de control legibles electrónicamente, que pueden cooperar con un sistema informático programable de manera que se realiza el procedimiento correspondiente. En general, la invención consiste por tanto también en un producto de programa informático con un código de programa almacenado en un soporte legible por ordenador para la realización del procedimiento según la invención, cuando el producto de programa informático se ejecuta en un ordenador. Expresado con otras palabras, la invención puede realizarse por tanto como un programa informático con un código de programa para la realización del procedimiento cuando el programa informático se ejecuta en un ordenador.
Especialmente pueden implementarse las etapas de procedimiento anteriores en los bloques de los diagramas de flujo individualmente o en varias rutinas de programas secundarias. Alternativamente, también es posible naturalmente una implementación de un dispositivo según la invención en forma de un circuito integrado, en el que se implementan estos bloques por ejemplo como partes de circuito individuales de un ASIC.
Especialmente se indica que en función de las circunstancias, el esquema según la invención también puede implementarse en software. La implementación puede realizarse en un medio de almacenamiento digital, especialmente en un disquete o en un CD con señales de control legibles electrónicamente, que pueden cooperar con un sistema informático programable de manera que se realiza el procedimiento correspondiente. En general la invención consiste por tanto también en un producto de programa informático con un código de programa almacenado en un soporte legible por ordenador para la realización del procedimiento según la invención, cuando el producto de programa informático se ejecuta en un ordenador. Expresado con otras palabras, la invención puede realizarse por tanto como un programa informático con un código de programa para la realización del procedimiento cuando el programa informático se ejecuta en un ordenador.

Claims (10)

1. Dispositivo para cuantificar una señal de información de una secuencia de valores de información, siendo la señal de información una señal de audio y siendo los valores de información valores de audio, con las siguientes características:
\quad
un medio (20) para determinar un primer umbral de escucha para un bloque de valores de audio de una secuencia de valores de audio;
\quad
un medio (24) para calcular una versión de una parametrización de un filtro parametrizable, de manera que su función de transmisión corresponde aproximadamente a la inversa de la magnitud del primer umbral de escucha;
\quad
un medio (30) para filtrar de manera selectiva en frecuencia la secuencia de valores de audio, para obtener una secuencia de valores de audio filtrados;
\quad
un medio (28) para cuantificar los valores de audio filtrados, para obtener una secuencia de valores de audio cuantificados, por medio de una función escalonada de cuantificación, que representa los valores de audio filtrados con respecto a los valores de audio cuantificados, y cuya evolución por debajo de un valor de información umbral es más inclinada que por encima del valor de información umbral;
presentando el medio (30) para filtrar de manera selectiva en frecuencia el siguiente medio:
un medio para filtrar un bloque predeterminado de valores de audio de la secuencia de valores de audio con el filtro parametrizable utilizando una parametrización predeterminada, que de una manera predeterminada depende de la versión de la parametrización, para obtener un bloque de los valores de audio filtrados.
2. Dispositivo según la reivindicación 1, en el que el medio para determinar un umbral de escucha está configurado para además determinar otro segundo umbral de escucha para otro segundo bloque de valores de audio, y el medio para calcular está configurado para calcular una versión de otra segunda parametrización del filtro parametrizable, de manera que su función de transmisión corresponde aproximadamente a la inversa de la magnitud del segundo umbral de escucha, presentando el medio para filtrar de manera selectiva en frecuencia los siguientes medios
\quad
un medio para interpolar entre la versión de la primera parametrización y la versión de la segunda parametrización, para obtener una versión de una parametrización interpolada para un valor de audio predeterminado del bloque predeterminado de valores de audio; y
\quad
un medio para aplicar la versión de la parametrización interpolada sobre el valor de audio predeterminado del bloque predeterminado de valores de audio.
3. Dispositivo según la reivindicación 2, que presenta además un medio (22) para determinar un primer límite de potencia de ruido en función del primer umbral de enmascaramiento y un segundo límite de potencia de ruido en función del segundo umbral de enmascaramiento, y en el que el medio para filtrar presenta un medio (90) para interpolar entre el primer límite de potencia de ruido y el segundo límite de potencia de ruido, para obtener un límite de potencia de ruido interpolado para un valor de audio predeterminado del bloque predeterminado de valores de audio, un medio (92) para determinar un valor de escala intermedio en función de una potencia de ruido de cuantificación provocada por una cuantificación según una regla de cuantificación predeterminada y del límite de potencia de ruido interpolado, y un medio (94) para aplicar el valor de escala intermedio sobre el valor de audio predeterminado, para obtener unos valores de audio filtrados, ajustados a escala.
4. Dispositivo según la reivindicación 3, en el que el medio para interpolar entre el primer límite de potencia de ruido y el segundo límite de potencia de ruido realiza una interpolación lineal.
5. Dispositivo según la reivindicación 3 ó 4, en el que el medio para determinar el valor de escala intermedio presenta un medio para formar la raíz a partir del cociente del ruido de cuantificación dividido entre el límite de potencia de ruido interpolado.
6. Dispositivo según una de las reivindicaciones anteriores, en el que el medio para cuantificar está configurado para realizar la cuantificación en respuesta a una señal de control.
7. Dispositivo según una de las reivindicaciones anteriores, que además presenta un medio de compresión sin pérdida para comprimir los valores de audio filtrados en un flujo de audio comprimido, estando configurado el medio de compresión para controlar una tasa de bits del flujo de audio comprimido, y en el caso de que la tasa de bits sea superior a un valor de control, para enviar la señal de control al medio para la cuantificación.
8. Dispositivo según una de las reivindicaciones anteriores, en el que la función escalonada de cuantificación transcurre de manera plana por encima del valor de información umbral, de manera que los valores de audio filtrados superiores al valor de información umbral se cuantifican en un valor escalonado de cuantificación máximo.
9. Procedimiento para cuantificar una señal de información de una secuencia de valores de información, siendo la señal de información una señal de audio y siendo los valores de información valores de audio, con las etapas siguientes:
\quad
filtrar de manera selectiva en frecuencia valores de audio, para obtener una secuencia de valores de audio filtrados;
\quad
cuantificar los valores de audio filtrados, para obtener una secuencia de valores de audio cuantificados, por medio de una función escalonada de cuantificación, que representa los valores de audio filtrados con respecto a los valores de audio cuantificados y cuya evolución por debajo de un valor de información umbral es más inclinada que por encima del valor de información umbral;
\quad
determinar un umbral de escucha para un bloque de valores de audio; y
\quad
calcular una versión de una parametrización de un filtro parametrizable, de manera que su función de transmisión corresponde aproximadamente a la inversa de la magnitud del primer umbral de escucha,
presentando la etapa de filtrar de manera selectiva en frecuencia la siguiente etapa:
\quad
filtrar un bloque predeterminado de valores de audio de la secuencia de valores de audio con el filtro parametrizable utilizando una parametrización predeterminada, que de una manera predeterminada depende de la versión de la parametrización, para obtener un bloque de los valores de audio filtrados.
10. Programa informático con un código de programa adaptado para realizar el procedimiento según la reivindicación 9, cuando el programa informático se ejecuta en un ordenador.
ES05715289T 2004-02-13 2005-02-10 Procedimiento y dispositivo para cuantificar una señal de informacion. Expired - Lifetime ES2294685T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102004007184A DE102004007184B3 (de) 2004-02-13 2004-02-13 Verfahren und Vorrichtung zum Quantisieren eines Informationssignals
DE102004007184 2004-02-13

Publications (1)

Publication Number Publication Date
ES2294685T3 true ES2294685T3 (es) 2008-04-01

Family

ID=34853461

Family Applications (1)

Application Number Title Priority Date Filing Date
ES05715289T Expired - Lifetime ES2294685T3 (es) 2004-02-13 2005-02-10 Procedimiento y dispositivo para cuantificar una señal de informacion.

Country Status (15)

Country Link
US (1) US7464027B2 (es)
EP (1) EP1697929B1 (es)
JP (1) JP4444295B2 (es)
KR (1) KR100813193B1 (es)
CN (1) CN1918630B (es)
AT (1) ATE377243T1 (es)
AU (1) AU2005213767B2 (es)
BR (1) BRPI0506627B1 (es)
CA (1) CA2555639C (es)
DE (2) DE102004007184B3 (es)
ES (1) ES2294685T3 (es)
IL (1) IL177164A (es)
NO (1) NO337836B1 (es)
RU (1) RU2337413C2 (es)
WO (1) WO2005078703A1 (es)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004009955B3 (de) 2004-03-01 2005-08-11 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Ermitteln einer Quantisierer-Schrittweite
US7627481B1 (en) * 2005-04-19 2009-12-01 Apple Inc. Adapting masking thresholds for encoding a low frequency transient signal in audio data
JP4640020B2 (ja) * 2005-07-29 2011-03-02 ソニー株式会社 音声符号化装置及び方法、並びに音声復号装置及び方法
EP1852848A1 (en) * 2006-05-05 2007-11-07 Deutsche Thomson-Brandt GmbH Method and apparatus for lossless encoding of a source signal using a lossy encoded data stream and a lossless extension data stream
DE102006022346B4 (de) * 2006-05-12 2008-02-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Informationssignalcodierung
EP2122615B1 (en) * 2006-10-20 2011-05-11 Dolby Sweden AB Apparatus and method for encoding an information signal
US7823092B1 (en) * 2007-11-23 2010-10-26 Altera Corporation Method and apparatus for implementing a parameterizable filter block with an electronic design automation tool
EP2830054A1 (en) 2013-07-22 2015-01-28 Fraunhofer Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder, audio decoder and related methods using two-channel processing within an intelligent gap filling framework
WO2016013164A1 (ja) * 2014-07-25 2016-01-28 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 音響信号符号化装置、音響信号復号装置、音響信号符号化方法および音響信号復号方法
DE102014220687A1 (de) * 2014-10-13 2016-04-14 Continental Automotive Gmbh Kommunikationsvorrichtung für ein Fahrzeug und Verfahren zum Kommunizieren
WO2022074007A1 (en) 2020-10-06 2022-04-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Arithmetic encoder for arithmetically encoding and arithmetic decoder for arithmetically decoding a sequence of information values, methods for arithmetically encoding and decoding a sequence of information values and computer program for implementing these methods
RU2754497C1 (ru) * 2020-11-17 2021-09-02 федеральное государственное автономное образовательное учреждение высшего образования "Казанский (Приволжский) федеральный университет" (ФГАОУ ВО КФУ) Способ передачи речевых файлов по зашумленному каналу и устройство для его реализации

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3506912A1 (de) 1985-02-27 1986-08-28 Telefunken Fernseh Und Rundfunk Gmbh, 3000 Hannover Verfahren zur uebertragung eines audiosignals
DE3820038A1 (de) * 1988-06-13 1989-12-14 Ant Nachrichtentech Verfahren zur aufbereitung und uebertragung einer bildsequenz
DE3820037A1 (de) 1988-06-13 1989-12-14 Ant Nachrichtentech Bildcodierverfahren und einrichtung
JP3186290B2 (ja) * 1993-01-20 2001-07-11 ソニー株式会社 符号化方法、符号化装置、復号化装置及び記録媒体
US5581653A (en) 1993-08-31 1996-12-03 Dolby Laboratories Licensing Corporation Low bit-rate high-resolution spectral envelope coding for audio encoder and decoder
DE19537338C2 (de) 1995-10-06 2003-05-22 Fraunhofer Ges Forschung Verfahren und Vorrichtung zum Codieren von Audiosignalen
GB2307833B (en) * 1995-12-01 2000-06-07 Geco As A data compression method and apparatus for seismic data
DE69724819D1 (de) * 1996-07-05 2003-10-16 Univ Manchester Sprachkodier- und dekodiersystem
US6370477B1 (en) 1996-11-22 2002-04-09 Schlumberger Technology Corporation Compression method and apparatus for seismic data
US6131084A (en) 1997-03-14 2000-10-10 Digital Voice Systems, Inc. Dual subframe quantization of spectral magnitudes
KR100335609B1 (ko) 1997-11-20 2002-10-04 삼성전자 주식회사 비트율조절이가능한오디오부호화/복호화방법및장치
US6195633B1 (en) * 1998-09-09 2001-02-27 Sony Corporation System and method for efficiently implementing a masking function in a psycho-acoustic modeler
RU2144222C1 (ru) * 1998-12-30 2000-01-10 Гусихин Артур Владимирович Способ сжатия звуковой информации и система для его реализации
KR100440896B1 (ko) * 1998-12-30 2004-09-18 주식회사 대우일렉트로닉스 양자화복호화장치
AU771454B2 (en) * 1999-04-16 2004-03-25 Dolby Laboratories Licensing Corporation Using gain-adaptive quantization and non-uniform symbol lengths for audio coding
US6370502B1 (en) * 1999-05-27 2002-04-09 America Online, Inc. Method and system for reduction of quantization-induced block-discontinuities and general purpose audio codec
US6775587B1 (en) 1999-10-30 2004-08-10 Stmicroelectronics Asia Pacific Pte Ltd. Method of encoding frequency coefficients in an AC-3 encoder
US7110953B1 (en) * 2000-06-02 2006-09-19 Agere Systems Inc. Perceptual coding of audio signals using separated irrelevancy reduction and redundancy reduction
WO2002080573A1 (fr) * 2001-03-28 2002-10-10 Sony Corporation Appareil, procede, programme de quantification et support d'enregistrement
DE10217297A1 (de) * 2002-04-18 2003-11-06 Fraunhofer Ges Forschung Vorrichtung und Verfahren zum Codieren eines zeitdiskreten Audiosignals und Vorrichtung und Verfahren zum Decodieren von codierten Audiodaten
CA2388352A1 (en) * 2002-05-31 2003-11-30 Voiceage Corporation A method and device for frequency-selective pitch enhancement of synthesized speed

Also Published As

Publication number Publication date
CN1918630B (zh) 2010-04-14
AU2005213767B2 (en) 2008-04-10
JP2007522509A (ja) 2007-08-09
US7464027B2 (en) 2008-12-09
IL177164A0 (en) 2006-12-10
NO20064091L (no) 2006-11-10
CA2555639A1 (en) 2005-08-25
DE502005001821D1 (de) 2007-12-13
RU2337413C2 (ru) 2008-10-27
AU2005213767A1 (en) 2005-08-25
NO337836B1 (no) 2016-06-27
EP1697929B1 (de) 2007-10-31
HK1093814A1 (en) 2007-03-09
DE102004007184B3 (de) 2005-09-22
IL177164A (en) 2010-11-30
BRPI0506627A (pt) 2007-05-02
US20070043557A1 (en) 2007-02-22
ATE377243T1 (de) 2007-11-15
RU2006132742A (ru) 2008-03-20
BRPI0506627B1 (pt) 2018-10-09
KR20060113999A (ko) 2006-11-03
EP1697929A1 (de) 2006-09-06
WO2005078703A1 (de) 2005-08-25
JP4444295B2 (ja) 2010-03-31
CA2555639C (en) 2012-07-10
KR100813193B1 (ko) 2008-03-13
CN1918630A (zh) 2007-02-21

Similar Documents

Publication Publication Date Title
ES2300975T3 (es) Codificacion de audio.
ES2294685T3 (es) Procedimiento y dispositivo para cuantificar una señal de informacion.
TWI451402B (zh) 音訊信號解碼器、音訊信號編碼器、編碼多聲道音訊信號表現型態、方法及電腦程式
RU2752520C1 (ru) Управление полосой частот в кодерах и/или декодерах
ES2331889T3 (es) Codificacion de audio.
WO2019037714A1 (zh) 立体声信号的编码方法和编码装置
JP2002182695A (ja) 高能率符号化方法及び装置
MXPA06009144A (es) Codificacion de audio
MXPA06009146A (es) Codificacion de audio
MXPA06009110A (es) Metodo y dispositivo para cuantificar una señal de informacion
HK1094079B (en) Audio encoding