ES2816014T3 - Ocultación de error de trama - Google Patents

Ocultación de error de trama Download PDF

Info

Publication number
ES2816014T3
ES2816014T3 ES18191125T ES18191125T ES2816014T3 ES 2816014 T3 ES2816014 T3 ES 2816014T3 ES 18191125 T ES18191125 T ES 18191125T ES 18191125 T ES18191125 T ES 18191125T ES 2816014 T3 ES2816014 T3 ES 2816014T3
Authority
ES
Spain
Prior art keywords
frames
frame
transient
transform coefficients
erroneous
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
ES18191125T
Other languages
English (en)
Inventor
Sebastian Näslund
Jonas Svedberg
Volodya Grancharov
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.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
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 Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Application granted granted Critical
Publication of ES2816014T3 publication Critical patent/ES2816014T3/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/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/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
    • G10L19/025Detection of transients or attacks for time/frequency resolution switching
    • 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

Landscapes

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

Abstract

Un método de ocultación de pérdida de tramas realizado por un decodificador de audio, comprendiendo, el método: analizar (S11) los cambios de signo de los coeficientes de transformada en las tramas recibidas mediante la determinación de un número de cambios de signo entre los coeficientes de transformada correspondientes en subvectores correspondientes de tramas consecutivas no erróneas que no cuentan con una transitoria, comprendiendo, cada subvector, múltiples coeficientes de una banda de frecuencia; acopiar (S12) el número de cambios de signo en los subvectores correspondientes a través de un número predeterminado de tramas consecutivas no erróneas que no cuentan con una transitoria; y reconstruir (S13) una trama perdida copiando los coeficientes de transformada de una trama no errónea anterior, y, si al menos dos tramas consecutivas no erróneas previas inmediatamente anteriores a la trama perdida no cuentan con una transitoria: invertir los signos de los coeficientes de transformada en los subvectores que tengan un número acopiado de cambios de signo que sea igual o superior a un umbral predeterminado.

Description

