ES2704742T3 - Descodificación de una señal acústica - Google Patents

Descodificación de una señal acústica Download PDF

Info

Publication number
ES2704742T3
ES2704742T3 ES16195433T ES16195433T ES2704742T3 ES 2704742 T3 ES2704742 T3 ES 2704742T3 ES 16195433 T ES16195433 T ES 16195433T ES 16195433 T ES16195433 T ES 16195433T ES 2704742 T3 ES2704742 T3 ES 2704742T3
Authority
ES
Spain
Prior art keywords
values
error
samples
decoded
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES16195433T
Other languages
English (en)
Inventor
Takehiro Moriya
Noboru Harada
Yutaka Kamamoto
Yusuke Hiwasaki
Masahiro Fukui
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Application granted granted Critical
Publication of ES2704742T3 publication Critical patent/ES2704742T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/167Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/038Speech enhancement, e.g. noise reduction or echo cancellation using band spreading techniques
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/0017Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0212Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/035Scalar quantisation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/038Vector quantisation, e.g. TwinVQ audio

Abstract

Un método de descodificación para descodificar un código de entrada formado por un número predeterminado de bits, comprendiendo el método de descodificación: una etapa de descodificación para la descodificación de un código de longitud variable incluido en el código de entrada, para generar una secuencia de números enteros; una etapa de descodificación de error para la descodificación de un código de error incluido en el código de entrada, estando el código de error formado por el número U de bits en exceso obtenido al restar el número de bits del código de longitud variable del número predeterminado de bits, para generar una secuencia de valores de error; una etapa de adición para sumar cada muestra de la secuencia de números enteros y una de cada muestra correspondiente de la secuencia de valores de error, para generar una secuencia de muestras del dominio de la frecuencia, y una etapa de conversión de la secuencia de muestras del dominio de la frecuencia en una señal acústica, en donde la etapa de descodificación de error es una etapa de: (A) cuando el número U de bits en exceso es igual o menor que el número T de muestras cuyos números enteros descodificados correspondientes no son 0 entre las muestras que constituyen la secuencia de números enteros, seleccionar U muestras de las T muestras cuyos números enteros descodificados correspondientes no son 0, en orden descendente de valores correspondientes de envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tengan la misma relación de magnitud que cualesquiera de esos valores, y en orden ascendente de frecuencia si los valores correspondientes de la envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tengan la misma relación de magnitud que cualesquiera de esos valores, son los mismos, y para cada una de las muestras seleccionadas, descodificar un código de un bit incluido en el código de error para obtener información que exprese si la muestra es positiva o negativa, sumar la información positiva-negativa obtenida a un valor absoluto 0,25 de un valor reconstruido, y obtener el valor reconstruido +0,25 o -0,25 como valor de error descodificado correspondiente a dicha muestra seleccionada; (B) cuando el número U de bits en exceso es mayor que el número T de muestras cuyos números enteros descodificados correspondientes no son 0 y es igual o menor que una suma T+S del número T de muestras cuyos números enteros descodificados correspondientes no son 0 y el número S de muestras cuyos números enteros descodificados correspondientes son 0, para cada una de las muestras cuyos números enteros descodificados correspondientes no son 0, descodificar un código de un bit incluido en el código de error para obtener información indicativa de si la muestra es positiva o negativa, sumar la información positiva-negativa obtenida a un valor absoluto 0,25 de un valor reconstruido, y obtener el valor reconstruido +0,25 o -0,25 como valor de error descodificado correspondiente a dicha muestra entre las muestras cuyos números enteros descodificados correspondientes no son 0, para cada una de U-T muestras cuyos números enteros descodificados correspondientes son 0, en orden descendente de valores correspondientes de envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera deseos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tienen la misma relación de magnitud que cualesquiera de esos valores, y en orden ascendente de frecuencia si los valores correspondientes de envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tienen la misma relación de magnitud que cualesquiera de esos valores son iguales, descodificar un código de un bit incluido en el código de error, para obtener información que exprese si la muestra es positiva o negativa, sumar la información positiva-negativa obtenida a un valor absoluto A de un valor reconstruido, que es un valor positivo preestablecido más pequeño que 0,25, y obtener el valor reconstruido +A o -A como un valor de error descodificado correspondiente a dicha muestra entre las U-T muestras, o para una pluralidad de muestras cuyos números enteros descodificados correspondientes son 0, en orden descendiente de valores correspondientes de envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tienen la misma relación de magnitud que cualesquiera de esos valores, y en orden ascendente de frecuencia si los valores correspondientes de la envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquie4ra de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tienen la misma relación de magnitud que cualesquiera de esos valores son iguales, cuantificar a la inversa de vector (I-T) códigos de bits incluidos en los códigos de error en el código de entrada, para obtener una secuencia de valores de error descodificados correspondientes, y obtener cada valor de los valores de error descodificados obtenidos como un valor de error descodificado correspondiente a una muestra respectiva entre la pluralidad de muestras, y (C) cuando el número U de bits en exceso es mayor que la suma T+S del número T de muestras cuyos números enteros descodificados correspondientes no son 0 y el número S de muestras cuyos números enteros descodificados correspondientes son 0, para cada una de las muestras cuyos números enteros descodificados correspondientes no son 0, descodificar un código de primer redondeo de un bit incluido en el código de error para obtener información positiva-negativa, sumar la información positiva-negativa obtenida a un valor absoluto 0,25 de un valor reconstruido, establecer el valor reconstruido +0,25 o -0,25 como error de cuantificación descodificado de primer redondeo, descodificar un código de segundo redondeo de un bit incluido en el código de error para obtener información positiva-negativa, sumar la información positiva-negativa obtenida a un valor absoluto 0,125 del valor reconstruido, establecer el valor reconstruido +0,125 o - 0,125 como un error de cuantificación descodificado de segundo redondeo, y sumar el error de cuantificación descodificado de primer redondeo y el error de cuantificación descodificado de segundo redondeo para obtener un valor de error descodificado correspondiente a dicha muestra entre las muestras cuyos números enteros descodificados correspondientes no son 0, para cada una de las muestras cuyos números enteros descodificados correspondientes son 0, descodificar un código de primer redondeo de un bit incluido en el código de error para obtener información positiva-negativa, sumar la información positiva-negativa obtenida a un valor absoluto A del valor reconstruido, el cual es un valor positivo menor que 0,25, establecer el valor reconstruido +A o -A como un error de cuantificación descodificado de primer redondeo, descodificar un código de segundo redondeo de un bit incluido en el código de error de entrada para obtener información positiva-negativa, sumar la información positiva-negativa obtenida a un valor absoluto A/2 del valor reconstruido, establecer el valor reconstruido +A/2 o -A/2 como un error de cuantificación descodificado de segundo redondeo, y sumar el error de cuantificación descodificado de primer redondeo y el error de cuantificación descodificado de segundo redondeo para obtener un valor de error descodificado correspondiente a dicha muestra entre las muestras cuyos números enteros desedificados correspondientes son 0.

Description

