ES2391360T3 - Ocultación de error de transmisión en una señal digital con distribución de la complejidad - Google Patents

Ocultación de error de transmisión en una señal digital con distribución de la complejidad Download PDF

Info

Publication number
ES2391360T3
ES2391360T3 ES08838291T ES08838291T ES2391360T3 ES 2391360 T3 ES2391360 T3 ES 2391360T3 ES 08838291 T ES08838291 T ES 08838291T ES 08838291 T ES08838291 T ES 08838291T ES 2391360 T3 ES2391360 T3 ES 2391360T3
Authority
ES
Spain
Prior art keywords
frame
stage
concealment
deleted
signal
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
ES08838291T
Other languages
English (en)
Inventor
Balazs Kovesi
Stéphane RAGOT
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.)
Orange SA
Original Assignee
France Telecom SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom SA filed Critical France Telecom SA
Application granted granted Critical
Publication of ES2391360T3 publication Critical patent/ES2391360T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0204Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using subband decomposition

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)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

Procedimiento de ocultación de errores de transmisión en una señal digital dividida en una multitud de tramastemporales sucesivas en el cual, en la recepción, la señal es susceptible de comprender unas tramas borradas yunas tramas válidas, y para sustituir al menos la primera trama borrada (N) después de una trama válida, se realizanal menos dos etapas, una primera etapa (E1) de preparación que no produce ninguna muestra faltante y quecomprende al menos un análisis de una señal decodificada válida para estimar unos parámetros de ocultación, y unasegunda etapa (E2) de ocultación que produce las muestras faltantes de la señal correspondiente a dicha tramaborrada por medio de unos parámetros estimados, que se caracteriza porque la carga computacional del proceso deocultación de tramas borradas se divide al realizar las etapas que constituyen el proceso de ocultación de tramasborradas en unos intervalos temporales diferentes, la primera etapa realizándose en el intervalo temporal reservadopara el tratamiento de una primera trama y la segunda etapa realizándose en el intervalo temporal reservado para eltratamiento de una segunda trama sucesiva a la primera trama.

Description