DESCRIPCIÓN
Ocultación de error de trama
Campo técnico
La tecnología propuesta se refiere a la ocultación de error de trama en base a tramas que incluyen vectores de coeficiente de transformada.
Antecedentes
La transmisión de audio de alta calidad puede utilizar típicamente esquemas de codificación en base a transformada. La señal de audio de entrada se procesa habitualmente en bloques de tiempo llamados tramas, de cierto tamaño, como, por ejemplo, de 20ms. Una trama es transformada mediante una transformada adecuada, tal como, por ejemplo, la transformada discreta de coseno modificada (MDCT) y los coeficientes de transformada son entonces cuantificados y transmitidos a través de la red.
Sin embargo, cuando se hace funcionar un códec de audio en un sistema de comunicación, que incluye redes inalámbricas o por paquetes, podría perderse una trama en la transmisión, o llegar demasiado tarde para de usarse en un escenario en tiempo real. Un problema similar surge cuando los datos dentro de una trama han sido dañados, y el códec puede configurarse para descartar tales tramas dañadas. Los ejemplos anteriores se denominan borrado de trama o pérdida de paquetes, y, cuando el caso se produce, el decodificador típicamente invoca ciertos algoritmos para evitar o reducir la degradación de la calidad de audio causada por el borrado de trama, y tales algoritmos se llaman algoritmos de ocultación de borrado (o de error) de trama (FEC) o algoritmos de ocultación de pérdida de paquetes (PLC).
La figura 1 ilustra una entrada de señal de audio en un codificador 10. Se realiza una transformada a un dominio de frecuencia en el paso S1, se realiza una cuantificación en el paso S2, y unas paquetización y transmisión de los coeficientes de frecuencia cuantificados (representados por índices) se realizan en el paso S2. Los paquetes son recibidos por un decodificador 12 en el paso S4, después de la transmisión, y los coeficientes de frecuencia se reconstruyen en el paso S5, en el que se realiza un algoritmo de ocultación de borrado (o de error) de trama, como lo indica una unidad 14 de FEC. Los coeficientes de frecuencia reconstruidos se transforman inversamente al dominio tiempo en el paso S6. De este modo, la figura 1 es una descripción general del sistema, en la que los errores de transmisión se manejan en el decodificador 12 de audio en el proceso de reconstrucción de parámetros/forma de onda, y un algoritmo de ocultación de borrado de trama realiza una reconstrucción de tramas perdidas o dañadas.
El fin de la ocultación de errores es sintetizar partes perdidas de la señal de audio que no llegan o no llegan a tiempo al decodificador, o que están dañadas. Cuando se pudiera tolerar un retardo adicional y/o hubiera bitios adicionales disponibles, se podrían usar diversos conceptos potentes de FEC que pueden basarse, por ejemplo, en la interpolación de trama perdida entre dos tramas válidas, o en la transmisión de información secundaria esencial. Sin embargo, en un escenario de conversación en tiempo real no es típicamente posible introducir un retardo adicional, y rara vez es posible aumentar la dotación de bitios y la complejidad computacional del algoritmo. Tres enfoques ejemplares de FEC para un escenario en tiempo real son los de:
- El silenciamiento, en el que los coeficientes espectrales faltantes se establecen en cero.
- La repetición, en el que se repiten los coeficientes de la última trama válida.
- La inyección de ruido, en donde los coeficientes espectrales faltantes son la salida de un generador de ruido aleatorio.
Un ejemplo de un algoritmo FEC que comúnmente usan los códecs basados en transformaciones es un algoritmo de repetición de trama que usa el enfoque de repetición y repite los coeficientes de transformada de la trama recibida previamente, a veces con un factor de escala, como, por ejemplo, como se describe en [1]. Los coeficientes de transformada repetidos se utilizan después para reconstruir la señal de audio para la trama perdida. Los algoritmos de repetición de trama y los algoritmos para insertar ruido o silencio son algoritmos atractivos, porque tienen una baja complejidad computacional y no requieren que se transmitan bitios adicionales ni ningún retardo adicional. Sin embargo, la ocultación del error puede degradar la señal reconstruida. Por ejemplo, un esquema de FEC basado en silenciamiento podría crear grandes discontinuidades de energía y una mala calidad percibida, y el uso de un algoritmo de inyección de ruido podría conducir a un impacto perceptivo negativo, especialmente cuando se aplica a una región con componentes tonales prominentes.
Otro enfoque descrito en [2] implica la transmisión de información lateral para la reconstrucción de tramas erróneas por interpolación. Un inconveniente de este método es que requiere ancho de banda adicional para la información secundaria. Para los coeficientes de MDCT sin información secundaria disponible, las amplitudes se estiman por interpolación, mientras que los signos se estiman utilizando un modelo probabilístico que requiere una gran cantidad de tramas pasadas (se sugieren 50), que pueden no estar disponibles en la realidad.
Un método de interpolación bastante complejo con correcciones multiplicativas para la reconstrucción de tramas perdidas se describe en [3].
Akinori Ito et al., “Robust transmission of audio signals over the internet: an advanced packet loss concealment for MP3-based audio signals", Interdisciplinary Information Sciences, 10 de diciembre de 2012, páginas 99-105, describe métodos de ocultación de pérdida de paquetes para audio MP3. Los métodos propuestos se basan en la estimación de los coeficientes de transformada discreta de coseno modificada (MDCT) de los paquetes perdidos. Un inconveniente adicional de los métodos de ocultación de error de trama basados en interpolación es que introducen retardos adicionales (la trama después de la trama errónea tiene que recibirse antes de que se pueda intentar cualquier interpolación) que pueden no ser aceptables, como, por ejemplo, en aplicaciones en tiempo real tales como aplicaciones conversacionales.
Sumario
La invención se define por las reivindicaciones adjuntas.
Un objeto de la tecnología propuesta es la ocultación mejorada de error de trama.
Este objetivo se cumple mediante realizaciones de la tecnología propuesta.
De acuerdo con un primer aspecto, se proporciona un método de ocultación de pérdida de trama realizado por un decodificador de audio. El método implica analizar los cambios de signo de coeficientes de transformada en tramas recibidas mediante la determinación de un número de cambios de signo entre coeficientes de transformada correspondientes en los subvectores correspondientes de tramas consecutivas no erróneas que no cuentan con una transitoria, comprendiendo, cada subvector, múltiples coeficientes de una banda de frecuencia. El método implica también acopiar la cantidad de cambios de signo en los subvectores correspondientes a través de un número predeterminado de tramas consecutivas no erróneas que no cuenten con una transitoria. Además, el método implica la reconstrucción de una trama perdida copiando los coeficientes de transformada de una trama no errónea anterior, y, si al menos dos tramas no erróneas consecutivas anteriores que preceden inmediatamente a la trama perdida no cuentan con una transitoria, invertir signos de coeficientes de transformada en subvectores que tengan un número acopiado de cambios de signo que sea igual o superior a un umbral predeterminado.
De acuerdo con un segundo aspecto, la tecnología propuesta implica una realización de un aparato. El aparato está adaptado para analizar los cambios de signo de los coeficientes de transformada en las tramas de audio recibidas mediante la determinación de un número de cambios de signo entre los coeficientes de transformada correspondientes en los subvectores correspondientes de tramas consecutivas no erróneas que no cuenten con transitorias, comprendiendo, cada subvector, múltiples coeficientes de una banda de frecuencia. El aparato está adaptado adicionalmente para acopiar el número de cambios de signo en los subvectores correspondientes a través de un número predeterminado de tramas consecutivas no erróneas que no cuenten con una transitoria, y para reconstruir una trama perdida copiando los coeficientes de transformada de una trama anterior no errónea, y, si al menos dos tramas anteriores no erróneas consecutivas que preceden inmediatamente a la trama perdida no cuentan con una transitoria, para invertir signos de coeficientes de transformada en subvectores que tengan un número acopiado de cambios de signo que sea igual o superior a un umbral predeterminado.
De acuerdo con un tercer aspecto, se proporciona un programa informático para el ocultamiento de pérdida de trama. El programa informático comprende un código legible por ordenador que, cuando se ejecuta en un procesador, hace que el procesador realice las siguientes acciones: analiza los cambios de signo de los coeficientes de transformada en las tramas de audio recibidas al determinar un número de cambios de signo entre los coeficientes de transformada correspondientes en los subvectores correspondientes de tramas consecutivas no erróneas que no cuentan con transitorias, comprendiendo, cada subvector, múltiples coeficientes de una banda de frecuencia. Acopia el número de cambios de signo en los subvectores correspondientes a través de un número predeterminado de tramas consecutivas no erróneas que no cuenten con una transitoria. Reconstruye una trama perdida copiando los coeficientes de transformada de una trama no errónea anterior, y, si al menos dos tramas no erróneas consecutivas anteriores que preceden inmediatamente a la trama perdida no cuentan con una transitoria, invierte signos de coeficientes de transformada en subvectores que tienen un número acopiado de cambios de signo que iguala o supera un umbral predeterminado.
De acuerdo con un cuarto aspecto, se proporciona un producto de programa informático, que comprende un medio legible por ordenador y un programa informático, de acuerdo con el tercer aspecto, almacenado en el medio legible por ordenador.
Al menos una de las realizaciones es capaz de mejorar la calidad subjetiva de audio en caso de pérdida de trama, retardo de trama o daño de trama, y esta mejora se logra sin transmitir parámetros secundarios adicionales o generar retardos extra requeridos por interpolación, y con baja complejidad y pocos requisitos de memoria.
Breve descripción de los dibujos
La tecnología propuesta, junto con otros objetos y ventajas adicionales de ella, puede entenderse mejor haciendo referencia a la siguiente descripción tomada junto con los dibujos que se acompañan, en los que:
La figura 1 es un diagrama que ilustra el concepto de ocultación de error de trama;
La figura 2 es un diagrama
Figure imgf000004_0001
que ilustra el rastreo del cambio de signo;
La figura 3 es un diagrama que ilustra situaciones en las que los cambios de signo no se consideran significativos. La figura 4 es un diagrama que ilustra la estructura de trama.
La figura 5 es un diagrama que ilustra un ejemplo de reconstrucción de un subvector de una trama errónea;
La figura 6 es un diagrama
Figure imgf000004_0002
e flujo que ilustra una realización general del método propuesto; La figura 7 es un diagrama de bloques que ofrece una visión general de la tecnología propuesta. La figura 8 es un diagrama de bloques de una realización de ejemplo de un decodificador de acuerdo con la tecnología propuesta;
La figura 9 es un diagrama de bloques de una realización de ejemplo de un decodificador de acuerdo con la tecnología propuesta;
La figura 10 es un diagrama de bloques de una realización de ejemplo de un decodificador de acuerdo con la tecnología propuesta;
La figura 11 es un diagrama de bloques de una realización de ejemplo de un decodificador de acuerdo con la tecnología propuesta;
La figura 12 es un diagrama de bloques de un terminal de usuario. y
La figura 13 es un diagrama que ilustra otra realización de ocultación de error de trama.
Descripción detallada
En todos los dibujos se utilizan las mismas designaciones de referencia para elementos similares o correspondientes.
La tecnología propuesta en el presente documento es generalmente aplicable a los tipos de transformada lapeada modulada (MLT), como, por ejemplo, MDCT, que es la transformada actualmente preferida. Para simplificar la descripción, sólo se discutirá a continuación la MDCT.
Además, en la descripción de más adelante, los términos “trama perdida”, “trama retardada”, “trama dañada” y “tramas que contienen datos dañados” representan ejemplos de tramas erróneas que van a ser reconstruidas por la tecnología de ocultación de error de trama propuesta. De manera similar, el término "tramas válidas" se utilizará para indicar tramas no erróneas.
El uso de un algoritmo de repetición de trama para ocultar errores de trama en un códec de transformada que usa la MDCT puede causar degradación en la señal de audio reconstruida, debido al hecho de que en el dominio MDCT, la información de fase se transmite tanto en la amplitud como en el signo de los coeficientes de MDCT. Para componentes tonales o armónicos, la evolución de los coeficientes de MDCT correspondientes en términos de amplitud y signo depende de la frecuencia y la fase inicial de los tonos subyacentes. Los coeficientes de MDCT para los componentes tonales en la trama perdida pueden tener a veces el mismo signo y amplitud que en la trama anterior, en lo que será ventajoso un algoritmo de repetición de trama. Sin embargo, a veces los coeficientes de MDCT para los componentes tonales han cambiado de signo y/o de amplitud en la trama perdida, y, en esos casos, el algoritmo de repetición de trama no funcionará bien. Cuando esto sucede, la falta de coincidencia de signos causada por la repetición de los coeficientes con el signo incorrecto hará que la energía de los componentes tonales se extienda sobre una región de frecuencia mayor, lo que dará como resultado una distorsión audible.
Las realizaciones descritas en el presente documento analizan los cambios de signo de los coeficientes de MDCT en tramas recibidas previamente, como, por ejemplo, usando un algoritmo de rastreo de cambio de signo, y usan los datos recopilados con respecto al cambio de signo para crear un algoritmo FEC de baja complejidad con calidad perceptiva mejorada.
Como el problema con la interrupción de fase es más audible para componentes tonales fuertes, y tales componentes afectarán a un grupo de varios coeficientes, los coeficientes de transformada pueden agruparse en subvectores en los que se realiza el análisis de signos. El análisis de acuerdo con las realizaciones descritas en el presente documento también tiene en cuenta la dinámica de la señal, medida, por ejemplo, por un detector transitorio con el fin de determinar la fiabilidad de los datos pasados. El número de cambios de signo de los coeficientes de transformada puede determinarse para cada subvector a través de un número definido de tramas recibidas previamente, y estos datos se usan para determinar los signos de los coeficientes de transformada en un subvector reconstruido. De acuerdo con las realizaciones descritas en el presente documento, el signo de todos los coeficientes en un subvector usado en un algoritmo de repetición de trama se conmutará (invertirá), en caso de que el número determinado de cambios de signo de los coeficientes de transformada en cada subvector correspondiente a través las tramas recibidas anteriormente sea alto, es decir, que sea igual a o supere un umbral de conmutación definido.
Las realizaciones descritas en el presente documento implican un algoritmo de extrapolación de signos basado en decodificador que usa datos recopilados de un algoritmo de rastreo de cambio de signos para extrapolar los signos de un vector de MDCT reconstruido. El algoritmo de extrapolación de signos se activa con una pérdida de trama.
El algoritmo de extrapolación de signos puede realizar un rastreo adicional de si las tramas recibidas previamente (según son almacenadas en una memoria, es decir, en una memoria intermedia decodificadora o búfer decodificador) son estacionarias o de si cuentan con transitorias, ya que el algoritmo sólo es significativo cuando se realiza en tramas estacionarias, es decir, cuando la señal no cuenta con transitorias. De este modo, de acuerdo con una realización, el signo de los coeficientes reconstruidos será aleatorio, en caso de que alguna de las tramas de interés analizadas cuente con una transitoria.
Una realización del algoritmo de extrapolación de signos se basa en el análisis de signos en tres tramas recibidas previamente, debido al hecho de que tres tramas proporcionan datos suficientes con el fin de conseguir un buen rendimiento. En caso de que sólo las dos últimas tramas sean estacionarias, la trama n-3 se descarta. El análisis del cambio de signo en dos tramas es similar al análisis del cambio de signo en tres tramas, pero el nivel umbral se adapta de manera acorde.
La figura 2 es un diagrama que ilustra el rastreo del cambio de signo. Si el historial reciente de la señal contiene sólo tramas válidas, el cambio de signo se rastrea en tres tramas consecutivas, como se ilustra en la figura 2a. En el caso de una trama transitoria o perdida, como en las figuras 2b y 2c, el cambio de signo se calcula en las dos tramas disponibles. La trama actual tiene el índice "n", la trama perdida se denota con una caja de línea discontinua y la trama transitoria con una caja de línea de puntos. De este modo, en la figura 2a, la región de rastreo de signos es de 3 tramas, y, en las figuras 2b y 2c, la región de rastreo de signos es de 2 tramas.
La figura 3 es un diagrama que ilustra situaciones en las que los cambios de signo no se consideran significativos. En este caso, uno de las dos últimas tramas antes de una trama errónea n es una trama transitoria (o no estacionaria). En este caso, el algoritmo de extrapolación de signos puede forzar un modo "aleatorio" para todos los subvectores de la trama reconstruida.
Los componentes tonales o armónicos en la señal de audio en el dominio tiempo afectarán a varios coeficientes en el dominio MDCT. Una realización adicional captura este comportamiento en el análisis de signos determinando el número de cambios de signos de grupos de coeficientes de MDCT, en lugar de en todo el vector de coeficientes de MDCT, de tal manera que los coeficientes de MDCT se agrupan, en por ejemplo, bandas de 4 dimensiones en las que se realiza el análisis de signos. Dado que la distorsión causada por la falta de coincidencia de signos es más audible en la región de baja frecuencia, una realización adicional del análisis de signos sólo se realiza en el rango de frecuencia 0-1600 Hz, con el fin de reducir la complejidad computacional. Si la resolución de frecuencia de la transformada MDCT utilizada en esta realización es de, por ejemplo, 25 Hz por coeficiente, el rango de frecuencia consistirá en 64 coeficientes que podrían dividirse en bandas B, donde B=16 en este ejemplo.
La figura 4 es un diagrama que ilustra la estructura de trama del ejemplo anterior. Se ilustran un número de tramas válidas consecutivas. La trama n se ha expandido para ilustrar que contiene 16 bandas o subvectores. La banda b de la trama n se ha ampliado para ilustrar los 4 coeficientes de transformada X n(1), ..., X n(4). Los coeficientes Xn-i (1), ..., Xn-i (4) y Xn-2 (1), ..., Xn-2 (4) de transformada del correspondiente subvector o banda b de tramas n - 1 y n - 2, respectivamente, también se ilustran.
De acuerdo con una realización, la determinación del número de cambios de signo de los coeficientes de transformada en tramas recibidas por el decodificador se realiza mediante un algoritmo de rastreo de cambio de signo, que está activo siempre que el decodificador reciba tramas, es decir, siempre que no haya pérdidas de trama. Durante este período, el decodificador puede actualizar dos variables de estado, sn y An para cada subvector o banda b utilizada en el análisis de signos, y, en el ejemplo con 16 subvectores, habrá, de este modo, 32 variables de estado.
La primera variable Sn de estado para cada subvector o banda b contiene el número de conmutaciones de signo entre la trama actual n y la trama anterior n -1, y se actualiza de acuerdo con él (téngase en cuenta que aquí la trama n es considerada una trama válida, mientras que la trama n en las figuras 2 y 3 era una trama errónea):
Figure imgf000006_0001
donde el índice ib indica coeficientes en el subvector o banda b, n es el número de trama y Xn es el vector de los coeficientes de transformada cuantificados recibidos.
Si la trama n es una transitoria, lo que se indica mediante la variable esTransitorian en (1), el número de conmutaciones de signo no es información relevante, y se establecerá en 0 para todas las bandas.
La variable esTransitorian se obtiene como un "bitio transitorio" del codificador, y puede determinarse en el lado del codificador como se describe en [4].
La segunda variable An de estado para cada subvector contiene el número agregado de conmutaciones de signo entre la trama actual n y la trama pasada n - 1 y entre la trama pasada n -1 y la trama n - 2, de acuerdo con:
Figure imgf000006_0002
El algoritmo de extrapolación de signos se activa cuando el decodificador no recibe una trama o la trama es inválida, es decir, si los datos están dañados.
De acuerdo con una realización, cuando se pierde una trama (errónea), el decodificador realiza primero un algoritmo de repetición de trama y copia los coeficientes de transformada de la trama anterior en la trama actual. A continuación, el algoritmo comprueba si entre las tres tramas recibidas anteriormente se cuenta con alguna transitoria, al verificar los indicadores de transitorias almacenados para esas tramas. (Sin embargo, si entre cualquiera de las dos últimas tramas recibidas anteriormente se cuenta con transitorias, no hay datos útiles en la memoria para realizar el análisis de signos y no se realiza ninguna predicción de signos, como se discutió con referencia a la figura 3).
Si al menos las dos tramas recibidas anteriormente son estacionarias, el algoritmo de extrapolación de signos compara el número de conmutaciones An de signo para cada banda con un umbral definido T de conmutación, y conmuta, o voltea, los signos de los coeficientes correspondientes en la trama actual si el número de conmutaciones de señal es igual o superior al umbral de conmutación.
De acuerdo con una realización, y bajo la asunción de bandas de 4 dim, el nivel del umbral T de conmutación depende del número de tramas estacionarias en la memoria, de acuerdo con lo siguiente:
f 6 si 3 tramas estacionarias
T=Á (3)
L 3 si 2 tramas estacionarias
La comparación con el umbral T y el cambio/cambio de signo potencial para cada banda se realiza de acuerdo con lo siguiente (en el que un cambio de signo o inversión se indica mediante -1):
para b€B
para 4 € b
[-'1 si A „ (b )>T (4)
signo (xr(1 b)) = i
1+1 si A„ (b ) <T
En este esquema, el signo extrapolado de los coeficientes de transformada en la primera trama perdida se conmuta o se mantiene igual que en la última trama válida. En caso de que haya una secuencia de tramas perdidas, en una realización, el signo se toma de manera aleatoria a partir de la segunda trama.
La tabla 1 a continuación es un resumen del algoritmo de extrapolación de signos para ocultar la trama perdida con el índice "n", de acuerdo con una realización (obsérvese que aquí la trama n se considera errónea, mientras que la trama n se considera válida en las ecuaciones anteriores) De este modo, hay un cambio de índice de 1 unidad en la tabla):
Tabla 1
Figure imgf000007_0001
La figura 5 es un diagrama que ilustra un ejemplo de reconstrucción de un subvector de una trama errónea. En este ejemplo, los subvectores de la figura 4 se utilizarán para ilustrar la reconstrucción de la trama n + 1, que se supone errónea. Las 3 tramas n, n - 1, n - 2 se consideran todas estacionarias (esTransitorian = 0, esTransitorian-1 = 0, esTransitorian-2 = 0). Primero, el rastreo del cambio de signo de (1) anterior se usa para calcular sn (b) y sn-1 (b). En el ejemplo, hay 3 inversiones de signo entre los coeficientes de subvector correspondientes de la trama n y n-1, y 3 inversiones de signo entre los coeficientes de subvector correspondientes de las tramas n-1 y n-2. Por lo tanto, s n (b) = 3 y sn-1 (b) = 3, lo que, de acuerdo con la acumulación anterior de cambio de signo de (2), implica que An (b) = 6. De acuerdo con la definición (3) de umbral y la extrapolación (4) de signo, esto es suficiente (en este ejemplo) para invertir los signos de los coeficientes que se copian del subvector b de la trama n al subvector b de la trama n + 1, como se ilustra en la figura 5.
La figura 6 es un diagrama de flujo que ilustra una realización general del método propuesto. Este diagrama de flujo también puede verse como un diagrama de flujo informático. El paso S11 rastrea los cambios de signos entre los coeficientes de transformada correspondientes de los subvectores predeterminados de tramas estacionarias válidas consecutivas. El paso S12 acopia el número de cambios de signo en los subvectores correspondientes de un número predeterminado de tramas estacionarias válidas consecutivas. El paso S12 reconstruye una trama errónea con la última trama estacionaria válida, pero con signos invertidos de coeficientes de transformada en subvectores que tienen un número acopiado de cambios de signo que supera un umbral predeterminado.
Como se indicó anteriormente, el umbral puede depender del número predeterminado de tramas estacionarias válidas consecutivas. Por ejemplo, al umbral se le asigna un primer valor para 2 tramas estacionarias válidas consecutivas y un segundo valor para 3 tramas estacionarias válidas consecutivas.
Además, la cualidad estacionaria de una trama recibida puede determinarse determinando si contiene transitorias, como, por ejemplo, examinando la variable esTransitorian como se describió anteriormente.
Una realización adicional usa tres modos para conmutar el signo de los coeficientes de transformada, como, por ejemplo, de conmutación, de conservación y de aleatoriedad, y esto se realiza a través de la comparación con dos umbrales diferentes, es decir, un umbral Tp de conservación y un umbral Ts de conmutación. Esto significa que el signo extrapolado de los coeficientes de transformada en la primera trama perdida es conmutado en caso de que el número de conmutaciones de signo sea igual o superior al umbral Ts de conmutación, y se conserva en caso de que el número de conmutaciones de signo sea igual o inferior al umbral Tp de conservación. Además, los signos son llevados a la aleatoriedad en caso de que el número de conmutaciones de signo sea mayor que el umbral Tp de conservación y menor que el umbral Ts de conmutación, es decir, que:
para b € B
para k € b
f - f si An ( b ) > r (5)
signo (xn(1b)) = Á aleat () si T9 < An (b) < T
l f si An (b) < f
En este esquema, la extrapolación de signos en la primera trama perdida se aplica a la segunda, y así sucesivamente, ya que la aleatoriedad es ya parte del esquema.
De acuerdo con una realización adicional, se aplica un factor de escala (atenuación de energía) a los coeficientes reconstruidos, además de aplicarse la conmutación del signo:
Xn — G X f ) - j (6)
En la ecuación (6) G es un factor de escala que puede ser 1 si no se usa predicción de ganancia, o G < 1 en caso de predicción de ganancia (o regla de atenuación simple, como -3 dB por cada trama perdida consecutiva).
Los pasos, funciones, procedimientos, módulos y/o bloques descritos en el presente documento pueden implantarse en equipo físico informático (hardware) usando cualquier tecnología convencional, tal como tecnología de circuito discreto o de circuito integrado, incluyendo tanto circuitería electrónica de fines generales como circuitería de fines específicos de aplicación.
Los ejemplos particulares incluyen uno o más procesadores de señal digital configurados adecuadamente y otros circuitos electrónicos conocidos, como, por ejemplo, puertas lógicas discretas interconectadas para realizar una función especializada, o circuitos integrados de aplicación específica (ASIC).
Como alternativa, al menos algunos de los pasos, funciones, procedimientos, módulos y/o bloques descritos anteriormente pueden implantarse en un equipo lógico informático (software) tal como un programa informático para ejecución mediante circuitería adecuada de procesamiento que incluya una o más unidades de procesamiento. El diagrama o los diagramas de flujo presentado/s en el presente documento puede/n considerarse, por lo tanto, como un/os diagrama/s de flujo informáticos, cuando lo/s realiza/n uno o más procesadores. El aparato correspondiente puede definirse como un grupo de módulos de función, donde cada paso realizado por el procesador corresponde a un módulo de función. En este caso, los módulos de función se implantan según un programa informático que se ejecuta en el procesador.
Los ejemplos de circuitería de procesamiento incluyen, pero no se limitan a, uno o más microprocesadores, uno o más procesadores de señal digital, DSP, una o más unidades centrales de procesamiento, CPU, hardware de aceleración de vídeo y/o cualquier circuitería lógica programable adecuada, tal como una o más matrices de puertas programables en campo, FPGA, o uno o más controladores lógicos programables.
También debe entenderse que puede ser posible reutilizar las capacidades generales de procesamiento de cualquier dispositivo o unidad convencional en el/la que esté implantada la tecnología propuesta. También es posible reutilizar el software existente, como, por ejemplo, reprogramando el software existente o añadiendo nuevos componentes de software.
Las realizaciones descritas en el presente documento se aplican a un decodificador para una señal de audio codificada, como se ilustra en la figura 7. De este modo, la figura 7 es un diagrama de bloques esquemático de un decodificador 20 de acuerdo con las realizaciones. El decodificador 20 comprende una unidad IN de entrada configurada para recibir una señal de audio codificada. La figura ilustra la ocultación de pérdida de trama mediante una unidad lógica 16 de ocultación de error de trama (FEC), que indica que el decodificador 20 está configurado para implantar una ocultación de una trama de audio perdida o dañada, de acuerdo con las realizaciones descritas anteriormente. El decodificador 20 con sus unidades incluidas podría implantarse en hardware. Existen numerosas variantes de elementos de circuitería que se pueden usar y combinar para conseguir las funciones de las unidades del decodificador 20. Tales variantes están abarcadas por las realizaciones. Ejemplos particulares de implantación de hardware del decodificador son la implantación en hardware de procesador de señal digital (DSP) y la tecnología de circuito integrado, que incluye tanto circuitería electrónica de uso general como circuitería específica de aplicación.
La figura 8 es un diagrama de bloques de una realización de ejemplo de un decodificador 20 de acuerdo con la tecnología propuesta. Una unidad de entrada IN extrae vectores de coeficientes de transformada de una señal de audio codificada y los reenvía a la unidad 16 de FEC del decodificador 20. El decodificador 20 incluye un rastreador 26 de cambio de signo configurado para rastrear cambios de signo entre los coeficientes de transformada correspondientes de subvectores predeterminados de tramas estacionarias válidas consecutivas. El rastreador 26 de cambio de signo está conectado a un acumulador 28 de cambio de signo configurado para acopiar el número de cambios de signo en los subvectores correspondientes de un número predeterminado de tramas estacionarias válidas consecutivas.
El acumulador 28 de cambio de signo está conectado a un reconstructor 30 de trama configurado para reconstruir una trama errónea con la última trama estacionaria válida, pero con signos invertidos de coeficientes de transformada en subvectores que tienen un número acopiado de cambios de signo que supera un umbral predeterminado. El vector de coeficientes de transformada reconstruido se reenvía a una unidad de salida OUT, que lo convierte en una señal de audio.
La figura 9 es un diagrama de bloques de una realización de ejemplo de un decodificador de acuerdo con la tecnología propuesta. Una unidad de entrada IN extrae vectores de coeficientes de transformada de una señal de audio codificada y los reenvía a la unidad 16 de FEC del decodificador 20. El decodificador 20 incluye:
- Un módulo 26 de rastreo de cambio de signo para rastrear cambios de signo entre coeficientes de transformada correspondientes de subvectores predeterminados de tramas estacionarias válidas consecutivas.
- Un módulo 28 de acumulación de cambio de signo para acopiar el número de cambios de signo en subvectores correspondientes de un número predeterminado de tramas estacionarias válidas consecutivas.
- Un módulo 30 de reconstrucción de tramas para reconstruir una trama errónea con la última trama estacionaria válida, pero con signos invertidos de coeficientes de transformada en subvectores que tienen un número acopiado de cambios de signo que supera un umbral predeterminado.
El vector de coeficientes de transformada reconstruido se convierte en una señal de audio en una unidad de salida OUT.
La figura 10 es un diagrama de bloques de una realización de ejemplo de un decodificador 20 de acuerdo con la tecnología propuesta. El decodificador 20 descrito en el presente documento podría implantarse alternativamente, por ejemplo, por un elemento o más de entre un procesador 22 y el software adecuado, con, por lo tanto, el almacenamiento o la memoria 24 adecuado/a, con el fin de reconstruir la señal de audio, lo que incluye realizar la ocultación de pérdida de trama de audio de acuerdo con las realizaciones descritas en el presente documento. La señal de audio codificada entrante es recibida por una unidad de entrada IN, a la que están conectados el procesador 22 y la memoria 24. La señal de audio decodificada y reconstruida obtenida del software es emitida desde la unidad de salida OUT.
Más específicamente, el decodificador 20 incluye un procesador 22 y una memoria 24, y la memoria contiene instrucciones ejecutables por el procesador, por lo que el decodificador 20 está operativo para:
- Rastrear los cambios de signo entre los coeficientes de transformada correspondientes de subvectores predeterminados de tramas estacionarias válidas consecutivas.
- Acopiar el número de cambios de signo en subvectores correspondientes de un número predeterminado de tramas estacionarias válidas consecutivas.
- Reconstruir una trama errónea con la última trama estacionaria válida, pero con signos invertidos de coeficientes de transformada en subvectores que tengan un número acopiado de cambios de signo que exceda un umbral predeterminado.
En la figura 10 se ilustra también un producto 40 de programa informático que comprende un medio legible por ordenador y un programa informático (descrito más adelante adicionalmente) almacenado en el medio legible por ordenador. Las instrucciones del programa informático pueden transferirse a la memoria 24, según indica la flecha discontinua.
La figura 11 es un diagrama de bloques de una realización de ejemplo de un decodificador 20 de acuerdo con la tecnología propuesta. Esta realización se basa en un procesador 22, como, por ejemplo, en un microprocesador, que ejecuta un programa informático 42 para la ocultación de error de trama en base a tramas que incluyen vectores de coeficientes de transformada. El programa informático se almacena en la memoria 24. El procesador 22 se comunica con la memoria a través de un bus del sistema. La señal de audio codificada entrante es recibida por un controlador 26 de entrada/salida (I/O) que controla un bus de I/O, al que están conectados el procesador 22 y la memoria 24. La señal de audio obtenida del software 130 es emitida desde la memoria 24 por el controlador 26 de I/O a través del bus de I/O. El programa informático 42 incluye el código 50 para rastrear cambios de signos entre los coeficientes de transformada correspondientes de subvectores predeterminados de tramas estacionarias válidas consecutivas, el código 52 para acopiar el número de cambios de signos en subvectores correspondientes de un número predeterminado de tramas estacionarias válidas consecutivas, y el código 54 para reconstruir una trama errónea con la última trama estacionaria válida, pero con signos invertidos de coeficientes de transformada en subvectores que tienen un número acopiado de cambios de signo que supera un umbral predeterminado.
El programa informático que reside en la memoria puede organizarse como módulos de función apropiados configurados para realizar, cuando sea ejecutado por el procesador, al menos parte de los pasos y/o tareas descritos anteriormente. Un ejemplo de tales módulos de función se ilustra en la figura 9.
Como se indicó anteriormente, el software o programa informático 42 puede realizarse como un producto 40 de programa informático, que normalmente se lleva o almacena en un medio legible por ordenador. El medio legible por ordenador puede incluir uno o más dispositivos de memoria desmontables o no desmontables que incluyen, entre otros, una memoria de sólo lectura, ROM, una memoria de acceso aleatorio, RAM, un disco compacto, CD, un disco versátil digital, DVD, un bus serie universal, USB, memoria, una unidad de disco duro, un dispositivo de almacenamiento HDD, una memoria flash, o cualquier otro dispositivo de memoria convencional. De este modo, el programa informático puede cargarse en la memoria operativa de un ordenador o dispositivo de procesamiento equivalente para su ejecución por la circuitería de procesamiento del mismo.
Por ejemplo, el programa informático incluye instrucciones ejecutables por la circuitería de procesamiento, mediante las cuales la circuitería de procesamiento es capaz de o es operativa para ejecutar los pasos, funciones, procedimientos y/o bloques descritos en el presente documento.
El ordenador o la circuitería de procesamiento no tiene que estar dedicado/a a ejecutar sólo los pasos, funciones, procedimientos y/o bloques descritos en el presente documento, sino que también puede ejecutar otras tareas. La tecnología descrita anteriormente puede usarse, por ejemplo, en un receptor, que pueda usarse en un dispositivo móvil (por ejemplo, en un teléfono móvil, o en un ordenador portátil) o un dispositivo estacionario, como un ordenador personal. A este dispositivo se hará referencia como a un terminal de usuario que incluya un decodificador 20 como se describió anteriormente. El terminal de usuario puede ser un dispositivo con cable o inalámbrico.
Como se usa en el presente documento, el término "dispositivo inalámbrico" puede referirse a un equipo de usuario, UE, un teléfono móvil, un teléfono celular, un asistente digital personal, PDA, equipado con capacidades de comunicación por radio, un teléfono inteligente, un ordenador portátil o un ordenador personal, PC, equipado con un módem de banda ancha móvil interno o externo, un PC de tableta con capacidad de comunicación por radio, un dispositivo portátil electrónico de comunicación por radio, un dispositivo sensor equipado con capacidades de comunicación por radio o similar. En particular, el término "UE" debe interpretarse como un término no limitante que comprende cualquier dispositivo equipado con circuitería de radio para comunicación inalámbrica de acuerdo con cualquier estándar de comunicación relevante.
Como se usa en el presente documento, el término "dispositivo con cable" puede referirse al menos a algunos de los dispositivos anteriores (con o sin capacidad de comunicación por radio), como, por ejemplo, a un PC, cuando se configura para conexión por cable a una red.
La figura 12 es un diagrama de bloques de un terminal 60 de usuario. El diagrama ilustra un equipo de usuario, como, por ejemplo, un teléfono móvil. Una señal de radio de una antena se reenvía a una unidad 62 de radio, y la señal digital de la unidad de radio es procesada por un decodificador 20 de acuerdo con la tecnología de ocultación de error de trama propuesta (típicamente el decodificador puede realizar otra tarea, tal como la decodificación de otros parámetros que describan el segmento, pero estas tareas no se describen ya que son bien conocidas en la técnica y no forman una parte esencial de la tecnología propuesta). La señal de audio decodificada se reenvía a una unidad 64 de conversión y amplificación de señal digital/analógica (D/A) conectada a un altavoz.
La figura 13 es un diagrama que ilustra otra realización de ocultación de error de trama. El lado 10 del codificador es similar a la realización de la figura 1. Sin embargo, el lado del codificador incluye un decodificador 20 de acuerdo con la tecnología propuesta. Este decodificador incluye una unidad 16 de ocultación de error de trama (FEC) como se propone en el presente documento. Esta unidad modifica el paso S5 de reconstrucción de la figura 1 en un paso S5' de reconstrucción basado en la tecnología propuesta. De acuerdo con una realización adicional, el algoritmo de ocultación de errores descrito anteriormente puede combinarse opcionalmente con otro algoritmo de ocultación en un dominio diferente. En la figura 13, esto se ilustra mediante una unidad 18 opcional de ocultación de error de trama FEC2, en la que también se realiza una ocultación en base al paso helicoidal de la forma de onda. Esto modificará el paso S6 en S6'. De este modo, en esta realización, la forma de onda reconstruida contiene contribuciones de ambos esquemas de ocultación.
Se entenderá que la elección de unidades o módulos que interactúan, así como la denominación de las unidades son sólo para fines ejemplares, y que pueden configurarse en una pluralidad de maneras alternativas para poder ejecutar las acciones del proceso divulgado.
También debe observarse que las unidades o módulos descritos en esta descripción deben considerarse como entidades lógicas y no necesariamente como entidades físicas separadas. Se apreciará que el alcance de la tecnología divulgada en el presente documento abarca completamente otras realizaciones que pueden resultar obvias para el experto en la técnica, y que, en consecuencia, el alcance de esta divulgación no va a limitarlas.
La referencia a un elemento en singular no pretende significar "uno y sólo uno" a menos que se indique explícitamente, sino "uno o más". Lo que es más, no es necesario que un dispositivo o método aborde todos y cada uno de los problemas que se intentan resolver con la tecnología divulgada en el presente documento, para que sea abarcado por el presente. En la descripción anterior, para fines de explicación y no de limitación, se exponen detalles específicos tales como arquitecturas particulares, interfaces, técnicas, etc., con el fin de proporcionar una comprensión exhaustiva de la tecnología divulgada. Sin embargo, será evidente para el experto en la técnica que la tecnología divulgada se puede practicar en otras realizaciones y/o combinaciones de realizaciones que se aparten de estos detalles específicos. Esto es, que el experto en la técnica podrá idear diversas disposiciones que, aunque no se describan o muestren explícitamente en el presente documento, incorporen los principios de la tecnología divulgada. En algunos casos, se omiten descripciones detalladas de dispositivos, circuitos y métodos conocidos como para no oscurecer la descripción de la tecnología divulgada con detalles innecesarios. Todas las afirmaciones del presente documento que listan principios, aspectos y realizaciones de la tecnología divulgada, así como ejemplos específicos de la misma, están destinadas/os a abarcar tanto sus equivalentes estructurales como funcionales. Además, se pretende que tales equivalentes incluyan tanto los equivalentes conocidos actualmente como los equivalentes desarrollados en el futuro, como, por ejemplo, cualesquiera elementos desarrollados que realicen la misma función, independientemente de la estructura.
De este modo, por ejemplo, el experto en la técnica apreciará que las figuras del presente documento pueden representar visiones conceptuales de circuitería ilustrativa o de otras unidades funcionales que encarnan los principios de la tecnología y/o diversos procesos que pueden ser substancialmente representados en un medio legible por ordenador y ejecutados por un ordenador o procesador, aunque tal ordenador o procesador no se muestre explícitamente en las figuras.
Las funciones de los diversos elementos, incluidos los bloques funcionales, pueden proporcionarse mediante el uso de hardware tal como hardware de circuito y/o hardware capaz de ejecutar software en forma de instrucciones codificadas almacenadas en un medio legible por ordenador. De este modo, tales funciones y bloques funcionales ilustrados tienen que entenderse como implantados por hardware y/o implantados por ordenador, y, de este modo, implantados por máquina.
Las realizaciones descritas anteriormente deben entenderse como algunos ejemplos ilustrativos de la presente invención. El experto en la técnica entenderá que pueden realizarse diversas modificaciones, combinaciones y cambios a las realizaciones sin apartarse del alcance de la presente invención. En particular, se pueden combinar diferentes soluciones parciales en las diferentes realizaciones en otras configuraciones, cuando sea técnicamente posible.
El experto en la técnica entenderá que pueden hacerse diversas modificaciones y cambios a la tecnología propuesta sin apartarse del alcance de la misma, que se define en las reivindicaciones adjuntas.
Referencias
[1] Norma UIT-T G.719, sección 8.6, junio de 2008.
[2] A. Ito et al, "Improvement of Packet Loss Concealment for MP3 Audio Based on Switching of Concealment method and Estimation of MDCT Signs", IEEE, 2010 Sixth International Conference on Intelligent Information Hiding and Multimedia Signal Processing, pp. 518-521.
[3] Sang-Uk Ryu y Kenneth Rose, "An MDCT Domain Frame-Loss Concealment Technique for MPEG Advanced Audio Coding", IEEE, ICASSP 2007, pp. 1-273 - 1-276.
[4] Norma UIT-T G.719, sección 7.1, junio de 2008.
Abreviaturas
ASIC
Circuito Integrado de aplicación especifica
CPU
Unidades centrales de procesamiento
DSP
Procesador de señal digital
FEC
Ocultación de borrado de trama
FPGA
Matrices de puertas programables en campo MDCT
Transformada discreta de coseno modificada MLT
Transformada lapeada modulada
PLC
Ocultación de pérdida de paquetes

