ES2664391T3 - Aparato, método y programa informático correspondiente para generar una señal de ocultación de error usando compensación de potencia - Google Patents

Aparato, método y programa informático correspondiente para generar una señal de ocultación de error usando compensación de potencia Download PDF

Info

Publication number
ES2664391T3
ES2664391T3 ES15710132.0T ES15710132T ES2664391T3 ES 2664391 T3 ES2664391 T3 ES 2664391T3 ES 15710132 T ES15710132 T ES 15710132T ES 2664391 T3 ES2664391 T3 ES 2664391T3
Authority
ES
Spain
Prior art keywords
lpc
codebook
representation
information
gain
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
ES15710132.0T
Other languages
English (en)
Inventor
Michael Schnabel
Jérémie Lecomte
Ralph Sperschneider
Manuel Jander
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Original Assignee
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV filed Critical Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Application granted granted Critical
Publication of ES2664391T3 publication Critical patent/ES2664391T3/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/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/028Noise substitution, i.e. substituting non-tonal spectral components by noisy source
    • 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/06Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
    • 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/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/09Long term prediction, i.e. removing periodical redundancies, e.g. by using adaptive codebook or pitch predictor
    • 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
    • G10L2019/0001Codebooks
    • G10L2019/0002Codebook adaptations
    • 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
    • G10L2019/0001Codebooks
    • G10L2019/0016Codebook for LPC parameters

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Acoustics & Sound (AREA)
  • Computational Linguistics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Error Detection And Correction (AREA)
  • Digital Transmission Methods That Use Modulated Carrier Waves (AREA)
  • Transmitters (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

Aparato para generar una señal de ocultación de error, que comprende: un generador de representación de LPC (codificación de predicción lineal) (100) para generar una representación de LPC de sustitución; un calculador de ganancia (600) para calcular una información de ganancia a partir de la representación de LPC de sustitución; un compensador (406, 408) para compensar una influencia de ganancia de la representación de LPC de sustitución usando la información de ganancia; y un sintetizador de LPC (106, 108) para filtrar información de libro de códigos usando la representación de LPC de sustitución para obtener la señal de ocultación de error, en el que el compensador (406, 408, 900) está configurado para ponderar la información de libro de códigos o una señal de salida de síntesis de LPC.

Description

5 La presente invención se refiere a la codificación de audio y, en particular, a la codificación de audio basada en el procesamiento de tipo LPC en el contexto de libros de códigos.
Los codificadores perceptuales de audio con frecuencia utilizan la codificación predictiva lineal (LPC) para modelar el
10 tracto vocal humano y para reducir la cantidad de redundancia, que puede modelarse por los parámetros de LPC. La LPC residual, que se obtiene filtrando la señal de entrada con el filtro de LPC, se modela a su vez y se transmite mediante su representación por uno, dos o más libros de códigos (los ejemplos son: libro de códigos adaptativo, libro de códigos de pulso glotal, libro de códigos innovador, libro de códigos de transición, libros de códigos híbridos que consisten en partes predictivas y de transformación).
15 En caso de una pérdida de tramas, se pierde un segmento de los datos de voz/audio (típicamente 10 ms o 20 ms). Para que esta pérdida sea lo menos audible posible, se aplican diversas técnicas de ocultación. Estas técnicas habitualmente consisten en la extrapolación de los datos recibidos anteriores. Estos datos pueden ser: ganancias de libros de códigos, vectores de libros de códigos, parámetros para modelar los libros de códigos y los coeficientes de
20 LPC. En toda la tecnología de ocultación conocida en el estado actual de la técnica, se repite (basándose en el último conjunto conocido) o se extra/interpola, el conjunto de coeficientes de LPC, que se utiliza para la síntesis de la señal.
ITU G.718 [1]: los parámetros de LPC (representados en el dominio de ISF) se extrapolan durante la ocultación. La
25 extrapolación consiste en dos etapas. En primer lugar, se calcula un vector de ISF a largo plazo. Este vector de ISF a largo plazo es una media ponderada (con el factor de ponderación fijo beta) de
un vector de ISF que representa el promedio de los tres últimos vectores de ISF conocidos y
un vector de ISF entrenado fuera de línea, que representa una forma espectral promedio a largo plazo.
30 A continuación se interpola este vector de ISF a largo plazo de destino con el último vector de ISF correctamente recibido por trama utilizando un factor variable en el tiempo alfa para permitir una atenuación cruzada del último vector de ISF recibido al vector de ISF a largo plazo de destino. Seguidamente se convierte el vector de ISF así obtenido nuevamente al dominio de los LPC, para generar etapas intermedias (los ISF se transmiten cada 20 ms, la
35 interpolación genera un conjunto de LPC cada 5 ms). A continuación se utilizan los LPC para sintetizar la señal de salida filtrando el resultado de la suma de los libros de códigos adaptativos y fijos, que se amplifican con las correspondientes ganancias de libros de códigos antes de la adición. El libro de códigos fijo contiene ruido durante la ocultación. En el caso de pérdida de tramas consecutivas, se realimenta el libro de códigos adaptativo sin añadir el libro de códigos fijo. Por otro lado, la señal de suma puede realimentarse, como se hace en AMRWB [5].
40 En [2], se describe un esquema de ocultación que utiliza dos conjuntos de coeficientes de LPC. Un conjunto de coeficientes de LPC se deriva basándose en la última trama correcta recibida, el otro conjunto de parámetros de LPC se deriva basándose en la primera trama correcta recibida, aunque se supone que la señal evoluciona en dirección inversa (hacia el pasado). A continuación se realiza la predicción en dos direcciones, una hacia el futuro y
45 una hacia el pasado. Por lo tanto, se generan dos representaciones de la trama faltante. Por último, se ponderan y promedian ambas señales antes de su reproducción.
La Fig. 8 ilustra un procesamiento de ocultación de errores de acuerdo con la técnica anterior. Un libro de códigos adaptativo 800 proporciona una información de libro de códigos adaptativo a un amplificador 808 que aplica una
50 ganancia de libro de códigos gp a la información enviada desde el libro de códigos adaptativo 800. La salida del amplificador 808 se conecta a una entrada de un combinador 810. Además, un generador de ruido aleatorio 804 junto con un libro de códigos fijo 802 proporciona información del libro de códigos a otro amplificador gc. El amplificador gc indicado en 806 aplica el factor de ganancia gc, que es la ganancia de libro de códigos fijo, a la información proporcionada por el libro de códigos fijo 802 junto con el generador de ruido aleatorio 804. A
55 continuación se envía también la salida del amplificador 806 al combinador 810. El combinador 810 suma el resultado de ambos libros de códigos amplificados por las correspondientes ganancias de libro de códigos para obtener una señal de combinación que a continuación se envía a un bloque de síntesis de LPC 814. El bloque de síntesis de LPC 814 se controla mediante la representación de reemplazo que se genera de la manera antes descrita.
60 Este procedimiento de la técnica anterior presenta ciertas desventajas.
Para hacer frente a las características cambiantes de la señal para que la envolvente de LPC converja hacia propiedades del tipo ruido de fondo, se cambia la LPC durante la ocultación por extra/interpolación con otros
vectores de LPC. No hay posibilidad de controlar con precisión la energía durante la ocultación. Si bien existe la posibilidad de controlar las ganancias de libro de códigos de los diversos libros de códigos, la LPC influye implícitamente el nivel o la energía global (incluso la dependiente de la frecuencia).
5 Se podría contemplar la atenuación gradual hasta un nivel de energía determinado (por ej. el nivel de ruido de fondo) durante la pérdida de tramas en ráfagas. Esto no es posible en la tecnología del estado actual de la técnica, ni siquiera controlando las ganancias de libro de códigos.
No es posible atenuar las partes con ruido de la señal a ruido de fondo, y mantener al mismo tiempo la posibilidad de 10 sintetizar las partes tonales con la misma propiedad espectral que antes de la pérdida de tramas.
Un objetivo de la presente invención es dar a conocer un concepto mejorado para generar una señal de ocultación de error.
15 Este objetivo se logra por medio de un aparato para generar una señal de ocultación de error de acuerdo con la reivindicación 1, un método para generar una señal de ocultación de error de acuerdo con la reivindicación 14 o un programa informático de acuerdo con la reivindicación 15.
En un aspecto de la presente invención, el aparato para generar una señal de ocultación de error comprende un
20 generador de representaciones de LPC para generar una primera representación de LPC de sustitución y una segunda representación de LPC de sustitución diferente. Además, se proporciona un sintetizador de LPC para filtrar una primera información de libros de códigos empleando la primera representación de LPC de sustitución para obtener una primera señal de sustitución y para filtrar una segunda información de libros de códigos diferente utilizando la segunda representación de LPC de sustitución para obtener una segunda señal de sustitución. Se
25 combinan las salidas del sintetizador de LPC por medio de un combinador de señales de sustitución que combina la primera señal de sustitución y la segunda señal de sustitución para obtener la señal de audio de ocultación de error.
El primer libro de códigos es preferentemente un libro de códigos adaptativo para proporcionar la primera información de libros de códigos y el segundo libro de códigos preferentemente en forma de libro de códigos para
30 proporcionar la segunda información de libros de códigos. En otras palabras, el primer libro de códigos representa la parte tonal de la señal y el segundo libro de códigos o libro de códigos fijo representa la parte con ruido de la señal y por lo tanto se puede considerar que es un libro de códigos de ruido.
La primera información de libros de códigos correspondiente al libro de códigos adaptativo se genera utilizando un
35 valor medio de las últimas representaciones de LPC correctas, la última representación correcta y un valor de atenuación.
Además, la representación de LPC correspondiente al segundo libro de códigos o libro de códigos fijo se genera utilizando el valor de atenuación de la última representación de LPC y una estimación de ruido. Dependiendo de la
40 implementación, la estimación de ruido puede ser un valor fijo, un valor entrenado fuera de línea o puede derivarse adaptativamente de una señal que precede a una situación de ocultación de errores.
Preferentemente, se realiza un cálculo de ganancia de LPC para calcular la influencia de una representación de LPC de sustitución y a continuación se utiliza esta información para realizar una compensación de manera que la
45 potencia o sonoridad o, por lo general, una medida relacionada con la amplitud, de la señal de síntesis sea similar a la correspondiente señal de síntesis anterior a la operación de ocultación de error.
En un aspecto adicional, un aparato para generar una señal de ocultación de error comprende un generador de representaciones de LPC para generar una o más representaciones de LPC de sustitución. Además, se incluye el 50 calculador de ganancias para calcular la información de ganancia a partir de la representación de LPC y a continuación también se incluye un compensador para compensar una influencia de ganancia de la representación de LPC de sustitución y esta compensación de ganancia opera utilizando la operación de ganancia proporcionada por el calculador de ganancias. A continuación un sintetizador de LPC filtra una información del libro de códigos utilizando la representación de LPC de sustitución para obtener la señal de ocultación de error, en el que el
55 compensador está configurado para ponderar la información del libro de códigos antes de su síntesis por el sintetizador de LPC o para ponderar la señal de salida de síntesis de LPC. De esa manera, se reduce o elimina toda ganancia o influencia perceptible relacionada con la potencia o amplitud al comienzo de una situación de ocultación de errores.
60 Esta compensación no sólo es útil para representaciones de LPC individuales como se esbozó en el aspecto anterior, sino que también es útil en el caso de utilizar sólo una representación de LPC de sustitución única con un solo sintetizador de LPC.
Los valores de ganancia se determinan calculando las respuestas al impulso de la última representación de LPC
correcta y una representación de LPC de sustitución calculando, en particular, un valor rms sobre la respuesta al impulso de la correspondiente representación de LPC a través de un cierto tiempo que se encuentra entre 3 y 8 ms y preferentemente es de 5 ms.
5 En una implementación, se determina el valor de ganancia real dividiendo un nuevo valor rms, es decir un valor rms correspondiente a una representación de LPC de sustitución por un valor rms de la representación de LPC correcta.
Preferentemente, la única representación de LPC de sustitución o varias de ellas se calculan utilizando una estimación de ruido de fondo que es preferentemente una estimación de ruido de fondo derivada de las señales 10 decodificadas en ese momento a diferencia de una estimación de ruido simplemente predeterminada por un vector entrenado fuera de línea.
En otro aspecto, un aparato para generar una señal comprende un generador de representaciones de LPC para generar una o más representaciones de LPC de sustitución, y un sintetizador de LPC para filtrar una información del
15 libro de códigos utilizando la representación de LPC de sustitución. Además, se presenta un estimador de ruido para estimar una estimación de ruido durante la recepción de tramas de audio correctas, y esta estimación de ruido depende de las tramas de audio correctas. El generador de representaciones está configurado para usar la estimación de ruido estimada por el estimador de ruido al generar la representación de LPC de sustitución.
20 La representación espectral de una señal decodificada anterior es el proceso para proporcionar una representación espectral de ruido o representación de destino. La representación espectral de ruido se convierte a una representación de LPC de ruido y la representación de LPC de ruido es preferentemente el mismo tipo de representación de LPC que la representación de LPC de sustitución. Son preferibles los vectores de ISF o vectores de LSF para los procedimientos específicos relacionados con el procesamiento de LPC.
25 La estimación se deriva utilizando un enfoque de estadísticas mínimas con alisado óptimo de una señal decodificada anterior. A continuación se convierte esta estimación de ruido espectral a una representación en el dominio del tiempo. Seguidamente se realiza una recursión de LevinsonDurbin utilizando un primer número de muestras de la representación en el dominio del tiempo, donde el número de muestras es igual a un orden de LPC. A continuación
30 se derivan los coeficientes de LPC del resultado de la recursión de LevinsonDurbin y este resultado se transforma, por último, en un vector. El aspecto del uso de representaciones individuales de LPC correspondientes a libros de códigos individuales, el aspecto del uso de una o más representaciones de LPC con compensación de ganancia y el aspecto del uso de una estimación de ruido en la generación de una o más representaciones de LPC, estimación que no es un vector entrenado fuera de línea sino una estimación de ruido derivada de la señal anterior decodificada
35 son aspectos que se pueden utilizar individualmente para obtener una mejora con respecto a la técnica anterior.
Además, estos aspectos individuales también se pueden combinar entre sí de manera que, por ejemplo, se puede combinar el primer aspecto y el segundo aspecto o se puede combinar el primer aspecto o se puede combinar el tercer aspecto o se puede combinar el segundo aspecto y el tercer aspecto entre sí para dar lugar a una eficiencia
40 mejorada con respecto a la técnica anterior. Aún más preferentemente, los tres aspectos se pueden combinar entre sí para obtener mejoras con respecto a la técnica anterior. Por consiguiente, aunque se describen los aspectos con figuras separadas todos los aspectos se pueden aplicar en combinación mutua, como se puede apreciar con referencia a las figuras adjuntas y a la descripción.
45 A continuación se describen las realizaciones preferidas de la presente invención con respecto a los dibujos adjuntos, en los cuales:
Fig. 1a ilustra una realización del primer aspecto; Fig. 1b ilustra un uso de un libro de códigos adaptativo;
50 Fig. 1c ilustra un uso de un libro de códigos fijo en el caso de un modo normal o un modo de ocultación; Fig. 1d ilustra un diagrama de flujo para calcular la primera representación de LPC de sustitución; Fig. 1e ilustra un diagrama de flujo para calcular la segunda representación de LPC de sustitución; Fig. 2 ilustra una vista general de un decodificador con controlador de ocultación de errores y estimador de
ruido;
55 Fig. 3 ilustra una representación detallada de los filtros de síntesis; Fig. 4 ilustra una realización preferida que combina el primer aspecto y el segundo aspecto; Fig. 5 ilustra otra realización que combina el primero y segundo aspectos; Fig. 6 ilustra la realización que combina el primero y segundo aspectos; Fig. 7a ilustra una realización de la realización de una compensación de ganancia.
60 Fig. 7b ilustra un diagrama de flujo de la realización de una compensación de ganancia; Fig. 8 ilustra un generador de señales de ocultación de errores de la técnica anterior; Fig. 9 ilustra una realización de acuerdo con el segundo aspecto con compensación de ganancia; Fig. 10 ilustra otra implementación de la realización de la Fig. 9; Fig. 11 ilustra una realización del tercer aspecto que utiliza el estimador de ruido;
Fig. 12a ilustra una implementación preferida del cálculo de la estimación de ruido; Fig. 12b ilustra otra implementación preferida del cálculo de la estimación de ruido; y Fig. 13 ilustra el cálculo de una única representación de LPC de sustitución o representaciones de LPC de
sustitución individuales correspondientes a libros de códigos individuales utilizando una estimación de 5 ruido y aplicando una operación de atenuación.
Las realizaciones preferidas de la presente invención se refieren al control de nivel de la señal de salida por medio de las ganancias de libro de códigos independientemente de cualquier cambio de ganancia causado por la LPC extrapolada y para controlar la forma espectral modelada por LPC por separado por cada libro de códigos. Para este
10 fin, se aplican LPC separadas por cada libro de códigos y se aplican medios de compensación para compensar cualquier cambio de la ganancia de LPC durante la ocultación.
Las realizaciones de la presente invención, definidas en los diferentes aspectos o en los aspectos combinados, tienen la ventaja de otorgar una alta calidad subjetiva de voz/audio en caso de que uno o más paquetes de datos no 15 se reciban correctamente o no se reciban en absoluto en el lado del decodificador.
Además, las realizaciones preferidas compensan las diferencias de ganancia entre LPC sucesivas durante la ocultación, que podrían surgir como resultado del cambio de los coeficientes de LPC con el tiempo, y por lo tanto se evitan los cambios de nivel no deseados.
20 Por añadidura, las realizaciones son ventajosas por el hecho de que durante la ocultación se utilizan dos o más conjuntos de coeficientes de LPC para influir de manera independiente sobre el comportamiento espectral de las partes con y sin voz y también las partes de audio tonales y de ruido.
25 Todos los aspectos de la presente invención proporcionan una calidad de audio subjetiva mejorada.
De acuerdo con un aspecto de la presente invención, se controla la energía con precisión durante la interpolación. Se compensa cualquier ganancia que se pueda introducir cambiando la LPC.
30 De acuerdo con otro aspecto de esta invención, se utilizan conjuntos de coeficientes de LPC individuales por cada uno de los vectores de libros de códigos. Se filtra cada vector de libro de códigos por su correspondiente LPC e inmediatamente después se suman las señales filtradas individuales para obtener la salida sintetizada. Por el contrario, la tecnología del estado actual de la técnica suma en primer lugar todos los vectores de excitación (que se generan de los diferentes libros de códigos) y a continuación alimenta la suma a un único filtro de LPC.
35 De acuerdo con otro aspecto, no se utiliza una estimación de ruido, por ejemplo en forma de vector entrenado fuera de línea, sino que en realidad se deriva de las tramas anteriores decodificadas de manera que, después de una cierta cantidad de paquetes/tramas erróneas o faltantes, se obtiene una atenuación gradual hasta el ruido de fondo real en lugar de algún espectro de ruido predeterminado. Esto da lugar, en particular, a un sentimiento de aceptación
40 por parte de un usuario, debido a que, incluso cuando se produce una situación de error, la señal proporcionada por el decodificador tras un cierto número de tramas está relacionada con la señal precedente. Sin embargo, la señal proporcionada por un decodificador en el caso de un cierto número de tramas perdidas o erróneas es una señal que no está relacionada en absoluto con la señal proporcionada por el decodificador antes de una situación de error.
45 La aplicación de una compensación de ganancia correspondiente a la ganancia variable en el tiempo de la LPC ofrece las siguientes ventajas:
Compensa toda ganancia que se pueda introducir por el cambio de la LPC.
50 Por tanto, se puede controlar el nivel de la señal de salida por las ganancias de libro de códigos de los diversos libros de códigos. Esto permite una atenuación gradual predeterminada mediante la eliminación de toda influencia no deseada por la LPC interpolada.
El uso de un conjunto separada de coeficientes de LPC por cada libro de códigos utilizado durante la ocultación 55 ofrece las siguientes ventajas:
Genera la posibilidad de influir en la forma espectral de las partes tonales y de ruido de la señal por separado.
Brinda la posibilidad de reproducir la parte de voz de la señal casi sin cambios (por ej. conveniente para las vocales), 60 en tanto que la parte con ruido se puede convertir rápidamente a ruido de fondo.
Brinda la posibilidad de ocultar las partes con voz y atenuar gradualmente la parte con voz con una velocidad de atenuación arbitraria (por ej. la atenuación gradual dependiente de las características de la señal), a la vez que mantiene simultáneamente el ruido de fondo durante la ocultación. Los códecs del estado de la técnica por lo
general adolecen de un sonido de ocultación de voz muy limpio.
Brinda medios para atenuar a ruido de fondo durante la ocultación de manera suave, atenuando gradualmente las partes tonales sin cambiar las propiedades espectrales y atenuando las partes de ruido a la envolvente espectral de 5 fondo.
La Fig. 1a ilustra un aparato para generar una señal de ocultación de error 111. El aparato comprende un generador de representaciones de LPC 100 para generar una primera representación de sustitución y además para generar una segunda representación de LPC de sustitución. Como se esboza en la Fig. 1a, la primera representación de 10 LPC de sustitución se introduce en un sintetizador de LPC 106 para filtrar una primera información de libros de códigos emitida por un primer libro de códigos 102 tal como un libro de códigos adaptativo 102 para obtener una primera señal de sustitución a la salida del bloque 106. Además, la segunda representación de sustitución generada por el generador de representaciones de LPC 100 se introduce en el sintetizador de LPC para filtrar una segunda información de libros de códigos diferente proporcionada por un segundo libro de códigos 104 que es, por ejemplo, 15 un libro de códigos fijo, para obtener una segunda señal de sustitución a la salida del bloque 108. A continuación, ambas señales de sustitución se introducen en un combinador de señales de sustitución 110 para combinar la primera señal de sustitución y la segunda señal de sustitución para obtener la señal de ocultación de error 111. Ambos sintetizadores de LPC 106, 108 pueden implementarse en un único bloque de sintetizador de LPC o pueden implementarse en forma de filtros de sintetizador de LPC separados. En otras implementaciones, ambos 20 procedimientos de sintetizador de LPC pueden implementarse por dos filtros de LPC que realmente se implementan y operan en paralelo. Sin embargo, la síntesis de LPC también puede ser un filtro de síntesis de LPC y un cierto control de tal manera que el filtro de síntesis de LPC proporcione una señal de salida correspondiente a la primera información de libros de códigos y a la primera representación de sustitución y a continuación, con posterioridad a esta primera operación, el control proporciona la segunda información de libros de códigos y la segunda
25 representación de sustitución al filtro de síntesis para obtener la segunda señal de sustitución de una manera en serie. Otras implementaciones correspondientes al sintetizador de LPC aparte de un único o varios bloques de síntesis son evidentes para los expertos en la materia.
Por lo general, las señales de salida de síntesis de LPC son señales en el dominio del tiempo y el combinador de
30 señales de sustitución 110 realiza una combinación de señales de síntesis de salida realizando una adición sincronizada muestra por muestra. Sin embargo, el combinador de señales de sustitución 110 también puede realizar otras combinaciones, tales como una adición ponderada muestra por muestra o una suma en el dominio de la frecuencia o cualquier otra combinación de señales.
35 Adicionalmente, se indica que el primer libro de códigos 102 comprende un libro de códigos adaptativo y se indica que el segundo libro de códigos 104 comprende un libro de códigos fijo. Sin embargo, el primer libro de códigos y el segundo libro de códigos pueden ser cualquier tipo de libro de códigos tal como un libro de códigos predictivo como primer libro de códigos y un libro de códigos de ruido como segundo libro de códigos. Sin embargo, otros libros de códigos pueden ser libros de códigos de pulso glotal, libros de códigos innovadores, libros de códigos de transición,
40 libros de códigos híbridos que consisten en partes predictivas y de transformación, libros de códigos correspondientes a generadores de voz individuales tales como hombres/mujeres/niños o libros de códigos correspondientes a diferentes sonidos tales como sonidos animales, etc.
La Fig. 1b ilustra una representación de un libro de códigos adaptativo. El libro de códigos adaptativo está provisto
45 de un bucle de realimentación 120 y recibe, como entrada, un retardo tonal 118. El retardo tonal puede ser un retardo tonal decodificado en el caso de una trama/paquete correcto recibido. Sin embargo, si se detecta una situación de error que indica una trama/paquete erróneo o faltante, a continuación el decodificador emite un retardo tonal de ocultación de errores 118 que se introduce en el libro de códigos adaptativo. El libro de códigos adaptativo 102 puede implementarse en forma de memoria para almacenar los valores de salida realimentados provistos a
50 través de la línea de realimentación 120 y, dependiendo del retardo tonal 118 aplicado, el libro de códigos adaptativo emite una cierta cantidad de valores de muestreo.
Adicionalmente, la Fig. 1c ilustra un libro de códigos fijo 104. En el caso del modo normal, el libro de códigos fijo 104 recibe un índice de libro de códigos y, en respuesta al índice de libro de códigos, el libro de códigos fijo proporciona 55 una determinada entrada del libro de códigos 114 como información de libros de códigos. Sin embargo, si se determina un modo de ocultación, no se cuenta con un índice de libro de códigos. En ese caso, se activa un generador de ruido 112 provisto dentro del libro de códigos fijo 104, que proporciona una señal de ruido como información del libro de códigos 116. Dependiendo de la implementación, el generador de ruido puede proporcionar un índice de libro de códigos aleatorio. Sin embargo, es preferible que un generador de ruido proporcione en
60 realidad una señal de ruido en lugar de un índice aleatorio de libro de códigos. El generador de ruido 112 puede implementarse en forma de un cierto generador de ruido en hardware o software o se puede implementar en forma de tablas de ruido o una determinada entrada “adicional” en el libro de códigos fijo con forma de ruido. Además, son posibles combinaciones de los procedimientos anteriores, es decir una entrada de ruido en el libro de códigos junto con un cierto post procesamiento.
La Fig. 1d ilustra un procedimiento preferido para calcular una primera representación de LPC de sustitución en caso de error. La etapa 130 ilustra el cálculo de un valor medio de representaciones de LPC de dos o más últimas tramas correctas. Se prefieren tres últimas tramas correctas. Por consiguiente, se calcula, un valor medio de las tres últimas tramas correctas en el bloque 130 y se envían al bloque 136. Además, en la etapa 132 se proporciona la información de LPC de la última trama correcta almacenada y además se envía al bloque 136. Además, se determina un factor de atenuación 134 en el bloque 134. A continuación, dependiendo de la última información de LPC correcta, dependiendo del valor medio de la información de LPC de la última trama correcta y dependiendo del factor de atenuación del bloque 134, se calcula la primera representación de sustitución 138.
Para el estado de la técnica se aplica sólo una LPC. Para el método nuevamente propuesto, cada vector de excitación, que se genera por el libro de códigos adaptativo o fijo, se filtra por su propio conjunto de coeficientes de LPC. La derivación de los vectores de ISF individuales es la siguiente:
Se determina el conjunto de coeficientes A (para filtrar el libro de códigos adaptativo) mediante esta fórmula:
donde alfaA es un factor de atenuación adaptativo variable en el tiempo que puede depender de la estabilidad de la señal, la clase de señal, etc. isfx son los coeficientes de ISF, donde x indica el número de trama, con respecto al final de la trama actual: x = 1 indica la primera ISF perdida, x = 2 la última correcta, x=3 la segunda última correcta y así sucesivamente. Esto lleva a la atenuación de la LPC que se utiliza para filtrar la parte tonal, a partir de la última trama correctamente recibida hacia la LPC promedio (promediada de tres de las últimas correctas de 20 ms). Cuantas más tramas se pierdan, más aproximada es la ISF que se utiliza durante la ocultación, a este vector promedio de ISF a corto plazo (isf').
La Fig. 1e ilustra un procedimiento preferido para calcular la segunda representación de sustitución. En el bloque 140, se determina una estimación de ruido. A continuación, en el bloque 142, se determina un factor de atenuación. Además, en el bloque 144, la última trama correcta es la información de LPC que se había guardado anteriormente. Seguidamente, en el bloque 146, se calcula una segunda representación de sustitución. Preferentemente, se determina un segundo conjunto de coeficientes B (para filtrar el libro de códigos fijo) por la siguiente fórmula:
donde isfcng es el conjunto de coeficientes de ISF derivados de una estimación de ruido de fondo y alfaB es el factor de velocidad de atenuación variable en el tiempo que preferentemente depende de la señal. La forma espectral de destino se deriva trazando la señal anterior decodificada en el dominio de la FFT (espectro de potencia), utilizando un enfoque de estadísticas mínimas con alisado óptimo, similar a [3]. Esta estimación de FFT se convierte a continuación a la representación de LPC mediante el cálculo de la autocorrelación efectuando la FFT inversa y a continuación utilizando la recursión de LevinsonDurbin para calcular los coeficientes de LPC utilizando las primeras N muestras de la FFT inversa, donde N es el orden de LPC. Seguidamente esta LPC se convierte al dominio de ISF para recuperar isfcng. Por otro lado si no se dispone de dicho trazado de la forma espectral de fondo también se podría derivar la forma espectral de destino basándose en cualquier combinación de un vector entrenado fuera de línea y la media espectral a corto plazo, como se hace en G.718 para la forma espectral común.
Preferentemente, los factores de atenuación A y αB se determinan dependiendo de la señal de audio decodificada, es decir, dependiendo de la señal de audio decodificada antes de la aparición de un error. El factor de atenuación puede depender de la estabilidad de la señal, la clase de señal, etc. Por consiguiente, si se determina que la señal es una señal con bastante ruido, a continuación se determina el factor de atenuación de tal manera que el factor de atenuación disminuya, de vez en cuando, más rápidamente en comparación con una situación en que una señal es más bien tonal. En este caso, el factor de atenuación decrece de una trama temporal a la siguiente trama temporal en una cantidad reducida. Esto garantiza que la atenuación gradual de la última trama correcta al valor medio de las últimas tres tramas correctas tenga lugar más rápidamente en el caso de las señales con ruido en comparación con las señales no con ruido o tonales, donde la velocidad de atenuación gradual se reduce. Se pueden realizar procedimientos similares para las clases de señal. En el caso de las señales con voz, se puede realizar una atenuación gradual más lenta que en el caso de las señales sin voz o en el caso de las señales de música la velocidad de atenuación se puede reducir en comparación con otras características de la señal y se pueden aplicar determinaciones correspondientes del factor de atenuación.
Como se señala en el contexto de la Fig. 1e, se puede calcular un factor de atenuación diferente αB para la segunda información de libros de códigos. De esa manera, se puede conferir a las diferentes entradas de los libros de códigos una velocidad de atenuación diferente. Por consiguiente, se puede establecer una atenuación gradual hasta la estimación de ruido como fcng de modo diferente de la velocidad de atenuación de la representación de ISF de la última trama correcta a la representación media de ISF como se esboza en el bloque 136 de la Fig. 1d.
La Fig. 2 ilustra una vista general de una implementación preferida. Una línea de entrada recibe, por ejemplo, de una interfaz de entrada inalámbrica o una interfaz por cable, paquetes o tramas de una señal de audio. Los datos en la línea de entrada 202 se proporcionan a un decodificador 204 y al mismo tiempo a un controlador de ocultación de errores 200. El controlador de ocultación de errores determina si los paquetes o tramas recibidos son erróneos o faltantes. Si se determina esto, el controlador de ocultación de errores introduce un mensaje de control en el decodificador 204. En la implementación de la Fig. 2, un mensaje “1” en la línea de control CTRL señala que el decodificador 204 debe operar en el modo de ocultación. Sin embargo, si el controlador de ocultación de errores no encuentra una situación de error, a continuación la línea de control lleva un mensaje “0” que indica un modo de decodificación normal como se indica en la tabla 210 de la Fig. 2. El decodificador 204 se conecta además a un estimador de ruido 206. Durante el modo de decodificación normal, el estimador de ruido 206 recibe la señal de audio decodificada a través de una línea de realimentación 208 y determina una estimación de ruido a partir de la señal decodificada. Sin embargo, cuando el controlador de ocultación de errores indica un cambio del modo de decodificación normal al modo de ocultación, el estimador de ruido 206 proporciona la estimación de ruido al decodificador 204 para que el decodificador 204 pueda realizar una ocultación de error como se ha analizado en las figuras anteriores y en las siguientes. De esa manera, el estimador de ruido 206 se controla a su vez por la línea de control CTRL procedente del controlador de ocultación de errores para conmutar, del modo de estimación de ruido normal en el modo de decodificación normal a la operación de provisión de estimación de ruido en el modo de ocultación.
La Fig. 4 ilustra una realización preferida de la presente invención en el contexto de un decodificador, tal como el decodificador 204 de la Fig. 2, que consta de un libro de códigos adaptativo 102 y que además incluye un libro de códigos fijo 104. En el modo de decodificación normal indicado por un dato de la línea de control “0” como se describe en el contexto de la tabla 210 de la Fig. 2, el decodificador opera como se ilustra en la Fig. 8, cuando se desprecia el elemento 804. Por consiguiente, el paquete correctamente recibido comprende un índice de libro de códigos fijo para controlar el libro de códigos fijo 802, una ganancia de libro de códigos fijo gc para controlar el amplificador 806 y un libro de códigos adaptativo gp para controlar el amplificador 808. Además, el libro de códigos adaptativo 800 se controla por el retardo tonal transmitido y el conmutador 812 se conecta de tal manera que la salida del libro de códigos adaptativo se realimente a la entrada del libro de códigos adaptativo. Además, los coeficientes para el filtro de síntesis de LPC 804 se derivan de los datos transmitidos.
Sin embargo, si el controlador de ocultación de errores 202 de la Fig. 2 detecta una situación de ocultación de error, se inicia el procedimiento de ocultación de error en el cual, a diferencia del procedimiento normal, se incluyen dos filtros de síntesis 106, 108. Además, el retardo tonal correspondiente al libro de códigos adaptativo 102 se genera por un dispositivo de ocultación de error. Además, la ganancia de libro de códigos adaptativo gp y la ganancia de libro de códigos fijo gc también se sintetizan por un procedimiento de ocultación de error de la manera conocida en la técnica para controlar correctamente los amplificadores 402, 404.
Además, dependiendo de la clase de señal, un controlador 409 controla el conmutador 405 para realimentar una combinación de las salidas de ambos libros de códigos (con posterioridad a la aplicación de la correspondiente ganancia de libro de códigos) o para realimentar la salida del libro de códigos adaptativo.
De acuerdo con una realización, los datos para el filtro de síntesis de LPC A 106 y los datos para el filtro de síntesis de LPC B 108 se generan por el generador de representaciones de LPC 100 de la Fig. 1a y además se efectúa una corrección de ganancia mediante los amplificadores 406, 408. Para este fin, se calculan los factores de compensación de ganancia gA y gB para activar correctamente los amplificadores 408, 406 de tal manera que se detenga cualquier influencia de ganancia generado por la representación de LPC. Por último, el combinador 110 combina las salidas de los filtros de síntesis de LPC A, B indicadas por 106 y 108, para obtener la señal de ocultación de error.
A continuación se describe la conmutación del modo normal al modo de ocultación por un lado y del modo de ocultación de regreso al modo normal.
La transición de una LPC común a varias separadas al conmutar de una decodificación de canales limpia a la ocultación no causa ninguna discontinuidad, ya que se puede emplear el estado de memoria de la última LPC correcta para inicializar cada memoria AR o MA de las LPC separadas. De esa manera se garantiza una suave transición de la última trama correcta a la primera perdida.
En la conmutación de ocultación de error a la decodificación de canales limpios (fase de recuperación), el enfoque de las LPC separadas introduce el desafío de actualizar correctamente el estado de la memoria interna del único filtro de LPC durante la decodificación de canales limpios (habitualmente se utilizan modelos AR (autoregresiva). Sólo el uso de la memoria AR de una LPC o una memoria AR promediada daría lugar a discontinuidades en el borde
5 de la trama entre la última perdida y la primera trama correcta. A continuación se describe un método para superar este desafío:
Se agrega una pequeña porción de todos los vectores de excitación (sugerencia: 5 ms) al final de cualquier trama oculta. Este vector de excitación sumado puede alimentarse a continuación a la LPC que se utilizaría para
10 la recuperación. Esto está expuesto en la Fig. 5. Dependiendo de la implementación, también es posible sumar los vectores de excitación después de la compensación de ganancia de LPC.
Es aconsejable comenzar al final de la trama menos 5 ms, ajustar la memoria AR de LPC a cero, derivar la síntesis de LPC utilizando cualquiera de los conjuntos individuales de coeficientes de LPC y guardar el estado de la memoria
15 al final mismo de la trama oculta. Si se recibe correctamente la siguiente trama, a continuación se puede utilizar este estado de memoria para la recuperación (significado: se utiliza para inicializar la memoria de LPC del comienzo de la trama), de lo contrario se descarta. Esta memoria debe introducirse además; debe manejarse por separado de cualquiera de las memorias AR de LPC utilizadas por la ocultación durante la ocultación.
20 Otra solución para la recuperación es el uso del método LPC0, dado a conocer en USAC [4].
A continuación se describe la Fig. 5 en forma más detallada. En general, el libro de códigos adaptativo 102 se puede considerar un libro de códigos predictivo, como se indica en la Fig. 5 o se puede reemplazar por un libro de códigos predictivo. Además, el libro de códigos fijo 104 puede reemplazarse o implementarse como el libro de códigos de 25 ruido 104. Las ganancias de libro de códigos gp y gc, para activar correctamente los amplificadores 402, 404 se transmiten, en el modo normal, en los datos de entrada o se pueden sintetizar mediante un procedimiento de ocultación de error en el caso de ocultación de error. Además, se usa un tercer libro de códigos 412, que puede ser cualquier otro de códigos, que tiene además una ganancia de libro de códigos gr asociada como se indica por el amplificador 414. En una realización, en el bloque 416 se implementa una síntesis de LPC adicional mediante un
30 filtro separado controlado por una representación de LPC de sustitución para el otro libro de códigos. Asimismo, se realiza una corrección de ganancia gc de manera similar a la descrita en el contexto de gA y gB, como se esbozó.
Más aun, se ilustra el sintetizador de LPC X de recuperación adicional indicado en 418 que recibe, como entrada, una suma de al menos una pequeña porción de todos los vectores de excitación tal como 5 ms. Este vector de
35 excitación se introduce en los estados de memoria del sintetizador de LPC X 418 del filtro de síntesis de LPC X.
A continuación, cuando se produce un retroceso del modo de ocultación al modo normal, el filtro único de síntesis de LPC se controla copiando los estados de memoria interna del filtro de síntesis de LPC X en este filtro único de operación normal y además se establecen los coeficientes del filtro mediante la representación de LPC
40 correctamente transmitida.
La Fig. 3 ilustra otra implementación más detallada del sintetizador de LPC con dos filtros de síntesis de LPC 106,
108. Cada filtro es, por ejemplo, un filtro de FIR o un filtro de IIR con las derivaciones de filtro 304, 306 y las memorias internas de filtro 304, 308. Las derivaciones de filtro 302, 306 se controlan por la correspondiente 45 representación de LPC correctamente transmitida o la correspondiente representación de LPC de sustitución generada por el generador de representaciones de LPC, como por ejemplo 100 de la Fig. 1a. Además, se incluye un inicializador de memoria 320. El inicializador de memoria 320 recibe la última representación de LPC correcta y, al efectuarse la conmutación al modo de ocultación de error, el inicializador de memoria 320 proporciona los estados de memoria del filtro único de síntesis de LPC a las memorias internas de filtro 304, 308. En particular, el
50 inicializador de memoria recibe, en lugar de la última representación de LPC correcta o además de la última representación de LPC correcta, los últimos estados de memoria correctos, es decir los estados de memoria interna del filtro único de LPC en el procesamiento, y especialmente después del procesamiento de la última trama/paquete correcto.
55 Además, como ya se señalara en el contexto de la Fig. 5, el inicializador de memoria 320 también puede estar configurado para realizar el procedimiento de inicialización de la memoria para una recuperación de una situación de ocultación de error al modo de operación normal no erróneo. Para ello, el inicializador de memoria 320 o un inicializador de memoria de LPC futuro separado, está configurado para inicializar un único filtro de LPC en el caso de una recuperación de una trama errónea o perdida por una trama correcta. El Inicializador de memoria de LPC
60 está configurado para alimentar al menos una porción de una combinación de una primera información de libros de códigos y una segunda información de libros de códigos o al menos una porción de una combinación de una primera información ponderada de libros de códigos o una segunda información ponderada de libros de códigos a un filtro de LPC separado tal como un filtro de LPC 418 de la Fig. 5. Además, el inicializador de memoria de LPC está configurado para guardar los estados de memoria obtenidos mediante el procesamiento de los valores alimentados.
A continuación, cuando una trama o paquete posterior es una trama o paquete correcto, el único filtro de LPC 814 de la Fig. 8 correspondiente al modo normal se inicializa utilizando los estados de memoria guardados, es decir los estados obtenidos del filtro 418. Además, como se sugiere en la Fig. 5, los coeficientes de filtro para el filtro pueden ser el coeficiente para el filtro de síntesis de LPC 106 o el filtro de síntesis de LPC 108 o el filtro de síntesis de LPC
5 416 o una combinación ponderada o sin ponderar de esos coeficientes.
La Fig. 6 ilustra una implementación adicional con compensación de ganancia. Para este fin, el aparato para generar una señal de ocultación de error comprende un calculador de ganancias 600 y un compensador 406, 408, que ya se ha descrito en el contexto de la Fig. 4 (406, 408) y la Fig. 5 (406, 408, 409). En particular, el calculador de 10 representaciones de LPC 100 transmite la primera representación de LPC de sustitución y la segunda representación de LPC de sustitución a un calculador de ganancias 600. A continuación el calculador de ganancias calcula una primera información de ganancia correspondiente a la primera representación de LPC de sustitución y la segunda información de ganancia correspondiente a la segunda representación de LPC de sustitución y proporciona estos datos al compensador 406, 408, que recibe, además de la primera y segunda informaciones de libros de
15 códigos, como se indica en la Fig. 4 o en la Fig. 5, la LPC de la última trama/paquete/bloque correcto. Seguidamente, el compensador emite la señal compensada. La entrada al compensador puede ser una salida de los amplificadores 402, 404, una salida de los libros de códigos 102, 104 o una salida de los bloques de síntesis 106, 108 en la realización de la Fig. 4.
20 El compensador 406, 408 compensa, parcial o totalmente, una influencia de ganancia de la primera LPC de sustitución en la primera información de ganancia y compensa la influencia de la ganancia de la segunda representación de LPC de sustitución utilizando la segunda información de ganancia.
En una realización, el calculador 600 está configurado para calcular una última información de potencia correcta
25 relacionada con una última representación de LPC correcta antes del comienzo de la ocultación de error. Además, el calculador de ganancias 600 calcula una primera información de potencia correspondiente a la primera representación de LPC de sustitución, una segunda información de potencia correspondiente a la segunda representación de LPC, donde el primer valor de ganancia utiliza la última información correcta de potencia y la primera información de potencia, y un segundo valor de ganancia que utiliza la última información correcta de
30 potencia y la segunda información de potencia. A continuación se realiza la compensación en el compensador 406, 408 utilizando el primer valor de ganancia y utilizando el segundo valor de ganancia. Dependiendo de la información, sin embargo, el cálculo de la última información de potencia correcta también puede realizarse, como se ilustra en la realización de la Fig. 6, directamente por el compensador. Sin embargo, dado que el cálculo de la última información de potencia correcta se realiza básicamente de igual manera que el primer valor de ganancia correspondiente a la
35 primera representación de sustitución y el segundo valor de ganancia correspondiente a la segunda representación de LPC de sustitución, es preferible realizar el cálculo de todos los valores de ganancia en el calculador de ganancias 600 como se ilustra por la entrada 601.
En particular, el calculador de ganancias 600 está configurado para calcular, a partir de la última representación de
40 LPC correcta o la primera y segunda representaciones de LPC de sustitución, una respuesta al impulso para a continuación calcular un valor de rms (valor cuadrático medio) de la respuesta al impulso para obtener la correspondiente información de potencia en la compensación de ganancia, cada vector de excitación una vez aplicado ganancia por la correspondiente ganancia de libro de códigos se vuelve a amplificar con las ganancias gA
o gB. Estas ganancias se determinan calculando la respuesta al impulso de la LPC en uso en el momento y a 45 continuación calculando el rms:
A continuación se compara el resultado con el rms de la última LPC correctamente recibida y se utiliza el cociente como factor de ganancia para compensar el aumento de energía/pérdida de interpolación de LPC:
Este procedimiento se puede considerar un tipo de normalización. Compensa la ganancia, que es un producto de la interpolación de LPC.
Seguidamente se describen las Figs. 7a y 7b en forma más detallada para ilustrar el aparato para generar una señal de ocultación de error o el calculador de ganancias 600 o el compensador 406, 408 calcula la última información de potencia correcta como se indica en 700 en la Fig. 7a. Además, el calculador de ganancias 600 calcula la primera y
segunda informaciones de potencia correspondientes a la primera y segunda representaciones de LPC de sustitución, como se indica en 702. A continuación, como se ilustra en 704, el calculador de ganancias 600 calcula el primero y segundo valores de ganancia. A continuación se compensa la información del libro de códigos o la información ponderada de libros de códigos o la salida de la síntesis de LPC utilizando estos valores de ganancia,
5 como se ilustra en 706. Esta compensación se efectúa preferentemente por los amplificadores 406, 408.
Para este fin, se realizan varias etapas en una realización preferida ilustrada en la Fig. 7b. En la etapa 710, se presenta una representación de LPC, como por ejemplo la primera o segunda representación de LPC de sustitución
o la última representación de LPC correcta. En la etapa 712 se aplican las ganancias de libro de códigos a la
10 información/salida del libro de códigos, como se indica en el bloque 402, 404. Además, en la etapa 716, se calculan las respuestas al impulso tomando en cuenta las correspondientes representaciones de LPC. Seguidamente, en la etapa 718, se calcula un valor de rms por cada respuesta al impuso y en el bloque 720 se calcula la correspondiente ganancia utilizando un valor de rms anterior y un nuevo valor de rms y este cálculo se realiza preferentemente dividiendo el valor anterior de rms por el nuevo valor de rms. Por último, se utiliza el resultado del bloque 720 para
15 compensar el resultado de la etapa 712 para obtener, en última instancia, los resultados compensados, como se indica en la etapa 714.
A continuación se describe otro aspecto, es decir una implementación de un aparato para generar una señal de ocultación de error que consta del generador de representaciones de LPC 100 que genera sólo una única 20 representación de LPC de sustitución, como por ejemplo por la situación ilustrada en la Fig. 8. A diferencia de la Fig. 8, sin embargo, la realización que ilustra otro aspecto en la Fig. 9 comprende el calculador de ganancias 600 y el compensador 406, 408. De esa manera, se compensa cualquier influencia de ganancia por la representación de LPC de sustitución generada por el generador de representaciones de LPC. En particular, esta compensación de ganancia se puede realizar en el lado de la entrada del sintetizador de LPC, como se demuestra en la Fig. 9
25 mediante el compensador 406, 408n o se puede realizar a la salida del sintetizador de LPC, como se indica por el compensador 900 para obtener, en última instancia, la señal de ocultación de error. Por consiguiente, el compensador 406, 408, 900 está configurado para ponderar la información del libro de códigos o una señal de salida de síntesis de LPC proporcionada por el sintetizador de LPC 106, 108.
30 Los demás procedimientos realizados por el generador de representaciones de LPC, el calculador de ganancias, el compensador y el sintetizador de LPC se pueden realizar de la manera descrita en el contexto de las Figs. 1a a 8.
Como se ha reseñado en el contexto de la Fig. 4, el amplificador 402 y el amplificador 406 realizan dos operaciones de ponderación en serie entre sí, particularmente en el caso en que no se realimenta la suma de la salida del 35 multiplicador 402, 404 al libro de códigos adaptativo, sino en que sólo se realimenta la salida del libro de códigos adaptativo, es decir cuando el conmutador 405 está en la posición ilustrada o el amplificador 404 y el amplificador 408 realizan dos operaciones de ponderación en serie. En una realización ilustrada en la Fig. 10, estas dos operaciones de ponderación se pueden realizar en una operación única. Para este fin, el calculador de ganancias 600 transmite su salida gp o gc a un único calculador de valores 1002. Además, se implementa un generador de
40 ganancias de libro de códigos 1000 para generar una ganancia de libro de códigos por ocultación, como se conoce en la técnica. A continuación, el calculador de valores únicos 1002 calcula preferentemente un producto entre gp y gA para obtener el valor único. Además, para la segunda rama, el calculador de valores únicos 1002 calcula un producto entre gA o gB para proporcionar el valor único para la rama inferior de la Fig. 4. Se puede realizar otro procedimiento para la tercera rama, que presenta los amplificadores 414, 409 de la Fig. 5.
45 A continuación se presenta un manipulador 1004 que en conjunto realiza las operaciones de, por ejemplo, los amplificadores 402, 406 a la información de libro de códigos de un único libro de códigos o a la información de libro de códigos de dos o más libros de códigos para obtener, en última instancia, una señal manipulada tal como una señal de libro de códigos o una señal de ocultación, dependiendo de si el manipulador 1004 está situado antes del
50 sintetizador de LPC de la Fig. 9 o con posterioridad al sintetizador de LPC de la Fig. 9. La Fig. 11 ilustra un tercer aspecto, en el cual se incluye el generador de representaciones de LPC 100, el sintetizador de LPC 106, 108 y el estimador de ruido adicional 206, que ya ha sido descrito en el contexto de la Fig. 2. El sintetizador de LPC 106, 108 recibe información de libros de códigos y una representación de LPC de sustitución. La representación de LPC se genera por el generador de representaciones de LPC utilizando la estimación de ruido obtenida del estimador de
55 ruido 206, y el estimador de ruido 206 opera determinando la estimación de ruido a partir de las últimas tramas correctas. Por consiguiente, la estimación de ruido depende de las últimas tramas de audio correctas y la estimación de ruido se realiza durante la recepción de tramas de audio correctas, es decir en el modo de decodificación normal indicado por “0” en la línea de control de la Fig. 2 y a continuación se aplica esta estimación de ruido generada durante el modo de decodificación normal en el modo de ocultación, como lo indica la conexión de los bloques 206 y
60 204 en la Fig. 2.
El estimador de ruido está configurado para procesar una representación espectral de una señal decodificada anterior para proporcionar una representación espectral de ruido y para convertir la representación espectral de ruido a una representación de LPC de ruido, donde la representación de LPC de ruido es el mismo tipo de
representación de LPC que la representación de LPC de sustitución. Por consiguiente, cuando la representación de LPC de sustitución está en la representación en el dominio de la ISF o un vector de ISF, a continuación la representación de LPC de ruido es además un vector de ISF o una representación de ISF.
Además, el estimador de ruido 206 está configurado para aplicar un enfoque de estadísticas mínimas con alisado óptimo a una señal decodificada anterior para derivar la estimación de ruido. Para este procedimiento, es preferible realizar el procedimiento ilustrado en [3]. Sin embargo, también se pueden aplicar otros procedimientos de estimación de ruido que se basan, por ejemplo, en la supresión de las partes tonales en comparación con las partes no tonales de un espectro para filtrar y eliminar el ruido de fondo o ruido en una señal de audio así como para obtener la forma espectral de destino o la estimación de ruido espectral.
Por consiguiente, en una realización, se deriva una estimación de ruido espectral de una señal decodificada anterior y a continuación se convierte la estimación de ruido espectral a una representación de LPC y a continuación a un dominio de ISF para obtener la estimación de ruido final o la forma espectral de destino.
La Fig. 12a ilustra una realización preferida. En la etapa 1200, se obtiene la señal anterior decodificada, como se ilustra, por ejemplo, en la Fig. 2 por el bucle de realimentación 208. En la etapa 1202, se calcula una representación espectral, tal como una representación de transformada Rápida de Fourier (FFT). A continuación, en la etapa 1204, se deriva una forma espectral de destino tal como el enfoque de estadísticas mínimas con alisado óptimo o por cualquier otro procesamiento de estimación de ruido. Seguidamente, se convierte la forma espectral de destino a una representación de LPC, como se indica en el bloque 1206 y por último se convierte la representación de LPC a un factor de ISF, como se detalla en el bloque 1208 para obtener, por último, la forma espectral de destino en el dominio de la ISF, que a continuación puede utilizarse directamente por el generador de representaciones de LPC para generar una representación de LPC de sustitución. En las ecuaciones de esta solicitud, la forma espectral de
cng
destino en el dominio de la ISF está indicada como “ISF”.
En una realización preferida ilustrada en la Fig. 12b, la forma espectral de destino se deriva por ejemplo mediante un enfoque de estadísticas mínimas y alisado óptimo. A continuación, en la etapa 1212, se calcula una representación en el dominio del tiempo mediante la aplicación de una FFT inversa, por ejemplo, a la forma espectral de destino. Seguidamente se calculan los coeficientes de LPC utilizando la recursión de LevinsonDurbin. Sin embargo, el cálculo de los coeficientes de LPC del bloque 1214 también se puede realizar mediante cualquier otro procedimiento aparte de la mencionada recursión de LevinsonDurbin. A continuación, en la etapa 1216, se calcula el factor de ISF final para obtener la estimación de ruido ISFcng para utilizarse por el generador de representaciones de LPC 100.
A continuación se describe la Fig. 13 para ilustrar el uso de la estimación de ruido en el contexto del cálculo de una única representación de LPC de sustitución 1308 para el procedimiento, por ejemplo, ilustrado en la Fig. 8 o para calcular las representaciones de LPC individuales correspondientes a libros de códigos individuales, como se indica en el bloque 1310 para la realización ilustrada en la Fig. 1.
En la etapa 1300, se calcula un valor medio de dos o tres últimas tramas correctas. En la etapa 1302, se produce la última trama correcta representación de LPC. Además, en la etapa 1304, se emite un factor de atenuación que puede controlarse, por ejemplo, por un analizador de señales separado que se puede incluir, por ejemplo, en el controlador de ocultación de errores 200 de la Fig. 2. A continuación, en la etapa 1306, se calcula una estimación de ruido y se puede realizar el procedimiento de la etapa 1306 mediante cualquiera de los procedimientos ilustrados en las Figs. 12a, 12b.
En el contexto del cálculo de una representación de LPC de sustitución única, se envían las salidas de los bloques 1300, 1304, 1306 al calculador 1308. Seguidamente, se calcula una única representación de LPC de sustitución de tal manera que con posterioridad a la pérdida o error de un cierto número de tramas/paquetes, se obtiene la atenuación a la representación de LPC para estimación de ruido.
Sin embargo, las representaciones de LPC individuales correspondientes a un libro de códigos individual, como por ejemplo el libro de códigos adaptativo y el libro de códigos fijo, se calculan como se indica en el bloque 1310, a continuación se realiza el procedimiento descrito anteriormente para calcular la ISFA1 (LPC A) por un lado y el cálculo de ISFB1 (LPC B). Aunque la presente invención se ha descrito en el contexto de diagramas de bloques en que los bloques representan componentes de hardware reales o lógicos, también se puede implementar la presente invención por un método implementado por ordenador. En este último caso, los bloques representan las etapas de método correspondientes, donde estas etapas representan las funciones realizadas por los correspondientes bloques de hardware lógicos o físicos.
Si bien se han descrito algunos aspectos en el contexto de un aparato, es obvio que estos aspectos también representan una descripción del método correspondiente, en el cual un bloque o dispositivo corresponde a una etapa del método o a una característica de una etapa del método. De manera análoga, los aspectos descritos en el
contexto de una etapa del método también representan una descripción de un bloque o elemento correspondiente o de una característica de un aparato correspondiente. Algunas o todas las etapas del método pueden ejecutarse por medio de (o utilizando) un aparato de hardware, como por ejemplo, un microprocesador, una computadora programable o un circuito electrónico. En algunas realizaciones, uno o más de las etapas más importantes del
5 método pueden ejecutarse por ese tipo de aparato.
Dependiendo de ciertos requisitos de implementación, las realizaciones de la invención pueden implementarse en hardware o en software. La implementación se puede realizar empleando un medio de almacenamiento digital, por ejemplo un disco flexible, un DVD, un BlueRay, un CD, una ROM, una PROM, una EPROM, una EEPROM o una
10 memoria FLASH, que tiene almacenadas en la misma señales control legibles electrónicamente, que cooperan (o tienen capacidad para cooperar) con un sistema de computación programable de tal manera que se realice el método respectivo. Por lo tanto, el medio de almacenamiento digital puede ser legible por una computadora.
Algunas realizaciones de acuerdo con la invención comprenden un soporte de datos que tiene señales de control
15 legibles electrónicamente, con capacidad para cooperar con un sistema de computación programable de tal manera que se realice uno de los métodos descritos en el presente documento.
En general, las realizaciones de la presente invención pueden implementarse en forma de un producto programa informático con un código de programa, siendo el código de programa operativo para realizar uno de los métodos al
20 realizarse el programa informático en una computadora. El código de programa puede almacenarse, por ejemplo, en un soporte legible por máquina. Otras realizaciones comprenden el programa informático para realizar uno de los métodos descritos en el presente documento, almacenado en un soporte legible por máquina.
25 En otras palabras, una realización del método de la invención consiste, por lo tanto, en un programa informático que consta de un código de programa para realizar uno de los métodos descritos en el presente documento al realizarse el programa informático en una computadora.
Otra realización adicional del método de la invención consiste, por lo tanto, en un soporte de datos (o medio de
30 almacenamiento no transitorio o medio de almacenamiento digital, o medio legible por computadora) que comprende, grabado en el mismo, el programa informático para realizar uno de los métodos descritos en el presente documento. El portador de datos, el medio de almacenamiento digital o el medio grabado son por lo general tangibles y/o no transitorios.
35 Otra realización del método de la invención es, por lo tanto, un flujo de datos o una secuencia de señales que representa el programa informático para realizar uno de los métodos descritos en el presente documento. El flujo de datos o la secuencia de señales pueden estar configurados, por ejemplo, para transferirse mediante una conexión de comunicación de datos, por ejemplo a través de Internet.
40 Otra realización comprende un medio de procesamiento, por ejemplo una computadora, un dispositivo lógico programable, configurado o adaptado para realizar uno de los métodos descritos en el presente documento.
Una realización adicional comprende una computadora en la que se ha instalado el programa informático para realizar uno de los métodos descritos en el presente documento.
45 Otra realización de acuerdo con la invención comprende un aparato o sistema configurado para transferir (por ejemplo electrónica u ópticamente) un programa informático para realizar uno de los métodos descritos en el presente documento en un receptor. El receptor puede ser, por ejemplo, una computadora, un dispositivo móvil, un dispositivo de memoria o similar. El aparato o sistema puede comprender, por ejemplo, un servidor de archivos para
50 transferir el programa informático al receptor.
En algunas realizaciones, se puede utilizar un dispositivo lógico programable (por ejemplo un campo de matrices de puertas programables) para realizar algunas o todas las funcionalidades de los métodos descritos en el presente documento. En algunas realizaciones, un campo de matrices de puertas programables puede cooperar con un
55 microprocesador para realizar uno de los métodos descritos en el presente documento. En general, los métodos se realizan preferentemente por cualquier aparato de hardware.
Las realizaciones anteriormente descritas son meramente ilustrativas de los principios de la presente invención. Se entiende que las modificaciones y variaciones de las disposiciones y detalles descritos en el presente documento
60 serán evidentes para los expertos en la materia. Por lo tanto, sólo es la intención limitarse al alcance de las siguientes reivindicaciones de patente y no a los detalles específicos presentados a manera de descripción y explicación de las realizaciones presentadas en el presente documento.
Referencias
[1] ITUT G.718 recomendación, 2006
[2] Kazuhiro Kondo, Kiyoshi Nakagawa, “A Packet Loss Concealment Method Using Recursive Linear Prediction” Department of Electrical Engineering, Yamagata University, Japón.
5 [3] R. Martin, Noise Power Spectral Density Estimation Based on Optimal Smoothing and Minimum Statistics, IEEE Transactions on speech and audio processing, vol. 9, n.º 5, julio de 2001
[4] Ralf Geiger et. al., Solicitud de patente US20110173011 A1, Audio Encoder and Decoder for Encoding and Decoding Frames of a Sampled Audio Signal
[5] 3GPP TS 26.190; Transcoding functions; 3GPP technical specification 10

Claims (9)

  1. REIVINDICACIONES
    1. Aparato para generar una señal de ocultación de error, que comprende:
    5 un generador de representación de LPC (codificación de predicción lineal) (100) para generar una representación de LPC de sustitución; un calculador de ganancia (600) para calcular una información de ganancia a partir de la representación de LPC de sustitución; un compensador (406, 408) para compensar una influencia de ganancia de la representación de LPC de
    10 sustitución usando la información de ganancia; y un sintetizador de LPC (106, 108) para filtrar información de libro de códigos usando la representación de LPC de sustitución para obtener la señal de ocultación de error, en el que el compensador (406, 408, 900) está configurado para ponderar la información de libro de códigos o una señal de salida de síntesis de LPC.
  2. 2. Aparato de la reivindicación 1, en el que el calculador de ganancia (600) está configurado para calcular:
    una información de potencia de última trama correcta (700) relacionada con una última representación de LPC
    20 correcta antes de un inicio de la ocultación de error; una información de potencia a partir de la representación de LPC de sustitución (702); un valor de ganancia usando la última información de potencia de trama correcta (704), en el que el compensador (406, 408, 900) está configurado para compensar usando el valor de ganancia.
    25 3. Aparato de la reivindicación 2, en el que el calculador de ganancia (600) está configurado para calcular una respuesta de impulso (716) de la representación de LPC de sustitución y para calcular un valor de rms (718) a partir de la respuesta de impulso para obtener la información de potencia.
    30 4. Aparato de una cualquiera de las reivindicaciones anteriores, en el que el calculador de ganancia (600) está configurado para calcular la ganancia basándose en la siguiente ecuación:
    en el que rmsnuevo es un valor cuadrático medio, rms, de la representación de LPC de sustitución, en el que t es una variable de tiempo, en el que T es un valor de tiempo predeterminado entre 3 y 8 ms o menor 40 que un tamaño de trama, en el que imp_resp es una respuesta de impulso derivada de la representación de LPC de sustitución, y en el que rmsantiguo es un valor de rms derivado de la última trama correcta.
  3. 5. Aparato de una de las reivindicaciones anteriores, que comprende adicionalmente:
    45 un libro de códigos adaptativo (102) para proporcionar una información de libro de códigos adaptativo; un libro de códigos fijo (104) para proporcionar una información de libro de códigos fijo; un ponderador de libro de códigos adaptativo (402) para ponderar la información de libro de códigos adaptativo, un ponderador de libro de códigos fijo (404) para ponderar la información de libro de códigos fijo, en el que el compensador (406, 408) está configurado para procesar una salida del ponderador de libro de
    50 códigos adaptativo (402) o el ponderador de libro de códigos fijo (404) o una suma de salidas del ponderador de libro de códigos adaptativo y el ponderador de libro de códigos fijo.
  4. 6. Aparato de la reivindicación 5, en el que el ponderador de libro de códigos adaptativo (402) y el compensador (406) o el ponderador de libro de
    55 códigos fijo (404) y el compensador (408) se implementan por un manipulador (1004) para manipular una señal usando una información de manipulación única, derivándose la información de manipulación única de una información de ponderador de libro de códigos y una información de compensador.
  5. 7. Aparato de la reivindicación 5 o 6, en el que los ponderadores del libro de códigos están configurados para aplicar ganancias de libro de códigos de sustitución correspondientes derivadas a partir de últimas ganancias de libro de códigos recibidas correctas.
    5 8. Aparato de una de las reivindicaciones anteriores, en el que el generador de representación de LPC (100) está configurado para generar una representación de LPC de sustitución adicional; y en el que el sintetizador de LPC (106, 108) está configurado para filtrar una información de libro de códigos adicional usando la representación de LPC de sustitución adicional, y en el que el aparato comprende adicionalmente un
    10 combinador de señal de sustitución (110) para sustituir salidas de sintetizador de LPC.
  6. 9. Aparato de la reivindicación 8, que comprende adicionalmente:
    un libro de códigos adaptativo (102) para proporcionar la primera información de libro de códigos; y 15 un libro de códigos fijo (104) para proporcionar la segunda información de libro de códigos.
  7. 10. Aparato de la reivindicación 9, en el que el libro de códigos fijo (104) está configurado para proporcionar una señal de ruido (112) para la ocultación de error, y
    20 en el que el libro de códigos adaptativo (102) está configurado para proporcionar un contenido de libro de códigos adaptativo o un contenido de libro de códigos adaptativo combinado con un contenido de libro de códigos fijo anterior.
  8. 11. Aparato de la reivindicación 10,
    25 en el que el generador de representación de LPC (100) está configurado para generar la primera representación de LPC de sustitución usando una o al menos dos representaciones de LPC anteriores no erróneas, y para generar la segunda representación de LPC de sustitución usando una estimación de ruido y al menos una representación de LPC anterior no errónea.
    30 12. Aparato de la reivindicación 11, en el que el generador de representación de LPC (100) está configurado para generar la primera representación de LPC de sustitución usando un valor medio de al menos dos últimas tramas correctas (130) y una suma ponderada del valor medio y la última trama correcta (136), en el que un primer factor de ponderación de la suma ponderada cambia a través de sucesivas tramas erróneas o perdidas,
    35 en el que el generador de representación de LPC (100) está configurado para generar la segunda representación de LPC de sustitución únicamente usando una suma ponderada (146) de una última trama correcta (114) y la estimación de ruido (140), en el que un segundo factor de ponderación de la suma ponderada cambia a través de sucesivas tramas erróneas o perdidas.
    40 13. Aparato de la reivindicación 11 o 12, un estimador de ruido (206) para estimar la estimación de ruido a partir de una o más tramas correctas anteriores (208).
  9. 14. Método de generación de una señal de ocultación de error, que comprende:
    45 generar (100) una representación de LPC (codificación de predicción lineal) de sustitución; calcular (600) una información de ganancia a partir de la representación de LPC de sustitución; compensar (406, 408) una influencia de ganancia de la representación de LPC de sustitución usando la información de ganancia; y
    50 filtrar (106, 108) información de libro de códigos usando la representación de LPC de sustitución para obtener la señal de ocultación de error, en el que la compensación (406, 408, 900) está configurada para ponderar la información libro de códigos o una señal de salida de síntesis de LPC.
    55 15. Programa informático para realizar ponderación, cuando se ejecuta en un ordenador o un procesador, el método de la reivindicación 14.
ES15710132.0T 2014-03-19 2015-03-04 Aparato, método y programa informático correspondiente para generar una señal de ocultación de error usando compensación de potencia Active ES2664391T3 (es)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
EP14160774 2014-03-19
EP14160774 2014-03-19
EP14167005 2014-05-05
EP14167005 2014-05-05
EP14178769.7A EP2922056A1 (en) 2014-03-19 2014-07-28 Apparatus, method and corresponding computer program for generating an error concealment signal using power compensation
EP14178769 2014-07-28
PCT/EP2015/054490 WO2015139958A1 (en) 2014-03-19 2015-03-04 Apparatus, method and corresponding computer program for generating an error concealment signal using power compensation

Publications (1)

Publication Number Publication Date
ES2664391T3 true ES2664391T3 (es) 2018-04-19

Family

ID=51228339

Family Applications (1)

Application Number Title Priority Date Filing Date
ES15710132.0T Active ES2664391T3 (es) 2014-03-19 2015-03-04 Aparato, método y programa informático correspondiente para generar una señal de ocultación de error usando compensación de potencia

Country Status (18)

Country Link
US (3) US10224041B2 (es)
EP (2) EP2922056A1 (es)
JP (3) JP6525444B2 (es)
KR (2) KR101889721B1 (es)
CN (2) CN111370005B (es)
AU (1) AU2015233708B2 (es)
BR (1) BR112016020866B1 (es)
CA (1) CA2942698C (es)
ES (1) ES2664391T3 (es)
HK (1) HK1232334A1 (es)
MX (1) MX357493B (es)
MY (1) MY177216A (es)
PL (1) PL3120349T3 (es)
PT (1) PT3120349T (es)
RU (1) RU2651217C1 (es)
SG (1) SG11201607698TA (es)
TW (1) TWI581253B (es)
WO (1) WO2015139958A1 (es)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
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
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
ES2874629T3 (es) 2016-03-07 2021-11-05 Fraunhofer Ges Forschung Unidad de ocultación de error, decodificador de audio y método y programa informático relacionados que desvanecen una trama de audio ocultada según factores de amortiguamiento diferentes para bandas de frecuencia diferentes
MX2018010756A (es) 2016-03-07 2019-01-14 Fraunhofer Ges Forschung Unidad de ocultamiento de error, decodificador de audio, y método relacionado y programa de computadora que usa características de una representación decodificada de una trama de audio decodificada apropiadamente.
US10249305B2 (en) * 2016-05-19 2019-04-02 Microsoft Technology Licensing, Llc Permutation invariant training for talker-independent multi-talker speech separation
WO2020164751A1 (en) 2019-02-13 2020-08-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decoder and decoding method for lc3 concealment including full frame loss concealment and partial frame loss concealment

Family Cites Families (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3316945B2 (ja) * 1993-07-22 2002-08-19 松下電器産業株式会社 伝送誤り補償装置
US5574825A (en) 1994-03-14 1996-11-12 Lucent Technologies Inc. Linear prediction coefficient generation during frame erasure or packet loss
CA2233896C (en) * 1997-04-09 2002-11-19 Kazunori Ozawa Signal coding system
JP3649854B2 (ja) * 1997-05-09 2005-05-18 松下電器産業株式会社 音声符号化装置
WO1999062055A1 (fr) 1998-05-27 1999-12-02 Ntt Mobile Communications Network Inc. Decodeur de son et procede de decodage de son
US7072832B1 (en) * 1998-08-24 2006-07-04 Mindspeed Technologies, Inc. System for speech encoding having an adaptive encoding arrangement
US6260010B1 (en) * 1998-08-24 2001-07-10 Conexant Systems, Inc. Speech encoder using gain normalization that combines open and closed loop gains
US6240386B1 (en) * 1998-08-24 2001-05-29 Conexant Systems, Inc. Speech codec employing noise classification for noise compensation
US7423983B1 (en) 1999-09-20 2008-09-09 Broadcom Corporation Voice and data exchange over a packet based network
JP4218134B2 (ja) 1999-06-17 2009-02-04 ソニー株式会社 復号装置及び方法、並びにプログラム提供媒体
US7110947B2 (en) 1999-12-10 2006-09-19 At&T Corp. Frame erasure concealment technique for a bitstream-based feature extractor
US6757654B1 (en) 2000-05-11 2004-06-29 Telefonaktiebolaget Lm Ericsson Forward error correction in speech coding
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
US7031926B2 (en) 2000-10-23 2006-04-18 Nokia Corporation Spectral parameter substitution for the frame error concealment in a speech decoder
JP2002202799A (ja) 2000-10-30 2002-07-19 Fujitsu Ltd 音声符号変換装置
US6968309B1 (en) 2000-10-31 2005-11-22 Nokia Mobile Phones Ltd. Method and system for speech frame error concealment in speech decoding
JP3806344B2 (ja) 2000-11-30 2006-08-09 松下電器産業株式会社 定常雑音区間検出装置及び定常雑音区間検出方法
US7472059B2 (en) * 2000-12-08 2008-12-30 Qualcomm Incorporated Method and apparatus for robust speech classification
US7143032B2 (en) 2001-08-17 2006-11-28 Broadcom Corporation Method and system for an overlap-add technique for predictive decoding based on extrapolation of speech and ringinig waveform
US7272555B2 (en) * 2001-09-13 2007-09-18 Industrial Technology Research Institute Fine granularity scalability speech coding for multi-pulses CELP-based algorithm
US7379865B2 (en) 2001-10-26 2008-05-27 At&T Corp. System and methods for concealing errors in data transmission
JP2003295882A (ja) 2002-04-02 2003-10-15 Canon Inc 音声合成用テキスト構造、音声合成方法、音声合成装置及びそのコンピュータ・プログラム
CA2388439A1 (en) 2002-05-31 2003-11-30 Voiceage Corporation A method and device for efficient frame erasure concealment in linear predictive based speech codecs
US20040083110A1 (en) 2002-10-23 2004-04-29 Nokia Corporation Packet loss recovery based on music signal classification and mixing
US8725501B2 (en) 2004-07-20 2014-05-13 Panasonic Corporation Audio decoding device and compensation frame generation method
WO2006028009A1 (ja) 2004-09-06 2006-03-16 Matsushita Electric Industrial Co., Ltd. スケーラブル復号化装置および信号消失補償方法
BRPI0607251A2 (pt) 2005-01-31 2017-06-13 Sonorit Aps método para concatenar um primeiro quadro de amostras e um segundo quadro subseqüente de amostras, código de programa executável por computador, dispositivo de armazenamento de programa, e, arranjo para receber um sinal de áudio digitalizado
FR2897977A1 (fr) 2006-02-28 2007-08-31 France Telecom Procede de limitation de gain d'excitation adaptative dans un decodeur audio
JP4752612B2 (ja) 2006-05-19 2011-08-17 株式会社村田製作所 突起電極付き回路基板の製造方法
WO2008007700A1 (fr) * 2006-07-12 2008-01-17 Panasonic Corporation Dispositif de décodage de son, dispositif de codage de son, et procédé de compensation de trame perdue
WO2008022181A2 (en) 2006-08-15 2008-02-21 Broadcom Corporation Updating of decoder states after packet loss concealment
CN101366079B (zh) 2006-08-15 2012-02-15 美国博通公司 用于子带预测编码的基于全带音频波形外插的包丢失隐藏
JP2008058667A (ja) 2006-08-31 2008-03-13 Sony Corp 信号処理装置および方法、記録媒体、並びにプログラム
US8239191B2 (en) 2006-09-15 2012-08-07 Panasonic Corporation Speech encoding apparatus and speech encoding method
WO2008056775A1 (fr) 2006-11-10 2008-05-15 Panasonic Corporation Dispositif de décodage de paramètre, dispositif de codage de paramètre et procédé de décodage de paramètre
ES2642091T3 (es) * 2007-03-02 2017-11-15 Iii Holdings 12, Llc Dispositivo de codificación de audio y dispositivo de decodificación de audio
CN100524462C (zh) * 2007-09-15 2009-08-05 华为技术有限公司 对高带信号进行帧错误隐藏的方法及装置
KR101450297B1 (ko) 2007-09-21 2014-10-13 오렌지 복잡성 분배를 이용하는 디지털 신호에서의 전송 에러 위장
CN100550712C (zh) 2007-11-05 2009-10-14 华为技术有限公司 一种信号处理方法和处理装置
WO2009084226A1 (ja) 2007-12-28 2009-07-09 Panasonic Corporation ステレオ音声復号装置、ステレオ音声符号化装置、および消失フレーム補償方法
DE102008004451A1 (de) 2008-01-15 2009-07-23 Pro Design Electronic Gmbh Verfahren und Vorrichtung zur Emulation von Hardwarebeschreibungsmodellen zur Herstellung von Prototypen für integrierte Schaltungen
AU2009220321B2 (en) 2008-03-03 2011-09-22 Intellectual Discovery Co., Ltd. Method and apparatus for processing audio signal
FR2929466A1 (fr) 2008-03-28 2009-10-02 France Telecom Dissimulation d'erreur de transmission dans un signal numerique dans une structure de decodage hierarchique
US8301440B2 (en) * 2008-05-09 2012-10-30 Broadcom Corporation Bit error concealment for audio coding systems
MX2011000375A (es) 2008-07-11 2011-05-19 Fraunhofer Ges Forschung Codificador y decodificador de audio para codificar y decodificar tramas de una señal de audio muestreada.
DE102008042579B4 (de) * 2008-10-02 2020-07-23 Robert Bosch Gmbh Verfahren zur Fehlerverdeckung bei fehlerhafter Übertragung von Sprachdaten
CN102034476B (zh) * 2009-09-30 2013-09-11 华为技术有限公司 语音帧错误检测的方法及装置
KR101761629B1 (ko) 2009-11-24 2017-07-26 엘지전자 주식회사 오디오 신호 처리 방법 및 장치
EP2458585B1 (en) 2010-11-29 2013-07-17 Nxp B.V. Error concealment for sub-band coded audio signals
BR112013020324B8 (pt) 2011-02-14 2022-02-08 Fraunhofer Ges Forschung Aparelho e método para supressão de erro em fala unificada de baixo atraso e codificação de áudio
JP5969513B2 (ja) 2011-02-14 2016-08-17 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 不活性相の間のノイズ合成を用いるオーディオコーデック
US9026434B2 (en) 2011-04-11 2015-05-05 Samsung Electronic Co., Ltd. Frame erasure concealment for a multi rate speech and audio codec
MX2013012301A (es) 2011-04-21 2013-12-06 Samsung Electronics Co Ltd Aparato para cuantificar coeficientes de codificacion predictiva lineal, aparato de codificacion de sonido, aparato para decuantificar coeficientes de codificacion predictiva lineal, aparato de decodificacion de sonido y dispositivo electronico para los mismos.
CN103688306B (zh) 2011-05-16 2017-05-17 谷歌公司 对被编码为连续帧序列的音频信号进行解码的方法和装置
CN102726034B (zh) 2011-07-25 2014-01-08 华为技术有限公司 一种参数域回声控制装置和方法
JP5596649B2 (ja) 2011-09-26 2014-09-24 株式会社東芝 文書マークアップ支援装置、方法、及びプログラム
KR101812123B1 (ko) 2012-11-15 2017-12-26 가부시키가이샤 엔.티.티.도코모 음성 부호화 장치, 음성 부호화 방법, 음성 부호화 프로그램, 음성 복호 장치, 음성 복호 방법 및 음성 복호 프로그램
KR20230020553A (ko) 2013-04-05 2023-02-10 돌비 인터네셔널 에이비 스테레오 오디오 인코더 및 디코더
CN103456307B (zh) * 2013-09-18 2015-10-21 武汉大学 音频解码器中帧差错隐藏的谱代替方法及系统
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
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
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
US9837094B2 (en) 2015-08-18 2017-12-05 Qualcomm Incorporated Signal re-use during bandwidth transition period

Also Published As

Publication number Publication date
KR20180027620A (ko) 2018-03-14
WO2015139958A1 (en) 2015-09-24
JP2017510858A (ja) 2017-04-13
CA2942698C (en) 2018-11-06
JP6525444B2 (ja) 2019-06-05
US10733997B2 (en) 2020-08-04
RU2651217C1 (ru) 2018-04-18
CN111370005A (zh) 2020-07-03
US20170004835A1 (en) 2017-01-05
AU2015233708B2 (en) 2017-09-07
JP6761509B2 (ja) 2020-09-23
US20190156840A1 (en) 2019-05-23
JP2019164366A (ja) 2019-09-26
US20200342882A1 (en) 2020-10-29
MX2016012005A (es) 2016-12-07
CN106170830A (zh) 2016-11-30
JP7116521B2 (ja) 2022-08-10
BR112016020866B1 (pt) 2022-10-25
PL3120349T3 (pl) 2018-07-31
JP2020204779A (ja) 2020-12-24
KR101889721B1 (ko) 2018-08-20
KR101986087B1 (ko) 2019-06-05
US11367453B2 (en) 2022-06-21
SG11201607698TA (en) 2016-10-28
CN106170830B (zh) 2020-02-07
AU2015233708A1 (en) 2016-09-22
KR20160132452A (ko) 2016-11-18
EP2922056A1 (en) 2015-09-23
CN111370005B (zh) 2023-12-15
US10224041B2 (en) 2019-03-05
EP3120349B1 (en) 2018-01-24
MX357493B (es) 2018-07-11
EP3120349A1 (en) 2017-01-25
MY177216A (en) 2020-09-09
TWI581253B (zh) 2017-05-01
PT3120349T (pt) 2018-04-05
TW201539433A (zh) 2015-10-16
CA2942698A1 (en) 2015-09-24
HK1232334A1 (zh) 2018-01-05
BR112016020866A2 (es) 2017-08-22

Similar Documents

Publication Publication Date Title
ES2664391T3 (es) Aparato, método y programa informático correspondiente para generar una señal de ocultación de error usando compensación de potencia
ES2662936T3 (es) Aparato, método y programa informático correspondiente para generar una señal de ocultación de error usando una estimación de ruido adaptativa
US11393479B2 (en) Apparatus and method for generating an error concealment signal using individual replacement LPC representations for individual codebook information