DESCRIPCIÓN
Descodificación de una señal acústica
CAMPO TÉCNICO
La presente invención se refiere a una técnica para codificar señales acústicas y a una técnica para descodificar secuencias de código obtenidas mediante la técnica de codificación, y más específicamente, a la codificación de una secuencia de muestra del dominio de la frecuencia, obtenida mediante la conversión de una señal acústica en el dominio de la frecuencia y a la descodificación de la secuencia de muestra codificada.
ANTECEDENTES
La codificación adaptativa de coeficientes de transformada ortogonal en la transformada discreta de Fourier (DFT), en la transformada coseno discreta modificada (MDCT) y similares, es un método conocido de codificación de señales de habla y de señales acústicas que tengan una baja tasa de bits (aproximadamente 10 a 20 kbits/s, por ejemplo). Una técnica estándar AMR-WB+ (banda ancha multi-tasa adaptativa extendida), por ejemplo, tiene un modo de codificación de excitación codificada de transformada (TCX), en el que los coeficientes de DFT son normalizados y cuantificados por vectores en unidades de ocho muestras (se hace referencia a la literatura 1 no de patentes, por ejemplo).La literatura 1 de patentes divulga un códec de audio escalable para codificar una señal de audio de entrada como capa base a una alta relación de compresión, y una o más señales residuales como una capa de mejora de una corriente de bits comprimida, que permite una reconstrucción sin pérdidas, o casi sin pérdidas, de la señal de audio de entrada en la descodificación. Según el códec de audio escalable, un codificador comprime en un modo sin pérdidas datos de coeficientes cuantificados recibidos desde un cuantificador, realizando codificación de nivel de ejecución y codificación de longitud variable de vector.
LITERATURA DE LA TÉCNICA ANTERIOR LITERATURA DE PATENTES
Literatura 1 de patentes: Publicación de solicitud de Patente US núm. 2009/248424 A1
LITERATURA NO DE PATENTES
Literatura 1 no de patentes: ETSI TS 126290 V6.3.0 (2005-06)
SUMARIO DE LA INVENCIÓN PROBLEMAS A SER RESUELTOS POR LA INVENCIÓN
Puesto que AMRE-WB+ y otra codificación basada en TCX no consideran variaciones en las amplitudes de los coeficientes del dominio de la frecuencia causadas por periodicidad, si las amplitudes que varían considerablemente se codifican juntas, la eficacia de la codificación se reduciría. Entre una diversidad de técnicas de cuantificación o codificación basadas en TCX modificada, se va a considerar ahora un caso, por ejemplo, en el que una secuencia de coeficientes de MDCT dispuestos en orden ascendente de frecuencia, siendo los coeficientes valores discretos obtenidos por cuantificación de una señal obtenida al dividir coeficientes por una ganancia, se comprime mediante codificación de entropía de códigos aritméticos y similares. En este caso, una pluralidad de muestras forman un símbolo único (unidad de codificación), y un código que va a ser asignado está controlado adaptativamente dependiendo del símbolo inmediatamente precedente al símbolo de interés. En general, si la amplitud es pequeña, se asigna un código corto, y si la amplitud es grande, se asigna un código largo. Esto reduce el número de bits por trama en general. Si el número de bits que va a ser asignado por trama es fijo, existe una posibilidad de que el número reducido de bits no pueda ser usado de manera eficaz.
En vista de este inconveniente técnico, un objeto de la presente invención consiste en proporcionar técnicas de descodificación que puedan mejorar la calidad de las señales discretas, especialmente la calidad de habla digital o de señales acústicas después de que las mismas hayan sido codificadas a una tasa de bits baja, con una pequeña cantidad de cálculo.
MEDIOS PARA RESOLVER LOS PROBLEMAS
En vista de los problemas mencionados, la presente invención proporciona un método de descodificación, un descodificador y según las reivindicaciones 1 a 3, respectivamente.
EFECTOS DE LA INVENCIÓN
Puesto que los errores se codifican usando el exceso de bits que han sido r ahorrados al realizar codificación de longitud variable de números enteros, incluso aunque el número de bits por trama sea fijo, se puede mejorar la eficacia de codificación, y se puede reducir la distorsión de cuantificación. En otras palabras, puesto que los errores se codifican usando el exceso de bits que han sido ahorrados al realizar codificación de longitud variable de números enteros, y puesto que los errores cuyos números enteros correspondientes no son 0 están codificados con prioridad con el número de bits en exceso (por ejemplo, solamente se codifican errores que corresponden a números enteros que no sean 0 cuando el número de bits en exceso es igual a, o menor que, un número predeterminado), la eficacia de codificación puede mejorar incluso aunque el número de bits por trama sea fijo, y se puede reducir la distorsión de cuantificación.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
La Figura 1 es un diagrama de bloques que ilustra la configuración de un codificador,
La Figura 2 es un diagrama de flujo que ilustra un proceso en el codificador;
La Figura 3 es una vista que ilustra la relación entre un coeficiente de MDCT de normalización ponderada y una envolvente de espectro de potencia;
La Figura 4 es una vista que ilustra un ejemplo de proceso llevado a cabo cuando existen muchos bits en exceso;
La Figura 5 es un diagrama de bloques que ilustra la configuración de un descodificador en una realización de la invención;
La Figura 6 es un diagrama de flujo que ilustra un proceso en el descodificador de la realización.
DESCRIPCIÓN DETALLADA DE LA REALIZACIÓN
Ahora se va a describir una realización de la presente invención con referencia a los dibujos. Los elementos iguales serán indicados mediante los mismos números de referencia, y se omitirá la descripciones redundantes de esos elementos.
Una característica de la codificación consiste en una mejora reducción de la distorsión de codificación en una estructura de cuantificación de una secuencia de muestras del dominio de la frecuencia, derivada de una señal acústica en una trama, que es un intervalo de tiempo predeterminado, mediante codificación de longitud variable de la secuencia de muestras del dominio de la frecuencia tras un alisamiento ponderado y una cuantificación de una señal de error usando el exceso de bits ahorrados por la codificación de longitud variable, con un orden de prioridad determinado. Incluso aunque se asigne un número fijo de bits por trama, se puede obtener la ventaja de la codificación de longitud variable.
Ejemplos de secuencias de muestras del dominio de la frecuencia derivadas de señales acústicas, es decir, secuencias de muestras del dominio de la frecuencia basadas en señales acústicas, incluyen una secuencia de coeficientes de DFT y una secuencia de coeficientes de MDCT que pueden ser obtenidas convirtiendo un habla digital o señal acústica en unidades de tramas desde el dominio del tiempo al dominio de la frecuencia, y una secuencia de coeficientes obtenida aplicando un proceso tal como normalización, ponderación, o cuantificación a la secuencia de coeficientes de DFT o de MDCT. Esta realización va a ser descrita tomando como ejemplo la secuencia de coeficientes de MDCT.
Se va a describir un proceso de codificación, en primer lugar, con referencia a las Figuras 1 a 4.
Según se ha mostrado en la Figura 1, un codificador 1 incluye un convertidor 11 del dominio de la frecuencia, una unidad 12 de análisis de predicción lineal, una unidad 13 de cuantificación y codificación de coeficientes de predicción lineal, una unidad 14 de cálculo de envolvente de espectro de potencia, una unidad 15 de normalización de envolvente ponderada, una unidad 16 de cálculo de ganancia de normalización, un cuantificador 17, una unidad 18 de cálculo de error, una unidad 19 de codificación, y una unidad 110 de codificación de error, por ejemplo. El codificador 1 realiza etapas individuales de un método de codificación ilustrado en la Figura 2. Las etapas del codificador 1 van a ser descritas a continuación.
Convertidor 11 del dominio de la frecuencia
En primer lugar, el convertidor 11 del dominio de la frecuencia convierte un habla digital o una señal acústica de unidades de tramas en una secuencia de coeficientes de MDCT de punto N en el dominio de la frecuencia (etapa S11).
Generalmente hablando, una parte de codificación cuantifica una secuencia de coeficientes de MDCT, codifica la secuencia de coeficientes de MDCT cuantificada, y envía la secuencia de códigos obtenida a una parte de descodificación,, y la parte de descodificación puede reconstruir una secuencia de coeficientes de MDCT cuantificada a partir de la secuencia de códigos, y puede también reconstruir un habla digital o una señal acústica en el dominio del tiempo realizando una transformada inversa de MDCT.
La envolvente de amplitud de los coeficientes de MDCT es aproximadamente la misma que la envolvente de amplitud (envolvente de espectro de potencia) de un espectro de potencia de DFT habitual. Por lo tanto, al asignar información proporcional al valor logarítmico de la envolvente de amplitud, la distorsión de cuantificación (error de cuantificación) de los coeficientes de MDCT puede ser distribuida uniformemente en la totalidad de la banda, se puede reducir la distorsión de cuantificación global, y la información puede ser comprimida. La envolvente de espectro de potencia puede ser estimada eficientemente usando coeficientes de predicción lineal obtenidos mediante análisis de predicción lineal.
El error de cuantificación puede ser controlado asignando adaptativamente un(os) bit(s) de cuantificación por cada coeficiente de MDCT (ajustando la anchura de la etapa de cuantificación tras el alisamiento de amplitud) o determinando un código mediante la realización de ponderación adaptativa por medio de cuantificación de vector ponderada. En la presente memoria se describe un ejemplo del método de cuantificación.
Unidad 12 de análisis de predicción lineal
La unidad 12 de análisis de predicción lineal realiza análisis de predicción lineal del habla digital o la señal acústica en unidades de tramas, y obtiene y presenta a la salida coeficientes de predicción lineal hasta un orden preestablecido (etapa S12).
Unidad 13 de cuantificación y codificación de coeficientes de predicción lineal
La unidad 13 de cuantificación y codificación de coeficientes de predicción lineal obtiene y presenta a la salida códigos correspondientes a los coeficientes de predicción lineal obtenidos por la unidad 12 de análisis de predicción lineal, y coeficientes de predicción lineal cuantificados (etapa S13).
Los coeficientes de predicción lineal pueden ser convertidos en pares espectrales lineales (LPSs): se pueden obtener códigos correspondientes a los LSPs y a los LSPs cuantificados; y los LSPs cuantificados pueden ser convertidos en coeficientes de predicción lineal cuantificados.
Los códigos correspondientes a los coeficientes de predicción lineal, es decir, los códigos de coeficiente de predicción lineal, forman parte de los códigos enviados al descodificador 2.
Unidad 14 de cálculo de envolvente de espectro de potencia
La unidad 14 de cálculo de envolvente de espectro de potencia obtiene una envolvente de espectro de potencia al convertir los coeficientes de predicción lineal cuantificados presentados a la salida por la unidad 13 de cuantificación y codificación de coeficientes de predicción lineal, al dominio de la frecuencia (etapa S14). La envolvente de espectro de potencia obtenida se envía a la unidad 15 de normalización de envolvente ponderada. Cuando es necesario, la envolvente de espectro de potencia se envía a la unidad 110 de codificación de error, según se ha indicado mediante una línea discontinua en la Figura 1.
Los coeficientes individuales W(1) a W(N) de una secuencia de coeficientes de envolvente del espectro de potencia correspondientes a los coeficientes individuales X(1) a X(n) en la secuencia de coeficientes de MDCT del punto N, pueden ser obtenidos convirtiendo los coeficientes de predicción lineal cuantificados al dominio de la frecuencia. Por ejemplo, mediante el proceso auto-regresivo de orden p°, el cual es un modelo todo polos, se expresa una señal temporal y(t) de tiempo t mediante la Fórmula (1) con sus propios valores pasados y(t-1) a y(t-p) de retorno al punto p, un residuo de predicción e(t), y coeficientes de predicción lineal cuantificados a a ap. Aquí, cada coeficiente W(n) [1< n < N] en la secuencia de coeficientes de envolvente de espectro de potencia está expresado por la Fórmula (2), donde exp() es una función exponencial cuya base es el número de Napier (= e), j es la unidad imaginaria, y o2 es la energía residual de predicción.
Figure imgf000004_0001
El orden p puede ser idéntico al orden de los coeficientes de predicción lineal cuantificados presentados a la salida por la unidad 13 de cuantificación y codificación de coeficientes de predicción lineal, o puede ser más pequeño que el orden de los coeficientes de predicción lineal cuantificados presentados a la salida por la unidad 13 de cuantificación y codificación de coeficientes de predicción lineal.
La unidad 14 de cálculo de envolvente de espectro de potencia puede calcular valores aproximados de la envolvente de espectro de potencia o estimaciones de la envolvente de espectro de potencia en vez de valores de la envolvente de espectro de potencia. Los valores de la envolvente de espectro de potencia son los coeficientes W(1) a W(N) de la secuencia de coeficientes de envolvente de espectro de potencia.
Cuando se calculan valores aproximados de la envolvente de espectro de potencia, por ejemplo, la unidad 14 de cálculo de envolvente de espectro de potencia obtiene los coeficientes W(n), donde 1 < n < N/4, mediante la Fórmula (2), y presenta a la salida N W'(n)s dados por W'(4n - 3) = W'(4n - 2) = W'(4n - 1) = W'(4n) = W(n) [1 < n < N/4], como valores aproximados de la envolvente de espectro de potencia.
Unidad 15 de normalización de envolvente ponderada
La unidad 15 de normalización de envolvente ponderada normaliza los coeficientes de la secuencia de coeficientes de MDCT con la envolvente de espectro de potencia presentada a la salida por la unidad 14 de cálculo de envolvente de espectro de potencia (etapa S15). Aquí, para implementar cuantificación que reduce la distorsión perceptualmente, la unidad 15 de normalización de envolvente ponderada normaliza los coeficientes de la secuencia de coeficientes de MDCT en unidades de tramas usando los coeficientes de envolvente de espectro ponderados obtenidos alisando la secuencia de valores de envolvente de espectro de potencia o su secuencia de raíz cuadrada a lo largo del eje de la frecuencia. Como resultado, se obtienen los coeficientes x(1) a x(N) de una secuencia de coeficientes de MDCT de normalización ponderada basados en trama. La secuencia de coeficientes de MDCT de normalización ponderada se envía a la unidad 16 de cálculo de ganancia de normalización, al cuantificador 17, y a la unidad 18 de cálculo de error. La secuencia de coeficientes de MDCT de normalización ponderada tiene en general una amplitud bastante grande en la región de baja frecuencia, y tiene una estructura fina resultante del período de tono, pero el gradiente y la falta de uniformidad de la amplitud no son grandes en comparación con la secuencia original de coeficientes de MDCT.
Unidad 16 de cálculo de ganancia de normalización
A continuación, la unidad 16 de cálculo de ganancia de normalización determina la anchura de la etapa de cuantificación usando la suma de valores de amplitud o valores de energía a través de la banda de frecuencia completa de modo que los coeficientes x(1) a x(N) de la secuencia de coeficientes de MDCT de normalización ponderada pueden ser cuantificados con un número total dado de bits en tramas y obtener un coeficiente g (en lo que sigue, ganancia) mediante el que cada coeficiente de la secuencia de coeficientes de MDCT de normalización ponderada ha de ser dividido para proporcionar la anchura de la etapa de cuantificación (etapa S16). La información de ganancia que indica esta ganancia forma parte de los códigos enviados al descodificador 2.
Cuantificador 17
El cuantificador 17 cuantifica los coeficientes x(1) a x(N) de la secuencia de coeficientes de MDCT de normalización ponderada en tramas con la anchura de etapa de cuantificación determinada en la etapa 16 (etapa S17). En otras palabras, un número entero u(n) obtenido por redondeo de x(n)/g hasta el número entero más próximo, siendo x(n)/g obtenido al dividir el coeficiente x(n) [1 < n < N] de la secuencia de coeficientes de MDCT de normalización ponderada por la ganancia g, sirve como coeficiente de MDCT cuantificado. La secuencia de coeficientes de MDCT cuantificada en tramas se envía a la unidad 18 de cálculo de error y a la unidad 19 de codificación. Se puede usar un valor obtenido por redondeo ascendente o descendente de la fracción x(n)/g como número entero u(n). El número entero u(n) puede ser un valor correspondiente a x(n)/g.
Una secuencia de x(n)/g corresponde a una secuencia de muestras en el dominio de la frecuencia en las reivindicaciones. La secuencia de x(n)/g es un ejemplo de una secuencia de muestras en el dominio de la frecuencia. El coeficiente de MDCT cuantificado, el cual es el número entero u(n), corresponde a un número entero correspondiente al valor de cada muestra en la secuencia de muestras en el dominio de la frecuencia.
Unidad 18 de cálculo de error
La secuencia de coeficientes de MDCT de normalización ponderada obtenida en la etapa S15, la ganancia g obtenida en la etapa S16, y la secuencia de coeficientes de MDCT cuantificada basada en trama obtenida en la etapa S17, se introducen en la unidad 18 de cálculo de error. El error resultante de la cuantificación viene dado por r(n) = x(n)/g - u(n) [1 < n < N]. En otras palabras, un valor obtenido restando el coeficiente u(n) de MDCT cuantificado correspondiente a cada coeficiente x(n) de la secuencia de coeficientes de MDCT de normalización ponderada de un valor obtenido al dividir el coeficiente x(n) por la ganancia g, sirve como error r(n) de cuantificación correspondiente al coeficiente x(n).
Una secuencia de errores r(n) de cuantificación corresponde a la secuencia de errores de las reivindicaciones.
Unidad 19 de codificación
A continuación, la unidad de codificación 19 codifica la secuencia de coeficientes de MDCT cuantificados (una secuencia de los coeficientes u(n) de MDCT cuantificados) presentados a la salida por el cuantificador 17 en tramas, y presenta a la salida los códigos obtenidos y el número de bits de los códigos (etapa S19).
La unidad 19 de codificación puede reducir la cantidad media de código empleando codificación de longitud variable, la cual, por ejemplo, asigna códigos que tienen longitudes dependientes de las frecuencias de los valores de la secuencia de coeficientes de MDCT cuantificados. Los códigos de longitud variable incluyen los códigos de Rice, códigos de Huffman, códigos aritméticos, y códigos de longitud de ejecución.
La codificación de Rice y la codificación por longitud de ejecución, mostradas como ejemplos en la presente memoria, son ampliamente conocidas y no necesitan ser descritas aquí (se hace referencia a la Literatura de referencia 1, por ejemplo).
Literatura de referencia 1: David Salomon, “Data Compression: The Complete Reference”, 3a edición, Springer-Verlag, ISBN-10: 0-387-40697-2, 2004.
Los códigos de longitud variable generados pasan a formar parte de los códigos enviados al descodificador 2. El método de codificación de longitud variable que ha sido ejecutado se indica mediante información de selección. La información de selección puede ser enviada al descodificador 2.
Unidad 110 de codificación de error
Como resultado de la codificación de longitud variable de los coeficientes u(1) a u(N), que son números enteros, de la secuencia de coeficientes de MDCT cuantificados, se obtiene el número de bits necesarios para expresar la secuencia de coeficientes de MDCT cuantificados y se obtiene el número de bits en exceso producidos por compresión en codificación de longitud variable, a partir del número predeterminado de bits. Si los bits pueden ser manipulados entre varias tramas, el exceso de bits puede ser usado de forma efectiva en las tramas posteriores. Si se asigna un número fijo de bits en cada trama, el exceso de bits podría ser usado de forma efectiva para codificar otro elemento, por otra parte, reducir el número medio de bits por codificación de longitud variable no tendría sentido.
La unidad 110 de codificación de error codifica el error de cuantificación r(n) = x(n)/g - u(n) usando todos, o una parte de los bits en exceso. Usar todos o una parte de los bits en exceso será expresado como usar los bits en exceso, por motivos de brevedad. Los bits en exceso que no sean usados en la codificación del error r(n) de cuantificación se usan otros propósitos, tal como corregir la ganancia g. El error r(n) de cuantificación se genera por redondeo de fracciones formadas por cuantificación, y se distribuye de manera casi uniforme en la gama de -0,5 a 0,5. Para codificar todas las muestras (tal como 256 puntos) mediante un número dado de bits, se determina un método de codificación y una regla que especifica las posiciones de las muestras objetivo, usando el exceso de bits. El objetivo consiste en minimizar el error E = £ nEN(r(n) -q(n))2 en la trama completa, donde q(n) es una secuencia que va a ser reconstruida con el exceso de bits.
La unidad 110 de codificación de error calcula el número de bits en exceso restando el número de bits en los códigos de longitud variable presentados a la salida por la unidad 19 de codificación del número de bits preestablecido como cantidad de código de la secuencia de coeficientes de MDCT de normalización ponderada. A continuación, la secuencia de errores de cuantificación obtenida por la unidad 18 de cálculo de error, se codifica con el número de bits en exceso, y los códigos de error obtenidos se presentan a la salida (etapa S110). Los códigos de error forman parte de los códigos enviados al descodificador 2.
[Caso específico 1 de codificación de error]
Cuando se codifican errores de cuantificación, el vector de cuantificación debe ser aplicado a una pluralidad de muestras conjuntamente. En general, sin embargo, esto requiere que se acumule una secuencia de códigos en una tabla (libro de códigos) y requiere el cálculo de la distancia entre la entrada y la secuencia de códigos, incrementando el tamaño de la memoria y la cantidad de cálculo. Además, se necesitarán libros de códigos separados para manejar un número cualquiera de bits, y la configuración podría resultar complicada.
A continuación se va a describir la operación en el caso específico 1.
Un libro de códigos para cada posible número de bits en exceso se almacena de antemano en una unidad de almacenaje de libro de códigos en la unidad 110 de codificación de error. Cada libro de códigos almacena, por anticipado, tantos vectores como sea el número de muestras en la secuencia de errores de cuantificación que puedan ser expresadas de número de bits en exceso correspondiente al libro de códigos, asociadas a códigos correspondientes a los vectores.
La unidad 110 de codificación de error calcula el número de bits en exceso, selecciona un libro de códigos correspondiente al número de bits en exceso calculado a partir del libro de códigos almacenado en la unidad de almacenaje de libro de códigos, y realiza cuantificación de vector usando el libro de códigos seleccionado. El proceso de codificación tras la selección del libro de códigos es el mismo que en la cuantificación de vector general. Como códigos de error, la unidad 110 de codificación de error presenta a la salida códigos correspondientes a vectores que minimizan las distancias entre los vectores del libro de códigos seleccionado y la secuencia de errores de cuantificación de entrada, o que minimizan la correlación entre los mismos.
En la descripción proporcionada en lo que antecede, el número de vectores almacenados en el libro de códigos es el mismo que el número de muestras en la secuencia de errores de cuantificación. El número de vectores de muestra almacenados en el libro de códigos puede ser también un submúltiplo entero del número de muestras de la secuencia de errores de cuantificación; la secuencia de errores de cuantificación puede ser cuantificada por vector para cada grupo de una pluralidad de muestras; y, se puede usar una pluralidad de los códigos obtenidos como códigos de error.
[Caso específico 2 de unidad 110 de codificación de error]
Cuando las muestras de error de cuantificación incluidas en la secuencia de errores de cuantificación son codificadas una cada vez, se determina el orden de prioridad de las muestras de error de cuantificación incluidas en la secuencia de errores de cuantificación, y las muestras de error de cuantificación que puedan ser codificadas con el exceso de bits, se codifican por orden de prioridad descendente. Por ejemplo, las muestras de error de cuantificación se codifican en orden descendente de valor o energía absolutos.
El orden de prioridad puede ser determinado con referencia a los valores de la envolvente de espectro de potencia, por ejemplo. Como valores de la envolvente de espectro de potencia, se pueden usar los valores aproximados de la envolvente de espectro de potencia, las estimaciones de la envolvente de espectro de potencia, los valores obtenidos por alisamiento de cualquiera de esos valores a lo largo del eje de la frecuencia, los valores medios de una pluralidad de muestras de cualquiera de esos valores, o valores que tengan la misma relación de magnitud que al menos uno de esos valores, por supuesto, pero el uso de los valores de la envolvente de espectro de potencia va a ser descrito en lo que sigue. Según ilustra el ejemplo mostrado en la Figura 3, la distorsión perceptual en una señal acústica, tal como sonido de voz o de música, se puede reducir llevando a cabo una tendencia en las amplitudes de la secuencia de muestras que van a ser cuantificadas en el dominio de la frecuencia (correspondientes a la envolvente de espectro tras el alisamiento ponderado de la Figura 3) más cercana a la envolvente de espectro de potencia de la señal acústica (correspondiente a la envolvente espectral del sonido original en la Figura 3). Si los valores de la envolvente de espectro de potencia vuelven a ser grandes, los coeficientes x(n) correspondientes de MDCT de normalización ponderada podrían también ser grandes. Incluso aunque los coeficientes x(n) de MDCT de normalización ponderada sean grandes, el error r(n) de cuantificación cae dentro de la gama de -0,5 a 0,5.
Si los coeficientes x(n) de MDCT de normalización ponderada son muy pequeños, en otras palabras, si los coeficientes son más pequeños que la mitad de la anchura de la etapa, los valores obtenidos al dividir los coeficientes x(n) de MDCT de normalización ponderada por la ganancia g son 0, y los errores r(n) de cuantificación son bastante más pequeños de 0,5. Si los valores de la envolvente de espectro de frecuencia son bastante pequeños, la codificación de los errores r(n) de cuantificación, así como los coeficientes x(n) de MDCT de normalización ponderada podrían producir un efecto pequeño sobre la calidad perceptual, y podrían ser excluidos de los elementos a ser codificados en la unidad 110 de codificación de error. Si la envolvente de espectro de potencia es demasiado grande, es imposible distinguir una muestra que tenga un error de cuantificación grande de las otras muestras. En ese caso, las muestras r(n) de error de cuantificación se codifican usando un bit cada una, solamente para el número de muestras de error de cuantificación correspondientes al número de bits en exceso, en orden ascendente de la posición de la muestra en el eje de la frecuencia (orden ascendente de frecuencia) o en orden descendente del valor de la envolvente de espectro de potencia. Simplemente excluir valores de la envolvente de espectro de potencia hasta un cierto nivel, podría ser suficiente.
En la codificación de una secuencia de errores de cuantificación, se ha supuesto que una muestra del error de
0,5
cuantificación es r(n) = x, y su distorsión causada por la cuantificación es E = I f(x)(x - p)2dx, donde f(x) es una
función de distribución de probabilidad, y p es el valor absoluto de un valor reconstruido por el descodificador. Para minimizar la distorsión E causada por la cuantificación, p deberá ser establecido de modo que dE/dp = 0. Es decir, p deberá ser el centroide de la distribución de probabilidad de los errores r(n) de cuantificación.
Si el valor obtenido al dividir el coeficiente x(n) de MDCT de normalización ponderada por la ganancia g y redondear el resultado hasta un número entero, es decir, el valor del coeficiente u(n) de MDCT cuantificado correspondiente no es '0', la distribución de los errores r(n) de cuantificación es virtualmente uniforme, y se puede establecer que p=0,25.
Si el valor obtenido al dividir el coeficiente x(n) de MDCT de normalización ponderada por la ganancia g y redondear el resultado hasta un número entero, es decir, el valor del coeficiente u(n) de MDCT cuantificado correspondiente es '0', la distribución de los errores r(n) de cuantificación tiende a converger a '0', y el centroide de la distribución podría ser usado como valor de p.
En ese caso, se puede seleccionar una muestra de error de cuantificación a ser codificada para cada conjunto de una pluralidad de muestras de error de cuantificación cuyos coeficientes u(n) de MDCT cuantificados correspondientes sean '0', y la posición de la muestra de error de cuantificación seleccionada en el conjunto de muestras de error de cuantificación y el valor de la muestra de error de cuantificación seleccionada pueden ser codificados y enviados como código de error al descodificador 2. Por ejemplo, entre cuatro muestras de error de cuantificación cuyos coeficientes u(n) de MDCT cuantificados correspondientes son '0', se selecciona una muestra de error de cuantificación que tenga el valor absoluto más grande; el valor de la muestra de error de cuantificación seleccionada se cuantifica (se determina si es positivo o negativo, por ejemplo), y esta información se envía como un solo bit; y, la posición de la muestra de error de cuantificación seleccionada se envía como dos bits. Los códigos de las muestras de error de cuantificación que no hayan sido seleccionadas, no se envían al descodificador 2, y los valores correspondientes descodificados en el descodificador 2 son '0'. En general, se necesitan q bits para informar al descodificador de la posición de la muestra que haya sido seleccionada entre 2q muestras.
Aquí, |j deberá ser el valor del centroide de la distribución de muestreas que tienen los valores absolutos más grandes de errores de cuantificación en los conjuntos de la pluralidad de muestras.
Con muchos bits en exceso, las muestras dispersas pueden ser expresadas combinando una pluralidad de secuencias, según se muestra en la Figura 4. En una primera secuencia, se establece un pulso (que requiere dos bits) positivo o negativo en solamente una de las cuatro posiciones, y las otras posiciones pueden ser establecidas en cero. Se necesitan tres bits para expresar la primera secuencia. Las secuencias segunda a quinta pueden ser codificadas de la misma manera, con un total de 15 bits.
La codificación puede ser llevada a cabo según se describe a continuación, donde el número de bits en exceso es U, el número de muestras de error de cuantificación cuyos coeficientes u(n) de MDCT cuantificados correspondientes que no son '0' entre las muestras de error de cuantificación que constituyen la secuencia de errores de cuantificación es T, y el número de muestras de error de cuantificación cuyos coeficientes u(n) de MDCT cuantificados correspondientes sean '0', es S.
(A) U < T
La unidad 110 de codificación de error selecciona U muestras de error de cuantificación entre T muestras de error de cuantificación cuyos coeficientes u(n) de MDCT cuantificados correspondientes no sean '0' en la secuencia de errores de cuantificación, por orden descendente del valor correspondiente de la envolvente de espectro de potencia; genera un código de un bit que sirve como información que expresa si la muestra de error de cuantificación es positiva o negativa para cada una de las muestras de error de cuantificación seleccionadas; y, presenta a la salida los U bits de códigos generados, como códigos de error. Si los valores correspondientes de la envolvente de espectro de potencia son iguales, las muestran deberán ser seleccionadas, por ejemplo, conforme a otra regla previamente establecida, tal como la selección de muestras de error de cuantificación en orden ascendente de la posición en el eje de la frecuencia (muestras de error de cuantificación en orden ascendente de frecuencia).
(B) T < U < T+S
La unidad 110 de codificación de error genera un código de un bit que sirve como información que expresa si la muestra de error de cuantificación es positiva o negativa, para cada una de las T muestras de error de cuantificación cuyos coeficientes u(n) de MDCT cuantificados correspondientes no son '0' en la secuencia de errores de cuantificación.
La unidad 110 de codificación de error codifica también muestras de error de cuantificación cuyos coeficientes u(n) de MDCT cuantificados correspondientes son '0' en la secuencia de errores de cuantificación, con U-T bits. Si existe una pluralidad de muestras de error de cuantificación cuyos coeficientes u(n) de MDCT cuantificados correspondientes son '0', éstos se codifican en el orden descendente del valor correspondiente de la envolvente de espectro de potencia. Específicamente, se genera un código de un bit que expresa si la muestra de error de cuantificación es positiva o negativa, por cada una de las U-T muestras entre las muestras de error de cuantificación cuyos coeficientes u(n) de MDCT cuantificados correspondientes son '0', en orden descendente del valor correspondiente de la envolvente de espectro de potencia. Alternativamente, se extrae una pluralidad de muestras de error de cuantificación en el orden descendente del valor correspondiente de la envolvente de espectro de potencia a partir de las muestras de error de cuantificación cuyos coeficientes u(n) de MDCT cuantificados correspondientes son '0' y son cuantificadas por vector en cada grupo de la pluralidad de muestras de error de cuantificación para generar U-T bits de códigos. Si los valores correspondientes de la envolvente de espectro de potencia son iguales, las muestras son seleccionadas, por ejemplo conforme a una regla preestablecida, tal como la selección de muestras de error de cuantificación en el orden ascendente de la posición sobre el eje de la frecuencia (muestras de error de cuantificación en orden ascendente de frecuencia).
La unidad 110 de codificación de error presenta además a la salida una combinación de los códigos de U bits y de los U-T bits generados, como códigos de error.
(C)T+S < U
La unidad 110 de codificación de error genera un código de primer redondeo de un bit que expresa si la muestra de error de cuantificación es positiva o negativa, por cada una de las muestras de error de cuantificación incluidas en la secuencia de errores de cuantificación.
La unidad 110 de codificación de error codifica además muestras de error de cuantificación usando los restantes U -(T S) bits, de una manera descrita en (A) o en (B) anteriores. Se ejecuta un segundo redondeo de (A) sobre los errores de codificación del primer redondeo siendo los U - (T S) bits establecidos de nuevo en U bits. Como resultado, se lleva a cabo una cuantificación de dos bits por muestra de error de cuantificación sobre al menos algunas de las muestras de error de cuantificación. Los valores de los errores r(n) de cuantificación en la gama de codificación de primer redondeo están comprendidos en la gama uniformemente de -0,5 a 0,5, y los valores de los errores del primer redondeo que han de ser codificados en el segundo redondeo están comprendidos en el rango de -0,25 a 0,25.
Específicamente, la unidad 110 de codificación de error genera un código de segundo redondeo de un bit que expresa si el valor obtenido al restar un valor reconstruido de 0,25 del valor de la muestra de error de cuantificación, es positivo o negativo, para muestras de error de cuantificación cuyos coeficientes u(n) de MDCT cuantificados correspondientes no son '0' y cuyos errores r(n) de cuantificación correspondientes son positivos entre las muestras de error de cuantificación incluidas en la secuencia de errores de cuantificación.
La unidad 110 de codificación de error también genera un código de segundo redondeo de un bit que expresa si el valor obtenido al restar un valor reconstruido de -0,25 del valor de la muestra de error de cuantificación es positivo o negativo, para las muestras de error de cuantificación cuyos coeficientes u(n) de MDCT cuantificados correspondientes no son '0', y cuyos errores r(n) de cuantificación correspondientes son negativos entre las muestras de error de cuantificación incluidas en la secuencia de errores de cuantificación.
La unidad 110 de codificación de error genera además un código de segundo redondeo de un bit que expresa si el valor obtenido al restar un valor A reconstruido (A es un valor positivo preestablecido menor de 0,25) del valor de la muestra de error de cuantificación es positivo o negativo, para las muestras de error de cuantificación cuyos coeficientes u(n) de MDCT cuantificados correspondientes son '0' y cuyos errores r(n) de cuantificación correspondientes son positivos entre las muestras de error de cuantificación incluidas en la secuencia de errores de cuantificación.
La unidad 110 de codificación de error genera además un código de segundo redondeo de un bit que expresa si el valor obtenido al restar un valor -A reconstruido (A es un valor positivo preestablecido menor que 0,25) del valor de la muestra de error de cuantificación es positivo o negativo, para las muestras de error cuyos coeficientes u(n) de MDCT cuantificados correspondientes son '0' y cuyos errores r(n) de cuantificación correspondientes son negativos entre las muestras de error de cuantificación incluidas en la secuencia de errores de cuantificación.
La unidad 110 de codificación de error presenta a la salida una combinación del código de primer redondeo y del código de segundo redondeo como código de error.
Si no se codifican todas las T+S muestras de error de cuantificación de la secuencia de errores de cuantificación o si las muestras de error de cuantificación cuyos coeficientes u(n) de MDCT cuantificados correspondientes sean '0' se codifican conjuntamente, usando un bit o menos por muestra, la secuencia de errores de cuantificación se codifica usando UU bits, los cuales son menos que U bits. En este caso, la condición de (C) puede ser expresada como T S < UU.
Se pueden usar valores aproximados de la envolvente de espectro de potencia o estimaciones de la envolvente de espectro de potencia en vez de los valores de envolvente de espectro de potencia en (A) y (B) anteriores.
Los valores obtenidos por alisamiento de los valores de envolvente de espectro de potencia, alisando valores aproximados de la envolvente de espectro de potencia, o alisando estimaciones de la envolvente de espectro de potencia a lo largo del eje de la frecuencia, pueden ser usados también en vez de los valores de la envolvente de espectro de potencia en (A) y (B) anteriores. Al igual que los valores obtenidos por alisamiento, los coeficientes de envolvente de espectro ponderados obtenidos por la unidad 15 de normalización de envolvente ponderada pueden ser introducidos en la unidad 110 de codificación de error, o los valores pueden ser también calculados por la unidad 110 de codificación de error.
También se pueden usar los valores medios de una pluralidad de valores de la envolvente de espectro de potencia en vez de los valores de la envolvente de espectro de potencia en (A) y (B) anteriores. Por ejemplo, se pueden usar N W”(n)s obtenidos como W”(4n-3) = W”(4n-2) = W”(4n-1) = W”(4n) = (W(4n-3) W(4n-2) W(4n-1) W(4n))/4 [1 < n < N/4]. Se pueden usar también los valores medios de valores aproximados de la envolvente de espectro de potencia o valores medios de estimaciones de la envolvente de espectro de potencia en vez de los valores de envolvente de espectro de potencia W(n) [1 < n < N]. Se pueden usar también los valores medios de valores obtenidos por alisamiento de los valores de la envolvente de espectro de potencia, por alisamiento de valores aproximados de la envolvente de espectro de potencia, o por alisamiento de estimaciones de la envolvente de espectro de potencia a lo largo del eje de la frecuencia. Cada valor medio es, en este caso, un valor obtenido al promediar valores objetivo sobre una pluralidad de muestras, es decir, un valor obtenido al promediar valores objetivo en una pluralidad de muestras.
Los valores que tengan la misma relación de magnitud que al menos un tipo de valores de la envolvente de espectro de potencia, los valores aproximados de la envolvente de espectro de potencia, las estimaciones de la envolvente de espectro de potencia, los valores obtenidos por alisamiento de cualesquiera de los valores mencionados anteriormente, y los valores obtenidos al promediar cualquier cantidad de los valores anteriormente mencionadas sobre una pluralidad de muestras, pueden ser usados también en vez de los valores de la envolvente de espectro de potencia en (A) y (B) anteriores. En ese caso, los valores que tengan la misma relación de magnitud son calculados por la unidad 110 de codificación de error, y usados. Los valores que tienen la misma relación de magnitud se calculan por medio de la unidad 110 de codificación de error y se usan. Los valores que tienen la misma relación de magnitud incluyen los cuadrados y las raíces cuadradas. Por ejemplo, los valores que tienen la misma relación de magnitud que los valores de la envolvente de espectro de potencia W(n) [1 < n < N] son los cuadrados (W(n))2 [1 < n < N] de los valores de la envolvente de espectro de potencia y las raíces cuadradas (W(n))1/2 [1 < n < N] de los valores de la envolvente de espectro de potencia.
Si las raíces cuadradas de los valores de la envolvente de espectro de potencia o los valores obtenidos por alisamiento de las raíces cuadradas son obtenidos por la unidad 15 de normalización de envolvente ponderada, lo que se obtiene mediante la unidad 15 de normalización de envolvente ponderada, pueden ser introducidos en la unidad 110 de codificación de error.
Según se ha indicado mediante la casilla de línea discontinua en la Figura 1, se puede prever una unidad 111 de reorganización para reorganizar la secuencia de coeficientes de MDCT cuantificados. En ese caso, la unidad 19 de codificación realiza codificación de longitud variable de la secuencia de coeficientes de MDCT cuantificados reorganizada por la unidad 111 de reorganización. Puesto que la reorganización de la secuencia de coeficientes de MDCT cuantificados basada en periodicidad puede reducir a veces el número de bits de manera considerable en codificación de longitud variable, se puede esperar una mejora en cuanto a la eficacia de codificación mediante la codificación de errores.
La unidad 111 de reorganización presenta a la salida, en unidades de tramas, una secuencia de muestras reorganizadas que (1) incluye todas las muestras de la secuencia de coeficientes de MDCT cuantificados, y en la que (2) algunas de esas muestras incluidas en la secuencia de coeficientes de MDCT cuantificados han sido reorganizadas para reunir muestras que tengan un índice igual o un índice casi igual que refleje la magnitud de la muestra (etapa S111). En este caso, el índice que refleja la magnitud de la muestra es el valor absoluto de la amplitud de la muestra o de la potencia (cuadrado) de la muestra, por ejemplo, aunque sin limitación. Para los detalles de la unidad 111 de reorganización, se hace referencia a la solicitud de Patente japonesa núm. 2010­ 225949 (la PCT/JP2011/072752 corresponde a la WO2012/046685).
[Modalidad de descodificación]
A continuación se va a describir un proceso de descodificación con referencia a las Figuras 5 y 6.
El descodificador 2 reconstruye un coeficiente de MDCT ejecutando el proceso de codificación llevado a cabo en el codificador 1 en orden inverso. En esta realización, los códigos introducidos en el descodificador 2 incluyen códigos de longitud variable, códigos de error, información de ganancia, y códigos de coeficiente de predicción lineal. Si está presente en la salida del codificador 1 información de selección, la información de selección se introduce también en el descodificador 2.
Según se ha mostrado en la Figura 5, el descodificador 2 incluye una unidad 21 de descodificación, una unidad 22 de cálculo de envolvente de espectro de potencia, una unidad 23 de descodificación de error, una unidad 24 de descodificación de ganancia, un sumador 25, una unidad 26 de normalización inversa de envolvente ponderada, y un convertidor 27 del dominio de tiempo, por ejemplo. El descodificador 2 realiza las etapas de un método de descodificación que ha sido mostrado en la Figura 6 como ejemplo. Las etapas del descodificador 2 van a ser descritas a continuación.
Unidad 21 de descodificación
En primer lugar, la unidad de descodificación 21 descodifica códigos de longitud variable incluidos en los códigos de entrada en unidades de tramas y presenta a la salida una secuencia de coeficientes u(n) de MDCT cuantificados descodificados, es decir, coeficientes que son idénticos a los coeficientes u(n) de MDCT cuantificados en el codificador, y el número de bits de los códigos de longitud variable (etapa S21). Se ejecuta un método de descodificación de longitud variable correspondiente al método de codificación de longitud variable ejecutado para obtener la secuencia de códigos, por supuesto. Los detalles del proceso de descodificación llevado a cabo por la unidad 21 de descodificación corresponden a los detalles del proceso de codificación llevado a cabo por la unidad 19 de codificación del codificador 1. La descripción del proceso de codificación se cita aquí como un sustituto para una descripción detallada del proceso de descodificación puesto que la descodificación correspondiente a la codificación que se ha realizado es el proceso de descodificación que se va a llevar a cabo en la unidad 21 de descodificación. La secuencia de coeficientes u(n) de MDCT cuantificados descodificados corresponde a la secuencia de números enteros en las reivindicaciones.
El método de codificación de longitud variable que se ha ejecutado, viene indicado por la información de selección. Si la información de selección incluye, por ejemplo, información indicativa del área a la que ha sido aplicada codificación de Rice y parámetros de Rice, información indicativa del área a la que ha sido aplicada codificación de longitud de ejecución, e información indicativa del tipo de codificación de entropía, se aplican métodos de descodificación correspondientes a los métodos de codificación a las áreas correspondientes de la secuencia de códigos de entrada. Un proceso de descodificación correspondiente a codificación de Rice, un proceso de descodificación correspondiente a codificación de entropía, y un proceso de descodificación correspondiente a codificación de longitud de ejecución, son ampliamente conocidos, y se omitirá la descripción de los mismos (por ejemplo, se hace referencia a la Literatura de referencia 1, descrita con anterioridad).
Unidad 22 de cálculo de envolvente de espectro de potencia
La unidad 22 de cálculo de envolvente de espectro de potencia descodifica los códigos de coeficiente de predicción lineal introducidos desde el codificador 1 para obtener coeficientes de predicción lineal cuantificados, y convierte los coeficientes de predicción lineal cuantificados obtenidos al dominio de la frecuencia para obtener una envolvente de espectro de potencia (etapa 22). El proceso para obtener la envolvente de espectro de potencia a partir de los coeficientes de predicción lineal cuantificados, es el mismo que en la unidad 14 de cálculo de envolvente de espectro de potencia del codificador 1.
Se pueden calcular valores aproximados de la envolvente de espectro de potencia o estimaciones de la envolvente de espectro de potencia en vez de los valores de la envolvente de espectro de potencia, como en la unidad 14 de cálculo de envolvente de espectro de potencia del codificador 1. El tipo de valores, sin embargo, debe ser el mismo que en la unidad 14 de cálculo de envolvente de espectro de potencia del codificador 1. Por ejemplo, si la unidad 14 de cálculo de envolvente de espectro de potencia del codificador 1 ha obtenido valores aproximados de la envolvente de espectro de potencia, la unidad 22 de cálculo de envolvente de espectro de potencia del descodificador 2 debe obtener también valores aproximados de la envolvente de espectro de potencia.
Si los coeficientes de predicción lineal cuantificados correspondientes a los códigos de coeficiente de predicción lineal son obtenidos por otros medios en el descodificador 2, los coeficientes de predicción lineal cuantificados deberán ser usados para calcular la envolvente de espectro de potencia. Si una envolvente de espectro de potencia ha sido calculada por otros medios en el descodificador 2, el descodificador 2 no tiene que incluir la unidad 22 de cálculo de envolvente de espectro de potencia.
Unidad 23 de descodificación de error
En primer lugar, la unidad 23 de descodificación de error calcula el número de bits en exceso restando el número de bits presentados a la salida por la unidad 21 de descodificación del número de bits preestablecido como cantidad de codificación de la secuencia de coeficientes de MDCT cuantificados. La unidad 23 de descodificación de error descodifica entonces los códigos de error presentados a la salida por la unidad 110 de codificación de error del codificador 1 usando el método de descodificación correspondiente al método de codificación usado en la unidad 110 de codificación de error del codificador 1, y obtiene errores q(n) de cuantificación descodificados (etapa S23). El número de bits asignados a la secuencia de errores de cuantificación en el codificador 1 se obtiene a partir del número de bits en exceso en base al número de bits usados en la codificación de longitud variable indicado por la unidad 21 de descodificación. Puesto que el codificador 1 y el descodificador 2 determinan la correspondencia de muestras y etapas entre la codificación y la descodificación en unidades de conjuntos de bits en exceso, resulta posible la descodificación única.
Una secuencia de errores de cuantificación descodificados corresponde a la secuencia de errores en las reivindicaciones.
[Caso específico 1 de descodificación de error] (correspondiente a [Caso específico 1 de codificación de error] en el codificador 1)
Se almacena de antemano un libro de códigos por cada valor posible del número de bits en exceso, en una unidad de almacenaje de libros de códigos en la unidad 23 de descodificación de error. Cada libro de códigos almacena por anticipado tantos vectores como sea el número de muestras en la secuencia de errores de cuantificación descodificada que puedan ser expresadas con el número de bits en exceso correspondientes al libro de códigos, asociados a los códigos correspondientes a los vectores.
La unidad 23 de descodificación de error calcula el número de bits en exceso, selecciona un libro de códigos correspondiente al número calculado de bits en exceso a partir de los libros de códigos almacenados en la unidad de almacenaje de libro de códigos, y realiza cuantificación inversa de vector usando el libro de códigos seleccionado. El proceso de descodificación tras la selección del libro de códigos es el mismo que en la cuantificación inversa de vector general. En otras palabras, entre los vectores del libro de códigos seleccionado, los vectores correspondientes a los códigos de error de entrada son presentados a la salida como errores q(n) de cuantificación descodificados.
En la descripción dada en lo que antecede, el número de vectores almacenados en el libro de códigos es el mismo que el número de muestras de la secuencia de errores de cuantificación descodificada. El número de vectores de muestra almacenados en el libro de códigos puede ser también un submúltiplo entero del número de muestras de la secuencia de errores de cuantificación descodificada, y una pluralidad de códigos incluidos en los códigos de error de entrada pueden ser cuantificados a la inversa por vector para cada una de una pluralidad de partes para generar la secuencia de errores de cuantificación descodificada.
[Caso específico 2 de unidad 23 de descodificación de error] (correspondiente a [Caso específico 2 de codificación de error] en el codificador 1)
A continuación se va a describir un procedimiento de descodificación preferido, donde el número de bits en exceso es U, el número de muestras cuyos coeficientes u(n) de MDCT cuantificados descodificados correspondientes presentados a la salida de la unidad 21 de descodificación que no son '0' es T, y el número de muestras cuyos coeficientes u(n) de MDCT cuantificados descodificados correspondientes presentados a la salida de la unidad 21 de descodificación que son '0' es S.
(A) U <_T
La unidad 23 de descodificación de error selecciona U muestras de entre T muestras cuyos coeficientes u(n) de MDCT cuantificados descodificados correspondientes no son '0', en orden descendente del valor correspondiente de la envolvente de espectro de potencia, descodifica un código de un bit incluido en el código de error de entrada para obtener información que expresa si la muestra es positiva o negativa, suma la información positiva-negativa obtenida al valor absoluto 0,25 del valor reconstruido, y presenta a la salida el valor reconstruido 0,25 o -0,25 como error q(n) de cuantificación descodificado correspondiente al coeficiente u(n) de MDCT cuantificado descodificado, para cada una de las muestras seleccionadas. Si los valores correspondientes de la envolvente de espectro de potencia son iguales, las muestras podrán ser elegidas conforme a una regla preestablecida, tal como seleccionando muestras de error de cuantificación en orden ascendente de la posición sobre el eje de la frecuencia (muestras de error de cuantificación en orden ascendente de frecuencia), por ejemplo. Una regla correspondiente a la regla usada en la unidad 110 de codificación de error del codificador 1 se mantiene de antemano en la unidad 23 de descodificación de error, por ejemplo.
(B) T < U < T S
La unidad 23 de descodificación de error descodifica un código de un bit incluido en el código de error de entrada por cada una de las muestras cuyos coeficientes u(n) de MDCT cuantificados descodificados correspondientes no son '0' para obtener información indicativa de si la muestra de error de cuantificación descodificada es positiva o negativa, suma la información positiva-negativa obtenida al valor absoluto 0,25 del valor reconstruido, y presenta a la salida el valor reconstruido 0,25 o -0,25 como error q(n) de cuantificación descodificado correspondiente al coeficiente u(n) de MDCT cuantificado descodificado.
La unidad 23 de descodificación de error descodifica también un código de un bit incluido en el código de error de entrada, para cada una de U-T muestras cuyos coeficientes u(n) de MDCT cuantificados descodificados correspondientes sean '0', en orden descendente del valor correspondiente de la envolvente de espectro de potencia, para obtener información indicativa de si la muestra de error de cuantificación descodificada es positiva o negativa; suma la información positiva-negativa obtenida al valor absoluto A del valor reconstruido, el cual es un valor positivo preestablecido más pequeño que 0,25; y presenta a la salida el valor reconstruido A o -A como error q(n) de cuantificación descodificado correspondiente al coeficiente u(n) de MDCT cuantificado descodificado.
Alternativamente, la unidad 23 de descodificación de error cuantifica a la inversa del vector códigos (U-T) bits incluidos en los códigos de error para una pluralidad de muestras cuyos coeficientes u(n) de MDCT cuantificados descodificados correspondientes son '0', en orden descendente del valor correspondiente de la envolvente de espectro de potencia para obtener una secuencia de muestras de error de cuantificación descodificadas correspondientes, y presenta a la salida cada valor de las muestras de error de cuantificación descodificadas obtenidas como error q(n) de cuantificación descodificado correspondiente al coeficiente u(n) de MDCT cuantificado descodificado.
Cuando los valores del coeficiente u(n) de MDCT cuantificado y del coeficiente u(n) de MDCT cuantificado descodificado no son '0', el valor absoluto del valor reconstruido se establece en '0,25', por ejemplo; cuando los valores del coeficiente u(n) de MDCT cuantificado y del coeficiente u(n) de MDCT cuantificado descodificado son '0', el valor absoluto del valor reconstruido se establece en A (0 < A < 0,25), según se ha descrito con anterioridad. Los valores absolutos de los valores reconstruidos son ejemplos. El valor absoluto del valor reconstruido obtenido cuando los valores del coeficiente u(n) de MDCT cuantificado y del coeficiente u(n) de MDCT cuantificado descodificado no son '0', necesita ser mayor que el valor absoluto del valor reconstruido obtenido cuando los valores del coeficiente u(n) de MDCT cuantificado y del coeficiente u(n) de MDCT cuantificado descodificado son '0'. Los valores del coeficiente u(n) de MDCT cuantificado y del coeficiente u(n) de MDCT cuantificado descodificado corresponden a los números enteros en las reivindicaciones.
Si los valores correspondientes de la envolvente de espectro de potencia son iguales, se deben seleccionar muestras de acuerdo con una regla preestablecida, tal como seleccionar muestras en orden ascendente de la posición sobre el eje de la frecuencia (en orden de frecuencia ascendente), por ejemplo.
(C) T S < U
La unidad 23 de descodificación de error realiza el proceso siguiente sobre muestras cuyos coeficientes u(n) de MDCT cuantificados descodificados no son '0'.
La unidad 23 de descodificación de error descodifica el código de primer redondeo de un bit incluido en el código de error de entrada para obtener información positiva-negativa, suma la información positiva-negativa obtenida al valor absoluto 0,25 del valor reconstruido, y establece el valor reconstruido 0,25 o -0,25 como error q-i(n) de cuantificación descodificado de primer redondeo, correspondiente al coeficiente u(n) de MDCT cuantificado descodificado. La unidad 23 de descodificación de error descodifica además el código de segundo redondeo de un bit incluido en el código de error de entrada para obtener información positiva-negativa, añade la información positiva-negativa obtenida al valor absoluto 0,125 del valor reconstruido, y establece el valor reconstruido 0,125 o -0,125 como error q2 (n) de cuantificación descodificado de segundo redondeo. El error qi(n) de cuantificación descodificado de primer redondeo y el error q2 (n) de cuantificación descodificado de segundo redondeo se suman para obtener un error q(n) de cuantificación descodificado.
La unidad 23 de descodificación de error realiza el proceso siguiente sobre muestras cuyos coeficientes u(n) de MDCT cuantificados descodificados son '0'.
La unidad 23 de descodificación de error descodifica el código de primer redondeo de un bit incluido en el código de error de entrada para obtener información positiva-negativa, suma la información positiva-negativa obtenida al valor absoluto A del valor reconstruido, el cual es un valor positivo más pequeño que 0,25, y establece el valor A o -A reconstruido como primer error qi(n) de cuantificación descodificado de primer redondeo correspondiente al coeficiente u(n) de MDCT cuantificado descodificado. La unidad 23 de descodificación de error descodifica además el código de segundo redondeo de un bit incluido en el código de error de entrada para obtener información positivanegativa, suma la información positiva-negativa obtenida al valor absoluto A/2 del valor reconstruido, y establece el valor reconstruido A/2 o -A/2 como error q2 (n) de cuantificación descodificado de segundo redondeo. El error qi(n) de cuantificación descodificado de primer redondeo y el error q2 (n) de cuantificación descodificado de segundo redondeo se suman para formar un error q(n) de cuantificación descodificado.
No importa que los valores correspondientes del coeficiente u(n) de MDCT cuantificados y del coeficiente u(n) de MDCT cuantificados descodificados sean '0' o no sean '0', el valor absoluto del valor reconstruido correspondiente al código de segundo redondeo es la mitad del valor absoluto del valor reconstruido correspondiente al código de primer redondeo.
Se pueden usar también valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tengan la misma relación de magnitud que cualesquiera de esos valores, en vez de los valores de la envolvente de espectro de potencia en (A) y (B) anteriores. Se puede usar el mismo tipo de valores que los usados en la unidad 110 de codificación de error del codificador 1.
Unidad 24 de descodificación de ganancia
La unidad 24 de descodificación de ganancia descodifica información de ganancia de entrada para obtener la ganancia g, y la presenta a la salida (etapa S24). La ganancia g se envía al sumador 25.
Sumador 25
El sumador 25 suma los coeficientes u(n) de la secuencia de coeficientes de MDCT cuantificados descodificados presentada a la salida por la unidad 21 de descodificación, y los coeficientes q(n) correspondientes de la secuencia de errores de cuantificación descodificados presentados a la salida por la unidad 23 de descodificación de error en unidades de tramas para obtener sus sumas. El sumador 25 genera una secuencia al multiplicar las sumas por la ganancia g presentada a la salida por la unidad 24 de descodificación de ganancia, y la proporciona como una secuencia de coeficientes de MDCT de normalización ponderada descodificada (S25). Cada coeficiente de la secuencia de coeficientes de MDCT de normalización ponderada descodificada está indicado como xA(n), donde xA(n) = (u(n) q(n))g.
La secuencia de sumas generada por el sumador 25 corresponde a la secuencia de muestras en el dominio de la frecuencia en las reivindicaciones.
Unidad 26 de normalización inversa de envolvente ponderada
La unidad 26 de normalización inversa de envolvente ponderada obtiene a continuación una secuencia de coeficientes de MDCT al dividir los coeficientes xA(n) de la secuencia de coeficientes de MDCT de normalización ponderada descodificada por los valores de la envolvente de espectro de potencia en unidades de tramas (etapa S26).
Convertidor 27 del dominio del tiempo
A continuación, el convertidor 27 del dominio del tiempo convierte la secuencia de coeficientes de MDCT presentada a la salida por la unidad 26 de normalización inversa de envolvente ponderada, al dominio del tiempo en unidades de tramas y obtiene un habla digital o señal acústica en unidades de tramas (etapa S27).
El procesamiento en las etapas S26 y S27 es convencional, y aquí se va a omitir su descripción detallada.
Si se ha realizado reorganización por medio de la unidad 111 de reorganización en el codificador 1, la secuencia de coeficientes u(n) de MDCT cuantificados descodificados generada por la unidad 21 de descodificación se reorganiza mediante una unidad de reorganización en el descodificador 2 (etapa S28), y la secuencia reorganizada de coeficientes u(n) de MDCT cuantificados descodificados se envía a la unidad 23 de descodificación de error y al sumador 25. En ese caso, la unidad 23 de descodificación de error y el sumador 25 realizan el procesamiento descrito con anterioridad sobre la secuencia reorganizada de coeficientes u(n) de MDCT cuantificados descodificados, en vez de la secuencia de coeficientes u(n) de MDCT cuantificados descodificados generada por la unidad 21 de descodificación.
Usando el efecto de compresión conseguido mediante codificación de longitud variable, la distorsión de cuantificación y la cantidad de códigos se pueden reducir incluso aunque el número total de bits en las tramas sea fijo.
[Configuraciones de hardware del codificador y del descodificador]
El codificador 1 y el descodificador 2 de la realización descrita en lo que antecede incluyen una unidad de entrada a la que se puede conectar un teclado o similar, una unidad de salida a la que se puede conectar un visualizador de cristal líquido o similar, una unidad de procesamiento central (CPU), memorias tal como una memoria de acceso aleatorio (RAM) y una memoria de solo lectura (ROM), una unidad de almacenaje externa tal como un disco duro, y un bus al que pueden estar conectadas la unidad de entrada, la unidad de salida, la CPU, la RAM, la ROM y la unidad de almacenaje externa para permitir el intercambio de datos entre ellas, por ejemplo. Cuando sea necesario, se puede añadir también al codificador 1 o al descodificador 2 una unidad (actuador) para lectura y escritura, un CD-ROM u otro medio de grabación.
La unidad de almacenaje externa del codificador 1 y del descodificador 2 almacena programas para ejecutar codificación y descodificación, y datos necesarios en el procesamiento programado. Los programas pueden ser almacenados también en la ROM, la cual es un dispositivo de almacenaje de solo lectura, así como en la unidad de almacenaje externa. Los datos obtenidos en el procesamiento programado se almacenan en la RAM o en la unidad de almacenaje externa, según se necesite. Los dispositivos de almacenaje para almacenar los datos y las direcciones de las áreas de almacenaje, serán mencionados simplemente como una unidad de almacenaje.
La unidad de almacenaje del codificador 1 almacena programas para la codificación de una secuencia de muestras en el dominio de la frecuencia, derivada de una señal de voz o acústica, y para la codificación de errores.
La unidad de almacenaje del descodificador 2 almacena programas para descodificar códigos de entrada.
En el codificador 1, cada programa y los datos necesarios para el procesamiento del programa, se leen en la RAM desde la unidad de almacenaje cuando es necesario, y la CPU los interpreta y ejecuta el procesamiento. La codificación se implementa por medio de la CPU que lleva a cabo funciones determinadas (tal como la unidad 18 de cálculo de error, la unidad 110 de codificación de error, y la unidad 19 de codificación).
En el descodificador 2, cada programa y los datos necesarios para el procesamiento del programa se leen en la RAM desde la unidad de almacenaje cuando es necesario, y la CPU los interpreta y ejecuta el procesamiento. La descodificación se implementa mediante la CPU que lleva a cabo funciones dadas (tal como la unidad 21 de descodificación).
[Modificaciones]
Como coeficiente de MDCT cuantificado, el cuantificador 17 del codificador 1 puede usar G(x(n)/g) obtenido por compresión y expansión del valor de x(n)/g mediante una función G dada, en vez de x(n)/g. Específicamente, el cuantificador 17 usa un número entero correspondiente a G(x(n)/g) obtenido al comprimir y expandir x(n)/g con una función G, siendo obtenido x(n)/g al dividir el coeficiente x(n) [1 < n < N] de la secuencia de coeficientes de MDCT de normalización ponderada por la ganancia g, tal como un número entero u(n) obtenido por redondeo de G(x(n)/g) hasta el número entero más cercano o mediante redondeo ascendente o descendente de una parte fraccional. Este coeficiente de MDCT cuantificado se codifica por medio de la unidad 19 de codificación.
La función G es G(h) = sign(h) x |h|a, por ejemplo, donde sign(h) es una función de signo de polaridad que presenta a la salida el signo positivo o negativo de la entrada h. Este sign(h) presenta a la salida '1' cuando la entrada h es un valor positivo, y presenta a la salida '-1' cuando la entrada h es un valor negativo, por ejemplo. |h| representa el valor absoluto de h, y es un número dado tal como 0,75.
En este caso, el valor G(x(n)/g) obtenido al comprimir y expandir el valor x(n)/g mediante una función G dada, corresponde a la secuencia de muestras en el dominio de la frecuencia en las reivindicaciones. El error r(n) de cuantificación obtenido por la unidad 18 de cálculo de error es G(x(n)/g) - u(n). El error r(n) de cuantificación es codificado por la unidad 110 de codificación de error.
En la presente memoria, el sumador 25 del descodificador 2 obtiene una secuencia xA(n) de coeficientes de MDCT de normalización ponderada descodificada al multiplicar G-1(u(n) q(n)) por la ganancia g, siendo G-1(u(n) q(n)) obtenido al ejecutar G"1 = sign(h) x |h|1/a, la inversa de la función G, sobre u(n) q(n) obtenido por adición. Es decir, xA(n) = G-1(u(n) q(n))g. Si a = 0,75, G-1(h) = sign(h) x |h|133.
La presente invención no se limita a la realización descrita con anterioridad, y se pueden realizar cambios apropiados en la realización sin apartarse del alcance de la presente invención. Cada tipo de procesamiento descrito con anterioridad puede ser ejecutado no sólo secuencialmente en el tiempo según el orden de descripción, sino también en paralelo o individualmente cuando sea necesario o según las capacidades de procesamiento de los aparatos que ejecutan el procesamiento.
Cuando las funciones de procesamiento de las entidades de hardware (el codificador 1 y el descodificador 2) descritas con anterioridad estén implementadas mediante un ordenador, los detalles de procesamiento de las funciones que deben ser proporcionadas por las entidades de hardware están descritos en un programa. Cuando se ejecuta el programa mediante un ordenador, las funciones de procesamiento de las entidades de hardware son implementadas en el ordenador.
El programa que contiene los detalles de procesamiento puede estar grabado en un medio de grabación legible con ordenador. El medio de grabación legible con ordenador puede ser cualquier tipo de medio, tal como un dispositivo de almacenaje magnético, un disco óptico, un medio de almacenaje magneto-óptico, o una memoria de semiconductor. Específicamente, por ejemplo, se puede usar un disco duro, un disco flexible, una cinta magnética o similar como dispositivo de grabación magnética; se puede usar un DVD (disco versátil digital), un DVD-RAM (memoria de acceso aleatorio), un CD-ROM (disco compacto de memoria de solo lectura), CD-R/RW (grabable/regrabable) o similar, como disco óptico; se puede usar un MO (disco magneto-óptico) o similar como medio de grabación magneto-óptico; y, se puede usar una EEP-ROM (memoria de sólo lectura electrónicamente borrable y programable) o similar, como memoria de semiconductor.
Este programa se distribuye mediante venta, transferencia o préstamo de un medio de grabación portátil tal como un DVD o un CD-ROM con el programa grabado en el mismo, por ejemplo. El programa puede ser también distribuido por almacenamiento del programa en una unidad de almacenaje de un ordenador del servidor, y transfiriendo el programa desde el ordenador del servidor a otro ordenador a través de la red.
Un ordenador que ejecuta este tipo de programa almacena en primer lugar el programa grabado en el medio de grabación portátil o el programa transferido desde el ordenador del servidor, en su unidad de almacenaje. A continuación, el ordenador lee el programa almacenado en su unidad de almacenaje y ejecuta el procesamiento conforme al programa leído. En una forma diferente de ejecución de programa, el ordenador puede leer el programa directamente desde el medio de grabación portátil y ejecutar el procesamiento conforme al programa, o el ordenador puede ejecutar el procesamiento conforme al programa cada vez que el ordenador recibe el programa transferido desde el ordenador del servidor. Alternativamente, el procesamiento descrito con anterioridad puede ser ejecutado mediante lo que se conoce como servicio de proveedor de servicios de aplicación (ASP), en el que las funciones de procesamiento se implementan simplemente dando instrucciones de ejecución del programa y obteniendo los resultados sin transferir el programa desde el ordenador del servidor hasta el ordenador. El programa de esta forma incluye información que se suministra para su uso en el procesamiento mediante el ordenador y se trata correspondientemente como programa (algo que no es una instrucción directa al ordenador pero que son datos o similares que tienen las características que determina el procesamiento ejecutado por el ordenador).
En la descripción dada en lo que antecede, las entidades de hardware se implementan al ejecutar el programa predeterminado en el ordenador, pero al menos una parte del procesamiento puede ser implementada mediante hardware.