Claims (14)

REIVINDICACIONES
1. Un método de ocultación de pérdida de tramas realizado por un decodificador de audio, comprendiendo, el método:
analizar (S11) los cambios de signo de los coeficientes de transformada en las tramas recibidas mediante la determinación de un número de cambios de signo entre los coeficientes de transformada correspondientes en subvectores correspondientes de tramas consecutivas no erróneas que no cuentan con una transitoria, comprendiendo, cada subvector, múltiples coeficientes de una banda de frecuencia;
acopiar (S12) el número de cambios de signo en los subvectores correspondientes a través de un número predeterminado de tramas consecutivas no erróneas que no cuentan con una transitoria; y
reconstruir (S13) una trama perdida copiando los coeficientes de transformada de una trama no errónea anterior, y, si al menos dos tramas consecutivas no erróneas previas inmediatamente anteriores a la trama perdida no cuentan con una transitoria: invertir los signos de los coeficientes de transformada en los subvectores que tengan un número acopiado de cambios de signo que sea igual o superior a un umbral predeterminado.
2. El método de la reivindicación 1, en el que el umbral depende del número predeterminado de tramas consecutivas no erróneas que no cuentan con una transitoria.
3. El método de la reivindicación 2, en el que al umbral se le asigna un primer valor para 2 tramas consecutivas no erróneas que no cuentan con una transitoria y un segundo valor para 3 tramas consecutivas no erróneas que no cuentan con una transitoria.
4. El método de la reivindicación 3, en el que cuando la banda comprende 4 coeficientes, el primer valor es 3 y el segundo valor es 6.
5. El método de la reivindicación 1, en el que los signos de los coeficientes de transformada copiados se asignan aleatoriamente si cualquiera de las dos tramas anteriores cuenta con una transitoria.
6. Un aparato (20) adaptado para:
analizar los cambios de signo de los coeficientes de transformada en las tramas de audio recibidas determinando un número de cambios de signo entre los coeficientes de transformada correspondientes en los subvectores correspondientes de tramas consecutivas no erróneas que no cuentan con una transitoria, comprendiendo, cada subvector, múltiples coeficientes de una banda de frecuencia;
acopiar el número de cambios de signo en los subvectores correspondientes a través de un número predeterminado de tramas consecutivas no erróneas que no cuenten con una transitoria; y
reconstruir una trama perdida copiando los coeficientes de transformada de una trama no errónea anterior, y, si al menos dos tramas no erróneas consecutivas anteriores que preceden inmediatamente a la trama perdida no cuentan con una transitoria: invertir los signos de coeficientes de transformada en subvectores que tengan un número acopiado de cambios de signos que sea igual o superior a un umbral predeterminado.
7. El aparato de acuerdo con la reivindicación 6, en el que el umbral depende del número predeterminado de tramas consecutivas no erróneas que no cuentan con una transitoria.
8. El aparato de acuerdo con la reivindicación 7, en el que al umbral se le asigna un primer valor para 2 tramas consecutivas no erróneas que no cuentan con una transitoria y un segundo valor para 3 tramas consecutivas no erróneas que no cuentan con una transitoria.
9. El aparato de acuerdo con la reivindicación 8, en el que, cuando la banda comprende 4 coeficientes, el primer valor es 3 y el segundo valor es 6.
10. El aparato de acuerdo con la reivindicación 6, en el que los signos de los coeficientes de transformada copiados son llevados a aleatoriedad si cualquiera de las dos tramas anteriores cuenta con una transitoria.
11. El aparato de acuerdo con una cualquiera de las reivindicaciones 6 a 10, en el que el aparato es un decodificador de audio.
12. El aparato de acuerdo con una cualquiera de las reivindicaciones 6 a 11, en el que el aparato está comprendido en un dispositivo móvil.
13. Un programa informático (42) para la ocultación de pérdida de trama, comprendiendo, dicho programa informático, un código legible por ordenador (50, 52, 54) que cuando se ejecuta en un procesador (22) hace que el procesador:
analice los cambios de signo de los coeficientes de transformada en las tramas de audio recibidas determinando un número de cambios de signo entre los coeficientes de transformada correspondientes en los subvectores correspondientes de tramas consecutivas no erróneas que no cuentan con una transitoria, comprendiendo, cada subvector, múltiples coeficientes de una banda de frecuencia;
acopie el número de cambios de signo en los subvectores correspondientes a través de un número predeterminado de tramas consecutivas no erróneas que no cuentan con una transitoria; y
reconstruya una trama perdida copiando los coeficientes de transformada de una trama no errónea anterior, y, si al menos dos tramas no erróneas consecutivas anteriores que preceden inmediatamente a la trama perdida no cuentan con una transitoria: invertir los signos de los coeficientes de transformada en los subvectores que tengan un número acopiado de cambios de signos que sea igual o superior a un umbral predeterminado.
14. Un producto (40) de programa informático, que comprende un medio legible por ordenador y un programa informático (42) de acuerdo con la reivindicación 13 almacenado en el medio legible por ordenador.
ES18191125T 2013-02-13 2013-11-12 Ocultación de error de trama Active ES2816014T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US201361764254P 2013-02-13 2013-02-13

