ES2817906T3 - Método de codificación de impulsos de las señales de excitación - Google Patents

Método de codificación de impulsos de las señales de excitación Download PDF

Info

Publication number
ES2817906T3
ES2817906T3 ES14184929T ES14184929T ES2817906T3 ES 2817906 T3 ES2817906 T3 ES 2817906T3 ES 14184929 T ES14184929 T ES 14184929T ES 14184929 T ES14184929 T ES 14184929T ES 2817906 T3 ES2817906 T3 ES 2817906T3
Authority
ES
Spain
Prior art keywords
index
pulse
distribution
positions
track
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
ES14184929T
Other languages
English (en)
Inventor
Fuwei Ma
Dejun Zhang
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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
Priority claimed from CN2007101030235A external-priority patent/CN101295506B/zh
Priority claimed from CN2007101539527A external-priority patent/CN101388210B/zh
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Application granted granted Critical
Publication of ES2817906T3 publication Critical patent/ES2817906T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Analogue/Digital Conversion (AREA)

Abstract

Un método para codificar una señal de voz, que comprende: la obtención de la distribución de impulsos de la señal de voz, en una pista, de los impulsos a codificarse en la pista, mediante la recogida de la estadística sobre las posiciones del impulso, comprendiendo la distribución de impulsos una cantidad de posiciones que tienen un impulso, la distribución de las posiciones que tienen un impulso en la pista y la cantidad de impulsos en cada posición con un impulso; la generación de un índice de codificación que comprende un primer índice I1, un segundo índice I2 y un tercer índice I3 para identificar la distribución de impulsos de conformidad con dicha distribución de impulsos, en donde: el primer índice está adaptado para identificar todas las distribuciones posibles de las posiciones que tienen un impulso en la pista cuando se determina la cantidad de posiciones que tienen un impulso; el segundo índice está adaptado para identificar una distribución, correspondiente a la distribución de la posición actual con un pulso, de todas las posibles distribuciones correspondientes al primer índice; el tercer índice está adaptado para identificar la cantidad de impulsos en cada posición con un impulso; en donde la generación de un índice de codificación que comprende un primer índice I1, un segundo índice I2 y un tercer índice I3 para identificar la distribución de impulsos según la distribución de impulsos que comprende: determinar el primer índice I1 según la cantidad de posiciones con un impulso; determinar el segundo índice I2 según la distribución de impulsos de las posiciones de impulsos en la pista; determinar el tercer índice I3 según la cantidad de impulsos en cada posición con un impulso.

Description

