ES2732952T3 - Decodificador de audio y procedimiento para proporcionar una información de audio decodificada usando un ocultamiento de error basado en una señal de excitación en el dominio del tiempo - Google Patents

Decodificador de audio y procedimiento para proporcionar una información de audio decodificada usando un ocultamiento de error basado en una señal de excitación en el dominio del tiempo Download PDF

Info

Publication number
ES2732952T3
ES2732952T3 ES17191502T ES17191502T ES2732952T3 ES 2732952 T3 ES2732952 T3 ES 2732952T3 ES 17191502 T ES17191502 T ES 17191502T ES 17191502 T ES17191502 T ES 17191502T ES 2732952 T3 ES2732952 T3 ES 2732952T3
Authority
ES
Spain
Prior art keywords
audio
time domain
error concealment
tone
excitation signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES17191502T
Other languages
English (en)
Inventor
Jérémie Lecomte
Goran Markovic
Michael Schnabel
Grzegorz Pietrzyk
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 ES2732952T3 publication Critical patent/ES2732952T3/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/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • 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
    • 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/0212Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
    • 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
    • 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
    • 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
    • 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/12Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
    • G10L19/125Pitch excitation, e.g. pitch synchronous innovation CELP [PSI-CELP]
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/90Pitch determination of speech signals
    • 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/0011Long term prediction filters, i.e. pitch estimation

Landscapes

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

Abstract

Un decodificador de audio (100; 300) para proporcionar una información de audio decodificada (112; 312) basándose en una información de audio codificada (110; 310), comprendiendo el decodificador de audio: un ocultamiento de error (130; 380; 500) configurado para proporcionar una información de audio de ocultamiento de error (132; 382; 512) para el ocultamiento de una pérdida de una trama de audio después de una trama de audio codificada en una representación en el dominio de la frecuencia (322) usando una señal de excitación en el dominio del tiempo (532). en el que el decodificador de audio se caracteriza porque: la representación en el dominio de la frecuencia comprende una representación codificada (326) de una pluralidad de valores espectrales y una representación codificada (328) de una pluralidad de factores de escala para cambiar de escala los valores espectrales, y en el que el decodificador de audio está configurado para proporcionar una pluralidad de factores de escala decodificados (352, 354) para el cambio de escala de los valores basándose en una pluralidad de factores de escala codificados; o en el que el decodificador de audio está configurado para deducir una pluralidad de factores de escala para el cambio de escala de los valores espectrales a partir de una representación codificada de parámetros LPC; y en el que el ocultamiento de error (130; 380; 500) está configurado para obtener la señal de excitación en el dominio del tiempo (532) basándose en la trama de audio codificada en la representación en el dominio de la frecuencia (322) que precede a una trama de audio perdida.

Description