Publications (1)

Publication Number Publication Date
ES2816014T3 true ES2816014T3 (es) 2021-03-31

Family

ID=49765637

Family Applications (3)

Application Number Title Priority Date Filing Date
ES13805625.4T Active ES2603266T3 (es) 2013-02-13 2013-11-12 Ocultación de errores de trama
ES16179227T Active ES2706512T3 (es) 2013-02-13 2013-11-12 Ocultación de errores de trama
ES18191125T Active ES2816014T3 (es) 2013-02-13 2013-11-12 Ocultación de error de trama

Family Applications Before (2)

Application Number Title Priority Date Filing Date
ES13805625.4T Active ES2603266T3 (es) 2013-02-13 2013-11-12 Ocultación de errores de trama
ES16179227T Active ES2706512T3 (es) 2013-02-13 2013-11-12 Ocultación de errores de trama

Country Status (11)

Country Link
US (6) US9514756B2 (es)
EP (3) EP2956932B1 (es)
CN (2) CN104995673B (es)
BR (1) BR112015017082B1 (es)
DK (2) DK3098811T3 (es)
ES (3) ES2603266T3 (es)
HU (2) HUE030163T2 (es)
MX (1) MX342027B (es)
PL (2) PL3098811T3 (es)
RU (3) RU2705458C2 (es)
WO (1) WO2014126520A1 (es)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL3098811T3 (pl) * 2013-02-13 2019-04-30 Ericsson Telefon Ab L M Ukrywanie błędu ramki
MY169132A (en) 2013-06-21 2019-02-18 Fraunhofer Ges Forschung Method and apparatus for obtaining spectrum coefficients for a replacement frame of an audio signal, audio decoder, audio receiver and system for transmitting audio signals
EP3230980B1 (en) 2014-12-09 2018-11-28 Dolby International AB Mdct-domain error concealment
US10504525B2 (en) * 2015-10-10 2019-12-10 Dolby Laboratories Licensing Corporation Adaptive forward error correction redundant payload generation
CN107863109B (zh) * 2017-11-03 2020-07-03 深圳大希创新科技有限公司 一种抑制噪声的静音控制方法及系统
EP3553777B1 (en) * 2018-04-09 2022-07-20 Dolby Laboratories Licensing Corporation Low-complexity packet loss concealment for transcoded audio signals
EP3948856A4 (en) * 2019-03-25 2022-03-30 Razer (Asia-Pacific) Pte. Ltd. METHOD AND APPARATUS FOR USING AN INCREMENTAL SEARCH SEQUENCE IN AUDIO ERROR HIDING

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5699485A (en) * 1995-06-07 1997-12-16 Lucent Technologies Inc. Pitch delay modification during frame erasures
FI963870A (fi) * 1996-09-27 1998-03-28 Nokia Oy Ab Virheiden piilottaminen digitaalisessa audiovastaanottimessa
FI118242B (fi) * 2000-09-19 2007-08-31 Nokia Corp Puhekehyksen käsitteleminen radiojärjestelmässä
JP2002111635A (ja) * 2000-10-03 2002-04-12 Matsushita Electric Ind Co Ltd デジタルオーディオ及び視覚情報の能率的な誤り検出と同期化の方法
US7031926B2 (en) * 2000-10-23 2006-04-18 Nokia Corporation Spectral parameter substitution for the frame error concealment in a speech decoder
US7711563B2 (en) * 2001-08-17 2010-05-04 Broadcom Corporation Method and system for frame erasure concealment for predictive speech coding based on extrapolation of speech waveform
CN1323532C (zh) * 2001-11-15 2007-06-27 松下电器产业株式会社 错误隐蔽装置和方法
AU2003903826A0 (en) * 2003-07-24 2003-08-07 University Of South Australia An ofdm receiver structure
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
US8908496B2 (en) * 2003-09-09 2014-12-09 Qualcomm Incorporated Incremental redundancy transmission in a MIMO communication system
KR20050076155A (ko) * 2004-01-19 2005-07-26 삼성전자주식회사 영상 프레임의 에러 은닉 장치 및 방법
US8320391B2 (en) 2004-05-10 2012-11-27 Nippon Telegraph And Telephone Corporation Acoustic signal packet communication method, transmission method, reception method, and device and program thereof
KR100770924B1 (ko) * 2005-02-04 2007-10-26 삼성전자주식회사 무선 통신 시스템에서 주파수 오차 보상 장치 및 방법
US8620644B2 (en) * 2005-10-26 2013-12-31 Qualcomm Incorporated Encoder-assisted frame loss concealment techniques for audio coding
US8255207B2 (en) * 2005-12-28 2012-08-28 Voiceage Corporation Method and device for efficient frame erasure concealment in speech codecs
CN1983909B (zh) * 2006-06-08 2010-07-28 华为技术有限公司 一种丢帧隐藏装置和方法
CN101166071A (zh) * 2006-10-19 2008-04-23 北京三星通信技术研究有限公司 差错帧隐藏装置与方法
KR101292771B1 (ko) * 2006-11-24 2013-08-16 삼성전자주식회사 오디오 신호의 오류은폐방법 및 장치
KR100862662B1 (ko) * 2006-11-28 2008-10-10 삼성전자주식회사 프레임 오류 은닉 방법 및 장치, 이를 이용한 오디오 신호복호화 방법 및 장치
CN101325631B (zh) 2007-06-14 2010-10-20 华为技术有限公司 一种估计基音周期的方法和装置
CN101325537B (zh) 2007-06-15 2012-04-04 华为技术有限公司 一种丢帧隐藏的方法和设备
WO2009010831A1 (en) * 2007-07-18 2009-01-22 Nokia Corporation Flexible parameter update in audio/speech coded signals
CN100524462C (zh) * 2007-09-15 2009-08-05 华为技术有限公司 对高带信号进行帧错误隐藏的方法及装置
US8527265B2 (en) 2007-10-22 2013-09-03 Qualcomm Incorporated Low-complexity encoding/decoding of quantized MDCT spectrum in scalable speech and audio codecs
US8554551B2 (en) * 2008-01-28 2013-10-08 Qualcomm Incorporated Systems, methods, and apparatus for context replacement by audio level
CN101572685A (zh) * 2008-05-04 2009-11-04 中兴通讯股份有限公司 用于正交频分复用系统的发射装置
CN101588341B (zh) * 2008-05-22 2012-07-04 华为技术有限公司 一种丢帧隐藏的方法及装置
KR101228165B1 (ko) * 2008-06-13 2013-01-30 노키아 코포레이션 프레임 에러 은폐 방법, 장치 및 컴퓨터 판독가능한 저장 매체
US8428959B2 (en) 2010-01-29 2013-04-23 Polycom, Inc. Audio packet loss concealment by transform interpolation
EP2372705A1 (en) * 2010-03-24 2011-10-05 Thomson Licensing Method and apparatus for encoding and decoding excitation patterns from which the masking levels for an audio signal encoding and decoding are determined
JP5973582B2 (ja) * 2011-10-21 2016-08-23 サムスン エレクトロニクス カンパニー リミテッド フレームエラー隠匿方法及びその装置、並びにオーディオ復号化方法及びその装置
PL3098811T3 (pl) * 2013-02-13 2019-04-30 Ericsson Telefon Ab L M Ukrywanie błędu ramki