Ocultación de error de transmisión en una señal digital con distribución de la complejidad
5 La presente invención se refiere al tratamiento de señales digitales en el campo de las telecomunicaciones. Estas señales pueden ser, por ejemplo, señales de voz, de música, señales de vídeo o, de manera más general, señales multimedia.
La presente invención interviene en un sistema de codificación/decodificación adaptado para la transmisión/recepción de este tipo de señales. De manera más particular, la presente invención se refiere a un tratamiento en la recepción que permite mejorar la calidad de las señales decodificadas en presencia de pérdidas de bloques de datos.
Existen diferentes técnicas para convertir al formato digital y comprimir una señal digital de audio. Las técnicas más 15 habituales son:
-
los métodos de codificación de forma de onda, como la codificación MIC (por “Modulación por Impulsos Codificados”) y MICDA (por “Modulación por Impulso y Codificación Diferencial Adaptativa”), también llamados “PCM” y “ADPCM” en inglés;
-
los métodos de codificación paramétrica por análisis de síntesis como la codificación CELP (por “Code Excited Linear Prediction”); y
-
los métodos de codificación perceptual en sub-bandas o por transformada.
25 Estas técnicas tratan la señal de entrada de forma secuencial muestra por muestra (MIC o MICDA) o por bloques de muestras llamadas “tramas” (CELP y codificación por transformada). Par todos estos codificadores, los valores codificados se transforman a continuación en un tren de datos que se transmite por un canal de transmisión.
De acuerdo con la calidad de este canal y el tipo de transporte, algunas perturbaciones pueden afectar a la señal transmitida y producir errores en el tren de datos que recibe el decodificador. Estos errores pueden intervenir de manera aislada en el tren de datos, pero se producen muy a menudo por ráfagas. Es entonces un paquete de bits correspondiente a una porción completa de señal el que resulta erróneo o no recibido. Este tipo de problema se encuentra, por ejemplo, en el caso de las transmisiones en las redes móviles. También se encuentra en las
35 transmisiones en las redes por paquetes y, en particular, en las redes de tipo Internet.
Cuando el sistema de transmisión o los módulos encargados de la recepción permiten detectar que los datos recibidos tienen muchos errores (por ejemplo en las redes móviles), o que un bloque de datos no se ha recibido o está corrompido por unos errores binarios (es el caso de sistemas de transmisión por paquetes, por ejemplo), entonces se ponen en marcha unos procedimientos de ocultación de los errores.
La trama actual que hay que decodificar se declara entonces borrada (“bad frame” en inglés). Estos procedimientos permiten extrapolar en el decodificador las muestras de la señal faltante a partir de las señales y datos resultantes de las tramas anteriores.
45 Este tipo de técnicas se han puesto en práctica principalmente en el caso de los codificadores paramétricos y predictivos (técnicas de recuperación/ocultación de las tramas borradas). Estas permiten limitar mucho la degradación subjetiva de la señal que se percibe en el decodificador en presencia de tramas borradas. Estos algoritmos se basan en la técnica que se utiliza para el codificador y el decodificador, y constituyen de hecho una extensión del decodificador. Los dispositivos de ocultación de tramas borradas tienen como objetivo extrapolar los parámetros de la trama borrada a partir de la (o de las) últimas tramas anteriores consideradas válidas.
Ciertos parámetros manipulados o codificados por los codificadores predictivos presentan una fuerte correlación entre tramas (es el caso de los parámetros LPC (por « Linear Predictive Coding » en inglés) que representan la
55 envolvente del espectro, y de los parámetros LTP (por « Long Term Prediction » en inglés) de predicción a largo plazo que representa la periodicidad de la señal (para los sonidos sonoros, por ejemplo). A causa de esta correlación, resulta mucho más ventajoso reutilizar los parámetros de la última trama válida para sintetizar la trama borrada que utilizar unos parámetros erróneos o aleatorios.
En la generación de excitación CELP, los parámetros de la trama borrada se obtienen tradicionalmente de la siguiente manera.
Los parámetros LPC de una trama que hay que reconstruir se obtienen a partir de los parámetros LPC de la última trama válida, mediante la simple copia de los parámetros o también con la introducción de un cierto amortiguamiento
65 (técnica que se utiliza, por ejemplo, en el codificador normalizado G723.1). Véase también el documento US 2006/0171373. A continuación se detecta una sonorización o una no sonorización en la señal de voz para
determinar el grado de armonicidad de la señal al nivel de la trama borrada.
Si la señal es sorda, se puede generar una señal de excitación de manera aleatoria (mediante la extracción de una palabra de código de la excitación pasada, mediante un ligero amortiguamiento de la ganancia de la excitación 5 pasada, mediante la selección aleatoria en la excitación pasada, o utilizando también unos códigos transmitidos que pueden ser totalmente erróneos).
Si la señal es sonora, el periodo de pitch (denominado también “plazo LTP”) es, por lo general, el calculado para la trama anterior, eventualmente con una ligera “fluctuación” (aumento del valor del plazo LTP para las tramas de error consecutivo, la ganancia LTP considerándose muy próxima a 1 o igual a 1). La señal de excitación está, por lo tanto, limitada a la predicción a largo plazo realizada a partir de una excitación pasada.
La complejidad de cálculo de este tipo de extrapolación de tramas borradas es, por lo general, comparable a la de una decodificación de una trama válida (o “good frame” en inglés): en lugar de la decodificación y de la cuantificación
15 inversa de los parámetros se utilizan los parámetros estimados a partir del pasado, eventualmente ligeramente modificados, y a continuación se sintetiza la señal reconstruida de la misma manera que para una trama válida utilizando los parámetros que se han obtenido de este modo.
Otros tipos de codificación no permiten la extrapolación de una trama borrada por extensión del decodificador utilizando los parámetros estimados a partir del pasado. Es el caso, por ejemplo, de la codificación temporal MIC que codifica la señal muestra por muestra, sin recurrir a un modelo de predicción de voz. Ningún parámetro está directamente disponible en el decodificador para realizar la extrapolación.
Para extrapolar las tramas borradas con la misma eficacia que en el caso de los codificadores paramétricos, el
25 algoritmo de ocultación de tramas borradas debe, por lo tanto, en primer lugar estimar él mismo los parámetros de extrapolación a partir de la señal decodificada pasada. Este necesita tradicionalmente unos análisis de correlación a corto plazo (LPC) y a largo plazo (LTP), y eventualmente la clasificación de la señal (sonora, sorda, explosiva, etc.) lo que aumenta de manera considerable la carga computacional. Estos análisis se describen, por ejemplo, en el documento titulado “Method of packet errors cancellation suitable for any speech and sound compression scheme” de B. KOVESI y D. Massaloux, en ISIVC-2004, International Symposium on Image/Video Communications over fixed and mobile networks, julio de 2004. De acuerdo con la técnica que se ha descrito, el procedimiento de ocultación de una trama borrada consiste, por lo tanto, en una primera parte de análisis y una segunda parte de extrapolación que produce unas muestras faltantes de la señal correspondiente a la trama borrada.
35 No obstante, para los borrados consecutivos estos análisis solo se hacen una única vez, en la primera trama borrada, a continuación los parámetros estimados de este modo (eventualmente atenuados ligeramente según la longitud de borrado) se utilizan durante toda la duración de la extrapolación.
En otras palabras, este aumento de carga computacional debido a los análisis de la señal pasada es el mismo que la trama borrada, esto es de 5 ms o de 40 ms.
Sin embargo, para dimensionar la plataforma material - por ejemplo un procesador de tipo DSP (por « Digital Signal Processor » en inglés) - se tiene en cuenta el caso más desfavorable, es decir la complejidad máxima. Este peor caso de complejidad se encuentra, por lo tanto, en el caso de tramas cortas.
45 En efecto, los análisis de la señal pasada (LPC, LTP, clasificación) requieren un número dado de operaciones por trama, con independencia del tamaño de la trama. La complejidad de estos análisis se mide en número de operaciones por segundo. Esta complejidad aumenta, por lo tanto, cuanto más corta es la longitud de trama, ya que el número de operaciones por segundo viene dado por el número de operaciones por trama dividido por la longitud de trama; el número de operaciones por segundo es, por lo tanto, inversamente proporcional a la longitud de trama.
La complejidad media también es un parámetro importante ya que influye en el consumo de energía del procesador y de este modo en el tiempo de autonomía de la batería del equipo en el que este se coloca, como por ejemplo un terminal móvil.
55 En determinados casos esta carga computacional se mantiene razonable y comparable a la carga computacional de la decodificación normal. Por ejemplo, en el caso del codificador normalizado G.722, se ha normalizado un algoritmo de ocultación de tramas borradas con una baja complejidad de acuerdo con la recomendación ITU-T G.722, apéndice IV. La complejidad de cálculo de la extrapolación de una trama borrada de 10 ms es en este caso de 3 WMOPS (por « Weighted Million Operations Per Second »), lo que es prácticamente idéntico a la complejidad de la decodificación de una trama válida.
Esto ya no se verifica si el codificador G722 trata unas tramas más cortas, de 5 ms por ejemplo.
65 Además, la complejidad de este tipo de algoritmo de ocultación de tramas borradas puede ser perjudicial en el caso de codificadores de muy baja complejidad como el codificador normalizado de acuerdo con la recomendación ITU-T G.711, apéndice IV. La complejidad de cálculo de la extrapolación de una trama borrada de 10 ms es en este caso de 3 WMOPS (por « Weighted Million Operations Per Second »), lo que es prácticamente idéntico a la complejidad de la decodificación de una trama válida.
5 Esto ya no es verificable si el decodificador G722 trata unas tramas más cortas, de 5 ms por ejemplo.
Además, la complejidad de este algoritmo de ocultación de tramas borradas puede resultar perjudicial en el caso de codificadores de muy baja complejidad, como el codificador normalizado de acuerdo con la recomendación ITU-T
G.711 (MIC) y sus extensiones como el codificador G.711 WB, que está en proceso de normalización, en particular para la decodificación de la banda baja, muestreada a 8 kHz y codificada por un codificador G.711, seguido de una capa de mejora.
En efecto, la complejidad de la codificación/decodificación MIC es del orden de 0,3 WMOPS, mientras que la de un algoritmo eficaz de ocultación de tramas borradas es tradicionalmente del orden de 3 WMOPS basándose en unas
15 tramas de 10 ms.
La presente invención, tal y como está definida en las reivindicaciones 1, 8 y 10, va a mejorar la situación.
Esta propone, para ello, un procedimiento de ocultación de errores de transmisión en una señal digital dividida en una multitud de tramas sucesivas asociadas a unos intervalos temporales diferentes en el cual, en la recepción la señal es susceptible de comprender unas tramas borradas y unas tramas válidas, y para sustituir al menos la primera trama borrada después de una trama válida, se realizan al menos dos etapas, una primera etapa de preparación que no produce ninguna muestra faltante y que comprende al menos un análisis de una señal decodificada válida, y una segunda etapa de ocultación que produce las muestras faltantes de la señal
25 correspondiente a dicha trama borrada. El procedimiento es tal que la primera etapa y la segunda etapa se realizan en unos intervalos temporales diferentes.
De este modo, las etapas que constituyen el proceso de ocultación de tramas borradas al realizarse en unos intervalos temporales diferentes, esto permite repartir la carga computacional y de este modo reducir la complejidad, en particular el peor caso de complejidad. Al reducirse el peor caso de complejidad, entonces el dimensionado del procesador se puede revisar a la baja.
Por etapa de preparación se entienden unas operaciones específicas para la ocultación, que no serían necesarias para la decodificación de tramas válidas únicamente.
35 En el estado de la técnica, por ejemplo en decodificación CELP, se utilizan unos parámetros decodificados en las tramas válidas anteriores para la ocultación de pérdidas. De acuerdo con la invención, estos parámetros no se transmiten al decodificador y se deben estimar mediante análisis con el fin de sintetizar la señal faltante en la ocultación de pérdidas.
En un primer modo de realización, la etapa de preparación se realiza en un intervalo temporal asociado a una trama válida y la etapa de ocultación se realiza en un intervalo temporal asociado a una trama borrada.
Al realizarse la etapa de preparación antes del intervalo temporal correspondiente a una trama borrada, la segunda
45 etapa ya no necesita una complejidad tan alta en el intervalo temporal correspondiente a la trama borrada, lo que reduce en este intervalo la complejidad. Es, por lo general, durante este intervalo cuando se mide el peor caso de complejidad. Este se ve así reducido en este modo de realización.
En un segundo modo de realización, la etapa de preparación se realiza en el intervalo temporal asociado a una trama borrada y la etapa de ocultación se realiza en un intervalo temporal siguiente.
La primera etapa ya no se realiza aquí de manera sistemática en la recepción de una trama válida, sino en la recepción de una trama borrada. Por lo tanto, de este modo se reduce tanto el peor caso de complejidad mediante la distribución de la carga computacional como la complejidad media con respecto al primer modo de realización.
55 De manera ventajosa, el segundo modo de realización del procedimiento de acuerdo con la invención es tal que se lleva a cabo en la decodificación de una primera banda de frecuencia en un sistema de decodificación que comprende una decodificación en una primera banda de frecuencia y una decodificación en una segunda banda de frecuencia, la decodificación en la segunda banda de frecuencia comprendiendo un retardo temporal con respecto a la decodificación en la primera banda de frecuencia.
De este modo, el retardo que introduce la realización de la segunda etapa en el intervalo temporal siguiente es transparente para este tipo de decodificación que presenta ya un retardo temporal entre la decodificación de la primera banda de frecuencia y la segunda banda de frecuencia.
65 La invención está en particular adaptada al caso en el que la primera banda de frecuencia corresponde a la banda baja de una decodificación de tipo G.711 WB y la segunda banda de frecuencia corresponde a la banda alta de una decodificación de tipo G.711 WB, el retardo de la señal resultante de la etapa de ocultación correspondiendo al retardo de decodificación de la banda alta con respecto a la banda baja.
5 En un modo de realización particular, la etapa de preparación comprende una etapa de análisis LPC y una etapa de análisis LTP, y la etapa de ocultación comprende una etapa de cálculo de una señal residual LPC, una etapa de clasificación y una etapa de extrapolación de muestras faltantes.
En otro modo de realización particular, la etapa de preparación comprende una etapa de análisis LPC, una etapa de análisis LTP y una etapa de cálculo de una señal residual LPC, y la etapa de ocultación comprende una etapa de clasificación y una etapa de extrapolación de muestras faltantes.
La presente invención se refiere también a un dispositivo de ocultación de errores de transmisión en una señal digital dividida en una multitud de tramas sucesivas asociadas a unos intervalos temporales diferentes que comprenden
15 unos dispositivos de preparación que no producen ninguna muestra faltante y que comprenden al menos unos dispositivos de análisis de una señal decodificada válida y unos dispositivos de ocultación que producen las muestras faltantes de la señal correspondiente a una trama borrada. El dispositivo es tal que dichos dispositivos se aplican en unos intervalos temporales diferentes para sustituir al menos la primera trama borrada después de una trama válida.
Esta proporciona también un decodificador de señal digital que comprende un dispositivo de ocultación de errores de transmisión de acuerdo con la invención.
Por último, la invención se refiere a un programa informático destinado a almacenarse en una memoria de un
25 dispositivo de ocultación de errores de transmisión. Este programa informático es tal que comprende unas instrucciones de código para la puesta en marcha de las etapas del procedimiento de ocultación de errores de acuerdo con la invención, cuando lo ejecuta un procesador de dicho dispositivo de ocultación de errores de transmisión.
Otras ventajas y características de la invención se mostrarán en la lectura de la descripción detallada, que se da a continuación a título de ejemplo, y de los dibujos que se anexan en los que:
-
la figura 1 ilustra el procedimiento de ocultación de acuerdo con la invención en un primer modo de realización;
35 - la figura 2 ilustra el procedimiento de ocultación de acuerdo con la invención en un segundo modo de realización;
-
las figuras 3a y 3b ilustran en forma de tablas unos ejemplos del segundo modo de realización de la invención;
-
la figura 4 ilustra un codificador de tipo G.711 WB que se puede utilizar en el marco de la invención;
-
la figura 5 ilustra un decodificador de tipo G.711 WB que lleva a cabo el segundo modo de realización de la invención;
-
la figura 6 ilustra el procedimiento de ocultación de acuerdo con la invención en su segundo modo de realización y 45 en un decodificador de tipo G.711 WB; y
-
la figura 7 ilustra un dispositivo de ocultación de acuerdo con la invención.
En los codificadores normalizados G.711, por ejemplo, el método de ocultación de tramas borradas que se describe en el documento “Method of packet errors cancellation suitable for any speech and sound compression scheme” de
B. KOVESI y D. Massaloux, en ISIVC-2004, International Symposium on Image/Video Communications over fixed and mobile networks, julio de 2004, se realiza de la siguiente manera.
Al detectar una primera trama borrada (perdida o errónea) el módulo de ocultación de tramas borradas analiza la
55 señal memorizada pasada y a continuación sintetiza (o extrapola) la trama faltante utilizando los parámetros estimados.
Si se detecta la pérdida de una trama consecutiva, el módulo de ocultación de tramas borradas continúa sintetizando la señal faltante utilizando los mismos parámetros que en la trama anterior extrapolada, de forma eventual ligeramente atenuados.
Con la recepción de una primera trama válida después de un borrado la continuidad entre la señal extrapolada durante el borrado y la señal decodificada válida está garantizada mediante un dispositivo simple y eficaz de alisado
o también de “fundido encadenado”. Este fundido encadenado se realiza de la manera siguiente: para una longitud
65 predeterminada tradicionalmente de 5-10 ms se continúa sintetizando la señal extrapolada en paralelo a la decodificación de la señal en la trama válida. La señal de salida es entonces la suma ponderada de estas dos señales reduciendo de manera progresiva el peso de la señal extrapolada y aumentando al mismo tiempo el peso de la señal válida.
Con fines ilustrativos, suponemos las cifras de complejidad siguientes: 5
• codificación de una trama → 0,15 WMOPS,
decodificación de una trama → 0,15 WMOPS, 10 • análisis (LPC, LTP, clasificación) al inicio del borrado → 2,5 WMOPS,
• extrapolación de una trama utilizando los parámetros estimados mediante los análisis → 0,5 WMOPS,
fundido encadenado entre la señal extrapolada y la primera trama decodificada después de un borrado → 0,05 15 WMOPS.
La tabla 1 siguiente ilustra la evolución de la complejidad de este tipo de decodificador en el caso de que se borre una única trama (nº. 3).
Número de la trama
1 2 3 4 5 6
Carácter de la trama
válida válida borrada válida válida válida
Codificación (0,15 WMOPS)
1 1 1 1 1 1
Decodificación (0,15 WMOPS)
1 1 0 1 1 1
Análisis (2,5 WMOPS)
0 0 1 0 0 0
Extrapolación (0,5 WMOPS)
0 0 1 1 0 0
Fundido encadenado (0,05 WMOPS)
0 0 0 1 0 0
Complejidad total (WMOPS)
0,3 0,3 3,15 0,85 0,3 0,3
20 Tabla 1. Ejemplo de evolución de la complejidad en el caso de una trama borrada
De este modo se puede observar el pico de complejidad (3,15 WMOPS) que el DSP debe poder soportar, durante el periodo de la trama borrada. Este pico de complejidad se debe esencialmente al hecho de que todo el proceso de ocultación de la trama borrada (parte de análisis y parte de extrapolación) se realiza durante la longitud de la trama
25 borrada.
La complejidad media para estas seis tramas es de 0,87 WMOPS.
De la misma manera, la tabla 2 siguiente ilustra el caso de 2 tramas consecutivas (nº. 3 y nº. 4) borradas. 30
Número de la trama
1 2 3 4 5 6
Carácter de la trama
válida válida borrada borrada válida válida
Codificación (0,15 WMOPS)
1 1 1 1 1 1
Decodificación (0,15 WMOPS)
1 1 0 0 1 1
Análisis (2,5 WMOPS)
0 0 1 0 0 0
Extrapolación (0,5 WMOPS)
0 0 1 1 1 0
Fundido encadenado (0,05 WMOPS)
0 0 0 0 1 0
Complejidad total (WMOPS)
0,3 0,3 3,15 0,65 0,85 0,3
Tabla 2. Ejemplo de evolución de la complejidad en el caso de dos tramas borradas
También se puede observar el pico de complejidad (3,15 WMOPS) durante la longitud de la primera trama borrada ya que de nuevo todo el proceso de ocultación de la trama borrada (parte de análisis y parte de extrapolación) se
35 realiza durante la longitud de una trama, la de la primera trama borrada. Por el contrario, la complejidad para las tramas siguientes borradas es claramente más baja y la complejidad media para estas seis tramas es de 0,925 WMOPS, apenas mayor que en el caso de una única trama borrada. El aumento de la duración del borrado no aumenta de forma significativa la complejidad.
40 De este modo, en este tipo de codificador/decodificador del estado de la técnica, para cada trama que se recibe en el decodificador, una variable bfi (por “bad frame indicator” en inglés) indica que la trama actual se ha borrado (bfi = 1) y permite seleccionar el tipo de decodificación, decodificación normal u ocultación de tramas borradas. De este modo, si la trama es válida (bfi = 0), se procede a una decodificación normal (con una complejidad de 0,15 WMOPS), en caso contario (bfi = 1), la ocultación de trama borrada (con una complejidad de 3 WMOPS) permite
5 extrapolar la trama faltante a partir de la señal pasada. Este proceso se repite en cada trama.
La presente invención pretende reducir esta complejidad repartiendo las etapas de la ocultación de tramas borradas a lo largo de varias tramas.
10 De este modo, la figura 1 ilustra un primer modo de realización de la invención. Para sustituir al menos la primera trama borrada después de una trama válida, el procedimiento de ocultación de acuerdo con la invención comprende al menos dos etapas, una primera etapa (E1) de preparación que no produce ninguna muestra faltante, una segunda etapa (E2) de ocultación que comprende la producción de muestras faltantes de la señal correspondiente a la trama borrada. Se precisa que por etapa de preparación se entienden las operaciones específicas para la ocultación, que
15 no serían necesarias para la decodificación de tramas válidas únicamente.
Estas dos etapas E1 y E2 se realizan en unos intervalos temporales diferentes asociados a las tramas sucesivas que se reciben en el decodificador. La figura 1 muestra un ejemplo de realización en el caso en el que la trama N, recibida en el codificador, está borrada.
20 De este modo, en este modo de realización, se trata una primera trama N-2 recibida en un tren de datos procedente del canal del comunicación mediante un módulo de demultiplexación (DEMUX) 14 y a continuación se decodifica mediante un módulo de decodificación normal (DE-NO) 15.
25 Esta señal decodificada constituye la trama N-2, con la referencia 20, en la salida del decodificador que se envía por ejemplo a la tarjeta de sonido 24. También se suministra a la entrada de un módulo de preparación 16 que lleva a cabo la primera etapa E1 de preparación. El resultado de esta etapa se memoriza a continuación en 17 (MEM).
Este mismo proceso de demultiplexación, decodificación normal, constitución de la trama N-1, con la referencia 21,
30 en la salida del decodificador y memorización del resultado de la primera etapa se realiza también para la trama N-1 válida.
En este modo de realización, la etapa de preparación se realiza para todas las tramas válidas en previsión de una potencial trama borrada.
35 Cuando se recibe en el decodificador una trama borrada N, con la referencia 12, la etapa E2 de ocultación se realiza teniendo en cuenta al menos un resultado memorizado en las tramas anteriores. Esta segunda etapa de ocultación genera unas muestras faltantes para formar la trama N, con la referencia 22, en la salida del decodificador.
40 Cuando se recibe una trama válida N+1 en la entrada del decodificador, esta experimenta una etapa de demultiplexación, de decodificación normal como todas las tramas válidas, pero también una etapa de “fundido encadenado” FOND, con la referencia 19, que va a permitir alisar la señal decodificada entre la señal reconstruida para la trama N y la señal decodificada para la trama N+1. Esta etapa de fundido encadenado consiste en continuar, en paralelo a la decodificación normal, la extrapolación EXTR, con la referencia 26, de las muestras faltantes de la
45 etapa E2. La señal de salida es entonces la suma ponderada de estas dos señales reduciendo de forma progresiva el peso de la señal extrapolada y aumentando al mismo tiempo el peso de la señal válida.
A continuación la señal que se obtiene en la salida del decodificador se suministra, por ejemplo, a una tarjeta de sonido 24 para seguidamente restituirla, por ejemplo, por medio de unos altavoces 25.
50 De este modo, el hecho de realizar de manera sistemática la etapa de preparación después de la decodificación de una trama válida permite reducir el peor caso de complejidad en el intervalo temporal correspondiente a la trama borrada N.
55 En el caso de que una trama esté borrada, una parte de las operaciones ya está hecha, únicamente se realiza la etapa E2 de ocultación que produce las muestras faltantes de la señal correspondiente a la trama borrada durante la longitud de la trama. La carga computacional para esta trama se ve, por lo tanto, reducida.
La etapa de preparación E1 puede, por ejemplo, contener una primera parte del análisis, como por ejemplo el
60 análisis LPC y el análisis LTP. Estas etapas de análisis se detallan en particular en el documento “Method of packet errors cancellation suitable for any speech and sound compression scheme” citado con anterioridad.
La etapa de ocultación E2 contiene entonces unas etapas de cálculo de la señal residual LPC (que se utiliza en la fase de extrapolación), de clasificación de la señal y de extrapolación de las muestras faltantes (generación de la
65 señal de excitación a partir de la señal residual y filtrado de síntesis).
En otra variante de realización, la etapa E1 puede contener a la vez los análisis LPC, LTP y el cálculo de la señal residual LPC, la etapa E2 conteniendo entonces las etapas de clasificación y de extrapolación.
El orden de ejecución de las diferentes tareas de ocultación no es único.
5 Por supuesto, hay que cumplir con algunas restricciones como el hecho de que las etapas de clasificación y de extrapolación son las últimas operaciones y que el análisis LPC precede al cálculo de la señal residual LPC.
Algunos ejemplos posibles para el orden de las operaciones son: 10
Análisis LPC, análisis LTP, cálculo de la señal residual LPC, clasificación y extrapolación;
Análisis LTP, análisis LPC, cálculo de la señal residual LPC, clasificación y extrapolación;
15 • Análisis LPC, cálculo de la señal residual LPC, análisis LTP, clasificación y extrapolación.
De este modo la distribución de las diferentes tareas se puede adaptar de diferentes formas y no se limita a los ejemplos que se han citado hasta aquí.
20 Además, las operaciones de una tarea se pueden ejecutar en varias etapas. Por ejemplo, en otra variante de realización, la etapa E1 puede contener a la vez el análisis LPC, el cálculo de la señal residual LPC y la primera parte del análisis LTP, la etapa E2 conteniendo entonces la segunda parte del análisis LTP, la clasificación y la extrapolación.
25 Esto demuestra que se puede distribuir con libertad la complejidad de cálculo del análisis entre las etapas E1 y E2 para poder reducir al máximo el peor caso de complejidad. La distribución óptima depende de la complejidad de los demás cálculos de decodificación.
La tabla 3 siguiente ilustra un ejemplo numérico en el que la primera parte del análisis (análisis_p1) tiene una
30 complejidad de 1,15 WMOPS, la segunda parte del análisis (análisis_p2) tiene una complejidad de 1,35 WMOPS, la etapa de preparación E1 conteniendo la primera parte del análisis (análisis_p1) y la etapa de ocultación E2 conteniendo la segunda parte del análisis (análisis_p2) y la extrapolación (extrapolación).
Esta tabla se refiere al caso en el que se borran dos tramas consecutivas. Hay que señalar que para la segunda
35 trama borrada solo es necesaria la etapa « extrapolación » ya que se reutilizan los parámetros producidos en las etapas de análisis (análisis p1 y p2). En determinadas realizaciones estos parámetros se pueden modificar (atenuar) ligeramente. Esta operación de atenuación de los parámetros es opcional y resulta poco costosa en carga computacional, es la razón por la que no se incluye en los ejemplos que se dan.
Número de la trama
1 2 3 4 5 6
Carácter de la trama
válida válida borrada borrada válida válida
Codificación (0,15 WMOPS)
1 1 1 1 1 1
Decodificación (0,15 WMOPS)
1 1 0 0 1 1
Análisis_p1 (1,15 WMOPS)
1 1 0 0 1 1
Análisis_p2 (1,35 WMOPS)
0 0 1 0 0 0
Extrapolación (0,5 WMOPS)
0 0 1 1 1 0
Fundido encadenado (0,05 WMOPS)
0 0 0 0 1 0
Complejidad total (WMOPS)
1,45 1,45 2,0 0,65 2,0 1,45
40 Tabla 3. Ejemplo de evolución de la complejidad en el caso de 2 tramas borradas con análisis en dos partes
Se puede observar que el peor caso de complejidad se ve claramente reducido con respecto al caso presentado en la tabla 2 anterior, esta pasa de 3,15 WMOPS a 2,0 WMOPS. Esto se obtiene sin retardo adicional, tal y como se puede observar en la figura 1.
45 No obstante, la complejidad del tratamiento de una trama válida se ve incrementada de 0,3 WMOPS a 1,45 WMOPS con respecto al caso presentado en la tabla 2 anterior. En ausencia de errores de transmisión la complejidad media se ve, por lo tanto, multiplicada por casi 5, lo que aumenta el consumo del DSP y reduce su autonomía en caso de funcionamiento con batería.
50 Un segundo modo de realización de la invención ofrece una solución que reduce a la vez el peor caso de complejidad sin aumentar la complejidad media. De este modo, en referencia a la figura 2, se ilustra un segundo modo de realización en el caso en el que la trama N, con la referencia 31, recibida en el decodificador está borrada.
En este ejemplo, la etapa de preparación E1 solo se realiza en el caso de que una trama esté borrada y ya no de
5 manera sistemática en cada trama válida. La etapa de preparación se realiza de este modo en el intervalo temporal correspondiente a la trama N borrada. La señal en la salida del decodificador tiene, por lo tanto, un retardo temporal correspondiente a un intervalo temporal de una trama.
De este modo, tal y como se ilustra en la figura 2, para una trama válida N-1, con la referencia 30, recibida en el
10 decodificador, esta se trata en el módulo de demultiplexación DEMUX 14, se decodifica normalmente en 15 y la señal decodificada se memoriza en MEM 17 en una memoria tampón. Esta señal decodificada memorizada se envía a la tarjeta de sonido 24 en la salida del decodificador después de la decodificación de la trama N, con la referencia 31, recibida.
15 De este modo, con la detección de la trama borrada N, se dispone de la longitud de dos tramas para extrapolar la señal que sustituye esta trama N. Durante el intervalo temporal correspondiente a la trama N borrada, la etapa de preparación E1 se realiza en la señal decodificada y memorizada correspondiente a la trama N-1 recibida. La etapa E2 de ocultación, que comprende la extrapolación de las muestras faltantes correspondiente a la trama N, se realiza en el intervalo temporal correspondiente a la trama N+1, recibida en el decodificador.
20 Durante este intervalo temporal, la trama N+1 también se trata en el módulo de demultiplexación, se decodifica y se memoriza para utilizarse a continuación en el intervalo temporal correspondiente a la trama N+2 en la etapa FOND 19 de fundido encadenado.
25 La trama N+1 resultante se envía a la tarjeta de sonido en 43. Se introduce, por lo tanto, en la salida del decodificador una separación temporal correspondiente en este ejemplo de realización a una trama. Esto es en general aceptable en el caso, por ejemplo, de un codificador/decodificador de tipo G.711 que tiene un retardo muy pequeño.
30 También se propone una ilustración en forma de tabla de este segundo modo de realización en las figuras 3a y 3b.
La figura 3a muestra un ejemplo en el que la trama nº. 4 está borrada. La primera línea 310 muestra los números de las tramas recibidas en el decodificador. La segunda línea 311 muestra el número de la trama decodificado en la memoria tampón.
35 Al detectar la pérdida de la trama nº. 4 se realiza la etapa de preparación comenzando el análisis (análisis_p1) en las tramas pasadas decodificadas (nº. 1 - nº. 3) tal y como se muestra en la línea 312. Al final de la trama nº. 4 se envía a la tarjeta de sonido la trama nº. 3 memorizada con anterioridad tal y como se ilustra la línea 316. Para la trama siguiente la memoria tampón (o “buffer” en inglés) está vacía, pero la segunda parte del análisis (análisis_p2) en la
40 línea 313 y la síntesis de la extrapolación de la trama nº. 4 en la línea 314 están terminadas. La trama nº. 4 extrapolada se puede enviar a la tarjeta de sonido. Al mismo tiempo se realiza la decodificación de la trama nº. 5 y el resultado se memoriza tal y como se ilustra en la línea 311. Para la trama siguiente, se extrapola la trama nº. 5 (línea 314) para el fundido encadenado con la trama nº. 5 memorizada (línea 315). El resultado de este fundido encadenado se envía a la tarjeta de sonido (línea 316). A continuación se decodifica y se memoriza la trama nº. 6.
45 La tabla que se representa en la figura 3b ilustra el caso en el que la trama nº. 4 y la trama nº. 5 a la vez están borradas. Las tramas que se reciben en el decodificador se ilustran en la línea 410. De la misma forma que para la figura 3a, la línea 411 representa las tramas decodificadas y memorizadas en la memoria tampón.
50 La primera etapa de preparación (análisis_p1) se realiza en el intervalo temporal de la primera trama borrada (línea 412). La segunda parte del análisis (análisis_p2) se realiza en el intervalo temporal siguiente, es decir aquí en el intervalo correspondiente a la segunda trama borrada (línea 413).
La extrapolación de las muestras faltantes se realiza en el intervalo temporal correspondiente a la segunda trama
55 borrada y también para las dos tramas siguientes (línea 414) en los intervalos temporales siguientes para poder ejecutar el fundido encadenado (línea 415) en la trama 6 válida. A continuación se decodifica y se memoriza la trama nº. 7.
La línea 416 muestra los números de las tramas de salida del decodificador con una separación temporal de una 60 trama con respecto a la señal que se recibe en el decodificador.
La tabla 4 siguiente ilustra la evolución de la complejidad correspondiente al ejemplo concreto de la figura 3a. Esta vez el resultado óptimo (la más baja complejidad máxima) se obtiene dividiendo el análisis de la siguiente manera:
65 • parte 1 → 1,6 WMOPS,
• parte 2 → 0,9 WMOPS.
Número de la trama
2 3 4 5 6 7
Carácter de la trama
válida válida borrada válida válida válida
Codificación (0,15 WMOPS)
1 1 1 1 1 1
Decodificación (0,15 WMOPS)
1 1 0 1 1 1
Análisis_p1 (1,6 WMOPS)
0 0 1 0 0 0
Análisis_p2 (0,9 WMOPS)
0 0 0 1 0 0
Extrapolación (0,5 WMOPS)
0 0 0 1 1 0
Fundido encadenado (0,05 WMOPS)
0 0 0 0 1 0
Complejidad total (WMOPS)
0,3 0,3 1,75 1,7 0,85 0,3
Tabla 4. Ejemplo de evolución de la complejidad en el caso de una trama memorizada con una trama borrada
5 Se observa de este modo una reducción de la complejidad máxima en comparación con la solución presentada en la anterior tabla 3. Con respecto al estado de la técnica presentado en la tabla 1, la complejidad máxima se divide prácticamente por dos mientras que la complejidad media no varía (0,87 WMOPS). Hay que señalar, además, que esta solución no aumenta la complejidad de la decodificación de una trama recibida válida.
10 No obstante, hay que señalar que en el caso que nos ocupa se introduce un retardo en la señal decodificada con respecto a la señal que se recibe en el decodificador.
Los ejemplos que se han dado hasta aquí se han considerado con una división del proceso de ocultación de errores de transmisión en dos etapas. Por supuesto, el procedimiento objeto de la presente invención se puede generalizar
15 sin dificultad para una división en tres etapas, e incluso en más. Una división de este tipo también puede resultar ventajosa en ciertos casos, cuando la desviación entre la complejidad de la decodificación normal y la del algoritmo de ocultación de tramas borradas es muy grande. En ese caso, se puede repartir la complejidad del algoritmo de ocultación de tramas borradas en tres o más tramas. Las diferentes etapas realizándose en unos intervalos temporales diferentes.
20 El segundo modo de realización así descrito resulta particularmente interesante cuando se lleva a cabo en determinados decodificadores, como por ejemplo en el decodificador G.711 WB (por G711-WideBand en inglés, banda ensanchada) que está en proceso de normalización.
25 Vamos a describir, en referencia a la figura 4, un codificador de tipo G.711 WB. La codificación G.711 WB consiste en añadir hasta 2 capas de mejora de 16 kbit/s a la capa denominada “capa de núcleo” G.711 de 64 kbit/s. Las configuraciones posibles de tren de datos, llamadas Rx donde x identifica los flujos, son:
-
Flujo de 64 kbit/s (R1): datos G.711 únicamente. 30
-
Flujo de 80 kbit/s (64+16 kbit/s) (R2a): datos G.711 y datos de mejora de calidad en la banda 50-4.000 Hz.
-
Flujo de 80 kbit/s (64+16 kbit/s) (R2b): datos G.711 y datos de extensión de la banda del G.711 para la parte 4.000
7.000 Hz. 35
-
Flujo de 96 kbit/s ((64+16)+16 kbit/s) (R3): datos G.711, datos de mejora de calidad en la banda 50-4.000 Hz, datos de extensión de la banda del G.711 para la parte 4.000-7.000 Hz.
De este modo los flujos R1 y R2a conducen a una reconstrucción en banda estrecha (50-4.000 Hz) mientras que los
40 flujos R2b y R3 conducen a una reconstrucción en banda ensanchada (50-7.000 Hz). Se describe un codificador propietario similar a G.711 WB en el documento Y. Hiwasaki y H. Ohmuro y T. Mori y S. Kurihara y A. Kataoka, “A
G.711 Embedded Wideband Speech Coding for VoIP Conferences”, en IEICE Transactions on Information and Systems, vol. E89-D, nº. 9, septiembre de 2006, págs. 2.542-2.552.
45 La figura 4 muestra un ejemplo de codificador que se encuentra dentro del marco de la normalización G.711 WB. La entrada del codificador es una señal de audio S16 muestreada a 16 kHz. El codificador comprende un banco de filtros en cuadratura 101 que separan la banda baja (50-7.000 Hz) y la banda alta (4.000-7.000 Hz). Se le retira a la banda baja una señal intermedia (bloque 102) calculada mediante un bucle de retroacción de ruido (bloque 104 y 105). La señal se codifica a continuación con un codificador (Co-MIC) MIC escalable a 64 y 80 kbit/s (bloque 103).
50 La banda alta se codifica (bloque 107-Co-MDCT) después de la transformación discreta del coseno modificada (MDCT en inglés) (bloque 106). La transformación MDCT es una transformación con un recubrimiento del 50 % que requiere conocer la señal en la trama futura N+1 para codificar la trama actual N. De este modo para una codificación G.711 WB con unas tramas de 5 ms, la codificación de la banda alta introduce un retardo de 5 ms (denominado lookahead en inglés) a causa de la transformación MDCT.
5 Este retardo no es, por el contrario, necesario en la banda baja ya que se utiliza una codificación PCM escalable.
El tren de datos T de cada trama se genera a continuación con el multiplexador (bloque 108). Este tren de datos se puede cortar o borrar durante la transmisión hacia un decodificador.
La figura 5 muestra un decodificador adecuado que lleva a cabo el procedimiento de ocultación de errores de transmisión de acuerdo con la invención.
En la decodificación para las configuraciones R1 y R2a, después de la demultiplexación (bloque 201), la banda baja
15 decodificada por el decodificador (Dé-MIC) MIC escalable (bloque 202) se desvía de una trama (bloque 203), esto es 5 ms. Para las configuraciones R2b y R3, además, la banda alta se decodifica (bloques 205 y 206) y las dos bandas se combinan después de la selección de las ramas adecuadas (bloque 208 y 209) mediante el banco de filtros en cuadratura (bloque 210). La variable bfi (por “bad frame indicator”) se utiliza para indicar al decodificador que la trama actual está borrada y permite seleccionar (bloques 208 y 209) el tipo de decodificación: decodificación normal (bloques 202, 203, 205 y 206) si bfi = 0 u ocultación de tramas borradas (bloques 204, 211 y 207) si bfi = 1.
La invención se aplica aquí en el caso de la ocultación de tramas borradas en la banda baja. En efecto, la decodificación normal en la banda baja es de baja complejidad ya que se trata de una decodificación de tipo MIC. Resulta entonces interesante aplicar la distribución de la complejidad del proceso de ocultación de tramas borradas.
25 Para ello, el proceso de ocultación de tramas borradas se realiza en al menos dos etapas que se realizan en unos intervalos temporales diferentes. La primera etapa E1 se realiza mediante unos dispositivos de preparación que se aplican en el bloque 204 en el intervalo temporal correspondiente a la trama borrada y la segunda etapa se realiza en el intervalo temporal correspondiente a la trama siguiente mediante los dispositivos de ocultación que se han aplicado en el bloque 211.
En el decodificador es necesario un retardo de una trama para alinear temporalmente la banda baja con la banda alta (bloque 203). Este retardo de una trama entre banda baja y banda alta se utiliza aquí para aplicar la invención en su segundo modo de realización detallado con anterioridad en referencia a las figuras 2, 3a y 3b. No es,
35 entonces, necesario introducir un retardo adicional.
De este modo, tal y como se ilustra en referencia a la figura 6, nos situamos en el caso en el que la trama borrada es la trama N y las tramas N-1, N+1 y N+2 son válidas.
Puesto que se utiliza un retardo de una trama en el codificador G.711 WB para codificar la banda alta mediante MDCT, el tren de datos T asociado a la trama N contiene de hecho los códigos de banda baja (LB) de la trama N+1. De la misma manera, el tren de datos asociado a la rama N-1 contiene de hecho los códigos de banda baja de la trama N.
45 Al recibir el tren de datos asociado a la trama N-1, la señal de banda baja de la trama N se decodifica y se introduce en la memoria tampón para poder ofrecerla al mismo tiempo que la trama N-1 de la banda alta, al banco de filtros
210.
El tren de datos asociado a la trama N está borrado, lo que quiere decir que los códigos de banda baja de la trama N+1 no están disponibles.
Al no recibir el tren de datos asociado a la trama N borrada, la primera etapa de preparación E1 se realiza en la banda baja teniendo en cuenta la señal decodificada y memorizada de la trama N de la banda baja.
55 La tarjeta de sonido recibe la trama N de la banda baja almacenada en la memoria.
Se recibe el tren de datos asociado a la trama N+1, lo que quiere decir que se reciben los códigos de banda baja de la trama N+2. Estos se decodifican y el resultado se introduce en la memoria tampón. En el mismo intervalo temporal, se realiza la etapa de ocultación E2 (segunda parte del análisis y extrapolación de la trama N+1) del algoritmo de ocultación. Se dispone, por lo tanto, de la señal de banda baja extrapolada en la trama N+1 para enviarla a la tarjeta de sonido.
Se recibe el tren de datos asociado a la trama N+2. Se decodifican de este modo los códigos de banda baja de la trama N+3 y se memoriza la señal decodificada. En el mismo intervalo temporal el algoritmo de ocultación de tramas 65 borradas continúa la extrapolación para la trama N+2 de la banda baja de tal modo que realice un fundido encadenado con trama N+2 de la banda baja buferizada para garantizar la continuidad entre la señal extrapolada y
la señal decodificada normalmente.
La presente invención no se limita a una aplicación en este tipo de codificador/decodificador. También se puede aplicar de acuerdo con el segundo modo de realización en un codificador/decodificador de tipo G.722 para la 5 decodificación de la banda baja, de manera particular cuando este decodificador procesa una longitud de trama de 5 ms.
La presente invención también propone un dispositivo 70 de ocultación de errores de transmisión en una señal digital que comprende, tal y como se representa en 212 en la figura 5, unos dispositivos 204 de preparación 10 adaptados para llevar a cabo la primera etapa E1, unos dispositivos 211 de ocultación adaptados para llevar a cabo la segunda etapa E2. Estos dispositivos se aplican en unos intervalos temporales diferentes correspondientes a unas tramas de señal sucesivas recibidas en la entrada del dispositivo. Materialmente, este dispositivo en el sentido de la invención comprende de manera clásica, en referencia a la figura 7, un procesador IP que coopera con un bloque de memoria BM que incluye una memoria de almacenamiento y/o central, así como una memoria tampón
15 MEM ya citada en calidad de dispositivo para memorizar las tramas decodificadas y enviadas con una separación temporal. Este dispositivo recibe en la entrada unas tramas sucesivas de la señal digital Se y emite la señal sintetizada Ss que comprende las muestras de una trama borrada.
El bloque de memoria BM puede comprender un programa informático que comprende las instrucciones de código
20 para la puesta en marcha de las etapas del procedimiento de acuerdo con la invención cuando estas instrucciones las ejecuta un procesador IP del dispositivo y, en particular, una primera etapa de preparación que no produce ninguna muestra faltante y una segunda etapa de ocultación que produce las muestras faltantes de la señal correspondiente a la trama borrada, las dos etapas realizándose en unos intervalos temporales diferentes.
25 Las figuras 1 y 2 pueden ilustrar el algoritmo de este programa informático.
Este dispositivo de ocultación de acuerdo con la invención puede ser independiente o estar integrado en un decodificador de señal digital.

Claims (9)

  1. REIVINDICACIONES
    1. Procedimiento de ocultación de errores de transmisión en una señal digital dividida en una multitud de tramas temporales sucesivas en el cual, en la recepción, la señal es susceptible de comprender unas tramas borradas y 5 unas tramas válidas, y para sustituir al menos la primera trama borrada (N) después de una trama válida, se realizan al menos dos etapas, una primera etapa (E1) de preparación que no produce ninguna muestra faltante y que comprende al menos un análisis de una señal decodificada válida para estimar unos parámetros de ocultación, y una segunda etapa (E2) de ocultación que produce las muestras faltantes de la señal correspondiente a dicha trama borrada por medio de unos parámetros estimados, que se caracteriza porque la carga computacional del proceso de
    10 ocultación de tramas borradas se divide al realizar las etapas que constituyen el proceso de ocultación de tramas borradas en unos intervalos temporales diferentes, la primera etapa realizándose en el intervalo temporal reservado para el tratamiento de una primera trama y la segunda etapa realizándose en el intervalo temporal reservado para el tratamiento de una segunda trama sucesiva a la primera trama.
    15 2. Procedimiento de acuerdo con la reivindicación 1, que se caracteriza porque la etapa de preparación se realiza para cualquier trama decodificada válida en previsión de una potencial trama borrada y la etapa de ocultación se realiza en el intervalo temporal reservado para el tratamiento de la trama borrada.
  2. 3. Procedimiento de acuerdo con la reivindicación 1, que se caracteriza porque la etapa de preparación se realiza en
    20 el intervalo temporal reservado para el tratamiento de la trama borrada y la etapa de ocultación se realiza en un intervalo temporal reservado para el tratamiento de la trama que sucede a la trama borrada.
  3. 4. Procedimiento de acuerdo con la reivindicación 3, que se caracteriza porque este se lleva a cabo durante la decodificación de una primera banda de frecuencia en un sistema de decodificación que comprende una
    25 decodificación en una primera banda de frecuencia y una decodificación en una segunda banda de frecuencia, la decodificación de una trama temporal de señal comprendiendo un retardo temporal en la segunda banda de frecuencia con respecto a la decodificación de esta misma trama temporal en la primera banda de frecuencia.
  4. 5. Procedimiento de acuerdo con la reivindicación 4, que se caracteriza porque la primera banda de frecuencia
    30 corresponde a la banda baja de una decodificación de tipo G.711 WB y la segunda banda de frecuencia corresponde a la banda alta de una decodificación de tipo G.711 WB.
  5. 6. Procedimiento de acuerdo con una de las reivindicaciones 1 a 5, que se caracteriza porque la etapa de preparación comprende una etapa de análisis LPC y una etapa de análisis LTP, y la etapa de ocultación comprende
    35 una etapa de cálculo de una señal residual LPC, una etapa de clasificación y una etapa de extrapolación de las muestras faltantes.
  6. 7. Procedimiento de acuerdo con una de las reivindicaciones 1 a 5, que se caracteriza porque la etapa de preparación comprende una etapa de análisis LPC, una etapa de análisis LTP y una etapa de cálculo de una señal
    40 residual LPC, y la etapa de ocultación comprende una etapa de clasificación y una etapa de extrapolación de muestras faltantes.
  7. 8. Dispositivo de ocultación de errores de transmisión en una señal digital dividida en una multitud de tramas temporales sucesivas que comprende unos dispositivos de preparación que no producen ninguna muestra faltante y 45 que comprende al menos unos dispositivos de análisis de una señal decodificada válida para estimar unos parámetros de ocultación y unos dispositivos de ocultación que producen las muestras faltantes de la señal correspondiente a una trama borrada por medio de unos parámetros estimados, que se caracteriza porque dichos dispositivos de preparación se aplican en el intervalo temporal reservado para el tratamiento de una primera trama y dichos dispositivos de ocultación se aplican en el intervalo temporal reservado para el tratamiento de una segunda
    50 trama sucesiva a la primera trama, para distribuir la carga computacional del proceso de ocultación de tramas borradas.
  8. 9. Decodificador de señal digital que se caracteriza porque comprende un dispositivo de ocultación de errores de
    transmisión de acuerdo con la reivindicación 8. 55
  9. 10. Programa informático destinado a almacenarse en una memoria de un dispositivo de ocultación de errores de transmisión, que se caracteriza porque comprende unas instrucciones de código para la puesta en marcha de las etapas del procedimiento de acuerdo con una de las reivindicaciones 1 a 7, cuando lo ejecuta un procesador de dicho dispositivo de ocultación de errores de transmisión.
ES08838291T 2007-09-21 2008-09-19 Ocultación de error de transmisión en una señal digital con distribución de la complejidad Active ES2391360T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0757750 2007-09-21
FR0757750 2007-09-21
PCT/FR2008/051684 WO2009047461A1 (fr) 2007-09-21 2008-09-19 Dissimulation d'erreur de transmission dans un signal numerique avec repartition de la complexite

Publications (1)

Publication Number Publication Date
ES2391360T3 true ES2391360T3 (es) 2012-11-23

Family

ID=39283823

Family Applications (1)

Application Number Title Priority Date Filing Date
ES08838291T Active ES2391360T3 (es) 2007-09-21 2008-09-19 Ocultación de error de transmisión en una señal digital con distribución de la complejidad

Country Status (7)

Country Link
US (1) US8607127B2 (es)
EP (1) EP2203915B1 (es)
JP (2) JP2010539550A (es)
KR (1) KR101450297B1 (es)
CN (1) CN101802906B (es)
ES (1) ES2391360T3 (es)
WO (1) WO2009047461A1 (es)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2922055A1 (en) 2014-03-19 2015-09-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus, method and corresponding computer program for generating an error concealment signal using individual replacement LPC representations for individual codebook information
EP2922056A1 (en) 2014-03-19 2015-09-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus, method and corresponding computer program for generating an error concealment signal using power compensation
EP2922054A1 (en) 2014-03-19 2015-09-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus, method and corresponding computer program for generating an error concealment signal using an adaptive noise estimation
FR3024582A1 (fr) 2014-07-29 2016-02-05 Orange Gestion de la perte de trame dans un contexte de transition fd/lpd

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2142391C (en) * 1994-03-14 2001-05-29 Juin-Hwey Chen Computational complexity reduction during frame erasure or packet loss
KR100630253B1 (ko) * 1999-04-19 2006-10-02 에이티 앤드 티 코포레이션 패킷 손실 또는 프레임 삭제 은폐를 실행하는 방법 및 장치
US6952668B1 (en) 1999-04-19 2005-10-04 At&T Corp. Method and apparatus for performing packet loss or frame erasure concealment
FR2813722B1 (fr) * 2000-09-05 2003-01-24 France Telecom Procede et dispositif de dissimulation d'erreurs et systeme de transmission comportant un tel dispositif
ATE353503T1 (de) * 2001-04-24 2007-02-15 Nokia Corp Verfahren zum ändern der grösse eines zitlerpuffers zur zeitausrichtung, kommunikationssystem, empfängerseite und transcoder
JP2004239930A (ja) * 2003-02-03 2004-08-26 Iwatsu Electric Co Ltd パケット損失補償におけるピッチ検出方法と装置
JP2004361731A (ja) * 2003-06-05 2004-12-24 Nec Corp オーディオ復号装置及びオーディオ復号方法
EP1746580B1 (en) * 2004-05-10 2010-03-24 Nippon Telegraph and Telephone Corporation Acoustic signal packet communication method, transmission method, reception method, and device and program thereof
US7359409B2 (en) * 2005-02-02 2008-04-15 Texas Instruments Incorporated Packet loss concealment for voice over packet networks
JP2007114417A (ja) * 2005-10-19 2007-05-10 Fujitsu Ltd 音声データ処理方法及び装置
KR100658907B1 (ko) * 2005-12-29 2006-12-15 포스데이타 주식회사 휴대 인터넷 시스템의 기지국 장치 및 호 제어 방법
US7877253B2 (en) * 2006-10-06 2011-01-25 Qualcomm Incorporated Systems, methods, and apparatus for frame erasure recovery
KR100998396B1 (ko) * 2008-03-20 2010-12-03 광주과학기술원 프레임 손실 은닉 방법, 프레임 손실 은닉 장치 및 음성송수신 장치

Also Published As

Publication number Publication date
CN101802906A (zh) 2010-08-11
EP2203915B1 (fr) 2012-07-11
KR101450297B1 (ko) 2014-10-13
US20100306625A1 (en) 2010-12-02
JP2013250582A (ja) 2013-12-12
JP5604572B2 (ja) 2014-10-08
JP2010539550A (ja) 2010-12-16
KR20100084632A (ko) 2010-07-27
WO2009047461A1 (fr) 2009-04-16
EP2203915A1 (fr) 2010-07-07
US8607127B2 (en) 2013-12-10
CN101802906B (zh) 2013-01-02

Similar Documents

Publication Publication Date Title
ES2387943T3 (es) Ocultación de error de transmisión en una señal de audio digital en una estructura de decodificación jerárquica
ES2298261T3 (es) Disimulacion de errores de transmision en una señal de audio.
ES2266312T3 (es) Indexacion de posiciones y señales de pulso en codigos de cifrado y descifrado algebraicos para la codificacion de señales de banda ancha.
ES2666150T3 (es) Descodificación de audio con pos-filtro selectivo
ES2413807T3 (es) Método y aparato para procesar una señal de audio
ES2218462T3 (es) Mejora del rendimiento de sistemas de cifrado que usan metodos de reconstruccion de alta frecuencia.
EP2535893B1 (en) Device and method for lost frame concealment
ES2432625T3 (es) Cálculo de máscara de escalamiento selectiva basado en detección de picos
EP2207166B1 (en) An audio decoding method and device
ES2430414T3 (es) Cálculo de máscara de escalado selectivo basado en detección de pico
ES2430639T3 (es) Método y aparato para generar una capa de mejora dentro de un sistema de codificación de audio de múltiples canales
AU2012361423B2 (en) Method, apparatus, and system for processing audio data
US9076439B2 (en) Bit error management and mitigation for sub-band coding
ES2642574T3 (es) Generación de ruido de confort
KR20120019503A (ko) 소거된 스피치 프레임을 복원하는 시스템 및 방법
ES2378972T3 (es) Atenuación de la sobresonorización, en particular para la generación de una excitación en un decodificador, en ausencia de información
ES2546028T3 (es) Un método y un dispositivo de codificación/decodificación
ES2391360T3 (es) Ocultación de error de transmisión en una señal digital con distribución de la complejidad
ES2400987T3 (es) Atenuación de pre-ecos en una señal de audio digital
US20090018823A1 (en) Speech coding
ES2363190T3 (es) Codificación de señales audio-digitales.
ES2738885T3 (es) Método para el procesamiento de tramas perdidas y decodificador
US7061912B1 (en) Method and apparatus of packet loss concealment for CVSD coders
US6385574B1 (en) Reusing invalid pulse positions in CELP vocoding
WO1999038157A1 (fr) Procede et dispositif de codage a retard parametral et procede de preparation de table de codage