DESCRIPCIÓN
Decodificador de audio y procedimiento para proporcionar una información de audio decodificada usando un ocultamiento de error basado en una señal de excitación en el dominio del tiempo
Campo técnico
[0001] Las realizaciones según la invención crean decodificadores de audio para proporcionar una información de audio decodificada basándose en una información de audio codificada.
[0002] Algunas realizaciones según la invención crean procedimientos para proporcionar una información de audio decodificada basándose en una información de audio codificada.
[0003] Algunas realizaciones según la invención crean programas informáticos para la realización de uno de dichos procedimientos.
[0004] Algunas realizaciones según la invención se refieren a un ocultamiento en el dominio del tiempo para un códec en el dominio de la transformada.
Antecedentes de la invención
[0005] En los últimos años, ha habido una creciente demanda de transmisión y almacenamiento digital de contenidos de audio. Sin embargo, los contenidos de audio a menudo son transmitidos por canales no fiables, lo que conlleva el riesgo de que se pierdan las unidades de datos (por ejemplo, paquetes) que comprenden una o más tramas de audio (por ejemplo, en la forma de una representación codificada, como una representación en el dominio del tiempo codificada o una representación en el dominio de la frecuencia codificada). En algunas situaciones, será posible requerir una repetición (reenvío) de las tramas de audio perdidas (o de unidades de datos, como paquetes, que comprenden una o más tramas de audio perdidas). Sin embargo, esto normalmente producirá un retardo sustancial, y, por lo tanto, requerirá un extenso almacenamiento temporal de tramas de audio. En otros casos, es casi imposible requerir una repetición de tramas de audio perdidas.
[0006] Con el fin de obtener una calidad de audio buena, o al menos aceptable, en el caso de que las tramas de audio se pierdan sin proporcionar un extenso almacenamiento temporal (lo que consumiría una gran cantidad de memoria, y lo que, además, degradaría sustancialmente las capacidades en tiempo real de la codificación de audio), es deseable contar con conceptos para manejar la pérdida de una o más tramas de audio. En particular, es deseable contar con conceptos que produzcan una buena calidad de audio, o al menos, una calidad de audio aceptable, incluso en el caso de que las tramas de audio se pierdan.
[0007] En el pasado, se han desarrollado algunos conceptos de ocultamiento de error, que pueden emplearse en diferentes conceptos de codificación de audio.
[0008] A continuación se describirá un concepto de codificación de audio convencional.
[0009] En la norma 3gpp TS26.290, se explica una decodificación de excitación codificada transformada (decodificación TCX) con ocultamiento de error. A continuación se proporcionarán algunas explicaciones, que se basan en la sección de “Síntesis de señal y decodificación de modo TCX” en la referencia [1].
[0010] En las fig. 7 y 8 se muestra un decodificador TCX según la norma Internacional 3gpp TS 26.290, en la que las fig. 7 y 8 muestran diagramas de bloques del decodificador TCX. Sin embargo, la fig. 7 muestra aquellos bloques funcionales que son pertinentes para la decodificación TCX en una operación normal o en un caso de una pérdida de paquetes parcial. En cambio, la fig. 8 muestra el procesamiento pertinente de la decodificación TCX en el caso de ocultamiento de borrado de paquete TCX-256.
[0011] En otras palabras, las fig. 7 y 8 muestran un diagrama de bloques del decodificador TCX que incluye los siguientes casos:
Caso 1 (fig. 8): Ocultamiento de borrado de paquetes en TCX-256 cuando la longitud de trama TCX es de 256 muestras y el paquete relacionado se ha perdido, es decir, BFI_TCX = (1); y
Caso 2 (fig. 7): Decodificación TCX normal, posiblemente con pérdidas de paquetes parciales.
[0012] A continuación, se proporcionarán algunas explicaciones en relación con las fig. 7 y 8.
[0013] Tal como se menciona, la fig. 7 muestra un diagrama de bloques de un decodificador TCX que realiza una decodificación TCX en operación normal o en el caso de pérdida de paquete parcial. El decodificador TCX 700 según la fig. 7 recibe parámetros específicos de TCX 710 y proporciona, basándose en los mismos, la información de audio decodificada 712, 714.
[0014] El decodificador de audio 700 comprende un demultiplexor “DEMUX TCX 720”, que está configurado para recibir los parámetros específicos de TCX 710 y la información “BFI_TCX”. El demultiplexor 720 separa los parámetros específicos de TCX 710 y proporciona una información de excitación codificada 722, una información de relleno de ruido codificada 724 y una información de ganancia global codificada 726. El decodificador de audio 700 comprende un decodificador de excitación 730, que está configurado para recibir la información de excitación codificada 722, la información de relleno de ruido codificada 724 y la información de ganancia global codificada 726, al igual que cierta información adicional (por ejemplo, un indicador de velocidad binaria “bit_rate_flag”, una información “BFI_TCX” y una información de longitud de trama TCX). El decodificador de excitación 730 proporciona, con esta base, una señal de excitación en el dominio del tiempo 728 (también designada por “x”). El decodificador de excitación 730 comprende un procesador de información de excitación 732, que demultiplexa la información de excitación codificada 722 y decodifica los parámetros de cuantificación de vector algebraico. El procesador de información de excitación 732 proporciona una señal de excitación intermedia 734, que, normalmente, se encuentra en una representación en el dominio de la frecuencia, y que se designa por Y. El codificador de excitación 730 comprende además un inyector de ruido 736 que está configurado para inyectar ruido en subbandas no cuantificadas, con el fin de deducir una señal de excitación rellena con ruido 738 de la señal de excitación intermedia 734. La señal de excitación rellena con ruido 738 normalmente se encuentra en el dominio de la frecuencia, y se designa por Z. El inyector de ruido 736 recibe una información de intensidad de ruido 742 desde un decodificador de nivel de relleno de ruido 740. El decodificador de excitación comprende además una desacentuación de baja frecuencia adaptativa 744, que está configurada para realizar una operación de desacentuación de baja frecuencia basándose en la señal de excitación rellena con ruido 738, de manera que se obtenga una señal de excitación procesada 746, que se encuentra aún en el dominio de la frecuencia, y que se designa por X'. El decodificador de excitación 730 comprende además un transformador de dominio de la frecuencia a dominio del tiempo 748, que está configurado para recibir la señal de excitación procesada 746 y para proporcionar, basándose en la misma, una señal de excitación en el dominio del tiempo 750, que se asocia con una cierta porción de tiempo representada por un conjunto de parámetros de excitación en el dominio de la frecuencia (por ejemplo, de la señal de excitación procesada 746). El decodificador de excitación 730 comprende además un dispositivo de cambio de escala 752, que está configurado para cambiar de escala la señal de excitación en el dominio del tiempo 750 con el fin de obtener una señal de excitación en el dominio del tiempo con cambio de escala 754. El dispositivo de cambio de escala 752 recibe una información de ganancia global 756 desde un decodificador de ganancia global 758, en el que, como respuesta, el decodificador de ganancia global 758 recibe la información de ganancia global codificada 726. El decodificador de excitación 730 comprende además una síntesis de superposición y suma 760, que recibe las señales de excitación en el dominio del tiempo con cambio de escala 754 asociadas con una pluralidad de porciones de tiempo. La síntesis de superposición y suma 760 realiza una operación de superposición y suma (que puede incluir una operación de gestión de ventanas) basándose en las señales de excitación en el dominio del tiempo con cambio de escala 754, de manera que se obtenga una señal de excitación en el dominio del tiempo temporalmente combinada 728 durante un período más largo en el tiempo (más largo que los períodos en el tiempo para los cuales se proporcionan las señales de excitación en el dominio del tiempo individuales 750, 754).
[0015] El decodificador de audio 700 comprende además una síntesis LPC 770, que recibe la señal de excitación en el dominio del tiempo 728 proporcionada por la síntesis de superposición y suma 760 y uno o más coeficientes LPC que definen una función de filtro de síntesis LPC 772. La síntesis LPC 770, por ejemplo, puede comprender un primer filtro 774, que, por ejemplo, puede filtrar por síntesis la señal de excitación en el dominio del tiempo 728, con el fin de obtener la señal de audio decodificada 712. Opcionalmente, la síntesis LPC 770 puede comprender además un segundo filtro de síntesis 772 que está configurado para filtrar por síntesis la señal de salida del primer filtro 774 usando otra función de filtro de síntesis, de manera que se obtenga la señal de audio decodificada 714.
[0016] A continuación, se describirá la codificación TCX en el caso de un ocultamiento de borrado de paquetes TCX-256. La fig. 8 muestra un diagrama de bloques del decodificador TCX, en este caso.
[0017] El ocultamiento de borrado de paquetes 800 recibe una información de tono 810, que se designa además por “pitch_tcx”, y que se obtiene a partir de una trama TCX decodificada anterior. Por ejemplo, la información de tono 810 puede obtenerse usando un estimador de tono dominante 747 desde la señal de excitación procesada 746 en el decodificador de excitación 730 (durante la decodificación “normal”). Por otra parte, el ocultamiento de borrado de paquetes 800 recibe parámetros LPC 812, que pueden representar una función de filtro de síntesis LPC. Los parámetros LPC 812, por ejemplo, pueden ser idénticos a los parámetros LPC 772. En consecuencia, el ocultamiento de borrado de paquetes 800 puede ser configurado de manera que proporcione, basándose en la información de tono 810 y los parámetros LPC 812, una señal de ocultamiento de error 814, que puede considerarse una información de audio de ocultamiento de error. El ocultamiento de borrado de paquetes 800 comprende una memoria intermedia de excitación 820, que, por ejemplo, puede almacenar temporalmente una excitación previa. La memoria intermedia de excitación 820, por ejemplo, puede hacer uso del libro de códigos adaptativo ACELP y puede proporcionar una señal de excitación 822. El ocultamiento de borrado de paquetes 800 puede comprender además un primer filtro 824, una función de filtro que puede definirse como se muestra en la fig. 8. Por lo tanto, el primer filtro 824 puede filtrar la señal de excitación 822 basándose en los parámetros LPC 812, de manera que se obtenga una versión filtrada 826 de la señal de excitación 822. El ocultamiento de borrado de paquetes comprende además un limitador de amplitud 828, que puede limitar una amplitud de la señal de excitación filtrada 826 basándose en información objetivo o información de nivel rmswsyn. Por otra parte, el ocultamiento de borrado de paquetes 800 puede comprender un segundo filtro 832, que puede estar configurado para recibir la señal de excitación filtrada de amplitud limitada 830 desde el limitador de amplitud 822 y para proporcionar, basándose en la misma, la señal de ocultamiento de error 814. Una función de filtro del segundo filtro 832, por ejemplo, puede definirse como se muestra en la fig. 8.
[0018] A continuación se describirán algunos detalles con respecto a la decodificación y el ocultamiento de error.
[0019] En el Caso 1 (ocultamiento de borrado de paquetes en TCX-256), no hay información disponible para la decodificación de la trama TCX de 256 muestras. La síntesis de TCX se determina mediante el procesamiento de la excitación anterior retardada en T, en el que T= I p Aitch '_tcx es un retardo de tono estimado en la A tra ' ma TCX codificada 1/A(z) ge usa un f¡nro no |¡nea| en |Ugar de 1/^(z) para evitar clics en la síntesis. Este filtro se descompone en 3 pasos.
Etapa 1: filtrado por
Figure imgf000004_0001
para establecer una correspondencia de la excitación retardada por T en el dominio objetivo de TCX; Etapa 2:
Aplicación de un limitador (la magnitud se limita a ± rmswsyn)
Etapa 3: filtrado por
Figure imgf000004_0002
para determinar la síntesis. Obsérvese que la memoria intermedia OVLP_TCX se ajusta a cero en este caso.
Decodificación de los parámetros VQ algebraicos
[0020] En el Caso 2, la decodificación de TCX implica la decodificación de los parámetros VQ algebraicos que describen cada bloque cuantificado del espectro con cambio de escala X', en el que X' es tal como se describe en la Etapa 2 de la Sección 5.3.5.7 de 3gpp TS 26.290. Recuérdese que X' tiene dimensión N, en la que N = 288, 576 y 1.152 para TCX-256, 512 y 1.024, respectivamente, y que cada bloque B'k tiene dimensión 8. El número K de bloques B'k es, por lo tanto, 36, 72 y 144 para TCX-256, 512 y 1.024, respectivamente. Los parámetros VQ algebraicos para cada bloque Bk se describen en la Etapa 5 de la Sección 5.3.5.7. Para cada bloque B'k, son enviados tres grupos de índices binarios por el codificador:
a) el índice de libro de códigos nk, transmitido en código unario como se describe en la Etapa 5 de la Sección 5.3.5.7; b) el orden K de un punto de retícula seleccionado c en el denominado libro de códigos base, que indica la permutación que debe aplicarse a una secuencia delantera específica (ver Etapa 5 de la Sección 5.3.5.7) para obtener un punto de retícula c;
c) y, si el bloque cuantificado (un punto de retícula) no estaba presente en el libro de códigos base, los 8 índices del vector de índice de extensión de Voronoi k calculado en la subetapa V1 de la Etapa 5 en la Sección; a partir de los índices de extensión de Voronoi puede calcularse un vector de extensión z como en la referencia [1] de 3gpp TS 26.290. El número de bits en cada componente del vector de índice k es proporcionado por el orden de extensión r, que puede obtenerse a partir del valor de código unario de índice nk. El factor de escala M de la extensión de Voronoi es proporcionado por M = 2r.
[0021] A continuación, a partir del factor de escala M, el vector de extensión de Voronoi z (un punto de retícula en RE8) y el punto de retícula c en el libro de códigos base (también, un punto de retícula en RE8), cada bloque con cambio de escala cuantificado puede calcularse como:
B'k = M c z
[0022] Cuando no hay extensión de Voronoi (es decir, nk< 5, M=1 y z=0), el libro de códigos base es el libro de códigos Q0 , Q2, Q3 o Q4 de la referencia [1] de 3gpp TS 26.290. Entonces no se requieren bits para transmitir el vector k. De lo contrario, cuando se usa la extensión de Voronoi debido a que es suficientemente grande, entonces sólo Q3 o Q4 de la referencia [1] se usa como un libro de códigos base. La selección de Q3 o Q4 está implícita en el valor de índice de libro de códigos nk, como se describe en la Etapa 5 de la Sección 5.3.5.7.
Estimación del valor de tono dominante
[0023] La estimación del tono dominante se realiza de manera que la siguiente trama para decodificar puede ser extrapolada apropiadamente si corresponde a TCX-256, y si el paquete relacionado se ha perdido. Esta estimación se basa en la suposición de que el pico de máxima magnitud en el espectro del objetivo TCX corresponde al tono dominante. La búsqueda de la máxima M está restringida a una frecuencia inferior a Fs/64 kHz
M = maxi= i..N /32 (X'2i)2+(X'2 i+ i)2
y también se determina el índice mínimo 1 < /max < N/32 de manera que (X'2i)2+(X'2 i+ i)2 = M. A continuación, se estima el tono dominante en el número de muestras como Test= N / imax (este valor puede no ser entero). Recuérdese que el tono dominante se calcula para el ocultamiento de borrado de paquetes en TCX-256. Para evitar problemas de almacenamiento temporal (la memoria intermedia de excitación se limita a 256 muestras), si Test> 256 muestras, p/tch_tcx se establece en 256; de lo contrario, si Test 256, se evita período de tono múltiple en 256 muestras estableciendo p/tch_tcx en
p/tch_tcx = max { LnTestJ | n entero > 0 y nTest 256}
en el que L.J denota el redondeo al entero más cercano hacia -M.
[0024] A continuación, se describirán brevemente algunos conceptos convencionales adicionales.
[0025] En ISO_IEC_DIS_23003-3 (referencia [3]), se explica una decodificación TCX que emplea MDCT en el contexto del Códec Unificado de Voz y Audio.
[0026] En el estado de la técnica de AAC (consúltese, por ejemplo, la referencia [4]), solo se describe un modo de interpolación. Según la referencia [4], el decodificador de núcleo AAC incluye una función de ocultamiento que incrementa el retardo del decodificador en una trama.
[0027] En la Patente Europea EP 1207519 B1 (referencia [5]), se describe el suministro de un decodificador de voz y un procedimiento de compensación de error capaz de lograr la mejora adicional para la voz decodificada en una trama en la cual se detecta un error. Según la patente, un parámetro de codificación de voz incluye información de modo que expresa características de cada segmento corto (trama) de voz. El codificador de voz calcula de manera adaptativa los parámetros de retardo y los parámetros de ganancia usados para la decodificación de voz según la información de modo. Por otra parte, el decodificador de voz controla de manera adaptativa la relación de ganancia de excitación adaptativa y la ganancia de excitación fijada según la información de modo. Además, el concepto según la patente comprende el control adaptativo de los parámetros de ganancia de excitación adaptativa y los parámetros de ganancia de excitación fijada usados para la decodificación de voz según valores de parámetros de ganancia decodificada en una unidad de decodificación normal en la cual no se detecta error, inmediatamente después de una unidad de decodificación cuyos datos codificados son detectados con un error. En la técnica anterior, la solicitud de patente internacional WO2005/078706 A1 describe una técnica para ocultar un error encontrado en una trama codificada en un modo TCX repitiendo una excitación almacenada previamente. El modo TCS proporciona un espectro cuantificado de una señal de excitación y una ganancia global.
[0028] Según la solicitud de patente US2004/0128128A1 se conoce también un procedimiento de ocultamiento de error aplicable a un tren de bits a Ac que comprende valores espectrales QMDCT y factores de escala que funcionan en el dominio comprimido.
[0029] En vista de la técnica anterior, existe la necesidad de encontrar una mejora adicional del ocultamiento de error, que proporcione una mejor impresión auditiva.
3. Resumen de la invención
[0030] La presente invención proporciona un decodificador de audio según la reivindicación 1, un procedimiento según la reivindicación 29 y un programa informático para ejecutar dicho procedimiento según la reivindicación 30.
[0031] Todas las apariciones siguientes de la palabra "realización o realizaciones", si se refieren a combinaciones de características diferentes de las definidas por las reivindicaciones, hacen referencia a ejemplos que se registraron originalmente pero que no representan realizaciones de la invención reivindicada; estos ejemplos se muestran únicamente con fines de ilustración.
[0032] Una realización según la invención crea un decodificador de audio para proporcionar una información de audio decodificada basándose en una información de audio codificada. El decodificador de audio comprende un ocultamiento de error configurado para proporcionar una información de audio de ocultamiento de error para el ocultamiento de una pérdida de una trama de audio (o más de una pérdida de trama) después de una trama de audio codificada en una representación en el dominio de la frecuencia, usando una señal de excitación en el dominio del tiempo.
Esta realización según la invención se basa en el hallazgo de que puede obtenerse un ocultamiento de error mejorado al proporcionar la información de audio de ocultamiento de error basándose en una señal de excitación en el dominio del tiempo, incluso si la trama de audio que precede a una trama de audio perdida está codificada en una representación en el dominio de la frecuencia. En otras palabras, se ha reconocido que la calidad de un ocultamiento de error normalmente es mejor si el ocultamiento de error se realiza basándose en una señal de excitación en el dominio del tiempo, cuando se compara con un ocultamiento de error realizado en un dominio de la frecuencia, de manera que vale la pena la conmutación a un ocultamiento de error en el dominio del tiempo, usando una señal de excitación en el dominio del tiempo, incluso si el contenido de audio que precede a la trama de audio perdida está codificado en el dominio de la frecuencia (es decir, en una representación en el dominio de la frecuencia). Esto es válido, por ejemplo, para una señal monofónica y principalmente para voz.
[0033] Por consiguiente, la presente invención permite obtener un buen ocultamiento de error, incluso si la trama de audio que precede a la trama de audio perdida está codificada en el dominio de la frecuencia (es decir, en una representación en el dominio de la frecuencia).
[0034] En una realización preferida, la representación en el dominio de la frecuencia comprende una representación codificada de una pluralidad de valores espectrales y una representación codificada de una pluralidad de factores de escala para la escala de los valores espectrales, o el decodificador de audio está configurado para deducir una pluralidad de factores de escala para la escala de los valores espectrales a partir de una representación codificada de parámetros LPC. Esto podría realizarse usando FDNS (Forma de Ruido de Dominio de frecuencia). Sin embargo, se ha encontrado que es conveniente deducir la señal de excitación en el dominio del tiempo (que puede servir como una excitación para una síntesis LPC) incluso si la trama de audio que precede a la trama de audio perdida es codificada originalmente en la representación en el dominio de la frecuencia que comprende información sustancialmente diferente (es decir, una representación codificada de una pluralidad de valores espectrales en una representación codificada de una pluralidad de factores de escala para la escala de los valores espectrales). Por ejemplo, en el caso de TCX, no se envían factores de escala (desde un codificador hacia un decodificador), sino la LPC, y a continuación, en el decodificador, se transforma la LPC en una representación de factor de escala para los segmentos MDCT. En otras palabras, en el caso de TCX, se envía el coeficiente LPC, y a continuación, en el decodificador, se transforman dichos coeficientes LPC en una representación de factor de escala para TCX en USAC o en AMR-WB+ en el que no hay ningún factor de escala.
[0035] En una realización preferida, el decodificador de audio comprende un núcleo de decodificador en el dominio de la frecuencia configurado para la aplicación de una escala basándose en factores de escala, a una pluralidad de valores espectrales deducidos de la representación en el dominio de la frecuencia. En este caso, el ocultamiento de error está configurado para proporcionar la información de audio de ocultamiento de error para el ocultamiento de una pérdida de una trama de audio después de una trama de audio codificada en la representación en el dominio de la frecuencia que comprende una pluralidad de factores de escala codificados usando una señal de excitación en el dominio del tiempo deducida de la representación en el dominio de la frecuencia. Esta realización según la invención se basa en el hallazgo de que la deducción de la señal de excitación en el dominio del tiempo a partir de la representación en el dominio de la frecuencia mencionada anteriormente proporciona normalmente un mejor resultado de ocultamiento de error en comparación con un ocultamiento de error realizado directamente en el dominio de la frecuencia. Por ejemplo, la señal de excitación se crea basándose en la síntesis de la trama previa; entonces, no importa realmente si la trama previa es una trama en el dominio de la frecuencia (MDCT, FFT,) o una trama en el dominio del tiempo. Sin embargo, pueden observarse ventajas particulares si la trama previa era un dominio de la frecuencia. Por otra parte, debe observarse que se logran resultados especialmente buenos, por ejemplo, para señal monofónica como voz. A modo de otro ejemplo, los factores de escala podrían ser transmitidos como coeficientes LPC, por ejemplo, usando una representación polinómica que a continuación es convertida en factores de escala en el lado del decodificador.
[0036] En una realización preferida, el decodificador de audio comprende un núcleo de decodificador en el dominio de la frecuencia configurado para deducir una representación de señal de audio en el dominio del tiempo a partir de la representación en el dominio de la frecuencia sin el uso de una señal de excitación en el dominio del tiempo como una cantidad intermedia para la trama de audio codificada en la representación en el dominio de la frecuencia. En otras palabras, se ha encontrado que el uso de una señal de excitación en el dominio del tiempo para un ocultamiento de error es conveniente incluso si la trama de audio que precede a la trama de audio perdida está codificada en un modo de frecuencia “real” que no usa ninguna señal de excitación en el dominio del tiempo como una cantidad intermedia (y que, en consecuencia, no se basa en una síntesis LPC).
[0037] En una realización preferida, el ocultamiento de error está configurado para obtener la señal de excitación en el dominio del tiempo basándose en la trama de audio codificada en la representación en el dominio de la frecuencia que precede a una trama de audio perdida. En este caso, el ocultamiento de error está configurado para proporcionar la información de audio de ocultamiento de error para el ocultamiento de la trama de audio perdida usando dicha señal de excitación en el dominio del tiempo. En otras palabras, se ha reconocido que la señal de excitación en el dominio del tiempo, que se usa para el ocultamiento de error, debería deducirse de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida, ya que esta señal de excitación en el dominio del tiempo deducida de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida proporciona una buena representación de un contenido de audio de la trama de audio que precede a la trama de audio perdida, de manera que el ocultamiento de error pueda ser realizado con esfuerzo moderado y buena precisión.
[0038] En una realización preferida, el ocultamiento de error está configurado para realizar un análisis LPC basándose en la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida, con el fin de obtener un conjunto de parámetros de codificación de predicción lineal y la señal de excitación en el dominio del tiempo que representa un contenido de audio de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida. Se ha encontrado que es conveniente el esfuerzo de realizar un análisis lPc , para deducir los parámetros de codificación de predicción lineal y la señal de excitación en el dominio del tiempo, incluso si la trama de audio que precede a la trama de audio perdida está codificada en una representación en el dominio de la frecuencia (que no contiene ningún parámetro de codificación de predicción lineal y ninguna representación de una señal de excitación en el dominio del tiempo), debido a que puede obtenerse una información de audio de ocultamiento de error de buena calidad para muchas señales de audio de entrada basándose en dicha señal de excitación en el dominio del tiempo. Alternativamente, el ocultamiento de error puede ser configurado para realizar un análisis LPC basándose en la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida, con el fin de obtener la señal de excitación en el dominio del tiempo que representa un contenido de audio de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida. Además, alternativamente, el decodificador de audio puede estar configurado para obtener un conjunto de parámetros de codificación de predicción lineal usando una estimación de parámetros de codificación de predicción lineal, o el decodificador de audio puede estar configurado para obtener un conjunto de parámetros de codificación de predicción lineal basándose en un conjunto de factores de escala usando una transformada. En otras palabras, los parámetros LPC pueden obtenerse usando la estimación de parámetros LPC. Esto podría realizarse mediante la gestión de ventanas/autocorr/levinson durbin basándose en la trama de audio codificada en la representación en el dominio de la frecuencia o mediante la transformación a partir del factor de escala previo directamente a la representación LPC.
[0039] En una realización preferida, el ocultamiento de error está configurado para obtener una información de tono (o retardo) que describe un tono de la trama de audio codificado en el dominio de la frecuencia que precede a la trama de audio perdida, y para proporcionar la información de audio de ocultamiento de error según la información de tono. Al considerar la información de tono, puede lograrse que la información de audio de ocultamiento de error (que normalmente es una señal de audio de ocultamiento de error que cubre la duración temporal de al menos una trama de audio perdida) se adapte bien al contenido de audio real.
[0040] En una realización preferida, el ocultamiento de error está configurado para obtener la información de tono basándose en la señal de excitación en el dominio del tiempo deducida de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida. Se ha encontrado que una deducción de la información de tono a partir de la señal de excitación en el dominio del tiempo conlleva una alta precisión. Por otra parte, se ha encontrado que es conveniente que la información de tono se adapte bien a la señal de excitación en el dominio del tiempo, ya que la información de tono se usa para una modificación de la señal de excitación en el dominio del tiempo. Al deducir la información de tono de la señal de excitación en el dominio del tiempo, puede lograrse dicha relación cercana.
[0041] En una realización preferida, el ocultamiento de error está configurado para evaluar una correlación cruzada de la señal de excitación en el dominio del tiempo, con el fin de determinar una información de tono aproximada. Por otra parte, el ocultamiento de error puede estar configurado para refinar la información de tono aproximada usando una búsqueda de circuito cerrado alrededor de un tono determinado por la información de tono aproximada.
En consecuencia, puede lograrse una información de tono de alta precisión con un esfuerzo de cálculo moderado.
[0042] En una realización preferida, el ocultamiento de error del decodificador de audio puede estar configurado para obtener una información de tono basándose en una información secundaria de la información de audio codificada.
[0043] En una realización preferida, el ocultamiento de error puede estar configurado para obtener una información de tono basándose en una información de tono disponible para una trama de audio decodificada previamente.
[0044] En una realización preferida, el ocultamiento de error está configurado para obtener una información de tono basándose en una búsqueda de tono realizada sobre una señal en el dominio del tiempo o sobre una señal residual.
[0045] En otras palabras, el tono puede ser transmitido como información secundaria o podría provenir también de la trama previa si hay LTP, por ejemplo. La información de tono además podría ser transmitida en el tren de bits si está disponible en el codificador. Opcionalmente es posible realizar la búsqueda de tono en la señal en el dominio del tiempo directamente o en la residual, lo que habitualmente proporciona mejores resultados en la residual (señal de excitación en el dominio del tiempo).
[0046] En una realización preferida, el ocultamiento de error está configurado para copiar un ciclo de tono de la señal de excitación en el dominio del tiempo deducida de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida una vez o múltiples veces, con el fin de obtener una señal de excitación para una síntesis de la señal de audio de ocultamiento de error. Mediante el copiado de la señal de excitación en el dominio del tiempo una vez o múltiples veces, puede lograrse que el componente determinista (es decir, sustancialmente periódico) de la información de ocultamiento de error audio se obtenga con buena precisión, y sea una buena continuación del componente determinista (por ejemplo, sustancialmente periódico) del contenido de audio de la trama de audio que precede a la trama de audio perdida.
[0047] En una realización preferida, el ocultamiento de error está configurado para filtrar en paso bajo el ciclo de tono de la señal de excitación en el dominio del tiempo deducida de la representación en el dominio de la frecuencia de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida usando un filtro dependiente de la velocidad de muestreo, cuya anchura de banda depende de una velocidad de muestreo de la trama de audio codificada en una representación en el dominio de la frecuencia. En consecuencia, la señal de excitación en el dominio del tiempo puede ser adaptada para una anchura de banda de audio disponible, lo que produce una buena impresión auditiva de la información de audio de ocultamiento de error. Por ejemplo, se prefiere el paso bajo solo sobre la primera trama perdida, y preferentemente, además, el paso bajo solo si la señal no es el 100% estable. Sin embargo, debe observarse que el filtrado de paso bajo es opcional, y puede realizarse solo sobre el primer ciclo de tono. Por ejemplo, el filtro puede depender de la velocidad de muestreo, de manera que la frecuencia de corte sea independiente de la anchura de banda.
[0048] En una realización preferida, el ocultamiento de error está configurado para predecir un tono en un extremo de una trama perdida con el fin de adaptar la señal de excitación en el dominio del tiempo, o una o más de sus copias, al tono predicho. En consecuencia, pueden considerarse los cambios de tono esperados durante la trama de audio perdida. En consecuencia, se evitan artefactos en una transición entre la información de audio de ocultamiento de error y una información de audio de una trama decodificada apropiadamente después de una o más tramas de audio perdidas (o al menos se reducen, ya que es solo una trama predicha, no la real). Por ejemplo, la adaptación va desde el último tono bueno hasta el predicho. Esto se realiza por medio de la resincronización de pulsos [7].
[0049] En una realización preferida, el ocultamiento de error está configurado para combinar una señal de excitación en el dominio del tiempo extrapolada y una señal de ruido, con el fin de obtener una señal de entrada para una síntesis LPC. En este caso, el ocultamiento de error está configurado para realizar la síntesis LPC, en el que la síntesis LPC está configurada para filtrar la señal de entrada de la síntesis LPC según parámetros de codificación de predicción lineal, con el fin de obtener la información de audio de ocultamiento de error. En consecuencia, puede considerarse tanto un componente determinista (por ejemplo, aproximadamente periódico) del contenido de audio como un componente de tipo ruido del contenido de audio. Por lo tanto, se logra que la información de audio de ocultamiento de error comprenda una impresión auditiva “natural”.
[0050] En una realización preferida, el ocultamiento de error está configurado para calcular una ganancia de la señal de excitación en el dominio del tiempo extrapolada, que se usa para obtener la señal de entrada para la síntesis LPC, usando una correlación en el dominio del tiempo que se realiza basándose en una representación en el dominio del tiempo de la trama de audio codificada en el dominio de la frecuencia que precede a la trama de audio perdida, en el que se establece un retardo de correlación dependiente de una información de tono obtenida basándose en la señal de excitación en el dominio del tiempo. En otras palabras, se determina una intensidad de un componente periódico dentro de la trama de audio que precede a la trama de audio perdida, y esta intensidad determinada del componente periódico se usa para obtener la información de audio de ocultamiento de error. Sin embargo, se ha encontrado que el cálculo antes mencionado de la intensidad del componente periódico proporciona resultados particularmente buenos, ya que se considera la señal de audio en el dominio del tiempo real de la trama de audio que precede a la trama de audio perdida. Alternativamente, puede obtenerse una correlación en el dominio de excitación o directamente en el dominio del tiempo con el fin de obtener la información de tono. Sin embargo, hay también diferentes posibilidades, según la realización usada. En una realización, la información de tono podría ser solo el tono obtenido desde la ltp de última trama, o el tono que es transmitido como información secundaria o el calculado.
[0051] En una realización preferida, el ocultamiento de error está configurado para el filtro de paso alto de la señal de ruido que está combinada con la señal de excitación en el dominio del tiempo extrapolada. Se ha encontrado que el filtrado de paso alto de la señal de ruido (que normalmente es introducida en la síntesis LPC) logra una impresión auditiva natural. Por ejemplo, la característica de paso alto puede cambiar con la cantidad de trama perdida, después de una cierta cantidad de pérdida de trama ya no puede haber paso alto. La característica de paso alto además puede depender de la velocidad de muestreo con la que se ejecuta el decodificador. Por ejemplo, el paso alto depende de la velocidad de muestreo, y la característica de filtro puede cambiar con el tiempo (sobre pérdida de trama consecutiva). La característica de paso alto además puede cambiar opcionalmente sobre pérdida de trama consecutiva, de manera que después de una cierta cantidad de pérdida de trama, ya no hay filtrado, para solo obtener el ruido de forma de banda completa de manera que se obtenga un buen ruido de confort cercano al ruido de fondo.
[0052] En una realización preferida, el ocultamiento de error está configurado para cambiar selectivamente la forma espectral de la señal de ruido (562) usando el filtro de preacentuación en el que la señal de ruido se combina con la señal de excitación en el dominio del tiempo extrapolada si la trama de audio codificada en una representación en el dominio de la frecuencia que precede a la trama de audio perdida es una trama de audio con voz o comprende un inicio. Se ha encontrado que la impresión auditiva de la información de audio de ocultamiento de error puede ser mejorada por dicho concepto. Por ejemplo, en algún caso, es mejor disminuir las ganancias y la forma, y en algún lugar, es mejor incrementarlas.
[0053] En una realización preferida, el ocultamiento de error está configurado para calcular una ganancia de la señal de ruido según una correlación en el dominio del tiempo, que se realiza basándose en una representación en el dominio del tiempo de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida. Se ha encontrado que dicha determinación de la ganancia de la señal de ruido proporciona resultados particularmente exactos, ya que puede considerarse la señal de audio en el dominio del tiempo real asociada con la trama de audio que precede a la trama de audio perdida. Usando este concepto, es posible poder obtener una energía de la trama ocultada cercana a la energía de la trama buena previa. Por ejemplo, la ganancia para la señal de ruido puede ser generada midiendo la energía del resultado: excitación de señal de entrada -excitación basándose en el tono generado.
[0054] En una realización preferida, el ocultamiento de error está configurado para modificar una señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, con el fin de obtener la información de audio de ocultamiento de error. Se ha encontrado que la modificación de la señal de excitación en el dominio del tiempo permite la adaptación de la señal de excitación en el dominio del tiempo a una evolución temporal deseada. Por ejemplo, la modificación de la señal de excitación en el dominio del tiempo permite el “desvanecimiento” del componente determinista (por ejemplo, sustancialmente periódico) del contenido de audio en la información de audio de ocultamiento de error. Por otra parte, la modificación de la señal de excitación en el dominio del tiempo además permite adaptar la señal de excitación en el dominio del tiempo a una variación de tono (estimada o esperada). Esto permite el ajuste de las características de la información de audio de ocultamiento de error con el tiempo.
[0055] En una realización preferida, el ocultamiento de error está configurado para usar una o más copias modificadas de la señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, con el fin de obtener la información de ocultamiento de error. Las copias modificadas de la señal de excitación en el dominio del tiempo pueden obtenerse con un esfuerzo moderado, y la modificación puede ser realizada usando un simple algoritmo. En consecuencia, las características deseadas de la información de audio de ocultamiento de error pueden lograrse con esfuerzo moderado.
[0056] En una realización preferida, el ocultamiento de error está configurado para modificar la señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o a una o más de sus copias, con el fin de reducir un componente periódico de la información de audio de ocultamiento de error con el tiempo. En consecuencia, puede considerarse que la correlación entre el contenido de audio de la trama de audio que precede a la trama de audio perdida y el contenido de audio de una o más tramas de audio perdidas disminuye con el tiempo. Además, puede evitarse causar una impresión auditiva no natural por una larga preservación de un componente periódico de la información de audio de ocultamiento de error.
[0057] En una realización preferida, el ocultamiento de error está configurado para cambiar de escala la señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a la trama de audio perdida, o a una o más de sus copias, con el fin de modificar la señal de excitación en el dominio del tiempo. Se ha encontrado que la operación de escala puede realizarse con poco esfuerzo, en el que la señal de excitación en el dominio del tiempo con cambio de escala normalmente proporciona una buena información de audio de ocultamiento de error.
[0058] En una realización preferida, el ocultamiento de error está configurado para reducir gradualmente una ganancia aplicada con el fin de cambiar de escala la señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o a una o más de sus copias. Por consiguiente, puede lograrse un desvanecimiento del componente periódico dentro de la información de audio de ocultamiento de error.
[0059] En una realización preferida, el ocultamiento de error está configurado de manera que ajusta una velocidad usada para reducir gradualmente una ganancia aplicada con el fin de cambiar de escala la señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o a una o más de sus copias, según uno o más parámetros de una o más tramas de audio que preceden a la trama de audio perdida, y/o según una cantidad de tramas de audio perdidas consecutivas. Por consiguiente, es posible ajustar la velocidad a la cual el componente determinista (por ejemplo, al menos aproximadamente periódico) se desvanece en la información de audio de ocultamiento de error. La velocidad del desvanecimiento puede ser adaptada a características específicas del contenido de audio, que normalmente pueden observarse a partir de uno o más parámetros de una o más tramas de audio que preceden a la trama de audio perdida. Alternativamente, o además, la cantidad de tramas de audio perdidas consecutivas puede ser considerada cuando se determina la velocidad usada para el desvanecimiento del componente determinista (por ejemplo, al menos aproximadamente periódico) de la información de audio de ocultamiento de error, que ayuda a adaptar el ocultamiento de error a la situación específica. Por ejemplo, la ganancia de la parte tonal y la ganancia de la parte de ruido pueden desvanecerse de manera separada. La ganancia para la parte tonal puede converger a cero después de una cierta cantidad de pérdida de trama, mientras que la ganancia de ruido puede converger a la ganancia determinada para alcanzar un cierto ruido de confort.
[0060] En una realización preferida, el ocultamiento de error está configurado de manera que ajuste la velocidad usada para reducir gradualmente una ganancia aplicada con el fin de cambiar de escala la señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o a una o más de sus copias, según una longitud de un período de tono de la señal de excitación en el dominio del tiempo, de modo que una entrada de señal de excitación en el dominio del tiempo en una síntesis LPC se desvanece más rápidamente para señales que tienen una longitud más corta del período de tono en comparación con señales que tienen una mayor longitud del período de tono. Por consiguiente, puede evitarse que las señales que tienen una longitud más corta del período de tono sean repetidas con demasiada frecuencia con alta intensidad, ya que esto normalmente resultará en una impresión auditiva no natural. En consecuencia, puede mejorarse la calidad general de la información de audio de ocultamiento de error.
[0061] En una realización preferida, el ocultamiento de error está configurado de manera que ajuste la velocidad usada para reducir gradualmente una ganancia aplicada con el fin de cambiar de escala la señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o a una o más de sus copias, según un resultado de un análisis de tono o una predicción de tono, de manera que un componente determinista de la entrada de señal de excitación en el dominio del tiempo en una síntesis lPc se desvanece más rápidamente para señales que tienen un mayor cambio de tono por unidad de tiempo en comparación con señales que tienen un cambio de tono menor por unidad de tiempo, y/o de manera que un componente determinista de la entrada de señal de excitación en el dominio del tiempo en una síntesis LPC se desvanece más rápidamente para señales para las cuales una predicción de tono falla en comparación con señales para las cuales la predicción de tono tiene éxito. Por consiguiente, el desvanecimiento puede hacerse más rápidamente para señales en las cuales hay una gran incertidumbre del tono en comparación con señales para las cuales hay una menor incertidumbre del tono. Sin embargo, mediante el desvanecimiento de un componente determinista más rápidamente para señales que comprenden una incertidumbre comparativamente grande del tono, pueden evitarse artefactos audibles, o al menos pueden reducirse sustancialmente.
[0062] En una realización preferida, el ocultamiento de error está configurado para la escala de tiempo de la señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o a una o más de sus copias, según una predicción de un tono para el tiempo de una o más tramas de audio perdidas. Por consiguiente, la señal de excitación en el dominio del tiempo puede ser adaptada a un tono variable, de manera que la información de audio de ocultamiento de error comprende una impresión auditiva más natural.
[0063] En una realización preferida, el ocultamiento de error está configurado para proporcionar la información de audio de ocultamiento de error para un tiempo que es mayor que una duración temporal de una o más tramas de audio perdidas. Por consiguiente, es posible realizar una operación de superposición y suma basándose en la información de audio de ocultamiento de error, que ayuda a reducir los artefactos de bloqueo.
[0064] En una realización preferida, el ocultamiento de error está configurado para realizar una superposición y suma de la información de audio de ocultamiento de error y de una representación en el dominio del tiempo de una o más tramas de audio recibidas apropiadamente después de una o más tramas de audio perdidas. En consecuencia, es posible evitar (o al menos reducir) los artefactos de bloqueo.
[0065] En una realización preferida, el ocultamiento de error está configurado para deducir la información de audio de ocultamiento de error basándose en al menos tres ventanas o tramas parcialmente superpuestas que preceden a una trama de audio perdida o a una ventana perdida. Por consiguiente, la información de audio de ocultamiento de error puede obtenerse con buena precisión incluso para modos de codificación en los cuales se superponen más de dos tramas (o ventanas) (en el que dicha superposición puede ayudar a reducir un retardo).
[0066] Otra realización según la invención crea un procedimiento para proporcionar una información de audio decodificada basándose en una información de audio codificada. El procedimiento comprende el suministro de una información de audio de ocultamiento de error para el ocultamiento de una pérdida de una trama de audio después de una trama de audio codificada en una representación en el dominio de la frecuencia usando una señal de excitación en el dominio del tiempo. Este procedimiento se basa en las mismas consideraciones que el decodificador de audio mencionado anteriormente.
[0067] Otra realización adicional según la invención crea un programa informático para la realización de dicho procedimiento cuando el programa informático se ejecuta en un ordenador.
[0068] Otra realización según la invención crea un decodificador de audio para proporcionar una información de audio decodificada basándose en una información de audio codificada. El decodificador de audio comprende un ocultamiento de error configurado para proporcionar una información de audio de ocultamiento de error para el ocultamiento de una pérdida de una trama de audio. El ocultamiento de error está configurado para modificar una señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, con el fin de obtener la información de audio de ocultamiento de error.
[0069] Esta realización según la invención se basa en la idea de que puede obtenerse un ocultamiento de error con una buena calidad de audio basándose en una señal de excitación en el dominio del tiempo, en el que una modificación de la señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida permite una adaptación de la información de audio de ocultamiento de error a cambios esperados (o predichos) del contenido de audio durante la trama perdida. Por consiguiente, pueden evitarse los artefactos, y en particular, una impresión auditiva no natural, que serían causados por un uso sin cambios de la señal de excitación en el dominio del tiempo. En consecuencia, se logra un suministro mejorada de una información de audio de ocultamiento de error, de manera que las tramas de audio perdidas pueden ser ocultadas con resultados mejorados.
[0070] En una realización preferida, el ocultamiento de error está configurado para usar una o más copias modificadas de la señal de excitación en el dominio del tiempo obtenida para una o más tramas de audio que preceden a una trama de audio perdida, con el fin de obtener la información de ocultamiento de error. Al usar una o más copias modificadas de la señal de excitación en el dominio del tiempo obtenida para una o más tramas de audio que preceden a una trama de audio perdida, puede lograrse una buena calidad de la información de audio de ocultamiento de error, con poco esfuerzo de cálculo.
[0071] En una realización preferida, el ocultamiento de error está configurado para modificar la señal de excitación en el dominio del tiempo obtenida para una o más tramas de audio que preceden a una trama de audio perdida, o a una o más de sus copias, con el fin de reducir un componente periódico de la información de audio de ocultamiento de error con el tiempo. Al reducir el componente periódico de la información de audio de ocultamiento de error con el tiempo, puede evitarse una conservación artificialmente larga de un sonido determinista (por ejemplo, aproximadamente periódico), lo que ayuda a hacer natural el sonido de la información de audio de ocultamiento de error.
[0072] En una realización preferida, el ocultamiento de error está configurado para cambiar de escala la señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a la trama de audio perdida, o a una o más de sus copias, con el fin de modificar la señal de excitación en el dominio del tiempo. La escala de la señal de excitación en el dominio del tiempo constituye una manera particularmente eficiente de variar la información de audio de ocultamiento de error con el tiempo.
[0073] En una realización preferida, el ocultamiento de error está configurado para reducir gradualmente una ganancia aplicada con el fin de cambiar de escala la señal de excitación en el dominio del tiempo obtenida para una o más tramas de audio que preceden a una trama de audio perdida, o a una o más de sus copias. Se ha encontrado que la reducción gradual de la ganancia aplicada para cambiar de escala la señal de excitación en el dominio del tiempo obtenida para una o más tramas de audio que preceden a una trama de audio perdida, o a una o más de sus copias, permite obtener una señal de excitación en el dominio del tiempo para el suministro de la información de audio de ocultamiento de error, de manera que los componentes deterministas (por ejemplo, componentes al menos aproximadamente periódicos) se desvanecen. Por ejemplo, puede no haber solo una ganancia. Por ejemplo, se podría tener una ganancia para la parte tonal (también referida como la parte aproximadamente periódica) y una ganancia para la parte de ruido. Las dos excitaciones (o componentes de excitación) pueden ser atenuadas separadamente con diferente factor de velocidad, y a continuación las dos excitaciones resultantes (o componentes de excitación) pueden combinarse antes de suministrarse a la codificación predictiva lineal (LPC) para la síntesis. Si no se tiene ninguna estimación de ruido de fondo, los factores de desvanecimiento para el ruido y para la parte tonal pueden ser similares, y entonces, se podría tener solo una aplicación de desvanecimiento sobre los resultados de las dos excitaciones, multiplicado con su propia ganancia y combinados entre sí.
[0074] Por lo tanto, puede evitarse que la información de audio de ocultamiento de error comprenda un componente de audio determinista (por ejemplo, al menos aproximadamente periódico) temporalmente extendido, que normalmente proporcionaría una impresión auditiva no natural.
[0075] En una realización preferida, el ocultamiento de error está configurado de manera que ajuste una velocidad usada con el fin de reducir gradualmente una ganancia aplicada para cambiar de escala la señal de excitación en el dominio del tiempo obtenida para una o más tramas de audio que preceden a una trama de audio perdida, o a una o más de sus copias, según uno o más parámetros de una o más tramas de audio que preceden a la trama de audio perdida, y/o según una cantidad de tramas de audio perdidas consecutivas. Por lo tanto, la velocidad del desvanecimiento del componente determinista (por ejemplo, al menos aproximadamente periódico) en la información de audio de ocultamiento de error puede adaptarse a la situación específica, con esfuerzo de cálculo moderado. Debido a que la señal de excitación en el dominio del tiempo usada para el suministro de la información de audio de ocultamiento de error es normalmente una versión con cambio de escala (usando la ganancia mencionada anteriormente) de la señal de excitación en el dominio del tiempo obtenida para una o más tramas de audio que preceden a la trama de audio perdida, una variación de dicha ganancia (usada para deducir la señal de excitación en el dominio del tiempo para el suministro de la información de audio de ocultamiento de error) constituye un simple, aunque eficaz, procedimiento para adaptar la información de audio de ocultamiento de error a las necesidades específicas. Sin embargo, la velocidad del desvanecimiento además es controlable con muy poco esfuerzo.
[0076] En una realización preferida, el ocultamiento de error está configurado de manera que ajuste la velocidad usada para reducir gradualmente una ganancia aplicada con el fin de cambiar de escala la señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o a una o más de sus copias, según una longitud de un período de tono de la señal de excitación en el dominio del tiempo, de modo que una entrada de señal de excitación en el dominio del tiempo en una síntesis LPC se desvanece más rápidamente para señales que tienen una longitud más corta del período de tono en comparación con señales que tienen una mayor longitud del período de tono. Por consiguiente, el desvanecimiento se realiza más rápidamente para señales que tienen una longitud más corta del período de tono, lo que evita que un período de tono sea copiado demasiadas veces (lo que habitualmente produciría una impresión auditiva no natural).
[0077] En una realización preferida, el ocultamiento de error está configurado de manera que ajuste la velocidad usada para reducir gradualmente una ganancia aplicada con el fin de cambiar de escala la señal de excitación en el dominio del tiempo obtenida para una o más tramas de audio que preceden a una trama de audio perdida, o a una o más de sus copias, según un resultado de un análisis de tono o una predicción de tono, de manera que un componente determinista de una entrada de señal de excitación en el dominio del tiempo en una síntesis LPC se desvanece más rápidamente para señales que tienen un mayor cambio de tono por unidad de tiempo, en comparación con señales que tienen un menor cambio de tono por unidad de tiempo, y/o de manera que un componente determinista de una entrada de señal de excitación en el dominio del tiempo en una síntesis LPC se desvanece más rápidamente para señales para las cuales falla una predicción de tono en comparación con señales para las cuales la predicción de tono tiene éxito. Por consiguiente, un componente determinista (por ejemplo, al menos aproximadamente periódico) se desvanece más rápidamente para señales para las cuales hay una mayor incertidumbre del tono (en el que un mayor cambio de tono por unidad de tiempo, o incluso, un fallo de la predicción de tono, indica una incertidumbre comparativamente grande del tono). En consecuencia, pueden evitarse los artefactos, que surgirían del suministro de una información de audio de ocultamiento de error altamente determinista en una situación en la cual el tono real es incierto.
[0078] En una realización preferida, el ocultamiento de error está configurado para el cambio de escala en el tiempo de la señal de excitación en el dominio del tiempo obtenida para (o basándose en) una o más tramas de audio que preceden a una trama de audio perdida, o a una o más de sus copias, según una predicción de un tono para el tiempo de la una o más tramas de audio perdidas. Por consiguiente, la señal de excitación en el dominio del tiempo, que se usa para el suministro de la información de audio de ocultamiento de error, es modificada (en comparación con la señal de excitación en el dominio del tiempo obtenida para (o basándose en) una o más tramas de audio que preceden a una trama de audio perdida, de manera que el tono de la señal de excitación en el dominio del tiempo sigue los requerimientos de un período de tiempo de la trama de audio perdida. En consecuencia, puede mejorarse la impresión auditiva, que puede lograrse por la información de audio de ocultamiento de error.
[0079] En una realización preferida, el ocultamiento de error está configurado para obtener una señal de excitación en el dominio del tiempo, que ha sido usada para la decodificación de una o más tramas de audio que preceden a la trama de audio perdida, y para la modificación de dicha señal de excitación en el dominio del tiempo, que ha sido usada para la decodificación de una o más tramas de audio que preceden a la trama de audio perdida, con el fin de obtener una señal de excitación en el dominio del tiempo modificada. En este caso, el ocultamiento en el dominio del tiempo está configurado para proporcionar la información de audio de ocultamiento de error basándose en la señal de audio en el dominio del tiempo modificada. Por consiguiente, es posible reutilizar una señal de excitación en el dominio del tiempo, que ya ha sido usada para decodificar una o más tramas de audio que preceden a la trama de audio perdida. En consecuencia, puede mantenerse un esfuerzo de cálculo muy pequeño, si la señal de excitación en el dominio del tiempo ya ha sido adquirida para la decodificación de una o más tramas de audio que preceden a la trama de audio perdida.
[0080] En una realización preferida, el ocultamiento de error está configurado para obtener una información de tono, que ha sido usada para la decodificación de una o más tramas de audio que preceden a la trama de audio perdida. En este caso, el ocultamiento de error además está configurado para proporcionar la información de audio de ocultamiento de error según dicha información de tono. Por consiguiente, la información de tono previamente usada puede ser reutilizada, lo que evita un esfuerzo de cálculo para un nuevo cálculo de la información de tono. Por lo tanto, el ocultamiento de error es especialmente eficiente en términos de cálculo. Por ejemplo, en el caso de ACELP, se tiene 4 retardos de tono y ganancias por trama. Pueden usarse las últimas dos tramas para predecir el tono al final de la trama que se tiene que ocultar.
[0081] A continuación, se compara con el códec en el dominio de la frecuencia previamente descrito en el que solo se deducen uno o dos tonos por trama (se puede tener más de dos, si bien esto añadiría mucha complejidad para una ganancia no muy grande en calidad). En el caso de un códec de conmutación que es, por ejemplo, ACELP - FD - pérdida, entonces, se tiene una precisión de tono mucho mejor, ya que el tono se transmite en el tren de bits y se basa en la señal de entrada original (no en la decodificada, como se hace en el decodificador). En el caso de alta velocidad binaria, por ejemplo, se puede enviar además una información de retardo de tono y ganancia, o información LTP, por trama codificada en el dominio de la frecuencia.
[0082] En una realización preferida, el ocultamiento de error del decodificador de audio puede estar configurado para obtener una información de tono basándose en una información secundaria de la información de audio codificada.
[0083] En una realización preferida, el ocultamiento de error puede estar configurado para obtener una información de tono basándose en una información de tono disponible para una trama de audio decodificada previamente.
[0084] En una realización preferida, el ocultamiento de error está configurado para obtener una información de tono basándose en una búsqueda de tono realizada sobre una señal en el dominio del tiempo o sobre una señal residual.
[0085] En otras palabras, el tono puede ser transmitido como información secundaria o podría provenir también de la trama previa si hay LTP, por ejemplo. La información de tono además podría ser transmitida en el tren de bits si está disponible en el codificador. Opcionalmente es posible realizar la búsqueda de tono en la señal en el dominio del tiempo directamente o en la residual, lo que habitualmente proporciona mejores resultados en la residual (señal de excitación en el dominio del tiempo).
[0086] En una realización preferida, el ocultamiento de error está configurado para obtener un conjunto de coeficientes de predicción lineal, que se han usado para decodificar una o más tramas de audio que preceden a la trama de audio perdida. En este caso, el ocultamiento de error está configurado para proporcionar la información de audio de ocultamiento de error según dicho conjunto de coeficientes de predicción lineal. En consecuencia, la eficiencia del ocultamiento de error se incrementa por medio de la reutilización de información previamente generada (o previamente decodificada), por ejemplo, el conjunto previamente usado de coeficientes de predicción lineal. En consecuencia, se evita la alta complejidad de cálculo innecesaria.
[0087] En una realización preferida, el ocultamiento de error está configurado para extrapolar un nuevo conjunto de coeficientes de predicción lineal sobre la base del conjunto de coeficientes de predicción lineal, que se han usado para decodificar una o más tramas de audio que preceden a la trama de audio perdida. En este caso, el ocultamiento de error está configurado para usar el nuevo conjunto de coeficientes de predicción lineal con el fin de proporcionar la información de ocultamiento de error. Al deducir el nuevo conjunto de coeficientes de predicción lineal, usados para proporcionar la información de audio de ocultamiento de error, a partir de un conjunto de coeficientes de predicción lineal previamente usados usando una extrapolación, puede evitarse un recálculo completo de los coeficientes de predicción lineal, lo que ayuda a mantener el esfuerzo de cálculo razonablemente bajo. Por otra parte, al realizar una extrapolación sobre la base del conjunto previamente usado de coeficientes de predicción lineal, puede garantizarse que el nuevo conjunto de coeficientes de predicción lineal es al menos similar al conjunto previamente usado de coeficientes de predicción lineal, lo que ayuda a evitar discontinuidades cuando se proporciona la información de ocultamiento de error. Por ejemplo, después de una cierta cantidad de pérdida de trama, se suele estimar la forma de la codificación predictiva lineal (LPC) de ruido de fondo. La velocidad de esta convergencia, por ejemplo, puede depender de la característica de señal.
[0088] En una realización preferida, el ocultamiento de error está configurado para obtener una información acerca de una intensidad de un componente de señal determinista en una o más tramas de audio que preceden a una trama de audio perdida. En este caso, el ocultamiento de error está configurado para comparar la información acerca de una intensidad de un componente de señal determinista en una o más tramas de audio que preceden a una trama de audio perdida con un valor de umbral, con el fin de decidir si introducir un componente determinista de una señal de excitación en el dominio del tiempo en una síntesis LPC (síntesis sobre la base del coeficiente de predicción lineal), o si introducir solo un componente de ruido de una señal de excitación en el dominio del tiempo en la síntesis LPC. Por consiguiente, es posible omitir el suministro de un componente determinista (por ejemplo, al menos aproximadamente periódico) de la información de audio de ocultamiento de error en el caso de que solo haya una pequeña contribución de señal determinista dentro de una o más tramas que preceden a la trama de audio perdida. Se ha encontrado que esto ayuda a obtener una buena impresión auditiva.
[0089] En una realización preferida, el ocultamiento de error está configurado para obtener una información de tono que describe un tono de la trama de audio que precede a la trama de audio perdida, y proporcionar la información de audio de ocultamiento de error según la información de tono. Por consiguiente, es posible adaptar el tono de la información de ocultamiento de error al tono de la trama de audio que precede a la trama de audio perdida. Por consiguiente, se evitan las discontinuidades, y puede lograrse una impresión auditiva natural.
[0090] En una realización preferida, el ocultamiento de error está configurado para obtener la información de tono basándose en la señal de excitación en el dominio del tiempo asociada con la trama de audio que precede a la trama de audio perdida. Se ha encontrado que la información de tono obtenida basándose en la señal de excitación en el dominio del tiempo es particularmente fiable, y además, se adapta muy bien al procesamiento de la señal de excitación en el dominio del tiempo.
[0091] En una realización preferida, el ocultamiento de error está configurado para evaluar una correlación cruzada de la señal de excitación en el dominio del tiempo (o, alternativamente, de una señal de audio en el dominio del tiempo), con el fin de determinar una información de tono aproximada, y refinar la información de tono aproximada usando una búsqueda de circuito cerrado alrededor de un tono determinado (o descrito) por la información de tono aproximada. Se ha encontrado que este concepto permite obtener una información de tono muy precisa con esfuerzo de cálculo moderado. En otras palabras, en algunos códecs, se realiza la búsqueda de tono directamente en la señal en el dominio del tiempo, mientras que, en algunos otros, se realiza la búsqueda de tono en la señal de excitación en el dominio del tiempo.
[0092] En una realización preferida, el ocultamiento de error está configurado para obtener la información de tono para el suministro de la información de audio de ocultamiento de error basándose en una información de tono calculada previamente, que se usó para la decodificación de una o más tramas de audio que preceden a la trama de audio perdida, y basándose en una evaluación de una correlación cruzada de la señal de excitación en el dominio del tiempo, que se modifica con el fin de obtener una señal de excitación en el dominio del tiempo modificada para el suministro de la información de audio de ocultamiento de error. Se ha encontrado que la consideración tanto de la información de tono calculada previamente como de la información de tono obtenida basándose en la señal de excitación en el dominio del tiempo (usando una correlación cruzada) mejora la fiabilidad de la información de tono, y en consecuencia, ayuda a evitar artefactos y/o discontinuidades.
[0093] En una realización preferida, el ocultamiento de error está configurado para seleccionar un pico de la correlación cruzada, de una pluralidad de picos de la correlación cruzada, como un pico que representa un tono según la información de tono calculada previamente, de manera que se selecciona un pico que representa un tono que está más cercano al tono representado por la información de tono calculada previamente. Por consiguiente, pueden superarse posibles ambigüedades de la correlación cruzada, que, por ejemplo, pueden producir múltiples picos. La información de tono calculada previamente se usa así para seleccionar el pico “apropiado” de la correlación cruzada, lo que ayuda a incrementar de manera sustancial la fiabilidad. Por otra parte, la señal de excitación en el dominio del tiempo real se considera principalmente para la determinación de tono, lo que proporciona una buena precisión (que es sustancialmente mejor que una precisión que se obtiene basándose solo en la información de tono calculada previamente).
[0094] En una realización preferida, el ocultamiento de error del decodificador de audio puede estar configurado para obtener una información de tono basándose en una información secundaria de la información de audio codificada.
[0095] En una realización preferida, el ocultamiento de error puede estar configurado para obtener una información de tono basándose en una información de tono disponible para una trama de audio decodificada previamente.
[0096] En una realización preferida, el ocultamiento de error está configurado para obtener una información de tono basándose en una búsqueda de tono realizada sobre una señal en el dominio del tiempo o sobre una señal residual.
[0097] En otras palabras, el tono puede ser transmitido como información secundaria o podría provenir también de la trama previa si hay LTP, por ejemplo. La información de tono además podría ser transmitida en el tren de bits si está disponible en el codificador. Opcionalmente es posible realizar la búsqueda de tono en la señal en el dominio del tiempo directamente o en la residual, lo que habitualmente proporciona mejores resultados en la residual (señal de excitación en el dominio del tiempo).
[0098] En una realización preferida, el ocultamiento de error está configurado para copiar un ciclo de tono de la señal de excitación en el dominio del tiempo asociada con la trama de audio que precede a la trama de audio perdida una vez o múltiples veces, con el fin de obtener una señal de excitación (o al menos uno de sus componentes deterministas) para una síntesis de la información de audio de ocultamiento de error. Al copiar el ciclo de tono de la señal de excitación en el dominio del tiempo asociada con la trama de audio que precede a la trama de audio perdida una vez o múltiples veces, y al modificar dichas una o más copias usando un algoritmo de modificación comparativamente simple, la señal de excitación (o al menos sus componentes deterministas) para la síntesis de la información de audio de ocultamiento de error puede ser obtenida con poco esfuerzo de cálculo. Sin embargo, la reutilización de la señal de excitación en el dominio del tiempo asociada con la trama de audio que precede a la trama de audio perdida (al copiar dicha señal de excitación en el dominio del tiempo) evita discontinuidades audibles.
[0099] En una realización preferida, el ocultamiento de error está configurado para el filtro paso bajo del ciclo de tono de la señal de excitación en el dominio del tiempo asociada con la trama de audio que precede a la trama de audio perdida usando un filtro dependiente de la velocidad de muestreo, en la señal de banda depende de una velocidad de muestreo de la trama de audio codificada en una representación en el dominio de la frecuencia. Por consiguiente, la señal de excitación en el dominio del tiempo se adapta a una anchura de banda de señal del decodificador de audio, lo que produce una buena reproducción del contenido de audio.
[0100] Para detalles y mejoras opcionales se hace referencia, por ejemplo, a las explicaciones anteriores.
[0101] Por ejemplo, se prefiere el paso bajo de solo la primera trama perdida, y preferentemente, además, se realiza el paso bajo solo si la señal no es sin voz. Sin embargo, debe observarse que el filtrado de paso bajo es opcional. Adicionalmente, el filtro puede ser dependiente de la velocidad de muestreo, de manera que la frecuencia de corte es independiente de la anchura de banda.
[0102] En una realización preferida, el ocultamiento de error está configurado para predecir un tono en un extremo de una trama perdida. En este caso, el ocultamiento de error está configurado para adaptar la señal de excitación en el dominio del tiempo, o una o más de sus copias, al tono predicho. Al modificar la señal de excitación en el dominio del tiempo, de manera que la señal de excitación en el dominio del tiempo que se usa realmente para el suministro de la información de audio de ocultamiento de error es modificada con respecto a la señal de excitación en el dominio del tiempo asociada con una trama de audio que precede a la trama de audio perdida, pueden considerarse cambios de tono esperados (o predichos) durante la trama de audio perdida, de manera que la información de audio de ocultamiento de error se adapta bien a la evolución real (o al menos a la evolución esperada o predicha) del contenido de audio. Por ejemplo, la adaptación va desde el último tono bueno hasta el predicho. Esto se realiza por medio de la resincronización de pulsos [7].
[0103] En una realización preferida, el ocultamiento de error está configurado para combinar una señal de excitación en el dominio del tiempo extrapolada y una señal de ruido, con el fin de obtener una señal de entrada para una síntesis LPC. En este caso, el ocultamiento de error está configurado para realizar la síntesis LPC, en el que la síntesis LPC está configurada para filtrar la señal de entrada de la síntesis LPC según parámetros de codificación de predicción lineal, con el fin de obtener la información de audio de ocultamiento de error. Al combinar la señal de excitación en el dominio del tiempo extrapolada (que es normalmente una versión modificada de la señal de excitación en el dominio del tiempo deducida para una o más tramas de audio que preceden a la trama de audio perdida) y una señal de ruido, pueden considerarse tanto componentes deterministas (por ejemplo, aproximadamente periódicos) como componentes de ruido del contenido de audio, en el ocultamiento de error. Por lo tanto, puede lograrse que la información de audio de ocultamiento de error proporcione una impresión auditiva que es similar a la impresión auditiva proporcionada por las tramas que preceden a la trama perdida.
[0104] Además, al combinar una señal de excitación en el dominio del tiempo y una señal de ruido, con el fin de obtener la señal de entrada para la síntesis LPC (que puede considerarse una señal de excitación en el dominio del tiempo combinada), es posible variar un porcentaje del componente determinista de la señal de audio de entrada para la síntesis LPC, mientras que se mantiene una energía (de la señal de entrada de la síntesis LPC, o incluso, de la señal de salida de la síntesis LPC). En consecuencia, es posible variar las características de la información de audio de ocultamiento de error (por ejemplo, las características de tonalidad), sin cambiar sustancialmente una energía o volumen de la señal de audio de ocultamiento de error, de manera que es posible modificar la señal de excitación en el dominio del tiempo sin causar distorsiones audibles inaceptables.
[0105] Una realización según la invención crea un procedimiento para proporcionar una información de audio decodificada basándose en una información de audio codificada. El procedimiento comprende el suministro de una información de audio de ocultamiento de error para el ocultamiento de una pérdida de una trama de audio. El suministro de la información de audio de ocultamiento de error comprende la modificación de una señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, con el fin de obtener la información de audio de ocultamiento de error.
[0106] Este procedimiento se basa en las mismas consideraciones que el decodificador de audio mencionado anteriormente.
[0107] Una realización adicional según la invención crea un programa informático para la realización de dicho procedimiento cuando el programa informático se ejecuta en un ordenador.
Breve descripción de las figuras
[0108] Las realizaciones de la presente invención se describirán a continuación con referencia a las figuras adjuntas, en las que:
la fig. 1 muestra un diagrama de bloques esquemático de un decodificador de audio, según una realización de la invención;
la fig. 2 muestra un diagrama de bloques esquemático de un decodificador de audio, según otra realización de la presente invención;
la fig. 3 muestra un diagrama de bloques esquemático de un decodificador de audio, según otra realización de la presente invención;
la fig. 4 muestra un diagrama de bloques esquemático de un decodificador de audio, según otra realización de la presente invención;
la fig. 5 muestra un diagrama de bloques esquemático de un ocultamiento en el dominio del tiempo para un codificador de transformada;
la fig. 6 muestra un diagrama de bloques esquemático de un ocultamiento en el dominio del tiempo para un códec de conmutación;
la fig. 7 muestra un diagrama de bloques de un decodificador TCX que realiza una decodificación TCX en operación normal o en el caso de pérdida de paquete parcial;
la fig. 8 muestra un diagrama de bloques esquemático de un decodificador TCX que realiza una decodificación TCX en el caso de ocultamiento de borrado de paquetes TCX-256;
la fig. 9 muestra un diagrama de flujo de un procedimiento para proporcionar una información de audio decodificada basándose en una información de audio codificada, según una realización de la presente invención; y
la fig. 10 muestra un diagrama de flujo de un procedimiento para proporcionar una información de audio decodificada basándose en una información de audio codificada, según otra realización de la presente invención; la fig. 11 muestra un diagrama de bloques esquemático de un decodificador de audio, según otra realización de la presente invención.
Descripción detallada de las realizaciones
1. Decodificador de audio según la fig. 1
[0109] La fig. 1 muestra un diagrama de bloques esquemático de un decodificador de audio 100, según una realización de la presente invención. El decodificador de audio 100 recibe una información de audio codificada 110, que, por ejemplo, puede comprender una trama de audio codificada en una representación en el dominio de la frecuencia. La información de audio codificada, por ejemplo, puede ser recibida por medio de un canal no fiable, de manera que se produce una pérdida de trama de vez en cuando. El decodificador de audio 100 además proporciona, basándose en la información de audio codificada 110, la información de audio decodificada 112.
[0110] El decodificador de audio 100 puede comprender una decodificación/procesamiento 120, que proporciona la información de audio decodificada basándose en la información de audio codificada en ausencia de una pérdida de trama.
[0111] El decodificador de audio 100 comprende además un ocultamiento de error 130, que proporciona una información de audio de ocultamiento de error. El ocultamiento de error 130 está configurado para proporcionar la información de audio de ocultamiento de error 132 para el ocultamiento de una pérdida de una trama de audio después de una trama de audio codificada en la representación en el dominio de la frecuencia, usando una señal de excitación en el dominio del tiempo.
[0112] En otras palabras, la decodificación/procesamiento 120 puede proporcionar una información de audio decodificada 122 para tramas de audio que son codificadas en la forma de una representación en el dominio de la frecuencia, es decir, en la forma de una representación codificada, cuyos valores codificados describen intensidades en diferentes segmentos de frecuencia. En otras palabras, la decodificación/procesamiento 120, por ejemplo, puede comprender un decodificador de audio en el dominio de la frecuencia, que deriva un conjunto de valores espectrales de la información de audio codificada 110 y realiza una transformada de dominio de la frecuencia a dominio del tiempo, para de ese modo deducir una representación en el dominio del tiempo que constituye la información de audio decodificada 122, o que forma la base para el suministro de la información de audio decodificada 122 en el caso de que haya posprocesamiento adicional.
[0113] Sin embargo, el ocultamiento de error 130 no realiza el ocultamiento de error en el dominio de la frecuencia, sino que, en cambio, usa una señal de excitación en el dominio del tiempo, que, por ejemplo, puede servir para excitar un filtro de síntesis, por ejemplo, un filtro de síntesis LPC, que proporciona una representación en el dominio del tiempo de una señal de audio (por ejemplo, la información de audio de ocultamiento de error) basándose en la señal de excitación en el dominio del tiempo, y además, basándose en coeficientes de filtro LPC (coeficientes de filtro de codificación de predicción lineal).
[0114] Por consiguiente, el ocultamiento de error 130 proporciona la información de audio de ocultamiento de error 132, que, por ejemplo, puede ser una señal de audio en el dominio del tiempo, para tramas de audio perdidas, en la que la señal de excitación en el dominio del tiempo usada por el ocultamiento de error 130 puede basarse en una o más tramas de audio previas recibidas apropiadamente (que preceden a la trama de audio perdida), que son codificadas en la forma de una representación en el dominio de la frecuencia o puede deducirlo de ellas. Como conclusión, el decodificador de audio 100 puede realizar un ocultamiento de error (es decir, proporcionar una información de audio de ocultamiento de error 132), que reduce una degradación de una calidad de audio debido a la pérdida de una trama de audio basándose en una información de audio codificada, en el que al menos algunas tramas de audio son codificadas en una representación en el dominio de la frecuencia. Se ha encontrado que la realización del ocultamiento de error usando una señal de excitación en el dominio del tiempo, incluso si una trama después de una trama de audio codificada en la representación en el dominio de la frecuencia recibida apropiadamente está perdida, conlleva una calidad de audio mejorada en comparación con un ocultamiento de error que se realiza en el dominio de la frecuencia (por ejemplo, usando una representación en el dominio de la frecuencia de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida). Esto se debe a que puede lograrse una transición suave entre la información de audio decodificada asociada con la trama de audio que precede a la trama de audio perdida recibida apropiadamente y la información de audio de ocultamiento de error asociada con la trama de audio perdida, usando una señal de excitación en el dominio del tiempo, ya que la síntesis de señal, que se realiza habitualmente basándose en la señal de excitación en el dominio del tiempo, ayuda a evitar discontinuidades. Por lo tanto, puede lograrse una buena (o al menos aceptable) impresión auditiva, usando el decodificador de audio 100, incluso si se pierde una trama de audio que sigue a una trama de audio codificada en la representación en el dominio de la frecuencia recibida apropiadamente. Por ejemplo, el enfoque de dominio del tiempo produce una mejora en la señal monofónica, como voz, ya que está más cerca de lo que se hace en el caso del ocultamiento de códec de voz. El uso de LPC ayuda a evitar las discontinuidades, y proporciona una mejor forma de las tramas.
[0115] Por otra parte, debe observarse que el decodificador de audio 100 puede complementarse mediante cualquiera de las características y las funcionalidades que se describen a continuación, ya sea individualmente o tomadas en combinación.
2. Decodificador de audio según la fig. 2
[0116] La fig. 2 muestra un diagrama de bloques esquemático de un decodificador de audio 200 según una realización de la presente invención. El decodificador de audio 200 está configurado para recibir una información de audio codificada 210 y para proporcionar, basándose en la misma, una información de audio decodificada 220. La información de audio codificada 210, por ejemplo, puede adoptar la forma de una secuencia de tramas de audio codificadas en una representación en el dominio del tiempo, codificadas en una representación en el dominio de la frecuencia o codificadas tanto en una representación en el dominio del tiempo como en una representación en el dominio de la frecuencia. En otras palabras, todas las tramas de la información de audio codificada 210 pueden estar codificadas en una representación en el dominio de la frecuencia o todas las tramas de la información de audio codificada 210 pueden estar codificadas en una representación en el dominio del tiempo (por ejemplo, en la forma de una señal de excitación en el dominio del tiempo codificada y parámetros de síntesis de señal codificados, por ejemplo, parámetros LPC). Alternativamente, algunas tramas de la información de audio codificada pueden estar codificadas en una representación en el dominio de la frecuencia, y algunas otras tramas de la información de audio codificada pueden estar codificadas en una representación en el dominio del tiempo, por ejemplo, si el decodificador de audio 200 es un decodificador de audio de conmutación que puede conmutar entre diferentes modos de decodificación. La información de audio decodificada 220, por ejemplo, puede ser una representación en el dominio del tiempo de uno o más canales de audio.
[0117] El decodificador de audio 200 puede comprender habitualmente una decodificación/procesamiento 220, que, por ejemplo, puede proporcionar una información de audio decodificada 232 para tramas de audio que son recibidas apropiadamente. En otras palabras, la decodificación/procesamiento 230 puede realizar una decodificación en el dominio de la frecuencia (por ejemplo, una decodificación de tipo AAC o similar) basándose en una o más tramas de audio codificadas, codificadas en una representación en el dominio de la frecuencia. Alternativamente, o además, la decodificación/procesamiento 230 puede estar configurada para realizar una decodificación en el dominio del tiempo (o la decodificación en el dominio de predicción lineal) basándose en una o más tramas de audio codificadas, codificadas en una representación en el dominio del tiempo (o, en otras palabras, en una representación en el dominio de predicción lineal), por ejemplo, una decodificación de predicción lineal excitada por TCX (TCX = excitación codificada por transformada) o una decodificación de ACELP (decodificación de predicción lineal excitada por libro de códigos algebraico). Opcionalmente, la decodificación/procesamiento 230 puede estar configurada para conmutar entre diferentes modos de decodificación.
[0118] El decodificador de audio 200 comprende además un ocultamiento de error 240, que está configurado para proporcionar una información de audio de ocultamiento de error 242 para una o más tramas de audio perdidas. El ocultamiento de error 240 está configurado para proporcionar la información de audio de ocultamiento de error 242 para el ocultamiento de una pérdida de una trama de audio (o incluso, una pérdida de múltiples tramas de audio). El ocultamiento de error 240 está configurado para modificar una señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, con el fin de obtener la información de audio de ocultamiento de error 242. En otras palabras, el ocultamiento de error 240 puede obtener (o deducir) una señal de excitación en el dominio del tiempo para (o basándose en) una o más tramas de audio codificadas que preceden a una trama de audio perdida, y puede modificar dicha señal de excitación en el dominio del tiempo, que es obtenida para (o basándose en) una o más tramas de audio recibidas apropiadamente que preceden a una trama de audio perdida, de manera que se obtenga (por medio de la modificación) una señal de excitación en el dominio del tiempo que se usa para proporcionar la información de audio de ocultamiento de error 242. En otras palabras, la señal de excitación en el dominio del tiempo modificada puede usarse como una entrada (o como un componente de una entrada) para una síntesis (por ejemplo, la síntesis LPC) de la información de audio de ocultamiento de error asociada con la trama de audio perdida (o incluso, con múltiples tramas de audio perdidas). Al proporcionar la información de audio de ocultamiento de error 242 basándose en la señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio recibidas apropiadamente que preceden a la trama de audio perdida, pueden evitarse discontinuidades audibles. Por otra parte, al modificar la señal de excitación en el dominio del tiempo deducida para (o a partir de) una o más tramas de audio que preceden a la trama de audio perdida, y al proporcionar la información de audio de ocultamiento de error basándose en la señal de excitación en el dominio del tiempo modificada, es posible considerar la variación de las características del contenido de audio (por ejemplo, un cambio de tono), y además es posible evitar una impresión auditiva no natural (por ejemplo, mediante el “desvanecimiento” de un componente de señal determinista (por ejemplo, al menos aproximadamente periódica). Por lo tanto, puede lograrse que la información de audio de ocultamiento de error 242 comprenda cierta similitud con la información de audio decodificada 232 obtenida basándose en tramas de audio decodificadas apropiadamente que preceden a la trama de audio perdida, y puede lograrse incluso que la información de audio de ocultamiento de error 242 comprenda un contenido de audio algo diferente cuando se compara con la información de audio decodificada 232 asociada con la trama de audio que precede a la trama de audio perdida mediante cierta modificación de la señal de excitación en el dominio del tiempo. La modificación de la señal de excitación en el dominio del tiempo usada para el suministro de la información de audio de ocultamiento de error (asociada con la trama de audio perdida), por ejemplo, puede comprender una escala de amplitud o una escala de tiempo. Sin embargo, son posibles otros tipos de modificaciones (o incluso una combinación de una escala de amplitud y una escala de tiempo), en la que, preferentemente, debe permanecer un cierto grado de relación entre la señal de excitación en el dominio del tiempo obtenida (como una información de entrada) por el ocultamiento de error y la señal de excitación en el dominio del tiempo modificada.
[0119] Como conclusión, el decodificador de audio 200 permite el suministro de la información de audio de ocultamiento de error 242, de manera que la información de audio de ocultamiento de error proporciona una buena impresión auditiva, incluso en el caso de que una o más tramas de audio se pierdan. El ocultamiento de error se realiza basándose en una señal de excitación en el dominio del tiempo, en el que se considera una variación de las características de señal del contenido de audio durante la trama de audio perdida mediante la modificación de la señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida.
[0120] Por otra parte, debe observarse que el decodificador de audio 200 puede complementarse con cualquiera de las características y las funcionalidades que se describen en la presente memoria, ya sea individualmente o en combinación.
3. Decodificador de audio según la fig. 3
[0121] La fig. 3 muestra un diagrama de bloques esquemático de un decodificador de audio 300, según otra realización de la presente invención.
[0122] El decodificador de audio 300 está configurado para recibir una información de audio codificada 310 y para proporcionar, con esta base, una información de audio decodificada 312. El decodificador de audio 300 comprende un analizador de tren de bits 320, que puede además ser designado como un “desformateador de tren de bits” o “analizador sintáctico de tren de bits”. El analizador de tren de bits 320 recibe la información de audio codificada 310 y proporciona, con esta base, una representación en el dominio de la frecuencia 322 y posiblemente, información de control adicional 324. La representación en el dominio de la frecuencia 322, por ejemplo, puede comprender valores espectrales codificados 326, factores de escala codificados 328 y, opcionalmente, una información secundaria adicional 330 que, por ejemplo, puede controlar etapas de procesamiento específicas, por ejemplo, un relleno de ruido, un procesamiento intermedio o un posprocesamiento. El decodificador de audio 300 comprende además una decodificación de valor espectral 340 que está configurada para recibir los valores espectrales codificados 326, y para proporcionar, con esta base, un conjunto de valores espectrales decodificados 342. El decodificador de audio 300 además puede comprender una decodificación de factor de escala 350, que puede estar configurada para recibir los factores de escala codificados 328 y para proporcionar, con esta base, un conjunto de factores de escala decodificados 352.
[0123] Alternativamente a la decodificación de factor de escala, puede usarse una conversión LPC a factor de escala 354, por ejemplo, en el caso de que la información de audio codificada comprenda una información LPC codificada, en lugar de una información de factor de escala. Sin embargo, en algunos modos de codificación (por ejemplo, en el modo de codificación TCX del decodificador USAC de audio o en el decodificador de audio EVS), puede usarse un conjunto de coeficientes LPC para deducir un conjunto de factores de escala en el lado del decodificador de audio. Esta funcionalidad puede lograrse por medio de la conversión LPC a factor de escala 354.
[0124] El decodificador de audio 300 puede comprender además un dispositivo de cambio de escala 360, que puede estar configurado para aplicar el conjunto de factores con cambio de escala 352 al conjunto de valores espectrales 342, de manera que se obtenga un conjunto de valores espectrales decodificados con cambio de escala 362. Por ejemplo, una primera banda de frecuencia que comprende múltiples valores espectrales decodificados 342 puede cambiarse de escala usando un primer factor de escala, y una segunda banda de frecuencia que comprende múltiples valores espectrales decodificados 342 pueden cambiarse de escala usando un segundo factor de escala. Por consiguiente, se obtiene el conjunto de valores espectrales decodificados con cambio de escala 362. El decodificador de audio 300 puede comprender adicionalmente un procesamiento opcional 366, que puede aplicar cierto procesamiento a los valores espectrales decodificados con cambio de escala 362. Por ejemplo, el procesamiento opcional 366 puede comprender un relleno de ruido o alguna otra operación.
[0125] El decodificador de audio 300 comprende además una transformada de dominio de la frecuencia a dominio del tiempo 370, que está configurado para recibir los valores espectrales decodificados con cambio de escala 362, o una versión procesada 368 de estos, y para proporcionar una representación en el dominio del tiempo 372 asociada con un conjunto de valores espectrales decodificados con cambio de escala 362. Por ejemplo, la transformada de dominio de la frecuencia a dominio del tiempo 370 puede proporcionar una representación en el dominio del tiempo 372, que está asociada con una trama o subtrama del contenido de audio. Por ejemplo, la transformada de dominio de la frecuencia a dominio del tiempo puede recibir un conjunto de coeficientes MDCT (que pueden considerarse valores espectrales decodificados con cambio de escala) y proporcionar, con esta base, un bloque de muestras en el dominio del tiempo, que pueden formar la representación en el dominio del tiempo 372.
[0126] El decodificador de audio 300 puede comprender opcionalmente un posprocesamiento 376, que puede recibir la representación en el dominio del tiempo 372 y modificar en cierta forma la representación en el dominio del tiempo 372, de manera que se obtenga una versión posprocesada 378 de la representación en el dominio del tiempo 372.
[0127] El decodificador de audio 300 comprende además un ocultamiento de error 380 que, por ejemplo, puede recibir la representación en el dominio del tiempo 372 de la transformada de dominio de la frecuencia a dominio del tiempo 370 y que, por ejemplo, puede proporcionar una información de audio de ocultamiento de error 382 para una o más tramas de audio perdidas. En otras palabras, si una trama de audio se pierde, de manera que, por ejemplo, no hay disponibles valores espectrales codificados 326 para dicha trama de audio (o subtrama de audio), el ocultamiento de error 380 puede proporcionar la información de audio de ocultamiento de error basándose en la representación en el dominio del tiempo 372 asociada con una o más tramas de audio que preceden a la trama de audio perdida. La información de audio de ocultamiento de error puede ser normalmente una representación en el dominio del tiempo de un contenido de audio.
[0128] Debe observarse que el ocultamiento de error 380, por ejemplo, puede realizar la funcionalidad del ocultamiento de error 130 que se describe anteriormente. Además, el ocultamiento de error 380, por ejemplo, puede comprender la funcionalidad del ocultamiento de error 500 descrita con referencia a la fig. 5. Sin embargo, en términos generales, el ocultamiento de error 380 puede comprender cualquiera de las características y las funcionalidades que se describen con respecto al ocultamiento de error en la presente memoria.
[0129] Con respecto al ocultamiento de error, debe observarse que el ocultamiento de error no sucede al mismo tiempo que la decodificación de trama. Por ejemplo, si la trama n es buena, entonces, se realiza una decodificación normal, y al final, se guarda alguna variable que ayudará si se tiene que ocultar la siguiente trama, entonces, si n+1 se pierde, se invoca la función de ocultamiento proporcionando la variable que proviene de la trama buena previa. Además, se actualizarán algunas variables con el fin de ayudar para la siguiente pérdida de trama o con la recuperación para la siguiente trama buena.
[0130] El decodificador de audio 300 comprende además una combinación de señales 390, que está configurada para recibir la representación en el dominio del tiempo 372 (o la representación en el dominio del tiempo posprocesada 378 en el caso de que haya un posprocesamiento 376). Por otra parte, la combinación de señales 390 puede recibir la información de audio de ocultamiento de error 382, que habitualmente es además una representación en el dominio del tiempo de una señal de audio de ocultamiento de error proporcionada para una trama de audio perdida. La combinación de señales 390, por ejemplo, puede combinar representaciones en el dominio del tiempo asociadas con tramas de audio posteriores. En el caso de que haya tramas de audio posteriores decodificadas apropiadamente, la combinación de señales 390 puede combinar (por ejemplo, superposición y suma) representaciones en el dominio del tiempo asociadas con las tramas de audio posteriores decodificadas apropiadamente. Sin embargo, si una trama de audio se pierde, la combinación de señales 390 puede combinar (por ejemplo, superposición y suma) la representación en el dominio del tiempo asociada con la trama de audio decodificada apropiadamente que precede a la trama de audio perdida, y la información de audio de ocultamiento de error asociada con la trama de audio perdida, de manera que se obtenga una transición suave entre la trama de audio recibida apropiadamente y la trama de audio perdida. De manera similar, la combinación de señales 390 puede estar configurada para combinar (por ejemplo, superposición y suma) la información de audio de ocultamiento de error asociada con la trama de audio perdida y la representación en el dominio del tiempo asociada con otra trama de audio decodificada apropiadamente después de la trama de audio perdida (u otra información de audio de ocultamiento de error asociada con otra trama de audio perdida, en el caso de que múltiples tramas de audio consecutivas estén perdidas).
[0131] Por consiguiente, la combinación de señales 390 puede proporcionar una información de audio decodificada 312, de manera que proporcione la representación en el dominio del tiempo 372, o una versión posprocesada 378 de esta, para tramas de audio decodificadas apropiadamente, y de manera que la información de audio de ocultamiento de error 382 sea proporcionada para tramas de audio perdidas, en la que habitualmente se realiza una operación de superposición y suma entre la información de audio (sin consideración de si es proporcionada por una transformada de dominio de la frecuencia a dominio del tiempo 370 o por el ocultamiento de error 380) de tramas de audio posteriores. Debido a que algunos códecs tienen cierto solapamiento sobre la parte de superposición y suma que debe ser cancelado, opcionalmente, se puede crear cierto solapamiento artificial sobre la mitad de la trama que se ha creado para realizar la suma de superposición.
[0132] Debe observarse que la funcionalidad del decodificador de audio 300 es similar a la funcionalidad del decodificador de audio 100 según la fig. 1, en el que los detalles adicionales se muestran en la fig. 3. Por otra parte, debe observarse que el decodificador de audio 300 según la fig. 3 puede complementarse mediante cualquiera de las características y las funcionalidades que se describen en la presente memoria. En particular, el ocultamiento de error 380 puede complementarse mediante cualquiera de las características y las funcionalidades que se describen en la presente memoria con respecto al ocultamiento de error.
4. Decodificador de audio 400 según la fig. 4
[0133] La fig. 4 muestra un decodificador de audio 400 según otra realización de la presente invención. El decodificador de audio 400 está configurado para recibir una información de audio codificada y para proporcionar, con esta base, una información de audio decodificada 412. El decodificador de audio 400, por ejemplo, puede estar configurado para recibir una información de audio codificada 410, en el que diferentes tramas de audio son codificadas usando diferentes modos de codificación. Por ejemplo, el decodificador de audio 400 puede ser considerado un decodificador de audio de múltiples modos o un decodificador de audio “de conmutación”. Por ejemplo, algunas de las tramas de audio pueden ser codificadas usando una representación en el dominio de la frecuencia, en el que la información de audio codificada comprende una representación codificada de valores espectrales (por ejemplo, valores FFT o valores MDCT) y factores de escala que representan una escala de diferentes bandas de frecuencia. Por otra parte, la información de audio codificada 410 puede comprender además una “representación en el dominio del tiempo” de tramas de audio, o una “representación en el dominio de predicción lineal” de múltiples tramas de audio. La “representación en el dominio de codificación de predicción lineal” (también designada brevemente como “representación LPC“), por ejemplo, puede comprender una representación codificada de una señal de excitación, y una representación codificada de parámetros LPC (parámetros de codificación de predicción lineal), en el que los parámetros de codificación de predicción lineal describen, por ejemplo, un filtro de síntesis de codificación de predicción lineal, que se usa para reconstruir una señal de audio basándose en la señal de excitación en el dominio del tiempo.
[0134] A continuación, se describirán algunos detalles del decodificador de audio 400.
[0135] El decodificador de audio 400 comprende un analizador de tren de bits 420 que, por ejemplo, puede analizar la información de audio codificada 410 y extraer, de la información de audio codificada 410, una representación en el dominio de la frecuencia 422, que comprende, por ejemplo, valores espectrales codificados, factores de escala codificados y, opcionalmente, una información secundaria adicional. El analizador de tren de bits 420 además puede estar configurado para extraer una representación en el dominio de codificación de predicción lineal 424, que, por ejemplo, puede comprender una excitación codificada 426 y coeficientes de predicción lineal codificada 428 (que también pueden considerarse parámetros de predicción lineal codificada). Por otra parte, el analizador de tren de bits puede opcionalmente extraer información secundaria, que puede ser usada para el control de etapas de procesamiento adicionales, a partir de la información de audio codificada.
[0136] El decodificador de audio 400 comprende una vía de codificación en el dominio de la frecuencia 430, que, por ejemplo, puede ser sustancialmente idéntica a la vía de codificación del decodificador de audio 300 según la fig. 3. En otras palabras, la vía de codificación en el dominio de la frecuencia 430 puede comprender una decodificación de valor espectral 340, una decodificación de factor de escala 350, un dispositivo de cambio de escala 360, un procesamiento opcional 366, una transformada de dominio de la frecuencia a dominio del tiempo 370, un posprocesamiento opcional 376 y un ocultamiento de error 380, como se describe anteriormente con referencia a la fig. 3.
[0137] El decodificador de audio 400 puede comprender además una vía de decodificación en el dominio de predicción lineal 440 (que puede considerarse además una vía de decodificación en el dominio del tiempo, ya que la síntesis LPC se realiza en el dominio del tiempo). La vía de decodificación en el dominio de predicción lineal comprende una decodificación de excitación 450, que recibe la excitación codificada 426 proporcionada por el analizador de tren de bits 420 y proporciona, con esta base, una excitación decodificada 452 (que puede adoptar la forma de una señal de excitación en el dominio del tiempo decodificada). Por ejemplo, la decodificación de excitación 450 puede recibir una información de excitación codificada transformada codificada, y puede proporcionar, con esta base, una señal de excitación en el dominio del tiempo decodificada. Por lo tanto, la decodificación de excitación 450, por ejemplo, puede realizar una funcionalidad que es efectuada por el decodificador de excitación 730 descrito con referencia a la fig. 7. Sin embargo, en forma alternativa o adicional, la decodificación de excitación 450 puede recibir una excitación ACELP codificada, y puede proporcionar la señal de excitación en el dominio del tiempo 452 decodificada basándose en dicha información de excitación ACELP codificada.
[0138] Debe observarse que hay diferentes opciones para la decodificación de excitación. Se hace referencia, por ejemplo, a las Normas pertinentes y a las publicaciones que definen los conceptos de codificación CELP, los conceptos de codificación ACELP, las modificaciones de los conceptos de codificación CELP y de los conceptos de codificación ACELP y el concepto de codificación TCX.
[0139] La vía de decodificación en el dominio de predicción lineal 440 comprende opcionalmente un procesamiento 454 en el cual una señal de excitación en el dominio del tiempo procesada 456 es deducida de la señal de excitación en el dominio del tiempo 452.
[0140] La vía de decodificación en el dominio de predicción lineal 440 comprende además una decodificación de coeficientes de predicción lineal 460, que está configurada para recibir coeficientes de predicción lineal codificados y para proporcionar, con esta base, coeficientes de predicción lineal decodificados 462. La decodificación de coeficientes de predicción lineal 460 puede usar diferentes representaciones de un coeficiente de predicción lineal como información de entrada 428, y puede proporcionar diferentes representaciones de los coeficientes de predicción lineal decodificados como la información de salida 462. Para consultar los detalles pueden verse diferentes documentos de Normas en los cuales se describe una codificación y/o decodificación de coeficientes de predicción lineal.
[0141] La vía de decodificación en el dominio de predicción lineal 440 comprende opcionalmente un procesamiento 464, que puede procesar los coeficientes de predicción lineal decodificados y proporcionar una versión procesada 466 de los mismos.
[0142] La vía de decodificación en el dominio de predicción lineal 440 comprende además una síntesis LPC 470, que está configurada para recibir la excitación decodificada 452, o su versión procesada 456, y los coeficientes de predicción lineal decodificados 462, o su versión procesada 466, y para proporcionar una señal de audio en el dominio del tiempo decodificada 472. Por ejemplo, la síntesis LPC 470 puede estar configurada para aplicar un filtrado, que se define por los coeficientes de predicción lineal decodificados 462 (o su versión procesada 466), a la señal de excitación en el dominio del tiempo decodificada 452, o su versión procesada, de manera que la señal de audio en el dominio del tiempo decodificada 472 es obtenida por el filtrado (filtrado de síntesis) de la señal de excitación en el dominio del tiempo 452 (o 456). La vía de codificación en el dominio de predicción lineal 440 puede comprender opcionalmente un posprocesamiento 474, que puede ser usado para refinar o ajustar las características de la señal de audio en el dominio del tiempo decodificada 472.
[0143] La vía de decodificación en el dominio de predicción lineal 440 comprende además un ocultamiento de error 480, que está configurado para recibir los coeficientes de predicción lineal decodificados 462 (o su versión procesada 466) y la señal de excitación en el dominio del tiempo decodificada 452 (o su versión procesada 456). El ocultamiento de error 480 puede recibir opcionalmente información adicional, por ejemplo, una información de tono. El ocultamiento de error 480 puede, en consecuencia, proporcionar una información de audio de ocultamiento de error, que puede presentarse en la forma de una señal de audio en el dominio del tiempo, en el caso de que una trama (o subtrama) de la información de audio codificada 410 se pierda. Por lo tanto, el ocultamiento de error 480 puede proporcionar la información de audio de ocultamiento de error 482 de manera que las características de la información de audio de ocultamiento de error 482 se adaptan sustancialmente a las características de una última trama de audio decodificada apropiadamente que precede a la trama de audio perdida. Debe entenderse que el ocultamiento de error 480 puede comprender cualquiera de las características y las funcionalidades que se describen con respecto al ocultamiento de error 240. Asimismo, debe observarse que el ocultamiento de error 480 puede comprender además cualquiera de las características y las funcionalidades que se describen con respecto al ocultamiento en el dominio del tiempo de la fig. 6.
[0144] El decodificador de audio 400 comprende además un combinador de señal (o combinación de señales 490), que está configurado para recibir la señal de audio en el dominio del tiempo decodificada 372 (o su versión posprocesada 378), la información de audio de ocultamiento de error 382 proporcionada por el ocultamiento de error 380, la señal de audio en el dominio del tiempo decodificada 472 (o su versión posprocesada 476) y la información de audio de ocultamiento de error 482 proporcionada por el ocultamiento de error 480. El combinador de señal 490 puede estar configurado para combinar dichas señales 372 (o 378), 382, 472 (o 476) y 482 con el fin de obtener la información de audio decodificada 412. En particular, puede aplicarse una operación de superposición y suma por medio del combinador de señal 490. Por consiguiente, el combinador de señal 490 puede proporcionar transiciones suaves entre tramas de audio posteriores para las cuales se proporciona la señal de audio en el dominio del tiempo por medio de diferentes entidades (por ejemplo, por diferentes vías de codificación 430, 440). Sin embargo, el combinador de señal 490 puede además proporcionar transiciones suaves si la señal de audio en el dominio del tiempo es proporcionada por la misma entidad (por ejemplo, transformada de dominio de la frecuencia a dominio del tiempo 370, o síntesis LPC 470) para tramas subsiguientes. En otras palabras, puede usarse opcionalmente una compensación de solapamiento de domino de tiempo artificial (TDAC).
[0145] Además, el combinador de señal 490 puede proporcionar transiciones suaves hacia y desde tramas para las cuales se proporciona una información de audio de ocultamiento de error (que, habitualmente, además es una señal de audio en el dominio del tiempo).
[0146] En síntesis, el decodificador de audio 400 permite la decodificación de tramas de audio que son codificadas en el dominio de la frecuencia, y tramas de audio que son codificadas en el dominio de predicción lineal. En particular, es posible la conmutación entre el uso de la vía de codificación en el dominio de la frecuencia y el uso de la vía de codificación en el dominio de predicción lineal según las características de la señal (por ejemplo, usando una información de señalización proporcionada por un codificador de audio). Diferentes tipos de ocultamiento de error pueden usarse para el suministro de una información de audio de ocultamiento de error, en el caso de una pérdida de trama, según si una última trama de audio decodificada apropiadamente fue codificada en el dominio de la frecuencia (o, de modo equivalente, en una representación en el dominio de la frecuencia), o en el dominio del tiempo (o de modo equivalente, en una representación en el dominio del tiempo, o, de modo equivalente, en un dominio de predicción lineal, o, de modo equivalente, en una representación en el dominio de predicción lineal).
5. Ocultamiento en el dominio del tiempo según la fig. 5
[0147] La fig. 5 muestra un diagrama de bloques esquemático de un ocultamiento de error según una realización de la presente invención. El ocultamiento de error según la fig. 5 es designado en su totalidad como 500.
[0148] El ocultamiento de error 500 está configurado para recibir una señal de audio en el dominio del tiempo 510 y para proporcionar, con esta base, una información de audio de ocultamiento de error 512, que, por ejemplo, puede adoptar la forma de una señal de audio en el dominio del tiempo.
[0149] Debe observarse que el ocultamiento de error 500 puede, por ejemplo, ocupar el lugar del ocultamiento de error 130, de manera que la información de audio de ocultamiento de error 512 puede corresponder a la información de audio de ocultamiento de error 132. Por otra parte, debe observarse que el ocultamiento de error 500 puede ocupar el lugar del ocultamiento de error 380, de manera que la señal de audio en el dominio del tiempo 510 puede corresponder a la señal de audio en el dominio del tiempo 372 (o a la señal de audio en el dominio del tiempo 378), y de manera que la información de audio de ocultamiento de error 512 puede corresponder a la información de audio de ocultamiento de error 382.
[0150] El ocultamiento de error 500 comprende una preacentuación 520, que puede considerarse opcional. La preacentuación recibe la señal de audio en el dominio del tiempo y proporciona, con esta base, una señal de audio en el dominio del tiempo preacentuada 522.
[0151] El ocultamiento de error 500 comprende además un análisis LPC 530, que está configurado para recibir la señal de audio en el dominio del tiempo 510, o su versión preacentuada 522, y para obtener una información LPC 532, que puede comprender un conjunto de parámetros LPC 532. Por ejemplo, la información LPC puede comprender un conjunto de coeficientes de filtro LPC (o una representación de estos) y una señal de excitación en el dominio del tiempo (que se adapta para una excitación de un filtro de síntesis LPC configurado según los coeficientes de filtro LPC, con el fin de reconstruir, al menos de forma aproximada, la señal de entrada del análisis LPC).
[0152] El ocultamiento de error 500 comprende además una búsqueda de tono 540, que está configurada para obtener una información de tono 542, por ejemplo, basándose en una trama de audio previamente decodificada.
[0153] El ocultamiento de error 500 comprende además una extrapolación 550, que puede estar configurada para obtener una señal de excitación en el dominio del tiempo extrapolada sobre la base del resultado del análisis LPC (por ejemplo, basándose en la señal de excitación en el dominio del tiempo determinada por el análisis LPC), y posiblemente, sobre la base del resultado de la búsqueda de tono.
[0154] El ocultamiento de error 500 comprende además una generación de ruido 560, que proporciona una señal de ruido 562. El ocultamiento de error 500 comprende además un combinador/desvanecedor 570, que está configurado para recibir la señal de excitación en el dominio del tiempo extrapolada 552 y la señal de ruido 562, y para proporcionar, con esta base, una señal de excitación en el dominio del tiempo combinada 572. El combinador/desvanecedor 570 puede estar configurado para combinar la señal de excitación en el dominio del tiempo extrapolada 552 y la señal de ruido 562, en el que puede realizarse un desvanecimiento, de manera que una contribución relativa de la señal de excitación en el dominio del tiempo extrapolada 552 (que determina un componente determinista de la señal de entrada de la síntesis LPC) disminuye con el tiempo, mientras que una contribución relativa de la señal de ruido 562 aumenta con el tiempo. Sin embargo, también es posible una funcionalidad diferente del combinador/desvanecedor. Además, a continuación se hace referencia a la descripción.
[0155] El ocultamiento de error 500 comprende además una síntesis LPC 580, que recibe la señal de excitación en el dominio del tiempo combinada 572 y que proporciona una señal de audio en el dominio del tiempo 582 basándose en la misma. Por ejemplo, la síntesis LPC además puede recibir coeficientes de filtro LPC que describen un filtro de conformación LPC, que se aplica a la señal de excitación en el dominio del tiempo combinada 572, con el fin de deducir la señal de audio en el dominio del tiempo 582. La síntesis LPC 580 puede, por ejemplo, usar coeficientes LPC obtenidos basándose en una o más tramas de audio previamente decodificadas (por ejemplo, proporcionadas por el análisis LPC 530).
[0156] El ocultamiento de error 500 comprende además una desacentuación 584, que puede considerarse opcional. La desacentuación 584 puede proporcionar una señal de audio en el dominio del tiempo de ocultamiento de error desacentuada 586.
[0157] El ocultamiento de error 500 además comprende, opcionalmente, una superposición y suma 590, que realiza una operación de superposición y suma de las señales de audio en el dominio del tiempo asociadas con subsiguientes tramas (o subtramas). Sin embargo, debe observarse que la superposición y suma 590 debe considerarse opcional, ya que el ocultamiento de error puede usar además una combinación de señales que ya es proporcionada en el entorno del decodificador de audio. Por ejemplo, la superposición y suma 590 puede ser reemplazada por la combinación de señales 390 en el decodificador de audio 300 en algunas realizaciones.
[0158] A continuación, se describirán algunos detalles adicionales con respecto al ocultamiento de error 500.
[0159] El ocultamiento de error 500 según la fig. 5 cubre el contexto de un códec en el dominio de la transformada como AAC_LC o AAC_ELD. En otras palabras, el ocultamiento de error 500 se adapta bien para el uso en dicho códec en el dominio de la transformada (y, en particular, en dicho decodificador de audio en el dominio de la transformada). En el caso de un códec de transformada solamente (por ejemplo, en ausencia de una vía de decodificación en el dominio de predicción lineal), se usa una señal de salida de una última trama, como un punto de inicio. Por ejemplo, una señal de audio en el dominio del tiempo 372 puede usarse como un punto de inicio para el ocultamiento de error. Preferentemente, no hay disponible ninguna señal de excitación, solo una señal en el dominio del tiempo de salida de (una o más) tramas previas (por ejemplo, la señal de audio en el dominio del tiempo 372).
[0160] A continuación, se describirán más en detalle las subunidades y funcionalidades del ocultamiento de error 500.
5.1. Análisis LPC
[0161] En la realización según la fig. 5, todo el ocultamiento se realiza en el dominio de excitación de manera que se obtenga una transición más suave entre tramas consecutivas. Por lo tanto, es necesario primero hallar (o, más generalmente, obtener) un conjunto apropiado de parámetros LPC. En la realización según la fig. 5, se realiza un análisis LPC 530 sobre la anterior señal en el dominio del tiempo preacentuada 522. Los parámetros LPC (o coeficientes de filtro LPC) son usados para realizar el análisis LPC de la señal de síntesis anterior (por ejemplo, basándose en la señal de audio en el dominio del tiempo 510, o basándose en la señal de audio en el dominio del tiempo preacentuada 522) con el fin de obtener una señal de excitación (por ejemplo, una señal de excitación en el dominio del tiempo).
5.2. Búsqueda de tono
[0162] Existen diferentes enfoques para obtener el tono, que se usarán con el fin de lograr la construcción de la nueva señal (por ejemplo, la información de audio de ocultamiento de error).
[0163] En el contexto del códec usando un filtro de LTP (filtro de predicción de largo plazo), como AAC-LTP, si la última trama fue AAC con LTP, se usa este último retardo de tono LTP recibido y la correspondiente ganancia para la generación de la parte de armónicos. En este caso, la ganancia se usa para decidir si construir la parte de armónicos en la señal o no. Por ejemplo, si la ganancia de predicción de largo plazo (LTP) es mayor que 0,6 (o cualquier otro valor predeterminado), entonces, la información de predicción de largo plazo (LTP) es usada para construir la parte de armónicos.
[0164] Si no hay ninguna información de tono disponible de la trama previa, entonces, hay, por ejemplo, dos soluciones, que se describirán a continuación.
[0165] Por ejemplo, es posible realizar una búsqueda de tono en el codificador y transmitir en el tren de bits el retardo de tono y la ganancia. Esto es similar a la LTP, si bien no hay ninguna aplicación de filtrado (además, ningún filtrado de LTP en el canal limpio).
[0166] Alternativamente, es posible realizar una búsqueda de tono en el decodificador. La búsqueda de tono de AMR-WB en el caso de TCX se realiza en el dominio FFT. En ELD, por ejemplo, si se usó el dominio MDCT, entonces se perderán las fases. Por lo tanto, la búsqueda de tono se realiza preferentemente directamente en el dominio de excitación. Esto proporciona mejores resultados que la realización de la búsqueda de tono en el dominio de síntesis. La búsqueda de tono en el dominio de excitación se realiza primero con un circuito abierto por medio de una correlación cruzada normalizada. A continuación, opcionalmente, se refiere la búsqueda de tono realizando una búsqueda de circuito cerrado alrededor del tono de circuito abierto, con una cierta delta. Debido a las limitaciones de la gestión de ventanas ELD, podría encontrarse un tono erróneo, y en consecuencia, además, se verifica que el tono encontrado sea correcto, o de lo contrario, se descarta.
[0167] Como conclusión, el tono de la última trama de audio decodificada apropiadamente que precede a la trama de audio perdida puede considerarse cuando se proporciona la información de audio de ocultamiento de error. En algunos casos, hay una información de tono disponible de la decodificación de la trama previa (es decir, la última trama que precede a la trama de audio perdida). En este caso, este tono puede ser reutilizado (posiblemente, con cierta extrapolación y una consideración de un cambio de tono con el tiempo). Además, se puede reutilizar opcionalmente el tono de más de una trama del pasado para intentar extrapolar el tono que se necesita al final de la trama ocultada.
[0168] Además, si hay una información (por ejemplo, designada como ganancia de predicción de largo plazo) disponible, que describe una intensidad (o intensidad relativa) de un componente de señal determinista (por ejemplo, al menos aproximadamente periódico), este valor puede usarse para decidir si un componente determinista (o armónico) debe ser incluido en la información de audio de ocultamiento de error. En otras palabras, al comparar dicho valor (por ejemplo, ganancia de LTP) con un valor de umbral predeterminado, puede decidirse si una señal de excitación en el dominio del tiempo deducida de una trama de audio previamente decodificada debe considerarse para el suministro de la información de audio de ocultamiento de error o no.
[0169] Si no hay información de tono disponible de la trama previa (o, más precisamente, de la decodificación de la trama previa), hay diferentes opciones. La información de tono podría transmitirse desde un codificador de audio hacia un decodificador de audio, lo que simplificaría el decodificador de audio si bien crearía una sobrecarga de velocidad binaria. Alternativamente, la información de tono puede ser determinada en el decodificador de audio, por ejemplo, en el dominio de excitación, es decir, basándose en una señal de excitación en el dominio del tiempo. Por ejemplo, la señal de excitación en el dominio del tiempo deducida de una trama de audio previa decodificada apropiadamente puede evaluarse con el fin de identificar la información de tono que se usará para el suministro de la información de audio de ocultamiento de error.
5.3. Extrapolación de la excitación o creación de la parte de armónicos
[0170] La excitación (por ejemplo, la señal de excitación en el dominio del tiempo) obtenida de la trama previa (o bien solo calculada para la trama perdida o ya guardada en la trama perdida previa para pérdida de múltiples tramas) es usada para la construcción de la parte de armónicos (además designada como componente determinista o componente aproximadamente periódico) en la excitación (por ejemplo, en la señal de entrada de la síntesis LPC) mediante el copiado del último ciclo de tono tantas veces como sean necesarias para obtener una trama y media trama. Para ahorrar complejidad, se puede además crear una trama y media solo para la primera trama de pérdida y luego, cambiar el procesamiento para una pérdida de trama posterior a la mitad de la trama, y crear solo una trama para cada una. A continuación, se tiene siempre acceso a la mitad de una trama de superposición.
[0171] En el caso de la primera trama perdida después de una trama buena (es decir, una trama decodificada apropiadamente), el primer ciclo de tono (por ejemplo, de la señal de excitación en el dominio del tiempo obtenida basándose en la última trama de audio decodificada apropiadamente que precede a la trama de audio perdida) se filtra mediante filtro de paso bajo con un filtro dependiente de la velocidad de muestreo (ya que el retardo extra bajo (ELD) cubre una combinación de velocidad de muestreo realmente amplia, que va de núcleo AAC-ELD a AAC-ELD con SBR o AAC-ELD tasa dual SBR).
[0172] El tono en una señal de voz es casi siempre cambiante. Por lo tanto, el ocultamiento presentado anteriormente suele crear algunos problemas (o al menos distorsiones) en la recuperación, ya que el tono al final de la señal ocultada (es decir, al final de la información de audio de ocultamiento de error) con frecuencia no coincide con el tono de la primera trama buena. Por lo tanto, opcionalmente, en algunas realizaciones, se intenta predecir el tono al final de la trama ocultada con el fin de hacerlo coincidir con el tono al comienzo de la trama de recuperación. Por ejemplo, se predice el tono al final de una trama perdida (que se considera una trama ocultada), en el que el objetivo de la predicción es establecer el tono al final de la trama perdida (trama ocultada) con el fin de aproximarse al tono al comienzo de la primera trama decodificada apropiadamente después de una o más tramas perdidas (cuya primera trama decodificada apropiadamente se denomina también “trama de recuperación”). Esto podría realizarse durante la pérdida de trama o durante la primera trama buena (es decir, durante la primera trama recibida apropiadamente). Para obtener incluso mejores resultados, es posible reutilizar opcionalmente algunas herramientas convencionales y adaptarlas, como la resincronización de pulsos y predicción de tono. Para mayor detalle se hace referencia, por ejemplo, a las referencias [6] y [7].
[0173] Si se usa una predicción de largo plazo (LTP) en un códec en el dominio de la frecuencia, es posible usar el retardo como la información de inicio sobre el tono. Sin embargo, en algunas realizaciones, se desea además contar con una mejor granularidad con el fin de poder rastrear mejor el contorno de tono. Por lo tanto, se prefiere realizar una búsqueda de tono al comienzo y al final de la última trama buena (decodificada apropiadamente). Para adaptar la señal al tono en movimiento, es deseable el uso de una resincronización de pulsos, que se presenta en el estado de la técnica.
5.4. Ganancia de tono
[0174] En algunas realizaciones, se prefiere la aplicación de una ganancia sobre la excitación previamente obtenida con el fin de lograr el nivel deseado. La “ganancia del tono” (por ejemplo, la ganancia del componente determinista de la señal de excitación en el dominio del tiempo, es decir, la ganancia aplicada a una señal de excitación en el dominio del tiempo deducida de una trama de audio previamente decodificada, con el fin de obtener la señal de entrada de la síntesis LPC), puede, por ejemplo, ser obtenida mediante la realización de una correlación normalizada en el dominio del tiempo al final de la última trama buena (por ejemplo, decodificada apropiadamente). La longitud de la correlación puede ser equivalente a la longitud de dos subtramas, o puede ser cambiada adaptativamente. El retardo es equivalente al retardo de tono que se usa para la creación de la parte de armónicos. Además opcionalmente se puede realizar el cálculo de ganancia solo sobre la primera trama perdida y luego solo aplicar un desvanecimiento (reducida ganancia) para la siguiente pérdida de trama consecutiva.
[0175] La “ganancia de tono” determinará la cantidad de tonalidad (o la cantidad de componentes de señal deterministas, al menos aproximadamente periódicos) que se crearán. Sin embargo, es deseable añadir cierto ruido conformado para no tener solo un tono artificial. Si se obtiene muy baja ganancia del tono, entonces se construye una señal que consiste solo en un ruido conformado.
[0176] Como conclusión, en algunos casos, la señal de excitación en el dominio del tiempo obtenida, por ejemplo, basándose en una trama de audio previamente decodificada, se cambia de escala según la ganancia (por ejemplo, con el fin de obtener la señal de entrada para el análisis LPC). Por consiguiente, debido a que la señal de excitación en el dominio del tiempo determina un componente de señal determinista (al menos aproximadamente periódico), la ganancia puede determinar una intensidad relativa de dichos componentes de señal deterministas (al menos aproximadamente periódicos) en la información de audio de ocultamiento de error. Además, la información de audio de ocultamiento de error puede basarse en un ruido, que es además formado por la síntesis LPC, de manera que una energía total de la información de audio de ocultamiento de error es adaptada, al menos hasta cierto grado, a una trama de audio decodificada apropiadamente que precede a la trama de audio perdida e, idealmente, además a una trama de audio decodificada apropiadamente después de la una o más tramas de audio perdidas.
5.5. Creación de la parte de ruido
[0177] Una “innovación” es creada por un generador de ruido aleatorio. De forma opcional, adicionalmente este ruido es filtrado en paso alto y opcionalmente es preacentuado para tramas de voz y de inicio. Como para el paso bajo de la parte de armónicos, este filtro (por ejemplo, el filtro de paso alto) es dependiente de la velocidad de muestreo. Este ruido (que es proporcionado, por ejemplo, por una generación de ruido 560) será formado por la LPC (por ejemplo, por la síntesis LPC 580) para llegar lo más cerca posible del ruido de fondo. La característica de paso alto es además opcionalmente cambiada sobre pérdida de trama consecutiva, de manera que sobre una cierta cantidad de una pérdida de trama, ya no hay filtrado, para solo obtener el ruido conformado de banda completa con el fin de lograr un ruido de confort cercano al ruido de fondo.
[0178] Una ganancia de innovación (que, por ejemplo, puede determinar una ganancia del ruido 562 en la combinación/desvanecimiento 570, es decir, una ganancia usando la señal de ruido 562 que se incluye en la señal de entrada 572 de la síntesis LPC) es, por ejemplo, calculada mediante la eliminación de la contribución calculada previamente del tono (si existe) (por ejemplo, una versión con cambio de escala, usando la “ganancia de tono”, de la señal de excitación en el dominio del tiempo obtenida basándose en la última trama de audio decodificada apropiadamente que precede a la trama de audio perdida) y la realización de una correlación al final de la última trama buena. En cuanto a la ganancia de tono, esta podría realizarse opcionalmente solo sobre la primera trama perdida, y luego, el desvanecimiento, si bien, en este caso, el desvanecimiento podría ir o bien a 0, que resulta en un silenciamiento completo, o a un nivel de ruido estimado presente en el fondo. La longitud de la correlación es, por ejemplo, equivalente a la longitud de dos subtramas, y el retardo es equivalente al retardo de tono usado para la creación de la parte de armónicos.
[0179] Opcionalmente, esta ganancia además se multiplica por (1 - “ganancia de tono”) con el fin de aplicar la ganancia necesaria en el ruido para alcanzar la pérdida de ganancia si la ganancia de tono no es uno. Opcionalmente, esta ganancia además se multiplica por un factor de ruido. Este factor de ruido proviene, por ejemplo, de la trama válida previa (por ejemplo, de la última trama de audio decodificada apropiadamente que precede a la trama de audio perdida).
5.6. Desvanecimiento
[0180] El desvanecimiento se usa en su mayoría para pérdida de múltiples tramas. Sin embargo, el desvanecimiento puede además ser usado en el caso de que solo se pierda una sola trama de audio.
[0181] En el caso de una pérdida de tramas múltiples, los parámetros LPC no se recalculan. O se mantiene el último calculado o se realiza el ocultamiento LPC mediante la convergencia a una forma de fondo. En este caso, la periodicidad de la señal se hace converger a cero. Por ejemplo, la señal de excitación en el dominio del tiempo 502 obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida aún usa una ganancia que se reduce gradualmente con el tiempo, mientras que la señal de ruido 562 se mantiene constante o con cambio de escala con una ganancia que es gradualmente creciente con el tiempo, de manera que el peso relativo de la señal de excitación en el dominio del tiempo 552 se reduce con el tiempo en comparación con el peso relativo de la señal de ruido 562. En consecuencia, la señal de entrada 572 de la síntesis LPC 580 se torna cada vez más “de tipo ruido”. Por lo tanto, la “periodicidad” (o, más exactamente, el componente determinista, o componente al menos aproximadamente periódico de la señal de salida 582 de la síntesis LPC 580) se reduce con el tiempo.
[0182] La velocidad de la convergencia según la cual la periodicidad de la señal 572, y/o la periodicidad de la señal 582, converge a 0 depende de los parámetros de la última trama correctamente recibida (o decodificada apropiadamente) y/o de la cantidad de tramas borradas consecutivas, y es controlada por un factor de atenuación, a. El factor, a, además depende de la estabilidad del filtro de predicción lineal (LP). Opcionalmente, es posible alterar el factor a en relación con la longitud de tono. Si el tono (por ejemplo, una longitud periódica asociada con el tono) es realmente largo, entonces se mantiene a “normal”, pero si el tono es realmente corto, habitualmente es necesario copiar una cantidad de veces la misma parte de la excitación anterior. Esto rápidamente sonará demasiado artificial, y por lo tanto, se prefiere un desvanecimiento más veloz de esta señal.
[0183] Además, opcionalmente, si está disponible, se puede considerar la salida de la predicción de tono. Si se predice un tono, esto significa que el tono ya estaba cambiando en la trama previa, y entonces, cuantas más tramas se pierden, más lejos se está de la verdad. Por lo tanto, se prefiere acelerar ligeramente el desvanecimiento de la parte tonal, en este caso.
[0184] Si la predicción de tono fallara debido a que el tono cambia demasiado, esto significa que los valores de tono no son realmente fiables o la señal es realmente impredecible. Por lo tanto, nuevamente, se prefiere realizar el desvanecimiento más rápidamente (por ejemplo, el desvanecimiento de la señal de excitación en el dominio del tiempo 552 obtenida basándose en una o más tramas de audio decodificadas apropiadamente que preceden a una o más tramas de audio perdidas).
5.7. Síntesis LPC
[0185] Para regresar al dominio del tiempo, se prefiere realizar una síntesis LPC 580 sobre la suma de las dos excitaciones (parte tonal y parte de ruido), seguida de una desacentuación. En otras palabras, se prefiere realizar la síntesis LPC 580 basándose en una combinación ponderada de una señal de excitación en el dominio del tiempo 552 obtenida basándose en una o más tramas de audio decodificadas apropiadamente que preceden a la trama de audio perdida (parte tonal) y la señal de ruido 562 (parte de ruido). Como se menciona anteriormente, la señal de excitación en el dominio del tiempo 552 puede ser modificada en comparación con la señal de excitación en el dominio del tiempo 532 obtenida por el análisis LPC 530 (además de los coeficientes LPC que describen una característica del filtro de la síntesis LPC usado para la síntesis LPC 580). Por ejemplo, la señal de excitación en el dominio del tiempo 552 puede ser una copia con cambio de escala en el tiempo de la señal de excitación en el dominio del tiempo 532 obtenida por el análisis LPC 530, en el que la escala en el tiempo puede ser usada para adaptar el tono de la señal de excitación en el dominio del tiempo 552 a un tono deseado.
5.8. Superposición y suma
[0186] En el caso de un códec de transformada solamente, para obtener la mejor superposición y suma, se crea una señal artificial para media trama más que la trama ocultada, y se crea solapamiento artificial sobre esta. Sin embargo, pueden aplicarse diferentes conceptos de superposición y suma.
[0187] En el contexto de AAC o TCX regular, se aplica una superposición y suma entre la media trama extra que proviene del ocultamiento y la primera parte de la primera trama buena (podría ser la mitad o menos, para ventanas de retardo menores como AAC-LD).
[0188] En el caso especial del retardo extra bajo (ELD) para la primera trama perdida, se prefiere ejecutar el análisis tres veces con el fin de obtener la contribución apropiada de las tres ventanas, y luego, para la primera trama de ocultamiento, y todas las siguientes, el análisis se ejecuta una vez más. A continuación, se realiza una síntesis ELD, para volver al dominio del tiempo con toda la memoria apropiada para la siguiente trama en el dominio de MDCT.
[0189] Como conclusión, la señal de entrada 572 de la síntesis LPC 580 (y/o la señal de excitación en el dominio del tiempo 552) puede proporcionarse para una duración temporal que es mayor que una duración de una trama de audio perdida. Por consiguiente, la señal de salida 582 de la síntesis LPC 580 puede proporcionarse además para un período de tiempo que es mayor que una trama de audio perdida. Por consiguiente, puede realizarse una superposición y suma entre la información de audio de ocultamiento de error (que es consecuentemente obtenida para un período de tiempo más largo que una extensión temporal de la trama de audio perdida) y una información de audio decodificada proporcionada para una trama de audio decodificada apropiadamente después de una o más tramas de audio perdidas.
[0190] En síntesis, el ocultamiento de error 500 se adapta bien al caso en el cual las tramas de audio son codificadas en el dominio de la frecuencia. Aun cuando las tramas de audio son codificadas en el dominio de la frecuencia, el suministro de la información de audio de ocultamiento de error se realiza basándose en una señal de excitación en el dominio del tiempo. Se aplican diferentes modificaciones a la señal de excitación en el dominio del tiempo obtenida basándose en una o más tramas de audio decodificadas apropiadamente que preceden a una trama de audio perdida. Por ejemplo, la señal de excitación en el dominio del tiempo proporcionada por el análisis LPC 530 se adapta a cambios de tono, por ejemplo, usando una escala de tiempo. Por otra parte, la señal de excitación en el dominio del tiempo proporcionada por el análisis LPC 530 es además modificada por una escala (aplicación de una ganancia), en el que un desvanecimiento del componente determinista (o tonal, o al menos aproximadamente periódico) puede ser realizado por el dispositivo de cambio de escala/desvanecedor 570, de manera que la señal de entrada 572 de la síntesis LPC 580 comprende tanto un componente que procede de la señal de excitación en el dominio del tiempo obtenida por el análisis LPC como un componente de ruido que se basa en la señal de ruido 562. El componente determinista de la señal de entrada 572 de la síntesis LPC 580 sin embargo, es habitualmente modificado (por ejemplo, a continuación y/o escala de amplitud) con respecto a la señal de excitación en el dominio del tiempo proporcionada por el análisis LPC 530.
[0191] En consecuencia, la señal de excitación en el dominio del tiempo puede adaptarse a las necesidades, y se evita una impresión auditiva no natural.
6. Ocultamiento en el dominio del tiempo según la fig. 6
[0192] La fig. 6 muestra un diagrama de bloques esquemático de un ocultamiento en el dominio del tiempo que puede usarse para un códec de conmutación. Por ejemplo, el ocultamiento en el dominio del tiempo 600 según la fig.
6 puede, por ejemplo, tomar el lugar del ocultamiento de error 240 o el lugar del ocultamiento de error 480.
[0193] Por otra parte, debe observarse que la realización según la fig. 6 cubre el contexto (que puede usarse dentro del contexto) de un códec de conmutación usando dominios de tiempo y frecuencia combinados, tales como USAC (MPEG-D/MPEG-H) o EVS (3GPP). En otras palabras, el ocultamiento en el dominio del tiempo 600 puede usarse en decodificadores de audio en los cuales hay una conmutación entre una decodificación en el dominio de la frecuencia y una decodificación de tiempo (o, de modo equivalente, una decodificación basándose en coeficientes de predicción lineal).
[0194] Sin embargo, debe observarse que el ocultamiento de error 600 según la fig. 6 además puede usarse en decodificadores de audio que simplemente realizan una decodificación en el dominio del tiempo (o de modo equivalente, en el dominio de coeficientes de predicción lineal).
[0195] En el caso de un códec conmutado (e incluso, en el caso de un códec que simplemente realiza la decodificación en el dominio de coeficientes de predicción lineal), habitualmente ya se tiene la señal de excitación (por ejemplo, la señal de excitación en el dominio del tiempo) que proviene de una trama previa (por ejemplo, una trama de audio decodificada apropiadamente que precede a una trama de audio perdida). De lo contrario (por ejemplo, si la señal de excitación en el dominio del tiempo no está disponible), es posible actuar según lo explicado en la realización según la fig. 5, es decir, realizar un análisis LPC.
[0196] Si la trama previa era de tipo ACEL, además ya se tiene la información de tono de las subtramas en la última trama. Si la última trama fue TCX (excitación codificada transformada) con LTP (predicción de largo plazo), además se tiene la información de retardo que proviene de la predicción de largo plazo. Y si la última trama estuvo en el dominio de la frecuencia sin predicción de largo plazo (LTP), entonces la búsqueda de tono se realiza preferentemente en forma directa en el dominio de excitación (por ejemplo, basándose en una señal de excitación en el dominio del tiempo proporcionada por un análisis LPC).
[0197] Si el decodificador ya usa algunos parámetros LPC en el dominio del tiempo, se reutilizan y se extrapola un nuevo conjunto de parámetros LPC. La extrapolación de los parámetros LPC se basa en la anterior LPC, por ejemplo, la media de las últimas tres tramas y (opcionalmente), la forma de la LPC deducida durante la estimación de ruido DTX si en el códec existe DTX (transmisión discontinua).
[0198] Todo el ocultamiento se realiza en el dominio de excitación con el fin de obtener una transición más suave entre tramas consecutivas.
[0199] A continuación, se describirá en más detalle el ocultamiento de error 600 según la fig. 6.
[0200] El ocultamiento de error 600 recibe una excitación anterior 610 y una información de tono anterior 640. Por otra parte, el ocultamiento de error 600 proporciona una información de audio de ocultamiento de error 612.
[0201] Debe observarse que la excitación anterior 610 recibida por el ocultamiento de error 600 puede, por ejemplo, corresponder a la salida 532 del análisis LPC 530. Por otra parte, la anterior información de tono 640 puede, por ejemplo, corresponder a la información de salida 542 de la búsqueda de tono 540.
[0202] El ocultamiento de error 600 comprende además una extrapolación 650, que puede corresponder a la extrapolación 550, de manera que se hace referencia a la descripción anterior.
[0203] Además, el ocultamiento de error comprende un generador de ruido 660, que puede corresponder al generador de ruido 560, de manera que se hace referencia a la descripción anterior.
[0204] La extrapolación 650 proporciona una señal de excitación en el dominio del tiempo extrapolada 652, que puede corresponder a la señal de excitación en el dominio del tiempo extrapolada 552. El generador de ruido 660 proporciona una señal de ruido 662, que corresponde a la señal de ruido 562.
[0205] El ocultamiento de error 600 comprende además un combinador/desvanecedor 670, que recibe la señal de excitación en el dominio del tiempo extrapolada 652 y la señal de ruido 662 y proporciona, con esta base, una señal de entrada 672 para una síntesis LPC 680, en el que la síntesis LPC 680 puede corresponder a la síntesis LPC 580, de manera que se aplican asimismo las explicaciones anteriores. La síntesis LPC 680 proporciona una señal de audio en el dominio del tiempo 682, que puede corresponder a la señal de audio en el dominio del tiempo 582. El ocultamiento de error comprende además (opcionalmente) una desacentuación 684, que puede corresponder a la desacentuación 584 y que proporciona una señal de audio en el dominio del tiempo de ocultamiento de error desacentuada 686. El ocultamiento de error 600 comprende opcionalmente una superposición y suma 690, que puede corresponder a la superposición y suma 590. Sin embargo, a la superposición y suma 690 se le aplican asimismo las explicaciones con respecto a la superposición y suma 590. En otras palabras, la superposición y suma 690 puede además ser reemplazada por la superposición y suma general del decodificador de audio, de manera que la señal de salida 682 de la síntesis LPC o la señal de salida 686 de la desacentuación pueden considerarse la información de audio de ocultamiento de error.
[0206] Como conclusión, el ocultamiento de error 600 difiere sustancialmente del ocultamiento de error 500, en términos de que el ocultamiento de error 600 obtiene directamente la información de excitación anterior 610 y la información de tono anterior 640, de una o más tramas de audio previamente decodificadas, sin la necesidad de realizar un análisis LPC y/o un análisis de tono. Sin embargo, debe observarse que el ocultamiento de error 600, opcionalmente, puede comprender un análisis LPC y/o un análisis de tono (búsqueda de tono).
[0207] A continuación, se describirán algunos detalles del ocultamiento de error 600 con mayor detenimiento. Sin embargo, debe observarse que los detalles específicos deben considerarse ilustrativos, y no características esenciales.
6.1. Tono anterior de búsqueda de tono
[0208] Hay diferentes enfoques para obtener el tono que se usará en la construcción de la nueva señal.
[0209] En el contexto del códec que usa el filtro LTPE, como un AAC-LTP, si la última trama (que precede a la trama perdida) fue AAC con LTP, se tiene la información de tono que proviene del último retardo de tono de LTP y la ganancia correspondiente. En este caso, se usa la ganancia con el fin de decidir si se quiere construir la parte de armónicos en la señal o no. Por ejemplo, si la ganancia de LTP es superior a 0,6, entonces, se usa la información de LTP para construir la parte de armónicos.
[0210] Si no se tiene ninguna información de tono disponible de la trama previa, entonces hay, por ejemplo, dos soluciones adicionales.
[0211] Una solución es realizar una búsqueda de tono en el codificador y transmitir en el tren de bits el retardo de tono y la ganancia. Esto es similar a la predicción de largo plazo (LTP), si bien no se aplica ningún filtrado (tampoco, ningún filtrado de LPC en el canal limpio).
[0212] Otra solución es realizar una búsqueda de tono en el decodificador. La búsqueda de tono de AMR-WB en el caso de TCX se realiza en el dominio de FFT. En TCX, por ejemplo, se usa el dominio MDCT, en cuyo caso se pierden las fases. Por lo tanto, la búsqueda de tono se realiza directamente en el dominio de excitación (por ejemplo, basándose en la señal de excitación en el dominio del tiempo usada como la entrada de la síntesis LPC, o usada para deducir la entrada para la síntesis LPC), en una realización preferida. Esto habitualmente proporciona mejores resultados que la realización de la búsqueda de tono en el dominio de síntesis (por ejemplo, basándose en una señal de audio en el dominio del tiempo completamente decodificada).
[0213] La búsqueda de tono en el dominio de excitación (por ejemplo, basándose en la señal de excitación en el dominio del tiempo) se realiza primero con un circuito abierto por medio de una correlación cruzada normalizada. A continuación, opcionalmente, la búsqueda de tono puede ser refinada realizando una búsqueda de circuito cerrado alrededor del tono de circuito abierto con una cierta delta.
[0214] En implementaciones preferidas, simplemente no se considera un valor máximo de la correlación. Si se tiene una información de tono de una trama previa no propensa al error, entonces se selecciona el tono que corresponde a uno de los cinco valores más altos en el dominio de correlación cruzada normalizada, aunque el más cercano al tono de la trama previa. Entonces, se verifica además que el máximo encontrado no sea un máximo erróneo debido a la limitación de ventana.
[0215] Como conclusión, hay diferentes conceptos para determinar el tono, en el que es eficiente en términos de cálculo considerar un tono anterior (es decir, tono asociado con una trama de audio previamente decodificada). Alternativamente, la información de tono puede ser transmitida desde un codificador de audio hacia un decodificador de audio. Como otra alternativa, una búsqueda de tono puede realizarse en el lado del decodificador de audio, en el que la determinación de tono se realiza, preferentemente, basándose en la señal de excitación en el dominio del tiempo (es decir, en el dominio de excitación).
[0216] Puede realizarse una búsqueda de tono de dos etapas que comprende una búsqueda de circuito abierto y una búsqueda de circuito cerrado para obtener una información de tono especialmente fiable y precisa. Alternativamente, o además, puede usarse una información de tono de una trama de audio previamente decodificada con el fin de garantizar que la búsqueda de tono proporcione un resultado fiable.
6.2. Extrapolación de la excitación o creación de la parte de armónicos
[0217] La excitación (por ejemplo, en la forma de una señal de excitación en el dominio del tiempo) obtenida de la trama previa (o bien solo calculada para la trama perdida o ya guardada en la trama perdida previa para pérdida de múltiples tramas) es usada para construir la parte de armónicos en la excitación (por ejemplo, la señal de excitación en el dominio del tiempo extrapolada 662) mediante el copiado del último ciclo de tono (por ejemplo, una porción de la señal de excitación en el dominio del tiempo 610, cuya duración temporal es igual a una duración de período del tono) tantas veces como sean necesarias para obtener, por ejemplo, una y media de la trama (perdida).
[0218] Para obtener aún mejores resultados, opcionalmente es posible reutilizar algunas herramientas conocidas del estado de la técnica y adaptarlas. Para mayor detalle, se hace referencia, por ejemplo, a las referencias [6] y [7].
[0219] Se ha encontrado que el tono en una señal de voz es casi siempre cambiante. Se ha encontrado que, por lo tanto, el ocultamiento presentado anteriormente suele crear algunos problemas en la recuperación, ya que el tono al final de la señal ocultada a menudo no coincide con el tono de la primera trama buena. Por lo tanto, opcionalmente, se intenta predecir el tono al final de la trama ocultada, con el fin de que se corresponda con el tono al comienzo de la trama de recuperación. Esta funcionalidad será realizada, por ejemplo, por la extrapolación 650.
[0220] Si se usa la LTP en la TCX, puede usarse el retardo como la información inicial sobre el tono. Sin embargo, es deseable contar con una mejor granularidad para poder rastrear mejor el contorno de tono. Por lo tanto, se realiza una búsqueda de tono opcionalmente al comienzo y al final de la última trama buena. Para adaptar la señal al tono en movimiento, puede usarse una resincronización de pulsos, que se presenta en el estado de la técnica.
[0221] Como conclusión, la extrapolación (por ejemplo, de la señal de excitación en el dominio del tiempo asociada con, u obtenida basándose en, una última trama de audio decodificada apropiadamente que precede a la trama perdida) puede comprender un copiado de una porción de tiempo de dicha señal de excitación en el dominio del tiempo asociada con una trama de audio previa, en el que la porción de tiempo copiada puede ser modificada según un cálculo, o una estimación, de un cambio de tono (esperado) durante la trama de audio perdida. Pueden obtenerse diferentes conceptos para la determinación del cambio de tono.
6.3. Ganancia de tono
[0222] En la realización según la fig. 6, se aplica una ganancia sobre la excitación obtenida previamente con el fin de alcanzar un nivel deseado. La ganancia del tono es obtenida, por ejemplo, realizando una correlación normalizada en el dominio del tiempo al final de la última trama buena. Por ejemplo, la longitud de la correlación puede ser equivalente a la longitud de dos subtramas, y el retardo puede ser equivalente al retardo de tono usado para la creación de la parte de armónicos (por ejemplo, para el copiado de la señal de excitación en el dominio del tiempo). Se ha encontrado que al hacer el cálculo de ganancia en el dominio del tiempo, se proporciona una ganancia mucho más fiable que realizándolo en el dominio de excitación. La LPC cambia en cada trama, y entonces, la aplicación de una ganancia, calculada sobre la trama previa, sobre una señal de excitación que será procesada por otro conjunto LPC, no proporcionará la energía esperada en el dominio del tiempo.
[0223] La ganancia del tono determina la cantidad de tonalidad que se creará, si bien además se añadirá cierto ruido conformado para no tener solo un tono artificial. Si se obtiene una muy baja ganancia de tono, entonces, puede construirse una señal que consiste solo en un ruido conformado.
[0224] Como conclusión, una ganancia que se aplica para cambiar de escala la señal de excitación en el dominio del tiempo obtenida basándose en la trama previa (o una señal de excitación en el dominio del tiempo que es obtenida para una trama previamente decodificada, o que se asocia con la trama previamente decodificada) se ajusta de modo que determina un valor de un componente tonal (o determinista, o al menos aproximadamente periódico) dentro de la señal de entrada de la síntesis LPC 680, y, en consecuencia, dentro de la información de audio de ocultamiento de error. Dicha ganancia puede ser determinada basándose en una correlación, que se aplica a la señal de audio en el dominio del tiempo obtenida por una decodificación de la trama previamente decodificada (en el que dicha señal de audio en el dominio del tiempo puede ser obtenida usando una síntesis LPC que se realiza en el curso de la decodificación).
6.4. Creación de la parte de ruido
[0225] Se crea una innovación por medio de un generador de ruido aleatorio 660. Este ruido se filtra adicionalmente en paso alto y opcionalmente se preacentúa para tramas de voz y de inicio. El filtrado de paso alto y la preacentuación, que pueden realizarse selectivamente para tramas de voz y de inicio, no se muestran explícitamente en la fig. 6, si bien pueden realizarse, por ejemplo, dentro del generador de ruido 660 o dentro del combinador/desvanecedor 670.
[0226] El ruido será conformado (por ejemplo, después de la combinación con la señal de excitación en el dominio del tiempo 652 obtenida por la extrapolación 650) por LPC de manera que se obtenga lo más cercano posible al ruido de fondo.
[0227] Por ejemplo, la ganancia de innovación puede ser calculada mediante la eliminación de la contribución calculada previamente del tono (si existe) y realizando una correlación al final de la última trama buena. La longitud de la correlación puede ser equivalente a la longitud de dos subtramas, y el retardo puede ser equivalente al retardo de tono usado para la creación de la parte de armónicos.
[0228] Opcionalmente, esta ganancia puede además ser multiplicada por (1 - ganancia de tono) con el fin de aplicar la mayor ganancia sobre el ruido para alcanzar la pérdida de energía si la ganancia del tono no es uno. Opcionalmente, esta ganancia además se multiplica por un factor de ruido. Este factor de ruido puede provenir de una trama válida previa.
[0229] Como conclusión, un componente de ruido de la información de audio de ocultamiento de error se obtiene mediante la conformación de ruido proporcionada por el generador de ruido 660 usando la síntesis LPC 680 (y, posiblemente, la desacentuación 684). Además, puede aplicarse un filtrado de paso alto adicional y/o una preacentuación. La ganancia de la contribución de ruido a la señal de entrada 672 de la síntesis LPC 680 (además designada como “ganancia de innovación”) puede calcularse basándose en la última trama de audio decodificada apropiadamente que precede a la trama de audio perdida, en la que un componente determinista (o al menos aproximadamente periódico) puede ser eliminado de la trama de audio que precede a la trama de audio perdida, y en el que puede realizarse entonces una correlación con el fin de determinar la intensidad (o ganancia) del componente de ruido dentro de la señal en el dominio del tiempo decodificada de la trama de audio que precede a la trama de audio perdida.
[0230] Opcionalmente, pueden aplicarse ciertas modificaciones adicionales a la ganancia del componente de ruido.
6.5. Desvanecimiento
[0231] El desvanecimiento se usa principalmente para múltiples pérdidas de tramas. Sin embargo, el desvanecimiento puede usarse además en el caso de que solo se pierda una única trama de audio.
[0232] En el caso de pérdida de múltiples tramas, los parámetros LPC no se recalculan. O bien se mantiene el último calculado o se realiza un ocultamiento LPC como se explica anteriormente.
[0233] Una periodicidad de la señal se hace converger a cero. La velocidad de la convergencia depende de los parámetros de la última trama correctamente recibida (o correctamente decodificada) y la cantidad de tramas borradas consecutivas (o perdidas), y es controlada por un factor de atenuación, a. El factor, a, además depende de la estabilidad del filtro LP. Opcionalmente, el factor a puede ser alterado en relación con la longitud de tono. Por ejemplo, si el tono es realmente largo, entonces a puede mantenerse normal, pero si el tono es realmente corto, puede ser conveniente (o necesario) copiar una serie de veces la misma parte de excitación anterior. Como se ha descubierto que esta solución suena rápidamente demasiado artificial, la señal se desvanece más rápidamente.
[0234] Además opcionalmente, es posible considerar la salida de predicción de tono. Si se predice un tono, esto significa que el tono ya estaba cambiando en la trama previa, y entonces, cuantas más tramas se pierdan, más lejos se está de la verdad. Por lo tanto, es deseable acelerar ligeramente el desvanecimiento de la parte tonal, en este caso.
[0235] Si la predicción de tono fallara debido a que el tono cambia demasiado, esto significa que los valores de tono no son realmente fiables o que la señal es realmente impredecible. Por lo tanto, nuevamente, se debería realizar el desvanecimiento más rápidamente.
[0236] Como conclusión, la contribución de la señal de excitación en el dominio del tiempo extrapolada 652 a la señal de entrada 672 de la síntesis LPC 680 habitualmente se reduce con el tiempo. Esto puede lograrse, por ejemplo, reduciendo un valor de ganancia, que se aplica a la señal de excitación en el dominio del tiempo extrapolada 652, con el tiempo. La velocidad usada para reducir gradualmente la ganancia aplicada para cambiar de escala la señal de excitación en el dominio del tiempo 552 obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida (o una o más de sus copias) se ajusta según uno o más parámetros de una o más tramas de audio (y/o según una cantidad de tramas de audio perdidas consecutivas). En particular, la longitud de tono y/o el índice al cual cambia el tono con el tiempo, y/o la cuestión de si una predicción de tono falla o tiene éxito, pueden usarse para ajustar dicha velocidad.
6.6. Síntesis LPC
[0237] Para retornar al dominio del tiempo, se realiza una síntesis LPC 680 sobre la suma en general (o generalmente, la combinación ponderada) de las dos excitaciones (parte tonal 652 y parte de ruido 662), seguida de la desacentuación 684.
[0238] En otras palabras, el resultado de la combinación ponderada (desvanecimiento) de la señal de excitación en el dominio del tiempo extrapolada 652 y la señal de ruido 662 forma una señal de excitación en el dominio del tiempo combinada, que es introducida en la síntesis LPC 680, que, por ejemplo, puede realizar un filtrado de síntesis basándose en dicha señal de excitación en el dominio del tiempo combinada 672 según coeficientes LPC que describen el filtro de síntesis.
6.7. Superposición y suma
[0239] Debido a que durante el ocultamiento no se conoce el modo de la siguiente trama que llega (por ejemplo, ACELP, TCX o FD), se prefiere preparar diferentes superposiciones por adelantado. Para lograr la mejor superposición y suma si la siguiente trama se encuentra en un domino de transformada (TCX o FD), una señal artificial (por ejemplo, una información de audio de ocultamiento de error) puede crearse, por ejemplo, para la mitad de una trama más que la trama ocultada (perdida). Por otra parte, puede crearse solapamiento artificial sobre ella (en el que el solapamiento artificial puede, por ejemplo, adaptarse a la superposición y suma de MDCT).
[0240] Para obtener una buena superposición y suma sin discontinuidad con la futura trama en el dominio del tiempo (ACELP), se actúa como antes pero sin solapamiento, de modo que se puedan aplicar largas ventanas de superposición y suma, o si se quiere usar una ventana cuadrada, se calcula la respuesta de entrada cero (ZIR) al final de la memoria intermedia de síntesis.
[0241] Como conclusión, en un decodificador de audio de conmutación (que, por ejemplo, puede conmutar entre una decodificación ACELP, una decodificación TCX y una decodificación en el dominio de la frecuencia (decodificación de FD)), puede realizarse una superposición y suma entre la información de audio de ocultamiento de error que se proporciona principalmente para una trama de audio perdida, pero además, para una cierta porción de tiempo después de la trama de audio perdida, y la información de audio decodificada proporcionada para la primera trama de audio decodificada apropiadamente después de una secuencia de una o más tramas de audio perdidas. Para obtener una superposición y suma apropiada, incluso, para modos de decodificación que conllevan un solapamiento en el dominio del tiempo en una transición entre tramas de audio posteriores, puede proporcionarse una información de cancelación de solapamiento (por ejemplo, designada como solapamiento artificial). Por consiguiente, una superposición y suma entre la información de audio de ocultamiento de error y la información de audio en el dominio del tiempo obtenida basándose en la primera trama de audio decodificada apropiadamente después de una trama de audio perdida logra una cancelación del solapamiento.
[0242] Si la primera trama de audio decodificada apropiadamente después de la secuencia de una o más tramas de audio perdidas es codificada en el modo ACELP, puede calcularse una información de superposición específica, que puede basarse en una respuesta de entrada cero (ZIR) de un filtro LPC.
[0243] Como conclusión, el ocultamiento de error 600 se adapta bien para el uso en un códec de audio de conmutación. Sin embargo, el ocultamiento de error 600 puede usarse además en un códec de audio que simplemente decodifica un contenido de audio codificado en un modo TCX o en un modo ACELP.
6.8. Conclusión
[0244] Debe observarse que se logra un ocultamiento de error particularmente bueno mediante el concepto mencionado anteriormente, para la extrapolación de una señal de excitación en el dominio del tiempo, para la combinación del resultado de la extrapolación con una señal de ruido usando un desvanecimiento (por ejemplo, un desvanecimiento cruzado) y para la realización de una síntesis LPC basándose en un resultado del desvanecimiento cruzado.
7. Decodificador de audio según la fig. 11
[0245] La fig. 11 muestra un diagrama de bloques esquemático de un decodificador de audio 1100, según una realización de la presente invención.
[0246] Debe observarse que el decodificador de audio 1100 puede ser parte de un decodificador de audio de conmutación. Por ejemplo, el decodificador de audio 1100 puede reemplazar la vía de decodificación en el dominio de predicción lineal 440 en el decodificador de audio 400.
[0247] El decodificador de audio 1100 está configurado para recibir una información de audio codificada 1110 y para proporcionar, con esta base, una información de audio decodificada 1112. La información de audio codificada 1110 puede, por ejemplo, corresponder a la información de audio codificada 410, y la información de audio decodificada 1112 puede, por ejemplo, corresponder a la información de audio decodificada 412.
[0248] El decodificador de audio 1100 comprende un analizador de tren de bits 1120, que está configurado para extraer una representación codificada 1122 de un conjunto de coeficientes espectrales y una representación codificada de coeficientes de codificación de predicción lineal 1124 de la información de audio codificada 1110. Sin embargo, el analizador de tren de bits 1120 puede opcionalmente extraer información adicional de la información de audio codificada 1110.
[0249] El decodificador de audio 1100 comprende además una decodificación de valor espectral 1130, que está configurada para proporcionar un conjunto de valores espectrales decodificados 1132 basándose en los coeficientes espectrales codificados 1122. Puede usarse cualquier concepto de decodificación conocido para la decodificación de coeficientes espectrales.
[0250] El decodificador de audio 1100 comprende además un coeficiente de codificación de predicción lineal para la conversión de factor de escala 1140, que está configurado para proporcionar un conjunto de factores de escala 1142 basándose en la representación codificada 1124 de coeficientes de codificación de predicción lineal. Por ejemplo, el coeficiente de codificación de predicción lineal para la conversión de factor de escala 1142 puede realizar una funcionalidad que se describe en la norma USAC. Por ejemplo, la representación codificada 1124 de los coeficientes de codificación de predicción lineal puede comprender una representación polinómica, que es decodificada y convertida en un conjunto de factores de escala por el coeficiente de codificación de predicción lineal para la conversión de factor de escala 1142.
[0251] El decodificador de audio 1100 comprende además un escalar 1150, que está configurado para aplicar los factores de escala 1142 a los valores espectrales decodificados 1132, de manera que se obtengan valores espectrales decodificados con cambio de escala 1152. Por otra parte, el decodificador de audio 1100 comprende, opcionalmente, un procesamiento 1160, que, por ejemplo, puede corresponder al procesamiento 366 que se describe anteriormente, en el que los valores espectrales decodificados con cambio de escala procesados 1162 son obtenidos por el procesamiento opcional 1160. El decodificador de audio 1100 comprende además una transformada de dominio de la frecuencia a dominio del tiempo 1170, que está configurada para recibir los valores espectrales decodificados con cambio de escala 1152 (que pueden corresponder a los valores espectrales decodificados con cambio de escala 362), o los valores espectrales decodificados con cambio de escala procesados 1162 (que pueden corresponder a los valores espectrales decodificados con cambio de escala procesados 368) y proporcionar, con esta base, una representación en el dominio del tiempo 1172, que puede corresponder a la representación en el dominio del tiempo 372 que se describe anteriormente. El decodificador de audio 1100 comprende además un primer posprocesamiento opcional 1174 y un segundo posprocesamiento opcional 1178, que, por ejemplo, pueden corresponder, al menos en parte, al posprocesamiento opcional 376 mencionado anteriormente. Por consiguiente, el decodificador de audio 1110 obtiene (opcionalmente) una versión posprocesada 1179 de la representación de audio en el dominio del tiempo 1172.
[0252] El decodificador de audio 1100 comprende además un bloque de ocultamiento de error 1180 que está configurado para recibir la representación de audio en el dominio del tiempo 1172, o una versión posprocesada de esta, y los coeficientes de codificación de predicción lineal (o bien en forma codificada, o en una forma decodificada) y proporciona, con esta base, una información de audio de ocultamiento de error 1182.
[0253] El bloque de ocultamiento de error 1180 está configurado para proporcionar la información de audio de ocultamiento de error 1182 para el ocultamiento de una pérdida de una trama de audio después de una trama de audio codificada en una representación en el dominio de la frecuencia usando una señal de excitación en el dominio del tiempo, y por lo tanto, es similar al ocultamiento de error 380 y al ocultamiento de error 480, y además, al ocultamiento de error 500 y al ocultamiento de error 600.
[0254] Sin embargo, el bloque de ocultamiento de error 1180 comprende un análisis LPC 1184, que es sustancialmente idéntico al análisis LPC 530. Sin embargo, el análisis LPC 1184 puede, opcionalmente, usar los coeficientes LPC 1124 para facilitar el análisis (en comparación con el análisis LPC 530). El análisis LPC 1134 proporciona una señal de excitación en el dominio del tiempo 1186, que es sustancialmente idéntica a la señal de excitación en el dominio del tiempo 532 (y además, a la señal de excitación en el dominio del tiempo 610). Por otra parte, el bloque de ocultamiento de error 1180 comprende un ocultamiento de error 1188, que, por ejemplo, puede realizar la funcionalidad de los bloques 540, 550, 560, 570, 580, 584 del ocultamiento de error 500, o que, por ejemplo, puede realizar la funcionalidad de los bloques 640, 650, 660, 670, 680, 684 del ocultamiento de error 600. Sin embargo, el bloque de ocultamiento de error 1180 difiere levemente del ocultamiento de error 500, y además, del ocultamiento de error 600. Por ejemplo, el bloque de ocultamiento de error 1180 (que comprende el análisis LPC 1184) difiere del ocultamiento de error 500 en términos de que los coeficientes LPC (usados para la síntesis LPC 580) no son determinados por el análisis LPC 530, si bien son (opcionalmente) recibidos desde el tren de bits. Por otra parte, el bloque de ocultamiento de error 1188, que comprende el análisis LPC 1184, difiere del ocultamiento de error 600 en términos de que la “excitación anterior” 610 es obtenida por el análisis LPC 1184, en lugar de estar disponible directamente.
[0255] El decodificador de audio 1100 comprende además una combinación de señales 1190, que está configurada para recibir la representación de audio en el dominio del tiempo 1172, o una versión posprocesada de esta, y además, la información de audio de ocultamiento de error 1182 (naturalmente, para tramas de audio posteriores), y combina dichas señales, preferentemente, usando una operación de superposición y suma, de manera que se obtenga la información de audio decodificada 1112.
[0256] Para más detalles, se hace referencia a las explicaciones anteriores.
8. Procedimiento según la fig. 9
[0257] La fig. 9 muestra un diagrama de flujo de un procedimiento para proporcionar una información de audio decodificada basándose en una información de audio codificada. El procedimiento 900 según la fig. 9 comprende el suministro 910 de una información de audio de ocultamiento de error para el ocultamiento de una pérdida de una trama de audio después de una trama de audio codificada en una representación en el dominio de la frecuencia usando una señal de excitación en el dominio del tiempo. El procedimiento 900 según la fig. 9 se basa en las mismas consideraciones que el decodificador de audio según la fig. 1. Por otra parte, debe observarse que el procedimiento 900 puede complementarse mediante cualquiera de las características y las funcionalidades que se describen en la presente memoria, ya sea individualmente o en combinación.
9. Procedimiento según la fig. 10
[0258] La fig. 10 muestra un diagrama de flujo de un procedimiento para proporcionar una información de audio decodificada basándose en una información de audio codificada. El procedimiento 1000 comprende el suministro 1010 de una información de audio de ocultamiento de error para el ocultamiento de una pérdida de una trama de audio, en el que una señal de excitación en el dominio del tiempo obtenida para (o basándose en) una o más tramas de audio que preceden a una trama de audio perdida es modificada con el fin de obtener la información de audio de ocultamiento de error.
[0259] El procedimiento 1000 según la fig. 10 se basa en las mismas consideraciones que el decodificador de audio mencionado anteriormente según la fig. 2.
[0260] Por otra parte, debe observarse que el procedimiento según la fig. 10 puede complementarse mediante cualquiera de las características y las funcionalidades que se describen en la presente memoria, ya sea individualmente o en combinación.
10. Observaciones adicionales
[0261] En las realizaciones descritas anteriormente pueden manipularse múltiples pérdidas de trama de diferentes maneras. Por ejemplo, si se pierden dos o más tramas, la parte periódica de la señal de excitación en el dominio del tiempo para la segunda trama perdida se puede deducir de (o ser igual a) una copia de la parte tonal de la señal de excitación en el dominio del tiempo asociada con la primera trama perdida. Alternativamente, la señal de excitación en el dominio del tiempo para la segunda trama perdida puede basarse en un análisis LPC de la señal de síntesis de la trama previa perdida. Por ejemplo, en un códec, la LPC puede ser cambiante en cada trama perdida; entonces, tiene sentido la nueva realización del análisis para cada trama perdida.
11. Alternativas de implementación
[0262] Si bien se han descrito algunos aspectos en el contexto de un aparato, está claro que estos aspectos representan también una descripción del procedimiento correspondiente, en el que un bloque o dispositivo corresponde a una etapa de procedimiento o a una característica de una etapa de procedimiento. De forma análoga, los aspectos descritos en el contexto de una etapa de procedimiento representan también una descripción de un bloque o elemento o característica correspondiente de un aparato correspondiente. Algunas o la totalidad de las etapas de procedimiento pueden ser ejecutadas por (o usando) un aparato de hardware, por ejemplo, un microprocesador, un ordenador programable o un circuito electrónico. En algunas realizaciones, una o más de las etapas de procedimiento más importantes pueden ser ejecutadas por dicho aparato.
[0263] Dependiendo de ciertos requerimientos de implementación, las realizaciones de la invención pueden ser implementadas en hardware o en software. La implementación puede realizarse usando un medio de almacenamiento digital, por ejemplo, un disquete, un DVD, un Blu-Ray, un CD, una ROM, una PROM, una EPROM, una EEPROM o una memoria FLASH, que tiene señales de control legibles almacenadas electrónicamente en el mismo, que cooperan (o son capaces de cooperar) con un sistema informático programable de manera que lleva a cabo el procedimiento respectivo. Por lo tanto, el medio de almacenamiento digital puede ser legible por ordenador.
[0264] Algunas realizaciones según la invención comprenden un soporte de datos que tiene señales de control legibles electrónicamente, que son capaces de cooperar con un sistema informático programable, de manera que llevan a cabo uno de los procedimientos que se describen en la presente memoria.
[0265] En general, las realizaciones de la presente invención pueden ser implementadas como un producto de programa informático con un código de programa, en el que el código de programa es operativo para llevar a cabo uno de los procedimientos cuando se ejecuta el producto de programa informático en un ordenador. El código de programa puede ser almacenado, por ejemplo, en un soporte legible en una máquina.
[0266] Otras realizaciones comprenden el programa informático para llevar a cabo uno de los procedimientos que se describen en la presente memoria, almacenado en un soporte legible en una máquina.
[0267] En otras palabras, una realización del procedimiento de la invención, por lo tanto, es un programa informático que tiene un código de programa para la realización de uno de los procedimientos que se describen en la presente memoria, cuando el programa informático se ejecuta en un ordenador.
[0268] Una realización adicional del procedimiento de la invención es, por lo tanto, un soporte de datos (o un medio de almacenamiento digital, o un medio legible por ordenador) que comprende, grabado en el mismo, el programa informático para llevar a cabo uno de los procedimientos que se describen en la presente memoria. El soporte de datos, el medio de almacenamiento digital o el medio grabado son normalmente tangibles y/o no transitorios.
[0269] Una realización adicional del procedimiento de la invención es, por lo tanto, un tren de datos o una secuencia de señales que representan el programa informático para llevar a cabo uno de los procedimientos que se describen en la presente memoria. El tren de datos o la secuencia de señales, por ejemplo, puede estar configurado para ser transferido por medio de una conexión de comunicación de datos, por ejemplo, por medio de Internet.
[0270] Una realización adicional comprende un medio de procesamiento, por ejemplo, un ordenador, o un dispositivo lógico programable, configurado o adaptado para llevar a cabo uno de los procedimientos que se describen en la presente memoria.
[0271] Una realización adicional comprende un ordenador que tiene instalado en el mismo el programa informático para llevar a cabo uno de los procedimientos que se describen en la presente memoria.
[0272] Una realización adicional según la invención comprende un aparato o un sistema configurado para transferir (por ejemplo, por medios electrónicos u ópticos) un programa informático para la realización de uno de los procedimientos descritos en la presente memoria, a un receptor. El receptor puede ser, por ejemplo, un ordenador, un dispositivo móvil, un dispositivo de memoria o similar. El aparato o el sistema puede comprender, por ejemplo, un servidor de archivos para transferir el programa informático al receptor.
[0273] En algunas realizaciones, puede usarse un dispositivo lógico programable (por ejemplo, una matriz de puertas programables de campo) para realizar algunas o la totalidad de las funcionalidades de los procedimientos que se describen en la presente memoria. En algunas realizaciones, una matriz de puertas programables de campo puede cooperar con un microprocesador con el fin de llevar a cabo uno de los procedimientos que se describen en la presente memoria. En general, los procedimientos son llevados a cabo preferentemente por cualquier aparato de hardware.
[0274] El aparato descrito en la presente memoria puede ser implementado usando un aparato de hardware, o usando un ordenador, o usando una combinación de un aparato de hardware y un ordenador.
[0275] Los procedimientos que se describen en la presente memoria pueden ser realizados usando un aparato de hardware, o usando un ordenador, o usando una combinación de un aparato de hardware y un ordenador.
[0276] Las realizaciones descritas anteriormente son simplemente ilustrativas de los principios de la presente invención. Se entiende que para los expertos en la materia serán evidentes las modificaciones y variaciones de las disposiciones y los detalles que se describen en la presente memoria. Por lo tanto, se tiene la intención de limitación solo por el alcance de las reivindicaciones de patente presentadas, y no por los detalles específicos presentados a modo de descripción y explicación de las realizaciones de la presente memoria.
12. Conclusiones
[0277] Como conclusión, si bien en el campo se ha descrito cierto ocultamiento para códecs en el dominio de la transformada, las realizaciones según la invención superan los códecs (o decodificadores) convencionales. Las realizaciones según la invención usan un cambio de dominio para el ocultamiento (dominio de la frecuencia a dominio del tiempo o excitación). Por consiguiente, las realizaciones según la invención crean un ocultamiento de voz de alta calidad para decodificadores en el dominio de la transformada.
[0278] El modo de codificación de transformada es similar al de USAC (consúltese por ejemplo la referencia [3]). Usa la transformada de coseno discreta modificada (MDCT) como una transformada, y la formación de ruido espectral se logra mediante la aplicación de la envolvente espectral LPC ponderada en el dominio de la frecuencia (conocida también como FDNS, “formación de ruido en el dominio de la frecuencia”). En otras palabras, las realizaciones según la invención pueden usarse en un decodificador de audio, que usa los conceptos de decodificación que se describen en la norma USAC. Sin embargo, el concepto de ocultamiento de error descrito en la presente memoria puede usarse además en un decodificador de audio que es de tipo “AAC”, o en cualquier códec (o decodificador) de la familia AAC.
[0279] El concepto según la presente invención se aplica a un códec conmutado tal como USAC, así como a un códec en el dominio de la frecuencia puro. En los dos casos, el ocultamiento se realiza en el dominio del tiempo o en el dominio de excitación.
[0280] A continuación, se describirán algunas ventajas y características del ocultamiento en el dominio del tiempo (o del ocultamiento en el dominio de excitación).
[0281] El ocultamiento de TCX convencional, como se describe, por ejemplo, con referencia a las fig. 7 y 8, también denominado sustitución de ruido, no es adecuado para las señales de tipo voz o tampoco para señales tonales. Las realizaciones según la invención crean un nuevo ocultamiento para un códec en el dominio de la transformada que se aplica en el dominio del tiempo (o en el dominio de excitación de un decodificador de codificación de predicción lineal). Es similar a un ocultamiento de tipo ACELP y aumenta la calidad del ocultamiento. Se ha encontrado que la información de tono es conveniente (o incluso requerida, en algunos casos) para un ocultamiento de tipo ACELP. Por lo tanto, las realizaciones según la presente invención están configuradas para encontrar valores de tono fiables para la trama previa codificada en el dominio de la frecuencia.
[0282] Diferentes partes y detalles se han explicado anteriormente, por ejemplo, basándose en las realizaciones según las fig. 5 y 6.
[0283] Como conclusión, las realizaciones según la invención crean un ocultamiento de error que supera las soluciones convencionales.
[0284] Según un primer aspecto, un decodificador de audio 100; 300 para proporcionar una información de audio decodificada 112; 312 basándose en una información de audio codificada 110; 310 puede comprender: un ocultamiento de error 130; 380; 500 configurado para proporcionar una información de audio de ocultamiento de error 132; 382; 512 para ocultar una pérdida de una trama de audio después de una trama de audio codificada en una representación en el dominio de la frecuencia 322 usando una señal de excitación en el dominio del tiempo 532.
[0285] Según un segundo aspecto en referencia de nuevo al primer aspecto, el decodificador de audio 100; 300 puede comprender un núcleo de decodificador en el dominio de la frecuencia 120; 340, 350, 360, 366, 370 configurado para aplicar un cambio de escala basado en un factor de escala 360 a una pluralidad de valores espectrales 342 deducidos de la representación en el dominio de la frecuencia 322, y el ocultamiento de error 130; 380; 500 puede configurarse de manera que proporcione la información de audio de ocultamiento de error 132; 382; 512 para ocultar una pérdida de una trama de audio después de una trama de audio codificada en una representación en el dominio de la frecuencia 322 que comprende una pluralidad de factores de escala codificados 328 usando una señal de excitación en el dominio del tiempo 532 deducida de la representación en el dominio de la frecuencia.
[0286] Según un tercer aspecto en referencia de nuevo al primer aspecto o segundo aspecto, en el decodificador de audio 100; 300 la representación en el dominio de la frecuencia puede comprender una representación codificada 326 de una pluralidad de valores espectrales y una representación codificada 328 de una pluralidad de factores de escala para cambiar de escala los valores espectrales, o el decodificador de audio puede configurarse de manera que deduzca una pluralidad de factores de escala para cambiar de escala los valores espectrales de una representación codificada de parámetros LPC.
[0287] Según un cuarto aspecto en referencia de nuevo a uno cualquiera de los aspectos primero a tercero, el decodificador de audio 100; 300 puede comprender un núcleo de decodificador en el dominio de la frecuencia 120; 340, 350, 350, 366, 370 configurado de manera que deduzca una representación de la señal de audio en el dominio del tiempo 122; 372 a partir de la representación en el dominio de la frecuencia 322 sin usar una señal de excitación en el dominio del tiempo como cantidad intermedia para la trama de audio codificada en la representación en el dominio de la frecuencia.
[0288] Según un quinto aspecto en referencia de nuevo a uno cualquiera de los aspectos primero a cuarto, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que obtenga la señal de excitación en el dominio del tiempo 532 basándose en la trama de audio codificada en la representación en el dominio de la frecuencia 322 que precede a una trama de audio perdida, y el ocultamiento de error puede configurarse de manera que proporcione la información de audio de ocultamiento de error 122; 382; 512 para ocultar la trama de audio perdida usando dicha señal de excitación en el dominio del tiempo.
[0289] Según un sexto aspecto en referencia de nuevo a uno cualquiera de los aspectos primero a quinto, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que realice un análisis LPC 530 basándose en la trama de audio codificada en la representación en el dominio de la frecuencia 322 que precede a la trama de audio perdida, para obtener un conjunto de parámetros de codificación de predicción lineal y la señal de excitación en el dominio del tiempo 532 que representa un contenido de audio de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida; o el ocultamiento de error 130; 380; 500 puede configurarse de manera que realice un análisis LPC 530 basándose en la trama de audio codificada en la representación en el dominio de la frecuencia 322 que precede a la trama de audio perdida, para obtener la señal de excitación en el dominio del tiempo 532 que representa un contenido de audio de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida; o el decodificador de audio puede configurarse de manera que obtenga un conjunto de parámetros de codificación de predicción lineal usando una estimación de parámetros de codificación de predicción lineal; o el decodificador de audio puede configurarse de manera que obtenga un conjunto de parámetros de codificación de predicción lineal basándose en un conjunto de factores de escala usando una transformada.
[0290] Según un séptimo aspecto en referencia de nuevo a uno cualquiera de los aspectos primero a sexto, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que obtenga una información de tono 542 que describe un tono de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida, y para proporcionar la información de audio de ocultamiento de error 122; 382; 512 dependiendo de la información de tono.
[0291] Según un octavo aspecto en referencia de nuevo al séptimo aspecto, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que se obtenga la información de tono 542 basándose en la señal de excitación en el dominio del tiempo 532 deducida de la trama de audio codificada en la representación en el dominio de la frecuencia 322 que precede a la trama de audio perdida.
[0292] Según un noveno aspecto en referencia de nuevo al octavo aspecto, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que evalúe una correlación cruzada de la señal de excitación en el dominio del tiempo 532 o la señal en el dominio del tiempo 522, para determinar una información de tono aproximada, y el ocultamiento de error puede configurarse de manera que refine la información de tono aproximada usando una búsqueda en bucle cerrado alrededor de un tono determinado por la información de tono aproximada.
[0293] Según un décimo aspecto en referencia de nuevo a uno cualquiera de los aspectos primero a sexto, en el decodificador de audio el ocultamiento de error puede configurarse de manera que se obtenga una información de tono basándose en una información secundaria de la información de audio codificada.
[0294] Según un decimoprimer aspecto en referencia de nuevo a uno cualquiera de los aspectos primero a sexto, en el decodificador de audio según el ocultamiento de error puede configurarse de manera que se obtenga una información de tono basándose en una información de tono disponible para una trama de audio decodificada previamente.
[0295] Según un decimosegundo aspecto en referencia de nuevo a uno cualquiera de los aspectos primero a sexto, en el decodificador de audio el ocultamiento de error puede configurarse de manera que se obtenga una información de tono basándose en una búsqueda de tono realizada en una señal en el dominio del tiempo o en una señal residual.
[0296] Según un decimotercer aspecto en referencia de nuevo a uno cualquiera de los aspectos primero a decimosegundo, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que copie un ciclo de tono de la señal de excitación en el dominio del tiempo 532 deducida de la trama de audio codificada en la representación en el dominio de la frecuencia 322 que precede a la trama de audio perdida una vez o múltiples veces, con el fin de obtener una señal de excitación 572 para una síntesis 580 de la información de audio del ocultamiento de error 132; 382; 512.
[0297] Según un decimocuarto aspecto en referencia de nuevo al decimotercer aspecto, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que realice un filtrado en paso bajo del ciclo de tono de la señal de excitación en el dominio del tiempo 532 deducida de la representación en el dominio del tiempo de la trama de audio codificada en la representación en el dominio de la frecuencia 322 que precede a la trama de audio perdida usando un filtro dependiente de la velocidad de muestreo, cuya anchura de banda depende de una velocidad de muestreo de la trama de audio codificada en una representación en el dominio de la frecuencia.
[0298] Según un decimoquinto aspecto en referencia de nuevo a uno cualquiera de los aspectos primero a decimocuarto, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que prediga un tono al final de una trama perdida, y el ocultamiento de error puede configurarse de manera que adapte la señal de excitación en el dominio del tiempo 532, o una o más copias de la misma, al tono predicho, con el fin de obtener una señal de entrada 572 para una síntesis LPC 580.
[0299] Según un decimosexto aspecto en referencia de nuevo a uno cualquiera de los aspectos primero a decimoquinto, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que combine una señal de excitación en el dominio del tiempo extrapolada 552 y una señal de ruido 562, con el fin de obtener una señal de entrada 572 para una síntesis LPC 580, y el ocultamiento de error puede configurarse de manera que realice la síntesis LPC, en el que la síntesis LPC puede configurarse de manera que filtre la señal de entrada 572 de la síntesis LPC dependiendo de parámetros de codificación de predicción lineal, con el fin de obtener la información de audio del ocultamiento de error 132; 382; 512.
[0300] Según un decimoséptimo aspecto en referencia de nuevo al decimosexto aspecto, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que calcule una ganancia de la señal de excitación en el dominio del tiempo extrapolada 552, que se usa para obtener la señal de entrada 572 para la síntesis LPC 580, usando una correlación en el dominio del tiempo que se realiza basándose en una representación en el dominio del tiempo 122; 372; 378; 510 de la trama de audio codificada en la representación en el dominio de la frecuencia 322 que precede a la trama de audio perdida, en el que se establece un retardo de correlación dependiendo de una información de tono obtenida basándose en la señal de excitación en el dominio del tiempo 532, o usando una correlación en el dominio de excitación.
[0301] Según un decimoctavo aspecto en referencia de nuevo a uno cualquiera de los aspectos decimosexto o decimoséptimo, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que realice un filtrado de paso alto de la señal de ruido 562 que se combina con la señal de excitación en el dominio del tiempo extrapolada 552.
[0302] Según un decimonoveno aspecto en referencia de nuevo a uno cualquiera de los aspectos decimotercero a decimoquinto, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que cambie la forma espectral de la señal de ruido 562 usando el filtro de preacentuación en el que la señal de ruido se combina con la señal de excitación en el dominio del tiempo extrapolada 552 si la trama de audio codificada en una representación en el dominio de la frecuencia 322 que precede a la trama de audio perdida es una trama de audio de voz o comprende un inicio.
[0303] Según un vigésimo aspecto en referencia de nuevo a uno cualquiera de los aspectos primero a decimonoveno, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que calcule una ganancia de la señal de ruido 562 dependiendo de una correlación en el dominio del tiempo que se realiza basándose en una representación en el dominio del tiempo 122; 372; 378; 510 de la trama de audio codificada en la representación en el dominio de la frecuencia 322 que precede a la trama de audio perdida.
[0304] Según un vigesimoprimer aspecto en referencia de nuevo a uno cualquiera de los aspectos primero a vigésimo, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que modifique una señal de excitación en el dominio del tiempo 532 obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, con el fin de obtener la información de audio del ocultamiento de error 132; 382; 512.
[0305] Según un vigesimosegundo aspecto en referencia de nuevo al vigesimoprimer aspecto, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que use una o más copias modificadas de la señal de excitación en el dominio del tiempo 532 obtenidas basándose en una o más tramas de audio que preceden a una trama de audio perdida, con el fin de obtener la información de ocultamiento de error 132; 382; 512.
[0306] Según un vigesimotercer aspecto en referencia de nuevo a uno cualquiera de los aspectos vigesimoprimero o vigesimosegundo, en el decodificador de audio 100; 300, el ocultamiento de error 132; 380; 500 puede configurarse de manera que modifique la señal de excitación en el dominio del tiempo 532 obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o una o más copias de la misma, para reducir con ello un componente periódico de la información de audio del ocultamiento de error 132; 382; 512 con el tiempo.
[0307] Según un vigesimocuarto aspecto en referencia de nuevo a uno cualquiera de los aspectos vigesimoprimero a vigesimotercero, en el decodificador de audio 100; 300, el ocultamiento de error 132; 380; 500 puede configurarse de manera que cambie de escala la señal de excitación en el dominio del tiempo 532 obtenida basándose en una o más tramas de audio que preceden a la trama de audio perdida, o una o más copias de la misma, para modificar con ello la señal de excitación en el dominio del tiempo.
[0308] Según un vigesimoquinto aspecto en referencia de nuevo al aspecto vigesimotercer o vigesimocuarto, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que reduzca gradualmente una ganancia aplicada para cambiar de escala la señal de excitación en el dominio del tiempo 532 obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o la una o más copias de la misma.
[0309] Según un vigesimosexto aspecto en referencia de nuevo a uno cualquiera de los aspectos vigesimotercero a vigesimoquinto, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que ajuste la velocidad usada para reducir gradualmente una ganancia aplicada para cambiar de escala la señal de excitación en el dominio del tiempo 532 obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o la una o más copias de la misma, dependiendo de uno o más parámetros de una o más tramas de audio que preceden a la trama de audio perdida, y/o dependiendo del número de tramas de audio perdidas consecutivas.
[0310] Según un vigesimoséptimo aspecto en referencia de nuevo al aspecto vigesimoquinto o vigesimosexto, en el decodificador de audio 100; 300, el ocultamiento de error puede configurarse de manera que ajuste la velocidad usada para reducir gradualmente una ganancia aplicada para cambiar de escala la señal de excitación en el dominio del tiempo 532 obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o la una o más copias de la misma, dependiendo de la longitud de un periodo de tono de la señal de excitación en el dominio del tiempo 532, de manera que una señal de excitación en el dominio del tiempo introducida en una síntesis LPC se desvanece más deprisa para señales que tienen una longitud más corta del periodo de tono cuando se compara con señales que tienen una longitud mayor del periodo de tono.
[0311] Según un vigesimoctavo aspecto en referencia de nuevo a uno cualquiera de los aspectos vigesimoquinto a vigesimoséptimo, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que ajuste la velocidad usada para reducir gradualmente una ganancia aplicada para cambiar de escala la señal de excitación en el dominio del tiempo 532 obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o la una o más copias de la misma, dependiendo del resultado de un análisis de tono 540 o una predicción de tono, de manera que un componente determinista de una señal de excitación en el dominio del tiempo 572 introducido en una síntesis LPC 580 puede desvanecerse más deprisa para señales que tienen un cambio de tono más largo por unidad de tiempo cuando se compara con señales que tienen un cambio de tono más corto por unidad de tiempo, y/o de manera que un componente determinista de una señal de excitación en el dominio del tiempo 572 introducido en una síntesis LPC 580 puede desvanecerse más deprisa para señales para las que falla de predicción de tono cuando se compara con señales para las que la predicción de tono tiene éxito.
[0312] Según un vigesimonoveno aspecto en referencia de nuevo a uno cualquiera de los aspectos vigesimoprimero a vigesimoctavo, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que cambie la escala de tiempo de la señal de excitación en el dominio del tiempo 532 obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o la una o más copias de la misma, dependiendo de una predicción 540 de un tono para el tiempo de la una o más tramas de audio perdidas.
[0313] Según un trigésimo aspecto en referencia de nuevo a uno cualquiera de los aspectos primero a vigesimonoveno, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que proporcione la información de audio del ocultamiento de error 132; 382; 512 para un tiempo que es más largo que la duración temporal de la una o más tramas de audio perdidas.
[0314] Según un trigesimoprimer aspecto en referencia de nuevo al trigésimo aspecto, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que realice una superposición y suma 390; 590 de la información de audio del ocultamiento de error 132; 382; 512 y una representación en el dominio del tiempo 122; 372,378; 512 de una o más tramas de audio recibidas apropiadamente después de la una o más tramas de audio perdidas.
[0315] Según un trigesimosegundo aspecto en referencia de nuevo a uno cualquiera de los aspectos primero a trigesimoprimero, en el decodificador de audio 100; 300, el ocultamiento de error 130; 380; 500 puede configurarse de manera que deduzca la información de audio del ocultamiento de error 132; 382; 512 basándose en al menos tres tramas o ventanas parcialmente en superposición que preceden a una trama de audio perdida o una ventana perdida.
[0316] Según un trigesimotercer aspecto, un procedimiento 900 para proporcionar una información de audio decodificada basándose en una información de audio codificada puede comprender: suministro 910 de una información de audio de ocultamiento de error para ocultar una pérdida de una trama de audio después de una trama de audio codificada en una representación en el dominio de la frecuencia usando una señal de excitación en el dominio del tiempo.
[0317] Un trigesimocuarto aspecto puede proporcionar un programa informático para realizar el procedimiento según un trigesimotercer aspecto cuando el programa informático se ejecuta en un ordenador.
Bibliografía:
[0318]
[1] 3GPP, "Audio codec processing functions; Extended Adaptive Multi-Rate - Wideband (AMR-WB+) codec; Transcoding functions", 2009, 3GPP TS 26.290.
[2] "MDCT-BASED CODER FOR HIGHLY ADAPTIVE SPEECH AND AUDIO CODING"; Guillaume Fuchs & al.; EUSIPCO 2009.
[3] ISO_IEC_DIS_23003-3_(E); Information technology - MPEG audio technologies - Part 3: Unified speech and audio coding.
[4] 3GPP, "General Audio Codec audio processing functions; Enhanced aacPlus general audio codec; Additional decoder tools", 2009, 3GPP TS 26.402.
[5] "Audio decoder and coding error compensating method", 2000, EP 1207519 B1
[6] "Apparatus and method for improved concealment of the adaptive codebook in ACELP-like concealment employing improved pitch lag estimation", 2014, PCT/EP2014/062589
[7] "Apparatus and method for improved concealment of the adaptive codebook in ACELP-like concealment employing improved pulse resynchronization", 2014, PCT/EP2014/062578

Claims (29)

REIVINDICACIONES
1. Un decodificador de audio (100; 300) para proporcionar una información de audio decodificada (112; 312) basándose en una información de audio codificada (110; 310), comprendiendo el decodificador de audio: un ocultamiento de error (130; 380; 500) configurado para proporcionar una información de audio de ocultamiento de error (132; 382; 512) para el ocultamiento de una pérdida de una trama de audio después de una trama de audio codificada en una representación en el dominio de la frecuencia (322) usando una señal de excitación en el dominio del tiempo (532).
en el que el decodificador de audio se caracteriza porque:
la representación en el dominio de la frecuencia comprende una representación codificada (326) de una pluralidad de valores espectrales y una representación codificada (328) de una pluralidad de factores de escala para cambiar de escala los valores espectrales, y en el que el decodificador de audio está configurado para proporcionar una pluralidad de factores de escala decodificados (352, 354) para el cambio de escala de los valores basándose en una pluralidad de factores de escala codificados; o
en el que el decodificador de audio está configurado para deducir una pluralidad de factores de escala para el cambio de escala de los valores espectrales a partir de una representación codificada de parámetros LPC; y en el que el ocultamiento de error (130; 380; 500) está configurado para obtener la señal de excitación en el dominio del tiempo (532) basándose en la trama de audio codificada en la representación en el dominio de la frecuencia (322) que precede a una trama de audio perdida.
2. El decodificador de audio (100; 300) según la reivindicación 1, en el que el ocultamiento de error (130; 380; 500) se configura para realizar un análisis LPC (530) basándose en la trama de audio codificada en la representación en el dominio de la frecuencia (322) que precede a la trama de audio perdida, para obtener un conjunto de parámetros de codificación de predicción lineal y la señal de excitación en el dominio del tiempo (532) que representa un contenido de audio de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida; o
en el que el ocultamiento de error (130; 380; 500) se configura para realizar un análisis LPC (530) basándose en la trama de audio codificada en la representación en el dominio de la frecuencia (322) que precede a la trama de audio perdida, para obtener la señal de excitación en el dominio del tiempo (532) que representa un contenido de audio de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida; o
en el que el decodificador de audio se configura para obtener un conjunto de parámetros de codificación de predicción lineal usando una estimación de parámetros de codificación de predicción lineal; o
en el que el decodificador de audio se configura para obtener un conjunto de parámetros de codificación de predicción lineal basándose en un conjunto de factores de escala usando una transformada.
3. El decodificador de audio (100; 300) según una de las reivindicaciones 1 a 2, en el que el ocultamiento de error (130; 380; 500) se configura para obtener una información de tono (542) que describe un tono de la trama de audio codificada en la representación en el dominio de la frecuencia que precede a la trama de audio perdida, y para proporcionar la información de audio del ocultamiento de error (122; 382; 512) dependiendo de la información de tono.
4. El decodificador de audio (100; 300) según la reivindicación 3, en el que el ocultamiento de error (130; 380; 500) se configura para obtener la información de tono (542) basándose en la señal de excitación en el dominio del tiempo 532) deducida de la trama de audio codificada en la representación en el dominio de la frecuencia (322) que precede a la trama de audio perdida.
5. El decodificador de audio (100; 300) según la reivindicación 4, en el que el ocultamiento de error (130; 380; 500) se configura para evaluar una correlación cruzada de la señal de excitación en el dominio del tiempo (532) o la señal en el dominio del tiempo (522), para determinar una información de tono aproximada, y
en el que el ocultamiento de error se configura para refinar la información de tono aproximada usando una búsqueda en bucle cerrado alrededor de un tono determinado por la información de tono aproximada.
6. El decodificador de audio según una de las reivindicaciones 1 a 2, en el que el ocultamiento de error se configura para obtener una información de tono basándose en una información secundaria de la información de audio codificada.
7. El decodificador de audio según una de las reivindicaciones 1 a 2, en el que el ocultamiento de error se configura para obtener una información de tono basándose en una información de tono disponible para una trama de audio decodificada previamente.
8. El decodificador de audio según una de las reivindicaciones 1 a 2, en el que el ocultamiento de error se configura para obtener una información de tono basándose en una búsqueda de tono realizada en una señal en el dominio del tiempo o en una señal residual.
9. El decodificador de audio (100; 300) según una de las reivindicaciones 1 a 8, en el que el ocultamiento de error (130; 380; 500) se configura para copiar un ciclo de tono de la señal de excitación en el dominio del tiempo (532) deducida de la trama de audio codificada en la representación en el dominio de la frecuencia (322) que precede a la trama de audio perdida una vez o múltiples veces, con el fin de obtener una señal de excitación (572) para una síntesis (580) de la información de audio del ocultamiento de error (132; 382; 512).
10. El decodificador de audio (100; 300) según la reivindicación 9, en el que el ocultamiento de error (130; 380; 500) se configura para realizar un filtrado de paso bajo del ciclo de tono de la señal de excitación en el dominio del tiempo (532) deducida de la representación en el dominio del tiempo de la trama de audio codificada en la representación en el dominio de la frecuencia (322) que precede a la trama de audio perdida usando un filtro dependiente de la velocidad de muestreo, cuya anchura de banda depende de una velocidad de muestreo de la trama de audio codificada en una representación en el dominio de la frecuencia.
11. El decodificador de audio (100; 300) según una de las reivindicaciones 1 a 10, en el que el ocultamiento de error (130; 380; 500) se configura para predecir un tono al final de una trama perdida, y
en el que el ocultamiento de error se configura para adaptar la señal de excitación en el dominio del tiempo (532), o una o más copias de la misma, para el tono predicho, con el fin de obtener una señal de entrada (572) para una síntesis LPC (580).
12. El decodificador de audio (100; 300) según una de las reivindicaciones 1 a 11, en el que el ocultamiento de error (130; 380; 500) se configura para combinar una señal de excitación en el dominio del tiempo extrapolada (552) y una señal de ruido (562), con el fin de obtener una señal de entrada (572) para una síntesis LPC (580), y en el que el ocultamiento de error se configura para realizar la síntesis LPC,
en el que la síntesis LPC se configura para filtrar la señal de entrada (572) de la síntesis LPC dependiendo de parámetros de codificación de predicción lineal, con el fin de obtener la información de audio del ocultamiento de error (132; 382; 512).
13. El decodificador de audio (100; 300) según la reivindicación 12, en el que el ocultamiento de error (130; 380; 500) se configura para calcular una ganancia de la señal de excitación en el dominio del tiempo extrapolada (552), que se usa para obtener la señal de entrada (572) para la síntesis LPC (580), usando una correlación en el dominio del tiempo que se realiza basándose en una representación en el dominio del tiempo (122; 372; 378; 510) de la trama de audio codificada en la representación en el dominio de la frecuencia (322) que precede a la trama de audio perdida, en el que se establece un retardo de correlación dependiendo de una información de tono obtenida basándose en la señal de excitación en el dominio del tiempo (532), o usando una correlación en el dominio de excitación.
14. El decodificador de audio (100; 300) según una de las reivindicaciones 12 o 13, en el que el ocultamiento de error (130; 380; 500) se configura para realizar un filtrado de paso alto de la señal de ruido (562) que se combina con la señal de excitación en el dominio del tiempo extrapolada (552).
15. El decodificador de audio (100; 300) según una de las reivindicaciones 9 a 11, en el que el ocultamiento de error (130; 380; 500) se configura para cambiar la forma espectral de una señal de ruido (562) usando un filtro de preacentuación en el que la señal de ruido se combina con la señal de excitación en el dominio del tiempo extrapolada (552) si la trama de audio codificada en una representación en el dominio de la frecuencia (322) que precede a la trama de audio perdida es una trama de audio de voz o comprende un inicio.
16. El decodificador de audio (100; 300) según una de las reivindicaciones 1 a 15, en el que el ocultamiento de error (130; 380; 500) se configura para calcular una ganancia de la señal de ruido (562) dependiendo de una correlación en el dominio del tiempo que se realiza basándose en una representación en el dominio del tiempo (122; 372; 378; 510) de la trama de audio codificada en la representación en el dominio de la frecuencia (322) que precede a la trama de audio perdida.
17. El decodificador de audio (100; 300) según una de las reivindicaciones 1 a 16, en el que el ocultamiento de error (130; 380; 500) se configura para modificar una señal de excitación en el dominio del tiempo (532) obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, con el fin de obtener la información de audio del ocultamiento de error (132; 382; 512).
18. El decodificador de audio (100; 300) según la reivindicación 17, en el que el ocultamiento de error (130; 380; 500) se configura para usar una o más copias modificadas de la señal de excitación en el dominio del tiempo (532) obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, con el fin de obtener la información del ocultamiento de error (132; 382; 512).
19. El decodificador de audio (100; 300) según una de las reivindicaciones 17 o 18, en el que el ocultamiento de error (132; 380; 500) se configura para modificar la señal de excitación en el dominio del tiempo (532) obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o una o más copias de la misma, para reducir con ello un componente periódico de la información de audio del ocultamiento de error (132; 382; 512) con el tiempo.
20. El decodificador de audio (100; 300) según una de las reivindicaciones 17 a 19, en el que el ocultamiento de error (132; 380; 500) se configura para cambiar de escala la señal de excitación en el dominio del tiempo (532) obtenida basándose en una o más tramas de audio que preceden a la trama de audio perdida, o una o más copias de la misma, para modificar con ello la señal de excitación en el dominio del tiempo.
21. El decodificador de audio (100; 300) según la reivindicación 19 o 20, en el que el ocultamiento de error (130; 380; 500) se configura para reducir gradualmente una ganancia aplicada para cambiar de escala la señal de excitación en el dominio del tiempo (532) obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o la una o más copias de la misma.
22. El decodificador de audio (100; 300) según una de las reivindicaciones 19 a 21, en el que el ocultamiento de error (130; 380; 500) se configura para ajustar una velocidad usada para reducir gradualmente una ganancia aplicada para cambiar de escala la señal de excitación en el dominio del tiempo (532) obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o la una o más copias de la misma, dependiendo de uno o más parámetros de una o más tramas de audio que preceden a la trama de audio perdida, y/o dependiendo de una serie de tramas de audio perdidas consecutivas.
23. El decodificador de audio (100; 300) según la reivindicación 21 o 22, en el que el ocultamiento de error se configura para ajustar la velocidad usada para reducir gradualmente una ganancia aplicada para cambiar de escala la señal de excitación en el dominio del tiempo (532) obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o la una o más copias de la misma, dependiendo de la longitud de un periodo de tono de la señal de excitación en el dominio del tiempo (532), de manera que una señal de excitación en el dominio del tiempo introducida en una síntesis LPC se desvanece más rápidamente para señales que tienen una longitud más corta del periodo de tono cuando se comparan con señales que tienen una longitud mayor del periodo de tono.
24. El decodificador de audio (100; 300) según una de las reivindicaciones 21 a 23, en el que el ocultamiento de error (130; 380; 500) se configura para ajustar la velocidad usada para reducir gradualmente una ganancia aplicada para cambiar de escala la señal de excitación en el dominio del tiempo (532) obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o la una o más copias de la misma, dependiendo del resultado de un análisis de tono (540) o una predicción de tono,
de manera que un componente determinista de una señal de excitación en el dominio del tiempo (572) introducido en una síntesis LPC (580) se desvanece más rápidamente para señales que tienen un cambio de tono más grande por unidad de tiempo cuando se comparan con señales que tienen un cambio de tono más pequeño por unidad de tiempo, y/o
de manera que un componente determinista de una señal de excitación en el dominio del tiempo (572) introducido en una síntesis LPC (580) se desvanece más rápidamente para señales para una predicción de tono que falla cuando se compara con señales para las que la predicción de tono tiene éxito.
25. El decodificador de audio (100; 300) según una de las reivindicaciones 17 a 24, en el que el ocultamiento de error (130; 380; 500) se configura para cambiar la escala de tiempo de la señal de excitación en el dominio del tiempo (532) obtenida basándose en una o más tramas de audio que preceden a una trama de audio perdida, o la una o más copias de la misma, dependiendo de una predicción (540) de un tono para el tiempo de la una o más tramas de audio perdidas.
26. El decodificador de audio (100; 300) según una de las reivindicaciones 1 a 25, en el que el ocultamiento de error (130; 380; 500) se configura para proporcionar la información de audio del ocultamiento de error (132; 382; 512) para un tiempo que es más largo que una duración temporal de la una o más tramas de audio perdidas.
27. El decodificador de audio (100; 300) según la reivindicación 26, en el que el ocultamiento de error (130; 380; 500) se configura para realizar una superposición y suma (390; 590) de la información de audio del ocultamiento de error (132; 382; 512) y una representación en el dominio del tiempo (122; 372,378; 512) de una o más tramas de audio recibidas apropiadamente después de la una o más tramas de audio perdidas.
28. El decodificador de audio (100; 300) según una de las reivindicaciones 1 a 27, en el que el ocultamiento de error (130; 380; 500) se configura para deducir la información de audio del ocultamiento de error (132; 382; 512) basándose en al menos tres tramas o ventanas de superposición parcial que preceden a una trama de audio perdida o una ventana perdida.
29. Un procedimiento (900) para proporcionar una información de audio decodificada basándose en una información de audio codificada, comprendiendo el procedimiento:
el suministro (910) de una información de audio de ocultamiento de error para ocultar una pérdida de una trama de audio después de una trama de audio codificada en una representación en el dominio de la frecuencia usando una señal de excitación en el dominio del tiempo; en el que procedimiento se caracteriza porque:
la representación en el dominio de la frecuencia comprende una representación codificada (326) de una pluralidad de valores espectrales y una representación codificada (328) de una pluralidad de factores de escala para cambiar de escala los valores espectrales, y en el que se proporciona una pluralidad de factores de escala decodificados (352, 354) para cambiar de escala valores espectrales basándose en una pluralidad de factores de escala codificados, o
en el que la pluralidad de factores de escala para cambiar de escala los valores espectrales se deduce de una representación codificada de LPC parámetros; y
en el que la señal de excitación en el dominio del tiempo (532) se obtiene basándose en la trama de audio codificada en la representación en el dominio de la frecuencia (322) que precede a una trama de audio perdida 30. Un programa informático para realizar el procedimiento según la reivindicación 29 cuando el programa informático se ejecuta en un ordenador.
ES17191502T 2013-10-31 2014-10-27 Decodificador de audio y procedimiento para proporcionar una información de audio decodificada usando un ocultamiento de error basado en una señal de excitación en el dominio del tiempo Active ES2732952T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP13191133 2013-10-31
EP14178824 2014-07-28

Publications (1)

Publication Number Publication Date
ES2732952T3 true ES2732952T3 (es) 2019-11-26

Family

ID=51830301

Family Applications (5)

Application Number Title Priority Date Filing Date
ES17191502T Active ES2732952T3 (es) 2013-10-31 2014-10-27 Decodificador de audio y procedimiento para proporcionar una información de audio decodificada usando un ocultamiento de error basado en una señal de excitación en el dominio del tiempo
ES17191503T Active ES2805744T3 (es) 2013-10-31 2014-10-27 Decodificador de audio y método para proporcionar una información de audio decodificada usando un ocultamiento de errores en base a una señal de excitación de dominio de tiempo
ES14790073.2T Active ES2659838T3 (es) 2013-10-31 2014-10-27 Decodificador de audio y método para proporcionar una información de audio decodificada usando un ocultamiento de errores en base a una señal de excitación de dominio de tiempo
ES17191506T Active ES2746034T3 (es) 2013-10-31 2014-10-27 Decodificador de audio y método para proporcionar una información de audio decodificada usando un ocultamiento de error sobre la base de una señal de excitación de dominio de tiempo
ES17191505T Active ES2739477T3 (es) 2013-10-31 2014-10-27 Decodificador de audio y método para proporcionar una información de audio decodificada usando un ocultamiento de errores en base a una señal de excitación de dominio de tiempo

Family Applications After (4)

Application Number Title Priority Date Filing Date
ES17191503T Active ES2805744T3 (es) 2013-10-31 2014-10-27 Decodificador de audio y método para proporcionar una información de audio decodificada usando un ocultamiento de errores en base a una señal de excitación de dominio de tiempo
ES14790073.2T Active ES2659838T3 (es) 2013-10-31 2014-10-27 Decodificador de audio y método para proporcionar una información de audio decodificada usando un ocultamiento de errores en base a una señal de excitación de dominio de tiempo
ES17191506T Active ES2746034T3 (es) 2013-10-31 2014-10-27 Decodificador de audio y método para proporcionar una información de audio decodificada usando un ocultamiento de error sobre la base de una señal de excitación de dominio de tiempo
ES17191505T Active ES2739477T3 (es) 2013-10-31 2014-10-27 Decodificador de audio y método para proporcionar una información de audio decodificada usando un ocultamiento de errores en base a una señal de excitación de dominio de tiempo

Country Status (20)

Country Link
US (6) US10381012B2 (es)
EP (5) EP3285254B1 (es)
JP (1) JP6306175B2 (es)
KR (4) KR101957905B1 (es)
CN (1) CN105765651B (es)
AU (5) AU2014343904B2 (es)
BR (1) BR112016009819B1 (es)
CA (5) CA2984535C (es)
ES (5) ES2732952T3 (es)
HK (3) HK1251710A1 (es)
MX (1) MX356334B (es)
MY (1) MY178139A (es)
PL (5) PL3285255T3 (es)
PT (5) PT3285255T (es)
RU (1) RU2678473C2 (es)
SG (3) SG10201609235UA (es)
TR (1) TR201802808T4 (es)
TW (1) TWI569261B (es)
WO (1) WO2015063044A1 (es)
ZA (1) ZA201603528B (es)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6306177B2 (ja) 2013-10-31 2018-04-04 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 時間ドメイン励振信号を修正するエラーコンシールメントを用いて、復号化されたオーディオ情報を提供する、オーディオデコーダおよび復号化されたオーディオ情報を提供する方法
PT3285255T (pt) 2013-10-31 2019-08-02 Fraunhofer Ges Forschung Descodificador de áudio e método para fornecer uma informação de áudio descodificada utilizando uma ocultação de erro baseada num sinal de excitação no domínio de tempo
WO2016142002A1 (en) * 2015-03-09 2016-09-15 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder, method for encoding an audio signal and method for decoding an encoded audio signal
US10504525B2 (en) * 2015-10-10 2019-12-10 Dolby Laboratories Licensing Corporation Adaptive forward error correction redundant payload generation
EP3427257B1 (en) 2016-03-07 2021-05-05 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Error concealment unit, audio decoder, and related method and computer program fading out a concealed audio frame out according to different damping factors for different frequency bands
JP6718516B2 (ja) 2016-03-07 2020-07-08 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ ハイブリッドコンシールメント方法:オーディオコーデックにおける周波数および時間ドメインパケットロスの組み合わせ
BR112018068060A2 (pt) 2016-03-07 2019-01-08 Fraunhofer Ges Forschung unidade de ocultação de erros, codificador de áudio e método relacionado e programa de computador usando características de uma representação decodificada de um quadro de áudio adequadamente decodificado
CN107248411B (zh) * 2016-03-29 2020-08-07 华为技术有限公司 丢帧补偿处理方法和装置
CN108922551B (zh) * 2017-05-16 2021-02-05 博通集成电路(上海)股份有限公司 用于补偿丢失帧的电路及方法
EP3483883A1 (en) * 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio coding and decoding with selective postfiltering
EP3483882A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Controlling bandwidth in encoders and/or decoders
EP3483884A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Signal filtering
WO2019091573A1 (en) * 2017-11-10 2019-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for encoding and decoding an audio signal using downsampling or interpolation of scale parameters
EP3483879A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Analysis/synthesis windowing function for modulated lapped transformation
US10278034B1 (en) 2018-03-20 2019-04-30 Honeywell International Inc. Audio processing system and method using push to talk (PTT) audio attributes
WO2020164753A1 (en) 2019-02-13 2020-08-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decoder and decoding method selecting an error concealment mode, and encoder and encoding method
WO2020207593A1 (en) * 2019-04-11 2020-10-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio decoder, apparatus for determining a set of values defining characteristics of a filter, methods for providing a decoded audio representation, methods for determining a set of values defining characteristics of a filter and computer program
CN111554309A (zh) * 2020-05-15 2020-08-18 腾讯科技(深圳)有限公司 一种语音处理方法、装置、设备及存储介质
CN113763973A (zh) * 2021-04-30 2021-12-07 腾讯科技(深圳)有限公司 音频信号增强方法、装置、计算机设备和存储介质
CN112992160B (zh) * 2021-05-08 2021-07-27 北京百瑞互联技术有限公司 一种音频错误隐藏方法及装置
CN114613372B (zh) * 2022-02-21 2022-10-18 北京富通亚讯网络信息技术有限公司 一种音频传输抗丢包的错误隐藏技术方法

Family Cites Families (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5615298A (en) 1994-03-14 1997-03-25 Lucent Technologies Inc. Excitation signal synthesis during frame erasure or packet loss
JPH1091194A (ja) 1996-09-18 1998-04-10 Sony Corp 音声復号化方法及び装置
US6188980B1 (en) * 1998-08-24 2001-02-13 Conexant Systems, Inc. Synchronized encoder-decoder frame concealment using speech coding parameters including line spectral frequencies and filter coefficients
AU4201100A (en) 1999-04-05 2000-10-23 Hughes Electronics Corporation Spectral phase modeling of the prototype waveform components for a frequency domain interpolative speech codec system
DE19921122C1 (de) 1999-05-07 2001-01-25 Fraunhofer Ges Forschung Verfahren und Vorrichtung zum Verschleiern eines Fehlers in einem codierten Audiosignal und Verfahren und Vorrichtung zum Decodieren eines codierten Audiosignals
JP4464488B2 (ja) 1999-06-30 2010-05-19 パナソニック株式会社 音声復号化装置及び符号誤り補償方法、音声復号化方法
JP3804902B2 (ja) 1999-09-27 2006-08-02 パイオニア株式会社 量子化誤差補正方法及び装置並びにオーディオ情報復号方法及び装置
US6757654B1 (en) 2000-05-11 2004-06-29 Telefonaktiebolaget Lm Ericsson Forward error correction in speech coding
JP2002014697A (ja) 2000-06-30 2002-01-18 Hitachi Ltd ディジタルオーディオ装置
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
US7447639B2 (en) 2001-01-24 2008-11-04 Nokia Corporation System and method for error concealment in digital audio transmission
US7308406B2 (en) 2001-08-17 2007-12-11 Broadcom Corporation Method and system for a waveform attenuation technique for predictive speech coding based on extrapolation of speech waveform
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
FR2846179B1 (fr) 2002-10-21 2005-02-04 Medialive Embrouillage adaptatif et progressif de flux audio
US6985856B2 (en) * 2002-12-31 2006-01-10 Nokia Corporation Method and device for compressed-domain packet loss concealment
JP2004361731A (ja) 2003-06-05 2004-12-24 Nec Corp オーディオ復号装置及びオーディオ復号方法
US20070067166A1 (en) 2003-09-17 2007-03-22 Xingde Pan Method and device of multi-resolution vector quantilization for audio encoding and decoding
KR100587953B1 (ko) * 2003-12-26 2006-06-08 한국전자통신연구원 대역-분할 광대역 음성 코덱에서의 고대역 오류 은닉 장치 및 그를 이용한 비트스트림 복호화 시스템
CA2457988A1 (en) * 2004-02-18 2005-08-18 Voiceage Corporation Methods and devices for audio compression based on acelp/tcx coding and multi-rate lattice vector quantization
WO2006009074A1 (ja) * 2004-07-20 2006-01-26 Matsushita Electric Industrial Co., Ltd. 音声復号化装置および補償フレーム生成方法
US20070147518A1 (en) * 2005-02-18 2007-06-28 Bruno Bessette Methods and devices for low-frequency emphasis during audio compression based on ACELP/TCX
US8355907B2 (en) * 2005-03-11 2013-01-15 Qualcomm Incorporated Method and apparatus for phase matching frames in vocoders
US8255207B2 (en) * 2005-12-28 2012-08-28 Voiceage Corporation Method and device for efficient frame erasure concealment in speech codecs
US8798172B2 (en) 2006-05-16 2014-08-05 Samsung Electronics Co., Ltd. Method and apparatus to conceal error in decoded audio signal
WO2008007698A1 (fr) 2006-07-12 2008-01-17 Panasonic Corporation Procédé de compensation des pertes de blocs, appareil de codage audio et appareil de décodage audio
DE602007004502D1 (de) 2006-08-15 2010-03-11 Broadcom Corp Neuphasierung des status eines dekodiergerätes nach einem paketverlust
JP2008058667A (ja) * 2006-08-31 2008-03-13 Sony Corp 信号処理装置および方法、記録媒体、並びにプログラム
EP2080194B1 (fr) * 2006-10-20 2011-12-07 France Telecom Attenuation du survoisement, notamment pour la generation d'une excitation aupres d'un decodeur, en absence d'information
FR2907586A1 (fr) 2006-10-20 2008-04-25 France Telecom Synthese de blocs perdus d'un signal audionumerique,avec correction de periode de pitch.
KR101292771B1 (ko) 2006-11-24 2013-08-16 삼성전자주식회사 오디오 신호의 오류은폐방법 및 장치
KR100862662B1 (ko) 2006-11-28 2008-10-10 삼성전자주식회사 프레임 오류 은닉 방법 및 장치, 이를 이용한 오디오 신호복호화 방법 및 장치
CN101207468B (zh) 2006-12-19 2010-07-21 华为技术有限公司 丢帧隐藏方法、系统和装置
GB0704622D0 (en) * 2007-03-09 2007-04-18 Skype Ltd Speech coding system and method
CN100524462C (zh) 2007-09-15 2009-08-05 华为技术有限公司 对高带信号进行帧错误隐藏的方法及装置
CN101399040B (zh) * 2007-09-27 2011-08-10 中兴通讯股份有限公司 一种帧错误隐藏的谱参数替换方法
US8527265B2 (en) * 2007-10-22 2013-09-03 Qualcomm Incorporated Low-complexity encoding/decoding of quantized MDCT spectrum in scalable speech and audio codecs
US8515767B2 (en) * 2007-11-04 2013-08-20 Qualcomm Incorporated Technique for encoding/decoding of codebook indices for quantized MDCT spectrum in scalable speech and audio codecs
KR100998396B1 (ko) 2008-03-20 2010-12-03 광주과학기술원 프레임 손실 은닉 방법, 프레임 손실 은닉 장치 및 음성송수신 장치
CN101588341B (zh) * 2008-05-22 2012-07-04 华为技术有限公司 一种丢帧隐藏的方法及装置
EP2144231A1 (en) 2008-07-11 2010-01-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Low bitrate audio encoding/decoding scheme with common preprocessing
AU2009267459B2 (en) 2008-07-11 2014-01-23 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder, methods for encoding and decoding an audio signal, audio stream and computer program
EP2144230A1 (en) 2008-07-11 2010-01-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Low bitrate audio encoding/decoding scheme having cascaded switches
DE102008042579B4 (de) * 2008-10-02 2020-07-23 Robert Bosch Gmbh Verfahren zur Fehlerverdeckung bei fehlerhafter Übertragung von Sprachdaten
US8706479B2 (en) 2008-11-14 2014-04-22 Broadcom Corporation Packet loss concealment for sub-band codecs
CN101958119B (zh) * 2009-07-16 2012-02-29 中兴通讯股份有限公司 一种改进的离散余弦变换域音频丢帧补偿器和补偿方法
US9076439B2 (en) 2009-10-23 2015-07-07 Broadcom Corporation Bit error management and mitigation for sub-band coding
US8321216B2 (en) * 2010-02-23 2012-11-27 Broadcom Corporation Time-warping of audio signals for packet loss concealment avoiding audible artifacts
US9263049B2 (en) * 2010-10-25 2016-02-16 Polycom, Inc. Artifact reduction in packet loss concealment
CA2827000C (en) * 2011-02-14 2016-04-05 Jeremie Lecomte Apparatus and method for error concealment in low-delay unified speech and audio coding (usac)
EP2862166B1 (en) 2012-06-14 2018-03-07 Dolby International AB Error concealment strategy in a decoding system
US9830920B2 (en) 2012-08-19 2017-11-28 The Regents Of The University Of California Method and apparatus for polyphonic audio signal prediction in coding and networking systems
US9406307B2 (en) 2012-08-19 2016-08-02 The Regents Of The University Of California Method and apparatus for polyphonic audio signal prediction in coding and networking systems
CN105453173B (zh) 2013-06-21 2019-08-06 弗朗霍夫应用科学研究促进协会 利用改进的脉冲再同步化的似acelp隐藏中的自适应码本的改进隐藏的装置及方法
SG11201510463WA (en) 2013-06-21 2016-01-28 Fraunhofer Ges Forschung Apparatus and method for improved concealment of the adaptive codebook in acelp-like concealment employing improved pitch lag estimation
CN104282309A (zh) 2013-07-05 2015-01-14 杜比实验室特许公司 丢包掩蔽装置和方法以及音频处理系统
PT3285255T (pt) 2013-10-31 2019-08-02 Fraunhofer Ges Forschung Descodificador de áudio e método para fornecer uma informação de áudio descodificada utilizando uma ocultação de erro baseada num sinal de excitação no domínio de tempo
JP6306177B2 (ja) 2013-10-31 2018-04-04 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 時間ドメイン励振信号を修正するエラーコンシールメントを用いて、復号化されたオーディオ情報を提供する、オーディオデコーダおよび復号化されたオーディオ情報を提供する方法
EP3230980B1 (en) 2014-12-09 2018-11-28 Dolby International AB Mdct-domain error concealment

Also Published As

Publication number Publication date
HK1251349B (zh) 2020-07-03
JP2016539360A (ja) 2016-12-15
PL3285255T3 (pl) 2019-10-31
CA2984573C (en) 2020-01-14
CA2984532A1 (en) 2015-05-07
ES2739477T3 (es) 2020-01-31
CN105765651B (zh) 2019-12-10
US20160379649A1 (en) 2016-12-29
US20160379651A1 (en) 2016-12-29
KR20180023063A (ko) 2018-03-06
CA2929012A1 (en) 2015-05-07
AU2017265062B2 (en) 2019-01-17
RU2678473C2 (ru) 2019-01-29
US10269359B2 (en) 2019-04-23
SG11201603429SA (en) 2016-05-30
EP3285256B1 (en) 2019-06-26
US20180114533A1 (en) 2018-04-26
AU2017265062A1 (en) 2017-12-14
AU2017265038B2 (en) 2019-01-17
HK1251348B (zh) 2020-04-24
US20160247506A1 (en) 2016-08-25
CA2984562A1 (en) 2015-05-07
TW201521016A (zh) 2015-06-01
US10381012B2 (en) 2019-08-13
CA2984535C (en) 2020-10-27
AU2017265060A1 (en) 2017-12-14
PT3285254T (pt) 2019-07-09
CA2984535A1 (en) 2015-05-07
US10373621B2 (en) 2019-08-06
TWI569261B (zh) 2017-02-01
JP6306175B2 (ja) 2018-04-04
CA2984532C (en) 2020-01-14
KR20160079056A (ko) 2016-07-05
KR101957906B1 (ko) 2019-03-13
AU2014343904B2 (en) 2017-12-14
MX356334B (es) 2018-05-23
US10262662B2 (en) 2019-04-16
KR20180026551A (ko) 2018-03-12
PL3285254T3 (pl) 2019-09-30
AU2014343904A1 (en) 2016-06-09
ZA201603528B (en) 2017-11-29
CA2984573A1 (en) 2015-05-07
EP3285256A1 (en) 2018-02-21
MX2016005535A (es) 2016-07-12
AU2017265032B2 (en) 2019-01-17
PT3063760T (pt) 2018-03-22
ES2746034T3 (es) 2020-03-04
AU2017265060B2 (en) 2019-01-31
PL3288026T3 (pl) 2020-11-02
ES2659838T3 (es) 2018-03-19
BR112016009819B1 (pt) 2022-03-29
PT3285255T (pt) 2019-08-02
EP3285254B1 (en) 2019-04-03
PL3285256T3 (pl) 2020-01-31
AU2017265038A1 (en) 2017-12-07
EP3063760A1 (en) 2016-09-07
HK1251710A1 (zh) 2019-02-01
PL3063760T3 (pl) 2018-05-30
EP3063760B1 (en) 2017-12-13
US10269358B2 (en) 2019-04-23
RU2016121172A (ru) 2017-12-05
CA2929012C (en) 2020-06-09
KR101854297B1 (ko) 2018-06-08
EP3285255A1 (en) 2018-02-21
PT3285256T (pt) 2019-09-30
EP3285255B1 (en) 2019-05-01
SG10201609234QA (en) 2016-12-29
AU2017265032A1 (en) 2017-12-07
KR101981548B1 (ko) 2019-05-23
BR112016009819A2 (es) 2017-08-01
TR201802808T4 (tr) 2018-03-21
SG10201609235UA (en) 2016-12-29
CA2984562C (en) 2020-01-14
US20160379652A1 (en) 2016-12-29
US20160379650A1 (en) 2016-12-29
EP3288026B1 (en) 2020-04-29
PT3288026T (pt) 2020-07-20
EP3285254A1 (en) 2018-02-21
ES2805744T3 (es) 2021-02-15
CN105765651A (zh) 2016-07-13
MY178139A (en) 2020-10-05
WO2015063044A1 (en) 2015-05-07
KR20180026552A (ko) 2018-03-12
KR101957905B1 (ko) 2019-03-13
EP3288026A1 (en) 2018-02-28
US10283124B2 (en) 2019-05-07

Similar Documents

Publication Publication Date Title
ES2732952T3 (es) Decodificador de audio y procedimiento para proporcionar una información de audio decodificada usando un ocultamiento de error basado en una señal de excitación en el dominio del tiempo
ES2755166T3 (es) Decodificador de audio y método para proporcionar una información de audio decodificada usando una ocultación de error que modifica una señal de excitación de dominio de tiempo