Also Published As

Publication number Publication date
DK3098811T3 (en) 2019-01-28
ES2603266T3 (es) 2017-02-24
US10013989B2 (en) 2018-07-03
RU2017126008A (ru) 2019-02-01
EP3432304B1 (en) 2020-06-17
PL2956932T3 (pl) 2017-01-31
RU2017126008A3 (es) 2019-05-28
US20220130400A1 (en) 2022-04-28
EP2956932A1 (en) 2015-12-23
US9514756B2 (en) 2016-12-06
MX342027B (es) 2016-09-12
BR112015017082A2 (pt) 2017-07-11
US10566000B2 (en) 2020-02-18
US20180277125A1 (en) 2018-09-27
RU2019132960A3 (es) 2021-10-14
WO2014126520A1 (en) 2014-08-21
US11227613B2 (en) 2022-01-18
CN104995673A (zh) 2015-10-21
HUE030163T2 (en) 2017-04-28
CN104995673B (zh) 2016-10-12
EP3432304A1 (en) 2019-01-23
MX2015009415A (es) 2015-09-24
PL3098811T3 (pl) 2019-04-30
RU2628197C2 (ru) 2017-08-15
RU2705458C2 (ru) 2019-11-07
US20170103760A1 (en) 2017-04-13
US20200152208A1 (en) 2020-05-14
BR112015017082B1 (pt) 2021-10-05
ES2706512T3 (es) 2019-03-29
DK2956932T3 (en) 2016-12-19
US20240144939A1 (en) 2024-05-02
HUE052041T2 (hu) 2021-04-28
EP3098811A1 (en) 2016-11-30
RU2019132960A (ru) 2021-04-19
EP2956932B1 (en) 2016-08-31
CN107103909A (zh) 2017-08-29
US20150379998A1 (en) 2015-12-31
CN107103909B (zh) 2020-08-04
RU2015138979A (ru) 2017-03-20
EP3098811B1 (en) 2018-10-17
US11837240B2 (en) 2023-12-05

Similar Documents

Publication Publication Date Title
ES2816014T3 (es) Ocultación de error de trama
JP5405659B2 (ja) 消去されたスピーチフレームを再構成するためのシステムおよび方法
TW201207839A (en) Concealing lost packets in a Sub-Band Coding decoder
BR112015014956B1 (pt) Método de codificação de sinal de áudio, método de decodificação de sinal de áudio, aparelho de codificação de sinal de áudio e aparelho de decodificação de sinal de áudio
US10121484B2 (en) Method and apparatus for decoding speech/audio bitstream
KR20160124877A (ko) 음성 주파수 코드 스트림 디코딩 방법 및 디바이스
BR112015017222B1 (pt) Método e decodificador configurado para ocultar um quadro de áudio perdido de um sinal de áudio recebido, receptor, e, meio legível por computador
JP7307805B2 (ja) 周波数領域パケットロス補償のための方法、および関連デコーダ
OA17404A (en) Frame error concealment.