ES2559981T3 - Método de codificación, método de decodificación, dispositivo, programa y medio de registro - Google Patents

Método de codificación, método de decodificación, dispositivo, programa y medio de registro Download PDF

Info

Publication number
ES2559981T3
ES2559981T3 ES11803544.3T ES11803544T ES2559981T3 ES 2559981 T3 ES2559981 T3 ES 2559981T3 ES 11803544 T ES11803544 T ES 11803544T ES 2559981 T3 ES2559981 T3 ES 2559981T3
Authority
ES
Spain
Prior art keywords
value
samples
mode
decoded
normalization
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
ES11803544.3T
Other languages
English (en)
Inventor
Masahiro Fukui
Shigeaki Sasaki
Yusuke Hiwasaki
Shoichi KOYAMA
Kimitaka Tsutsumi
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 ES2559981T3 publication Critical patent/ES2559981T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/038Vector quantisation, e.g. TwinVQ audio
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3082Vector coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/94Vector quantisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

Un método de codificación que comprende: un paso de selección de modo de codificación de selección de un segundo modo de codificación cuando un valor de evaluación es un segundo valor de referencia o menor, seleccionar un primer modo de codificación distinto del segundo modo de codificación cuando el segundo modo de codificación no es seleccionado, y generar una información de modo que representa un modo de codificación seleccionado, en donde el valor de evaluación corresponde al número de muestras que corresponde a valores menores que un primer valor de referencia entre un número predeterminado de muestras de entrada, y el segundo modo de codificación es un modo en el que un valor de normalización que es un valor representativo del número predeterminado de muestras se cuantifica para obtener un valor de normalización cuantificado y un índice de cuantificación del valor de normalización que corresponde al valor de normalización cuantificado, un valor de la diferencia para cada muestra que se obtiene sustrayendo un valor que corresponde al valor de normalización cuantificado de un valor que corresponde a la magnitud de una muestra se fija como un candidato de cuantificación que corresponde a la muestra cuando el valor de la diferencia es positivo y la muestra es positiva, el signo del valor de la diferencia se invierte y el resultado se fija en el candidato de cuantificación que corresponde a la muestra cuando el valor de la diferencia es positivo y la muestra es negativa, y una pluralidad de candidatos de cuantificación se cuantifican vectorialmente de forma conjunta para obtener un índice de cuantificación vectorial; y un paso de codificación de codificación del número predeterminado de muestras por el primer modo de codificación o el segundo modo de codificación que es seleccionado en el paso de selección de modo de codificación, caracterizado por que: el primer modo de codificación es un modo en el que el índice de cuantificación vectorial se obtiene por cuantificación vectorial de acuerdo con un modo de cuantificación en el que los valores cuantificados no cero se obtienen solamente para algunas del número de muestras predeterminado y los valores cuantificados cero se obtienen para las restantes muestras; y el segundo modo de codificación incluye un proceso de fijar en cero como el candidato de cuantificación que corresponde a cada una de las muestras cuando el valor de la diferencia no es positivo.

Description