Claims (4)

REIVINDICACIONES
1. Un método de descodificación para descodificar un código de entrada formado por un número predeterminado de bits, comprendiendo el método de descodificación:
una etapa de descodificación para la descodificación de un código de longitud variable incluido en el código de entrada, para generar una secuencia de números enteros;
una etapa de descodificación de error para la descodificación de un código de error incluido en el código de entrada, estando el código de error formado por el número U de bits en exceso obtenido al restar el número de bits del código de longitud variable del número predeterminado de bits, para generar una secuencia de valores de error;
una etapa de adición para sumar cada muestra de la secuencia de números enteros y una de cada muestra correspondiente de la secuencia de valores de error, para generar una secuencia de muestras del dominio de la frecuencia, y
una etapa de conversión de la secuencia de muestras del dominio de la frecuencia en una señal acústica, en donde la etapa de descodificación de error es una etapa de:
(A) cuando el número U de bits en exceso es igual o menor que el número T de muestras cuyos números enteros descodificados correspondientes no son 0 entre las muestras que constituyen la secuencia de números enteros, seleccionar U muestras de las T muestras cuyos números enteros descodificados correspondientes no son 0, en orden descendente de valores correspondientes de envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tengan la misma relación de magnitud que cualesquiera de esos valores, y en orden ascendente de frecuencia si los valores correspondientes de la envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tengan la misma relación de magnitud que cualesquiera de esos valores, son los mismos, y
para cada una de las muestras seleccionadas, descodificar un código de un bit incluido en el código de error para obtener información que exprese si la muestra es positiva o negativa, sumar la información positiva-negativa obtenida a un valor absoluto 0,25 de un valor reconstruido, y obtener el valor reconstruido 0,25 o -0,25 como valor de error descodificado correspondiente a dicha muestra seleccionada;
(B) cuando el número U de bits en exceso es mayor que el número T de muestras cuyos números enteros descodificados correspondientes no son 0 y es igual o menor que una suma T+S del número T de muestras cuyos números enteros descodificados correspondientes no son 0 y el número S de muestras cuyos números enteros descodificados correspondientes son 0,
para cada una de las muestras cuyos números enteros descodificados correspondientes no son 0, descodificar un código de un bit incluido en el código de error para obtener información indicativa de si la muestra es positiva o negativa, sumar la información positiva-negativa obtenida a un valor absoluto 0,25 de un valor reconstruido, y obtener el valor reconstruido 0,25 o -0,25 como valor de error descodificado correspondiente a dicha muestra entre las muestras cuyos números enteros descodificados correspondientes no son 0,
para cada una de U-T muestras cuyos números enteros descodificados correspondientes son 0, en orden descendente de valores correspondientes de envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera deseos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tienen la misma relación de magnitud que cualesquiera de esos valores, y en orden ascendente de frecuencia si los valores correspondientes de envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tienen la misma relación de magnitud que cualesquiera de esos valores son iguales, descodificar un código de un bit incluido en el código de error, para obtener información que exprese si la muestra es positiva o negativa, sumar la información positiva-negativa obtenida a un valor absoluto A de un valor reconstruido, que es un valor positivo preestablecido más pequeño que 0,25, y obtener el valor reconstruido A o -A como un valor de error descodificado correspondiente a dicha muestra entre las U-T muestras, o
para una pluralidad de muestras cuyos números enteros descodificados correspondientes son 0, en orden descendiente de valores correspondientes de envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tienen la misma relación de magnitud que cualesquiera de esos valores, y en orden ascendente de frecuencia si los valores correspondientes de la envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquie4ra de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tienen la misma relación de magnitud que cualesquiera de esos valores son iguales, cuantificar a la inversa de vector (I-T) códigos de bits incluidos en los códigos de error en el código de entrada, para obtener una secuencia de valores de error descodificados correspondientes, y obtener cada valor de los valores de error descodificados obtenidos como un valor de error descodificado correspondiente a una muestra respectiva entre la pluralidad de muestras, y
(C) cuando el número U de bits en exceso es mayor que la suma T+S del número T de muestras cuyos números enteros descodificados correspondientes no son 0 y el número S de muestras cuyos números enteros descodificados correspondientes son 0,
para cada una de las muestras cuyos números enteros descodificados correspondientes no son 0, descodificar un código de primer redondeo de un bit incluido en el código de error para obtener información positiva-negativa, sumar la información positiva-negativa obtenida a un valor absoluto 0,25 de un valor reconstruido, establecer el valor reconstruido 0,25 o -0,25 como error de cuantificación descodificado de primer redondeo, descodificar un código de segundo redondeo de un bit incluido en el código de error para obtener información positiva-negativa, sumar la información positiva-negativa obtenida a un valor absoluto 0,125 del valor reconstruido, establecer el valor reconstruido 0,125 o -0,125 como un error de cuantificación descodificado de segundo redondeo, y sumar el error de cuantificación descodificado de primer redondeo y el error de cuantificación descodificado de segundo redondeo para obtener un valor de error descodificado correspondiente a dicha muestra entre las muestras cuyos números enteros descodificados correspondientes no son 0,
para cada una de las muestras cuyos números enteros descodificados correspondientes son 0, descodificar un código de primer redondeo de un bit incluido en el código de error para obtener información positiva-negativa, sumar la información positiva-negativa obtenida a un valor absoluto A del valor reconstruido, el cual es un valor positivo menor que 0,25, establecer el valor reconstruido A o -A como un error de cuantificación descodificado de primer redondeo, descodificar un código de segundo redondeo de un bit incluido en el código de error de entrada para obtener información positiva-negativa, sumar la información positiva-negativa obtenida a un valor absoluto A/2 del valor reconstruido, establecer el valor reconstruido A/2 o -A/2 como un error de cuantificación descodificado de segundo redondeo, y sumar el error de cuantificación descodificado de primer redondeo y el error de cuantificación descodificado de segundo redondeo para obtener un valor de error descodificado correspondiente a dicha muestra entre las muestras cuyos números enteros desedificados correspondientes son 0.
2. Un descodificador para descodificar un código de entrada formado por un número predeterminado de bits, comprendiendo el descodificador:
una unidad de descodificación adaptada para descodificar un código de longitud variable incluido en el código de entrada, para generar una secuencia de números enteros;
una unidad de descodificación de error adaptada para descodificar un código de error incluido en el código de entrada, estando formado el código de error por el número U de bits en exceso obtenido por substracción del número de bits del código de longitud variable del número predeterminado de bits, para generar una secuencia de valores de error, y
una unidad de suma adaptada para sumar cada muestra de la secuencia de números enteros y una de cada muestra correspondiente de la secuencia de valores de error, para generar una secuencia de muestras del dominio de la frecuencia, y
una unidad adaptada para convertir la secuencia de muestras del dominio de la frecuencia en una señal acústica,
en donde la unidad de descodificación de error está adaptada para:
(A) cuando el número U de bits en exceso es igual o menor que el número T de muestras cuyos números enteros descodificados correspondientes no son 0 entre las muestras que constituyen la secuencia de números enteros,
seleccionar U muestras de las T muestras cuyos números enteros descodificados correspondientes no son 0, en orden descendente de valores correspondientes de la envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de frecuencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tengan la misma relación de amplitud que cualesquiera de esos valores, y en orden ascendente de frecuencia si los valores correspondientes de envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tienen la misma relación de magnitud que cualesquiera de esos valores, son iguales, y
para cada una de las muestras seleccionadas, descodificar un código de un bit incluido en el código de error para obtener información que exprese si la muestra es positiva o negativa, sumar la información positiva-negativa obtenida a un valor absoluto 0,25 de un valor reconstruido, y obtener el valor reconstruido 0,25 o -0,25 como un valor de error descodificado correspondiente a dicha muestra seleccionada;
(B) cuando el número U de bits en exceso sea mayor que el número T de muestras cuyos números enteros descodificados correspondientes no son 0 y es igual o menor que una suma T+S del número T de muestras cuyos números enteros descodificados correspondientes no son 0 y el número S de muestras cuyos números enteros descodificados correspondientes son 0, para cada una de las muestras cuyos números enteros descodificados correspondientes son 0, descodificar un código de un bit incluido en el código de error para obtener información indicativa de si la muestra es positiva o negativa, sumar la información positiva-negativa obtenida a un valor absoluto 0,25 de un valor reconstruido, y obtener el valor reconstruido 0,25 o -0,25 como un valor de error descodificado correspondiente a dicha muestra entre las muestras cuyos números enteros descodificados correspondientes no son 0,
para cada una de U-T muestras cuyos números enteros descodificados correspondientes son 0, en orden descendente de valores correspondientes de la envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tienen la misma relación de magnitud que cualesquiera de esos valores, y en orden ascendente de frecuencia si valores correspondientes de la envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tienen la misma relación de magnitud que cualesquiera de esos valores son iguales, descodificar un código de un bit incluido en el código de error, para obtener información que exprese si la muestra es positiva o negativa, sumar la información positiva-negativa obtenida a un valor absoluto A de un valor reconstruido, que es un valor positivo preestablecido menor de 0,25, y obtener el valor reconstruido A o -A como un valor de error descodificado correspondiente a dicha muestra entre las U-T muestras, o
para una pluralidad de muestras cuyos números enteros descodificados correspondientes son 0, en orden descendente de valores correspondientes de envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tienen la misma relación de magnitud que cualesquiera de esos valores, y en orden ascendente de frecuencia si los valores correspondientes de envolvente de espectro de potencia, valores aproximados de la envolvente de espectro de potencia, estimaciones de la envolvente de espectro de potencia, valores obtenidos por alisamiento de cualesquiera de esos valores, valores obtenidos promediando cualesquiera de esos valores sobre pluralidades de muestras, o valores que tienen la misma relación de magnitud que cualesquiera de esos valores son iguales, cuantificar en forma inversa de vector códigos de (U-T) bits incluidos en los códigos de error en el código de entrada, para obtener una secuencia de valores de error descodificados correspondientes, y obtener cada valor de los valores de error descodificados obtenidos como un valor de error descodificado correspondiente a una muestra respectiva entre la pluralidad de muestras, y
(C) cuando el número U de bits en exceso es mayor que la suma T+S del número T de muestras cuyas números enteros descodificados correspondientes no son 0 y el número S de muestras cuyos números enteros descodificados correspondientes son 0,
para cada una de las muestras cuyos números enteros descodificados correspondientes no son 0, descodificar un código de primer redondeo de un bit incluido en el código de error para obtener una información positiva-negativa, sumar la información positiva-negativa obtenida a un valor absoluto 0,25 de un valor reconstruido, establecer el valor reconstruido 0,25 o -0,25 como un error de cuantificación descodificado de primer redondeo, descodificar un código de segundo redondeo de un bit incluido en el código de error para obtener información positiva-negativa, sumar la información positiva-negativa obtenida a un valor absoluto 0,125 del valor reconstruido, establecer el valor reconstruido de 0,125 o -0,125 como error de cuantificación descodificado de segundo redondeo, y sumar el error de cuantificación descodificado de primer redondeo y el error de cuantificación descodificado de segundo redondeo para obtener un valor de error descodificado correspondiente a dicha muestra entre las muestras cuyos números enteros descodificados correspondientes no son 0,
para cada una de las muestras cuyos números enteros descodificados correspondientes son 0, descodificar un código de primer redondeo de un bit incluido en el código de error para obtener información positiva-negativa, sumar la información positiva-negativa obtenida a un valor absoluto A del valor reconstruido, el cual es un valor positivo menor de 0,25, establecer el valor reconstruido A o -A como un error de cuantificación descodificado de primer redondeo, descodificar un código de segundo redondeo de un bit incluido en el código de error de entrada para obtener información positiva-negativa, sumar la información positiva-negativa obtenida a un valor absoluto A/2 del valor reconstruido, establecer el valor reconstruido A/2 o -A/2 como error de cuantificación descodificado de segundo redondeo, y sumar el error de cuantificación descodificado de primer redondeo y el error de cuantificación descodificado de segundo redondeo para obtener un valor de error descodificado correspondiente a dicha muestra entre las muestras cuyos números enteros descodificados correspondientes son 0.
3. Un programa adaptado para hacer que un ordenador ejecute las etapas del método según la reivindicación 1.
4. Un medio de grabación legible con ordenador que tiene almacenado en el mismo el programa según la reivindicación 3.
ES16195433T 2011-04-05 2012-03-26 Descodificación de una señal acústica Active ES2704742T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011083740 2011-04-05