DESCRIPCIÓN
Método de codificación de impulsos de las señales de excitación
CAMPO DE LA INVENCIÓN
La presente invención se refiere a un método de codificación.
ANTECEDENTES
En la tecnología de codificación de vectores, las señales residuales subsiguientes a la filtración adaptativa suelen someterse a una codificación de cuantización utilizando libros de códigos algebraicos. Después de que se realice la búsqueda de la información sobre la posición y el signo del impulso del libro de códigos algebraicos óptimo en la pista, el valor de índice correspondiente se calcula por intermedio de la codificación, de modo que el decodificador pueda reconstruir un orden de impulsos en función del valor del índice. Uno de los principales objetivos de la búsqueda y del desarrollo del método de codificación de impulsos del libro de códigos algebraicos es reducir al mínimo los bits requeridos por el valor del índice de codificación sobre la condición previa de asegurar una reconstrucción sin pérdidas.
El método de codificación de Banda Ancha de Múltiples Tasas Adaptativas Extendida (AMR_WB+) es un método de codificación de impulsos del libro de códigos algebraicos en la técnica anterior. Dependiendo de la tasa de codificación, pueden codificarse de uno a N impulsos en cada pista. Con el aumento de los impulsos de codificación, los bits requeridos para la codificación de dicha cantidad de impulsos también aumentan. A modo de ejemplo, para una pista con M = 2m posiciones, la codificación de un impulso en la pista requiere m+1 bits y la codificación de sistema impulsos en la pista requiere 6m-2 bits. En el proceso de desarrollar la presente invención, el inventor encuentra que en la codificación de impulsos algebraicos en la técnica anterior, se aplica un método de codificación del modo de recursión para descomponer un impulso de codificación en numerosos impulsos en varios impulsos de codificación con menos impulsos, con lo que se hace bastante complejo el proceso de codificación. Asimismo, con el aumento de los impulsos de codificación en la pista, se acumula la redundancia del índice de codificación, con lo que se tiende a causar un uso innecesario de bits de codificación.
El documento D1 (MITTAL U. et al: “Excitación FCB no restringida de codificación utilizando codificaciones combinatorios y de Huffman”, Speech Coding, 2002, IEEE Workshop Proceedings, 6-9 octubre 2002, páginas 129­ 131; XP010647236) se considera como el documento de referencia más próximo a la presente solicitud de patente. El documento D1 da a conocer un método para codificar la excitación de libro de código fijo (FCB) sin restricciones para los codificadores de voz ACELP.
Más concretamente, el método incluye: la enumeración de la configuración de impulsos definiendo una relación de ordenamiento total, matemáticamente calculable, simple entre ellos y luego asignando un índice a cada configuración. El índice es igual al orden de la configuración de impulsos en el orden total, el contenido de información de una configuración de impulsos se divide en cuatro constituyentes: 1) número de posiciones de impulsos no nulos (u); 2) posiciones de los impulsos no nulos (p); 3) magnitud de los impulsos no nulos (m); y 4) signos de los impulsos no nulos (o). Y los cuatro constituyentes se codifican en códigos, mientras que el código para la posición del impulso (p) se proporciona por:
Figure imgf000002_0001
SUMARIO
Se proporciona un método de codificación capaz de guardar bits de codificación de forma eficaz, tal como se define en las reivindicaciones adjuntas.
En las formas de realización de la presente invención, el índice de codificación puede incluir un identificador de distribución para identificar la distribución de impulsos y para descomponer un impulso de codificación, con numerosos impulsos, en varios impulsos de codificación con menos impulsos. De este modo, un índice de codificación incluye menos información y por lo tanto, el índice de codificación requiere menos bits, con lo que se simplifica el proceso de codificación, se reduce la redundancia de la codificación y se ahorra el empleo de bits de codificación.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
La Figura 1 es un diagrama de flujo de un método de codificación según una primera forma de realización, que no forma parte de la presente invención;
La Figura 2 ilustra una estructura de un índice de codificación de 5 impulsos según la primera forma de realización, que no forma parte de la presente invención;
La Figura 3 ilustra una estructura de una arborescencia XX(N) en el caso de N = 3 según una segunda forma de realización, que no forma parte de la presente invención;
La Figura 4 es un diagrama de flujo de un método de codificación según una tercera forma de realización de la presente invención;
La Figura 5 ilustra una estructura de un índice de codificación de 6 impulsos según una tercera forma de realización de la presente invención;
La Figura 6 ilustra una estructura de un índice de codificación de 5 impulsos según la tercera forma de realización de la presente invención;
La Figura 7 ilustra una estructura de una arborescencia X(N) en el caso de N = 2 según una cuarta forma de realización de la presente invención;
La Figura 8 ilustra una estructura de una arborescencia X(N) en el caso de N = 3 según la cuarta forma de realización de la presente invención;
La Figura 9 es un diagrama de flujo de un método de codificación según una quinta forma de realización de la presente invención;
La Figura 10 es un diagrama de flujo de un método de decodificación según una séptima forma de realización, que no forma parte de la presente invención;
La Figura 11 es un diagrama de flujo de un método de decodificación según una novena forma de realización, que no forma parte de la presente invención;
La Figura 12 es un diagrama de flujo de un método de decodificación según una undécima forma de realización, que no forma parte de la presente invención;
La Figura 13 ilustra una estructura lógica de un codificador según una decimotercera forma de realización, que no forma parte de la presente invención;
La Figura 14 ilustra una estructura lógica de un codificador según una decimocuarta forma de realización, que no forma parte de la presente invención;
La Figura 15 ilustra una estructura lógica de un codificador según una decimoquinta forma de realización, que no forma parte de la presente invención;
La Figura 16 ilustra una estructura lógica de un decodificador según una decimosexta forma de realización, que no forma parte de la presente invención;
La Figura 17 ilustra una estructura lógica de un decodificador según una decimoséptima forma de realización, que no forma parte de la presente invención; y
La Figura 18 ilustra una estructura lógica de un decodificador según una decimoctava forma de realización, que no forma parte de la presente invención.
DESCRIPCIÓN DETALLADA
A continuación, se detallan ejemplos de formas de realización de métodos y aparatos.
Forma de realización 1 [No forma parte de esta invención]
En la primera forma de realización se da a conocer un método de codificación. Según se ilustra en la Figura 1, el método de codificación incluye las etapas siguientes:
A1: Estadísticas sobre las posiciones de los impulsos a codificar en una pista se recogen para obtener la distribución de posiciones de impulsos en la pista.
La cantidad total de impulsos a codificar en la misma pista, suele depender de la tasa de código. En esta forma de realización, pulse_num representa la cantidad total de impulsos a codificar en la misma pista y se supone que pulse_num = N y un vector de distribución de impulsos Q(N) indica cómo se distribuye la posición del impulso en la pista y Q(N) = {q(0), q(1), ...,q(N-1)}, en donde q(h) es un número serie de la posición para el (h+1)-ésimo impulso en la pista, he[0, N - 1], q(h) e [0, M-1] y M representa la cantidad total de posiciones en la pista, a modo de ejemplo, M = 8, M = 16 y así sucesivamente.
Además, un impulso a codificar puede incluir un signo, esto es, un signo positivo o un signo negativo. En este caso, la información del signo del impulso de cada impulso necesita obtenerse en el momento de la recogida de estadística sobre los impulsos a codificar en la pista. En esta forma de realización, la información del signo del impulso de cada impulso se representa por un vector de signos de impulsos, esto es, SS(N) = {ss(0), ss(1), ..., s s (N -1)}, en donde ss(h) representa el signo del impulso para el (h+1)-ésimo impulso y se conoce como un índice de signo del impulso q(h). El signo del impulso, representado por ss(h) puede ser un valor positivo o un valor negativo. Un modo de codificación simple se suele aplicar en este caso, esto es, ss(h) = 0 representa un impulso positivo y ss(h) = 1 representa un impulso negativo. No obstante, para los impulsos a codificar, los signos de impulsos no son una característica obligatoria. Según se requiera concretamente, un impulso puede tener solamente la característica de la posición y la característica de la cantidad. En este caso, no es necesario recoger datos estadísticos sobre la información de signos de impulsos.
Evidentemente, puede existir una relación de correspondencia ‘uno a uno’ Q(N) y SS(N).
Después de que los parámetros tales como Q(N) y SS(N) de los impulsos a codificar se obtengan por intermedio de estadísticas, los parámetros pueden codificarse en índices y se establece una relación correspondiente entre el parámetro y el índice, de modo que el decodificador pueda recuperar un parámetro en función del índice correspondiente. En la presente invención, una relación de correspondencia se puede expresar en dos modos. Uno es una relación de cálculo indica por un modo algebraico, en donde el codificador realiza el cálculo hacia delante para el parámetro para obtener el índice y el decodificador realiza un cálculo inverso para el índice para obtener el parámetro y la otra es una relación de consulta indicada por un modo de mapeado de correspondencia, en donde una tabla de mapeado de correspondencia que establece la correlación del parámetro con el índice necesita memoriza en el codificador y en el decodificador. Una relación correspondiente puede seleccionarse entre las dos relaciones de correspondencia anteriores en función de las características del parámetro. En general, cuando la cantidad de datos es grande, la relación correspondiente indicada por una relación de cálculo se prefiere debido a que ahorra el espacio de memorización del codificador y del decodificador.
A2: El índice de distribución (también referido como un identificador de distribución) I4 se determina en esta etapa. El índice I4 puede calcularse de esta manera: todas las distribuciones posibles de las posiciones de todos los impulsos en la pista se permutan en un orden establecido, suponiendo que la cantidad actual de impulsos es N y el número de permutación en la permutación sirve como un índice de distribución I4 indicativo de la distribución.
El denominado “orden establecido” puede entenderse como un orden de todos los valores Q(N) posibles determinados por el codificador y el decodificador en conformidad con la misma regla de cálculo de secuenciamiento.
La cantidad total de valores posibles del vector de distribución de impulsos Q(JV) es
Figure imgf000004_0001
= ^ pet ’, en donde PPT = M N - 1, y C se refiere al cálculo de la función de combinación. Cada I4 corresponde a una distribución de impulsos en el vector WQ(N).
En general, WQ(N) es una cantidad de datos grande. Por lo tanto, una relación de cálculo se prefiere como una relación correspondiente con el índice de distribución I4. No obstante, es también factible expresar la relación correspondiente por intermedio de una relación de consulta. Evidentemente, WQ(N) es la cantidad total de todos los valores posibles de I4. Si el valor de I4 se inicia desde 0, I4e [0, WQ(N) -1].
A3: Un índice de codificación, esto es, Índice(N) se genera en este momento. El Índice(N) incluye información sobre el índice de distribución I4.
El índice I4 puede colocarse en el índice de codificación en cualquier modo identificable para el decodificador, a modo de ejemplo, colocando el índice I4 en las posiciones que se inician desde una posición establecida del índice de codificación, que es el modo más simple.
No obstante, en el caso de que el impulso que se está codificando incluya un signo, el Índice(N) necesita también incluir información sobre el signo del índice, esto es, ss(h), de cada impulso. El vector de signos de impulsos SS(N) puede colocarse simplemente con un campo de una longitud de N en una posición fija del índice de codificación, a modo de ejemplo, al final del índice de codificación.
En resumen, un modo de construcción del Índice(N) puede ser:
Índice(N) = I4 x 2N ss(0) x 2N-1 ss(1) x 2N -2 ... ss(N -1).
Es fácilmente entendióle que el modo de construcción de un índice de codificación anteriormente descrito es solamente una forma de realización a modo de ejemplo. En la práctica, es fácil derivar otros modos de construcción de una estructura de índice de codificación a partir de la información básica sobre la estructura del índice de codificación, a modo de ejemplo, efectuando una permutación o recombinación de las posiciones del índice. El modo de construcción de un índice de codificación no constituye ninguna limitación a las formas de realización proporcionadas.
A continuación, se proporcionan, a modo de ejemplo, realizaciones de la invención para poder facilitar todavía más el entendimiento de modo de construcción de un índice de codificación en la primera forma de realización de la presente invención, suponiendo que la cantidad total de posiciones en la pista es M = 16.
Forma de realización ejemplo 1: se codifican N = 5 impulsos con signos. La Figura 2 ilustra la estructura del índice de codificación.
El índice de codificación, esto es, el Índice(5), ocupa 19 bits en total. Es decir, Índice(5) □ [0, 219-1]. La gama de valores de codificación del Índice(5), en la Figura 2, es hexadecimal. En esta forma de realización, el valor precedido por “0x” significa que el valor es hexadecimal. Otros valores son decimales a no ser que se especifique de otro modo. Cinco índices de signo, esto es, ss(0)~ss(4) ocupan cinto bits al final.
En la Figura 2, un espacio de 14 bits está disponible para el índice I4. Por lo tanto, la longitud del espacio de codificación disponible para el índice I4 es 214 = 16384, lo que es suficiente porque WQ(5) = C 156+5-1 = 15504.
Forma de realización ejemplo 2: Se codifican N = 4 impulsos con signos. La estructura del índice de codificación es como sigue:
El índice de codificación, Índice(4), ocupa 16 bits en total. Es decir, Índice(4) □ [0, 216-1].
Cuatro índices de signos, esto es, ss(0)~ss(3) ocupan cuatro bits al final.
Un espacio de 12 bits está disponible para el índice I4. Por lo tanto, la longitud del espacio de codificación disponible p4
para el índice I4 es 212 = 4096, que es suficiente porque WQ(4) = 16+4-1 = 3876.
Forma de realización ejemplo 3: Se codifican N = 3 impulsos con signos. La estructura del índice de codificación es como sigue:
El índice de codificación, Índice(3) ocupa 13 bits en total. Es decir, Índice(3) □ [0, 213-1].
Tres índices de signos, esto es, ss(0)-ss(2) ocupan tres bits al final.
Un espacio de 10 bits está disponible para el índice I4. Por lo tanto, la longitud del espacio de codificación disponible 3para el índice I4 es 210 = 1024, que es suficiente porque WQ(3) = C 16+3-1 = 816.
Forma de realización 2 [No forma parte de esta invención]
Un método de codificación se da a conocer en la segunda forma de realización. Un método para calcular un índice de distribución I4 se da a conocer en esta forma de realización, con lo que se facilita la determinación de la relación correspondiente entre I4 y la distribución de impulsos en la pista por intermedio de un cálculo algebraico, en donde la distribución es Q(N) = {q(0), q(1), ..., q(N-1)}.
La siguiente regla de cálculo de secuenciamiento Q(N) se da a conocer en esta forma de realización.
La regla Q(N) varía con la combinación de valores que incluye. Por lo tanto, los números series de las posiciones incluidas en Q(N) se pueden permutar, suponiendo:
q(0) < q(1) < .< q ( N -1) o q(0) >q(1)> .> q ( N -1),
en donde el signo igual significa que la posición del impulso se puede repetir. Se supone que q(0) < q(1) <.. ,<q(N -1), q(0)e[0,M], q(h)e[q(h - 1), M], M es la cantidad total de posiciones en la pista. Todos los valores posibles de Q(N) se ordenan desde un valor inferior a un valor superior o desde un valor superior a un valor inferior después de que se comparen los valores en cada dimensión del Q(N).
Si se ordenan desde un valor inferior a un valor superior y el Q(N) ordenado se numera, con el número serie de inicio siendo 0, en tal caso:
Figure imgf000006_0001
en donde C se refiere a calcular la función de combinación y X se refiere a una suma.
La fórmula anterior puede interpretarse como sigue:
!ÍV
- PPT - c 3V
PPT-q(O) se ref¡ere a |a cantidad total de Q(JV) cuando el primer impulso está situado antes de q(0);
£jj¡v—i _i
PPT-l-q(O) P P T -l-q (l) se ref¡ere a |a cantidad total de Q(JV) cuando el primer impulso está situado en q(0) y el segundo impulso está situado está situado antes de q(1); y
/~iW — h _5V’ - ll
P P T -h -q (h - l) P P T -h -q (h ) Se interpreta por analogía.
Conviene señalar que la fórmula anterior es solamente una relación de cálculo, a modo de ejemplo, entre el índice I4 y Q(N). Dependiendo de la misma regla de secuenciamiento, la relación de cálculo puede expresarse también en otros modos algebraicos de forma equivalente. Si se aplica una regla de secuenciamiento diferente, se pueden designar también relaciones de cálculo similares. El modo de expresión de la relación de cálculo no constituye ninguna limitación a las formas de realización proporcionadas.
Para hacer más claro el método de cálculo del índice I4 anterior, se supone un vector de posición relativo de impulsos: XX(N) = {xx(1), xx(2), ..., xx(N)}. La siguiente relación de correspondencia ‘uno a uno’ existe entre XX(N) y Q(N):
xx(1) = q(0); y
xx(i) = q(i -1) - q(i-2).
en donde xx(i) representa una relación de posición relativa entre la posición del i-ésimo impulso y la posición del (i1)-ésimo impulso y la expresión ie [1, N]. XX(N) puede construir una arborescencia de Ncapas que incluye todos los valores posibles de Q(N). La profundidad de la arborescencia es N+1 y el subnodo en la i-ésima capa representa el valor de posición relativa xx(i) del i-ésimo impulso. Los valores de xx(i) están dispuestos desde izquierda a derecha y desde un valor inferior a un valor superior. Los nodos extremos se codifican de izquierda a derecha en la parte inferior (esto es, nodos extremos) de la arborescencia. Cada ruta desde un nodo extremo a un nodo raíz corresponde a un valor de XX(N). Por lo tanto, el código de cada nodo extremo es el índice de distribución I4 indicativo del valor de Q(N) correspondiente.
A continuación se describe una forma de realización a modo de ejemplo. Suponiendo M=16 y N =3 (M es la cantidad total de posiciones en la pista), la estructura de arborescencia se ilustra en la Figura 3 y la fórmula para calcular el índice de distribución es:
Figure imgf000006_0002
Si el valor de N es diferente, la estructura de arborescencia correspondiente es similar y la fórmula para calcular el índice I4 puede deducirse y no se repite aquí de nuevo.
Un método para la obtención de un índice de distribución I4 por intermedio de una relación de cálculo se da a conocer en esta forma de realización. Puesto que la cantidad de datos que se ocupa por el índice I4 en el índice de codificación es grande, el método de cálculo, en esta forma de realización, reduce al mínimo la carga de memorización del codificador y del decodificador. El índice I4 se codifica continuamente en una estricta relación ‘uno a uno’ con Q(N), con lo que se obtiene el máximo beneficio de los bits de codificación y se evita un uso innecesario.
Forma de realización 3 [La siguiente parte de la forma de realización 3 no forma parte de esta invención]
Un método de codificación se da a conocer en la tercera forma de realización. La tercera forma de realización difiere de la primera forma de realización en cuanto que: la tercera forma de realización se refiere al proceso de codificación en la primera forma de realización de un primer modo de codificación, se selecciona un modo de codificación entre las opciones del primer modo de codificación en primer lugar y luego, se codifican impulsos en el modo de codificación seleccionado. Según se ilustra en la Figura 4, un proceso de codificación en esta forma de realización incluye las etapas siguientes:
B1: La cantidad total (N) de impulsos a codificar en la misma pista se determina en este momento.
El valor de N suele depender de la tasa de codificación.
B2: Se selecciona un modo de codificación en función del valor de N Los modos de codificación incluyen un primer modo de codificación. Dependiendo del resultado de la selección, el proceso prosigue con la etapa B3 o la etapa B4.
El modo de codificación descrito en la primera forma de realización se denomina un primer modo de codificación en esta forma de realización. Modos de codificación opcionales incluyen no solamente el primer modo de codificación, sino también otros modos de codificación tales como AMR_w B+ en la técnica anterior. Un segundo modo de codificación, que es opcional, se da a conocer en esta forma de realización.
El modo de codificación puede depender del valor Ndeterminado. A modo de ejemplo, para algunos valores de N se aplica el primer modo de codificación y para otros valores de N se aplica el segundo modo de codificación. Las investigaciones revelan que el primer modo de codificación es preferido cuando el valor de N es 3, 4 o 5.
B3: El resultado seleccionar el modo de codificación es objeto de determinación. Si se determina que se selecciona el primer modo de codificación, los impulsos se codifican en dicho primer modo de codificación.
El proceso de codificación específico es similar a la descripción en la primera forma de realización, esto es, las etapas A1, A2 y A3 en la primera forma de realización.
B4. Se determina el resultado de seleccionar el modo de codificación. Si se determina que se selecciona el segundo modo de codificación, los impulsos se codifican en el segundo modo de codificación.
[La siguiente parte de la forma de realización 3 es parte de esta invención]
El segundo modo de codificación puede incluir las etapas siguientes.
B41: Los datos estadísticos sobre las posiciones de los impulsos a codificar en una pista se recogen para obtener la cantidad de posiciones con un impulso, la distribución de las posiciones con impulso en la pista y la cantidad de impulsos en cada posición con un impulso.
De forma similar a la etapa A1 en la primera forma de realización, un vector de posición de impulso, esto es, P(N) = {p(0), p(1), ..., p(N-1)} representa la distribución de las posiciones con un impulso en la pista; un vector de signos de posiciones, esto es, S(N) = {s(0), s(1), ..., s(N-1)} representa la información del signo de impulsos de cada posición que tiene un impulso y se obtiene la cantidad de las posiciones que tienen un impulso. En esta forma de realización, un vector de cantidad de impulsos, esto es, SU(N) = {su(0), su(1), ..., su(N-1)} representa la cantidad de impulsos en cada posición con un impulso, en donde su(n) representa la cantidad de impulsos en la posición p(n). Evidentemente, su(0) su(1) ... su(N-1) = N
Evidentemente, en esta forma de realización, existe una relación de correspondencia ‘uno a uno’ entre P(N), SU(N) y S(N).
Después de que los parámetros tales como N, P(N), SU(N) y S(N) de los impulsos a codificar se obtengan por intermedio de estadísticas, los parámetros necesitan codificarse en índices y se establece una relación correspondiente entre el parámetro y el índice, de modo que el decodificador pueda recuperar un parámetro en conformidad con el índice correspondiente.
B42: EL primer índice I1 se determina en función de la cantidad (esto es, pos_num = N) de posiciones con un impulso. El primer índice I1 corresponde a todas las distribuciones posibles de las posiciones con un impulso en la pista cuando la cantidad indicada por pos_num es la misma.
El valor de pos_num (N) fluctúa sin cambios bruscos. Por lo tanto, la relación correspondiente con el primer índice I1 puede expresarse por una relación de cálculo o una relación de consulta. En el momento de establecer una relación correspondiente entre pos_num y el índice I1, está relación de correspondencia puede suponerse como una relación de correspondencia ‘uno a uno’. No obstante, cuando pos_num tiene otros valores, el índice de otros parámetros requiere menos bits. Dichos valores de pos_num pueden utilizar un solo índice I1 conjuntamente y se distinguen por intermedio de un bit indicador extra.
El valor de pos_num (N) decide la cantidad total de todos los valores de P(N) posibles y la cantidad total es de CN
W(N) = M % en donde C se refiere al cálculo de la función de combinación. Por lo tanto, un solo índice 11 corresponde a un W(N) posible de P(N), en donde W(N) es un número natural.
B43: El segundo índice I2 se determina en conformidad con la distribución de las posiciones con un impulso en la pista, en donde la distribución se expresa por P(N). El segundo índice I2 indica la instancia operativa de distribución correspondiente a la distribución de las posiciones actuales con un impulso entre todas las distribuciones posibles que corresponden al primer índice 11.
C N
La cantidad total de todos los valores de P(N) posibles es W(N) = M ■ El valor de W(N) es una cantidad de datos grande. Por lo tanto, una relación de cálculo se prefiere como una relación de correspondencia con el segundo índice I2. No obstante, es también factible expresar la relación de correspondencia por intermedio de una relación de consulta. Evidentemente, W(N) es la cantidad total de todos los valores posibles del índice I2. Si el valor de I2 se inicia desde 0, I2e [0, W(N) -1].
B44: El tercer índice I3 se determina en función de SU(N) lo que representa la cantidad de impulsos en cada posición que tenga un impulso.
SU(N) es un vector cuya dimensión es la misma que la dimensión de P(N) pero está limitada a su(0) su(1) ... su(N-1) = N en donde el valor de Nsuele variar desde 1 a 6. Por lo tanto, la relación correspondiente con el tercer índice I3 puede expresarse por intermedio de una relación de cálculo o una relación de consulta. Además, en vista de la forma vectorial, la relación de consulta se prefiere en el caso de altas dimensiones y la relación de cálculo se prefiere en el caso de bajas dimensiones porque hace más fácil el diseño. Conviene señalar que, en algunas circunstancias extremas, a modo de ejemplo, si N = 1 o N = N SU(N) sólo tiene un valor posible, que no necesita indicarse por un índice I3 específico y el índice I3 puede considerarse como cualquier valor que no afecta al índice de codificación final. B45: Un índice de codificación, a saber, Índice(N) se genera en extracción etapa. El Índice(N) incluye información sobre el primer índice I1, el segundo índice I2 y el tercer índice I3.
Los índices I1, I2 e I3 pueden colocarse en el índice de codificación en cualquier modo identificable para el decodificador, a modo de ejemplo, colocándoles en un campo fijo por separado, que es el modo más simple. Cuando la cantidad total (pulse_num) de impulsos a codificar en la misma pista es constante, el valor de pos_num (N) indicado por el índice I1 decide la gama de I2 e I3, esto es, decide la cantidad de bits de codificación requeridos por I2 e I3. Por lo tanto, el índice de codificación está construido en el modo siguiente:
(1) El primer índice I1 se utiliza como un valor de inicio y la información sobre otros índices está superpuesta. Un valor de I1 corresponde a un margen de valores independiente del índice de codificación. De este modo, el decodificador puede determinar el valor de pos_num (N) directamente en función del margen de valores del índice de codificación. (2) Además, en el margen de valores del índice I1 (que corresponden en general a una longitud de campo determinada), los índices I2 e I3 pueden colocarse en cualquier modo identificable para el decodificador, a modo de ejemplo, colocándoles por separado, que es el modo más simple. En general, ni I2 ni I3 pueden expresarse como 2n (siendo n un número entero). Por lo tanto, con el fin de ahorrar bits de codificación, los índices I2 e I3 pueden combinarse en la forma siguiente y colocarse en el margen de valores especificados de I1:
C N
123 = 13 x W(N) 12 = 13 x ^ +12.
en donde la codificación de 12 e 13 comienza desde 0, I2e[0. C M N -1] y I3e[0, Clase(N) -1] en donde Clase(N) es la cantidad total de valores posibles de SU(N); evidentemente, dicho modo es equivalente a dividir el margen de valores de I1 en partes de Clase(N), en donde la longitud de cada parte es W(N) y cada parte corresponde a una distribución, esto es, un valor de SU(N).
(3) No obstante, en el caso de que el impulso, que se codifica, incluya un signo, el Índice(N) necesita también incluir información sobre el índice de signo, esto es, s(n), de cada impulso. El vector de signo de posición S(N) puede colocarse simplemente como un campo con una longitud de N en una posición fija del índice de codificación, a modo de ejemplo, al final del índice de codificación.
En resumen, un modo de construcción del Índice(N) puede ser:
Índice(N) = I1 I23 x 2N+ s(0) x 2N-1 s(1) x 2N-2 ... s(N-1).
Es fácilmente entendióle que el modo de construcción de un índice de codificación anteriormente descrito es solamente una realización, a modo de ejemplo, de esta forma de realización. En la práctica, resulta fácil derivar otros modos de construcción de una estructura de índice de codificación a partir de la información básica sobre la estructura del índice de codificación, a modo de ejemplo, permutando o recombinando las posiciones del índice. El modo de construir un índice de codificación no constituye ninguna limitación para las formas de realización de la presente invención. Para cualquier cantidad de impulsos a codificar, la lógica de codificación proporcionada en el segundo modo de codificación puede aplicarse de manera uniforme, con lo que se evita el aumento de la redundancia del índice de codificación del modo recursivo aplicado en AMR_WB+ y garantizando una alta relación de utilización de los bits de codificación. Asimismo, no es necesario codificar múltiples impulsos en la misma posición por separado. En cambio, las posiciones de impulsos son objeto de fusión antes de la codificación, con lo que se ahorran bits de codificación. Con el aumento de los impulsos a codificar en la pista, aumenta también la probabilidad de superposición de posiciones de impulsos y son más evidentes las ventajas de las formas de realización de la presente invención.
A continuación, se proporcionan formas de realización, a modo de ejemplo, con el fin de facilitar todavía más el entendimiento de modo de construcción de un índice de codificación en el segundo modo de codificación. Suponiendo que la cantidad total de posiciones en la pista es M = 16 y la cantidad de posiciones con un impulso es pos_num y el pos_num está en una relación de correspondencia ‘uno a uno’ con el primer índice I1:
Realización ejemplo 1: N=6 impulsos con signos se codifican. La Figura 5 ilustra la estructura del índice de codificación.
El índice de codificación, esto es, el Índice(6) ocupa 21 bits en total. Es decir, Índice(6)e [0, 221-1]. La Figura 5 ilustra la cantidad de bits ocupados por diferentes partes de Índice(6) cuando varía el valor de pos_num. Para mayor claridad, se utilizan I1(N), I2(N), I3(N) e I23(N) para representar el índice anterior cuando N es un valor específico. El índice 11 (N) se determina en un modo de mapeado de correspondencia:
I1(1) = 0x1 F0000, I1 (2) = 0x1 E0000, I1 (3) = 0x1D0000,
11 (4) = 0x180000, I1 (5) = 0x000000, I1 (6) = 0x100000.
La Figura 5 se describe a continuación.
(1) Cuando seis impulsos están en una sola posición, N = 1, W(1) = 16, I2(1)e [0,15], SU(1) = {6}, Clase(1) = 1 y I3 (1) = 0,
y por lo tanto, I23(1) = I2 (1)e [0, 15];
un índice de signo, esto es, s(0), ocupa un solo bits al final; y
la longitud del espacio de codificación proporcionado por I1(1) para I23(1) es [221 - I1(1)]/21 = 32768, lo que es evidentemente suficiente.
(2) Cuando seis impulsos están en dos posiciones, N = 2, W(2) = 120, I2(2)e [0, 119], SU(2) = {5, 1}, {4, 2}, {3, 3}, {2, 4}, {1,5}; Clase(2) = 5 y I3(2)e [0, 4],
y por lo tanto, I23(2) = I3(2) x 120 I2(2)e [0, 599];
dos índices de signo, esto es, s(0) y s(1) ocupan 2 bits al final; y
la longitud de espacio de codificación proporcionada por I2(2) para I23(2) es [I1(1) - 11 (2)]/22 = 16384, lo que es evidentemente suficiente.
(3) Cuando seis impulsos están en tres posiciones, N = 3, W(3) = 560, I2(3)e [0, 559], SU(3) = {4, 1, 1}, {1,4, 1}, {1, 1, 4}, {3, 2, 1}, {3, 1,2}, {2, 3, 1}, {2, 1,3}, {1,3, 2}. {1,2, 3}, {2, 2, 2}, Clase(3) = 10 y I3(3)e [0, 9].
y por lo tanto, I23(3) = I3(3) x 560 I2(3)e [0, 5599];
tres índices de signo, esto es, s(0)-s(2) ocupan tres bits al final; y
la longitud de espacio de codificación proporcionada por I2(3) para I23(3) es [11 (2) - I1(3)]/23 = 8192, lo que es
evidentemente suficiente.
(4) Cuando seis impulsos están en cuatro posiciones, N = 4, W(4) = 1820, I2(4)e[0, 1819], SU(4) = {3, 1, 1, 1}, { 1, 1}, {1, 1, 3, 1}, {1, 1,1, 3}, {2, 2, 1, 1}, {2, 1, 2, 1}, {2, 1, 1, 2}, {1, 2, 2, 1}. {1, 2, 1, 2}, {1, 1, 2, 2}, Clase(4) = 10 y
I3(4)e[0, 9].
y por lo tanto, I23(4) = I3(4) x 1820 I2(4)e [0, 18199];
cuatro índices de signo, esto es, s(0)-s(3), ocupan cuatro bits al final; y
la longitud de espacio de codificación proporcionada por I2(4) para I23(4) es [11 (3) - I1(4)]/24 = 20480, lo que es
evidentemente suficiente.
(5) Cuando seis impulsos están en cinco posiciones, N = 5, W(5) = 4368, I2(5)e[0, 4367], SU(5) = {2, 1, 1, 1, 1}, { 1, 1, 1}, {1, 1,2, 1, 1}, {1, 1,1,2, 1}, {1, 1, 1, 1,2}, Clase(5) = 5 y I3(5)e[0, 4],
y por lo tanto, I23(5) =I3(5) x 4368 I2(5)e [0, 21839];
cinco índices de signo, esto es, s(0)-s(4), ocupan cinco bits al final; y
la longitud de espacio de codificación proporcionada por I2(5) para I23(5) es [I1 (6) - 11 (5)]/25 = 32768, lo que es
evidentemente suficiente.
(6) Cuando seis impulsos están en seis posiciones, N = 6, W(6) = 8008, I2(6)e[0, 8007], SU(6) = {1, 1, 1, 1, 1, 1},
Clase(6) = 1 y I3(6) =0,
y por lo tanto, I23(6) = I2(6)e[0, 8007];
seis índices de signos, esto es, s(0)-s(5), ocupan seis bits al final; y
la longitud del espacio de codificación proporcionada por I2(6) para I23(6) es [11 (4) - I1(6)]/26 = 8192, lo que es
evidentemente suficiente.
Realización ejemplo 2: N=5 impulsos con signos se codifican en esta etapa. La Figura 6 ilustra la estructura del
índice de codificación.
El índice de codificación, Índice(5) ocupa 19 bits en total. Es decir, Índice(5)e[0, 219 -1]. La Figura 6 ilustra la cantidad
de bits ocupados por diferentes partes de Índice(5) cuando varía el valor de pos_num. El índice I1 (N) se determina en
un modo de mapeado de correspondencia:
I1(1) = 0x78000, 11 (2) = 0x70000, I1 (3) = 0x60000,
11 (4) = 0x40000, 11 (5) = 0x00000.
El análisis detallado en la Figura 6 es similar al análisis de la Figura 5 y no se repite aquí de nuevo.
Realización ejemplo 3: N=4 pulsos con signos se codifican en esta etapa.
El índice de codificación, Índice(4), ocupa 16 bits en total. Es decir, Índice(4)e[0, 216 - 1]. La Figura ilustra la cantidad
de bits ocupados por diferentes partes de Índice(4) cuando varía el valor de pos_num. El I1(N) se determina en un
modo de mapeado de correspondencia:
I1(1) = 0xE000, 11 (2) = 0xC000, I1 (3) = 0x8000, I1 (4) = 0x0000.
Realización ejemplo 4: N=3 impulsos con signos se codifican en esta etapa.
El índice de codificación, Índice(3) ocupa 13 bits en total. Es decir, Índice(3)e[0, 213 -1]. La Figura ilustra la cantidad
de bits ocupados por diferentes partes de Índice(3) cuando varía el valor de pos_num. El índice 11 (N) se determina en
un modo de mapeado de correspondencia:
I1(1) = 0x1 C00, I1 (2) = 0x1800, 11 (3) = 0x0000.
Realización ejemplo 5: Se codifican N=2 impulsos con signos.
El índice de codificación, Índice(2) ocupa 9 bits en total. Es decir, Índice(2)e [0, 29 -1]. La Figura ilustra la cantidad de bits ocupados por diferentes partes de Índice(2) cuando varía el valor de pos_num. El índice I1 (N) se determina en un modo de mapeado de correspondencia:
I1(1) = 0x1 E0, 11 (2) = 0x000.
Realización ejemplo 6: Se codifica N=1 impulsos con un signo.
El índice de codificación, Índice(1) ocupa 5 bits en total. Es decir, Índice(1)e (0, 25 - 1]. Considerando N° 1, el Índice(1) incluye solamente el índice I23(1) = I2(1) y s(0) que es un índice de signo de p(0).
Forma de realización 4 [Esta forma de realización es parte de esta invención]
Un método de codificación se da a conocer en la cuarta forma de realización. Más concretamente, un método para calcular el segundo índice I2 en el segundo modo de codificación se da a conocer en esta forma de realización, con lo que resulta más fácil determinar la relación de correspondencia entre I2 y la distribución de las posiciones con un impulso en una pista por intermedio de un cálculo algebraico, en donde la distribución es P(N) = {p(0), p(1), ..., p(N-1)}.
En esta forma de realización, el método de cálculo de I2 es: Todos los posibles valores de P(N) se permutan en un orden establecido, en donde N es la cantidad de las posiciones con un impulso correspondiente al primer índice I1; el número de permutas en la permutación sirve como un segundo índice I2 indicativo de la distribución.
El término “orden establecido” puede entenderse como un orden de todos los valores de P(N) posibles determinados por el codificador y el decodificador en conformidad con la misma regla de cálculo de secuenciamiento. La siguiente regla de cálculo de secuenciamiento se da a conocer en esta forma de realización:
P(N) varía con la combinación de valores que se incluye. Por lo tanto, los números series de las posiciones incluidas en P(N) pueden permutarse, en el supuesto de:
p(0) < p(1) < ... <p(N-1) o p(0) > p(1) > ...> p(N-1).
Suponiendo p(0) < p(1) < ... <p(N-1), p(0)e [0, M - N], p(n)e [p(n-1) 1, M - N n], en donde M es la cantidad total de posiciones en la pista. Todos los valores posibles de P(N) están ordenados desde un valor inferior a un valor superior o desde un valor superior a un valor inferior después de que se comparen los valores en cada una de las dimensiones de P(N).
Si están ordenados desde un valor inferior a un valor superior y se numeran los valores de P(N) ordenados, con el número serie de inicio siendo 0, entonces:
Figure imgf000011_0001
en donde C se refiere al cálculo de la función de combinación y X se refiere a la suma.
La fórmula anterior puede interpretarse como sigue:
Figure imgf000011_0002
ref¡ere a |a cantidad total de P(N) cuando el primer impulso está situado antes de p(0);
p N -t _ p.N-1
M-p(0)-i M-p(i) se refiere a la cantidad total de P(N) cuando el primer impulso está situado en p(0) y el segundo está situado antes de p(1); y
f'iN -n _y'-v
^ M - p (n - l) - l M p(n) se ¡nterpreta por analogía.
Conviene señalar que la fórmula anterior es solamente un cálculo, a modo de ejemplo, en relación con el índice I2 para Q(N). Dependiendo de la misma regla de secuenciamiento, la relación de cálculo puede expresarse también en otros modos algebraicos de forma equivalente. Si se aplica una regla de secuenciamiento diferente, se pueden designar también relaciones de cálculo similares. El modo de expresión de la relación de cálculo no constituye ninguna limitación para las formas de realización de la presente invención.
Para hacer más claro el método de cálculo de I2 anterior, se supone un vector de posición relativa de impulsos: X(N) = {x(1), x(2), x(N)}. La siguiente relación de correspondencia de tipo ‘uno a uno’, existe entre X(N) y P(N):
x(1) = p(0); y
x(i) = p(i - 1) - p(i - 2).
en donde x(i) representa una relación de posición relativa entre la i-ésima posición con un impulso y la (i-1)-ésima posición con un impulso, i e[1, N]. X(N) puede construir una arborescencia de N capas que incluye todos los valores posibles de P(N). La profundidad de la arborescencia es N+1 y el subnodo en la i-ésima capa representa el valor de posición relativa x(i) de la i-ésima posición con impulso. Los valores de x(i) están dispuestos de izquierda a derecha y desde un valor inferior a un valor superior. Los nodos extremos están codificados de izquierda a derecha en la parte inferior (esto es, nodos extremos) de la arborescencia. Cada ruta desde un nodo extremo a un nodo raíz corresponde a un valor de X(N). Por lo tanto, el código de cada nodo extremo es el segundo índice I2 indicativo del valor de P(N) correspondiente.
En las realizaciones, a modo de ejemplo, dadas a continuación, se supone que la cantidad total de posiciones en la pista es M = 16.
Realización ejemplo 1: La cantidad de las posiciones con un impulso, esto es, pos_num, es N = 2 y la Figura 7 ilustra la estructura de la arborescencia.
Figure imgf000012_0001
Realización ejemplo 2: La cantidad de las posiciones con un impulso, esto es, pos_num, es N=3 y la Figura 8 ilustra la estructura de la arborescencia.
Figure imgf000012_0002
Cuando el valor de N es 4, 5 o 6, la estructura de arborescencia correspondiente es similar y la fórmula para calcular el índice I2 puede deducirse y por ello, no se repite aquí de nuevo.
Un método para la obtención de un segundo índice I2, por intermedio de una relación de cálculo, se da a conocer en esta forma de realización. Puesto que la cantidad de datos ocupada por el índice I2 en el índice de codificación es grande, el método de cálculo, en esta forma de realización, reduce al mínimo la carga de almacenamiento del codificador y del decodificador. El índice I2 se codifica continuamente en una estricta relación ‘uno a uno’ con P(N), con lo que se obtiene la ventaja de utilización óptima de los bits de codificación y se evita un uso innecesario.
Las ventajas de modo de construcción del índice de codificación, en el primer modo de codificación y en el segundo modo de codificación, se indican a continuación. En teoría, sobre la base de la condición previa de que la cantidad total (pulse_num) a codificar en la misma pista sea constante, la cantidad de todas las permutaciones posibles de todos los impulsos en la pista es el margen de valores mínimo del índice de codificación y la cantidad correspondiente de bits de codificación es un límite inferior teórico. Cuando la cantidad de permutaciones es 2n (siendo n un número entero), el límite inferior teórico de la cantidad de bits de codificación es un número entero; cuando la cantidad de permutaciones no es 2n (siendo n un número entero), el límite inferior teórico de la cantidad de bits de codificación es una fracción decimal. En este caso, existe alguna redundancia de codificación. Cuando la cantidad total de posiciones en la pista es M=16, con diferentes valores de pulse_num se realiza una comparación entre el límite inferior teórico de la cantidad de bits de codificación y la cantidad de bits de codificación requeridos en el modo de codificación AMR_WB+, y la cantidad de bits requeridos por el modo de construcción del índice de codificación en el primer modo de codificación y en el segundo modo de codificación, es según se ilustra en la tabla 1:
Tabla 1
Figure imgf000013_0002
La tabla 1 indica que: el modo de construcción del índice de codificación del segundo modo de codificación alcanza el límite inferior teórico cuando el límite inferior teórico es un número entero y alcanza el valor de 1 más la parte entera del límite inferior teórico cuando el límite inferior teórico es una fracción decimal. Cuando N es 3, 4 o 5, el primer modo de codificación tiene una longitud de bits de codificación igual a la del segundo modo de codificación. En el caso de tasas de códigos altas, ambos dichos modos de codificación proporcionan una eficiencia de codificación más alta que la de AMR_WB+, esto es, pueden ahorrarse más bits.
Con respecto a la complejidad del cálculo, utilizando todos los órdenes de prueba en los códigos de referencia del estándar de audio móvil de AVS-M como objeto de prueba, se realiza una comparación del tiempo operativo entre AMR_WB+, el primer modo de codificación y el segundo modo de codificación (todos los espacios de muestra están atravesados, incluyendo el proceso de codificación y el proceso de decodificación, siendo el primer modo de codificación el modo de cálculo dado a conocer en la segunda forma de realización, mientras que el segundo modo de codificación es el modo de cálculo dado a conocer en la cuarta forma de realización y el modo de decodificación es el modo correspondiente dado a conocer en las formas de realización posteriores) según se ilustra en la tabla 2:
Tabla 2
Figure imgf000013_0001
La tabla 2 indica que: El primer modo de codificación implica una más baja complejidad operativa en la mayoría de las circunstancias y la complejidad operativa del segundo modo de codificación es equivalente a la de AMR_WB+. La tabla 1 y la tabla 2 dan a conocer que: Utilizando el primer modo de codificación y el segundo modo de codificación, se ejerce la baja complejidad de cálculo del primer modo de codificación cuando N es 3, 4 o 5 y la longitud de bits de codificación baja del segundo modo de codificación se realiza cuando N es otro valor.
Forma de realización 5 [Esta forma de realización es parte de esta invención]
Un método de codificación se da a conocer en la quinta forma de realización de la presente invención. Según se ilustra en la Figura 9, el método de codificación incluye las etapas siguientes:
C1: Los datos estadísticos sobre los impulsos a codificar en una pista se recogen en función de las posiciones, para obtener la cantidad de posiciones con un impulso, la distribución de impulsos de las posiciones con un impulso se distribuye en la pista y la cantidad de impulsos en cada posición con un impulso.
La descripción sobre la etapa C1 es similar a la descripción sobre la etapa B41 en la tercera forma de realización y por ello, no se repite aquí de nuevo.
C2: El primer índice I1 se determina en función de la cantidad (esto es, pos_num = N) de las posiciones que tienen un impulso. El primer índice I1 corresponde a todas las distribuciones posibles de las posiciones con un impulso en la pista cuando el valor de pos_num es el mismo.
La descripción sobre la etapa C2 es similar a la descripción sobre la etapa B42 en la tercera forma de realización y por ello, no se repite aquí de nuevo.
C3: El segundo índice I2 se determina en función de la distribución de las posiciones de impulsos en la pista, en donde la distribución se expresa por P(N). El segundo índice I2 indica la instancia operativa de distribución correspondiente a la distribución de la posición actual con un impulso entre todas las distribuciones posibles correspondientes al primer índice I1.
La descripción sobre la etapa C3 es similar a la descripción sobre la etapa B43 en la tercera forma de realización y por ello, no se repite aquí de nuevo.
C4: El tercer índice I3 se determina en función de SU(N) que representa la cantidad de impulsos en cada posición con un impulso.
La descripción sobre la etapa C4 es similar a la descripción sobre la etapa B44 en la tercera forma de realización y por ello no se repite aquí de nuevo.
C5: Un índice de codificación, esto es, Índice(N se genera en esta etapa. El Índice(N incluye información sobre el primer índice I1, el segundo índice I2 y el tercer índice I3.
La descripción sobre la etapa C5 es similar a la descripción sobre la etapa B45 en la tercera forma de realización y por ello no se repite aquí de nuevo.
La descripción pertinente sobre la quinta forma de realización es similar a la descripción de la tercera forma de realización (incluyendo las realizaciones a modo de ejemplo) y por ello no se repite aquí de nuevo.
Forma de realización 6 [No forma parte de esta invención]
Un método de codificación se da a conocer en la sexta forma de realización. En esta forma de realización, se aplican las lógicas de codificación idénticas a las de la quinta forma de realización. Más concretamente, un método para el cálculo del segundo índice I2 se da a conocer en esta forma de realización, con lo que se hace más fácil determinar la relación correspondiente entre el índice I2 y la distribución de las posiciones con un impulso en una pista por intermedio de un cálculo algebraico, en donde la distribución es P(N) = {p(0), p(1), ..., p(N-1)}. La descripción detallada es similar a la descripción de la cuarta forma de realización y por ello no se repite aquí de nuevo.
El método de decodificación aquí dado a conocer se detalla a continuación.
Forma de realización 7 [No forma parte de esta invención]
Un método de decodificación se da a conocer en la séptima forma de realización. El método de decodificación, dado a conocer en esta forma de realización, decodifica el índice de codificación obtenido en conformidad con el método de codificación en la primera forma de realización. El proceso de decodificación es el inverso del proceso de codificación. Según se ilustra en la Figura 10, el proceso de decodificación incluye las etapas siguientes:
D1: Se recibe un índice de codificación, Índice(N).
D2: El índice de distribución I4 se extrae desde el Índice(N.
El proceso de extracción del índice de distribución I4 desde el Índice(N puede ser el inverso del proceso de colocación de I4 en el Índice(N en el momento de la codificación. A modo de ejemplo, si el índice I4 se coloca en un campo fijo, el índice I4 puede extraerse desde el campo directamente.
Si el impulso codificado es un impulso con un signo, el índice de signo ss(h), correspondiente a cada impulso, necesita extraerse desde el Índice(N). La cantidad total de bits varía con la tasa de códigos. Por lo tanto, el decodificador puede determinar la cantidad total de impulsos codificados en la misma pista, esto es, pulse_num = N directamente en función de la longitud (cantidad de bits) del índice de codificación y luego, se extrae la cantidad correspondiente de índice de signo ss(h) desde el indicen(N) en función de N En conformidad con la estructura del Índice(N) dada a conocer en la primera forma de realización, los Níndices de signo están situados en el extremo del Índice(N) y por lo tanto, cada ss(h) puede extraerse directamente desde el Índice(N).
D3: La distribución de cada posición de los impulsos en la pista, que se expresa como Q(N) se determina en función del índice de distribución I4.
La decodificación del índice I4 es la inversa de la codificación del índice I4. Si el índice I4 se obtiene por intermedio de una relación de cálculo en el proceso de codificación, la misma relación de cálculo puede aplicarse en el proceso de decodificación para realizar una operación inversa; si el índice I4 se obtiene por intermedio de una relación de consulta en el proceso de codificación, la misma relación de correspondencia puede consultarse en el proceso de decodificación.
D4: El orden de impulsos en la pista se reconstruye en función de Q(N), que representa la distribución de cada posición de los impulsos en la pista.
Si el impulso incluye un signo, en el momento de la reconstrucción del orden de impulsos en la pista, la característica positiva o negativa del signo del impulso de cada impulso necesita recuperarse en función de la información del signo de impulso incluida en cada índice de signo ss(h).
Forma de realización 8 [No forma parte de esta invención]
Un método de decodificación se da a conocer en la octava forma de realización. Las lógicas de decodificación aplicadas en esta forma de realización, son las mismas que las aplicadas en la séptima forma de realización. La octava forma de realización da a conocer un método de cálculo para decodificar el índice de distribución I4 obtenido por intermedio del método de codificación en la segunda forma de realización. Este método de cálculo en el decodificador es el inverso del método para calcular el índice I4 en la segunda forma de realización.
Si el índice 14 se obtiene por intermedio de 14 =
2V-1 , ,
_ r ,w , v r r ^ -11 _ -i
'-P P T ^ p p T - q ( O ) ^ 2 -¡ l '- 'P P T —h —q ( h - l ) '~ P P T - h - q ( h ) J
h = l en el proceso de codificación, el siguiente proceso de cálculo se aplica en el decodificador:
T[q(0)] = 14 - (C í¥
(1) ' rPP r T i '-P rP nT -- q ( 0 ) ' se calcula desde un valor inferior q(0) a un valor superior q(0), en donde q(0)e[0, M], siendo M la cantidad total de posiciones en la pista, N es la cantidad total de impulsos codificados en la misma pista, PPT = M N -1 y C se refiere al cálculo de la función de combinación. El último valor de q(0) que permite que T[q(0)] sea mayor que cero se registra en la posición v0 del primer impulso en la pista.
(2) Si se ca|cu|aí además, desde un valor inferior q(1) a un valor superior q(1), en donde q(1)e [v0, M] y el último valor de q(1) que permite que T1[q(1)] sea mayor que cero se registra en la posición v1 del segundo impulso en la pista.
í^ iW -h h
C '-'PPT-h—v (h - l) '■^PPT-h-q(h) \
(3) Por analogía, Th[q(h)] = T(h - 1)[q(h - 1)] - ' ' se calcula desde un valor inferior de q(h) a un valor superior de q(h), en donde q(h)e[v(h-1), M] y he [2, N-1]; y el último valor de q(h) que permite que Th[q(h)] sea mayor que cero se registra como la posición vh para el (h+1 )-ésimo impulso (siendo h+1 un número ordinal) en la pista.
(4) La decodificación del índice I4 está concluida y se obtiene Q(N) = {q(0), q(1), ..., q (N - 1)}.
Forma de realización 9 [No forma parte de esta invención]
Un método de decodificación se da a conocer en la novena forma de realización. El método de decodificación, dado a conocer en esta forma de realización, decodifica el índice de codificación obtenido en conformidad con el método de codificación en la tercera forma de realización. El proceso de decodificación es el inverso del proceso de codificación. Según se ilustra en la Figura 11, el proceso de decodificación incluye las etapas siguientes:
E1: La cantidad total (N) de impulsos codificados en la misma pista por el índice de codificación recibido Índice(N) se determina en esta etapa.
El decodificador puede determinar la cantidad total de impulsos codificados en la misma pista, esto es, pulse_num = N , directamente en función de la longitud (cantidad de bits) del índice de codificación. No obstante, el decodificador puede obtener también el valor de N correspondiente al índice de codificación en un modo operativamente acordado con el codificador (a modo de ejemplo, intercambiando información mutuamente antes de recibir el índice de codificación). Esta forma de realización no especifica el modo de obtención del valor de N
E2: Un modo de decodificación se selecciona en función del valor de N Los modos de decodificación incluyen un primer modo incluyen un primer modo de decodificación. Dependiendo del resultado de la selección, el proceso prosigue con la etapa E3 o la etapa E4.
El modo de decodificación descrito en la séptima forma de realización se denomina un primer modo de decodificación en esta forma de realización. Los modos de decodificación opcionales incluyen no solamente el primer modo de decodificación, sino también otros modos de decodificación. Cada modo de decodificación opcional necesita estar en correspondencia con el modo de codificación dado a conocer en el codificador. Esta forma de realización da a conocer un segundo modo de decodificación correspondiente al segundo modo de codificación descrito con anterioridad.
Con el fin de garantizar la compatibilidad entre el modo de codificación y el modo de decodificación, el decodificador necesita seleccionar un modo de decodificación utilizando la regla de correspondencia aplicada en el codificador.
E3: El resultado de la selección del modo de decodificación es objeto de análisis. Si se determina que se selecciona el primer modo de decodificación, los impulsos se decodifican en el primer modo de codificación. La etapa de extracción del índice de distribución desde el índice de codificación se realiza en este momento operativo.
Para el proceso de decodificación específico, la descripción en la séptima forma de realización sirve como una referencia.
E4: El resultado de seleccionar el modo de decodificación es objeto de análisis. Si se determina que el segundo modo de decodificación está seleccionado, los impulsos se decodifican en el segundo modo de decodificación. El segundo modo de decodificación puede incluir las etapas siguientes:
E41: El primer índice I1 se extrae a partir del Índice(N). La cantidad de posiciones de impulsos, esto es, pos_num, se determina en función del índice I1.
La cantidad total de bits varía con la tasa de códigos. Por lo tanto, el decodificador puede determinar la cantidad total de impulsos codificados en la misma pista, esto es, pulse_num = N, directamente en función de la longitud (cantidad de bits) del índice de codificación.
El proceso de extracción de la información sobre cada índice a partir del Índice(N) puede ser el inverso del proceso de combinación de los índices en un Índice(N) en el codificador. A modo de ejemplo, si cada índice se coloca en un campo fijo por separado, el índice puede extraerse directamente desde el campo.
Si el Índice(N) es una estructura que utiliza el índice I1 como un valor de inicio y superpone a otros índices según se describe en la tercera forma de realización, es adecuado extraer primero el índice I1 y luego, determinar las posiciones de otros índices en el Índice(N) en función del valor de pos_num (N) correspondiente al índice I1. En este caso, considerando que un índice I1 corresponde a un margen de valores independiente del Índice(N), el decodificador puede determinar el margen de valores del Índice(N) entre varios márgenes de valores independientes establecidos y determinar el primer índice I1 en función del valor de inicio de dicho margen de valores.
E42: El segundo índice I2 y el tercer índice I3 se extraen a partir del Índice(N).
Análogamente, los índices I1, I2 e I3 se extraen también en un proceso contrario al proceso de la combinación de los índices I2 e I3 en el Índice(N) y pueden extraerse directamente si se colocan con independencia en el codificador. Si los índices I2 e I3 se combinan y superponen en el proceso de codificación según se describe en la tercera forma de realización pueden separarse en las etapas siguientes:
(1) El valor de combinación de los índices I2 e I3, esto es, I23, se extrae a partir del Índice(N).
La posición de I23 en el Índice(N) puede indicarse por el valor de N determinado por el índice I1.
(2) Los índices 12 e 13 se separan de esta forma: 12 = 123 % W(N) y 13 = Int[l23/W(N)].
W(N) es la cantidad total de todos los valores de P(N) posibles en el caso de pos_num = N, y W(N) = M * en donde M es la cantidad total de posiciones en la pista, % se refiere a considerar el resto e Int se refiere a tomar el número entero correspondiente.
E43: Si el impulso codificado es un impulso con un signo, el índice de signo s(n) correspondiente a cada posición con un impulso necesita extraerse a partir del Índice(^).
En conformidad con la estructura del Índice(^) dado a conocer en la tercera forma de realización, los N índices de signo están situados en el extremo del Índice(^). Por lo tanto, cada s(n) puede separarse del Índice(^) directamente después de que se obtenga el valor de N indicado por el índice I1.
E44: La distribución de cada posición con un impulso en la pista, en el caso de pos_num = N, se determina en función del segundo índice I2, en donde la distribución se expresa como P(N).
La decodificación del índice I2 es la inversa de la codificación del índice I2. Si el índice I2 se obtiene por intermedio de una relación de cálculo en el proceso de codificación, la misma relación de cálculo puede aplicarse en el proceso de decodificación para realizar una operación inversa. Si el índice I2 se obtiene por intermedio de una relación de consulta en el proceso de codificación, la misma relación de correspondencia puede consultarse operativamente en el proceso de decodificación.
E45: El valor SU(N), que representa la cantidad de impulsos en cada posición que tenga un impulso, se determina en función del tercer índice I3. La regla de decodificación del índice I3 es similar a la regla de decodificación del índice I2.
E46: El orden de impulsos en la pista se reconstruye en función de P(N) y de SU(N), en donde: P(N) representa la distribución de las posiciones con un impulso en la pista y SU(N) representa la cantidad de impulsos en cada posición con un impulso.
Si el impulso incluye un signo, en el momento de la reconstrucción del orden de impulsos en la pista, la característica positiva o negativa del signo del impulso de cada posición con un impulso necesita recuperarse en función de la información del signo del impulso incluida en cada índice de signo s(n).
Forma de realización 10 [No forma parte de esta invención]
Un método de decodificación se da a conocer en la décima forma de realización. Las lógicas de decodificación aplicadas en esta forma de realización son las mismas que las aplicadas en la novena forma de realización. La décima forma de realización da a conocer un método de cálculo en el segundo modo de decodificación para decodificar el segundo índice I2 obtenido por intermedio del método de codificación en la cuarta forma de realización. Este método de cálculo, en el decodificador, es el inverso del método para calcular el índice 12 en la cuarta forma de realización.
Figure imgf000017_0001
Si el índice 12 se obtiene por intermedio de 12 = n = l
en el proceso de codificación, se aplica el siguiente proceso de cálculo en el decodificador:
Figure imgf000017_0002
sust raen de 12 uno a uno.
R (y0) = i 2 - C & J C j £ 0.
hasta que el I2 restante R(y0) cambie desde un número positivo a un número negativo, en donde M es la cantidad total de posiciones en la pista, N es la cantidad de posiciones con un impulso y0e [1, M - N 1] y C se refiere al cálculo de la función de combinación. Se registra el valor de p(0), esto es, el número serie de la primera posición con un impulso en la pista, en donde p(0) = y0-1.
r * N - 2 f i N - 2
M -p(0)-l M— nl'O't— vi(2) Si N > 1, > y 11 v 1 se sustraen, además, de R[p(0)] uno a uno hasta que el R[p(0)] restante R1(x1) cambie desde un número positivo a un número negativo. Se registra el valor de p(1), esto es, el número serie de la segunda posición con un impulso en la pista, en donde p(1) = y1 -1.
p N - n - 2 iN -n-2
(3) Por analogía, V^ M 1V1— -PpW (0,* )-- ■ ..*.“- Pp^ (un — -L lJ)~- 1 l y M —p (0 )—. p (n —1)—yn se sustraen, además, desde R(n -1) [p(n - 1)] uno por uno, hasta que el R(n - 1) [p(n - 1)] restante Rn(yn) cambie desde un número positivo a un número negativo, en donde n < N - 1. Se registra el valor de p(n), esto es, el número serie de la n+1 posición de impulso en la pista, en donde p(n) = yn-1.
(4) La decodificación del índice I2 está concluida y se obtiene P(N) = {p(0), p(1), p(N-1)}.
Forma de realización 11 [No forma parte de esta invención]
Un método de decodificación se da a conocer en la undécima forma de realización. El método de decodificación, dado a conocer en esta forma de realización, decodifica el índice de codificación obtenido en conformidad con el método de codificación en la quinta forma de realización. El proceso de decodificación es el inverso del proceso de codificación. Según se ilustra en la Figura 12, el proceso de decodificación incluye las etapas siguientes:
F1: Se recibe el índice de codificación Índice(^) y el primer índice I1 se extrae desde el Índice(^). La cantidad de posiciones con un impulso, esto es, pos_num, se determina en función del índice I1.
La descripción relativa a la etapa F1 es similar a la relativa a la etapa E41 en la novena forma de realización.
F2: El segundo índice I2 y el tercer índice I3 se extraen a partir del Índice(^).
La descripción relativa a la etapa F2 es similar a la relativa a la etapa E42 en la novena forma de realización.
F3: SI el impulso codificado es un impulso con un signo, el índice de signo s(n) correspondiente a cada posición con un impulso necesita extraerse a partir del Índice(^).
La descripción relativa a la etapa F3 es similar a la relativa a la etapa E43 en la novena forma de realización.
F4: La distribución de cada posición con un impulso en la pista, en el caso de pos_num = N, se determina en función del segundo índice I2, en donde la distribución se expresa como P(N).
La descripción relativa a la etapa F4 es similar a la relativa a la etapa E44 en la novena forma de realización.
F5: El valor de SU(N) que representa la cantidad de impulsos en cada posición con un impulso, se determina en función del tercer índice I3. La regla de decodificación del índice I3 es similar a la regla de decodificación del índice I2. La descripción sobre la etapa F5 es similar a la de la etapa E45 en la novena forma de realización.
F6: El orden de impulsos en la pista se reconstruye en función de los valores de P(N) y de SU(N), en donde P(N) representa la distribución de cada posición con un impulso en la pista y SU(N) representa la cantidad de impulsos en cada posición que tiene un impulso.
La descripción relativa a la etapa F6 es similar a la relativa a la etapa E46 en la novena forma de realización.
Forma de realización 12 [No forma parte de esta invención]
Un método de decodificación se da a conocer en la duodécima forma de realización. Las lógicas de decodificación aplicadas, en esta forma de realización, son las mismas que las aplicadas en la undécima forma de realización. La octava forma de realización da a conocer un método de cálculo para decodificar el segundo índice I2 obtenido por intermedio del método de codificación en la sexta forma de realización. Este método de cálculo, en el decodificador, es el inverso del método de cálculo para calcular el índice I2 en la sexta forma de realización. La descripción detallada es similar a la que se proporciona en la cuarta forma de realización y por ello no se repite aquí de nuevo.
Es entendible para los expertos en esta técnica que la totalidad o parte de las etapas de las formas de realización anteriores pueden ponerse en práctica por intermedio de software, hardware o ambas a la vez.
Las formas de realización descritas con anterioridad, que no forman parte de esta invención pueden incluir, además, un soporte de memorización legible por ordenador para soportar o memorizar instrucciones legibles o ejecutables por un ordenador o para memorizar instrucciones de datos. El programa puede memorizarse en un soporte de memorización legible por ordenador tal como memoria ROM/RAM, disco magnético y disco compacto. Cuando se ejecuta, el programa generado a partir de las instrucciones memorizadas en el soporte de memorización puede cubrir parte o la totalidad de las etapas en cualquiera de las formas de realización mencionadas con anterioridad.
A continuación, se detallan formas de realización, a modo de ejemplo, de un codificador y de un decodificador (que no forman parte de esta invención).
El codificador puede incluir:
una unidad de obtención de distribución de impulsos, adaptada para obtener la distribución de impulsos, en una pista, de todos los impulsos a codificar en la pista;
una unidad de determinación del identificador de distribución, adaptada para determinar un identificador de distribución para identificar la distribución de impulsos, en función de la distribución de impulsos obtenida por la unidad de obtención de distribución de impulsos; y
una unidad de generación de índices de codificación, adaptada para generar un índice de codificación que incluye el identificador de distribución determinado por la unidad de determinación de identificadores de distribución.
La distribución de impulsos obtenida por la unidad de obtención de distribución de impulsos puede incluir la información sobre la distribución de posiciones de impulsos en la pista.
La unidad de determinación de identificadores de distribución puede incluir:
una unidad de comparación, adaptada para comparar la distribución de impulsos con todas las distribuciones posibles de las posiciones de los impulsos en la pista; y
una unidad de obtención, adaptada para obtener un identificador de distribución correspondiente a la distribución de impulsos comparada por la unidad de comparación, en donde cada posible distribución de las posiciones de impulsos corresponde a un identificador de distribución.
La distribución de impulsos puede incluir: la cantidad de posiciones con un impulso, la distribución de las posiciones con un impulso en la pista y la cantidad de impulsos en cada posición con un impulso.
El identificador de distribución puede incluir información sobre el primer índice, el segundo índice y el tercer índice, en donde:
el primer índice está adaptado para identificar la información sobre todas las distribuciones posibles de las posiciones con un impulso en la pista, cuando la cantidad de las posiciones con un impulso es la misma;
el segundo índice está adaptado para identificar la instancia operativa de distribución correspondiente a la posición actual con un impulso entre todas las distribuciones posibles correspondientes al primer índice; y
el tercer índice está adaptado para identificar la información sobre la cantidad de impulsos en cada posición que tiene un impulso.
La unidad de determinación de identificadores de distribución puede incluir:
una primera unidad de determinación, adaptada para determinar el primer índice en función de la cantidad de posiciones con un impulso;
una segunda unidad de determinación, adaptada para determinar el segundo índice en conformidad con la distribución de las posiciones con un impulso en la pista; y
una tercera unidad de determinación, adaptada para determinar el tercer índice en función de la cantidad de impulsos en cada posición con un impulso.
El codificador puede incluir, además: una unidad de permutación adaptada para: permutar todas las distribuciones posibles de las posiciones de los impulsos en la pista en un orden establecido con respecto a la cantidad actual de impulsos antes de que la unidad de comparación compare la distribución de impulsos con la información sobre todas las distribuciones posibles de las posiciones con un impulso en la pista o antes de que la segunda unidad de determinación determine el segundo índice en conformidad con la distribución de las posiciones de impulsos en la pista, en donde el número de permuta en la permutación sirve como un índice de distribución indicativo de la distribución.
La unidad de obtención de la distribución de impulsos puede obtener también la información del signo de impulso indicativa de las características positivas y negativas del impulso cuando se obtiene la distribución de impulsos sobre cómo todos los impulsos a codificar en la pista se distribuyen en la pista. La unidad de determinación de identificadores de distribución puede determinar también el identificador de signo de impulso correspondiente a la información de signo de impulso cuando se determina el identificador de distribución. El índice de codificación generado por la unidad generadora de índices de codificación puede incluir también el identificador de signo de impulso correspondiente a cada impulso.
Se describe otro ejemplo de forma de realización de un codificador (que no forma parte de esta invención).
El codificador puede incluir:
una unidad de determinación de suma de impulsos, adaptada para determinar la cantidad total de impulsos a codificar e una pista;
una unidad de selección del modo de codificación, adaptada para seleccionar un modo de codificación en función de la cantidad total de impulsos determinados por la unidad de determinación de suma de impulsos; y
una unidad de codificación, adaptada para realizar la codificación en el modo de codificación seleccionado por la unidad de selección de modos de codificación.
La unidad de codificación puede incluir:
una unidad de obtención de distribución de impulsos, adaptada para obtener la distribución de impulsos sobre cómo todos los impulsos a codificar en una pista son distribuidos sobre la pista;
una unidad de determinación de identificadores de distribución, adaptada para determinar un identificador de distribución para identificar la distribución de impulsos en conformidad con la distribución de impulsos obtenida por la unidad de obtención de distribución de impulsos; y
una unidad generadora de índices de codificación, adaptada para generar un índice de codificación que incluye el identificador de distribución determinado por la unidad de determinación de identificadores de distribución.
La distribución de impulsos puede incluir la información sobre la distribución de las posiciones de impulsos sobre la pista.
La unidad de determinación de identificadores de distribución puede incluir:
una unidad de comparación, adaptada para comparar la distribución de impulsos con la información sobre todas las distribuciones posibles de las posiciones de los impulsos sobre la pista; y
una unidad de obtención, adaptada para obtener un identificador de distribución correspondiente a la distribución de impulsos comparada por la unidad de comparación, en donde la información sobre cada distribución posible corresponde a un identificador de distribución.
El codificador puede incluir, además, una unidad de permutación, adaptada para: permutar todas las distribuciones posibles de las posiciones de los impulsos sobre la pista en un orden establecido con respecto a la cantidad actual de impulsos antes de que la unidad de comparación compare la distribución de impulsos con la información sobre todas las distribuciones posibles de las posiciones de los impulsos sobre la pista, en donde el número de permutas en la permutación sirve como un índice de distribución indicativo de la distribución.
La distribución de impulsos puede incluir: cantidad de posiciones con un impulso, distribución de las posiciones con un impulso sobre la pista y cantidad de impulsos en cada posición que tiene un impulso.
El identificador de distribución puede incluir información sobre el primer índice, el segundo índice y el tercer índice, en donde:
el primer índice está adaptado para identificar la información sobre todas las distribuciones posibles de las posiciones con un impulso sobre la pista cuando la cantidad de las posiciones con un impulso es la misma;
el segundo índice está adaptado para identificar la instancia operativa de distribución correspondiente a la posición actual con un impulso entre todas las distribuciones posibles correspondientes al primer índice; y
el tercer índice está adaptado para identificar la información sobre la cantidad de impulsos en cada posición con un impulso.
La unidad de determinación de identificadores de distribución puede incluir:
una primera unidad de determinación, adaptada para determinar el primer índice en función de la cantidad de las posiciones con un impulso;
una segunda unidad de determinación, adaptada para determinar el segundo índice en conformidad con la distribución de las posiciones con un impulso sobre la pista; y
una tercera unidad de determinación, adaptada para determinar el tercer índice en función de la cantidad de impulsos en cada posición con un impulso.
El codificador puede incluir, además, una unidad de permutación, adaptada para: permutar todas las distribuciones posibles de las posiciones con un impulso sobre la pista en un orden establecido con respecto a la cantidad actual de impulsos antes de que la segunda unidad de determinación determine el segundo índice en conformidad con la distribución de posiciones de los impulsos sobre la pista, en donde el número de permuta en la permutación sirve como un índice de distribución indicativo de la distribución.
La unidad de obtención de distribución de impulsos puede obtener también la información del signo del impulso indicativa de las características positivas y negativas del impulso cuando se obtiene la distribución de impulsos sobre cómo todos los impulsos a codificar en la pista están distribuidos sobre la pista. La unidad de determinación de identificadores de distribución puede determinar también el codificador de signo de impulso correspondiente a la información de signo de impulso cuando se determina el codificador de la distribución. El índice de codificación generado por la unidad generadora de índices de codificación puede incluir también el identificador de signo de impulso correspondiente a cada impulso.
Un ejemplo de forma de realización de un decodificador (que no forma parte de esta invención) se describe a continuación.
El decodificador puede incluir:
una unidad de recepción de índice de codificación, adaptada para recibir un índice de codificación;
una unidad de extracción de identificadores de distribución, adaptada para obtener un identificador de distribución a partir de índice de codificación recibido por la unidad receptora de índices de codificación, en donde el identificador de distribución está configurado para identificar la distribución de impulsos, sobre una pista, de todos los impulsos a codificar en la pista;
una unidad de determinación de distribución de impulsos, adaptada para determinar la distribución de impulsos, sobre una pista, de todos los impulsos a codificar en la pista, en función del identificador de distribución obtenido por la unidad de extracción de identificadores de distribución; y
una unidad de reconstrucción de orden de impulsos, adaptada para reconstruir el orden de impulsos sobre la pista en conformidad con la distribución de impulsos determinada por la unidad de determinación de distribución de impulsos. La distribución de impulsos puede incluir la información sobre la distribución de posiciones de impulsos sobre la pista. La unidad de determinación de distribución de impulsos puede incluir:
una unidad de comparación, adaptada para comparar el identificador de distribución con el identificador de distribución correspondiente a todas las distribuciones posibles de las posiciones de los impulsos sobre la pista; y
una unidad de obtención, adaptada para obtener una distribución correspondiente al identificador de distribución comparado por una unidad de comparación, en donde cada identificador de distribución corresponde a la información sobre cada distribución posible.
El identificador de distribución puede incluir información sobre el primer índice, el segundo índice y el tercer índice, en donde
el primer índice está adaptado para identificar la información sobre todas las distribuciones posibles de las posiciones con un impulso sobre la pista cuando la cantidad de posiciones con un impulso es la misma;
el segundo índice está adaptado para identificar la instancia operativa de distribución correspondiente a la posición actual con un impulso entre todas las distribuciones posibles correspondientes al primer índice; y
el tercer índice está adaptado para identificar la información sobre la cantidad de impulsos en cada posición con un impulso.
La distribución de impulsos puede incluir: cantidad de posiciones con un impulso, distribución de posiciones con un impulso sobre la pista y cantidad de impulsos en cada posición con un impulso.
La unidad de extracción de identificadores de distribución puede incluir:
una primera unidad de extracción, adaptada para extraer el primer índice a partir del índice de codificación; y una segunda unidad de extracción, adaptada para extraer el segundo índice y el tercer índice a partir de índice de codificación.
La unidad de determinación de distribución de impulsos incluye:
una primera unidad de determinación, adaptada para determinar la cantidad de posiciones con un impulso en conformidad con el primer índice;
una segunda unidad de determinación, adaptada para determinar la distribución de posiciones con un impulso sobre la pista en conformidad con el segundo índice con respecto a la cantidad de posiciones con un impulso correspondiente al primer índice; y
una tercera unidad de determinación, adaptada para determinar la cantidad de impulsos en cada posición con un impulso en conformidad con el tercer índice.
La unidad de extracción de identificadores de distribución puede extraer también el identificador de signo de impulso indicativo de las características positivas y negativas del impulso a partir del índice de codificación cuando se extrae el identificador de distribución desde el índice de codificación. La unidad de determinación de distribución de impulsos puede determinar también la información del signo de impulso correspondiente en función del identificador de signo de impulso cuando se determina la distribución de impulsos según el identificador de distribución. La unidad de reconstrucción del orden de impulsos puede recuperar la característica positiva o negativa del impulso en función de la información de signo de impulso cuando se reconstruye el orden de impulsos sobre la pista.
Se describe otro ejemplo de forma de realización de un decodificador (que no forma parte de esta invención).
El decodificador puede incluir:
una unidad de recepción de índice de codificación, adaptada para recibir un índice de codificación;
una unidad de determinación de suma de impulsos, adaptada para determinar la cantidad total de impulsos codificados sobre la pista con respecto al índice de codificación recibido por la unidad receptora de índices de codificación; una unidad selectora de modos de decodificación, adaptada para seleccionar un modo de decodificación en función de la cantidad total de impulsos que se determina por la unidad de determinación de suma de impulsos; y una unidad de decodificación, adaptada para realizar la decodificación en el modo de decodificación seleccionado por la unidad de selección de modos de decodificación.
La unidad de decodificación puede incluir:
una unidad de extracción de identificadores de distribución, adaptada para extraer el identificador de distribución a partir del índice de codificación recibido por la unidad receptora de índices de codificación, en donde el identificador de distribución identifica la distribución de impulsos sobre cómo todos los impulsos a codificar en una pista se distribuyen sobre la pista;
una unidad de determinación de distribución de impulsos, adaptada para determinar la distribución de impulsos sobre cómo todos los impulsos a codificar en una pista se distribuyen en una pista en función del identificador de distribución extraído por la unidad de extracción de identificadores de distribución; y
una unidad de reconstrucción del orden de impulsos, adaptada para reconstruir el orden de impulsos en la pista en conformidad con la distribución de impulsos determinada por la unidad de determinación de distribución de impulsos. La distribución de impulsos puede incluir la información sobre la distribución de las posiciones de los impulsos en la pista.
La unidad de determinación de distribución de impulsos puede incluir:
una unidad de comparación, adaptada para comparar el identificador de distribución con el identificador de distribución correspondiente a todas las posibles distribuciones de las posiciones de los impulsos sobre la pista; y
una unidad de obtención, adaptada para obtener la distribución de impulsos correspondiente al identificador de distribución comparado por la unidad de comparación, en donde cada identificador de distribución corresponde a la información sobre una posible instancia de distribución.
El identificador de distribución puede incluir información sobre el primer índice, el segundo índice y el tercer índice, en donde:
el primer índice está adaptado para identificar la información sobre todas las distribuciones posibles de las posiciones con un impulso en la pista cuando la cantidad de las posiciones con un impulso es la misma;
el segundo índice está adaptado para identificar la instancia de distribución correspondiente a la posición actual con un impulso entre todas las distribuciones posibles correspondientes al primer índice; y
el tercer índice está adaptado para identificar la información sobre la cantidad de impulsos en cada posición con un impulso.
La distribución de impulsos puede incluir: la cantidad de posiciones con un impulso, distribución de posiciones con un impulso en la pista y cantidad de impulsos en cada posición con un impulso.
La unidad de extracción de identificadores de distribución puede incluir:
una primera unidad de extracción, adaptada para extraer el primer índice desde el índice de codificación; y una segunda unidad de extracción, adaptada para extraer el segundo índice y el tercer índice a partir del índice de codificación.
La unidad de determinación de distribución de impulsos puede incluir:
una primera unidad de determinación, adaptada para determinar la cantidad de posiciones con un impulso en función del primer índice;
una segunda unidad de determinación, adaptada para determinar la distribución de posiciones con un impulso sobre la pista en función del segundo índice con respecto a la cantidad de posiciones con un impulso correspondiente al primer índice; y
una tercera unidad de determinación, adaptada para determinar la cantidad de impulsos en cada posición con un impulso en función del tercer índice.
La unidad de extracción de identificadores de distribución puede extraer también el identificador de signo de impulso indicativo de las características positivas y negativas del impulso a partir del índice de codificación cuando se extrae el identificador de distribución desde el índice de codificación. La unidad de determinación de distribución de impulsos puede determinar también la información del signo de impulso correspondiente en función del identificador del signo de impulso cuando se determina la distribución de impulsos en función del identificador de distribución. La unidad de reconstrucción del orden de impulsos puede recuperar la característica positiva o negativa del impulso en función de la información del signo del impulso cuando se reconstruye el orden de impulsos sobre la pista.
Un ejemplo de forma de realización de un codificador y de un decodificador (que no forma parte de esta invención) se detalla a continuación con referencia a los dibujos adjuntos.
Forma de realización 13 [No forma parte de esta invención]
Un codificador 10 se da a conocer en la decimotercera forma de realización. Según se indica en la Figura 13, el codificador incluye: una primera unidad de estadística 11, una unidad de índice de distribución 12 y una unidad generadora de índice 13, en donde:
la primera unidad de estadística 11 está adaptada para recoger las estadísticas de los impulsos a codificar en una pista para obtener la distribución de impulsos sobre cómo la posición de cada impulso está distribuida en la pista, en donde la distribución de impulsos está representada por Q(N). Cuando se recogen los datos estadísticos del impulso con un signo, la primera unidad de estadística 11 proporciona, a la salida, la información de índice de signo SS(N) correspondiente a cada impulso en conformidad con la característica positiva o negativa del signo de impulso de cada impulso, en donde el índice de signo indica el signo del impulso del impulso correspondiente al índice;
la unidad de índice de distribución 12 está adaptada para determinar el índice de distribución I4 según el valor de Q(N) obtenido por la primera unidad de estadística 11. El índice I4 se calcula de esta forma: todas las distribuciones posibles de las posiciones de todos los impulsos en la pista se permutan en un orden establecido con respecto a la cantidad actual de impulsos y el número de permuta en la permutación sirve como un índice de distribución I4 indicativo de a distribución; y
la unidad generadora de índices 13 está adaptada para generar un índice de codificación Índice(N) que incluye la información sobre el índice de distribución I4 determinado por la unidad de índices de distribución 12. Cuando se codifica el impulso con un signo, la unidad generadora de índices 13 combina la información de índice de signo SS(N) correspondiente a cada impulso en el Índice(N).
El aparato de codificación, dado a conocer en esta forma de realización es aplicable a los métodos de codificación dados a conocer en la primera forma de realización y en la segunda forma de realización.
Forma de realización 14 [No forma parte de esta invención]
La decimocuarta forma de realización da a conocer un codificador 20. Según se ilustra en la Figura 14, el codificador incluye: un primer módulo de codificación 21, un segundo módulo de codificación 22 y una unidad selectora de codificación 2.
La unidad selectora de codificación 23 está adaptada para: determinar la cantidad total (N) de impulsos a codificar en la misma pista y para seleccionar un modo de codificación según el valor de N En esta forma de realización, modos de codificación opcionales incluyen un primer modo de codificación y un segundo modo de codificación. Dependiendo del resultado de la selección del modo de codificación, el primer módulo de codificación 21 se inicia operativamente para realizar la codificación si se selecciona el primer modo de codificación; o el segundo módulo de codificación 22 se inicia operativamente para realizar la codificación si se selecciona el segundo modo de codificación.
El primer módulo de codificación 21 incluye una primera unidad de estadística 211, una unidad de índice de distribución 212 y una unidad generadora de índices 213. La estructura lógica de dichas unidades es la misma que la que tienen las unidades de contraparte en la 13-ésima forma de realización.
El segundo módulo de codificación 22 incluye una segunda unidad de estadística 221, una unidad de cálculo de índice 222 y una unidad de combinación de índice 223.
La segunda unidad de estadística 221 está adaptada para: recoger los datos estadísticos de los impulsos a codificar en una pista en función de las posiciones y para proporcionar, a la salida, la cantidad (N) de posiciones con un impulso, el P(N) y el SU(N), en donde P(N) representa la distribución de cada posición con un impulso en la pista y SU(N) representa la cantidad de impulsos en cada posición con un impulso. Cuando se recogen los datos estadísticos del impulso con un signo, la segunda unidad de estadística 221 proporciona también, a la salida, la información de signo de impulso correspondiente S(N) en conformidad con la característica positiva o negativa del signo de impulso de cada posición con un impulso.
La unidad de cálculo de índice 222 incluye: una primera unidad de índices 2221, una segunda unidad de índices 2222, una tercera unidad de índices 2223 y una unidad de combinación de índices 223.
La primera unidad de índices 2221 está adaptada para proporcionar, a la salida, el primer índice I1 en función de la cantidad (N) de las posiciones con un impulso. El primer índice I1 corresponde a todas las distribuciones posibles de las posiciones con un impulso en la pista cuando N es el mismo.
La segunda unidad de índice 2222 está adaptada para proporcionar, a la salida, el segundo índice I2 en función de la distribución de las posiciones con un impulso en la pista, en donde la distribución se expresa por P(N). El segundo índice I2 indica la instancia operativa de distribución correspondiente a la distribución de la posición actual con un impulso entre todas las distribuciones posibles correspondientes al primer índice.
La tercera unidad de índices 2223 está adaptada para proporcionar, a la salida, el tercer índice en función de la cantidad de impulsos de cada posición con un impulso, esto es, en conformidad con SU(N).
La unidad de combinación de índices 223 está adaptada para combinar la información sobre el primer índice, el segundo índice y el tercer índice para generar un índice de codificación. Si el impulso a codificar incluso un signo, la unidad de combinación de índices 223 combina, además, la información de índice de signo S(N) correspondiente a cada posición con un impulso en el índice de codificación, en donde el índice de signo indica la información de signo de impulso de la posición con un impulso correspondiente al índice de signo.
Si la estructura de índice de codificación se da a conocer en el segundo modo de codificación en la tercera forma de realización, la unidad de combinación de índices 223 para codificación puede incluir:
una primera unidad de combinación 2231, adaptada para proporcionar, a la salida, el segundo índice y el tercer índice combinados en I23, esto es, I23 = I3 x W(N) I2, en donde W(N) representa la cantidad total de todas las distribuciones posibles de las posiciones con un impulso en la pista y N representa la cantidad de las posiciones con un impulso correspondiente al primer índice; y
una segunda unidad de combinación 2232, adaptada para: superponer la salida de la primera unidad de combinación 2231 con la información sobre otros índices y proporcionar, a la salida, el índice de codificación Índice(N).
El aparato de codificación, dado a conocer en esta forma de realización es aplicable a los métodos de codificación dados a conocer en la tercera forma de realización y en la cuarta forma de realización.
Forma de realización 15 [No forma parte de esta invención]
Un codificador 30 se da a conocer en la decimoquinta forma de realización. Según se ilustra en la Figura 15, el codificador incluye: una unidad de estadística de impulso 31, una unidad de cálculo de índice 32 y una unidad de combinación de índice 33,
la unidad de estadística de impulsos 31 está adaptada para: recoger los datos estadísticos de los impulsos a codificar en una pista en función de las posiciones y para proporcionar, a la salida, la cantidad (N) de posiciones con un impulso en la pista así como los valores de P(N) y de SU(N),en donde: P(N) representa la distribución de cada posición con un impulso en la pista y SU(N) representa la cantidad de impulsos en cada posición con un impulso. Cuando se recogen los datos estadísticos del impulso con un signo, la unidad de estadística de impulsos 31 proporciona también, a la salida, la información del signo del impulso correspondiente S(N) en conformidad con la característica positiva o negativa de la señal de impulso de cada posición con un impulso,
la unidad de cálculo de índices 32 incluye: una primera unidad de índice 321, una segunda unidad de índice 322 y una tercera unidad de índice 323:
la primera unidad de índice 321 está adaptada para proporcionar, a la salida, el primer índice I1 en función de la cantidad (N) de las posiciones con un impulso. El primer índice I1 corresponde a todas las distribuciones posibles de las posiciones con un impulso en la pista cuando N es el mismo;
la segunda unidad de índice 322 está adaptada para proporcionar, a la salida, el segundo índice I2 en conformidad con la distribución de las posiciones con un impulso en la pista, en donde la distribución se expresa por P(N). El segundo índice I2 indica la instancia operativa de distribución correspondiente a la distribución de la posición actual con un impulso entre todas las distribuciones posibles correspondiente al primer índice; y
la tercera unidad de índice 323 está adaptada para proporcionar, a la salida, el tercer índice en función de la cantidad de impulsos en cada posición con un impulso, esto es, en conformidad con SU(N),
la unidad de combinación de índices 33 está adaptada para: combinar la información sobre el primer índice, el segundo índice y el tercer índice para generar un índice de codificación. Si el impulso a codificar incluye un signo, la unidad de combinación de índices 33 combina, además, la información del índice de signo S(N) correspondiente a cada posición con un impulso en el índice de codificación, en donde el índice de signo indica la información del signo de impulso de las posiciones con un impulso correspondiente al índice de signo.
Cuando los impulsos se codifican en conformidad con la estructura de índice de codificación dado a conocer en la quinta forma de realización, la unidad de combinación de índices 33 puede incluir:
una primera unidad de combinación 331, adaptada para proporcionar, a la salida, el segundo índice y el tercer índice combinados en I23, esto es, I23 = I3 x W(N) I2, en donde W(N) representa la cantidad total de todas las distribuciones posibles de las posiciones con un impulso en la pista y N representa la cantidad de posiciones con un impulso correspondiente al primer índice; y
una segunda unidad de combinación 332, adaptada para: superponer la salida de la primera unidad de combinación 331 con información sobre otros índices y proporcionar, a la salida, el índice de codificación Índice(N).
El aparato de codificación, dado a conocer en esta forma de realización es aplicable a los métodos de codificación dados a conocer en la quinta forma de realización y en la sexta forma de realización.
Forma de realización 16 [No forma parte de esta invención]
Un decodificador 40 se da a conocer en la decimosexta forma de realización. Según se ilustra en la Figura 16, el decodificador incluye:
una unidad de recepción 41, adaptada para recibir un índice de codificación Índice(N);
una unidad de extracción de distribución 42, adaptada para extraer el índice de distribución I4 a partir del Índice(N) recibido por la unidad receptora 41;
una unidad de decodificación de distribución 43, adaptada para determinar la distribución de cada posición de impulsos en la pista en función del índice de distribución I4 extraído por la unidad de extracción de distribución 42, en donde la distribución se representa por Q(N); y
una unidad de reconstrucción de distribución 44, adaptada para reconstruir el orden de impulsos en la pista en función de la Q(N) determinada por la unidad de decodificación de distribución 43, en donde Q(N) representa la distribución de cada posición de los impulsos en la pista.
Si el impulso a decodificar incluye un signo, el decodificador necesita incluir, además:
una unidad de extracción de signos 45, adaptada para extraer el índice de signo SS(N) correspondiente a cada impulso a partir de Índice(N) recibido por la unidad de recepción 31 en función de la cantidad total (N) de impulsos a codificar en la misma pista, en donde el índice de signo indica la información de signo de impulso del impulso correspondiente al índice de signo.
En este caso, la unidad de reconstrucción de distribución 44 recupera, además, la característica positiva o negativa del signo de impulso de cada impulso en función de la información del signo de impulso indicada por SS(N) extraída por la unidad de extracción de signo 45.
Forma de realización 17 [No forma parte de esta invención]
El aparato de decodificación dado a conocer en esta forma de realización es aplicable a los métodos de decodificación dados a conocer en la séptima forma de realización y en la octava forma de realización.
La decimoséptima forma de realización da a conocer un decodificador 50. Según se ilustra en la Figura 17, el decodificador incluye: un primer módulo de decodificación 51, un segundo módulo de decodificación 52 y una unidad de selección de decodificación 53.
La unidad de selección de decodificación 53 está adaptada para: determinar la cantidad total (N) de impulsos codificados en la misma pista por el índice de codificación recibido Índice(N) y para seleccionar un modo de decodificación en función de N la cantidad total. Modos de decodificación opcionales, en esta forma de realización, incluyen un primer modo de decodificación y un segundo modo de decodificación. Dependiendo del resultado de la selección del modo de decodificación, el primer módulo de decodificación 51 se inicia para realizar la decodificación si se selecciona el primer modo de decodificación o el segundo módulo de decodificación 52 se inicia operativamente para realizar la decodificación si se selecciona el segundo modo de decodificación.
El primer módulo de decodificación 51 incluye una unidad de extracción de distribución 512, una unidad de decodificación de distribución 513, una unidad de reconstrucción de distribución 514 y una unidad de extracción de signo 515. La estructura lógica de dichas unidades es la misma que la que tienen las unidades de contraparte en la 16a forma de realización.
El segundo módulo de decodificación 52 incluye:
una primera unidad de extracción 521, adaptada para: recibir el índice de codificación, Índice(N), extraer el primer índice I1 desde el Índice(N) y para determinar la cantidad (N) de posiciones con un impulso en conformidad con el índice I1; y
una segunda unidad de extracción 522, adaptada para extraer el segundo índice I2 y el tercer índice I3 a partir del índice de codificación Índice(N).
Si la estructura del índice de codificación se da a conocer en el segundo modo de codificación en la tercera forma de realización, la segunda unidad de extracción 522 para la decodificación puede incluir:
una sub-unidad de separación 5221, adaptada para extraer el valor de combinación I23 del segundo índice y del tercer índice a partir del índice de codificación;
una sub-unidad de resolución 5222, adaptada para separar y proporcionar a la salida, el segundo índice I2 y el tercer índice I3 en la forma siguiente:
I2 = I23 % W(N), I3 = Int[I23/W(N)].
en donde W(N) representa la cantidad total de todas las distribuciones posibles de las posiciones con un impulso en la pista, N representa la cantidad de las posiciones con un impulso correspondiente al primer índice, % se refiere a tomar el resto e Int se refiere a adoptar el número entero;
una primera unidad de decodificación 523, adaptada para determinar el P(N) en conformidad con el segundo índice I2 con respecto a la cantidad de las posiciones con un impulso correspondiente al índice I1, en donde P(N) representa la distribución de las posiciones con un impulso en la pista;
una segunda unidad de decodificación 524, adaptada para determinar el valor de SU(N) en conformidad con el tercer índice I3, en donde SU(N) representa la cantidad de impulsos en cada posición con un impulso; y
una unidad de reconstrucción de impulsos 525, adaptada para reconstruir el orden de impulsos en la pista en conformidad con P(N) y SU(N), en donde: P(N) representa la distribución de las posiciones con un impulso en la pista y SU(N) representa la cantidad de impulsos en cada posición con un impulso.
Si el impulso a decodificar incluye un signo, el decodificador necesita incluir, además:
una tercera unidad de extracción 526, adaptada para extraer el índice de signo s(n) correspondiente a cada posición con un impulso a partir del Índice(^) en función de la cantidad (N) de las posiciones con un impulso, en donde el índice de signo indica la información de signo de impulso de la posición con un impulso correspondiente al índice de signo. En este caso, la unidad de reconstrucción de impulsos 525 puede incluir:
una primera unidad de reconstrucción 5251, adaptada para recupera la característica positiva o negativa del signo de impulso de cada posición con un impulso en conformidad con P(N) y s(n), en donde P(N) representa la distribución de las posiciones con un impulso en la pista y s(n) representa el índice de signo correspondiente a cada posición con un impulso; y
una segunda unidad de reconstrucción 5252, adaptada para reconstruir el orden de impulsos en la pista en conformidad con la distribución de las posiciones con un impulso y los signos proporcionados, a la salida, por la primera unidad de reconstrucción 5251 y en conformidad con SU(N), que representa la cantidad de impulsos en cada posición con un impulso.
El aparato de decodificación dado a conocer en esta forma de realización es aplicable a los métodos de decodificación dados a conocer en la novena forma de realización y en la décima forma de realización.
Forma de realización 18 [No forma parte de esta invención]
Un decodificador 60 se da a conocer en la decimoctava forma de realización. Según se ilustra en la Figura 18, el decodificador incluye:
una primera unidad de extracción 61, adaptada para: recibir el índice de codificación Índice(^), para extraer el primer índice I1 a partir del Índice(^) y para determinar la cantidad (N) de posiciones con un impulso en conformidad con el índice I1; y
una segunda unidad de extracción 62, adaptada para extraer el segundo índice I2 y el tercer índice I3 a partir del índice de codificación Índice(^).
En el caso de decodificación de la estructura del índice de codificación dada a conocer en la quinta forma de realización, la segunda unidad de extracción 62 puede incluir:
una sub-unidad de separación 621, adaptada para extraer el valor de combinación I23 del segundo índice y del tercer índice a partir del índice de codificación;
una sub-unidad de resolución 622, adaptada para separar y proporcionar, a la salida, el segundo índice I2 y el tercer índice I3 en la forma siguiente:
I2= I23 % W(N), I3 = Int[I23/W(N)],
en donde W(N) representa la cantidad total de todas las distribuciones posibles de las posiciones con un impulso en la pista, N representa la cantidad de posiciones con un impulso correspondiente al primer índice, % se refiere a tomar el resto e Int se refiere a adoptar el número entero;
una primera unidad de decodificación 63, adaptada para determinar el valor de P(N) en función del segundo índice I2 con respecto a la cantidad de las posiciones con un impulso correspondiente al índice I1, en donde P(N) representa la distribución de las posiciones con un impulso en la pista;
un segunda unidad de decodificación 64, adaptada para determinar el valor de SU(N) en función del tercer índice I3, en donde SU(N) representa la cantidad de impulsos en cada posición con un impulso; y
una unidad de reconstrucción de impulsos 65, adaptada para reconstruir el orden de impulsos en la pista en función de los valores de P(N) y de SU(N), en donde: P(N) representa la distribución de las posiciones con un impulso en la pista y SU(N) representa la cantidad de impulsos en cada posición con un impulso.
Si el impulso a decodificar incluye un signo, el decodificador necesita incluir, además:
una tercera unidad de extracción 66, adaptada para extraer el índice de signo s(n) correspondiente a cada posición con un impulso a partir del Índice(N en función de la cantidad (N) de las posiciones con un impulso, en donde el índice de signo indica la información de signo de impulso de la posición con un impulso correspondiente al índice de signo. En este caso, la unidad de reconstrucción de impulsos 65 puede incluir:
una primera unidad de reconstrucción 651, adaptada para recuperar la característica positiva o negativa del signo de impulso de cada posición con un impulso en función de P(N) y de s(n), en donde: P(N) representa la distribución de las posiciones con un impulso en la pista y s(n) representa el índice de signo correspondiente a cada posición con un impulso; y
una segunda unidad de reconstrucción 652, adaptada para reconstruir el orden de impulsos en la pista en conformidad con la distribución de las posiciones con un impulso y los signos proporcionados a la salida por la primera unidad de reconstrucción 651 y en conformidad con SU(N) que representa la cantidad de impulsos en cada posición con un impulso. El aparato de decodificación dado a conocer en esta forma de realización es aplicable a los métodos de decodificación dados a conocer en la undécima forma de realización y en la duodécima forma de realización.
Con el fin de aclarar todavía más las formas de realización anteriores, se proporcionan, a continuación, realizaciones, a modo de ejemplo, de codificación y de decodificación, en donde la codificación está basada en el método de codificación en la tercera forma de realización (el primer modo de codificación está basado en el método de cálculo de la segunda forma de realización y el segundo método de codificación está basado en el método de cálculo en la cuarta forma de realización) y la decodificación está basada en el método de decodificación en la novena forma de realización (el primer modo de decodificación está basado en el método de cálculo en la octava forma de realización y el segundo modo de decodificación está basado en el método de cálculo en la 10a forma de realización), suponiendo que la condición de selección del primer modo de codificación/decodificación es: N = 3, 4, 5 y la cantidad total de posiciones en la pista es M = 16.
Realización a modo de ejemplo 1: Codificación y decodificación para resultados de la búsqueda de impulsos.
A. Codificación
(1) N = 6, el segundo modo de codificación se determina para la codificación y el Índice(N) necesita ocupar 21 bits. (2) Se recogen datos estadísticos de N, P(N), SU(N) y S(N).
N = 1;
P(1) = {p(0)} = {2};
SU(1) = {su(0)} = {6}; y
S(1) = {s(0)} = {0}.
(3) se codifican los índices I1, I2, I3 e I23.
Según N = 1, se determina que I1 = 0x1 F0000 haciendo referencia a la Figura 5.
En conformidad con el método de cálculo en la cuarta forma de realización, I2 = 2.
Clase (1) = 1, I3 = 0 y por lo tanto, I23 = I2 = 2.
(4) Se genera el Índice(N).
Índice(N) = I1 I23 x 2N s(0) x 2N -1 s(1) x 2N -2 ... s(N-1)
= 0x1 F0000 2 x 2 0
= 0x1F0004
B. Decodificación
(1) Índice(N) = 0x1 F0004 se recibe. N = 6 se determina en función de la longitud de codificación y el segundo modo de decodificación se determina para decodificación.
(2) I1, s(n) e I23 son objeto de extracción.
En conformidad con Índice(N) = 0x1 F0004, se determina que I1 = 0x1 F0000 y N = 1 haciendo referencia a la Figura 5.
En conformidad con N = 1, se separa el último bit de Índice(N) y s(0) = 0.
El índice I23 se separa, I23 = [Índice(N) >>1] - I1 = 2 y “>>k” representa k bits desplazados hacia la izquierda.
(3) Se decodifica el índice I23.
C
En conformidad con N = 1, W(1) = '■'1ifi = 16.
I3 = Int[I23 / W(1)] = 0 y la instancia única correspondiente a SU(1) es SU(1) = {6}.
I2 = I23 % W(1) = 2; en conformidad con el método de cálculo en la octava forma de realización, P(1) = {p(0)} = {2}. (4) Se recupera el orden de impulsos.
En conformidad con P(1) = {2}, SU(1) = {6} y s(0) = 0 se determina que existen 6 impulsos positivos en la posición 2. Se concluye así el proceso de decodificación.
Realización a modo de ejemplo 2. Codificación y decodificación para los resultados de la búsqueda de impulsos. A. Codificación
(1) N = 5, el primer modo de codificación se determina para la codificación y el Índice(N) necesita ocupar 19 bits. (2) Se recogen datos estadísticos de Q(N) y SS(N).
Q5 = {q(0), q(1), q(2), q(3), q(4)} = {1, 1,4, 6, 6}; y
SS(5) = {ss(0), ss(1), ss(2), ss(3), ss(4)} = {0, 0, 0, 0, 0}
(3) Se codifica I4.
En conformidad con el método de cálculo en la segunda forma de realización, I4 =
Figure imgf000029_0001
(4) Se genera el Índice(N).
Índice(5) = I4 x 25 ss(0) x 24 ss(1) x 24 ... ss(4)
= 4215 x 25 0
= 0x20EE0
B. Decodificación
(1) Índice(N) = 0x20EE0 se recibe. N = 5 se determina en función de la longitud de codificación y el primer modo de decodificación se determina para la decodificación.
(2) Q(N) y SS(N) son objeto de extracción.
En conformidad con N = 5, se separan los cinco últimos bits de Índice(N) y ss(0) - ss(4) = 0.
Se separa I4. I4 = [Índice(N >> 5] = 4215.
(3) I4 se decodifica.
En conformidad con el método de cálculo en la octava forma de realización, Q(5) = {1,1,4, 6, 6}.
(4) Se recupera el orden de impulsos.
En conformidad con Q(5) = {1, 1, 4, 6, 6} y ss(0) - ss(4) = 0, se determina que dos impulsos positivos existen en la posición 1; 1 impulso positivo existen en la posición 4 y dos impulsos positivos existen en la posición 6. Se concluye el proceso de decodificación.
Las formas de realización anteriores dan a conocer que: los impulsos a codificar están ordenados en conformidad con la distribución de las posiciones de los impulsos en la pista antes de la codificación, con lo que se simplifica el cálculo; puesto que la codificación se realiza en función del orden, todas las distribuciones de impulsos corresponden a la codificación continua, con lo que se minimiza la redundancia de la codificación y se ahorran los bits de codificación. Además, el primer modo de codificación/ decodificación se integra con el segundo modo de codificación/decodificación bajo la presente invención. Por lo tanto, los méritos de los dos modos de codificación con diferentes valores de N se complementan entre sí y de este modo, las ventajas son más notables.
A continuación se proporcionan más realizaciones, a modo de ejemplo, de las funciones de codificación y de decodificación, en donde la codificación está basada en el método de codificación en la segunda forma de realización y la decodificación está basada en el método de decodificación en la cuarta forma de realización, suponiendo que la cantidad total de posiciones en la pista es M = 16.
Realización ejemplo 1: Codificación y decodificación para resultados de búsqueda de impulsos.
A. Codificación
(1) N = 6 y el Índice(N) necesita ocupar 21 bits.
(2) Estadísticas de N, P(N), SU(N) y S(N) son recogidas.
N = 1;
P(1) = {p(0)} = {2};
SU(1) = {su(0)} = {6}; y
S(1) = {s(0)} = {0}.
(3) Se codifican los índices I1, I2, I3 e I23.
En conformidad con N = 1, se determina que I1 = 0x1 F0000 haciendo referencia a la Figura 5.
En conformidad con el método de cálculo en la sexta forma de realización, I2 = 2.
Clase(1) = 1, I3 = 0 y por lo tanto, I23 = I2 = 2.
(4) Se genera el Índice(N).
Índice(N) = I1 I23 x 2N s(0) x 2 N -1 s(1) x 2N -2 ... s(N -1)
= 0x1 F0000 2 x 2 0
= 0x1F0004
B. Decodificación
(1) Índice(N) = 0x1 F0004 se recibe. N = 6 se determina en función de la longitud de codificación.
(2) I1, s(n) e I23 son objeto de extracción.
En conformidad con Índice(N) = 0x1 F0004, se determina que I1 = 0x1 F0000 y N = 1.
En conformidad con N = 1, el último bit de Índice(N se separa y s(0) = 0.
I23 se separa, I23 = [Índice(N >> 1] - I1 = 2 y “>>k” representa k bits desplazados hacia la izquierda.
(3) Se decodifica I23.
En conformidad con N = 1, W(1) = C '-'116 = 16.
I3 = Int[123/W(1)] = 0 y la instancia operativa única correspondiente a SU(1) es SU(1) = {6}.
I2 = I23 % W(1) = 2; en conformidad con el método de cálculo en la 12a forma de realización, P(1) = {p(0)} = {2}. (4) Se recupera el orden de impulsos.
En conformidad con P(1) = {2}, SU(1) = {6} y s(0) = 0, se determina que 6 impulsos positivos existen en la posición 2. Se concluye así el proceso de decodificación.
Realización ejemplo 2: Codificación y decodificación para resultados de búsqueda de impulsos.
A. Codificación
(1) N = 6 y el Índice(N) necesita ocupar 21 bits.
(2) Estadísticas de N, P(N), SU(N) y S(N) son recogidas.
N = 2;
P(2) = {p(0), p(1)} = {2, 4};
SU(2) = {su(0), su(1)} = {2, 4}; y
S(2) = {s(0), s(1)} = {0, 0}.
(3) Se codifican los índices I1, I2, I3 e I23.
En conformidad con N = 2, se determina que I1 = 0x1 E0000 haciendo referencia a la Figura 5.
En conformidad con el método de cálculo en la sexta forma de realización, I2 = 30.
Considerando que Clase(2) = 5, suponiendo que cinco instancias operativas posibles de SU(2) están dispuestas en este orden, {{5, 1}, {4, 2}, {3, 3}, {2,4} y {1,5}} entonces SU(2) = {2, 4} es la cuarta instancia e I3 = 3 y por lo tanto, I23 C = I3 x '-'126 + 12 = 390.
(4) Se genera el Índice(N).
Índice(N) = I1 I23 x 2N s(0) x 2N-1 s(1) x 2N-2 ... s(N -1)
= 0x1 E0000 390 x 4 0 0
= 0x1E0618
B. Decodificación
(1) Índice(N) = 0x1 E0618 se recibe. N = 6 se determina en función de la longitud de codificación.
(2) I1, s(n) e I23 son objeto de extracción.
En conformidad con Índice(N) = 0x1 E0618, se determina que I1 = 0x1 E0000 y N = 2 haciendo referencia a la Figura 5. En conformidad con N = 2, los dos últimos bits de Índice(N) se separan y s(0) = 0 y s(1) = 0.
I23 se separa, I23 = [Índice(N) >> 2] - I1 = 390.
(3) Se decodifica I23.
En conformidad con N = 2, W(2) = ^16 = 120.
I3 = Int[I23/W(2)] = 3. En conformidad con el orden de todas las mismas instancias operativas de SU(2) aplicadas en el codificador, la cuarta instancia es coincidente: SU(2) = {2, 4}
I2 = I23 % W(2) = 30; en conformidad con el método de cálculo en la 12a forma de realización, P(2) = {2, 4}.
(4) Se recupera el orden de impulsos.
En conformidad con P(2) = {2, 4}, SU(2) = {2, 4}, s(0) = 0 y s(1) = 0, se determina que 2 impulsos positivos existen en la posición 2 y 4 impulsos positivos existen en la posición 4. Se concluye así el proceso de decodificación.
Las formas de realización anteriores dan a conocer que: los impulsos a codificar se combinan en función de las posiciones y de la cantidad de posiciones con un impulso, la distribución de las posiciones con un impulso en la pista yal cantidad de impulsos en cada posición con un impulso son objeto de codificación. Para cualquier cantidad de impulsos a codificar, el método de codificación, según la presente invención, es uniformemente aplicable, con lo que se evita el incremento de la redundancia de índice de codificación causada en el modo recursivo y asegurando una alta relación de utilización de los bits de codificación. Asimismo, no es necesario codificar múltiples impulsos en la misma posición por separado. En cambio, las posiciones de impulsos son objeto de fusión antes de la codificación, con lo que se ahorran bits de codificación. Con el incremento de los sistemas a codificar en la pista, aumenta también la probabilidad de superposición de las posiciones de impulsos y se hacen más notables las ventajas de las formas de realización de la presente invención.
En la descripción anterior se detalla un método de codificación, una decodificación, un codificador y un decodificador según la presente invención. Aunque la invención se describe por intermedio de algunas formas de realización, a modo de ejemplo, la invención no está limitada a dichas formas de realización. Es evidente para los expertos en esta técnica que se pueden hacer varias modificaciones y variaciones a la invención sin desviarse por ello del alcance de protección de la invención. La invención está prevista para cubrir las modificaciones y variaciones a condición de que caigan dentro del alcance de protección definido por las reivindicaciones siguientes o sus equivalentes.

Claims (3)

REIVINDICACIONES
1. Un método para codificar una señal de voz, que comprende:
la obtención de la distribución de impulsos de la señal de voz, en una pista, de los impulsos a codificarse en la pista, mediante la recogida de la estadística sobre las posiciones del impulso, comprendiendo la distribución de impulsos una cantidad de posiciones que tienen un impulso, la distribución de las posiciones que tienen un impulso en la pista y la cantidad de impulsos en cada posición con un impulso;
la generación de un índice de codificación que comprende un primer índice I1, un segundo índice I2 y un tercer índice I3 para identificar la distribución de impulsos de conformidad con dicha distribución de impulsos, en donde:
el primer índice está adaptado para identificar todas las distribuciones posibles de las posiciones que tienen un impulso en la pista cuando se determina la cantidad de posiciones que tienen un impulso;
el segundo índice está adaptado para identificar una distribución, correspondiente a la distribución de la posición actual con un pulso, de todas las posibles distribuciones correspondientes al primer índice;
el tercer índice está adaptado para identificar la cantidad de impulsos en cada posición con un impulso;
en donde la generación de un índice de codificación que comprende un primer índice I1, un segundo índice I2 y un tercer índice I3 para identificar la distribución de impulsos según la distribución de impulsos que comprende: determinar el primer índice I1 según la cantidad de posiciones con un impulso;
determinar el segundo índice I2 según la distribución de impulsos de las posiciones de impulsos en la pista; determinar el tercer índice I3 según la cantidad de impulsos en cada posición con un impulso.
2. El método según la reivindicación 1, en donde la determinación del segundo índice I2 según la distribución de impulsos de las posiciones de los impulsos en la pista comprende:
la permutación de números serie de las posiciones incluidas en P(N), en donde P(N) = {p(0), p(1),..., p(N-1)}, representa la distribución de las posiciones con un impulso en la pista, N se refiere al número de las posiciones con un impulso en la pista; la determinación del segundo índice I2 según la fórmula siguiente cuando todos los valores posibles de P(N) están ordenados desde un valor inferior a un valor superior p(0)< p(1)<...<p(N-1):
Figure imgf000033_0001
en donde C se refiere al cálculo de la función de combinación, X se refiere a una suma, M es la cantidad total de posiciones en la pista, p(0)e[0, M-N], p(n)e[p(n-1) 1, M-N n];
3. El método según la reivindicación 1, en donde la generación de un índice de codificación comprende:
la adición de la información sobre el segundo índice y el tercer índice con el primer índice utilizado como un valor de inicio, correspondiendo un valor del primer índice a una gama de valores independientes del índice de codificación, cuando se añade la información sobre el segundo índice y el tercer índice con el primer índice utilizado como un valor de inicio, la adición de la combinación del segundo índice y del tercer índice en la forma siguiente,
I3x W(N) I2;
donde I2 representa el segundo índice, I3 representa el tercer índice, W (N) representa la cantidad total de todas las posibles distribuciones de las posiciones con un impulso en la pista, y N representa la cantidad de las posiciones con un impulso correspondiente al primer índice.
ES14184929T 2007-04-29 2008-04-29 Método de codificación de impulsos de las señales de excitación Active ES2817906T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2007101030235A CN101295506B (zh) 2007-04-29 2007-04-29 脉冲编解码方法及脉冲编解码器
CN2007101539527A CN101388210B (zh) 2007-09-15 2007-09-15 编解码方法及编解码器

Publications (1)

Publication Number Publication Date
ES2817906T3 true ES2817906T3 (es) 2021-04-08

Family

ID=39943133

Family Applications (2)

Application Number Title Priority Date Filing Date
ES14184929T Active ES2817906T3 (es) 2007-04-29 2008-04-29 Método de codificación de impulsos de las señales de excitación
ES08734199.6T Active ES2529292T3 (es) 2007-04-29 2008-04-29 Método de codificación y de decodificación

Family Applications After (1)

Application Number Title Priority Date Filing Date
ES08734199.6T Active ES2529292T3 (es) 2007-04-29 2008-04-29 Método de codificación y de decodificación

Country Status (7)

Country Link
US (8) US8294602B2 (es)
EP (2) EP2827327B1 (es)
JP (3) JP5221642B2 (es)
DK (1) DK2827327T3 (es)
ES (2) ES2817906T3 (es)
PT (1) PT2827327T (es)
WO (1) WO2008134974A1 (es)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DK2827327T3 (da) 2007-04-29 2020-10-12 Huawei Tech Co Ltd Fremgangsmåde til excitationsimpulskodning
CN101931414B (zh) 2009-06-19 2013-04-24 华为技术有限公司 脉冲编码方法及装置、脉冲解码方法及装置
CN102299760B (zh) * 2010-06-24 2014-03-12 华为技术有限公司 脉冲编解码方法及脉冲编解码器
CN102623012B (zh) 2011-01-26 2014-08-20 华为技术有限公司 矢量联合编解码方法及编解码器
KR101525185B1 (ko) 2011-02-14 2015-06-02 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 트랜지언트 검출 및 품질 결과를 사용하여 일부분의 오디오 신호를 코딩하기 위한 장치 및 방법
JP5625126B2 (ja) 2011-02-14 2014-11-12 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン スペクトル領域ノイズ整形を使用する線形予測ベースコーディングスキーム
PL3239978T3 (pl) * 2011-02-14 2019-07-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Kodowanie i dekodowanie pozycji impulsów ścieżek sygnału audio
CA2827249C (en) 2011-02-14 2016-08-23 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for processing a decoded audio signal in a spectral domain
FR2972320B1 (fr) * 2011-03-03 2013-10-18 Ass Pour La Rech Et Le Dev De Methodes Et Processus Ind Armines Codage de donnees sans perte pour communication bidirectionnelle dans une session collaborative d'echange de contenu multimedia
US9672838B2 (en) * 2014-08-15 2017-06-06 Google Technology Holdings LLC Method for coding pulse vectors using statistical properties
US10523244B2 (en) * 2016-08-11 2019-12-31 Zebware Ab Device and associated methodoloy for encoding and decoding of data for an erasure code
KR20210058152A (ko) * 2019-11-13 2021-05-24 엘지전자 주식회사 지능형 보안 디바이스를 제어하는 방법

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4631521A (en) 1984-12-31 1986-12-23 Wang Laboratories, Inc. Method and apparatus for differential run-length coding
JPH01296195A (ja) 1988-05-25 1989-11-29 Hitachi Ltd 原子炉の建屋
US5754976A (en) 1990-02-23 1998-05-19 Universite De Sherbrooke Algebraic codebook with signal-selected pulse amplitude/position combinations for fast coding of speech
JP3350385B2 (ja) 1997-01-24 2002-11-25 京セラ株式会社 符号生成方法および符号化方法
JP2943983B1 (ja) * 1998-04-13 1999-08-30 日本電信電話株式会社 音響信号の符号化方法、復号方法、そのプログラム記録媒体、およびこれに用いる符号帳
JP4008607B2 (ja) 1999-01-22 2007-11-14 株式会社東芝 音声符号化/復号化方法
US6236960B1 (en) 1999-08-06 2001-05-22 Motorola, Inc. Factorial packing method and apparatus for information coding
US7363219B2 (en) 2000-09-22 2008-04-22 Texas Instruments Incorporated Hybrid speech coding and system
US6847929B2 (en) * 2000-10-12 2005-01-25 Texas Instruments Incorporated Algebraic codebook system and method
CA2327041A1 (en) 2000-11-22 2002-05-22 Voiceage Corporation A method for indexing pulse positions and signs in algebraic codebooks for efficient coding of wideband signals
JP2002330075A (ja) 2001-05-07 2002-11-15 Matsushita Electric Ind Co Ltd サブバンドadpcm符号化方法、復号方法、サブバンドadpcm符号化装置、復号装置およびワイヤレスマイクロホン送信システム、受信システム
US6662154B2 (en) 2001-12-12 2003-12-09 Motorola, Inc. Method and system for information signal coding using combinatorial and huffman codes
JP2004120623A (ja) * 2002-09-27 2004-04-15 Ntt Docomo Inc 符号化装置、符号化方法、復号装置及び復号方法
KR100711280B1 (ko) 2002-10-11 2007-04-25 노키아 코포레이션 소스 제어되는 가변 비트율 광대역 음성 부호화 방법 및장치
KR100463419B1 (ko) 2002-11-11 2004-12-23 한국전자통신연구원 적은 복잡도를 가진 고정 코드북 검색방법 및 장치
JP3887598B2 (ja) 2002-11-14 2007-02-28 松下電器産業株式会社 確率的符号帳の音源の符号化方法及び復号化方法
JP2005062453A (ja) 2003-08-12 2005-03-10 Nippon Telegr & Teleph Corp <Ntt> 秘話送信装置、秘話受信装置、秘話プログラム
FR2867648A1 (fr) * 2003-12-10 2005-09-16 France Telecom Transcodage entre indices de dictionnaires multi-impulsionnels utilises en codage en compression de signaux numeriques
KR100656788B1 (ko) * 2004-11-26 2006-12-12 한국전자통신연구원 비트율 신축성을 갖는 코드벡터 생성 방법 및 그를 이용한 광대역 보코더
CN100412948C (zh) * 2005-01-27 2008-08-20 广达电脑股份有限公司 语音编码器中搜寻语音讯号的编码向量的搜寻系统及方法
JP4887282B2 (ja) 2005-02-10 2012-02-29 パナソニック株式会社 音声符号化におけるパルス割当方法
ATE513290T1 (de) 2005-03-09 2011-07-15 Ericsson Telefon Ab L M Wenig komplexe codeerregte linearprädiktions- codierung
US20070124381A1 (en) * 2005-11-22 2007-05-31 Zurko Mary E Method and system for providing electronic pickup meetings
LV13528B (en) 2006-09-25 2007-03-20 Ervins Blumbergs Method and apparatus for continuous producing of metallic tifanium and titanium-bases alloys
CN101388210B (zh) 2007-09-15 2012-03-07 华为技术有限公司 编解码方法及编解码器
DK2827327T3 (da) 2007-04-29 2020-10-12 Huawei Tech Co Ltd Fremgangsmåde til excitationsimpulskodning
CN101295506B (zh) 2007-04-29 2011-11-16 华为技术有限公司 脉冲编解码方法及脉冲编解码器
CN100530357C (zh) 2007-07-11 2009-08-19 华为技术有限公司 固定码书搜索方法及搜索器
US8566106B2 (en) 2007-09-11 2013-10-22 Voiceage Corporation Method and device for fast algebraic codebook search in speech and audio coding
US20110026581A1 (en) 2007-10-16 2011-02-03 Nokia Corporation Scalable Coding with Partial Eror Protection
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
CN100578619C (zh) * 2007-11-05 2010-01-06 华为技术有限公司 编码方法和编码器
CN101483043A (zh) 2008-01-07 2009-07-15 中兴通讯股份有限公司 基于分类和排列组合的码本索引编码方法
US8386267B2 (en) 2008-03-19 2013-02-26 Panasonic Corporation Stereo signal encoding device, stereo signal decoding device and methods for them
CN101931414B (zh) 2009-06-19 2013-04-24 华为技术有限公司 脉冲编码方法及装置、脉冲解码方法及装置
US8280729B2 (en) 2010-01-22 2012-10-02 Research In Motion Limited System and method for encoding and decoding pulse indices

Also Published As

Publication number Publication date
US8988256B2 (en) 2015-03-24
US9444491B2 (en) 2016-09-13
WO2008134974A1 (fr) 2008-11-13
US20180152199A1 (en) 2018-05-31
US10666287B2 (en) 2020-05-26
EP2827327B1 (en) 2020-07-29
US20160344405A1 (en) 2016-11-24
US10425102B2 (en) 2019-09-24
EP2157573B1 (en) 2014-11-26
EP2157573A4 (en) 2010-07-28
US20100049511A1 (en) 2010-02-25
US20150155882A1 (en) 2015-06-04
JP6239652B2 (ja) 2017-11-29
ES2529292T3 (es) 2015-02-18
EP2827327A2 (en) 2015-01-21
US10153780B2 (en) 2018-12-11
US8294602B2 (en) 2012-10-23
US20200007153A1 (en) 2020-01-02
US20190074847A1 (en) 2019-03-07
PT2827327T (pt) 2020-08-27
DK2827327T3 (da) 2020-10-12
JP2010526325A (ja) 2010-07-29
US9912350B2 (en) 2018-03-06
US20130021177A1 (en) 2013-01-24
US20160105198A1 (en) 2016-04-14
JP5866307B2 (ja) 2016-02-17
EP2827327A3 (en) 2015-05-06
EP2157573A1 (en) 2010-02-24
JP2013148913A (ja) 2013-08-01
JP5221642B2 (ja) 2013-06-26
US9225354B2 (en) 2015-12-29
JP2016103032A (ja) 2016-06-02

Similar Documents

Publication Publication Date Title
ES2817906T3 (es) Método de codificación de impulsos de las señales de excitación
ES2409843T3 (es) Método de codificación, método de decodificación, y dispositivo y programa para los mismos, y medio o soporte de registro o grabación
US20090002207A1 (en) Information Compression/Encoding Device, Its Decoding Device, Method Thereof, Program Thereof, and Recording Medium Containing the Program
JP2005260969A5 (es)
JP3974036B2 (ja) ハフマン・デコーディングを実施する方法
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
KR20200092511A (ko) 심화 신경망 기반의 비-자동회귀 음성 합성 방법 및 시스템
ES2865725T3 (es) Método y aparato de codificación/decodificación de vectores y reproductor multimedia de transmisión
ES2588356T3 (es) Método y codificador para la codificación conjunta de vectores de una señal de voz
CN101431335B (zh) 用于调制编码和解码的方法、装置和系统
WO2011160537A1 (zh) 脉冲编解码方法及脉冲编解码器
US9413388B1 (en) Modified huffman decoding
JPWO2007108395A1 (ja) 可変長符号の復号装置および復号方法
JP3565147B2 (ja) 復号装置
CN110771045B (zh) 编码装置、解码装置、编码方法、解码方法、以及记录介质
KR101270633B1 (ko) 복수 호프만 테이블을 적용하여 고속 처리가 가능한 멀티미디어용 호프만 디코딩 방법 및 장치
ES2296489B1 (es) Metodo escalable de compresion de audio e imagenes.