5
10
15
20
25
30
35
40
45
50
DESCRIPCION
Metodo de codificacion, metodo de decodificacion, dispositivo, programa y medio de registro Campo tecnico
La presente invencion se refiere a una tecnolog^a para codificar o decodificar secuencias de senales de senales acusticas, senales de video, y otras senales, tales como voz y musica, mediante una cuantificacion vectorial.
Tecnica anterior
En un dispositivo de codificacion descrito en el texto 1 de la Patente, una senal de entrada es primero normalizada mediante division por un valor de normalizacion. El valor de normalizacion se cuantifica para generar un mdice de cuantificacion. La senal de entrada normalizada es cuantificada vectorialmente para generar el mdice de un vector de cuantificacion representativo. Los indices generados, los cuales son el mdice de cuantificacion y el mdice del vector de cuantificacion representativo, son extrafdos hacia un dispositivo de decodificacion.
El dispositivo de decodificacion decodifica el mdice de cuantificacion para generar un valor de normalizacion. El dispositivo de decodificacion tambien decodifica el mdice del vector de cuantificacion representativo para generar una senal decodificada. La senal decodificada normalizada se multiplica por el valor de normalizacion para generar una senal decodificada.
Para la cuantificacion vectorial, por ejemplo, un metodo de cuantificacion vectorial tal como la cuantificacion vectorial algebraica (AVQ) descrita en el texto 1 no de la patente se aplica a los valores normalizados de un numero predeterminado de muestras. En este metodo de cuantificacion vectorial se obtiene un vector de cuantificacion representativo dando impulsos dentro de un intervalo de un numero de bits de cuantificacion anteriormente fijado. Esto es, en este metodo de cuantificacion vectorial, se asignan bits que representan valores de las muestras y se obtienen valores cuantificados no cero para solamente algunas de las muestras del numero predeterminado mientras que tales bits no son asignados y los valores cuantificados cero se obtienen para las muestras restantes.
El texto 2 no de la patente describe el codificador-decodificador G722.1FB, un codificador-decodificador de banda ancha completa de baja complejidad para habla conversacional y codificacion de audio. El algoritmo de codificacion esta basado en la codificacion de transformacion con la resolucion de tiempo adaptativa, la asignacion de bits adaptativa y la cuantificacion vectorial reticular de baja complejidad.
[Texto de la tecnica anterior]
[Texto de la patente]
Texto 1 de la Patente: Solicitud de Patente Japonesa abierta a la inspeccion publica N° H7-261800.
Texto no de la patente
Texto 1 no de la patente: Recomendacion ITU-TG718, SERIE G: SISTEMAS Y MEDIOS DE TRANSMISION, SISTEMAS DIGITALES Y REDES, Equipos terminales digitales - Codificacion de senales de voz y audio, Codificacion de velocidad de bits variable incorporada en trama de errores solida de banda estrecha y banda ancha, de habla y audio a partir de 8-32 Kbits/s.
Texto 2 no de la Patente: Borrador de nueva Recomendacion G 722.1-FB de ITU-T, Codificacion de banda de audio completa de baja complejidad para aplicaciones conversacionales de alta calidad, 29 de abril de 2008.
Compendio de la invencion
Problemas para ser resueltos por la invencion
En un dispositivo de codificacion mediante el uso de la anterior cuantificacion vectorial, y el correspondiente dispositivo de decodificacion, cuando un numero predeterminado de bits de cuantificacion es menor que el numero de bits necesarios para la cuantificacion, se aumenta la frecuencia en la que un componente de frecuencias que esta incluido en la senal de entrada no es encontrado en una senal decodificada (la senal decodificada carece de los componentes de la frecuencia). Un componente de frecuencias que esta incluido en la senal de entrada pero no es encontrado en la senal decodificada se denomina un agujero espectral. La ocurrencia del agujero espectral aumenta la frecuencia en la que la presencia o ausencia del componente de la frecuencia en la senal decodificada vana discontinuamente a lo largo del tiempo. Los seres humanos son sensibles a estas variaciones temporalmente discontinuas en su presencia o ausencia. Cuando la senal de entrada es una senal acustica, por ejemplo, estas variaciones pueden ser percibidas como un ruido conocido como ruido musical. Ademas, cuando la senal de entrada es una senal de video ocurre un problema de ruido de bloque, que corresponde desfavorablemente a un ruido musical en una senal acustica.
5
10
15
20
25
30
35
40
45
50
55
El numero de bits necesarios para la cuantificacion vana de acuerdo con el tipo de la senal de entrada. De acuerdo con el tipo de la senal de entrada, incluso si se usan los anteriores dispositivos de codificacion y decodificacion, el ruido musical y el ruido de bloque (en adelante el ruido musical y el ruido de bloque seran denominados “ruido musical y similar”) no pueden causar problemas importantes, o los anteriores dispositivos de codificacion y decodificacion pueden ser preferiblemente para mejorar la exactitud de la codificacion.
Esto es, los metodos de codificacion y de decodificacion apropiados vanan de acuerdo con el tipo de la senal de entrada. Tal problema puede ocurrir no solamente cuando la senal de entrada es una senal del dominio de frecuencias sino tambien cuando la senal de entrada es una senal de dominio de tiempos.
A la vista de tales problemas, la presente invencion proporciona una tecnologfa que reduce el ruido musical y similar apropiadamente de acuerdo con el tipo de la senal de entrada cuando una longitud suficiente de bits del codigo no esta asegurada y todas las muestras que tienen valores grandes en la senal de entrada no son cuantificados por un metodo de cuantificacion vectorial tal como la AVQ.
Medios para resolver los problemas
La presente invencion propone un metodo de codificacion, un metodo de decodificacion, un dispositivo de codificacion, un dispositivo de decodificacion, un programa y un medio lefble por un ordenador que tiene las caractensticas de las respectivas reivindicaciones independientes. En las reivindicaciones dependientes se describen las realizaciones preferidas.
De acuerdo con un aspecto, para la codificacion, cuando un valor de evaluacion es un segundo valor de referencia o menor, se selecciona un segundo modo de codificacion en donde el valor de evaluacion corresponde al numero de muestras que corresponde a los valores menores que un primer valor de referencia entre un numero predeterminado de muestras de entrada. En el segundo modo de codificacion un valor de normalizacion que es un valor representativo del numero de muestras predeterminado se cuantifica para obtener un valor de normalizacion cuantificado y un mdice de cuantificacion del valor de normalizacion que corresponde al valor de normalizacion cuantificado; cuando un valor de la diferencia que se obtiene sustrayendo un valor que corresponde al valor de normalizacion cuantificado de un valor que corresponde a la magnitud de cada muestra es positivo y la muestra es positiva, el valor de la diferencia se fija como un candidato de cuantificacion que corresponde a la muestra; cuando el valor de la diferencia es positivo y la muestra es negativa, se invierte el signo (el signo positivo o negativo) del valor de la diferencia y el resultado se fija como el candidato de cuantificacion que corresponde a la muestra; y una pluralidad de candidatos de cuantificacion se cuantifica vectorialmente de forma conjunta para obtener un mdice de cuantificacion vectorial. Cuando no se selecciona el segundo modo de codificacion, se selecciona un primer modo de codificacion distinto del segundo modo de codificacion. Se genera la informacion de modo que representa el modo de codificacion seleccionado, y el numero predeterminado de muestras son codificadas por el primer modo de codificacion o por el segundo modo de codificacion que se selecciona.
Para la decodificacion, cuando la informacion de modo de entrada tiene un segundo valor, se selecciona un segundo modo de decodificacion. En el segundo modo de decodificacion, se obtiene un valor de normalizacion decodificado que corresponde a un mdice de cuantificacion del valor de normalizacion de entrada; se obtiene una pluralidad de valores que corresponden a un mdice de cuantificacion vectorial de entrada como los valores decodificados; cuando el valor decodificado es cero, se obtiene como una senal decodificada un valor que tiene una magnitud que corresponde a un valor de normalizacion recalculado que toma un valor que disminuye con la suma creciente de los valores absolutos de un numero predeterminado de valores decodificados; cuando el valor decodificado es positivo, la suma lineal del valor decodificado y del valor de normalizacion decodificado se obtiene como una senal decodificada; y cuando el valor decodificado es negativo, el signo de la suma lineal del valor absoluto del valor decodificado y del valor de normalizacion decodificado es invertido y el resultado se fija como una senal decodificada. Cuando la informacion de modo tiene un primer valor, se selecciona un primer modo de decodificacion distinto del segundo modo de decodificacion. El proceso de decodificacion es realizado por el primer valor de decodificacion o el segundo modo de decodificacion que es seleccionado.
Efectos de la invencion
Cuando se codifican muchas muestras que tienen grandes valores pueden producirse agujeros espectrales, por lo que se puede aumentar la posibilidad de la ocurrencia del ruido musical y similar. En el proceso de codificacion de la presente invencion se estima la posibilidad de la ocurrencia del ruido musical y similar por la magnitud del valor de evaluacion. Cuando la posibilidad es alta, se selecciona un modo de cuantificacion que cuantifica activamente las muestras dominantes que incluyen muestras que no son cuantificadas por un metodo de cuantificacion vectorial tal como la AVQ, y se genera la informacion de modo que representa el modo de codificacion seleccionado. Por consiguiente, incluso si una longitud de bits del codigo es insuficiente y todas las muestras grandes de la senal de entrada no pueden ser cuantificadas por un metodo de cuantificacion vectorial tal como la AVQ, la ocurrencia del ruido musical y similar puede ser reducida apropiadamente de acuerdo con el tipo de la senal de entrada. En el proceso de decodificacion de la presente invencion, como se usa el modo de decodificacion de acuerdo con la informacion de modo, incluso si la longitud de bits del codigo es insuficiente y todas las muestras grandes de la
5
10
15
20
25
30
35
40
senal de entrada no pueden ser cuantificadas por el metodo de cuantificacion vectorial AVQ o similar, el ruido musical y similar pueden ser reducidos apropiadamente de acuerdo con el tipo de las senales de entrada.
Breve descripcion de los dibujos
La Figura 1 es un diagrama de bloques funcional de ejemplos de un dispositivo de codificacion y de un dispositivo de decodificacion.
La Figura 2 es un diagrama de bloques funcional de un ejemplo de un segundo codificador.
La Figura 3 es un diagrama de bloques funcional de un segundo decodificador.
La Figura 4 es un diagrama de flujos de un ejemplo de un metodo de codificacion.
La Figura 5 es un diagrama de flujos de un ejemplo del Paso E3.
La Figura 6 es un diagrama de flujos de un ejemplo del Paso E3.
La Figura 7 es un diagrama de flujos de un ejemplo del Paso E3.
La Figura 8 es un diagrama de flujos de un ejemplo del Paso E3.
La Figura 9 es un diagrama de flujos de un ejemplo del Paso E3.
La Figura 10 es un diagrama de flujos de un ejemplo del Paso E3.
La Figura 11 es un diagrama de flujos de un ejemplo del Paso E6.
La Figura 12 es un diagrama de flujos de un ejemplo del Paso E62.
La Figura 13 es un diagrama de flujos de un ejemplo del Paso E65.
La Figura 14 es un diagrama de flujos de un ejemplo de un metodo de decodificacion.
La Figura 15 es un diagrama de flujos de un ejemplo del Paso D4.
La Figura 16 es un diagrama de flujos de un ejemplo del Paso D43.
La Figura 17 es un diagrama de flujos de ejemplos de los Pasos D44 y D44'.
La Figura 18 es un diagrama de flujos de ejemplos de los Pasos D44 y D44'.
La Figura 19 es un diagrama de flujos de un ejemplo del Paso D44'.
La Figura 20 es un diagrama de flujos de ejemplos de los Pasos D43, D44 y D44'.
La Figura 21 es un diagrama de flujos de ejemplos de los Pasos D43, D44 y D44'.
Descripcion detallada de las realizaciones
En adelante, las realizaciones de la presente invencion se describiran con detalle.
<Principio>
En un proceso de codificacion se determina si un numero de muestras predeterminado, que estan incluidas en la senal de entrada son escasas o no lo son. Si se determina que las muestras no son escasas, las muestras son codificadas por un modo de codificacion que incluye un proceso para reducir el ruido musical y similar. Por otra parte, si se determina que las muestras son escasas, las muestras son codificadas por un metodo de codificacion que no incluye un proceso para reducir el ruido musical y similar, por ejemplo. En el proceso de decodificacion se introduce la informacion de modo que especifica un modo de codificacion, un modo de decodificacion es especificado por la informacion de modo, y el codigo es decodificado por el modo de decodificacion especificado. Aqrn, “un numero predeterminado de muestras es escaso” significa que las muestras tienen amplitudes pequenas, por ejemplo, solamente algunas de las muestras tiene una amplitud grande y las otras muestras tienen una amplitud de casi cero.
Cuando el numero predeterminado de muestras no es escaso, el numero de bits necesarios para la cuantificacion de muestras tiende a ser grande. Esto a menudo aumenta la frecuencia en la que el numero predeterminado de bits de cuantificacion es menor que los bits necesarios para la cuantificacion, lo que da lugar a un importante problema de ruido musical y similar. Por consiguiente, cuando las muestras no son escasas se debenan usar unos modos de codificacion y de decodificacion capaces de reducir el ruido musical y similar.
5
10
15
20
25
30
35
40
45
50
55
Por otra parte, cuando el numero predeterminado de muestras es escaso, el numero de bits necesarios para la cuantificacion de muestras tiende a ser pequeno. Esto a menudo disminuye la frecuencia en la que el numero predeterminado de bits de cuantificacion es menor que los bits necesarios para la cuantificacion, y el problema del ruido musical y similar no es importante. Por consiguiente, cuando las muestras son escasas, la necesidad de reducir el ruido musical y similar es baja, y la senal de entrada puede ser codificada por un modo de codificacion que no tiene un proceso para reducir el ruido musical y similar.
Esto se describira en un Ejemplo. Primero, los modos de codificacion y los modos de decodificacion, que se han seleccionado basandode en si las muestras son escasas o no, seran presentados como un ejemplo. En adelante, un modo de codificacion y un modo de decodificacion que son seleccionados cuando las muestras son escasas seran denominados un primer modo de codificacion y un primer modo de decodificacion, respectivamente, y seran denominados colectivamente como un primer modo; y un modo de codificacion y un modo de decodificacion que son seleccionados cuando las muestras no son escasas seran denominados un segundo modo de codificacion y un segundo modo de decodificacion, respectivamente, y son denominados colectivamente como un segundo modo. La informacion de modo s que corresponde al primer modo es “0”, y la informacion de modo que corresponde al segundo modo es “1”.
<Primer Modo (s=0)>
Un ejemplo del primer modo es un modo de cuantificacion vectorial tal como la AVQ descrita en el texto 1 no de la patente, que da impulsos, dentro de un intervalo de un numero de bits de cuantificacion anteriormente fijado, a una secuencia de muestras obtenida normalizando un numero predeterminado de muestras por un valor de normalizacion cuantificado.
En el primer modo de codificacion ilustrado se calcula un valor de normalizacion que es representativo del numero predeterminado de muestras de entrada. El valor de normalizacion se cuantifica para obtener un valor de normalizacion cuantificado y un mdice de cuantificacion del valor de normalizacion que corresponde al valor de normalizacion cuantificado. La secuencia de muestras que se obtiene dividiendo (normalizando) el numero predeterminado de muestras de entrada por el valor de normalizacion cuantificado es cuantificado vectorialmente por un modo de cuantificacion vectorial en el que los valores cuantificados no cero se obtienen solamente para algunas del numero predeterminado de muestras y los valores cuantificados cero se obtienen para los restantes ejemplos, por lo que se obtiene un mdice de cuantificacion vectorial.
Una secuencia de muestras que tiene una correlacion alta con la secuencia de muestras del numero de muestras predeterminado puede ser seleccionada a partir de una pluralidad de secuencias de muestras en la que los valores cuantificados no cero se dan solamente a algunas del numero de muestras predeterminado, y los valores cuantificados cero se dan a las restantes muestras, para obtener el mdice del vector de cuantificacion representativo, y se puede obtener un mdice de cuantificacion del valor de normalizacion que representa un valor de normalizacion cuantificado, el cual minimiza el error entre el numero de muestras predeterminado de entrada y la secuencia de muestras obtenida multiplicando el vector de cuantificacion representativo por el valor de normalizacion cuantificado.
En el primer modo de decodificacion ilustrado el mdice de cuantificacion del valor de normalizacion se decodifica para generar un valor de normalizacion. Ademas, el mdice de cuantificacion vectorial se decodifica para generar una secuencia de muestras. Una secuencia de muestras de senales decodificadas se obtiene multiplicando las muestras de la secuencia de muestras generada por el valor de normalizacion.
<Ejemplo 1 del Segundo Modo (s=1)>
En el Ejemplo 1 del segundo modo de codificacion se calcula un valor de normalizacion que es representativo de un numero predeterminado de muestras de entrada. El valor de normalizacion se cuantifica para obtener un valor de normalizacion cuantificado y un mdice de cuantificacion del valor de normalizacion que corresponde al valor de normalizacion cuantificado. Cuando un valor de la diferencia que se obtiene sustrayendo un valor que corresponde al valor de normalizacion cuantificado de un valor que corresponde a la magnitud del valor de cada muestra es positivo y el valor de la muestra es positivo, el valor de la diferencia se fija como el candidato de cuantificacion que corresponde a la muestra. Cuando el valor de diferencia es positivo y el valor de la muestra es negativo, el signo del valor de la diferencia se invierte y el resultado se fija como el candidato de cuantificacion que corresponde a la muestra. Cuando el valor de la diferencia no es positivo, se fija cero como el candidato de cuantificacion que corresponde a la muestra. Una pluralidad de candidatos de cuantificacion se cuantifica vectorialmente de forma conjunta para obtener un mdice de cuantificacion vectorial. Para la cuantificacion vectorial, por ejemplo, un metodo de cuantificacion vectorial tal como la cuantificacion vectorial algebraica (AVQ) descrita en el texto 1 no de la patente se aplica al numero predeterminado de candidatos de cuantificacion. En este metodo de cuantificacion vectorial el vector de cuantificacion representativo se obtiene dando impulsos dentro de un intervalo de un numero de bits de cuantificacion anteriormente fijado. Esto es, en este metodo de cuantificacion vectorial se asignan bits para representar los valores de la muestra y valores cuantificados no cero se obtienen para solamente algunos del numero predeterminado de candidatos de cuantificacion, mientras que tales bits no son asignados y los valores
5
10
15
20
25
30
35
40
45
50
55
cuantificados cero se obtienen para los restantes candidatos de cuantificacion. En el metodo de AVQ cualquier valor de cuantificacion que corresponde a un candidato de cuantificacion de cero es cero.
En el Ejemplo 1 del segundo modo de decodificacion se obtiene un valor de normalizacion decodificado que corresponde a un mdice de cuantificacion del valor de normalizacion de entrada. Se obtiene una pluralidad de valores que corresponden a un mdice de cuantificacion del vector de entrada como una pluralidad de valores decodificados. El calculo se realiza para obtener un valor de normalizacion recalculado que disminuye con la suma creciente de los valores absolutos de un numero predeterminado de valores decodificados. Cuando un valor decodificado es positivo, la suma lineal del valor decodificado y del valor de normalizacion decodificado se obtiene como una senal decodificada. Cuando un valor decodificado es negativo, el signo de la suma lineal del valor decodificado y del valor de normalizacion decodificado se invierte y el resultado se obtiene como una senal decodificada. Cuando un valor decodificado es cero, se obtiene una secuencia de muestras de senales decodificadas, que es una secuencia de muestras de senales decodificadas cada una con un valor (un valor que tiene la magnitud que corresponde al valor de normalizacion recalculado) obtenido mediante la inversion aleatoria del signo del producto del valor de normalizacion recalculado y una primera constante.
En el Ejemplo 1 del segundo modo de codificacion seleccionando algunos componentes dominantes que incluyen muestras que no son cuantificadas por el metodo de AVQ o similar de todos los componentes de la frecuencia y cuantificandolos activamente, se puede impedir la ocurrencia de agujeros espectrales relacionados con los componentes dominantes y se puede reducir el ruido musical.
En el Ejemplo 1 del segundo modo de decodificacion, asignando un valor no cero basado en el valor de normalizacion recalculado cuando el valor decodificado es cero, se puede impedir un agujero espectral que puede ocurrir si, por ejemplo, una senal de entrada es una senal de frecuencia y se puede reducir el ruido musical.
<Ejemplo 2 del Segundo Modo (s=1)>
Se puede usar el segundo modo que sigue.
En el Ejemplo 2 del segundo modo de codificacion se calcula un valor de normalizacion que es representativo de un numero predeterminado de muestras de entrada. El valor de normalizacion se cuantifica para obtener un valor de normalizacion cuantificado, y se obtiene un mdice de cuantificacion del valor de normalizacion que corresponde al valor de normalizacion cuantificado. Cuando un valor de la diferencia que se obtiene sustrayendo un valor que corresponde al valor de normalizacion cuantificado de un valor que corresponde a la magnitud del valor de cada muestra es positivo y el valor de la muestra es positivo, el valor de la diferencia se fija como el candidato de cuantificacion que corresponde a la muestra. Cuando el valor de la diferencia es positivo y el valor de la muestra es negativo, se invierte el signo del valor de la diferencia y el resultado se fija como el candidato de cuantificacion que corresponde a la muestra. Una pluralidad de candidatos de cuantificacion es cuantificada vectorialmente de forma conjunta para obtener un mdice de cuantificacion vectorial. Ademas, dentro de un intervalo del numero de bits no realmente usados para codigos que corresponden al mdice de cuantificacion vectorial entre los bits asignados para codigos que corresponden a un mdice de cuantificacion vectorial, se extrae la informacion de signo que representa el signo de la muestra para los que el valor de la diferencia no es positivo. El metodo de cuantificacion vectorial es el mismo que el del Ejemplo 1 del segundo metodo. Cuando el valor de la diferencia no es positivo se fija cero como el candidato que corresponde a la muestra.
En el ejemplo 2 del segundo modo de decodificacion se obtiene un valor de normalizacion decodificado que corresponde a un mdice de cuantificacion del valor de normalizacion. Se obtiene una pluralidad de valores que corresponden a un mdice de cuantificacion vectorial de entrada como una pluralidad de valores de decodificados. Se realiza un calculo para obtener un valor de normalizacion recalculado que disminuye con la suma creciente de los valores absolutos de un numero predeterminado de valores decodificados. Para cada uno de los valores decodificados, cuando el valor decodificado es positivo, la suma lineal del valor decodificado y del valor de normalizacion decodificado se obtiene como una senal decodificada; y cuando el valor decodificado es negativo se invierte el signo de la suma lineal del valor decodificado y del valor de normalizacion decodificado y se obtiene el resultado como una senal decodificada. Cuando el valor decodificado es cero y se introduce la informacion de signo que corresponde al valor decodificado, un valor (un valor que tiene la magnitud que corresponde al valor de normalizacion recalculado) obtenido dando el signo representado por la informacion de signo a un producto del valor de normalizacion recalculado y se obtiene una primera constante como una senal decodificada. Cuando el valor decodificado es cero y no se introduce la informacion de signo que corresponde al valor decodificado, se obtiene una secuencia de muestras de la senal decodificada, que es una secuencia de muestras de la senal decodificada cada una con un valor (valor que tiene la magnitud que corresponde al valor de normalizacion recalculado) obtenido por una inversion aleatoria del signo del producto del valor de normalizacion recalculado y una primera constante.
Tambien en el Ejemplo 2 del segundo modo de codificacion se puede evitar la ocurrencia de un agujero espectral y se puede reducir un ruido musical y similar. Ademas, en el Ejemplo 2 del segundo modo de codificacion, como la informacion de signo puede ser transmitida mediante el uso de una zona de bits no usada, se puede mejorar la calidad de la senal decodificada.
5
10
15
20
25
30
35
40
45
50
55
Ademas, en el Ejemplo 2 del segundo modo de decodificacion, se puede eliminar un agujero espectral, y se puede reducir el ruido musical y similar. Tambien, en el ejemplo 2 del segundo modo de decodificacion, mediante el uso de informacion de signo de entrada se puede mejorar la calidad de una senal decodificada.
<Relacion entre Propiedad de Muestras y Modo Optimo>
Mientras que el primer modo no tiene una contramedida para reducir el ruido musical y similar, el segundo modo tiene una contramedida para reducir el ruido musical y similar.
No obstante, cuando un numero predeterminado de muestras es escaso, el ruido musical y similar apenas causan problemas importantes. En el segundo modo, como un valor distinto de cero se asigna apropiadamente mediante el uso del valor de normalizacion recalculado cuando un valor decodificado es cero, la exactitud de codificacion es inferior a la del primer modo cuando un numero predeterminado de muestras de entrada es escaso.
Como antes, como cada modo tiene puntos fuertes y puntos debiles, se debenan usar diferentes modos que dependen de si un numero predeterminado de muestras de entrada es escaso o no. Mas espedficamente, cuando un numero predeterminado de muestras de entrada es escaso (por ejemplo, una senal del dominio de frecuencias de Glockenspiel), el ruido musical y similar pueden causar problemas importantes, y por consiguiente la exactitud de la codificacion puede ser mayor mediante el uso del primer modo que del segundo modo. Por otra parte, cuando un numero predeterminado de muestras de entrada no es escaso (por ejemplo, una voz, sonidos musicales de multiples fuentes, ruido ambiental, o similares), se debena usar el segundo modo en vez del primer modo debido a que el ruido musical y similar causan problemas.
Como se ha descrito antes, seleccionando los diferentes modos que dependen de la propiedad de las muestras de entrada, incluso si una longitud de bits del codigo es suficiente y todas las muestras de valor alto en la senal de entrada no pueden ser cuantificadas por un metodo de cuantificacion vectorial tal como la AVQ, el ruido musical y similar pueden ser reducidos apropiadamente de acuerdo con el tipo de la senal de entrada.
<Configuracion>
Como esta ilustrado en la Figura 1, un dispositivo 11 de codificacion de una realizacion incluye un calculador 112 del valor de normalizacion, un cuantificador 113 del valor de normalizacion, un selector 114 de modo de codificacion, unas unidades de conmutacion 115 y 116, un primer codificador 117, y un segundo codificador 118, por ejemplo. Como esta ilustrado en la Figura 1, un dispositivo 12 de decodificacion de una realizacion incluye un decodificador 123 del valor de normalizacion, unas unidades de conmutacion 125 y 126, un primer decodificador 127, y un segundo decodificador 128, por ejemplo. El dispositivo 11 de codificacion puede incluir un convertidor 111 de dominio de frecuencias, por ejemplo. El dispositivo 12 de decodificacion puede incluir un convertidor 121 de dominio de tiempos, por ejemplo.
El primer codificador 117 es una unidad de procesamiento para codificar mediante un primer modo de codificacion (por ejemplo, el anterior primer modo). El segundo codificador 118 incluye un calculador 1181 del candidato de cuantificacion y un cuantificador vectorial 1182, como esta ilustrado en la Figura 2. El segundo codificador 118 puede incluir un calculador 1183 del valor de normalizacion y una unidad 1184 de salida de informacion de signo. El segundo codificador 118 puede incluir un cuantificador vectorial 1182' en lugar del cuantificador vectorial 1182.
Un primer decodificador 127 es una unidad de procesamiento para decodificar mediante un primer modo de decodificacion (por ejemplo, el anterior primer modo). El segundo decodificador 128 incluye un recalculador 1281 del valor de normalizacion, un decodificador vectorial 1282, y un sintetizador 1283, por ejemplo, como esta ilustrado en la Figura 3. El segundo decodificador 128 puede incluir un calculador 1284 del valor de normalizacion de candidato de decodificacion y una unidad de aplanamiento 1285. El segundo decodificador 128 puede incluir un recalculador 1287 del valor de normalizacion en lugar del recalculador 1281 del valor de normalizacion, puede incluir un decodificador vectorial 1282' en lugar del decodificador vectorial 1282, y puede incluir un sintetizador 1283' en lugar del sintetizador 1283. Ademas, el segundo decodificador 128 puede incluir un sintetizador 1286 en lugar de los sintetizadores 1283 y 1283' y los recalculadores 1281 y 1287 del valor de normalizacion.
<Proceso de codificacion>
El dispositivo 11 de codificacion ejecuta los pasos en un metodo de codificacion ilustrado en la Figura 2.
Se introduce una senal de entrada X(k) en el calculador 112 del valor de normalizacion, el selector 114 de modo de codificacion, y la unidad 115 de conmutacion. La senal de entrada X(k) en este ejemplo es una senal del dominio de frecuencias obtenida transformando en un dominio de frecuencias una senal x(n) de dominio de tiempos que es una senal de la serie de tiempos tal como una senal de voz, una senal acustica, o una senal de imagen. La senal de entrada X(k) del dominio de frecuencias puede ser introducida directamente en el dispositivo 11 de codificacion, o el convertidor 111 del dominio de frecuencias puede transformar una senal de entrada x(n) de dominio de tiempos en el dominio de frecuencias para generar la senal de entrada X(k) del dominio de frecuencias. Cuando el convertidor 111 del dominio de frecuencias genera la senal de entrada X(k) del dominio de frecuencias, el convertidor 111 del dominio de frecuencias transforma la senal x(n) de entrada de dominio de tiempos en una senal X(k) de entrada del
dominio de frecuencias de acuerdo con una transformacion de coseno discreta modificada (MDCT), por ejemplo, y extrae la senal X(k)de entrada de dominio de frecuencias. Aqm, n es un numero (numero de tiempos discretos) de una senal en el dominio de tiempos, y k es un numero (numero de frecuencias discretas) de una senal (muestra) en el dominio de frecuencias. Un valor mayor de k corresponde a una frecuencia mayor. Aceptando que una trama esta 5 constituida por L muestras, una senal x(n) de dominio de tiempos es transformada en un dominio de frecuencias para cada trama, y se genera una senal de entrada X(k) en el dominio de frecuencias (k=0, 1,... L-1) que constituyen los componentes de la frecuencia L. L es un numero positivo predeterminado, por ejemplo, 64 u 80.
El calculador 112 del valor de normalizacion calcula un valor de normalizacion xXo- para cada trama, en donde el valor de normalizacion xXo- es un valor representativo de un numero predeterminado Co de muestras entre las L 10 muestras de la senal de entrada X(k) (Paso E1). Aqm, Xo-es el caracter Xo con una lmea superior. Aqm, Co es L o un comun divisor de L distinto de uno y L. Si Co es L, significa que se calcula un valor de normalizacion por cada L muestras. Si Co es un divisor comun de L, significa que los componentes de la frecuencia L son divididos en sub- bandas y que el valor de normalizacion se calcula para cada sub-banda. Por ejemplo, si L=64 y una sub-banda esta compuesta por ocho componentes de la frecuencia, se forman ocho sub-bandas y se calcula un valor de 15 normalizacion por cada sub-banda. Ademas, cuando Co es L, t es cero y el valor de normalizacion xXo- es un valor representativo de L muestras. Esto es, cuando Co es L, se calcula un valor de normalizacion xXo- para cada trama. Por otra parte, cuando Co es un divisor comun de L distinto de uno y L, x es un entero (x=o,...,(L/Co)-1) que corresponde a cada sub-banda de una trama, y el valor de normalizacion xXo- es un valor representativo de las Co muestras que pertenecen a cada sub-banda que corresponde a x. Esto es, cuando Co es un divisor comun de L 2o distinto de uno y L, se calculan (L/Co) valores de normalizacion xXo- (x=o,...,(L/Co)-1) para cada trama. Ademas, k=x Co,.,(x+1) Co-1 independientemente del valor de Co. xXo- calculado por el calculador 112 del valor de normalizacion es enviado al cuantificador 113 del valor de normalizacion.
[Ejemplo del valor de normalizacion xXo-]
El valor de normalizacion xXo- es un valor representativo de Co muestras. En otras palabras, el valor de normalizacion 25 xXo- es un valor que corresponde a Co muestras. Un ejemplo del valor de normalizacion xXo- es la siguiente rafz
cuadrada de un valor medio de potencia de las Co muestras.
imagen1
Otro ejemplo del valor de normalizacion xXo- es el siguiente valor, que se obtiene dividiendo por Co la rafz cuadrada de un valor total de potencia de las Co muestras.
3o
imagen2
Otro ejemplo mas del valor de normalizacion xXo- es el siguiente valor medio de la amplitud de las Co muestras.
imagen3
Cualquier otro valor de normalizacion xXo- puede ser usado (el fin de la descripcion de [Ejemplo del valor de normalizacion xXo-])
35 El cuantificador 113 del valor de normalizacion cuantifica el valor de normalizacion xXo- para obtener un valor de normalizacion cuantificado xX- y obtiene un mdice de cuantificacion del valor de normalizacion (nqi) que corresponde al valor de normalizacion xX- cuantificado (Paso E2). Aqm, xX- es el caracter xXcon una lmea superior. El valor xX- del valor de normalizacion cuantificado se envfa al selector 114 de modo de codificacion, al primer codificador 117, y al
5
10
15
20
25
30
35
40
45
50
segundo codificador 118, y un codigo (corriente de bits) que corresponde al mdice de cuantificacion del valor de normalizacion se env^a al dispositivo 12 de decodificacion.
El selector 114 de modo de codificacion determina si un numero predeterminado de muestras de la senal de entrada es escaso o no, extrae una informacion (s=0) del primer modo que representa el primer modo de codificacion cuando las muestras son escasas, y extrae una informacion (s=1) del segundo modo que representa el segundo modo de codificacion cuando las muestras no son escasas. En esta realizacion, basado en el numero de muestras que tienen magnitudes menores que un umbral o en el numero de muestras que tienen magnitudes que son un umbral o menores, el selector 114 de modo de codificacion selecciona un modo de codificacion que corresponde al numero predeterminado de muestras de senales de entrada normalizadas y extrae una informacion de modo s que especifica el modo de codificacion seleccionado (Paso E3).
[Ejemplo 1 del Paso E3]
En el Ejemplo 1 del Paso E3 se selecciona un modo de codificacion para cada trama realizando un proceso ilustrado en la Figura 5 para cada trama.
El selector 114 de modo de codificacion inicializa k y m como k=0 y m=0 (Paso E31).
El selector 114 de modo de codificacion compara k con L (Paso E32); y el proceso avanza al Paso E33 si k es menor que L o el proceso avanza al Paso E37 si k no es menor que L. Aqrn, un metodo de “comparacion de 8 con ^” no esta limitado, y se puede usar cualquier metodo de comparacion en tanto que pueda determinar la relacion de magnitud entre 8 y ^. Por ejemplo, un proceso de comparacion de 8 con ^ para comprobar si 8<-q o no puede ser un proceso para determinar si 8<-q o no, un proceso para determinar si 0<q-8 o no, un proceso para determinar si 8>-q o no, o un proceso para determinar si 0>q-8 o no.
En el Paso E33 el selector 114 de modo de codificacion normaliza X(k) mediante el uso de xX" para generar un valor normalizado X~(k) (Paso E33). Aqrn, X~ representa el caracter X con una tilde superior. Por ejemplo, el selector 114 de modo de codificacion normaliza X(k) mediante la division por xX" para generar un valor normalizado X~(k), como la
siguiente ecuacion. X(k)=X(k)/x X
El selector 114 de modo de codificacion calcula el valor absoluto |X~(k)| (la magnitud de un valor que corresponde a la muestra) de X~(k) y compara |X~(k)| con un umbral predeterminado Th (primer valor de referencia) (Paso E34). Si X~(k)| es menor que Th, el selector 114 de modo de codificacion incrementa m en uno (actualiza el valor de m fijando m+1 como el nuevo valor de m) (Paso E35), incrementa k en uno (Paso E36), y avanza al Paso E32. Si |X~(k)| no es menor que Th, el selector 114 de modo de codificacion incrementa k en uno sin incrementar m (Paso E36) y avanza al Paso E32. Aqrn el umbral Th es una constante positiva y puede ser 0,5, por ejemplo.
Si en el Paso E32 se ha determinado que k no es menor que L, el selector 114 de modo de codificacion obtiene un valor de recuento aplanado m“ (valor de evaluacion), que es un valor de adicion ponderado de un valor de recuento m y de un valor de recuento m= calculado la vez anterior (un valor de evaluacion calculado la vez anterior) (Paso E37). Aqrn, m“ representa el caracter m con una lmea superior doble. Por ejemplo, el selector 114 de modo de codificacion obtiene el valor de recuento aplanado m“ de acuerdo con la siguiente ecuacion. Aqrn, e y a son unas constantes de ajuste que se determinan de acuerdo con el funcionamiento y las especificaciones requeridos. Por ejemplo, e y a son unas constantes positivas que satisfacen una relacion de “e+a=1”. Por ejemplo, e=0,3, y a=0,7.
imagen4
El aplanamiento reduce la frecuencia en la que una determinacion diferente esta hecha entre tramas en cuanto a si las muestras son escasas o no. Esto reduce la frecuencia en la que los modos de codificacion son diferentes de acuerdo con las tramas, y suprime un ruido musical y similar que ha ocurrido por el cambio de modo de codificacion. Aqrn, el valor de recuento itT calculado la vez anterior es un valor de recuento preaplanado o aplanado que es calculado en el marco inmediatamente anterior por el selector 114 de modo de codificacion. Cuando el valor de recuento aplanado m“ calculado la vez anterior es cero, el selector 114 de modo de codificacion puede fijar m“ = m sin aplanar el valor de recuento m. Ademas, el selector 114 de modo de codificacion puede fijar m“ = m sin aplanar el valor de recuento m independientemente de si el valor de recuento m“ es cero o no.
El selector 114 de modo de codificacion determina si un segundo valor de referencia t es o no un umbral Tmin (Paso E38); si t es Tmin, el selector 114 de modo de codificacion compara m“ con t (Paso E39); y si m“ es mayor que t, el selector 114 de modo de codificacion fija s en cero, extrae la informacion de modo s=0 (Paso E310), y sale del proceso del Paso E3. Aqrn, Tmin es una constante positiva predeterminada. El valor inicial de t puede ser Tmin, por ejemplo. Aqrn, un metodo para “determinar si 8 es cero o no” no esta limitado, y se puede hacer cualquier determinacion que corresponda sobre si 8 es cero o no. Por ejemplo, si 8 es cero o no puede ser determinado determinando si 8=0 o no, si 8 es cero o no puede ser determinado determinando si 8=y (y*0) o no, o si 8 es cero o no puede ser determinado determinando si 8>0 y 8<0 o no. Si m“ no es mayor que t en el Paso E39, el selector 114
5
10
15
20
25
30
35
40
45
50
de modo de codificacion fija s en uno, y t en Tmax, extrae la informacion de modo s=1 (Paso E311), y sale del proceso del Paso E3. Aqm, Tmax es un umbral, que es una constante positiva predeterminada mayor que Tmin.
Si se ha determinado en el Paso E38 que t no es Tmin, el selector 114 de modo de codificacion compara m“ con t (Paso E312); y si m“ es menor que t, entonces el selector 114 de modo de codificacion fija s en uno, extrae la informacion de modo s=1 (Paso E313), y sale del proceso del Paso E3. Si m“ no es menor que t, entonces el selector 114 de modo de codificacion fija s en cero, y t en Tmin, extrae la informacion de modo s=0 (Paso E314), y sale del proceso del Paso E3. El proceso del Paso E38 y de los subsiguientes pasos reduce la frecuencia en la que se hace una determinacion diferente entre la trama inmediatamente anterior y la trama actual en cuanto a si las muestras son escasas o no (si s=0 o 1). Como resultado, esto reduce la frecuencia en la que los modos de codificacion son diferentes de acuerdo con las tramas, y suprime un ruido musical y similar que han ocurrido por el cambio de modo de codificacion. En otras palabras, mediante el proceso del Paso E38 y de los subsiguientes pasos, el segundo valor de referencia t cuando un numero predeterminado previo de muestras son codificadas por el primer modo de codificacion (s=0) es menor que cuando el numero predeterminado previo de muestras son codificadas por el segundo modo de codificacion (s=1). Esto reduce la frecuencia en la que los modos de codificacion son diferentes entre la vez anterior y esta vez, y suprime un ruido musical y similar que han ocurrido por el cambio de modo de codificacion. Cuando Co=L, el “numero de muestras anteriormente predeterminado” son muestras que pertenecen a la trama inmediatamente anterior. Cuando Co es un divisor comun de L distinto de uno y L, el “numero de muestras anteriormente predeterminado” pueden ser muestras que pertenecen a la misma sub-banda en la trama inmediatamente anterior, o muestras que pertenecen a la sub-banda anterior o siguiente en la trama actual.
[Ejemplo 2 del Paso E3]
En el Ejemplo 2 del Paso E3, como esta ilustrado en la Figura 5, primero, s se fija en cero (Paso E314'), y los subsiguientes Pasos E31 a E38 por lo tanto son los mismos que los del paso E3 del Ejemplo 1.
Si t es Tmin en el Paso E38, el selector 114 de modo de codificacion actualiza la informacion de modo s en uno (Paso E311'), y compara m“ con t (Paso E39); y si m“ es mayor que t, entonces el selector 114 de modo de codificacion fija s en cero, extrae la informacion de modo s=0 (Paso E310), y sale del proceso del Paso E3. Si m“ no es mayor que t, el selector 114 de modo de codificacion fija t en Tmax, extrae la informacion de modo s=1 (Paso E311), y sale del proceso del Paso E3.
Si se ha determinado en el Paso E38 que t no es Tmin, el selector 114 de modo de codificacion compara m“ con t (Paso E312); y si m“ es menor que t, entonces el selector 114 de modo de codificacion fija s en uno, extrae la informacion de modo s=1 (Paso E313), y sale del proceso del Paso E3. Si m“ no es menor que t, el selector 114 de modo de codificacion fija t en Tmin, extrae la informacion de modo s=0 (Paso E314”), y sale del proceso del Paso E3.
[Ejemplo 3 del Paso E3]
En el Ejemplo 3 del paso E3, como esta ilustrado en la Figura 6, se realiza el proceso de los pasos E31 a E37, que es el mismo que el del Ejemplo 1 del Paso E3. Como se ha descrito en el Ejemplo 1 del Paso E3, m“ puede fijarse en m sin realizar el proceso del Paso E37.
A continuacion, el selector 114 de modo de codificacion compara m“ con t (Paso E321); y si m“ es mayor que t, entonces el selector 114 de modo de codificacion fija s en cero, y t en Tmin, extrae la informacion de modo s=0 (Paso E322), y sale del proceso del Paso E3. Si m“ no es mayor que t, el selector 114 de modo de codificacion fija s en uno, y t en Tmax, extrae la informacion de modo s=1 (Paso E323), y sale del proceso del Paso E3.
El proceso del paso E321 y los subsiguientes pasos reducen la frecuencia en la que se hace una determinacion diferente entre la trama inmediatamente anterior y la trama actual en cuanto a si las muestras son escasas o no (si s=0 o 1). Esto reduce la frecuencia en la que los modos de codificacion son diferentes entre las tramas, y suprime un ruido musical y similar que han ocurrido por el cambio del modo de codificacion.
[Ejemplo 4 del Paso E3]
En el Ejemplo 4 del Paso E3, se selecciona un modo de codificacion para cada trama realizando el proceso ilustrado en la Figura 7 para cada trama.
El selector 114 de modo de codificacion inicializa i y m como i=0 y m=0 (Paso E330).
El selector 114 de modo de codificacion compara i con G (G=L/Co) (Paso E331) y avanza al Paso E332 si i es menor que G, y avanza al Paso E37 si i no es menor que G. Cuando Co representa el numero de muestras de una sub- banda, G representa un numero total de sub-bandas incluidas en una trama. Cuando Co representa el numero L de muestras incluidas en una trama, G=1. Este Ejemplo es importante cuando Co representa el numero L de muestras de una sub-banda.
En el Paso E332, el selector 114 de modo de codificacion compara ord(i) con un umbral P de importancia perceptiva (una referencia basada en caractensticas perceptivas auditivas) (Paso E332); y si ord(i) no es menor que P, el
5
10
15
20
25
30
35
40
45
50
selector 114 de modo de codificacion incrementa i en uno (Paso E334), y avanza al Paso E331. Si ord(i) es menor que P, el selector 114 de modo de codificacion inicializa h en cero (Paso E333), y avanza al Paso E335.
Cuando Co representa el numero de muestras de una sub-banda, ord(i) es una funcion que recibe un mdice i=0,...,(L/Co)-1 y extrae un nivel de prioridad de una sub-banda que corresponde al mdice i, en donde el mdice i es un entero mayor que o igual a cero que corresponde a cada sub-banda incluida en una trama. El nivel de prioridad es un entero entre 0 y (L/Co)-1 ambos inclusive; el valor menor significa el nivel de prioridad mas alto. Por ejemplo, cuando un numero total L/Co de sub-bandas incluidas en una trama es ocho, y los niveles de prioridad de las sub- bandas que corresponden a los indices i=0,1,2,3,4,5,6, y 7 son 2,1,0,3,5,4,6, y 7, ord(0)=2, ord(1)=1, ord(2)=0, ord(3)=3, ord(4)=5, ord(5)=4, ord(6)=6, y ord(7)=7. Los niveles de prioridad de las sub-bandas incluidas en una unica trama pueden ser determinados dinamicamente de acuerdo con la senal de entrada X(k) o pueden ser determinados de forma fija. Cuando los niveles de prioridad se determinan dinamicamente, el nivel de prioridad mas alto se asigna a la sub-banda que corresponde al valor mayor de normalizacion cuantificado xX-, por ejemplo. Cuando los niveles de prioridad se determinan de forma fija, el nivel de prioridad de cada sub-banda se determina considerando las caractensticas perceptivas auditivas humanas, por ejemplo (los niveles de prioridad mas altos se asignan a las sub- bandas que corresponden a las frecuencias mas bajas, por ejemplo). Cuando Co representa el numero de muestras L incluidas en una trama, ord(i)=0. El umbral P de importancia perceptiva es un entero constante que es uno o mas y L/Co o menor, y el Ejemplo 3 del Paso E3 es importante cuando 1<P<L/Co. Por ejemplo, cuando L/Co es ocho, P puede ser cuatro.
En el Paso E335, el selector 114 de modo de codificacion compara h con Co (Paso E335); y si h no es menor que Co, el selector 114 de modo de codificacion incrementa i en uno (Paso E334) y avanza al Paso E331. Si h es menor que Co, el selector 114 de modo de codificacion normaliza X(iCo+h) mediante el uso de iX- para generar un valor normalizado X~(iCo+h) (Paso E336). Por ejemplo, el selector 114 de modo de codificacion divide X(iCo+h) por iX- para obtener el valor normalizado X~(iCo+h) como se muestra en la siguiente ecuacion.
X(i-Co + h) = X(i-C0+h)/jX
El selector 114 de modo de codificacion calcula el valor absoluto |X~(i-Co+h)| de X'(i-Co+h) y compara |X~(i-Co+h)| con un umbral predeterminado Th (Paso E337); y si |X~(iCo+h)| es menor que Th, el selector 114 de modo de codificacion incrementa m en uno (Paso E338), incrementa h en uno (Paso E339), y avanza al Paso E335. Si |X~(i-Co+h)| no es menor que Th, el selector 114 de modo de codificacion incrementa h en uno sin incrementar m (Paso E339), y avanza al Paso E335.
El proceso del Paso E37 y los subsiguientes pasos son los mismos que los del Ejemplo 1 del Paso E3. Aqrn, el valor de recuento aplanado m“ de este ejemplo es un valor que corresponde al numero de muestras que incluye muestras que satisfacen el criterio basado en las caractensticas perceptivas auditivas y que corresponden a valores menores que el primer valor de referencia entre el numero predeterminado de muestras.
Alternativamente, primero, s puede ser fijado en cero como se muestra en el Ejemplo 2 del Paso E3 (Paso E314'), y a continuacion el proceso del Paso E37 y los subsiguientes pasos pueden ser realizados como se muestra en el Ejemplo 2 del Paso E3.
[Ejemplo 5 del Paso E3]
En el Ejemplo 5 del paso E3, como esta ilustrado en la Figura 8, se realiza el proceso de los pasos E33o a E37, que son los mismos que los del Ejemplo 4 del Paso E3. A continuacion, se realiza el proceso de los Pasos E321 a E323, que son los mismos que los del Ejemplo 3 del Paso E3. Como se ha descrito en el Ejemplo 1 del paso E3, m“ puede ser fijado en m sin realizar el proceso del Paso E37.
[Ejemplo 6 del paso E3]
En el Ejemplo 6 del Paso E3, se selecciona el modo de codificacion para cada trama realizando el proceso ilustrado en la Figura 9 para cada trama.
El selector 114 de modo de codificacion inicializa i y m como i=o y m=o (Paso E33o).
El selector 114 de modo de codificacion compara i con el umbral P de importancia perceptiva (Paso E341), avanza al Paso E342 si i es menor que P, y avanza al Paso E37 si i no es menor que P.
En el Paso E342, el selector 114 de modo de codificacion fija b=o(i) (Paso E342). Aqrn, o(i) representa un i-esimo elemento (mdice) (aqrn, i=o,..., (L/Co)-1) de un conjunto SET en el que los indices enteros que son cero o mas que identifican las sub-bandas incluidas en una trama estan dispuestos en el orden de las prioridades descendentes. Por ejemplo, si un numero total L/Co de sub-bandas incluidas en una trama es ocho, las sub-bandas son identificadas como o,...,7, y el conjunto SET={1,o,3,2,5,4,6,7}, entonces o(i) representa un i-esimo elemento del conjunto SET={1,o,3,2,5,4,6,7} desde el comienzo. Aqrn, el primer elemento se representa como un o-esimo elemento. En
5
10
15
20
25
30
35
40
45
50
este ejemplo el nivel de prioridad de una sub-banda identificada por “1” es el mas alto, y el nivel de prioridad de una sub-banda identificada por “7” es el mas bajo. Los niveles de prioridad de una sub-banda incluida en una trama pueden ser determinados dinamicamente de acuerdo con una senal de entrada X(k) o pueden ser determinados de forma fija. Cuando los niveles de prioridad se determinan dinamicamente, el nivel de prioridad mas alto se asigna a la sub-banda que corresponde al valor de normalizacion cuantificado xX- mayor, por ejemplo. Cuando los niveles de prioridad se determinan de forma fija, el nivel de prioridad de cada sub-banda se determina considerando las caractensticas perceptivas auditivas humanas, por ejemplo, (el nivel de prioridad mas alto se asigna a la sub-banda que corresponde a la frecuencia mas baja, por ejemplo). Cuando Co representa el numero de muestras L incluidas en una trama, ord(i)=0. Este Ejemplo es importante cuando Co representa el numero de muestras de la sub-banda.
El selector 114 de modo de codificacion inicializa h en cero (Paso E333), y avanza al Paso E335.
En el Paso E335 el selector 114 de modo de codificacion compara h con Co (Paso E335); y si h no es menor que Co, el selector 114 de modo de codificacion incrementa i en uno (Paso E334), y avanza al Paso E341. Si h es menor que Co, el selector 114 de modo de codificacion genera un valor normalizado X~(bCo+h) normalizando X(bCo+h) mediante el uso de bX- (Paso E346). Por ejemplo, el selector 114 de modo de codificacion divide X(bCo+h) por bX- para obtener el valor normalizado X-(bCo+h) como se muestra en la siguiente ecuacion.
imagen5
El selector 114 de modo de codificacion calcula el valor absoluto |X~(b-Co+h)| de X~(bCo+h) y compara |X~(b-Co+h)| con un umbral predeterminado Th (Paso E347); y si |X~(b-Co+h)| es menor que Th, el selector 114 de modo de codificacion incrementa m en uno (Paso E338), incrementa h en uno (Paso E339), y avanza al Paso E335. Si |X~(b-Co+h)| no es menor que Th, el selector 114 de modo de codificacion incrementa h en uno sin incrementar m (Paso E339), y avanza al Paso E335.
El proceso del Paso E37 y los subsiguientes pasos son los mismos que los del Ejemplo 1 del Paso E3.
Alternativamente, primero, s se fija en cero como se muestra en el Ejemplo 2 del paso E3 (Paso E314'), y a continuacion el proceso del Paso E37 y los subsiguientes pasos se realizan oomo se muestra en el Ejemplo 2 del paso E3.
[Ejemplo 7 del Paso E3]
En el Ejemplo 7 del Paso E3, como esta ilustrado en la Figura 1o, se realiza el proceso de los Pasos E33o a E37, que son los mismos que los del Ejemplo 6 del paso E3. A continuacion se realiza el proceso de los Pasos E321 a E323, que son los mismos que los del Ejemplo 3 del Paso E3. Como se ha descrito en el Ejemplo 1 del Paso E3, m“ puede ser fijado en m sin realizar el proceso del Paso E37.
[Ejemplo 8 del Paso E3]
Como una modificacion de los Ejemplos 1 al 3 del Paso E3, en lugar del Paso E32 ilustrado en las Figuras 5 y 6, el selector 114 de modo de codificacion puede comparar k con Q; y el selector 114 de modo de codificacion puede avanzar al Paso E33 si k es menor que Q, y avanzar al Paso E37 si k no es menor que Q. Aqrn, Q es una constante en el intervalo de o<Q<L. Por consiguiente, la determinacion puede ser realizada considerando las caractensticas perceptivas auditivas humanas ya que la determinacion del Paso E34 se realiza solamente en muestras que corresponden a frecuencias bajas, que son percibidas por los humanos.
[Ejemplo 9 del Paso E3]
Como una modificacion de los Ejemplos 4 y 5 del Paso E3 se puede usar una funcion que recibe i=o,...,(L/Co)-1 y extrae un entero arbitrariamente entre cero y (L/Co)-1 ambos inclusive, en lugar de ord(i). Ademas, en los Ejemplos del Paso E3 ord(i) puede ser sustituido por o(i) o, o(i) puede ser sustituido por ord(i).
[Ejemplo 1o del Paso E3]
Ademas, un metodo de determinacion de si el valor de evaluacion es o no el segundo valor de referencia o menor no esta limitado al descrito antes, en el que el valor de evaluacion corresponde al numero de muestras que estan incluidas en el numero predeterminado de muestras de entrada y que corresponden a valores menores que el primer valor de referencia. Por ejemplo, como una modificacion de los Ejemplos 1 a 9 del Paso E3, el primer valor de referencia puede ser Th+0 o Th-0, el segundo valor de referencia puede ser t+A o t-A (aqrn, 0 y A son unas constantes positivas), o la misma determinacion puede ser realizada mediante el uso de “<” en lugar de “<” o mediante el uso de “>” en lugar de “>”. Alternativamente, se puede realizar una misma determinacion sustancial contando el numero de muestras a las que corresponden los valores mayores que un tercer valor de referencia y comparando el valor de recuento con un cuarto valor de referencia (el final de la descripcion del [Ejemplo del Paso E3]).
La informacion de modo s que se extrae del selector 114 de modo de codificacion se env^a a las unidades de conmutacion 115 y 116, y se envfa al dispositivo 12 de decodificacion un codigo (corriente de bits) que corresponde a la informacion de modo s.
Cuando s es cero (cuando las muestras son escasas), las unidades de conmutacion 115 y 116 envfan la senal de 5 entrada X(k) al primer codificador 117 (Paso E4). El primer codificador 117 recibe X(k) y xX- como entradas, codifica X(k) mediante el uso del primer modo de codificacion tal como el primer modo descrito fijado previamente, y extrae un codigo (corriente de bits) que incluye el mdice de cuantificacion vectorial (vqi) y similar (Paso E5). Este codigo se envfa al dispositivo 12 de decodificacion.
Cuando s es uno (cuando las muestras no son escasas), las unidades de conmutacion 115 y 116 envfan la senal de 10 entrada X(k) al segundo codificador 118 (Paso E4). El segundo codificador 118 recibe X(k) y xX- como entradas, codifica X(k) mediante el uso del segundo modo de codificacion fijado previamente, y extrae un codigo (corriente de bits) que incluye el mdice de cuantificacion vectorial y similar (Paso E6). Este codigo se envfa al dispositivo 12 de decodificacion.
[Ejemplo 1 del Paso E6]
15 El segundo codificador 118 recibe X(k) y xX- como entradas y codifica la senal de entrada X(k) realizando un proceso ilustrado en la Figura 11, por ejemplo.
El calculador 1181 del candidato de cuantificacion del segundo codificador 118 (Figura 2) calcula un valor E(k)' de la diferencia sustrayendo un valor que corresponde al valor de normalizacion cuantificado de un valor que corresponde a la magnitud del valor X(k) de cada muestra de la senal de entrada; cuando el valor E(k)' de la diferencia es positivo 20 y el valor X(k) de la muestra es positivo, el valor E(k)' de la diferencia se fija como un candidato de cuantificacion E(k) que corresponde a la muestra; cuando el valor E(k)' de la diferencia es positivo y el valor X(k) de la muestra es negativo, el signo del valor E(k)' de la diferencia se invierte y se fija el resultado como el candidato de cuantificacion E(k) que corresponde a la muestra; y cuando el valor E(k)' de la diferencia no es positivo, se fija cero como el candidato de cuantificacion E(k) que corresponde a la muestra. Ejemplos del valor que corresponde a la magnitud 25 del valor X(k) de cada muestra incluyen: un valor absoluto del valor X(k) de cada muestra; un valor proporcional a un valor absoluto del valor X(k) de cada muestra; un valor obtenido multiplicando un valor absoluto del valor X(k) de cada muestra por una constante o una variable 0; y un valor absoluto de un valor obtenido multiplicando el valor X(k) de cada muestra por una constante y/o una variable. Ejemplos del valor que corresponde al valor de nomalizacion cuantificado incluyen: el valor de normalizacion cuantificado; un valor proporcional al valor de normalizacion 30 cuantificado; y un valor obtenido multiplicando el valor de normalizacion cuantificado por una constante y/o una variable (Paso E62). El candidato de cuantificacion se envfa al cuantificador vectorial 1182.
[Ejemplo 1 del Paso E62]
Por ejemplo, el calculador 1181 de candidato de cuantificacion determina un candidato de cuantificacion E(k) que corresponde al valor X(k) de cada muestra de la senal de entrada realizando el proceso descrito en la Figura 12.
35 El calculador 1181 de candidato de cuantificacion inicializa k en cero (Paso E621).
El calculador 1181 de candidato de cuantificacion compara k con Co (Paso E622) y sale del proceso del Paso E62 si k no es menor que Co. Si k es menor que Co, el calculador 1181 de candidato de cuantificacion calcula un valor de la diferencia E(k)' que se obtiene a partir del valor absoluto del valor X(k) de cada muestra de la senal de entrada y del valor de normalizacion cuantificado (Paso E623). Por ejemplo, el calculador 1181 de candidato de cuantificacion 40 calcula un valor de E(k)' definido por la siguiente ecuacion (1). Aqrn, Ci es una constante de ajuste del valor de normalizacion, y puede ser 1,0, por ejemplo.
imagen6
El calculador 1181 de candidato de cuantificacion compara el valor E(k)' de la diferencia con cero (Paso E624); el calculador 1181 de candidato de cuantificacion actualiza E(k)' con cero (Paso E625) y avanza al Paso E626 si E(k)' 45 no es igual a o mayor que cero; y avanza al Paso E626 sin actualizar E(k)' si E(k)' es igual o mayor que cero.
En el Paso E626 el calculador 1181 del candidato de cuantificacion compara X(k) con cero (Paso E626); el calculador 1181 del candidato de cuantificacion fija el valor de la diferencia E(k)' en el candidato de cuantificacion E(k) si X(k) no es menor que cero (Paso E627); y fija -E(k)', que se obtiene invirtiendo el signo del valor de la diferencia E(k)' en el candidato de cuantificacion E(k) si X(k) es menor que cero (Paso E628).
50 El calculador 1181 del candidato de cuantificacion incrementa k en uno (actualiza el valor de k fijando k+1 como un nuevo valor de k) y avanza al Paso E622 (Paso E629).
[Ejemplo 2 del paso E62]
5
10
15
20
25
30
35
40
45
50
55
El calculador 1181 del candidate de cuantificacion, por ejemplo, puede determinar un candidato de cuantificacion E(k) que corresponde al valor X(k) de cada muestra de la senal de entrada como mas adelante.
El calculador 1181 del candidato de cuantificacion realiza el proceso de los Pasos E621 a E624 como esta ilustrado en la Figura 12.
Si en el Paso E624 se ha determinado que el valor E(k)' de la diferencia no es igual a o mayor que cero, el calculador 1181 del candidato de cuantificacion fija E(k) en cero (Paso E625'), incrementa k en uno (Paso E629), y avanza al Paso E622. Si en el Paso E624 se ha determinado que el valor E(k)' de la diferencia es igual o mayor que cero, el calculador 1181 candidato de cuantificacion realiza el proceso del Paso E626 y los subsiguientes pasos del Ejemplo 1 del Paso E62.
[Ejemplo 3 del Paso E62]
En lugar de hacer una derivacion del proceso basado sobre si E(k)' es o no igual a o mayor que cero en el Paso E624 de los Ejemplos 1 y 2 del Paso E62, en el proceso se puede hacer una derivacion en el Paso E624 basado sobre si E(k)'>0 o no (el final de la descripcion del [Ejemplo del Paso E62]).
El cuantificador vectorial 1182 cuantifica vectorialmente de forma conjunta una pluralidad de candidatos de cuantificacion E(k) que corresponden a una pluralidad de muestras para obtener un mdice de cuantificacion vectorial (Paso E63).
El mdice de cuantificacion vectorial representa un vector de cuantificacion representativo. Por ejemplo, el cuantificador vectorial 1182 selecciona un vector de cuantificacion representativo mas proximo a un vector compuesto por una pluralidad de candidatos de cuantificacion E(k) que corresponden a una pluralidad de muestras de entre una pluralidad de vectores de cuantificacion representativos almacenados en un almacen de libros de codigos vectoriales no mostrados en la figura. Y el cuantificador vectorial 1182 extrae un mdice de cuantificacion vectorial que representa el vector de cuantificacion representativo seleccionado para llevar a cabo la cuantificacion vectorial. El cuantificador vectorial 1182 cuantifica vectorialmente de forma conjunta los candidatos de cuantificacion E(k) que corresponden a Co muestras, por ejemplo. El cuantificador vectorial 1182 realiza la cuantificacion vectorial mediante el uso de un metodo de cuantificacion en el que un valor cuantificado EA(k)' es siempre cero cuando el candidato de cuantificacion E(k) es cero, tal como un metodo de cuantificacion vectorial algebraica (AVQ) (vease G718). De este modo, cuando la senal de entrada es una senal del dominio de frecuencias, por ejemplo, seleccionando algunos componentes dominantes que incluyen muestras que no estan cuantificadas por el metodo de la AVQ o similar de todos los componentes de la frecuencia y cuantificandolos activamente, se puede impedir la ocurrencia de agujeros espectrales relacionados con los componentes dominantes y se puede reducir el ruido musical.
Un codigo (corriente de bits) que corresponde al mdice de cuantificacion vectorial se envfa al dispositivo 12 de decodificacion (el final de la descripcion del [Ejemplo 1 del Paso E6]).
[Ejemplo 2 del Paso E6]
El numero de bits del codigo obtenido por la cuantificacion vectorial vana dependiendo de la senal de entrada. Para algunas senales de entrada el numero de bits del codigo (el mdice de cuantificacion vectorial o similar) obtenido por la cuantificacion vectorial puede ser menor que un numero de bits asignados para la cuantificacion vectorial, y parte de los bits asignados para la cuantificacion vectorial puede permanecer sin usar. En el Ejemplo 2 del Paso E6, se usa el area de bits que quedan, y se genera una informacion de signo que corresponde al candidato de cuantificacion E(k) de cero.
En el Ejemplo 2 del Paso E6, como esta ilustrado en la Figura 11, el calculador 1181 de candidato de cuantificacion realiza el proceso del paso E62, y el cuantificador vectorial 1182' realiza el proceso del Paso E63. El cuantificador vectorial 1182' calcula, como un numero de bits no usados, U, el numero de bits de los bits que no se usan en la cuantificacion vectorial real, entre los bits asignados para la cuantificacion vectorial. Hay que tener en cuenta que los “bits asignados para la cuantificacion vectorial” significa los bits asignados a un codigo (un codigo que corresponde al mdice de cuantificacion vectorial) obtenidos mediante la cuantificacion vectorial entre los codigos enviados desde el dispositivo de codificacion 11 al dispositivo 12 de decodificacion. El “numero de bits asignados para la cuantificacion vectorial” significa el numero de bits de los bits asignados para la cuantificacion vectorial. El “numero de bits asignados para la cuantificacion vectorial” puede determinarse para cada trama, o puede determinarse para cada sub-banda. Ademas, el “numero de bits asignados para la cuantificacion vectorial” puede variar dependiendo de la senal de entrada, o puede ser constante independientemente de la senal de entrada.
En un ejemplo el numero de bits no usados, U, se calcula en cada trama (en cada unidad de L muestras). Por ejemplo, el cuantificador vectorial 1182' obtiene el numero de bits no usados, U, sustrayendo del numero de bits asignados para la cuantificacion vectorial en una trama objetivo para ser procesados, el numero total de bits del mdice de cuantificacion vectorial obtenido mediante la cuantificacion vectorial de L muestras incluidas realmente en la trama.
5
10
15
20
25
30
35
40
45
50
55
Ademas, el cuantificador vectorial 1182' extrae la pluralidad de los valores cuantificados EA(k)', que se obtienen decodificando localmente el mdice de cuantificacion vectorial. Por ejemplo, el cuantificador vectorial 1182' extrae los respectivos componentes del vector de cuantificacion representativo expresados por el mdice de cuantificacion vectorial, como los valores cuantificados EA(k)'. El valor cuantificado EA(k)' en este ejemplo es igual a un valor decodificado EA(k) obtenido por el dispositivo 12 de decodificacion. Hay que tener en cuenta que el valor cuantificado EA(k)' no necesita ser identico al valor decodificado EA(k), y puede usarse cualquier valor cuantificado EA(k)' que sea cero cuando el valor decodificado EA(k) es cero y que no sea cero cuando el valor decodificado EA(k) no es cero. Hay que tener en cuenta que EA es el caracter E con un acento circunflejo. El cuantificador vectorial 1182' envfa el mdice de cuantificacion vectorial, el numero de bits no usados, U, y el valor cuantificado EA(k)' a la unidad 1184 de salida de informacion de signo (Paso E64).
La unidad 1184 de salida de informacion de signo escribe la informacion de signo de una muestra que hace el valor de cuantificacion EA(k) cero, de la senal de entrada X(k) en el dominio de frecuencias, en una zona de bits no usados (denominada como “zona de bits no usados”) entre los bits asignados para la cuantificacion vectorial. En otras palabras, la unidad 1184 de salida de informacion de signo coloca la informacion de signo que expresa el signo del valor X(k) de cada muestra que no hace E(k)' positivo (hace E(k)' igual a o menor que cero) en la zona de bits no usados de un codigo (corriente de bits) que corresponde al mdice de cuantificacion vectorial (Paso E65). Hay que tener en cuenta la zona de bits no usados puede ser identificada por, por ejemplo, una posicion de referencia (por ejemplo, una direccion inicial) de una zona de bits no usados dada y por el numero de entrada de bits no usados, U.
Como resultado, la zona de bits no usados puede ser utilizada efectivamente, y se puede mejorar la calidad de las senales decodificadas. Hay que tener en cuenta que el lfmite superior del numero de bits de la informacion de signo escrita en la zona de bits no usados es el numero de bits no usados, U. Por consiguiente, todas las piezas de la informacion de signo no son necesariamente escritas en la zona de bits no usados. En estas circunstancias es preferible que la unidad 1184 de salida de informacion de signo extraiga la informacion de signo de acuerdo con los criterios definidos considerando las caractensticas perceptivas auditivas humanas y escriba la informacion de signo extrafda en la zona de bits no usados. Por ejemplo, la unidad 1184 de salida de informacion de signo preferiblemente extrae la informacion de signo de la senal X(k) de entrada en el dominio de frecuencias en frecuencias facilmente percibidas por seres humanos, y escribe la informacion de signo extrafda en la zona de bits no usados.
[Ejemplo del Paso E65]
Se describe un ejemplo sencillo para simplificar el proceso. Aceptando que las caractensticas perceptivas auditivas humanas se hacen inferiores en una zona de frecuencias mas altas, la informacion de signo que corresponde al numero de bits no usados, U, se escribe en la zona de bits no usados en orden a partir de una frecuencia mas baja. En este ejemplo la unidad 1184 de salida de informacion de signo realiza el proceso ilustrado en la Figura 13, y escribe la informacion de signo de una muestra que hace el valor cuantificado EA(k)' cero, de la senal de entrada X(k) en el dominio de la frecuencias, en la zona de bits no usados. Hay que tener en cuenta que la Figura 13 ilustra el proceso en las Co muestras. Esto es, cuando Co es L, el proceso del Paso E65 en la Figura 13 se ejecuta para cada trama. Cuando Co es un divisor comun de L distinto de uno y L, el proceso del Paso E65 en la Figura 13 se ejecuta repetidamente para cada sub-banda en una trama.
La unidad 1184 de salida de informacion de signo inicializa k y m como k=0 y m=0, y avanza al Paso E52 (Paso E651).
La unidad 1184 de salida de informacion de signo compara k con Co (Paso E652); si k es menor que Co, la unidad 1184 de salida de informacion de signo avanza al Paso E653; si k no es menor que Co, la unidad 1184 de salida de informacion de signo fija una zona obtenida sustrayendo una zona en la que los bits b(m) se colocan a partir de la zona de bits no usados, como una nueva zona de bits no usados, fija U-m como un nuevo valor de U (Paso E651o), y sale del proceso del Paso E65. Hay que tener en cuenta que, cuando Co es L, el Paso E651o no necesita ser ejecutado.
La unidad 1184 de salida de informacion de signo compara m con U (Paso E653); y si m es menor que U, la unidad 1184 de salida de informacion de signo avanza al paso E654 o, si m no es menor que U, la unidad 1184 de salida de informacion de signo incrementa k en uno (Paso E655), y avanza al Paso E652.
En el Paso E654 la unidad 1184 de salida de informacion de signo determina si EA(k)' es cero o no (Paso E654); y si EA(k)' no es cero, entonces el calculador 1181 del candidato de cuantificacion incrementa k en uno (Paso E655), y avanza al Paso E652. Si EA(k)' es cero, el calculador 1181 del candidato de cuantificacion compara X(k) con cero (Paso E656); si X(k) es menor que cero, el calculador 1181 del candidato de cuantificacion escribe cero en el m- esimo bit b(m) en la zona de bits no usados (Paso E658), y avanza al Paso E659. Si X(k) no es menor que cero, el calculador 1181 del candidato de cuantificacion escribe uno en el m-esimo bit b(m) en la zona de bits no usados (Paso E658), y avanza al Paso E659. En el Paso E659 el calculador 1181 del candidato de cuantificacion incrementa m en uno (Paso E659), incrementa k en uno (Paso E655), y avanza al Paso S652 (el final de la descripcion del [Ejemplo del Paso E665]).
5
10
15
20
25
30
35
40
45
50
Un codigo (corriente de bits) que corresponde a un mdice de cuantificacion vectorial modificado (vqi') que contiene el mdice de cuantificacion vectorial escrito en la zona de bits no usados se envfa al dispositivo de decodificacion (el final de la descripcion del [Ejemplo 2 del paso E6]).
Hay que tener en cuenta que, en el caso de adoptar, para el cuantificador vectorial 1182 en el Ejemplo 1 o 2 del paso E6, un metodo de cuantificacion en el que el valor cuantificado E(k)' puede no ser cero incluso cuando el candidato de cuantificacion E(k) es cero, el cuantificador vectorial 1182 puede cuantificar vectorialmente solo los candidatos de cuantificacion E(k) que tienen un valor distinto de cero, y la unidad 1184 de salida de informacion de signo puede extraer la informacion de signo de una muestra que hace el candidato de cuantificacion E(k) cero de la senal de entrada X(k) en el dominio de frecuencias. No obstante, en este caso es necesario extraer y enviar al dispositivo de decodificacion el numero de identificacion k de la muestra de la muestra que hace el candidato de cuantificacion E(k) cero o el numero de identificacion k de la muestra de una muestra que no hace el candidato de cuantificacion E(k) cero. Por este motivo es preferible que un metodo de cuantificacion vectorial en el que el valor E(k)' cuantificado es siempre cero cuando el candidato de cuantificacion E(k)es cero sea adoptado para el cuantificador vectorial 1182.
<Proceso de decodificacion>
El dispositivo 12 de decodificacion (Figura 1) ejecuta los pasos en un metodo de decodificacion ilustrado en la Figura 14.
El decodificador 123 del valor de normalizacion obtiene un valor de normalizacion decodificado xX- que corresponde al mdice de cuantificacion del valor de normalizacion introducido en el dispositivo 12 de decodificacion (Paso D1).
Se supone aqrn que un almacen de libros de codigos no mostrado en la figura contiene unos valores de normalizacion que individualmente corresponden a una pluralidad de indices de cuantificacion del valor de normalizacion. El decodificador 121 del valor de normalizacion busca el almacen de libros de codigos mediante el uso del mdice de cuantificacion del valor de normalizacion de entrada como una clave para obtener el valor de normalizacion que corresponde al mdice de cuantificacion del valor de normalizacion de entrada como el valor de normalizacion decodificado xX-. El valor de normalizacion decodificado xX- es enviado al primer decodificador 127 y al segundo decodificador 128.
Las unidades de conmutacion 125 y 126 determinan un modo de decodificacion de acuerdo con la informacion s de modo de entrada (Paso D2).
Cuando s es cero (cuando las muestras son escasas), las unidades de conmutacion 125 y 126 envfan el mdice de cuantificacion vectorial como entrada al dispositivo de decodificacion 12 al primer decodificador 127. El primer decodificador 127 usa xX- para obtener un valor XA(k) de una senal decodificada a partir del mdice de cuantificacion vectorial mediante el primer modo de decodificacion, tal como el primer modo descrito, y extrae XA(k) (Paso D3).
Cuando s es uno (cuando las muestras no son escasas), las unidades de conmutacion 125 y 126 envfan el mdice de cuantificacion vectorial como entrada al dispositivo de decodificacion 12 al segundo decodificador 128. El segundo decodificador 128 usa xX- para obtener un valor XA(k) de una senal decodificada (o XAposT(k)) a partir del mdice de cuantificacion vectorial por el segundo modo de decodificacion predeterminado, y extrae XA(k) (Paso D4).
Cuando se necesita una senal decodificada en el dominio de tiempos, XA(k) (o XAposT(k)) extrafdas del primer decodificador 127 o del segundo decodificador 128 son introducidas en el convertidor 121 de dominio de tiempos, el convertidor 121 de dominio de tiempos las transforma en una senal z(n) de dominio de tiempos mediante una transformacion de Fourier inversa, por ejemplo, y extrae la senal z(n) de dominio de tiempos.
[Ejemplo 1 del Paso D4]
En el Ejemplo 1 del Paso D4 el segundo codificador 118 realiza la codificacion descrita en el [Ejemplo 1 del Paso E6]. En el Ejemplo 1 del paso D4 el segundo codificador 118 recibe un valor de normalizacion decodificado xX- y el mdice de cuantificacion vectorial y realiza los pasos ilustrados en la Figura 15.
El decodificador vectorial 1282 (Figura 3) obtiene una pluralidad de valores que corresponden al mdice de cuantificacion vectorial como una pluralidad de valores decodificados EA(k) (Paso D42). Los valores decodificados EA(k) son enviados al sintetizador 1283.
Se supone aqrn que un almacen de libros de codigos no mostrado en la figura contiene los vectores de cuantificacion representativos que individualmente corresponden a una pluralidad de indices de cuantificacion vectorial. El decodificador vectorial 1282 busca el almacen de libros de codigos mediante el uso de un vector de cuantificacion representativo que corresponde al mdice de cuantificacion vectorial de entrada como una clave para obtener el vector de cuantificacion representativo que corresponde al mdice de cuantificacion vectorial. Los componentes del vector de cuantificacion representativo son una pluralidad de valores que corresponden al mdice de cuantificacion vectorial de entrada.
5
10
15
20
25
30
35
40
45
El recalculador 1281 del valor de normalizacion calcula un valor de normalizacion recalculado xX= que toma un valor que disminuye con la suma creciente de los valores absolutos de un numero predeterminado de valores decodificados EA(k) (Paso D43). El valor de normalizacion recalculado xX= es enviado al sintetizador 1283. El valor de normalizacion recalculado xX= es el caracter xX con una lmea superior doble.
[Ejemplo del Paso D43]
En particular, el recalculador 1281 del valor de normalizacion realiza las operaciones ilustradas en la Figura 16 para obtener el valor de normalizacion recalculado X=. El valor de normalizacion recalculado X= indica un valor representativo de muestras cuyos candidatos de cuantificacion E(k) fueron fijados en cero en la codificacion. En este ejemplo, el valor de normalizacion recalculado X= se calcula sustrayendo la suma tmp de las potencias de las muestras cuyos candidatos de cuantificacion E(k) no fueron fijados en cero en la codificacion a partir de la suma C0X-2 de las potencias de Co muestras, dividiendo la diferencia por el numero m de muestras cuyos candidatos de cuantificacion E(k) fueron fijados en cero, y extrayendo la rafz cuadrada del cociente, como se muestra en la Ecuacion (2) que se da mas adelante.
El recalculador 1281 del valor de normalizacion inicializa los caracteres k, m y tmp como k=0, m=0 y tmp=0 (Paso D431).
El recalculador 1281 del valor de normalizacion compara k con C0 (Paso D432); y si I0C0, se calcula el valor de X= definido por la siguiente ecuacion (Paso D437), a continuacion el proceso sale en el Paso D43.
imagen7
Si k es menor que C0, el recalculador 1281 del valor de normalizacion determina si el valor decodificado EA(k) es cero o no (Paso D433); si EA(k) es cero, el recalculador 1281 del valor de normalizacion incrementa m en uno (Paso D435), y avanza al Paso D436 o, si el valor decodificado EA(k) no es cero, el recalculador 1281 del valor de normalizacion avanza al Paso D434.
El recalculador 1281 del valor de normalizacion calcula la potencia de la muestra con el numero k y anade la potencia a tmp (Paso D434). El recalculador 1281 del valor de normalizacion avanza al Paso D436. Esto es, la suma de la potencia calculada y el valor de tmp se fija como un nuevo valor de tmp. La potencia se calcula de acuerdo con la siguiente ecuacion, por ejemplo.
imagen8
El recalculador 1281 del valor de normalizacion incrementa k en uno (Paso D436) y avanza al Paso D432 (el final de la descripcion del [Ejemplo del Paso D43]).
Para obtener un valor de la senal decodificada XA(k), el sintetizador 1283 calcula la suma lineal del valor decodificado EA(k) y del valor de normalizacion decodificado xX- cuando el valor decodificado EA(k) es positivo, el sintetizador 1283 invierte el signo de la suma lineal del valor absoluto del valor decodificado EA(k) y del valor de normalizacion decodificado xX- cuando el valor decodificado EA(k) es negativo o, el sintetizador 1283 multiplica el valor de normalizacion recalculado xX= por una primera constante C3 y aleatoriamente invierte el signo del producto cuando el valor decodificado EA(k) es cero (Paso D44).
[Ejemplo del Paso D44]
El sintetizador 1283 obtiene una senal decodificada realizando el proceso ilustrado en la Figura 17, por ejemplo. Cuando C0 es L, el proceso del Paso E44 ilustrado en la Figura 17 se realiza para cada trama; cuando C0 es un divisor comun de L distinto de uno y L, el proceso del paso D44 ilustrado en la Figura 17 se realiza repetidamente para cada sub-banda incluida en una trama.
El sintetizador 1283 inicializa el caracter k como k=0 (Paso D441).
El sintetizador 1283 compara k con C0 (Paso D442); si no es k<C0, el proceso sale en el Paso D44; si k< C0, el sintetizador 1283 compara el valor decodificado EA(k) con cero (Paso D443); si el valor decodificado EA(k) es cero, el sintetizador 1283 multiplica el valor de normalizacion recalculado xX= por la primera constante C3 y aleatoriamente invierte el signo del producto para obtener el valor XA(k) (valor que tiene la magnitud que corresponde al valor de normalizacion recalculado) de la senal decodificada (Paso D444). Esto es, el sintetizador 1283 calcula el valor definido por la ecuacion dada mas adelante para obtener XA(k). Aqrn, C3 es una constante para ajustar la magnitud del componente de la frecuencia y puede ser 0,9, por ejemplo. rand(k) es una funcion que extrae 1 o -1, por ejemplo aleatoriamente extrae 1 o -1 basado en numeros aleatorios.
5
10
15
20
25
30
35
40
45
50
X(k) = C3-TX • rand(k)
Si el sintetizador 1283 determina en el Paso D443 que el valor decodificado EA(k) no es cero, el sintetizador 1283 compara el valor decodificado EA(k) con cero (Paso D445); y si el valor decodificado EA(k)<0, el sintetizador 1283 invierte el signo de la suma del valor absoluto I EA(k) I del valor decodificado EA(k) y del producto C-ix X- de una constante Ci y el valor de normalizacion decodificado xX- (invierte el signo de la suma lineal del valor absoluto I EA(k) I del valor decodificado EA(k) y del valor de normalizacion decodificado xX-) para obtener un valor XA(k) de la senal decodificada (Paso D446). Esto es, el sintetizador 1283 calcula el valor definido por la siguiente ecuacion para obtener XA(k).
imagen9
Si el valor decodificado EA(k) no es menor que cero, el sintetizador 1283 anade el valor decodificado EA(k) al producto CrxX- de la constante C1 y el valor de normalizacion decodificado xX- (la suma lineal del valor absoluto
|EA(k) I del valor decodificado E (k) y el valor de normalizacion decodificado xX-) para obtener XA(k) (Paso D447). Esto es, el sintetizador 1283 calcula el valor definido por la siguiente ecuacion para obtener XA(k).
imagen10
Despues de determinado XA(k), el sintetizador 1283 incrementa k en uno (Paso D448) y avanza al Paso D442 (e final de la descripcion del [Ejemplo del Paso D44]).
Cuando se necesita una senal decodificada del dominio de tiempos, XA(k) extrafda del sintetizador 1283 es introducido en el convertidor 121 de dominio de tiempos, y el convertidor 121 de dominio de tiempos transforma XA(k) en senales z(n) de dominio de tiempos mediante una transformacion de Fourier inversa, por ejemplo, y extrae la senal del dominio de tiempos (el final de la descripcion del [Ejemplo 2 del Paso D4]).
[Ejemplo 2 del Paso D4]
En el Ejemplo 1 del Paso D4, el segundo decodificador 118 realiza la decodificacion descrita en el [Ejemplo 2 del Paso E6]. En el Ejemplo 2 del Paso D4, el segundo decodificador 118 recibe el valor de normalizacion decodificado xX- y el mdice de cuantificacion vectorial modificado y realiza los pasos ilustrados en la Figura 15.
El decodificador vectorial 1282' (Figura 3) obtiene, como la pluralidad de valores decodificados EA(k), una pluralidad de valores que corresponden al mdice de cuantificacion vectorial contenido en el mdice de cuantificacion vectorial modificado. El decodificador vectorial 1282' calcula el numero de bits no usados, U, mediante el uso del mdice de cuantificacion vectorial (Paso D42'). Ademas, el decodificador vectorial 1282' calcula como el numero de bits no usados, U, el numero de bits que no son usados en la cuantificacion vectorial real, entre los bits asignados para la cuantificacion vectorial. En el presente ejemplo el numero de bits no usados, U, se calcula para cada trama (sdbre una base de L muestras). Por ejemplo, el decodificador vectorial 1282' sustrae, del numero de bits asignados para la cuantificacion vectorial en una trama para ser procesados, el numero total de bits del mdice de cuantificacion vectorial que corresponden a la trama, y fija el valor resultante como el numero de bits no usados, U. El valor decodificado EA(k) y el numero de bits no usados, U, se envfan al sintetizador 1283'.
El recalculador 1281 del valor de normalizacion calcula un valor de normalizacion recalculado xX“ que tiene un valor menor ya que la suma de los valores absolutos de un numero predeterminado de valores decodificados EA(k) es mayor (Paso D43). El valor de normalizacion recalculado xX“ es enviado al sintetizador 1283'.
Para obtener un valor XA(k) de la senal decodificada, el sintetizador 1283' calcula la suma lineal del valor decodificado EA(k) y del valor de normalizacion decodificado xX- cuando el valor decodificado EA(k) es positivo, el sintetizador 1283' invierte el signo de la suma lineal del valor absoluto del valor decodificado EA(k) y del valor de normalizacion decodificado xX- cuando el valor decodificado EA(k) es negativo o, el sintetizador 1283' calcula un valor (un valor que tiene una magnitud que corresponde al valor de normalizacion recalculado xX“) que se obtiene multiplicando el valor de normalizacion recalculado xX“ por una primera constante C3 u obtenido invirtiendo el signo del valor de la multiplicacion cuando el valor decodificado EA(k) es cero.
Aqrn, para una muestra que hace el valor decodificado EA(k) cero y cuyo signo se expresa mediante la informacion de signo contenida en el mdice de cuantificacion vectorial modificado, el signo de XA(k) de la muestra es identificado por la correspondiente informacion de signo. Esto es, para una muestra que hace el valor decodificado EA(k) cero y se expresa como positivo por la informacion de signo, el valor de la multiplicacion del valor de normalizacion recalculado xX- y la primera constante C3 es X(k). Para una muestra que hace el valor decodificado EA(k) cero y es expresado como negativo por la informacion de signo, el valor con el signo invertido del valor de la multiplicacion del
5
10
15
20
25
30
35
40
45
50
valor recalculado de normalizacion xX= y la primera constante C3 es XA(k). Ademas, para una muestra que hace el valor decodificado EA(k) cero y cuyo signo no es identificado por la informacion de signo, el signo de XA(k) se determina aleatoriamente. Esto es, un valor obtenido invirtiendo aleatoriamente el signo del valor de la multiplicacion del valor de normalizacion recalculado xX= y la primera constante C3 es XA(k) (Paso D44'). En la presente realizacion, el signo de XA(k) puede ser identificado por la informacion de signo que se transmite mediante el uso de la zona de bits no usados, y por lo tanto se puede mejorar la calidad de XA(k).
[Ejemplo 1 del Paso D44']
El sintetizador 1283' realiza, por ejemplo, el proceso ilustrado en las Figuras 17 y 18, para de este modo obtener la senal decodificada. Cuando Co es L, se ejecuta para cada trama el proceso del Paso D44' en las Figuras 17 y 18. Cuando Co es un divisor comun de L distinto de uno y L, el proceso del Paso D44' en las Figuras 17 y 18 se ejecuta repetidamente para cada sub-banda en una trama.
El proceso de los Pasos D441 a D448 es como se ha descrito antes. No obstante, en el Ejemplo 1 del paso D44', cuando se ha determinado en el paso D442 que k no es menor que Co, el procedimiento avanza al Paso D4411.
En el Paso D4411, el sintetizador 1283' inicializa k y m como k=0 y m=0 (Paso D4411). A continuacion, el sintetizador 1283' compara k con Co (Paso D4412); y si k no es menor que Co, entonces el sintetizador 1283' fija una zona obtenida sustrayendo una zona en la que los bits b(m) son colocados a partir de la zona de bits no usados, como una nueva zona de bits no usados, fija U-m como un nuevo valor de U (Paso D442o), y sale del proceso del Paso D44'. Cuando Co es L, el Paso D442o no necesita ser ejecutado. Si k es menor que Co, el sintetizador 1283' compara m con el numero de bits no usados, U (Paso D4413); y si m no es menor que U, el sintetizador 1283' incrementa k en uno (Paso D4419) y avanza al Paso D4412. Si m es menor que U, el sintetizador 1283' determina si el valor decodificado E(k) es cero o no (Paso D4414), y si E(k) no es cero, el sintetizador 1283' incrementa k en uno (Paso D4419) y avanza al Paso D4412. Si E(k) es cero, el sintetizador 1283' determina si el bit m-esimo de entrada b(m) de la zona de bits no usados es cero o no (Paso D4415), y si b(m) es cero, el sintetizador 1283' fija un valor (un valor que tiene una magnitud que corresponde al valor de normalizacion recalculado xX=) obtenido invirtiendo el signo del valor de la multiplicacion del valor de normalizacion recalculado xX= y una constante C3', como el valor XA(k) de la senal decodificada (Paso D4416). Cg'es una constante que ajusta la magnitud de los componentes de la frecuencia, y C3' es, por ejemplo, igual a C3 o SC3. s es una constante o una variable determinadas de acuerdo con otro proceso. Esto es, el sintetizador 1283' fija, como XA(k), un valor definido por la siguiente formula.
imagen11
Hay que tener en cuenta que, en el proceso en el Paso D4416, solamente puede ser modificado el signo de XA(k) obtenido (obtenido en el Paso D444 en este ejemplo), solamente el signo de un valor obtenido cambiando la amplitud de XA(k) obtenido puede ser modificado, y la Formula (3) puede ser calculada de nuevo. Despues del Paso D4416, el sintetizador 1283' incrementa cada uno de los m y k en uno (Pasos D4418 y D4419), y avanza al Paso D4412.
Si se ha determinado en el paso D4415 que b(m) no es cero, el sintetizador 1283'fija el valor de la multiplicacion del valor de normalizacion recalculado xX= y la constante C', como el valor XA(k) de la senal decodificada (Paso D4417). Esto es, el sintetizador 1283' fija como XA(k) un valor definido por la siguiente formula.
imagen12
Hay que tener en cuenta que, en el proceso en el Paso D4417, solamente se puede modificar el signo de XA(k) obtenido, solamente puede ser modificado el signo de un valor obtenido cambiando la amplitud de XA(k) obtenido, y la Formula (4) puede ser calculada nuevamente. Despues del paso 4417, el sintetizador 1283' incrementa cada m y k en uno (Pasos D4418 y D4419), y avanza al Paso D4412 (Final de la descripcion del [Ejemplo Espedfico del Paso D44']).
[Ejemplo 2 del Paso D44']
El sintetizador 1283'puede obtener una senal decodificada por un proceso de realizacion representado en la Figura 19. Aqrn, el proceso del Paso D44' ilustrado en la Figura 19 se realiza para cada trama cuando Co es L o, el proceso del Paso D44' ilustrado en la Figura 19 se realiza repetidamente para cada sub-banda incluida en una trama cuando Co es un divisor comun de L distinto de uno y L.
El sintetizador 1283' inicializa k y m con k=o y m=o (Paso D4431).
El sintetizador 1283' compara k con Co (Paso D442), y si k no es menor que Co, el sintetizador 1283' fija una zona obtenida sustrayendo una zona en la que los bits b(m) estan colocados a partir de la zona de bits no usados como una nueva zona de bits no usados, fija U-m como un nuevo valor de U (Paso D4443), y sale del proceso del Paso
5
10
15
20
25
30
35
40
45
D44'. Hay que tener en cuenta que, si Co es L, el Paso D4443 no necesita ser ejecutado. Si k es menor que Co, el sintetizador 1283' determina si el valor decodificado EA(k) es cero o no (Paso D443); si el valor decodificado EA(k) es cero, el sintetizador 1283' compara m con el numero de bits no usados, U (Paso D4438); y si m no es menor que U, el sintetizador 1283' fija un valor obtenido invirtiendo aleatoriamente el signo del valor de la multiplicacion del valor de normalizacion recalculado xX“ y la primera constante C3, como el valor XA(k) de la senal decodificada (Paso D444). Esto es, el sintetizador 1283' calcula, como XA(k), un valor definido por la siguiente formula.
A
X(k) = C3TX rand(k)
Despues del Paso D444, el sintetizador 1283' incrementa k en uno (Paso D448) y avanza al Paso D442.
Si se ha determinado en el Paso D4438 que m es menor que U, el sintetizador 1283' determina si el bit m-esimo b(m) en la zona de bits no usados, del mdice de cuantificacion vectorial de entrada modificado, es cero o no (Paso D4439); y si b(m) es cero, el sintetizador 1283' fija un valor (un valor que tiene la magnitud que corresponde al valor de normalizacion recalculado) obtenido invirtiendo el signo del valor de la multiplicacion del valor de normalizacion recalculado xX“ y la primera constante C3, como el valor XA(k) de la senal decodificada (Paso D4440). Esto es, el sintetizador 1283' calcula como XA(k) un valor definido por la siguiente formula.
A
X(k) = -C3tX
Hay que tener en cuenta que la posicion del bit m-esimo b(m) en la zona de bits no usados, del mdice de cuantificacion vectorial modificado, puede ser facilmente identificada si se determinan una posicion de bit de comienzo de la zona de bits no usados y el orden de colocacion de los bits b(m) y se obtiene el numero de bits no usados U. Despues del Paso D4440, el sintetizador 1283' incrementa m y k en uno, respectivamente (Pasos D4442 y D448) y avanza al Paso D442.
Si se ha determinado en el Paso D4439 que b(m) no es cero, el sintetizador 1283' fija el valor de multiplicacion (un valor que tiene una magnitud que corresponde al valor de normalizacion recalculado xX“) del valor de normalizacion recalculado xX“ y la primera constante C3, como el valor XA(k) de la senal decodificada (Paso D4441). Esto es, el sintetizador 1283' calcula como XA(k) un valor definido por la siguiente formula.
A
X(k) = C3-xX
Despues del Paso D4441, el sintetizador 1283' incrementa m y k en uno, respectivamente (Pasos D4442 y D448) y avanza al Paso D442.
Si se ha determinado en el Paso D443 que valor decodificado EA(k) no es cero, el sintetizador 1283' realiza el proceso de los Pasos D445 a D447, incrementa k en uno (Paso D448), y avanza al Paso D442 (el final de la descripcion del [Ejemplo 2 del Paso D44']).
Cuando es necesaria una senal decodificada en un dominio de tiempos, XA(k) extrafdo del sintetizador 1283' es introducido en el convertidor 121 de dominio de tiempos. El convertidor 121 de dominio de tiempos transforma XA(k) en una senal z(n) de dominio de tiempos de acuerdo con la MDCT inversa, por ejemplo, y extrae la senal resultante (el final de la descripcion del [Ejemplo 2 del Paso D4]).
<Caractensticas de esta realizacion>
Como se ha descrito antes, en las realizaciones el modo de codificacion y el modo de decodificacion se cambian dependiendo de si la senal de entrada es escasa o no. Por consiguiente, el modo de codificacion y el modo de decodificacion apropiados pueden ser seleccionados dependiendo de si la supresion del ruido musical y similar son necesarias o no.
Como se ha descrito antes, en las presentes realizaciones, cuando el valor decodificado EA(k) es cero, a XA(k) se le asigna un valor distinto de cero mediante el uso del valor de normalizacion recalculado xX“, y por lo tanto se puede impedir que ocurra un agujero espectral cuando la senal de entrada es, por ejemplo, una senal del dominio de frecuencias. Esto puede reducir el ruido musical y similar.
Ademas, cuando la informacion de signo se transmite al dispositivo de decodificacion 12 mediante el uso de la zona de bits no usados que no es usada para la cuantificacion vectorial por el dispositivo de codificacion 11, el dispositivo de codificacion 12 puede identificar el signo de XA(k) mediante el uso de la informacion de signo transmitida en la zona de bits no usados, y por lo tanto se puede mejorar la calidad de XA(k).
5
10
15
20
25
30
35
40
45
50
55
Hay que tener en cuenta que debido al Kmite superior del numero de bits de la informacion de signo escrita en la zona de bits no usados es el numero de bits no usados, U, la informacion de signo que corresponde a cada frecuencia no esta necesariamente escrita en la zona de bits no usados. En este caso, la informacion de signo se extrae de acuerdo con criterios definidos considerando las caractensticas perceptivas auditivas humanas, y la informacion de signo extrafda se escribe en la zona de bits no usados, por lo que el dispositivo de decodificacion 12 puede identificar correctamente el signo de XA(k) en frecuencias que son importantes en cuanto a, por ejemplo, las caractensticas perceptivas auditivas humanas. Como resultado, se puede mejorar preferiblemente la calidad de XA(k) en las frecuencias que son importantes en cuanto a las caractensticas perceptivas auditivas.
Ademas, los signos de XA(k) en frecuencias en las que la informacion de signo no puede ser transmitida se determinan aleatoriamente mediante el uso de la funcion rand(k), y por lo tanto no son constantes. Por consiguiente, se puede hacer una senal decodificada natural incluso para frecuencias en las que la informacion de signo no puede ser transmitida.
[Otros Ejemplos Modificados]
Las presentes invenciones no estan limitadas a las realizaciones antes descritas. A partir de ahora se representaran unos ejemplos modificados distintos de los descritos.
Como esta indicado por una lmea de trazos en la Figura 2, el segundo codificador 118 puede estar provisto del calculador 1183 del valor de normalizacion de candidato de cuantificacion que calcula un valor de normalizacion XE- de candidato de cuantificacion que es un valor representativo de los candidatos de cuantificacion E(k). A continuacion, el vector cuantificador 1182 o 1282 pueden colectivamente cuantificar vectorialmente una pluralidad de valores obtenidos normalizando los candidatos de cuantificacion E(k) que respectivamente corresponden a una pluralidad de muestras mediante el uso del valor de normalizacion XE- del candidato de cuantificacion, para de este modo obtener el mdice de cuantificacion vectorial. Un ejemplo de los valores obtenidos normalizando los candidatos de cuantificacion E(k) mediante el uso del valor de normalizacion XE- del candidato de cuantificacion incluye un valor E(k)/XE- que se obtiene dividiendo E(k) por XE-. Debido a que el candidato de cuantificacion E(k) es normalizado y a continuacion cuantificado vectorialmente, el intervalo dinamico de candidato de cuantificacion puede ser estrechado, y son posibles la codificacion y la decodificacion con un numero menor de bits.
El calculador 1183 del valor de normalizacion del candidato de cuantificacion usa, por ejemplo, el valor de normalizacion cuantificado XX- para calcular un valor definido por la siguiente formula, como el candidato de cuantificacion E(k) (Figura 11 / Paso E61). C2 es un factor de ajuste positivo (puede ser denominado como una segunda constante), y es, por ejemplo, 0,3.
imagen13
De esta forma, debido a que el valor de normalizacion del candidato de cuantificacion XE- se calcula a partir del valor de normalizacion cuantificado XX-, el dispositivo de decodificacion puede calcular el valor de normalizacion del candidato de cuantificacion XE- a partir del valor de normalizacion cuantificado XX- sin transmision de informacion sobre el valor de normalizacion del candidato de cuantificacion XE-. Por consiguiente, se elimina la necesidad de transmitir la informacion sobre el valor de normalizacion del candidato de cuantificacion XE-, y se puede reducir el volumen de comunicacion.
En este caso, como esta indicado por una lmea de trazos en la Figura 3, el segundo decodificador 128 esta provisto del calculador 1284 del valor de normalizacion de candidato de decodificacion. El calculador 1284 del valor de normalizacion de candidato de decodificacion multiplica el valor de normalizacion decodificado XX- por la segunda constante C2 para obtener el valor resultante como un valor de normalizacion de candidato de decodificacion XE- (Figura 15 / Paso D41). El valor de normalizacion de candidato de decodificacion XE- es enviado al decodificador vectorial 1282 o 1282'. A continuacion, el decodificador vectorial 1282 o 1282' desnormaliza, mediante el uso de XE-, una pluralidad de valores que corresponden al mdice de cuantificacion vectorial para obtener los valores resultantes como la pluralidad de valores decodificados EA(k). Por ejemplo, el decodificador vectorial 1282 o 1282' multiplica cada uno de una pluralidad de valores que corresponden al mdice de cuantificacion vectorial por el valor de normalizacion de candidato de decodificacion XE- para obtener los valores resultantes como la pluralidad de valores decodificados EA(k). Hay que tener en cuenta que los valores decodificados EA(k) en esta modificacion son los valores obtenidos desnormalizando la pluralidad de valores que corresponden al mdice de cuantificacion vectorial, pero los valores de cuantificacion EA(k) pueden ser valores de antes de tal desnormalizacion.
El segundo decodificador 128 puede incluir un recalculador 1281’del valor de normalizacion en lugar del recalculador 1281 del valor de normalizacion.
En el Paso D43' (Figura 15), cuando el valor de normalizacion recalculado X- previamente calculado no es cero, el recalculador 1281’del valor de normalizacion puede obtener una suma ponderada del valor de normalizacion recalculado X- y el valor de normalizacion previamente recalculado X- como el valor de normalizacion recalculado X-. Si el valor de normalizacion recalculado X- es cero, el recalculador 1281' del valor de normalizacion no realiza la
5
10
15
20
25
30
35
40
45
suma ponderada de los valores de normalizacion recalculados, que es el aplanamiento de los valores de normalizacion recalculados.
Si Co=L y el valor de normalizacion recalculado X= se calcula para cada trama, el valor de normalizacion previamente recalculado X" es un valor de normalizacion recalculado calculado por el recalculador 1281’ del valor de normalizacion para la trama inmediatamente anterior. Si Co es un divisor de L distinto de uno y L y los componentes de la frecuencia se dividen en L/Co sub-bandas y se calcula un valor de normalizacion recalculado para cada sub- banda, el valor de normalizacion previamente recalculado X" puede ser un valor de normalizacion recalculado calculado para la misma sub-banda en la trama inmediatamente anterior o puede ser un valor de normalizacion recalculado ya calculado para la sub-banda contigua precedente o siguiente en la misma trama.
El valor de normalizacion recalculado Xpost nuevamente calculado considerando que el valor de normalizacion previamente recalculado X" puede ser expresado por la ecuacion dada mas adelante, en donde a1 y P1 son unos coeficientes de ajuste que se determinan como apropiados de acuerdo con el funcionamiento y especificaciones deseados.
Por ejemplo, a1=p-i=0,5.
si ■ X' - M
tXpost = (Xi’tX + Pj-tX'
Obteniendo un valor de normalizacion recalculado considerando el valor de normalizacion previamente recalculado X", el valor de normalizacion nuevamente recalculado X1- estara mas cerca del valor de normalizacion previamente recalculado X". Como resultado, aumentara la continuidad entre estos valores y por lo tanto se pueden reducir el ruido musical y similar causados cuando la senal de entrada es la senal del dominio de frecuencias, etc.
Como esta indicado por una lmea de trazos en la Figura 3, el segundo decodificador 128 puede ademas incluir la unidad 1285 de aplanamiento.
La unidad 1285 de aplanamiento recibe, como su entrada, el valor XA(k) de la senal decodificada obtenida en D44 o D44’ (Figura 15). Cuando no es cero un valor XA(k)’ de una senal decodificada pasada antes del valor XA(k) de la senal decodificada, la unidad 1285 de aplanamiento extrae la suma ponderada del valor XA(k)’ de la senal decodificada pasada y el valor XA(k) de la senal decodificada, como un valor aplanado XAposT(k). Cuando XA(k)’ es cero, la unidad 1285 de aplanamiento no obtiene la suma ponderada de los valores de las senales decodificadas, esto es, no realiza el aplanamiento de los valores de las senales decodificadas, y extrae XA(k) como X^postM (Figura 15 / Paso D45). Ejemplos del valor XA(k)’ de la senal decodificada pasada incluyen: un valor de una senal decodificada que se obtiene en el Paso D4 para una trama antes de la trama que corresponde al valor XA(k) de la senal decodificada; y un valor aplanado que se obtiene en el Paso D4’ para una trama antes de la trama que corresponde al valor XA(k) de la senal decodificada.
XAPosT(k) se expresa en la siguiente formula. a2 y P2 son factores de ajuste, y se ha decidido que son apropiados de acuerdo con el funcionamiento y especificaciones preferidos. a2 es igual a, por ejemplo 0,85, y P2 es igual a, por ejemplo 0,15. ^() expresa el signo de:
si X( k ) = I I
' XpoST(k)
= {a2-1 X(k) | +P2* | X(k)'|} • <J>(X(k))
Esto puede reducir el ruido musical y similar causado por la discontinuidad en la direccion del eje del tiempo de las caractensticas de amplitud de XA(k). Cuando es necesaria una senal decodifcada en un dominio de tiempos, XAPosT(k) extrafdo de la unidad 1285 de aplanamiento se introduce en el convertidor 121 de dominio de tiempos. El convertidor 121 de dominio de tiempos transforma X*PosT(k) en la senal z(n) de dominio de tiempos de acuerdo con, por ejemplo, la MDCT inversa, y extrae la senal resultante.
Cuando el segundo decodificador 128 incluye un sintetizador 1286 en lugar del sintetizador 1283 o 1283’ y los recalculadores 1281 y 1287 de los valores de normalizacion, el sintetizador 424, por ejemplo, recibe xX- y EA(k) y puede realizar los subsiguientes procesos mostrados en las Figuras 20 y 21 en lugar de los ejemplos de los Pasos D43 y D44. Cuando C0 es L, el proceso que se describe mas adelante se realiza para cada trama o, cuando C0 es un divisor comun de L distinto de uno y L, el proceso que se describe mas adelante se realiza repetidamente para cada sub-banda en una trama.
de otro modo
de otro modo
5
10
15
20
25
30
35
40
El sintetizador 1286 inicializa k, m, y tmp como k=0, m=0, y tmp=0 (Paso D4311).
El sintetizador 1286 compara k con C0 (Paso D4312); si k es menor que C0 el sintetizador 1286 determina si el valor decodificado E(k) es cero o no (Paso D4313); y si el valor decodificado EA(k) es cero, el sintetizador 1236 incrementa k en uno (Paso D4317), y avanza al Paso D4312. Si el valor decodificado EA(k) no es cero, el sintetizador 1286 calcula la potencia de la muestra del numero de identificacion k, y anade la potencia calculada a tmp (Paso D4314). Esto es, el sintetizador 1286 fija un valor obtenido anadiendo la potencia calculada a un valor de tmp, como un nuevo valor de tmp. Por ejemplo, el sintetizador 1286 calcula la potencia de acuerdo con la formula siguiente.
imagen14
Ademas, el sintetizador 1286 incrementa m en 1 (Paso D4315), y calcula la siguiente formula (Paso D4316).
imagen15
Hay que tener en cuenta que SIGN (EA(k)) es una funcion que es 1 cuando EA(k) es positivo y es -1 cuando EA(k) es negativo. Despues de esto, el sintetizador 1286 incrementa m en uno (Paso D4317), y va al Paso D4312.
Si se ha determinado en el Paso D4312 que k no es menor que C0, el sintetizador 1286 calcula un valor de xX“ definido por la siguiente formula (Paso D4318).
TX= ICq-t*2-tmp T \ C0 - m
Ademas, el sintetizador 1286 inicializa k como k=0 (Paso D4321).
El sintetizador 1286 compara k con C0 (Paso D4322), y si k no es menor que C0, el sintetizador 1286 sale del proceso de los Pasos D43 y D44. Si k es menor que C0, el sintetizador 1286 determina si el valor decodificado EA(k) es cero o no (Paso D4323), y si el valor decodificado EA(k) es cero, el sintetizador 1286 fija un valor obtenido invirtiendo aleatoriamente el signo del valor de la multiplicacion del valor de normalizacion recalculado xX“ y la primera constante C3 como el valor XA(k) de la senal decodificada (Paso D4324). Esto es, el sintetizador 1286 calcula, como XA(k), un valor definido por la siguiente formula.
X(k) = C3-TX • rand(k)
A continuacion, el sintetizador 1286 incrementa k en uno (Paso D4328) y avanza al Paso D4322.
Despues de esto, el sintetizador 1286 incrementa k en uno (Paso D4328) y avanza al Paso D4322.
El sintetizador 424 puede recibir xX", EA(k), U, y b(m), y puede realizar el siguiente proceso mostrado en las Figuras 18, 20, y 21, en lugar de los Ejemplos antes descritos de los Pasos D43 y D44', por ejemplo. Una diferencia entre el siguiente proceso y el proceso antes descrito mostrado en las Figuras 20 y 21 es que, cuando se ha determinado que k no es menor que C0 en el Paso D4322, en lugar de finalizar el proceso de los Pasos D43 y D44, el sintetizador 1286 avanza al proceso del Paso D4411 mostrado en la Figura 18. Los otros son los mismos que los descritos anteriormente.
Ademas, C0, C1, C2, C3, a-i, P1, a2, y P2 pueden ser cambiados segun convenga de acuerdo con el funcionamiento y las especificaciones deseados.
Tambien, la senal de entrada X(k) no necesita necesariamente ser una senal del dominio de frecuencias, y puede ser una senal dada como una senal de dominio de tiempos. Esto es, la presente invencion puede ser aplicada a la codificacion y decodificacion de una senal dada distinta de una senal del dominio de frecuencias.
Ademas, un valor de normalizacion Fgain para la senal de entrada X(k) puede ser determinado para cada trama, y el calculador 1181 del candidato de cuantificacion puede usar un valor obtenido normalizando X(k) mediante el uso del valor de normalizacion Fgain en lugar del valor X(k) de cada muestra de la senal de entrada, y puede usar un valor obtenido normalizando xX" mediante el uso del valor de normalizacion Fgain en lugar del valor de normalizacion cuantificado xX", para de este modo ejecutar el procesamiento del Paso E6. Por ejemplo, el procesamiento del Paso
5
10
15
20
25
30
35
40
45
50
E6 puede ser ejecutado en el estado en el que X(k) es sustituido por X(k)/ Fgain y en donde xX- es sustituido por xX- /Fgain.
Cuando la normalizacion se realiza mediante el uso del valor de normalizacion Fgain, el proceso del Paso E33 (Figuras 5 y 6), del Paso E336 (Figuras 7 y 8), y del Paso E346 (Figuras 9 y 10) puede no ser realizado y los subsiguientes procesos pueden ser realizados como X~(k)=X(k), X~(iCo+h) = X(iCo+h), y X~(bCo+h)=X(bCo+h).
Ademas, cuando la normalizacion es realizada mediante el uso del valor de normalizacion Fgain, el calculador 112 del valor de normalizacion puede no ser proporcionado y un valor obtenido normalizando X(k) por el valor de normalizacion Fgain puede ser introducido en el cuantificador 113 del valor de normalizacion en lugar del valor de normalizacion cuantificado xX-. En tal caso, el primer codificador 117 y el segundo codificador 118 pueden realizar procesos de codificacion mediante el uso de un valor cuantificado de un valor obtenido normalizando X(k) por el valor de normalizacion Fgain, en lugar del valor de normalizacion cuantificado xX-. El mdice de cuantificacion del valor de normalizacion puede corresponder al valor cuantificado de un valor que es normalizado por el valor de normalizacion Fgain.
Ademas, los diferentes procesos antes descritos pueden ser ejecutados cronologicamente en el orden descrito, y pueden ser ejecutados en paralelo o individualmente segun sea necesario o de acuerdo con la capacidad de procesamiento de un aparato que ejecuta el proceso. Por otra parte, no hace falta decir que la presente invencion puede ser cambiada segun convenga dentro del intervalo sin apartarse de la esencia de la misma.
[Soporte ffsico, Programa, y Medio de Registro]
El dispositivo 11 de codificacion y el dispositivo 12 de decodificacion estan configurados por un ordenador conocido o especializado que incluye una unidad central de procesamiento (CPU) y una memoria de acceso aleatorio (RAM), y un programa especial en el que esta escrito el procesamiento antes descrito, por ejemplo. En ese caso, el programa especial es lefdo en la CPU, y la CPU ejecuta el programa especial para aplicar cada funcion. El programa especial puede ser configurado como una unica cadena de programas o puede realizar el objetivo leyendo otro programa o biblioteca.
El programa puede ser registrado en un medio de registro lefble por un ordenador. Ejemplos del medio de registro lefble por un ordenador incluyen un aparato de registro magnetico, un disco optico, un medio de registro magnetooptico, y una memoria de semiconductores. Ejemplos del medio de registro lefble por un ordenador son los medios de registro no transitorios. El programa es distribuido, por ejemplo, por venta, transferencia, o alquilando un DVD, un CD-ROM, u otros medios de registro transportables en los que esta registrado el programa. El programa puede ser almacenado en una unidad de almacenamiento de un ordenador servidor y puede ser distribuido transfiriendo el programa desde el ordenador servidor a otro ordenador a traves de una red.
El ordenador que ejecuta el programa almacena el programa registrado en un medio de registro transportable o el programa transferido desde el ordenador servidor en su propia memoria. Cuando se ejecuta el procesamiento, el ordenador lee el programa almacenado en su propia memoria y ejecuta el procesamiento de acuerdo con el programa lefdo. El programa puede tambien ser ejecutado por otros metodos. El ordenador puede leer el programa directamente desde el medio de registro transportable y ejecutar el procesamiento de acuerdo con el programa; y cada vez que el programa es transferido desde el ordenador servidor al ordenador, el procesamiento puede ser ejecutado de acuerdo con el programa transferido.
Al menos una parte de las unidades de procesamiento del dispositivo 11 de codificacion o del dispositivo 12 de decodificacion puede ser configurada por un circuito integrado especial.
[Descripcion de los numeros de referencia]
11:
Dispositivo codificador
111:
Convertidor de dominio de frecuencia
112:
Calculador del valor de normalizacison
113:
Cuantificador del valor de normalizacion
114:
Cuantificador del valor de normalizacion
115, 116:
Unidad de conmutacion
117:
Primer codificador
118:
Segundo codificador
12:
Dispositivo de decodificacion
123:
Decodificador del valor de normalizacion
125, 126:
Unidad de conmutacion
127:
Primer codificador
128:
Segundo codificador
CM LO
Decodificador del valor de normalizacion

Claims (18)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    55
    REIVINDICACIONES
    1. Un metodo de codificacion que comprende:
    un paso de seleccion de modo de codificacion de seleccion de un segundo modo de codificacion cuando un valor de evaluacion es un segundo valor de referencia o menor, seleccionar un primer modo de codificacion distinto del segundo modo de codificacion cuando el segundo modo de codificacion no es seleccionado, y generar una informacion de modo que representa un modo de codificacion seleccionado, en donde el valor de evaluacion corresponde al numero de muestras que corresponde a valores menores que un primer valor de referencia entre un numero predeterminado de muestras de entrada, y el segundo modo de codificacion es un modo en el que un valor de normalizacion que es un valor representativo del numero predeterminado de muestras se cuantifica para obtener un valor de normalizacion cuantificado y un mdice de cuantificacion del valor de normalizacion que corresponde al valor de normalizacion cuantificado, un valor de la diferencia para cada muestra que se obtiene sustrayendo un valor que corresponde al valor de normalizacion cuantificado de un valor que corresponde a la magnitud de una muestra se fija como un candidato de cuantificacion que corresponde a la muestra cuando el valor de la diferencia es positivo y la muestra es positiva, el signo del valor de la diferencia se invierte y el resultado se fija en el candidato de cuantificacion que corresponde a la muestra cuando el valor de la diferencia es positivo y la muestra es negativa, y una pluralidad de candidatos de cuantificacion se cuantifican vectorialmente de forma conjunta para obtener un mdice de cuantificacion vectorial; y
    un paso de codificacion de codificacion del numero predeterminado de muestras por el primer modo de codificacion o el segundo modo de codificacion que es seleccionado en el paso de seleccion de modo de codificacion,
    caracterizado por que:
    el primer modo de codificacion es un modo en el que el mdice de cuantificacion vectorial se obtiene por cuantificacion vectorial de acuerdo con un modo de cuantificacion en el que los valores cuantificados no cero se obtienen solamente para algunas del numero de muestras predeterminado y los valores cuantificados cero se obtienen para las restantes muestras; y
    el segundo modo de codificacion incluye un proceso de fijar en cero como el candidato de cuantificacion que corresponde a cada una de las muestras cuando el valor de la diferencia no es positivo.
  2. 2. El metodo de codificacion de acuerdo con la reivindicacion 1, en donde el valor de evaluacion es un valor de adicion ponderado de un valor de evaluacion calculado la vez anterior y del numero de muestras que corresponde a valores menores que el primer valor de referencia.
  3. 3. El metodo de codificacion de acuerdo con las reivindicaciones 1 o 2, en donde el segundo valor de referencia cuando un numero de muestras predeterminado previo son codificadas por el primer modo de codificacion es menor que cuando el numero de muestras predeterminado previo son codificadas por el segundo modo de codificacion.
  4. 4. El metodo de codificacion de acuerdo con la reivindicacion 3, en donde el valor de evaluacion es un valor que corresponde al numero de muestras que incluye muestras que satisfacen un criterio basado en las caractensticas perceptivas auditivas y que corresponde a valores menores que el primer valor de referencia entre el numero de muestras predeterminado.
  5. 5. El metodo de codificacion de acuerdo con las reivindicaciones 1 o 2, en donde el valor de evaluacion es un valor que corresponde al numero de muestras que incluye muestras que satisfacen un criterio basado en las caractensticas perceptivas auditivas y que corresponde a valores menores que el primer valor de referencia entre el numero de muestras predeterminado.
  6. 6. El metodo de codificacion de acuerdo con la reivindicacion 1, en donde el primer modo de codificacion es un modo en el que un valor de normalizacion que es representativo del numero de muestras predeterminado es ademas cuantificado para obtener un valor de normalizacion cuantificado y un mdice de cuantificacion del valor de normalizacion que corresponde al valor de normalizacion cuantificado, y los valores cuantificados no cero se obtienen solamente para algunas del numero predeterminado de muestras normalizadas que se obtienen normalizando el numero de muestras predeterminado por el valor de normalizacion cuantificado.
  7. 7. Un metodo de decodificacion que comprende:
    un paso de conmutacion de seleccion de un segundo modo de decodificacion cuando la informacion de modo de entrada tiene un segundo valor, y seleccionar un primer modo de decodificacion distinto del segundo modo de decodificacion cuando la informacion de modo tiene un primer valor, en donde el segundo modo de decodificacion es un modo en el que se obtiene un valor de normalizacion decodificado que corresponde a un mdice de cuantificacion del valor de normalizacion de entrada, una pluralidad de valores que corresponden a un mdice de cuantificacion vectorial de entrada se obtienen como valores decodificados, un valor que tiene una magnitud que corresponde a un valor de normalizacion recalculado que toma un valor que disminuye con la suma creciente de los valores absolutos de un numero predeterminado de los valores decodificados se obtiene como una senal
    5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    decodificada cuando el valor decodificado es cero, una suma lineal del valor decodificado y del valor de normalizacion decodificado se obtiene como una senal decodificada cuando el valor decodificado es positivo, y un signo de la suma lineal del valor absoluto del valor decodificado y del valor de normalizacion decodificado se invierte y el resultado se fija como una senal decodificada cuando el valor decodificado es negativo; y
    un paso de decodificacion de realizacion de un proceso de decodificacion en el primer modo o el segundo modo de decodificacion que se selecciona en el paso de conmutacion,
    caracterizado por que:
    el primer modo de decodificacion es un modo en el que el mdice de cuantificacion del valor de normalizacion se decodifica para generar el valor de normalizacion decodificado, el mdice de cuantificacion vectorial se decodifica para generar una secuencia de muestras, y se obtiene una secuencia de muestras de senales decodificadas multiplicando las muestras de la secuencia de muestras por el valor de normalizacion decodificado.
  8. 8. Un dispositivo (11) de codificacion que comprende:
    un selector (114) de modo de codificacion que selecciona un segundo modo de codificacion cuando un valor de evaluacion es un segundo valor de referencia o menor, selecciona un primer modo de codificacion distinto del segundo modo de codificacion cuando el segundo modo de codificacion no es seleccionado, y genera una informacion de modo que representa un modo de codificacion seleccionado, en donde el valor de evaluacion corresponde al numero de muestras que corresponden a valores menores que un primer valor de referencia entre un numero predeterminado de muestras de entrada, y el segundo modo de codificacion es un modo en el que un valor de normalizacion que es un valor representativo del numero de muestras predeterminado se cuantifica para obtener un valor de normalizacion cuantificado y un mdice de cuantificacion del valor de normalizacion que corresponde al valor de normalizacion cuantificado, un valor de la diferencia para cada muestra que se obtiene sustrayendo un valor que corresponde al valor de normalizacion cuantificado de un valor que corresponde a la magnitud de una muestra se fija como un candidato de cuantificacion que corresponde a la muestra cuando el valor de la diferencia es positivo y la muestra es positiva, el signo del valor de la diferencia se invierte y el resultado se fija en el candidato de cuantificacion que corresponde a la muestra cuando el valor de la diferencia es positivo y la muestra es negativa, y una pluralidad de candidatos de cuantificacion se cuantifican vectorialmente de forma conjunta para obtener un mdice de cuantificacion vectorial; y
    un codificador (117, 118) que codifica el numero predeterminado de muestras por el primer modo de codificacion o el segundo modo de codificacion que es seleccionado por el selector (114) de modo de codificacion,
    caracterizado por que:
    el primer modo de codificacion es un modo en el que el mdice de cuantificacion vectorial se obtiene por cuantificacion vectorial de acuerdo con un modo de cuantificacion vectorial en el que los valores cuantificados no cero se obtienen solamente para algunas del numero de muestras predeterminado y los valores cuantificados cero se obtienen para las restantes muestras; y
    el segundo modo de codificacion incluye un proceso de fijacion en cero como el candidato de cuantificacion que corresponde a cada una de las muestras cuando el valor de la diferencia no es positivo.
  9. 9. El dispositivo de codificacion de acuerdo con la reivindicacion 8, en donde el valor de evaluacion es un valor de adicion ponderado de un valor de evaluacion calculado la vez anterior y del numero de muestras que corresponde a valores menores que el primer valor de referencia.
  10. 10. El dispositivo de codificacion de acuerdo con las reivindicaciones 8 o 9, en donde el segundo valor de referencia cuando un numero de muestras predeterminado son codificadas por el primer modo de codificacion es menor que cuando el numero de muestras predeterminado previamente son codificadas por el segundo modo de codificacion.
  11. 11. El dispositivo de codificacion de acuerdo con la reivindicacion 10, en donde el valor de evaluacion es un valor que corresponde al numero de muestras que incluye muestras que satisfacen un criterio basado en caractensticas perceptivas auditivas y que corresponde a valores menores que el primer valor de referencia entre el numero de muestras predeterminado.
  12. 12. El dispositivo de codificacion de acuerdo con las reivindicaciones 8 o 9, en donde el valor de evaluacion es un valor que corresponde al numero de muestras que incluye muestras que satisfacen un criterio basado en las caractensticas perceptivas auditivas y que corresponde a valores menores que el primer valor de referencia entre el numero de muestras predeterminado.
  13. 13. El metodo de codificacion de acuerdo con la reivindicacion 8, en donde el primer modo de codificacion es un modo en el que un valor de normalizacion que es representativo del numero de muestras predeterminado es ademas cuantificado para obtener un valor de normalizacion cuantificado y un mdice de cuantificacion del valor de
    5
    10
    15
    20
    25
    30
    normalizacion que corresponde al valor de normalizacion cuantificado, y los valores cuantificados no cero se obtienen solamente para algunas del numero predeterminado de muestras normalizadas que se obtienen normalizando el numero de muestras predeterminado por el valor de normalizacion cuantificado.
  14. 14. Un dispositivo (12) de decodificacion que comprende:
    una unidad de conmutacion (125, 126) que selecciona un segundo modo de decodificacion cuando la informacion de modo de entrada tiene un segundo valor, y selecciona un primer modo de decodificacion distinto del segundo modo de decodificacion cuando la informacion de modo tiene un primer valor, en donde el segundo modo de decodificacion es un modo en el que se obtiene un valor de normalizacion decodificado que corresponde a un mdice de cuantificacion del valor de normalizacion, una pluralidad de valores que corresponden a un mdice de cuantificacion vectorial de entrada se obtienen como valores decodificados, un valor que tiene una magnitud que corresponde a un valor de normalizacion recalculado que toma un valor que disminuye con la suma creciente de los valores absolutos de un numero predeterminado de los valores decodificados se obtiene como una senal decodificada cuando el valor decodificado es cero, una suma lineal del valor decodificado y del valor de normalizacion decodificado se obtiene como una senal decodificada cuando el valor decodificado es positivo, y se invierte un signo de la suma lineal del valor absoluto del valor decodificado y del valor de normalizacion decodificado y el resultado se fija como una senal decodificada cuando el valor decodificado es negativo; y
    un decodificador (123, 127, 128) de realizacion de un proceso de decodificacion en el primer modo de decodificacion o el segundo modo de decodificacion que es seleccionado por la unidad de conmutacion,
    caracterizado por que:
    el primer modo de decodificacion es un modo en el que el mdice de cuantificacion del valor de normalizacion se decodifica para generar un valor de normalizacion decodificado, el mdice de cuantificacion vectorial se decodifica para generar una secuencia de muestras, y se obtiene una secuencia de muestras de senales decodificadas multiplicando las muestras de la secuencia de muestras por el valor de normalizacion decodificado.
  15. 15. Un programa para hacer que un ordenador realice cada paso del metodo de codificacion de acuerdo con la reivindicacion 1.
  16. 16. Un programa para hacer que un ordenador realice cada paso del metodo de codificacion de acuerdo con la reivindicacion 7.
  17. 17. Un medio de registro lefble por un ordenador en el que se almacena un programa para hacer que un ordenador realice cada paso del metodo de codificacion de acuerdo con la reivindicacion 1.
  18. 18. Un medio de registro lefble por un ordenador en el que se almacena un programa para hacer que un ordenador realice cada paso del metodo de decodificacion de acuerdo con la reivindicacion 7.
ES11803544.3T 2010-07-05 2011-07-04 Método de codificación, método de decodificación, dispositivo, programa y medio de registro Active ES2559981T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2010152951 2010-07-05
JP2010152951 2010-07-05
PCT/JP2011/065274 WO2012005210A1 (ja) 2010-07-05 2011-07-04 符号化方法、復号方法、装置、プログラムおよび記録媒体

Publications (1)

Publication Number Publication Date
ES2559981T3 true ES2559981T3 (es) 2016-02-17

Family

ID=45441189

Family Applications (1)

Application Number Title Priority Date Filing Date
ES11803544.3T Active ES2559981T3 (es) 2010-07-05 2011-07-04 Método de codificación, método de decodificación, dispositivo, programa y medio de registro

Country Status (7)

Country Link
US (1) US20130114733A1 (es)
EP (1) EP2573942B1 (es)
JP (1) JP5331249B2 (es)
CN (1) CN102959873A (es)
CA (1) CA2803272A1 (es)
ES (1) ES2559981T3 (es)
WO (1) WO2012005210A1 (es)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010036159A1 (en) * 2008-09-24 2010-04-01 Telefonaktiebolaget L M Ericsson (Publ) Mu-comp channel state normalization measure quantization and transmission
WO2012001463A1 (en) * 2010-07-01 2012-01-05 Nokia Corporation A compressed sampling audio apparatus
US9997165B2 (en) * 2013-10-18 2018-06-12 Telefonaktiebolaget L M Ericsson (Publ) Coding and decoding of spectral peak positions
KR102202260B1 (ko) * 2014-02-27 2021-01-12 텔레폰악티에볼라겟엘엠에릭슨(펍) 오디오/비디오 샘플 벡터의 피라미드 벡터 양자화 인덱싱 및 디인덱싱을 위한 방법 및 장치
CN107424621B (zh) 2014-06-24 2021-10-26 华为技术有限公司 音频编码方法和装置
US10553228B2 (en) * 2015-04-07 2020-02-04 Dolby International Ab Audio coding with range extension
US10091506B2 (en) * 2015-06-11 2018-10-02 Sony Corporation Data-charge phase data compression architecture
US10027968B2 (en) * 2015-06-12 2018-07-17 Sony Corporation Data-charge phase data compression tool
CN108932944B (zh) * 2017-10-23 2021-07-30 北京猎户星空科技有限公司 解码方法及装置
JP7176418B2 (ja) * 2019-01-17 2022-11-22 日本電信電話株式会社 多地点制御方法、装置及びプログラム
CN117373465B (zh) * 2023-12-08 2024-04-09 富迪科技(南京)有限公司 一种语音频信号切换系统

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3087814B2 (ja) * 1994-03-17 2000-09-11 日本電信電話株式会社 音響信号変換符号化装置および復号化装置
US7460990B2 (en) * 2004-01-23 2008-12-02 Microsoft Corporation Efficient coding of digital media spectral data using wide-sense perceptual similarity
US8208564B2 (en) * 2005-06-24 2012-06-26 Ntt Docomo, Inc. Method and apparatus for video encoding and decoding using adaptive interpolation
SG170078A1 (en) * 2006-12-13 2011-04-29 Panasonic Corp Encoding device, decoding device, and method thereof
US7761290B2 (en) * 2007-06-15 2010-07-20 Microsoft Corporation Flexible frequency and time partitioning in perceptual transform coding of audio
US7774205B2 (en) * 2007-06-15 2010-08-10 Microsoft Corporation Coding of sparse digital media spectral data
US8527265B2 (en) * 2007-10-22 2013-09-03 Qualcomm Incorporated Low-complexity encoding/decoding of quantized MDCT spectrum in scalable speech and audio codecs
US8515767B2 (en) * 2007-11-04 2013-08-20 Qualcomm Incorporated Technique for encoding/decoding of codebook indices for quantized MDCT spectrum in scalable speech and audio codecs
WO2009093714A1 (ja) * 2008-01-24 2009-07-30 Nippon Telegraph And Telephone Corporation 符号化方法、復号化方法、それらの装置、及びそれらのプログラムと記録媒体
JP5355244B2 (ja) * 2009-06-23 2013-11-27 日本電信電話株式会社 符号化方法、復号方法、符号化器、復号器およびプログラム
JP5336943B2 (ja) * 2009-06-23 2013-11-06 日本電信電話株式会社 符号化方法、復号方法、符号化器、復号器、プログラム
JP5361565B2 (ja) * 2009-06-23 2013-12-04 日本電信電話株式会社 符号化方法、復号方法、符号化器、復号器およびプログラム
JP5336942B2 (ja) * 2009-06-23 2013-11-06 日本電信電話株式会社 符号化方法、復号方法、符号化器、復号器、プログラム
WO2011086900A1 (ja) * 2010-01-13 2011-07-21 パナソニック株式会社 符号化装置および符号化方法
EP2546994B1 (en) * 2010-03-09 2016-12-28 Nippon Telegraph And Telephone Corporation Coding method, decoding method, apparatus, program and recording medium
US9082412B2 (en) * 2010-06-11 2015-07-14 Panasonic Intellectual Property Corporation Of America Decoder, encoder, and methods thereof
US9236063B2 (en) * 2010-07-30 2016-01-12 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for dynamic bit allocation

Also Published As

Publication number Publication date
JPWO2012005210A1 (ja) 2013-09-02
WO2012005210A1 (ja) 2012-01-12
JP5331249B2 (ja) 2013-10-30
US20130114733A1 (en) 2013-05-09
EP2573942A4 (en) 2014-08-13
EP2573942B1 (en) 2015-12-16
CA2803272A1 (en) 2012-01-12
CN102959873A (zh) 2013-03-06
EP2573942A1 (en) 2013-03-27

Similar Documents

Publication Publication Date Title
ES2559981T3 (es) Método de codificación, método de decodificación, dispositivo, programa y medio de registro
ES2297083T3 (es) Codificacion entropica por adaptacion de la codificacion entre modos por longitud de ejecucion y por nivel.
ES2461183T3 (es) Decodificador de señales de audio, codificador de señales de audio, procedimiento para decodificar una señal de audio, método para codificar una señal de audio y programa de ordenador que utilizan una adaptación dependiente de la frecuencia de un contexto de codificación
CN107025909B (zh) 能量无损编码方法和设备以及能量无损解码方法和设备
ES2890706T3 (es) Método de codificación, codificador, programa, y medio de grabación
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
US10510354B2 (en) Speech audio encoding device, speech audio decoding device, speech audio encoding method, and speech audio decoding method
ES2689072T3 (es) Codificación de una señal de audio
KR102492558B1 (ko) 최하위 비트의 인코딩 및 디코딩을 적용한 오디오 인코더, 오디오 디코더, 방법 및 컴퓨터 프로그램
JP6509973B2 (ja) 符号化方法、符号化装置、プログラム、および記録媒体
JP5714002B2 (ja) 符号化装置、復号装置、符号化方法及び復号方法
ES2619369T3 (es) Método de codificación, método de descodificación, aparato, programa y soporte de registro
JP2020518030A (ja) デジタルオーディオ信号における差分データ
ES2588745T3 (es) Método de codificación, método de decodificación, dispositivo codificador, dispositivo decodificador, programa y medio de grabación
EP2573941A1 (en) Encoding method, decoding method, device, program, and recording medium
JPWO2011086900A1 (ja) 符号化装置および符号化方法
ES2786198T3 (es) Codificador de señal de audio
CN110709928B (zh) 用于编码音频信号的方法及装置