Publications (1)

Publication Number Publication Date
ES2704742T3 true ES2704742T3 (es) 2019-03-19

Family

ID=46969018

Family Applications (2)

Application Number Title Priority Date Filing Date
ES16195433T Active ES2704742T3 (es) 2011-04-05 2012-03-26 Descodificación de una señal acústica
ES12767213.7T Active ES2617958T3 (es) 2011-04-05 2012-03-26 Codificación de una señal acústica

Family Applications After (1)

Application Number Title Priority Date Filing Date
ES12767213.7T Active ES2617958T3 (es) 2011-04-05 2012-03-26 Codificación de una señal acústica

Country Status (10)

Country Link
US (3) US10515643B2 (es)
EP (3) EP3154057B1 (es)
JP (1) JP5603484B2 (es)
KR (1) KR101569060B1 (es)
CN (1) CN103460287B (es)
ES (2) ES2704742T3 (es)
PL (1) PL3154057T3 (es)
RU (1) RU2571561C2 (es)
TR (1) TR201900411T4 (es)
WO (1) WO2012137617A1 (es)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5997592B2 (ja) * 2012-04-27 2016-09-28 株式会社Nttドコモ 音声復号装置
EP2757559A1 (en) * 2013-01-22 2014-07-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for spatial audio object coding employing hidden objects for signal mixture manipulation
CN107369454B (zh) * 2014-03-21 2020-10-27 华为技术有限公司 语音频码流的解码方法及装置
PL3385948T3 (pl) * 2014-03-24 2020-01-31 Nippon Telegraph And Telephone Corporation Sposób kodowania, koder, program i nośnik zapisu
JP6270992B2 (ja) * 2014-04-24 2018-01-31 日本電信電話株式会社 周波数領域パラメータ列生成方法、周波数領域パラメータ列生成装置、プログラム及び記録媒体
KR101860143B1 (ko) * 2014-05-01 2018-05-23 니폰 덴신 덴와 가부시끼가이샤 주기성 통합 포락 계열 생성 장치, 주기성 통합 포락 계열 생성 방법, 주기성 통합 포락 계열 생성 프로그램, 기록매체
PL3859734T3 (pl) * 2014-05-01 2022-04-11 Nippon Telegraph And Telephone Corporation Urządzenie dekodujące sygnał dźwiękowy, sposób dekodowania sygnału dźwiękowego, program i nośnik rejestrujący
EP3786949B1 (en) * 2014-05-01 2022-02-16 Nippon Telegraph And Telephone Corporation Coding of a sound signal
ES2732859T3 (es) * 2014-05-01 2019-11-26 Nippon Telegraph & Telephone Codificador, descodificador, método de codificación, método de descodificación, programa de codificación, programa de descodificación y medio de grabación
CN111968656B (zh) * 2014-07-28 2023-11-10 三星电子株式会社 信号编码方法和装置以及信号解码方法和装置
WO2016121824A1 (ja) * 2015-01-30 2016-08-04 日本電信電話株式会社 パラメータ決定装置、方法、プログラム及び記録媒体
JP6387117B2 (ja) * 2015-01-30 2018-09-05 日本電信電話株式会社 符号化装置、復号装置、これらの方法、プログラム及び記録媒体
TWI758146B (zh) 2015-03-13 2022-03-11 瑞典商杜比國際公司 解碼具有增強頻譜帶複製元資料在至少一填充元素中的音訊位元流
US11468905B2 (en) * 2016-09-15 2022-10-11 Nippon Telegraph And Telephone Corporation Sample sequence converter, signal encoding apparatus, signal decoding apparatus, sample sequence converting method, signal encoding method, signal decoding method and program
WO2018225412A1 (ja) * 2017-06-07 2018-12-13 日本電信電話株式会社 符号化装置、復号装置、平滑化装置、逆平滑化装置、それらの方法、およびプログラム
EP3644515B1 (en) * 2017-06-22 2022-08-24 Nippon Telegraph And Telephone Corporation Encoding device, decoding device, encoding method, decoding method and program
WO2019167706A1 (ja) * 2018-03-02 2019-09-06 日本電信電話株式会社 符号化装置、符号化方法、プログラム、および記録媒体
KR20230058546A (ko) * 2018-04-05 2023-05-03 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘) 컴포트 노이즈 생성 지원
JP7173134B2 (ja) * 2018-04-13 2022-11-16 日本電信電話株式会社 符号化装置、復号装置、符号化方法、復号方法、プログラム、および記録媒体
JP7322620B2 (ja) * 2019-09-13 2023-08-08 富士通株式会社 情報処理装置、情報処理方法および情報処理プログラム

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03191628A (ja) * 1989-12-21 1991-08-21 Toshiba Corp 可変レート符号化方式
JP2686350B2 (ja) * 1990-07-11 1997-12-08 シャープ株式会社 音声情報圧縮装置
US6091460A (en) * 1994-03-31 2000-07-18 Mitsubishi Denki Kabushiki Kaisha Video signal encoding method and system
JP3170193B2 (ja) * 1995-03-16 2001-05-28 松下電器産業株式会社 画像信号の符号化装置及び復号装置
US5956674A (en) * 1995-12-01 1999-09-21 Digital Theater Systems, Inc. Multi-channel predictive subband audio coder using psychoacoustic adaptive bit allocation in frequency, time and over the multiple channels
JP3491425B2 (ja) * 1996-01-30 2004-01-26 ソニー株式会社 信号符号化方法
US20030039648A1 (en) * 1998-09-16 2003-02-27 Genentech, Inc. Compositions and methods for the diagnosis and treatment of tumor
US6677262B2 (en) * 2000-07-05 2004-01-13 Shin-Etsu Chemical Co., Ltd. Rare earth oxide, basic rare earth carbonate, making method, phosphor, and ceramic
US7136418B2 (en) * 2001-05-03 2006-11-14 University Of Washington Scalable and perceptually ranked signal coding and decoding
AU2003213439A1 (en) * 2002-03-08 2003-09-22 Nippon Telegraph And Telephone Corporation Digital signal encoding method, decoding method, encoding device, decoding device, digital signal encoding program, and decoding program
US7275036B2 (en) * 2002-04-18 2007-09-25 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for coding a time-discrete audio signal to obtain coded audio data and for decoding coded audio data
JP4296753B2 (ja) * 2002-05-20 2009-07-15 ソニー株式会社 音響信号符号化方法及び装置、音響信号復号方法及び装置、並びにプログラム及び記録媒体
DE10236694A1 (de) * 2002-08-09 2004-02-26 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum skalierbaren Codieren und Vorrichtung und Verfahren zum skalierbaren Decodieren
US7502743B2 (en) * 2002-09-04 2009-03-10 Microsoft Corporation Multi-channel audio encoding and decoding with multi-channel transform selection
KR100477699B1 (ko) 2003-01-15 2005-03-18 삼성전자주식회사 양자화 잡음 분포 조절 방법 및 장치
US8107535B2 (en) * 2003-06-10 2012-01-31 Rensselaer Polytechnic Institute (Rpi) Method and apparatus for scalable motion vector coding
DE10345996A1 (de) * 2003-10-02 2005-04-28 Fraunhofer Ges Forschung Vorrichtung und Verfahren zum Verarbeiten von wenigstens zwei Eingangswerten
US7668712B2 (en) * 2004-03-31 2010-02-23 Microsoft Corporation Audio encoding and decoding with intra frames and adaptive forward error correction
US7587254B2 (en) * 2004-04-23 2009-09-08 Nokia Corporation Dynamic range control and equalization of digital audio using warped processing
JP4734859B2 (ja) * 2004-06-28 2011-07-27 ソニー株式会社 信号符号化装置及び方法、並びに信号復号装置及び方法
US7895034B2 (en) * 2004-09-17 2011-02-22 Digital Rise Technology Co., Ltd. Audio encoding system
EP1821414B1 (en) * 2004-12-07 2016-06-22 Nippon Telegraph And Telephone Corporation Information compression-coding device, method thereof, program thereof and recording medium storing the program
ATE521143T1 (de) * 2005-02-23 2011-09-15 Ericsson Telefon Ab L M Adaptive bitzuweisung für die mehrkanal- audiokodierung
KR100818268B1 (ko) * 2005-04-14 2008-04-02 삼성전자주식회사 오디오 데이터 부호화 및 복호화 장치와 방법
US7617436B2 (en) * 2005-08-02 2009-11-10 Nokia Corporation Method, device, and system for forward channel error recovery in video sequence transmission over packet-based network
KR20070046752A (ko) * 2005-10-31 2007-05-03 엘지전자 주식회사 신호 처리 방법 및 장치
TWI276047B (en) * 2005-12-15 2007-03-11 Ind Tech Res Inst An apparatus and method for lossless entropy coding of audio signal
JP4548348B2 (ja) 2006-01-18 2010-09-22 カシオ計算機株式会社 音声符号化装置及び音声符号化方法
US8036903B2 (en) * 2006-10-18 2011-10-11 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Analysis filterbank, synthesis filterbank, encoder, de-coder, mixer and conferencing system
KR101471978B1 (ko) 2007-02-02 2014-12-12 삼성전자주식회사 오디오 신호의 음질 향상을 위한 데이터 삽입 방법 및 그장치
JP4871894B2 (ja) * 2007-03-02 2012-02-08 パナソニック株式会社 符号化装置、復号装置、符号化方法および復号方法
CN101308657B (zh) * 2007-05-16 2011-10-26 中兴通讯股份有限公司 一种基于先进音频编码器的码流合成方法
JP5071479B2 (ja) * 2007-07-04 2012-11-14 富士通株式会社 符号化装置、符号化方法および符号化プログラム
US7937574B2 (en) * 2007-07-17 2011-05-03 Advanced Micro Devices, Inc. Precise counter hardware for microcode loops
EP2063417A1 (en) * 2007-11-23 2009-05-27 Deutsche Thomson OHG Rounding noise shaping for integer transform based encoding and decoding
JP4825916B2 (ja) * 2007-12-11 2011-11-30 日本電信電話株式会社 符号化方法、復号化方法、これらの方法を用いた装置、プログラム、記録媒体
KR101452722B1 (ko) * 2008-02-19 2014-10-23 삼성전자주식회사 신호 부호화 및 복호화 방법 및 장치
US8386271B2 (en) * 2008-03-25 2013-02-26 Microsoft Corporation Lossless and near lossless scalable audio codec
US20100191534A1 (en) * 2009-01-23 2010-07-29 Qualcomm Incorporated Method and apparatus for compression or decompression of digital signals
JP4866484B2 (ja) * 2009-01-23 2012-02-01 日本電信電話株式会社 パラメータ選択方法、パラメータ選択装置、プログラム及び記録媒体
JP2010225949A (ja) 2009-03-25 2010-10-07 Kyocera Corp 発熱体の放熱構造
RU2510974C2 (ru) * 2010-01-08 2014-04-10 Ниппон Телеграф Энд Телефон Корпорейшн Способ кодирования, способ декодирования, устройство кодера, устройство декодера, программа и носитель записи
JP5612698B2 (ja) 2010-10-05 2014-10-22 日本電信電話株式会社 符号化方法、復号方法、符号化装置、復号装置、プログラム、記録媒体

Also Published As

Publication number Publication date
PL3154057T3 (pl) 2019-04-30
EP3441967A1 (en) 2019-02-13
US20200090664A1 (en) 2020-03-19
US20200090665A1 (en) 2020-03-19
US10515643B2 (en) 2019-12-24
ES2617958T3 (es) 2017-06-20
WO2012137617A1 (ja) 2012-10-11
EP2696343A4 (en) 2014-11-12
JPWO2012137617A1 (ja) 2014-07-28
KR20130133854A (ko) 2013-12-09
RU2571561C2 (ru) 2015-12-20
US11074919B2 (en) 2021-07-27
US20140019145A1 (en) 2014-01-16
EP2696343A1 (en) 2014-02-12
US11024319B2 (en) 2021-06-01
RU2013143624A (ru) 2015-05-10
CN103460287B (zh) 2016-03-23
KR101569060B1 (ko) 2015-11-13
TR201900411T4 (tr) 2019-02-21
CN103460287A (zh) 2013-12-18
JP5603484B2 (ja) 2014-10-08
EP2696343B1 (en) 2016-12-21
EP3154057B1 (en) 2018-10-17
EP3154057A1 (en) 2017-04-12

Similar Documents

Publication Publication Date Title
ES2704742T3 (es) Descodificación de una señal acústica
ES2558508T3 (es) Método de codificación, codificador, método de determinación de la cantidad de una característica periódica, aparato de determinación de la cantidad de una característica periódica, programa y medio de grabación
ES2657039T3 (es) Método de codificación, dispositivo de codificación, programa, y medio de grabación
JP5612698B2 (ja) 符号化方法、復号方法、符号化装置、復号装置、プログラム、記録媒体
KR101762204B1 (ko) 부호화 방법, 복호 방법, 부호화 장치, 복호 장치, 프로그램 및 기록 매체
ES2628189T3 (es) Método de codificación, método de descodificación, codificador, descodificador, programa y medio de grabación
ES2742481T3 (es) Método de codificación, codificador, programa y medio de grabación
JP5694751B2 (ja) 符号化方法、復号方法、符号化装置、復号装置、プログラム、記録媒体
JP5256375B2 (ja) 符号化方法、復号方法、装置、プログラム及び記録媒体
ES2883848T3 (es) Codificador, descodificador, método de codificación, método de descodificación, programa de codificación, programa de descodificación y soporte de registro
JP5579932B2 (ja) 符号化方法、装置、プログラム及び記録媒体
JP5786044B2 (ja) 符号化方法、符号化装置、復号方法、復号装置、プログラム及び記録媒体
JPWO2018225412A1 (ja) 符号化装置、復号装置、平滑化装置、逆平滑化装置、それらの方法、およびプログラム