ES2280370T3 - Metodos para cambiar el tamaño de una memoria intermedia de fluctuacion y para la alineacion temporal, un sistema de comunicaciones, un extremo receptor, y un transcodificador. - Google Patents

Metodos para cambiar el tamaño de una memoria intermedia de fluctuacion y para la alineacion temporal, un sistema de comunicaciones, un extremo receptor, y un transcodificador. Download PDF

Info

Publication number
ES2280370T3
ES2280370T3 ES01931645T ES01931645T ES2280370T3 ES 2280370 T3 ES2280370 T3 ES 2280370T3 ES 01931645 T ES01931645 T ES 01931645T ES 01931645 T ES01931645 T ES 01931645T ES 2280370 T3 ES2280370 T3 ES 2280370T3
Authority
ES
Spain
Prior art keywords
buffer
fluctuation
size
audio data
data
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.)
Expired - Lifetime
Application number
ES01931645T
Other languages
English (en)
Inventor
Antti Kurittu
Olli Kirla
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.)
Nokia Oyj
Original Assignee
Nokia Oyj
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 Nokia Oyj filed Critical Nokia Oyj
Application granted granted Critical
Publication of ES2280370T3 publication Critical patent/ES2280370T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/18Service support devices; Network management devices
    • H04W88/181Transcoding devices; Rate adaptation devices
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/04Time compression or expansion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/062Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
    • H04J3/0632Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES]

Abstract

Método para cambiar el tamaño de una memoria intermedia de fluctuación (116; 126; 136), utilizándose dicha memoria intermedia de fluctuación (116; 126; 136) en un extremo receptor de un sistema de comunicaciones que incluye una red por paquetes (113; 123; 133) para almacenar temporalmente paquetes recibidos que contienen datos de audio con vistas a permitir una compensación de retardos variables de dichos paquetes recibidos, caracterizado porque presenta las siguientes etapas: - determinar si se debería aumentar o reducir el tamaño actual de una memoria intermedia de fluctuación evaluando el retardo global actual y la fluctuación en los paquetes recibidos; y - en el caso de que se determine que el tamaño actual de la memoria intermedia de fluctuación se va a aumentar, aumentar el tamaño de la memoria intermedia de fluctuación y compensar el espacio vacío resultante de la memoria intermedia de fluctuación generando datos adicionales sobre la base de datos de audio contenidos en paquetes recibidos.

Description

Métodos para cambiar el tamaño de una memoria intermedia de fluctuación y para la alineación temporal, un sistema de comunicaciones, un extremo receptor, y un transcodificador.
Campo de la invención
La presente invención se refiere a un método para cambiar el tamaño de una memoria intermedia de fluctuación, utilizándose dicha memoria intermedia de fluctuación en un extremo receptor de un sistema de comunicaciones que incluye una red por paquetes para almacenar temporalmente paquetes recibidos que contienen datos de audio con vistas a permitir una compensación de retardos variables de dichos paquetes recibidos. Por otra parte, la invención se refiere al sistema de comunicaciones mencionado, al extremo receptor mencionado y a medios de procesado para dicho extremo receptor.
Antecedentes de la invención
Uno de los ejemplos de una red por paquetes es una red de voz por IP (VoIP).
La telefonía IP o voz por IP (VoIP) permite que los usuarios transmitan señales de audio tales como voz a través del Protocolo de Internet. El envío de voz a través de internet se realiza insertando muestras de voz o voz comprimida en paquetes. A continuación, los paquetes se encaminan de forma independientemente mutua hacia su destino según la dirección IP incluida en cada paquete.
Uno de los inconvenientes de la telefonía IP es la disponibilidad y el rendimiento de las redes. Aunque las redes locales pudieran ser estables y predecibles, Internet con frecuencia está congestionada y no existe ninguna garantía de que los paquetes no se pierdan o sufran un retardo significativo. Los paquetes perdidos y los retardos largos tienen un efecto inmediato sobre la calidad de la voz, la reciprocidad y el ritmo de la conversación.
Por otra parte, debido al encaminamiento independiente de los paquetes, los mismos tardan tiempos diferentes en pasar a través de la red. A la variación en los tiempos de llegada de los paquetes se le denomina fluctuación. No obstante, para reproducir la voz correctamente en el extremo receptor, los paquetes deben estar en el orden de transmisión y con el mismo espaciamiento entre ellos. Para cumplir este requisito, se puede utilizar una memoria intermedia de fluctuación. La memoria intermedia de fluctuación se puede ubicar antes o después de un decodificador usado en el extremo receptor para decodificar la voz que se codificó para la transmisión. A continuación, en la memoria intermedia de fluctuación se puede garantizar el orden correcto de los paquetes comprobando los números de secuencia contenidos en los mismos. Además se pueden usar indicaciones de tiempo incluidas del mismo modo para determinar el nivel de fluctuación en la red y para compensar la fluctuación en la reproducción.
No obstante, el tamaño de la memoria intermedia de fluctuación tiene un efecto adverso sobre el número de paquetes que se pierden y sobre el retardo de extremo-a-extremo. Si la memoria intermedia de fluctuación es muy pequeña, se pierden muchos paquetes ya que los mismos llegan después de su punto de reproducción. Por otro lado, si la memoria intermedia de fluctuación es muy grande se produce un retardo excesivo de extremo-a-extremo. Tanto la pérdida de paquetes como el retardo de extremo-a-extremo tienen un efecto sobre la calidad de la voz. Por esta razón, el tamaño de la memoria intermedia de fluctuación debe tener como resultado un valor aceptable tanto para la pérdida de paquetes como para el retardo. Como ambas características pueden variar en el tiempo, deben utilizarse memorias intermedias de fluctuación adaptativas para poder garantizar continuamente una solución de compromiso satisfactoria para los dos factores. El tamaño de una memoria intermedia de fluctuación adaptativa se puede cambiar basándose en retardos medidos de paquetes de voz recibidos y en variaciones de retardo medidas entre paquetes de voz recibidos.
Los métodos conocidos ajustan el tamaño de la memoria intermedia de fluctuación en el comienzo de una secuencia hablada. En el comienzo de una secuencia hablada y por lo tanto al final de una pausa de la voz, la voz reproducida no se ve afectada por el ajuste del tamaño de la memoria intermedia de fluctuación. No obstante, esto significa que el ajuste se debe retrasar hasta que se produzca el comienzo de una secuencia hablada y que es necesario un detector de actividad vocal (VAD). Dichos métodos se describen, por ejemplo, en "An algorithm for playout of packet voice based on adaptive adjustment of talkspurt silence periods", LCN'99, Conference on Local Computer Networks, 1999, páginas 224 a 231, de J. Pinto y K.J. Christensen, y en "Adaptive playout mechanisms for packetized audio applications in wide-area networks", INFOCOM'94, 13ª Proceedings IEEE Networking for Global Communications, 1994, páginas 680 a 688, vol. 2, de R. Ramjee, J. Kurose, D. Towsley y H. Schulzrinne.
Puede surgir un problema similar con memorias intermedias de fluctuación, por ejemplo, en redes de voz por ATM.
Por otra parte, puede surgir un problema similar durante la alineación temporal en los sistemas GSM (sistema global para comunicaciones móviles) o 3G (tercera generación). En los sistemas de radiocomunicaciones como el GSM o un sistema 3G, la interfaz aérea requiere una sincronización ajustada entre la transmisión de enlace ascendente y de enlace descendente. No obstante, en el inicio de una llamada o después de un traspaso, el desplazamiento de fase inicial entre la estructuración de las tramas de enlace ascendente y de enlace descendente en un transcodificador usado en el lado red para codificar datos para transmisiones de enlace descendente y decodificar datos provenientes de transmisiones de enlace ascendente es diferente con respecto al desplazamiento de fase correspondiente en la interfaz de radiocomunicaciones. Este desplazamiento de fase también se puede observar en el desplazamiento de fase únicamente de la estructuración de tramas de enlace descendente en el transcodificador y en una interfaz de radiocomunicaciones del sistema de radiocomunicaciones. Por esta razón, es necesario un almacenamiento temporal de enlace descendente para alcanzar una sincronización correcta para la interfaz aérea, incluyéndose la memoria intermedia correspondiente, en el GSM, en una estación base y, en las redes 3G, en un controlador de red de radiocomunicaciones (RNC) del sistema de comunicaciones. El almacenamiento intermedio conduce a un retardo adicional de hasta una trama de voz en la estación base en la dirección de enlace descendente. Para minimizar este retardo de almacenamiento temporal, en el lado red se puede utilizar un procedimiento de alineación temporal. La alineación temporal se usa para alinear el desplazamiento de fase en la estructuración de tramas del transcodificador y de este modo minimizar el retardo por almacenamiento temporal después de un establecimiento de llamada o un traspaso. Durante la alineación temporal, la estación base o el controlador de red de radiocomunicaciones solicita al transcodificador que lleve a cabo una alineación temporal deseada. En la alineación temporal, es necesario adelantar o retrasar el instante de tiempo de transmisión de una trama de voz codificada y las tramas sucesivas. De este modo, la ventana (una trama de voz) de la memoria intermedia de entrada de muestras lineales situada antes del codificador se debe deslizar en la dirección deseada en la cantidad de muestras solicitada por la estación base. En la actualidad, la alineación temporal se lleva a cabo descartando o repitiendo muestras de voz, lo cual conduce a un deterioro de la calidad de la
voz.
La patente US nº 5.825.771 A presenta un sistema de comunicaciones que incluye una red por paquetes, en la que un extremo receptor utiliza una memoria intermedia para almacenar temporalmente paquetes recibidos que contienen datos de audio con vistas a permitir una compensación de retardos variables de los paquetes recibidos.
Sumario de la invención
Un objetivo de un primer aspecto de la invención es permitir una adaptación más rápida del tamaño de una memoria intermedia de fluctuación a las condiciones variables de las transmisiones de voz por IP.
La invención se especifica en las reivindicaciones adjuntas.
La invención tiene su origen en la idea de que el tamaño de una memoria intermedia de fluctuación se podría adaptar de forma inmediata a las condiciones de transmisión de cada momento, es decir, por ejemplo también durante transmisiones de audio en curso tales como voz activa, si se compensa un espacio vacío que dé como resultado un aumento de la memoria intermedia de fluctuación. Según la invención, esta situación se alcanza creando datos adicionales sobre la base de los datos existentes siempre que se deba incrementar el tamaño de la memoria intermedia de fluctuación.
Por lo tanto, una de las ventajas de la invención es que permite de una manera sencilla una adaptación más rápida a las condiciones de transmisión que están cambiando. De forma más específica, el tamaño de la memoria intermedia de fluctuación se puede cambiar inmediatamente después de que se haya tomado la decisión de que es necesario un aumento del tamaño de la memoria intermedia de fluctuación, en lugar de esperar a una pausa en el audio.
La red por paquetes puede ser particularmente una red de protocolo de voz por internet o de voz por ATM.
De forma ventajosa, aunque no necesaria, siempre que se haya determinado que se debe reducir el tamaño actual de la memoria intermedia de fluctuación, el tamaño de la memoria intermedia de fluctuación se reduce adicionalmente condensando por lo menos parte de los datos de audio que estén presentes en ese momento en la memoria intermedia de fluctuación. En el caso de que también se realice de este modo una reducción de la memoria intermedia de fluctuación sin esperar a una pausa en la voz, no es necesario ningún detector de actividad vocal, puesto que ya no se requiere detectar pausas de voz.
Existe una variedad de posibilidades para expandir o contraer los datos existentes de la memoria intermedia de fluctuación con vistas a compensar un aumento o reducción del tamaño de la memoria intermedia de fluctuación. Básicamente se presentarán cinco formas de realización preferidas.
En una primera forma de realización preferida de la invención para aumentar el tamaño de la memoria intermedia de fluctuación, se utiliza algún método conocido de gestión de tramas defectuosas para aumentar el tamaño de la memoria intermedia de fluctuación, es decir, un espacio vacío de la memoria intermedia de fluctuación se trata como si los paquetes correspondientes se hubieran perdido durante la transmisión, siendo necesario ocultar dicha
pérdida.
En particular, para aumentar el tamaño de la memoria intermedia de fluctuación se puede utilizar el manejador de tramas defectuosas definido en la Recomendación ITU-T G.711, Apéndice I: "A high quality low-complexity algorithm for packet loss concealment with G.711", septiembre de 1999. Este manejador de tramas defectuosas utiliza una duplicación de formas de onda de altura tonal. Las duplicaciones de las formas de onda de altura tonal se basan en la naturaleza casi periódica de las señales de audio sonoras, lo cual significa que es probable que los contenidos de paquetes consecutivos sean parecidos entre ellos. De este modo, un hueco se puede llenar duplicando uno o más periodos de altura tonal de paquetes anteriores.
Para garantizar una transición uniforme entre la señal de audio real y la sintetizada, se puede sumar por superposición un número predeterminado de muestras de la señal de audio real y la sintetizada. Por la misma razón, se pueden sumar por superposición formas de onda repetidas de longitud de un periodo de altura tonal.
Si el tamaño de la memoria intermedia de fluctuación se incrementa en muchos paquetes de una sola vez, los fonemas se alargan hasta un nivel antinatural. Para compensar este efecto, el incremento del tamaño de la memoria intermedia de fluctuación se podría distribuir en varios incrementos pequeños de solamente un paquete añadido cada vez. Esto haría que aumentase la variación de la señal, ya que la síntesis de un paquete se realizaría a partir de dos paquetes válidos en lugar de sintetizar todos los paquetes requeridos de la memoria intermedia de altura tonal, dando como resultado una mejor calidad sonora. No obstante, cuando se incrementa la memoria intermedia de fluctuación en pasos pequeños, no es posible responder a retardos variables de la red de una forma tan rápida como con la producción de muchos paquetes sintetizados de una sola vez. Por esta razón, se propone que cuando se deba incrementar el tamaño de la memoria intermedia de fluctuación en varios paquetes, mejor que se generen todos los paquetes de una sola vez y que los datos resultantes se atenúen para evitar que la calidad sonora se deteriore.
En una primera forma de realización preferida de la invención para reducir el tamaño de la memoria intermedia de fluctuación, se superponen dos tramas seleccionadas, descartándose las tramas que quedan en medio. Las tramas que se superponen se seleccionan en una distancia con la cual se pueda alcanzar la reducción deseada del tamaño de la memoria intermedia de fluctuación. En caso de que se deba alcanzar una reducción de solamente una trama, se seleccionan dos tramas consecutivas. Esta forma de realización da como resultado una implementación sencilla que requiere un poder de cálculo reducido.
De forma ventajosa, la primera trama en el tiempo usada para la superposición se multiplica en primer lugar por una función de rampa descendente y la segunda trama en el tiempo usada para la superposición se multiplica en primer lugar por una función de rampa ascendente. A continuación, para llevar a cabo la superposición, los productos se suman.
Una segunda y una tercera formas de realización preferidas de la invención para aumentar y reducir el tamaño de una memoria intermedia de fluctuación se basan en un escalado temporal, el cual permite estirar o comprimir un segmento seleccionado de datos en una memoria intermedia.
En la segunda forma de realización preferida, se utiliza un escalado temporal en el dominio del tiempo.
En los métodos de cambio del tamaño de la memoria intermedia de fluctuación que se basan en el escalado temporal en el dominio del tiempo, en primer lugar se seleccionan datos de entre los datos recibidos que se van a usar para el escalado temporal. A continuación, se usa algún método de escalado temporal para escalar en el tiempo la parte seleccionada de voz. A continuación, esta señal nueva escalada en el tiempo se puede usar para sustituir por lo menos parte de la señal seleccionada en primer lugar, compensando de este modo el cambio del tamaño de la memoria intermedia de fluctuación.
Un método de escalado temporal en el dominio del tiempo de buena calidad y con un poder de cálculo reducido es la Adición con Superposición Basada en la Similitud con la Forma de Onda (WSOLA), la cual fue descrita por ejemplo por W. Verhelst y M. Roelands en "An overlap-add technique based on waveform similarity (WSOLA) for high quality time-scale modification of speech", ICASSP-93; IEEE International Conference on Acoustics, Speech, and Signal Processing, 1993, Volumen 2, páginas 554 a 557. El método de Adición con Superposición Basada en la Similitud con Forma de Onda se basa en la construcción de una forma de onda obtenida por síntesis que mantiene una similitud local máxima con la señal original. La forma de onda obtenida por síntesis y la forma de onda original presentan una similitud máxima en torno a instantes de tiempo especificados por una función de alabeo (warping) en el tiempo.
El método de escalado en el dominio temporal se puede usar para realizar expansiones o compresiones en la escala temporal y por lo tanto para aumentar o reducir el tamaño utilizado de una memoria intermedia de fluctuación.
En la transición desde los datos escalados temporalmente a los datos siguientes, puede que el periodo de la altura tonal no se corresponda con el periodo original de la altura tonal. Para reducir este efecto de desadaptaciones de fase entre los datos escalados temporalmente y los datos reales siguientes, el escalado temporal se puede ampliar durante una longitud predeterminada, preferentemente durante una longitud adicional de 1/2 paquete. La ampliación de la señal escalada temporalmente la cual no es necesaria para sustituir datos de audio recibidos en la memoria intermedia de fluctuación se superpone con los datos reales siguientes.
Según la tercera forma de realización preferida, se utiliza un escalado temporal en el dominio de la frecuencia para generar datos adicionales o para condensar los datos existentes.
En un escalado temporal en el dominio de la frecuencia, en primer lugar a las partes de los datos originales sometidas a ventanaje con superposición se les aplica la transformada de Fourier. A continuación, se aplica una modificación por escalado temporal. La modificación depende por un lado de si se va a compensar un aumento o una reducción del tamaño de la memoria intermedia de fluctuación. Por otro lado depende de la magnitud del aumento o reducción. Después de la modificación por escalado temporal, a los datos a los que se ha aplicado la transformada de Fourier, modificados por escalada temporal, se les aplican transformadas inversas de Fourier. Debido a la modificación por escalado temporal, la distancia entre las ventanas de análisis aplicadas a los datos originales es diferente con respecto a la distancia entre las ventanas de síntesis que dan como resultado la transformada inversa de Fourier. Por lo tanto, dependiendo de la modificación por escalado temporal, los datos resultantes se expanden o comprimen en comparación con los datos originales. Por esta razón, este método también se puede usar en la misma proporción para añadir y para eliminar datos con vistas a un aumento o una reducción del tamaño utilizado de una memoria intermedia de fluctuación.
En particular, para la tercera forma de realización preferida de la invención se puede usar un método de modificación por escalado temporal con vocoder de fase descrito por ejemplo en "Applications of Digital Signal Processing to Audio and Acoustics", Kluver Academic Pub; ISBN: 0792381300, 1998, de K. Brandenburg y M. Kahrs. Este método se basa en el cálculo de las transformadas de Fourier de tiempo corto (STFT) de una señal de voz.
Aunque las tras primeras formas de realización preferidas de la invención, antes presentadas, se basan en señales de audio decodificadas, la invención se puede utilizar en una cuarta forma de realización preferida con codificación paramétrica de las señales de audio. En este caso, el tamaño de la memoria intermedia de fluctuación se puede aumentar según un tratamiento conocido de las tramas defectuosas. El mismo se puede llevar a cabo, por ejemplo, con un manejador de tramas defectuosas del codificador.
Uno de los ejemplos de un manejador de tramas defectuosas que se podría utilizar en la cuarta forma de realización preferida de la invención es la ocultación de errores en el códec de Velocidad Completa Mejorada (EFR) descrito en "Substitution and muting of lost frames for Enhanced Full Rate (EFR) speech traffic channels (GSM 06.61 version 8.0.0. Release 1999). Digital cellular telecommunications system (Phase 2+)", ETSI EN 300 727 v.8.0.0, marzo de 2000, el cual se usa en el GSM. Este documento especifica un procedimiento de sustitución y silenciamiento de tramas (paquetes) para una o más tramas perdidas consecutivas. Si se aplica a tramas vacías resultantes de un aumento del tamaño de la memoria intermedia de fluctuación, la primera trama vacía se sustituye mediante la repetición de la última trama recibida antes de la trama vacía. Si se debiera insertar más de una trama vacía consecutiva, la sustitución se realizará copiando la última trama recibida por cada trama que falte y reduciendo el nivel de salida en 3 dB/trama. El escalado del nivel de salida se realiza escalando las ganancias de los libros de códigos y modificando los parámetros LSF.
Si el tamaño de la memoria intermedia de fluctuación se debe reducir con una codificación paramétrica de las señales de audio, se descarta un cierto número de tramas. Los parámetros de ganancia y los coeficientes de Codificación Predictiva Lineal (LPC) de las tramas situadas en torno a la trama o tramas descartadas se pueden modificar para combinar uniformemente las tramas que se encuentran en torno a la trama o tramas descartadas. Alternativamente, la trama o tramas se pueden descartar sin ninguna rectificación posterior.
La quinta forma de realización preferida para aumentar y reducir el tamaño de la memoria intermedia de fluctuación también está destinada a la codificación paramétrica de datos de audio.
En la quinta forma de realización preferida para aumentar el tamaño de la memoria intermedia de fluctuación, se interpolan datos adicionales a partir de datos de audio codificados paramétricamente adyacentes. En la quinta forma de realización preferida para reducir el tamaño de la memoria intermedia de fluctuación, los datos de audio codificados paramétricamente contenidos se reducen interpolando datos de audio seleccionados para obtener una cantidad menor de datos de audio. Los datos de audio seleccionados pueden ser adyacentes o pueden estar separados, en cuyo caso los datos situados entre los datos seleccionados se descartan.
Sobre los datos de audio codificados paramétricamente también se puede utilizar un escalado temporal.
Aunque se han presentado cinco formas de realización básicas preferidas de la invención diferentes, dentro del alcance de la invención se incluyen numerosas formas de realización alternativas o modificadas. En particular, la invención se puede realizar basándose en cualquier otro método adecuado de escalado temporal y/o de gestión de tramas defectuosas para compensar un cambio del tamaño de la memoria intermedia de fluctuación.
Por ejemplo, si se va a utilizar un escalado temporal, se puede utilizar un primer método de escalado temporal para una expansión de la escala temporal y otro método para una compresión de la escala temporal.
Aunque el aumento del tamaño de la memoria intermedia de fluctuación se lleva a cabo de forma preferente inmediatamente después de que se haya determinado que es necesario un aumento, una reducción requerida del tamaño de la memoria intermedia de fluctuación se puede posponer hasta que aparezca una pausa en la voz, en caso de que esté disponible un Detector de Actividad Vocal, ya que la reducción del tamaño de la memoria intermedia de fluctuación no es tan crítica en relación con el tiempo como el aumento del tamaño de la memoria intermedia de fluctuación.
Si se usa un método de gestión de tramas defectuosas, se puede usar un manejador existente de tramas defectuosas para tratar adicionalmente los cambios del tamaño de la memoria intermedia de fluctuación.
Breve descripción de las figuras
A continuación se explica más detalladamente la invención haciendo referencia a los dibujos, en los cuales
la Fig. 1 ilustra el principio de funcionamiento de tres formas de realización de la invención para cambiar el tamaño de una memoria intermedia de fluctuación;
la Fig. 2 muestra diagramas que ilustran un aumento del tamaño de la memoria intermedia de fluctuación según la primera forma de realización de la invención basada en un método de gestión de tramas defectuosas;
la Fig. 3 muestran diagramas que ilustran una reducción del tamaño de la memoria intermedia de fluctuación según la primera forma de realización de la invención;
la Fig. 4 muestra diagramas que ilustran el principio de funcionamiento de un escalado temporal en el dominio del tiempo de acuerdo con una segunda forma de realización de la invención;
la Fig. 5 es un diagrama de flujo de la segunda forma de realización de la invención;
la Fig. 6 muestra diagramas que ilustran adicionalmente la segunda forma de realización de la invención;
la Fig. 7 muestra diagramas que ilustran el principio de funcionamiento de una tercera forma de realización de la invención basada en un escalado temporal en el dominio de la frecuencia;
la Fig. 8 es un diagrama de flujo de la tercera forma de realización de la invención;
la Fig. 9 muestra señales de la memoria intermedia de fluctuación antes y después del escalado temporal según la tercera forma de realización de la invención;
la Fig. 10 es un diagrama de flujo que ilustra una cuarta forma de realización de la invención para cambiar el tamaño de una memoria intermedia de fluctuación en el dominio paramétrico;
la Fig. 11 muestra esquemáticamente una parte de un primer sistema en el cual se puede utilizar la invención;
la Fig. 12 muestra esquemáticamente una parte de un segundo sistema en el cual se puede utilizar la invención; y
la Fig. 13 muestra esquemáticamente una parte de un primer sistema en el cual se puede utilizar la invención.
Descripción detallada de la invención
La figura 1 ilustra los principios básicos de las tres primeras formas de realización de la invención que se presentarán a continuación.
En el lado izquierdo de la figura, se muestra un aumento de un flujo continuo de paquetes, mientras que en el lado izquierdo, se muestra una reducción de un flujo continuo de paquetes. La parte superior de la figura muestra para ambos casos flujos continuos originales, tratándose la parte central para los flujos continuos de los casos según la primera forma de realización de la invención y tratándose la parte inferior para los flujos continuos de los dos casos de acuerdo con la segunda o la tercera forma de realización de la invención.
En la parte izquierda superior de la figura 1, se ilustra un primer flujo continuo de paquetes con ocho paquetes originales 1 a 8 que incluyen datos de voz. Este flujo continuo de paquetes está contenido en una memoria intermedia de fluctuación de un extremo receptor en una red de voz por IP antes de que resulte necesario un aumento del tamaño de la memoria intermedia de fluctuación. En la parte derecha superior de la figura 1, se ilustra un segundo flujo continuo de paquetes con nueve paquetes 9 a 17 que incluyen datos de voz. Este flujo continuo de paquetes está contenido en una memoria intermedia de fluctuación de un extremo receptor en una red de voz por IP antes de que resulte necesaria una reducción del tamaño de la memoria intermedia de fluctuación.
En el lado izquierdo de la parte central de la figura 1, se muestra el primer flujo continuo de paquetes después de un aumento del tamaño de la memoria intermedia de fluctuación. El tamaño de la memoria intermedia de fluctuación se aumentó proporcionando un espacio vacío de longitud un paquete entre el paquete original 4 y el paquete original 5 del flujo continuo de paquetes en la memoria intermedia de fluctuación. Este espacio vacío se llena con un paquete 18 generado según un módulo de gestión de tramas defectuosas BFH tal como se define en el códec G.711 ITU-T antes mencionado, considerándose simplemente el espacio vacío como un paquete perdido. De este modo, el tamaño del flujo continuo original se expande en la longitud de un paquete.
En el lado derecho de la parte central de la figura 1, se muestra por el contrario el segundo flujo continuo de paquetes después de una reducción del tamaño de la memoria intermedia de fluctuación. Dicha reducción se realiza en la primera forma de realización descrita superponiendo dos paquetes consecutivos, en este ejemplo, el paquete original 12 y el paquete original 13 del segundo flujo continuo de paquetes. La superposición reduce en una longitud correspondiente a un paquete el número de muestras de voz contenidas en la memoria intermedia de fluctuación, cuyo tamaño puede reducirse de este modo en la longitud de un paquete.
En el lado izquierdo de la parte inferior de la figura 1, se muestra nuevamente el primer flujo continuo de paquetes después de un aumento del tamaño de la memoria intermedia de fluctuación el cual dio como resultado un espacio vacío de longitud un paquete entre los paquetes originales 4 y 5 del primer flujo continuo de paquetes. No obstante, esta vez los paquetes originales 4 y 5 se escalaron temporalmente en el dominio del tiempo o en el dominio de la frecuencia de acuerdo con la segunda o tercera forma de realización de la invención para llenar el espacio vacío resultante. Esto significa que se expandieron los datos de los paquetes originales 4 y 5 para llenar el espacio de tres paquetes en lugar de dos. De este modo, el tamaño del flujo continuo original se expandió en la longitud correspondiente a un paquete.
Finalmente, en el lado derecho de la parte inferior de la figura 1 se muestra nuevamente el segundo flujo continuo de paquetes después de una reducción del tamaño de la memoria intermedia de fluctuación. La reducción correspondiente del flujo continuo de datos se realizó de acuerdo con la segunda o tercera forma de realización escalando temporalmente los datos de tres paquetes originales hasta la longitud de dos paquetes. En el ejemplo presentado, los datos de los paquetes originales 12 a 14 del segundo flujo continuo de paquetes se condensaron en la longitud de dos paquetes. De este modo, el tamaño del flujo continuo original se redujo en la longitud correspondiente a un paquete.
A continuación se explicarán detalladamente el aumento y la reducción del tamaño de la memoria intermedia de fluctuación según la primera forma de realización de la invención haciendo referencia a las figuras 2 y 3.
La figura 2 se ha extraído de la especificación del Apéndice G.711 ITU-T, en la que se usa para ilustrar la ocultación de paquetes perdidos, aunque en este caso se usa para ilustrar la primera forma de realización de la invención, en la cual se realiza una llamada al manejador de tramas defectuosas de la ITU-T entre paquetes adyacentes para compensar un aumento del tamaño de la memoria intermedia de fluctuación.
La figura 2 muestra tres diagramas los cuales representan gráficamente la amplitud de las señales con respecto al número de muestra de las señales. En el primer diagrama, se muestran las señales introducidas en la memoria intermedia de fluctuación, mientras que un segundo y un tercer diagrama muestran voz sintetizada en dos instantes de tiempo diferentes. Los diagramas ilustran cómo se aumenta el tamaño de la memoria intermedia de fluctuación según la primera forma de realización de la invención correspondiente a un módulo de gestión de tramas defectuosas presentado en el códec G.711 ITU-T antes citado. Tal como se ha mencionado anteriormente, la norma citada describe un método de ocultación de pérdidas de paquetes para el códec G.711 ITU-T basado en la duplicación de formas de onda de altura tonal.
El tamaño de paquete utilizado en esta forma de realización es 20 ms, lo cual se corresponde con 160 muestras. La BFH se modificó para que pudiera usar paquetes de 20 ms.
Los paquetes que han llegado así como los paquetes sintetizados se guardan en una memoria intermedia de historial de una longitud de 390 muestras.
Después de un aumento del tamaño de la memoria intermedia de fluctuación en una longitud de dos paquetes, se produce un espacio vacío en la memoria intermedia de fluctuación correspondiente a dos paquetes perdidos, indicados en el primer diagrama de la figura 2 por una línea horizontal que conecta las señales recibidas. En el comienzo de cada espacio vacío, el contenido de la memoria intermedia de historial se copia en una memoria intermedia de altura tonal que se usa durante todo el espacio vacío para encontrar una forma de onda sintetizada que pueda ocultar el espacio vacío. En la situación del primer diagrama, las muestras que se encuentran a la izquierda de los dos paquetes vacíos, es decir, las muestras que han llegado antes del aumento de tamaño, forman el contenido actual de la memoria intermedia de altura tonal.
Llegado este momento se usa un método de correlación cruzada para calcular una estimación del periodo de altura tonal a partir de la memoria intermedia de altura tonal. Tal como se ilustra en el segundo diagrama de la figura 2, a continuación se sustituye el primer paquete vacío duplicando la forma de onda que comienza una longitud de un periodo de altura tonal hacia atrás desde el final de la memoria intermedia de historial, lo cual se indica con una línea vertical designada con la referencia 21, en el número requerido. Para garantizar una transición uniforme entre la voz real y la sintetizada, así como entre las formas de onda de la longitud del periodo de altura tonal, las últimas 30 muestras de la memoria intermedia de historial, en la zona limitada por una vertical y una línea inclinada designada con la referencia 22 en el primer diagrama, se suman por superposición con las 30 muestras que preceden a la forma de onda sintetizada en la zona limitada por línea vertical 21 y una línea inclinada conectada. La señal superpuesta sustituye a las últimas 30 muestras 22 en la memoria intermedia de altura tonal. Este procedimiento de suma por superposición provoca un retardo algorítmico de 3,75 ms, ó 30 muestras. De la misma manera, se garantiza una transición uniforme entre formas de onda repetidas de una longitud correspondiente a un periodo de altura tonal.
Por otra parte, la forma de onda sintetizada se amplía más allá de la duración de los paquetes vacíos para garantizar una transición uniforme entre la forma de onda sintetizada y la señal recibida subsiguientemente. La longitud de la ampliación 23 es 4 ms. Al final del espacio vacío, la ampliación se aumenta en 4 ms por cada paquete vacío añadido adicional. La longitud de la ampliación máxima es 10 ms. Al final del espacio vacío, esta ampliación se superpone con la señal del primer paquete después del espacio vacío, indicándose la zona de superposición en la figura con la línea inclinada 25. El segundo diagrama de la figura 2 ilustra el estado de la señal sintetizada después de 10 ms, cuando se han duplicado muestras de una longitud de un paquete.
En el caso de que exista un segundo paquete vacío añadido, como en el primer diagrama de la figura 2, se añade otro periodo de altura tonal a la memoria intermedia de altura tonal. En este momento, la forma de onda a duplicar tiene una longitud de dos periodos de altura tonal y comienza en la línea vertical designada con la referencia 24. A continuación, las 30 muestras 24 antes de la memoria intermedia de altura tonal se suman por superposición con las últimas 30 muestras 22 de la memoria intermedia de altura tonal. Nuevamente, la señal superpuesta sustituye las últimas 30 muestras de la zona 22 en la memoria intermedia de altura tonal. Se garantiza una transición uniforme entre señales de longitud de uno y dos periodos de altura tonal realizando una suma por superposición entre las zonas indicadas con las referencias 23 y 26. La zona 26 se establece restando periodos de altura tonal hasta que el puntero de altura tonal se encuentra en la primera longitud de onda de la parte usada en ese momento de la memoria intermedia de altura tonal. El resultado de la suma por superposición sustituye las muestras de la zona 23. El tercer diagrama de la figura 2 muestra la señala sintetizada en la cual se ocultó un espacio vacío de una longitud correspondiente a dos paquetes añadidos para obtener un aumento del tamaño de la memoria intermedia de fluctuación.
Si el tamaño de la memoria intermedia de fluctuación se hace aumentar adicionalmente, se sumaría otro periodo de altura tonal en la memoria intermedia de altura tonal.
No obstante, si el aumento del tamaño de la memoria intermedia de fluctuación es grande, es más probable que la señal sustitutoria falsee la señal original. Para reducir este problema se usa una atenuación. El primer paquete sustitutorio no se atenúa. El segundo paquete se atenúa con una rampa lineal. El final del paquete se atenúa en un 50% en comparación con el inicio con el tamaño del paquete usado de 20 ms. Esta atenuación se usa también para los siguientes paquetes. Esto significa que después de 3 paquetes (60 ms) la amplitud de la señal es cero.
De forma similar, se pueden utilizar métodos de gestión de tramas defectuosas con codificadores de voz paramétricos para compensar un aumento del tamaño de la memoria intermedia de fluctuación.
La figura 3 ilustra cómo se reduce el tamaño de la memoria intermedia de fluctuación según la primera forma de realización de la invención superponiendo dos paquetes adyacentes. Con este fin, la figura muestra tres diagramas que representan gráficamente la amplitud de las señales con respecto al número de muestra de las señales.
El primer diagrama de la figura 3 muestra las señales de cuatro paquetes 31 a 34 almacenados en ese momento en una memoria intermedia de fluctuación antes de una reducción del tamaño, conteniendo cada paquete 160 muestras. Llegado este momento, el tamaño de la memoria intermedia de fluctuación debe reducirse en un paquete. Con este fin, dos paquetes adyacentes 32, 33 se multiplican respectivamente por una función de rampa descendente 36 y de rampa ascendente 37, tal como se indica en el primer diagrama. A continuación, los paquetes multiplicados 32, 33 de las señales se superponen, mostrándose dicha situación en el segundo diagrama de la figura 3. Finalmente, la parte superpuesta de la señal 32/33 se suma tal como se muestra en el tercer diagrama de la figura 3, quedando formado en este momento el cuarto paquete por el paquete 35 que viene tras el cuarto paquete original 34. El resultado de la suma por superposición es una señal que comprende un paquete menos que la señal original, y este paquete eliminado permite una reducción del tamaño de la memoria intermedia de fluctuación.
Cuando el tamaño de la memoria intermedia de fluctuación debe reducirse en más de un paquete de una sola vez, se suman por superposición paquetes no adyacentes sino separados, y los paquetes que quedan en medio se descartan. Por ejemplo, si el tamaño de la memoria intermedia de fluctuación se va a cambiar de tres paquetes a uno, el primer paquete de la memoria intermedia de fluctuación se suma por superposición con el tercer paquete de la memoria intermedia de fluctuación tal como se describe para los paquetes 32 y 33 que referencia a la figura 3, y el segundo paquete se descarta.
En una segunda forma de realización de la invención, se hace posible un aumento y una reducción inmediatos del tamaño de una memoria intermedia de fluctuación a través de un método de escalado temporal en el dominio del tiempo, y más particularmente a través de un método de adición con superposición basado en la similitud con la forma de onda (WSOLA) descrito en el documento antes mencionado "An overlap-add technique based on waveform similarity (WSOLA) for high quality time-scale modification of speech".
El método WSOLA se ilustra para un escalado temporal a título de ejemplo que da como resultado una reducción de muestras de una señal en la figura 4, la cual comprende en la parte superior una forma de onda original x(n) y en la parte inferior una forma de onda sintetizada y(n) construida con valores adecuados de la forma de onda original x(n). n indica la muestra respectiva de las señales. El método WSOLA se basa en la construcción de una forma de onda sintetizada que mantiene una similitud local máxima con la señal original. La forma de onda sintetizada y(n) y la forma de onda original x(n) presentan una similitud máxima en torno a instantes de tiempo especificados por una función de alabeo en el tiempo \tau^{-1}(n).
En la figura 4, el segmento de entrada 41 de la forma de onda original x(n) fue el último segmento extendido de la forma de onda original x(n). Este segmento 41 es el último segmento que se añadió como segmento de síntesis A a la forma de onda sintetizada y(n). El segmento A se sumó por superposición a la señal de salida y(n) en el instante de tiempo S_{k-1}=(k-1)S, siendo S el intervalo entre segmentos en la señal sintetizada y(n).
El siguiente segmento de síntesis B se debe escindir de la señal de entrada x(n) en torno al instante de tiempo \tau^{-1}(S_{k}), y se suma por superposición a la señal de salida y(n) en el instante de tiempo S_{k}=kS. Tal como puede observarse en la figura, el segmento 41' de la señal de entrada x(n) se superpondría perfectamente con el segmento 41 de la señal de entrada x(n). Por lo tanto, el segmento 41' se usa como plantilla cuando se selecciona un segmento 42 en torno al instante de tiempo \tau^{-1}(S_{k}) de la señal de entrada x(n) el cual se va a usar como el siguiente segmento de síntesis B. Se calcula una medida de la similitud entre el segmento 41' y el segmento 42 para hallar el valor de desplazamiento óptimo \Delta que maximiza la similitud entre los segmentos. De este modo, el siguiente segmento de síntesis B se selecciona hallando el elemento que mejor se corresponda 42 con la plantilla 41' en torno al instante de tiempo \tau^{-1}(S_{k}). El elemento que mejor se corresponda debe estar dentro del intervalo de tolerancia de \Delta, situándose dicho intervalo de tolerancia entre un valor mínimo predeterminado \Delta_{min} y uno máximo predeterminado \Delta_{max}. Después de sumar por superposición el segmento de síntesis 42 a la señal de salida como segmento B, el segmento 42' de la señal de entrada x(n) se usa como siguiente plantilla.
El método WSOLA usa instantes de síntesis separados de forma regular S_{k}=kS. La longitud de la ventana de análisis y síntesis es constante. Si la ventana de análisis/síntesis se selecciona de tal manera que,
(1)\sum\limits _{k} \nu (n - kS) = 1
y si la ventana de análisis/síntesis es simétrica, la ecuación de síntesis para el método WSOLA es
(2)y(n) = \sum\limits _{k} \nu (n - kS) x (n + \tau ^{-1}(kS) - kS + \Delta _{k}) .
Seleccionando una función de alabeo en el tiempo diferente, se puede utilizar el mismo método no solamente para reducir las muestras de una señal sino también para aumentar la cantidad de muestras de una señal.
Es importante que la transición de la señal original a la señal escalada temporalmente sea uniforme. Adicionalmente, el periodo de altura tonal no debería cambiar durante los saltos desde la señal que se usa tal como se recibe a la señal escalada temporalmente. Tal como se ha explicado anteriormente, el escalado temporal WSOLA conserva el periodo de altura tonal. No obstante, cuando se realiza un escalado temporal para una parte situada en la zona central de la señal de voz, en ocasiones no se puede evitar alguna discontinuidad bien al comienzo o bien al final de la señal escalada temporalmente.
Para reducir el efecto de dicha desadaptación de fase, se propone que la segunda forma de realización de la invención modifique ligeramente el método descrito en referencia a la figura 4. El método WSOLA modificado (MWSOLA) usa información relacionada con el historial y una ampliación adicional para reducir el efecto de este problema.
A continuación se describirá un algoritmo MWSOLA que usa una ampliación de la escala temporal para una mitad adicional de una longitud de un paquete, haciendo referencia al diagrama de flujo de la figura 5 y a los cinco diagramas de la figura 6. El tamaño del paquete usado es 20 ms, ó 160 muestras, siendo la frecuencia de muestreo 8 kHz. La ventana de análisis/síntesis usada presenta la misma longitud que los paquetes.
La figura 5 ilustra el proceso básico de actualización del tamaño de la memoria intermedia de fluctuación usando el algoritmo MWSOLA propuesto. Tal como se muestra en el lado izquierdo del diagrama de flujo de la figura 5, en primer lugar se seleccionan los paquetes a escalar temporalmente. Adicionalmente, como muestras históricas se selecciona una longitud de 1/2 paquete de la señal que ha llegado previamente, es decir, 80 muestras. Las muestras seleccionadas se indican también en el primer diagrama de la figura 6. Después de ser seleccionadas, las mismas se reenvían al algoritmo MWSOLA.
El algoritmo MWSOLA, el cual se muestra más detalladamente en el lado derecho de la figura 5, se usa a continuación para proporcionar el escalado temporal deseado sobre las señales seleccionadas tal como se ha descrito en referencia a la figura 4.
La ventana de análisis/síntesis se crea modificando una ventana Hanning de manera que se cumpla la condición de la ecuación (1). La función de alabeo en el tiempo \tau^{-1} (n) se construye de forma diferente para la expansión y la compresión de la escala temporal, es decir, para un aumento y para una reducción del tamaño de la memoria intermedia de fluctuación. La función de alabeo en el tiempo y los límites de la zona de búsqueda \Delta (\Delta=[\Delta_{min}...\Delta_{max}]) se seleccionan de tal manera que se obtenga una variación satisfactoria de la señal. Fijando correctamente los límites de la zona de búsqueda y la función de alabeo en el tiempo, se puede evitar que se seleccionen repetidamente tramas de análisis adyacentes. Finalmente, la primera trama de la señal de entrada se copia en una señal de salida que va a sustituir la señal original. Esta opción garantiza que el cambio de la señal original precedente a la señal escalada temporalmente sea uniforme.
Después de que se hayan fijado los parámetros iniciales tales como la función de alabeo en el tiempo y los límites para la zona de búsqueda y de que se haya inicializado una señal de salida, se usa un bucle para hallar tramas nuevas para la señal de salida escalada temporalmente siempre que sea necesario. Como indicador para hallar la trama siguiente se usa el elemento que mejor se corresponda de entra las últimas L muestras de la trama anterior y las primeras L muestras de la trama nueva. La longitud usada L de la correlación es 1/2* longitud de la ventana = 80 muestras. La zona de búsqueda \Delta (\Delta=[\Delta_{min}... \Delta_{max}]) debería ser mayor que el periodo de altura tonal máximo en muestras, de manera que sea posible una sincronización correcta entre tramos consecutivos.
El segundo diagrama de la figura 6 muestra cómo las ventanas de análisis 61 a 67 que definen segmentos diferentes se sitúan en la señal de entrada MWSOLA cuando se realiza un escalado temporal de dos paquetes a tres paquetes.
El tercer diagrama de la figura 6 muestra el resultado satisfactorio de la superposición de los segmentos de síntesis. Tal como puede observarse, las diferentes ventanas 61 a 67 se superponen, en este caso, de forma bastante satisfactoria.
La suma por superposición de todas las tramas de análisis/síntesis da como resultado la señal escalada temporalmente que se muestra en el cuarto diagrama de la figura 6, la cual constituye la señal de salida del algoritmo MWSOLA. El algoritmo MWSOLA devuelve los paquetes nuevos escalados temporalmente y una ampliación que se va a sumar por superposición con el primer tramo de 1/2 paquete del siguiente paquete que llegue.
Tal como se muestra nuevamente en el lado izquierdo del diagrama de flujo de la figura 5, a continuación la memoria intermedia de fluctuación se actualiza con las señales escaladas temporalmente y la ampliación se suma por superposición con el siguiente paquete que llegue. La señal resultante puede verse en el quinto diagrama de la figura 6.
Este procedimiento reduce el efecto de las desadaptaciones de fase y amplitud entre la señal escalada temporalmente y la señal válida.
A continuación se describirá, como tercera forma de realización de la invención, un método de escalado de la memoria intermedia de fluctuación basado en un vocoder de fase, haciendo referencia a las figuras 7 a 9. Este método constituye un método de escalado temporal en el dominio de la frecuencia.
El método de modificación de la escala temporal con vocoder de fase se basa en el cálculo de transformadas de Fourier de tiempo corto (STFT) de la señal de voz en la memoria intermedia de fluctuación tal como se describe en el documento antes mencionado "Applications of Digital Signal Processing to Audio and Acoustics". La figura 7 ilustra esta técnica. La modificación de la escala temporal basada en vocoders de fase comprende una etapa de análisis, indicada en la parte superior de la figura 7, una etapa de modificación de la fase indicada en la parte central de la figura 7, y una etapa de síntesis indicada en la parte inferior de la figura 7.
En la etapa de análisis, se calculan las transformadas de Fourier de tiempo corto a partir de las partes sometidas a ventanaje de superposición 71 a 74 de una señal recibida. En particular, en la etapa de análisis con vocoder de fase se pueden utilizar transformadas de Fourier discretas (DFT) en el tiempo tal como describen J. Laroche y M. Dolson en "Improved Phase Vocoder Time-Scale Modification of Audio", IEEE Transactions of Speech and Audio Processing, Vol. 7, n.º 3, mayo de 1999, págs. 323 a 332. Esto significa que la representación tanto de la escala frecuencial como de la escala temporal de la señal es discreta. Los instantes de tiempo del análisis t^{u}_{a} están espaciados de forma regular por R_{a} muestras, t^{u}_{a} =u*R_{a}. A R_{a} se le denomina factor de salto del análisis. A continuación, la transformada de Fourier de tiempo corto resulta ser
(3)X(t^{u}_{a} , \Omega _{k}) = \sum\limits ^{\infty}_{u = - \infty} h (n) x (t^{u}_{a} + n) e^{-j \Omega _{k} n} ,
en la que x es la señal original, h(n) la ventana de análisis y \Omega_{k}=2pi*k/N la frecuencia central del canal k^{ésimo} del vocoder. A los canales del vocoder se les puede denominar también compartimentos (bins). N es el tamaño de la DFT, en el que N debe ser mayor que la longitud de la ventana de análisis. En algunas de las soluciones prácticas, la DFT se obtiene habitualmente con la Transformada Rápida de Fourier (FFT). La frecuencia de corte de la ventana de análisis para las ventanas normalizadas (Hanning, Hamming) requiere que las ventanas de análisis se superpongan en por lo menos un 75%. Después de la FFT de análisis, la señal queda representada por canales de vocoder horizontales e instantes de tiempo de análisis verticales.
En la etapa de modificación de la fase, se modifica la escala temporal de la señal de voz fijando el factor de salto de análisis R_{a} a un valor diferente con respecto al factor de salto de síntesis R_{s} a usar, tal como se describe en el documento mencionado "Improved Phase Vocoder Time-Scale Modification of Audio". La nueva evolución temporal de las ondas sinusoidales se obtiene fijando | Y(t^{u}_{s}, \Omega_{k}) | = | X(t_{a}^{u}, \Omega_{k}) | y calculando valores de fase nuevos para Y(t^{u}_{s},
\Omega_{k}).
Los valores de fase nuevos par Y(t^{u}_{s}, \Omega_{k}) se calculan de la manera siguiente. Se usa un proceso denominado desenrollado de fase (phase unwrapping), en el que se usa el incremento de fase entre dos tramas consecutivas para realizar una estimación de la frecuencia instantánea de una sinusoide cercana en cada canal k. En primer lugar se calcula el incremento de fase con conversión heterodina mediante
(4)\Delta \Phi ^{u}_{k} = \angle X (t^{u}_{a} , \ \Omega _{k}) - \angle X(T^{u-1}_{a} , \ \Omega _{k}) - R_{a} \Omega _{k} .
A continuación sumando o restando múltiplos de 2\pi de manera que el resultado de (7) esté comprendido entre \pm\pi, se obtiene la determinación principal (\Delta_{p}\Phi_{k}^{u}) del incremento de fase con conversión heterodina. A continuación se calcula la frecuencia instantánea usando
(5)\omega _{k} (t^{u}_{a}) = \Omega _{k} + \frac{1}{R_{a}} \Delta _{p} \Phi ^{u}_{k} .
La frecuencia instantánea se determina debido a que la FFT se calcula solamente para frecuencias discretas \Omega_{k}. De este modo, la FFT no representa necesariamente la señal sometida a ventanaje de forma exacta.
Las fases escaladas temporalmente de la STFT en un instante de tiempo t^{u}_{s} se calculan a partir de
(6)\angle Y(t^{u}_{s} , \ \Omega _{k}) = \angle Y (t^{u-1}_{s} , \ \Omega _{k}) + R_{s} \omega_{k} (t^{u}_{a}) .
La elección de las fases de síntesis iniciales \angleY(t^{u}_{s}, \Omega_{k}) es importante para obtener una calidad de voz satisfactoria. En el documento antes mencionado "Improved Phase Vocoder Time-Scale Modification of Audio", se recomienda una fijación de inicialización normalizada de
(7)\angle Y(t^{0}_{s} , \ \Omega _{k}) = \angle X (t^{0}_{a} , \ \Omega _{k})
lo cual posibilita un cambio de una señal no escalada temporalmente a una señal escalada temporalmente sin discontinuidades de fase. Esta es una cualidad importante del escalado temporal de la memoria intermedia de fluctuación.
Después de que se hayan obtenido los valores de fase para Y(t^{u}_{s}, \Omega_{k}), la señal se puede reconstruir en una etapa de síntesis.
En la etapa de síntesis, a las transformadas de Fourier de tiempo corto modificadas Y(t^{u}_{s}, \Omega_{k}) se les aplica en primer lugar una transformada inversa de Fourier con la ecuación
(8)y_{u} (n) = \frac{1}{N} \sum\limits ^{N-1}_{k=0} Y (t^{u}_{s} , \ \Omega _{k})e^{j \Omega _{k} n} .
Los instantes de tiempo de la síntesis se fijan t^{u}_{s} = u*R_{s}. Finalmente, las señales de tiempo corto se multiplican por una ventana de síntesis w(n) y se suman, proporcionando conjuntamente la señal de salida y(n):
(9)y(n) = \sum\limits ^{\infty} _{u = -\infty} w (n - t^{u}_{s}) y_{u} (n -t^{u}_{s}) .
La distancia entre las ventanas de análisis es diferente a la distancia entre las ventanas de síntesis debido a la modificación de la escala temporal, con lo cual se obtiene una ampliación o compresión temporal de los datos recibidos de la memoria intermedia de fluctuación. La sincronización entre ventanas de síntesis superpuestas se alcanzó modificando las fases en la STFT.
En el diagrama de flujo de la figura 8 se ilustra el uso del escalado temporal basado en vocoders de fase para aumentar o reducir el tamaño de una memoria intermedia de fluctuación.
En primer lugar, se recibe la señal de entrada y se fija un factor de escala temporal.
A continuación se inicializa el algoritmo fijando las magnitudes de los saltos de análisis y síntesis, y fijando los instantes de tiempo de análisis y síntesis. Cuando se realiza esto, deben tenerse en cuenta algunas limitaciones, de las cuales se ha proporcionado una lista, por ejemplo, en el documento antes mencionado "Application of Digital Signal Processing to Audio of Acoustics". La frecuencia de corte de la ventana de análisis debe cumplir w_{h} < min_{i}\Deltaw_{i}, es decir, la frecuencia de corte debe ser menor que la separación entre dos sinusoides. Además, la longitud de la ventana de análisis debe ser suficientemente pequeña como para que las amplitudes y las frecuencias instantáneas de las sinusoides se puedan considerar constantes dentro de la ventana de análisis. Finalmente, para posibilitar un desenrollado de la fase, la frecuencia de corte y la frecuencia de análisis deben cumplir w_{h}Ra < \pi. La frecuencia de corte para ventanas de análisis normalizadas (Hamming, Hanning) es w_{h} = 4\pi/Nw, en la Nw es la longitud de la ventana de análisis.
\newpage
Como parámetro inicial adicional, se calcula el número de tramas a procesar. Este número se usa para determinar cuántas veces debe procesarse el siguiente bucle de la figura 8. Finalmente, se fijan las fases iniciales de la síntesis según la ecuación (7).
Después de la inicialización, viene un bucle de procesado del vocoder para el escalado temporal en cuestión. Dentro del bucle de procesado del vocoder de fase, la rutina es una realización básica del método antes presentado. En primer lugar, se obtiene la siguiente trama de análisis respectiva multiplicando la señal por la ventana de análisis en el instante de tiempo t^{u}_{a}. A continuación se calcula la FFT de la trama. El incremento de fase con conversión heterodina se calcula fijando R_{a} en la ecuación (4) a t^{u}_{a} - t^{u-1}_{a}. Se obtienen también las frecuencias instantáneas fijando R_{a} en la ecuación (5) a t^{u}_{a} - t^{u-1}_{a}. Las fases escaladas temporalmente se obtienen a partir de la ecuación (6). Seguidamente, se calcula la IFFT de la FFT modificada de la trama actual según la ecuación (8). A continuación, el resultado de la ecuación (8) se multiplica por la ventana de síntesis y se suma a la señal de salida. Antes de pasar a través del bucle nuevamente, se actualizan las fases anteriores de análisis y síntesis a usar en las ecuaciones (4) y (6).
Finalmente, antes de dar salida a la señal escalada temporalmente, se suavizan las transiciones entre la señal escalada temporalmente y la señal no escalada temporalmente. Después de esto, se puede completar la modificación del tamaño de la memoria intermedia de fluctuación. La figura 9 muestra la señal resultante cuando se escalan temporalmente dos paquetes para obtener tres con el escalado temporal basado en el vocoder de fase. En un primer diagrama de la figura 9, se representa gráficamente la amplitud de la señal con respecto a las muestras antes del escalado temporal. En un segundo diagrama de la figura 9, se representa gráficamente la amplitud de la señal con respecto a las muestras después del escalado temporal. Los dos paquetes con muestras 161 a 481 del primer diagrama se expandieron a tres paquetes con muestras 161 a 641.
Antes de aumentar el tamaño de la memoria intermedia de fluctuación, debería realizarse una ocultación de errores. Por otra parte, se debería recibir un número predeterminado de paquetes antes de incrementar el tamaño de la memoria intermedia de fluctuación.
La figura 10 es un diagrama de flujo que ilustra una cuarta forma de realización de la invención, la cual se puede usar para cambiar el tamaño de una memoria intermedia de fluctuación en el dominio paramétrico. Las tramas de voz codificadas paramétricamente solamente se decodifican por medio de un decodificador después del almacenamiento temporal en la memoria intermedia de fluctuación.
En una primera etapa, se determina si debe cambiarse el tamaño de la memoria intermedia de fluctuación. En el caso de que dicho tamaño no deba cambiarse, el contenido de la memoria intermedia de fluctuación se reenvía directamente al decodificador.
En el caso de que se determine que el tamaño de la memoria intermedia de fluctuación debe aumentarse, se aumenta la memoria intermedia de fluctuación y se generan tramas adicionales interpolando una trama adicional a partir de dos tramas adyacentes en el dominio paramétrico. Las tramas adicionales se usan para rellenar el espacio vacío de la memoria intermedia resultante de un aumento en el tamaño. Solo entonces se reenvían las tramas almacenadas temporalmente hacia el decodificador.
En el caso de que se determine que el tamaño de la memoria intermedia de fluctuación debe reducirse, se reduce la memoria intermedia de fluctuación y se interpolan en el dominio paramétrico dos tramas adyacentes o separadas para obtener una trama. La distancia de las dos tramas usadas para la interpolación mutua de las mismas depende de la magnitud de la reducción requerida del tamaño de la memoria intermedia de fluctuación. Solamente entonces se reenvían las tramas almacenadas temporalmente hacia el decodificador.
Las figuras 11 a 13 muestran partes de tres sistemas diferentes de comunicaciones de voz por IP en los cuales podría utilizarse la invención.
En el sistema de comunicaciones de la Figura 11, un extremo transmisor del sistema contiene un codificador 111 y medios de paquetización 112. El extremo transmisor está conectado a un extremo receptor a través de una red de voz por IP 113. El extremo receptor comprende una memoria de tramas 114, la cual está conectada a través de un decodificador 115 a una memoria intermedia adaptativa de fluctuación 116. La memoria intermedia adaptativa de fluctuación 116 tiene además una entrada de control conectada a unos medios de control y una salida hacia unos medios de procesado del extremo receptor los cuales no se representan.
En el extremo transmisor, la voz que va a ser transmitida se codifica en el codificador 111 y se estructura en paquetes por medio de los medios de paquetización 112. Cada paquete está provisto de información sobre su posición correcta en un flujo continuo de paquetes y sobre la distancia correcta en el tiempo con respecto a los otros paquetes. Los paquetes resultantes se envían a través de la red de voz por IP 113 hacia el extremo receptor.
En el extremo receptor, en primer lugar los paquetes recibidos se reordenan en la memoria de tramas 114 para disponerlos nuevamente en el orden original en el cual fueron transmitidos por el extremo transmisor. A continuación los paquetes reordenados son decodificados por el decodificador 115 en una voz PCM lineal. El decodificador 115 efectúa también un método de gestión de tramas defectuosas sobre los datos decodificados. Después de esto, el decodificador 115 reenvía los paquetes de voz PCM lineal hacia la memoria intermedia adaptativa de fluctuación 116. En la memoria intermedia adaptativa de fluctuación, puede utilizarse a continuación un método de escalado temporal lineal para aumentar o reducir el tamaño de la memoria intermedia de fluctuación y obtener de este modo más o menos tiempo para que los paquetes lleguen a la memoria de tramas.
La entrada de control de la memoria intermedia adaptativa de fluctuación 116 se usa para indicar a la memoria intermedia adaptativa de fluctuación 116 si debería cambiarse el tamaño de la memoria intermedia de fluctuación 116. La decisión sobre dicha opción la toman unos medios de control basándose en la evaluación del retardo global actual y la variación actual del retardo entre los diferentes paquetes. Los medios de control indican más específicamente a la memoria intermedia adaptativa de fluctuación 116 si el tamaño de la memoria intermedia de fluctuación 116 va a aumentarse o reducirse y en qué cantidad y qué paquetes se van a seleccionar para el escalado temporal.
En el caso que los medios de control indiquen a la memoria intermedia adaptativa de fluctuación 116 que su tamaño va a cambiarse, la memoria intermedia adaptativa de fluctuación 116 escala temporalmente por lo menos parte de los paquetes almacenados temporalmente en ese momento según la información recibida, por ejemplo, según una manera que se describe en la segunda o tercera forma de realización. De este modo, la memoria intermedia de fluctuación 116 se amplía mediante una expansión de la escala temporal de los datos de voz almacenados temporalmente en ese momento y se reduce mediante una compresión de la escala temporal de los datos de voz almacenados temporalmente en ese momento. Como alternativa, para cambiar el tamaño de la memoria intermedia de fluctuación se podría utilizar un método basado en un método de gestión de tramas defectuosas para aumentar el tamaño de la memoria intermedia. Este método alternativo podría ser por ejemplo el método de la primera forma de realización de la invención, en el cual por otra parte los datos se superponen para reducir el tamaño de la memoria intermedia.
El escalado temporal lineal de la figura 11 se puede utilizar en particular para un códec de baja velocidad binaria.
La figura 12 muestra una parte de un sistema de comunicaciones el cual se basa en un método de escalado temporal de voz PCM lineal. En este sistema, un extremo transmisor el cual se corresponde con el de la figura 11 y no se representa gráficamente en la figura 12, está conectado como en el caso anterior a través de una red de voz por IP 123 al extremo receptor. No obstante, el extremo receptor se ha diseñado de una forma algo diferente con respecto al extremo receptor del sistema de la figura 11. En este caso el extremo receptor comprende medios para una conversión ley A a lineal 125 conectados a una memoria intermedia adaptativa de fluctuación 126. La memoria intermedia adaptativa de fluctuación 126 tiene de nuevo adicionalmente una entrada de control conectada a unos medios de control y una salida hacia unos medios de procesado del extremo receptor los cuales no se representan.
Los paquetes que contienen datos de voz que fueron transmitidos por el extremo transmisor y recibidos por el extremo receptor a través de la red de voz por IP 123 se introducen en primer lugar en los medios de conversión de ley A a lineal 125 del extremo receptor, en los que son convertidos a datos PCM lineales. Subsiguientemente, los paquetes se reorganizan en la memoria intermedia adaptativa de fluctuación 126. Por otra parte, la memoria intermedia adaptativa de fluctuación 126 se ocupa de realizar un método de gestión de tramas defectuosas, antes de reenviar los paquetes con un retardo correcto hacia los medios de procesado.
Los medios de control se usan nuevamente para decidir cuándo y cómo cambiar el tamaño de la memoria intermedia de fluctuación. A continuación, siempre que sea necesario, se usa algún método de escalado temporal para voz lineal, por ejemplo, uno de los métodos presentados, en la memoria intermedia adaptativa de fluctuación 126 para cambiar su tamaño según la información recibida por los medios de control. Alternativamente, podría utilizarse nuevamente un método basado en algún método de gestión de tramas defectuosas para cambiar la memoria intermedia de fluctuación, por ejemplo, el método de la primera forma de realización de la invención. En todo caso, este método alternativo podría hacer uso también del método de gestión de tramas defectuosas implementado en la memoria intermedia de fluctuación para la gestión de tramas defectuosas.
Finalmente, la figura 13 muestra una parte de un sistema de comunicaciones en el cual se utiliza un códec de baja velocidad binaria y un escalado temporal en el dominio paramétrico.
Nuevamente, un extremo transmisor que se corresponde con el de la figura 11 y que no se representa en la figura 13, está conectado a través de una red de voz por IP 133 a un extremo receptor. El extremo receptor comprende una unidad de memoria y organizadora de paquetes 134, la cual está conectada a través de una memoria intermedia adaptativa de fluctuación 136 a un decodificador 135. La memoria intermedia adaptativa de fluctuación 136 tiene además una entrada de control conectada a unos medios de control, y la salida del decodificador 135 está conectada a unos medios de procesado del extremo receptor, no representándose ni los medios de control ni los medios de procesado.
En primer lugar, los paquetes que contienen datos de voz que fueron transmitidos por el extremo transmisor y recibidos por el extremo receptor a través de la red de voz por IP 133 se reordenan en la unidad de memoria y organizadora de paquetes 134.
A continuación, los paquetes reordenados se reenvían directamente a la memoria intermedia adaptativa de fluctuación 136. La memoria intermedia de fluctuación 136 aplica un método de gestión de tramas defectuosas sobre los paquetes recibidos en el dominio paramétrico. La voz contenida en los paquetes se decodifica únicamente después de abandonar la memoria intermedia adaptativa de fluctuación 136 en el decodificador 135.
Tal como en los otros dos sistemas presentados, los medios de control se usan para decidir cuándo y cómo cambiar el tamaño de la memoria intermedia de fluctuación. A continuación, siempre que sea necesario, se usa algún método de escalado temporal para voz paramétrica en la memoria intermedia adaptativa de fluctuación 136 con vistas a cambiar su tamaño según la información recibida por los medios de control. Alternativamente, para aumentar el tamaño de la memoria intermedia de fluctuación también podría utilizarse un método de gestión de tramas defectuosas diseñado para la gestión de tramas defectuosas de paquetes en el dominio paramétrico. Como alternativa adicional, se podrían interpolar tramas adicionales a partir de dos tramas adyacentes tal como se ha propuesto en referencia a la figura 10. La reducción del tamaño de la memoria intermedia de fluctuación se podría conseguir descartando un paquete o interpolando dos paquetes en uno en el dominio paramétrico tal como se propone en referencia a la figura 10. En particular, si se desea una reducción en una cantidad mayor que un paquete, se podrían interpolar, para obtener un paquete, los paquetes en torno a la cantidad deseada de paquetes.

Claims (27)

1. Método para cambiar el tamaño de una memoria intermedia de fluctuación (116; 126; 136), utilizándose dicha memoria intermedia de fluctuación (116; 126; 136) en un extremo receptor de un sistema de comunicaciones que incluye una red por paquetes (113; 123; 133) para almacenar temporalmente paquetes recibidos que contienen datos de audio con vistas a permitir una compensación de retardos variables de dichos paquetes recibidos, caracterizado porque presenta las siguientes etapas:
-
determinar si se debería aumentar o reducir el tamaño actual de una memoria intermedia de fluctuación evaluando el retardo global actual y la fluctuación en los paquetes recibidos; y
-
en el caso de que se determine que el tamaño actual de la memoria intermedia de fluctuación se va a aumentar, aumentar el tamaño de la memoria intermedia de fluctuación y compensar el espacio vacío resultante de la memoria intermedia de fluctuación generando datos adicionales sobre la base de datos de audio contenidos en paquetes recibidos.
2. Método según la reivindicación 1, en el que en el caso de que se determine que el tamaño actual de la memoria intermedia de fluctuación se va a reducir, se reduce el tamaño de la memoria intermedia de fluctuación condensando por lo menos parte de los datos de audio que están presentes en ese momento en la memoria intermedia de fluctuación (116; 126; 136).
3. Método según una de las reivindicaciones anteriores, en el que los datos de audio almacenados temporalmente en la memoria intermedia de fluctuación (116; 126) son datos de audio decodificados.
4. Método según una de las reivindicaciones anteriores, en el que dichos datos adicionales se generan tratando dicho espacio vacío de la memoria intermedia de fluctuación como tramas perdidas y compensando dicho espacio vacío de la memoria intermedia de fluctuación mediante un tratamiento de gestión de tramas defectuosas.
5. Método según una de las reivindicaciones anteriores, en el que se generan datos adicionales duplicando una forma de onda que da inicio a una multitud completa de longitudes de periodo de altura tonal antes de un instante de tiempo en el cual se van a añadir dichos datos adicionales.
6. Método según una de las reivindicaciones anteriores, en el que dichos datos adicionales se generan de manera que se superponen sobre parte de datos de audio recibidos en la memoria intermedia de fluctuación (116; 126; 136).
7. Método según una de las reivindicaciones anteriores, en el que por lo menos parte de dichos datos adicionales se atenúa en el caso de que se genere más de una cantidad predeterminada de datos adicionales.
8. Método según una de las reivindicaciones anteriores, en el que se condensan datos superponiendo los datos de audio de un primer paquete seleccionado (32) y los datos de audio de un segundo paquete seleccionado (33) y descartando los paquetes que quedan entre dicho primer y dicho segundo paquetes (32, 33).
9. Método según la reivindicación 8, en el que se superponen datos de audio multiplicando los datos de audio de un primer paquete seleccionado (32) por una función de rampa descendente (36) y los datos de audio de un segundo paquete seleccionado (33) por una función de rampa ascendente (37), sumando los datos multiplicados de dicho primer y dicho segundo paquetes (32, 33), y descartando los paquetes entre dicho primer y dicho segundo paquetes (32, 33).
10. Método según una de las reivindicaciones 1 a 3, en el que para cambiar el tamaño de la memoria intermedia de fluctuación, se generan datos adicionales y/o se condensan datos de audio en dicha memoria intermedia de fluctuación (116; 126; 136) por medio de un escalado temporal en el dominio del tiempo realizado sobre por lo menos parte de los datos de audio almacenados temporalmente en ese momento en la memoria intermedia de fluctuación (116; 126; 136) para expandir o comprimir dicha por lo menos parte de los datos de audio respectivamente.
11. Método según la reivindicación 10, en el que el escalado temporal en el dominio del tiempo comprende
a)
seleccionar datos de audio recibidos almacenados temporalmente en ese momento en la memoria intermedia de fluctuación (116; 126; 136), estando destinados dichos datos de audio a usarse para el escalado temporal;
b)
aplicar un método de escalado temporal en el dominio del tiempo sobre los datos de audio seleccionados para obtener datos de audio escalados temporalmente; y
c)
sustituir en la memoria intermedia de fluctuación (116; 126; 136) por lo menos parte de los datos de audio recibidos seleccionados por los datos de audio escalados temporalmente.
12. Método según la reivindicación 11, en el que el escalado temporal aplicado a datos de audio recibidos seleccionados se amplía durante una longitud predeterminada que supera la longitud a usar para la sustitución de los datos de audio recibidos en la memoria intermedia de fluctuación (116; 126; 136), superponiéndose dicha ampliación con los siguientes datos de audio recibidos.
13. Método según una de las reivindicaciones 10 a 12, en el que el escalado temporal en el dominio del tiempo se basa en un método de adición con superposición basado en la similitud con la forma de onda (WSOLA).
14. Método según una de las reivindicaciones 1 a 3, en el que para cambiar el tamaño de la memoria intermedia de fluctuación se generan datos adicionales y/o se condensan datos de audio en dicha memoria intermedia de fluctuación (116; 126; 136) por medio de un escalado temporal en el dominio de la frecuencia realizado sobre por lo menos parte de los datos de audio almacenados temporalmente en ese momento en la memoria intermedia de fluctuación (116; 126; 136) para expandir o comprimir dicha por lo menos parte de los datos de audio respectivamente.
15. Método según la reivindicación 14, en el que el escalado temporal en el dominio de la frecuencia comprende:
-
aplicar una transformada de Fourier sobre las partes sometidas a ventanaje superpuestas (71 a 74) de por lo menos parte de los datos de audio recibidos contenidos en ese momento en la memoria intermedia de fluctuación (116; 126; 136);
-
modificar por escalado temporal los datos de audio a los que se ha aplicado la transformada de Fourier, de cada ventana (71 a 74), según una cantidad requerida de aumento o reducción del tamaño de la memoria intermedia de fluctuación; y
-
aplicar una transformada inversa de Fourier sobre los datos de audio de cada ventana (71 a 74) a los que se ha aplicado la transformada de Fourier y modificados por escalado temporal.
16. Método según la reivindicación 14 ó 15, en el que el escalado temporal en el dominio de la frecuencia está basado en vocoders de fase.
17. Método según una de las reivindicaciones 1 a 2, en el que los datos de audio almacenados temporalmente en la memoria intermedia de fluctuación (136) son datos de audio codificados paramétricamente.
18. Método según la reivindicación 17, en el que para aumentar el tamaño de la memoria intermedia de fluctuación se generan datos adicionales usando un manejador de tramas defectuosas (136).
19. Método según la reivindicación 17 ó 18, en el que para reducir el tamaño de la memoria intermedia de fluctuación, los datos de audio de la memoria intermedia de fluctuación se condensan descartando por lo menos una trama en la memoria intermedia de fluctuación (136).
20. Método según la reivindicación 19, en el que se modifican parámetros de ganancia y coeficientes de Codificación Predictiva Lineal (LPC) de las tramas situadas en torno a la por lo menos una trama descartada para combinar uniformemente las tramas que están situadas en torno a la por lo menos una trama descartada.
21. Método según la reivindicación 17, en el que para aumentar el tamaño de la memoria intermedia de fluctuación, se interpolan datos de audio adicionales a partir de datos adyacentes.
22. Método según la reivindicación 17, en el que para reducir el tamaño de la memoria intermedia de fluctuación, se interpolan datos de audio adyacentes o separados, seleccionados, para obtener datos de audio reducidos.
23. Sistema de comunicaciones que comprende una red por paquetes (113; 123; 133) y por lo menos un posible extremo receptor, incluyendo el extremo receptor:
-
una memoria intermedia de fluctuación (116; 126; 136) para almacenar temporalmente paquetes recibidos que contienen datos de audio; y
-
unos medios de procesado para compensar retardos variables de paquetes recibidos almacenados temporalmente en dicha memoria intermedia de fluctuación (116; 126; 136);
caracterizado porque el extremo receptor incluye además:
-
unos medios de procesado para determinar si el tamaño de dicha memoria intermedia de fluctuación (116; 126; 136) se debería aumentar o reducir basándose en el retardo global actual y la variación actual del retardo entre los diferentes paquetes; y
-
unos medios de procesado (116; 126; 136) para cambiar el tamaño actual de dicha memoria intermedia de fluctuación (116; 126; 136) según el método de una de las reivindicaciones 1 a 22.
24. Sistema de comunicaciones según la reivindicación 23, en el que el extremo receptor incluye además un manejador de tramas defectuosas (115; 126; 136) para compensar paquetes perdidos durante la transmisión hacia dicho extremo receptor, siendo utilizado además dicho manejador de tramas defectuosas (115; 126; 136) para generar datos adicionales con vistas a un aumento del tamaño de la memoria intermedia de fluctuación, por parte de los medios de procesado, para cambiar el tamaño actual de dicha memoria intermedia de fluctuación (116; 126; 136).
25. Medios de procesado (116; 126; 136) para un extremo receptor de un sistema de comunicaciones que incluye una red por paquetes (113; 123; 133), caracterizados porque dichos medios de procesado (116; 126; 136) están diseñados para cambiar el tamaño actual de una memoria intermedia de fluctuación (116; 126; 136) según el método de una de las reivindicaciones 1 a 22.
26. Extremo receptor para un sistema de comunicaciones que incluye una red por paquetes (113; 123; 133), comprendiendo dicho extremo receptor:
-
una memoria intermedia de fluctuación (116; 126; 136) para almacenar temporalmente paquetes recibidos que contienen datos de audio;
-
unos medios de procesado para compensar retardos variables de paquetes recibidos almacenados temporalmente en dicha memoria intermedia de fluctuación (116; 126; 136);
-
unos medios de procesado para determinar si el tamaño de dicha memoria intermedia de fluctuación (116; 126; 136) debería aumentarse o reducirse basándose en el retardo global actual y la variación actual del retardo entre los diferentes paquetes; y
-
unos medios de procesado (116; 126; 136) según la reivindicación 25.
27. Extremo receptor según la reivindicación 26, que incluye además un manejador de tramas defectuosas (126; 136) para compensar paquetes perdidos durante la transmisión hacia dicho extremo receptor, siendo utilizado además dicho manejador de tramas defectuosas (126; 136) para generar datos adicionales con vistas a un aumento del tamaño de la memoria intermedia de fluctuación, por parte de los medios de procesado (126; 136), para cambiar el tamaño actual de dicha memoria intermedia de fluctuación (126; 136).
ES01931645T 2001-04-24 2001-04-24 Metodos para cambiar el tamaño de una memoria intermedia de fluctuacion y para la alineacion temporal, un sistema de comunicaciones, un extremo receptor, y un transcodificador. Expired - Lifetime ES2280370T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2001/004608 WO2002087137A2 (en) 2001-04-24 2001-04-24 Methods for changing the size of a jitter buffer and for time alignment, communications system, receiving end, and transcoder

Publications (1)

Publication Number Publication Date
ES2280370T3 true ES2280370T3 (es) 2007-09-16

Family

ID=8164382

Family Applications (2)

Application Number Title Priority Date Filing Date
ES05004865T Expired - Lifetime ES2319433T3 (es) 2001-04-24 2001-04-24 Procedimientos para cambiar el tamaño de una memoria de almacenamiento temporal de fluctuacion y para el alineamiento temporal, sistema de comunicaciones, fin de la recepcion y transcodificador.
ES01931645T Expired - Lifetime ES2280370T3 (es) 2001-04-24 2001-04-24 Metodos para cambiar el tamaño de una memoria intermedia de fluctuacion y para la alineacion temporal, un sistema de comunicaciones, un extremo receptor, y un transcodificador.

Family Applications Before (1)

Application Number Title Priority Date Filing Date
ES05004865T Expired - Lifetime ES2319433T3 (es) 2001-04-24 2001-04-24 Procedimientos para cambiar el tamaño de una memoria de almacenamiento temporal de fluctuacion y para el alineamiento temporal, sistema de comunicaciones, fin de la recepcion y transcodificador.

Country Status (7)

Country Link
US (1) US20040120309A1 (es)
EP (2) EP1536582B1 (es)
AT (2) ATE353503T1 (es)
AU (1) AU2001258364A1 (es)
DE (2) DE60137656D1 (es)
ES (2) ES2319433T3 (es)
WO (1) WO2002087137A2 (es)

Families Citing this family (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6665317B1 (en) * 1999-10-29 2003-12-16 Array Telecom Corporation Method, system, and computer program product for managing jitter
SE0004839D0 (sv) * 2000-12-22 2000-12-22 Ericsson Telefon Ab L M Method and communication apparatus in a communication system
US7697447B2 (en) * 2001-08-10 2010-04-13 Motorola Inc. Control of jitter buffer size and depth
EP1444811A4 (en) * 2001-09-12 2006-03-01 Lycium Networks B V I Ltd METHOD FOR CALCULATING A JITTER BUFFER AND A PACKAGING DELAY
US7162418B2 (en) * 2001-11-15 2007-01-09 Microsoft Corporation Presentation-quality buffering process for real-time audio
US7170855B1 (en) * 2002-01-03 2007-01-30 Ning Mo Devices, softwares and methods for selectively discarding indicated ones of voice data packets received in a jitter buffer
US7065485B1 (en) * 2002-01-09 2006-06-20 At&T Corp Enhancing speech intelligibility using variable-rate time-scale modification
US7099820B1 (en) * 2002-02-15 2006-08-29 Cisco Technology, Inc. Method and apparatus for concealing jitter buffer expansion and contraction
US7103006B2 (en) * 2002-05-01 2006-09-05 International Business Machines Corporation Method, system, and article of manufacture for data transmission
US20040064308A1 (en) * 2002-09-30 2004-04-01 Intel Corporation Method and apparatus for speech packet loss recovery
US7525918B2 (en) * 2003-01-21 2009-04-28 Broadcom Corporation Using RTCP statistics for media system control
US7394833B2 (en) * 2003-02-11 2008-07-01 Nokia Corporation Method and apparatus for reducing synchronization delay in packet switched voice terminals using speech decoder modification
US7024358B2 (en) * 2003-03-15 2006-04-04 Mindspeed Technologies, Inc. Recovering an erased voice frame with time warping
CN1297099C (zh) * 2003-06-25 2007-01-24 华为技术有限公司 一种减小附加延时的实时流缓存去抖方法
US7274740B2 (en) 2003-06-25 2007-09-25 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7619995B1 (en) * 2003-07-18 2009-11-17 Nortel Networks Limited Transcoders and mixers for voice-over-IP conferencing
US7415044B2 (en) 2003-08-22 2008-08-19 Telefonaktiebolaget Lm Ericsson (Publ) Remote synchronization in packet-switched networks
GB2405773B (en) 2003-09-02 2006-11-08 Siemens Ag A method of controlling provision of audio communication on a network
US7596488B2 (en) * 2003-09-15 2009-09-29 Microsoft Corporation System and method for real-time jitter control and packet-loss concealment in an audio signal
CN1320805C (zh) * 2003-09-17 2007-06-06 上海贝尔阿尔卡特股份有限公司 一种分组交换网络自适应抖动缓冲区调整方法
US9325998B2 (en) 2003-09-30 2016-04-26 Sharp Laboratories Of America, Inc. Wireless video transmission system
DE60331008D1 (de) * 2003-11-11 2010-03-04 Ericsson Telefon Ab L M Anpassung eines playout-puffers auf der basis der audio-burst-länge
US20050104873A1 (en) * 2003-11-14 2005-05-19 Mallinath Hatti Last frame repeat
US8018850B2 (en) 2004-02-23 2011-09-13 Sharp Laboratories Of America, Inc. Wireless video transmission system
JP4462996B2 (ja) * 2004-04-27 2010-05-12 富士通株式会社 パケット受信方法及びパケット受信装置
US7424026B2 (en) * 2004-04-28 2008-09-09 Nokia Corporation Method and apparatus providing continuous adaptive control of voice packet buffer at receiver terminal
US7701886B2 (en) * 2004-05-28 2010-04-20 Alcatel-Lucent Usa Inc. Packet loss concealment based on statistical n-gram predictive models for use in voice-over-IP speech transmission
EP1754386A4 (en) * 2004-06-09 2010-03-03 Vanu Inc REDUCING THE COST OF THE CELLULAR TERRESTRIAL BOND
DE102004041015A1 (de) * 2004-08-24 2006-03-09 Siemens Ag Verfahren zum Umschalten einer Kommunikationsverbindung von einem ersten Verbindungsweg auf einen zweiten Verbindungsweg
CA2691959C (en) 2004-08-30 2013-07-30 Qualcomm Incorporated Method and apparatus for an adaptive de-jitter buffer
US7418013B2 (en) * 2004-09-22 2008-08-26 Intel Corporation Techniques to synchronize packet rate in voice over packet networks
US7674096B2 (en) * 2004-09-22 2010-03-09 Sundheim Gregroy S Portable, rotary vane vacuum pump with removable oil reservoir cartridge
US7783482B2 (en) * 2004-09-24 2010-08-24 Alcatel-Lucent Usa Inc. Method and apparatus for enhancing voice intelligibility in voice-over-IP network applications with late arriving packets
US8085678B2 (en) * 2004-10-13 2011-12-27 Qualcomm Incorporated Media (voice) playback (de-jitter) buffer adjustments based on air interface
SE0402571L (sv) * 2004-10-22 2005-09-27 Cpum Kodning av RFID
US7970020B2 (en) * 2004-10-27 2011-06-28 Telefonaktiebolaget Lm Ericsson (Publ) Terminal having plural playback pointers for jitter buffer
US20060107113A1 (en) * 2004-10-29 2006-05-18 Zhu Xing System and method for facilitating bi-directional test file transfer
US7797723B2 (en) 2004-10-30 2010-09-14 Sharp Laboratories Of America, Inc. Packet scheduling for video transmission with sender queue control
US8356327B2 (en) 2004-10-30 2013-01-15 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7784076B2 (en) 2004-10-30 2010-08-24 Sharp Laboratories Of America, Inc. Sender-side bandwidth estimation for video transmission with receiver packet buffer
CN1328891C (zh) * 2004-11-09 2007-07-25 北京中星微电子有限公司 一种ip网络环境下的语义完整性保障的方法
CN100341267C (zh) * 2004-12-02 2007-10-03 华为技术有限公司 混合打包时长的实时数据流去抖的实现方法
SE528248C2 (sv) * 2004-12-08 2006-10-03 Ericsson Telefon Ab L M Metod för kompensering av fördröjningar
JP2006189937A (ja) * 2004-12-28 2006-07-20 Toshiba Corp 受信装置、送受信装置、受信方法及び送受信方法
US7830862B2 (en) 2005-01-07 2010-11-09 At&T Intellectual Property Ii, L.P. System and method for modifying speech playout to compensate for transmission delay jitter in a voice over internet protocol (VoIP) network
US20060187970A1 (en) * 2005-02-22 2006-08-24 Minkyu Lee Method and apparatus for handling network jitter in a Voice-over IP communications network using a virtual jitter buffer and time scale modification
US8155965B2 (en) * 2005-03-11 2012-04-10 Qualcomm Incorporated Time warping frames inside the vocoder by modifying the residual
US8355907B2 (en) 2005-03-11 2013-01-15 Qualcomm Incorporated Method and apparatus for phase matching frames in vocoders
JP2006262417A (ja) * 2005-03-18 2006-09-28 Fujitsu Ltd 通信速度制御方法及びその装置
US20060251130A1 (en) * 2005-04-11 2006-11-09 Greer Steven C Method and apparatus for dynamic time-warping of speech
US8411662B1 (en) 2005-10-04 2013-04-02 Pico Mobile Networks, Inc. Beacon based proximity services
US9544602B2 (en) 2005-12-30 2017-01-10 Sharp Laboratories Of America, Inc. Wireless video transmission system
TWI305101B (en) * 2006-03-10 2009-01-01 Ind Tech Res Inst Method and apparatus for dynamically adjusting playout delay
US7652994B2 (en) 2006-03-31 2010-01-26 Sharp Laboratories Of America, Inc. Accelerated media coding for robust low-delay video streaming over time-varying and bandwidth limited channels
US8861597B2 (en) 2006-09-18 2014-10-14 Sharp Laboratories Of America, Inc. Distributed channel time allocation for video streaming over wireless networks
US7796626B2 (en) 2006-09-26 2010-09-14 Nokia Corporation Supporting a decoding of frames
US7652993B2 (en) 2006-11-03 2010-01-26 Sharp Laboratories Of America, Inc. Multi-stream pro-active rate adaptation for robust video transmission
US8279884B1 (en) * 2006-11-21 2012-10-02 Pico Mobile Networks, Inc. Integrated adaptive jitter buffer
EP2174516B1 (en) * 2007-05-15 2015-12-09 Broadcom Corporation Transporting gsm packets over a discontinuous ip based network
CN101325631B (zh) * 2007-06-14 2010-10-20 华为技术有限公司 一种估计基音周期的方法和装置
CN101802906B (zh) * 2007-09-21 2013-01-02 法国电信公司 传送误差隐藏的方法和装置、以及数字信号解码器
ES2542150T3 (es) * 2008-01-22 2015-07-31 Savox Communications Oy Ab (Ltd) Un procedimiento y disposición para conectar una red de comunicación ad-hoc a una red de comunicación permanente
US8281369B2 (en) * 2008-03-12 2012-10-02 Avaya Inc. Method and apparatus for creating secure write-enabled web pages that are associated with active telephone calls
US8223641B2 (en) * 2008-07-28 2012-07-17 Cellco Partnership Dynamic setting of optimal buffer sizes in IP networks
BR122019023709B1 (pt) 2009-01-28 2020-10-27 Dolby International Ab sistema para gerar um sinal de áudio de saída a partir de um sinal de áudio de entrada usando um fator de transposição t, método para transpor um sinal de áudio de entrada por um fator de transposição t e meio de armazenamento
PL3246919T3 (pl) 2009-01-28 2021-03-08 Dolby International Ab Ulepszona transpozycja harmonicznych
US8879464B2 (en) 2009-01-29 2014-11-04 Avaya Inc. System and method for providing a replacement packet
US9525710B2 (en) * 2009-01-29 2016-12-20 Avaya Gmbh & Co., Kg Seamless switch over from centralized to decentralized media streaming
US8238335B2 (en) 2009-02-13 2012-08-07 Avaya Inc. Multi-route transmission of packets within a network
US7936746B2 (en) * 2009-03-18 2011-05-03 Avaya Inc. Multimedia communication session coordination across heterogeneous transport networks
US20100265834A1 (en) * 2009-04-17 2010-10-21 Avaya Inc. Variable latency jitter buffer based upon conversational dynamics
US8094556B2 (en) * 2009-04-27 2012-01-10 Avaya Inc. Dynamic buffering and synchronization of related media streams in packet networks
US8553849B2 (en) 2009-06-17 2013-10-08 Avaya Inc. Personal identification and interactive device for internet-based text and video communication services
US8800049B2 (en) * 2009-08-26 2014-08-05 Avaya Inc. Licensing and certificate distribution via secondary or divided signaling communication pathway
CN103559891B (zh) * 2009-09-18 2016-05-11 杜比国际公司 改进的谐波转置
US9380401B1 (en) 2010-02-03 2016-06-28 Marvell International Ltd. Signaling schemes allowing discovery of network devices capable of operating in multiple network modes
US8321216B2 (en) * 2010-02-23 2012-11-27 Broadcom Corporation Time-warping of audio signals for packet loss concealment avoiding audible artifacts
US8744367B2 (en) 2010-08-31 2014-06-03 At&T Intellectual Property I, L.P. Tail optimization protocol for cellular radio resource allocation
KR101399604B1 (ko) * 2010-09-30 2014-05-28 한국전자통신연구원 지터버퍼 조정장치, 전자장치 및 그 방법
US8527627B2 (en) 2010-12-14 2013-09-03 At&T Intellectual Property I, L.P. Intelligent mobility application profiling with respect to identified communication bursts
US9220066B2 (en) * 2011-06-20 2015-12-22 At&T Intellectual Property I, L.P. Bundling data transfers and employing tail optimization protocol to manage cellular radio resource utilization
US9264872B2 (en) 2011-06-20 2016-02-16 At&T Intellectual Property I, L.P. Controlling traffic transmissions to manage cellular radio resource utilization
CN107978325B (zh) * 2012-03-23 2022-01-11 杜比实验室特许公司 语音通信方法和设备、操作抖动缓冲器的方法和设备
CN103888381A (zh) 2012-12-20 2014-06-25 杜比实验室特许公司 用于控制抖动缓冲器的装置和方法
EP3011692B1 (en) * 2013-06-21 2017-06-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Jitter buffer control, audio decoder, method and computer program
BR112015032174B1 (pt) 2013-06-21 2021-02-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V escalador de tempo, descodificador de áudio, método e um programa de computador utilizando um controle de qualidade
US9749178B2 (en) 2015-09-18 2017-08-29 Whatsapp Inc. Techniques to dynamically configure target bitrate for streaming network connections
US10412779B2 (en) * 2015-09-18 2019-09-10 Whatsapp Inc. Techniques to dynamically configure jitter buffer sizing
CN105554019B (zh) * 2016-01-08 2018-07-24 全时云商务服务股份有限公司 一种音频去抖动系统和方法
US10439951B2 (en) 2016-03-17 2019-10-08 Dolby Laboratories Licensing Corporation Jitter buffer apparatus and method
EP3553777B1 (en) * 2018-04-09 2022-07-20 Dolby Laboratories Licensing Corporation Low-complexity packet loss concealment for transcoded audio signals
CN109903752B (zh) * 2018-05-28 2021-04-20 华为技术有限公司 对齐语音的方法和装置
US10958301B2 (en) 2018-09-18 2021-03-23 Roku, Inc. Audio synchronization of a dumb speaker and a smart speaker using a spread code
US10931909B2 (en) * 2018-09-18 2021-02-23 Roku, Inc. Wireless audio synchronization using a spread code
US10992336B2 (en) 2018-09-18 2021-04-27 Roku, Inc. Identifying audio characteristics of a room using a spread code
CN117061827A (zh) * 2023-08-17 2023-11-14 广州开得联软件技术有限公司 图像帧处理方法、装置、设备及存储介质

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4076958A (en) * 1976-09-13 1978-02-28 E-Systems, Inc. Signal synthesizer spectrum contour scaler
JPS55111995A (en) * 1979-02-20 1980-08-29 Sharp Kk Method and device for voice synthesis
JPS57159192A (en) * 1981-03-27 1982-10-01 Hitachi Ltd Audio packet exchange system
US4885790A (en) * 1985-03-18 1989-12-05 Massachusetts Institute Of Technology Processing of acoustic waveforms
JP2884163B2 (ja) * 1987-02-20 1999-04-19 富士通株式会社 符号化伝送装置
US5012518A (en) * 1989-07-26 1991-04-30 Itt Corporation Low-bit-rate speech coder using LPC data reduction processing
US5226108A (en) * 1990-09-20 1993-07-06 Digital Voice Systems, Inc. Processing a speech signal with estimated pitch
JP3296822B2 (ja) * 1993-06-14 2002-07-02 テレフオンアクチーボラゲツト エル エム エリクソン Cdmaシステムのダウンリンクにおける伝送の時間調整
US5583652A (en) * 1994-04-28 1996-12-10 International Business Machines Corporation Synchronized, variable-speed playback of digitally recorded audio and video
US5825771A (en) * 1994-11-10 1998-10-20 Vocaltec Ltd. Audio transceiver
WO1996027249A1 (en) * 1995-02-28 1996-09-06 Motorola Inc. Voice compression in a paging network system
US5920840A (en) * 1995-02-28 1999-07-06 Motorola, Inc. Communication system and method using a speaker dependent time-scaling technique
US5699481A (en) * 1995-05-18 1997-12-16 Rockwell International Corporation Timing recovery scheme for packet speech in multiplexing environment of voice with data applications
JP3265962B2 (ja) * 1995-12-28 2002-03-18 日本ビクター株式会社 音程変換装置
US6360271B1 (en) * 1999-02-02 2002-03-19 3Com Corporation System for dynamic jitter buffer management based on synchronized clocks
FI109755B (fi) * 1997-11-13 2002-09-30 Nokia Corp Menetelmä matkaviestinjärjestelmän transkooderin ohjaamiseksi sekä matkaviestinjärjestelmä
CA2254706A1 (en) * 1997-12-02 1999-06-02 Northern Telecom Limited Speech reception via a packet transmission facility
US6301258B1 (en) * 1997-12-04 2001-10-09 At&T Corp. Low-latency buffering for packet telephony
US6452950B1 (en) * 1999-01-14 2002-09-17 Telefonaktiebolaget Lm Ericsson (Publ) Adaptive jitter buffering
US6754265B1 (en) * 1999-02-05 2004-06-22 Honeywell International Inc. VOCODER capable modulator/demodulator
US6389032B1 (en) * 1999-02-11 2002-05-14 International Business Machines Corporation Internet voice transmission
US6137734A (en) * 1999-03-30 2000-10-24 Lsi Logic Corporation Computer memory interface having a memory controller that automatically adjusts the timing of memory interface signals
US7117156B1 (en) * 1999-04-19 2006-10-03 At&T Corp. Method and apparatus for performing packet loss or frame erasure concealment
US6785230B1 (en) * 1999-05-25 2004-08-31 Matsushita Electric Industrial Co., Ltd. Audio transmission apparatus
US6934759B2 (en) * 1999-05-26 2005-08-23 Enounce, Inc. Method and apparatus for user-time-alignment for broadcast works
US6580694B1 (en) * 1999-08-16 2003-06-17 Intel Corporation Establishing optimal audio latency in streaming applications over a packet-based network
US6859460B1 (en) * 1999-10-22 2005-02-22 Cisco Technology, Inc. System and method for providing multimedia jitter buffer adjustment for packet-switched networks
US6757282B1 (en) * 1999-11-09 2004-06-29 Synchrodyne Networks, Inc. Fast switching of data packet with common time reference
US6683889B1 (en) * 1999-11-15 2004-01-27 Siemens Information & Communication Networks, Inc. Apparatus and method for adaptive jitter buffers
GB2360178B (en) * 2000-03-06 2004-04-14 Mitel Corp Sub-packet insertion for packet loss compensation in Voice Over IP networks
US6700895B1 (en) * 2000-03-15 2004-03-02 3Com Corporation Method and system for computationally efficient calculation of frame loss rates over an array of virtual buffers
US6862298B1 (en) * 2000-07-28 2005-03-01 Crystalvoice Communications, Inc. Adaptive jitter buffer for internet telephony
JP2002162998A (ja) * 2000-11-28 2002-06-07 Fujitsu Ltd パケット修復処理を伴なう音声符号化方法
US7006511B2 (en) * 2001-07-17 2006-02-28 Avaya Technology Corp. Dynamic jitter buffering for voice-over-IP and other packet-based communication systems

Also Published As

Publication number Publication date
US20040120309A1 (en) 2004-06-24
EP1536582A2 (en) 2005-06-01
ES2319433T3 (es) 2009-05-07
EP1536582B1 (en) 2009-02-11
EP1382143B1 (en) 2007-02-07
ATE422744T1 (de) 2009-02-15
AU2001258364A1 (en) 2002-11-05
WO2002087137A3 (en) 2003-03-13
DE60137656D1 (de) 2009-03-26
ATE353503T1 (de) 2007-02-15
EP1382143A2 (en) 2004-01-21
EP1536582A3 (en) 2005-06-15
DE60126513T2 (de) 2007-11-15
WO2002087137A2 (en) 2002-10-31
DE60126513D1 (de) 2007-03-22

Similar Documents

Publication Publication Date Title
ES2280370T3 (es) Metodos para cambiar el tamaño de una memoria intermedia de fluctuacion y para la alineacion temporal, un sistema de comunicaciones, un extremo receptor, y un transcodificador.
US8243761B2 (en) Decoder synchronization adjustment
EP1746580B1 (en) Acoustic signal packet communication method, transmission method, reception method, and device and program thereof
AU2006252972B2 (en) Robust decoder
US7319703B2 (en) Method and apparatus for reducing synchronization delay in packet-based voice terminals by resynchronizing during talk spurts
JP5149198B2 (ja) 音声コーデック内の効率的なフレーム消去隠蔽の方法およびデバイス
KR100722707B1 (ko) 멀티미디어 신호를 전송하기 위한 전송 시스템
KR20040047745A (ko) 포즈 정보를 인코딩 및 디코딩하는 방법 및 장치
ES2284473T3 (es) Metodo y aparato para determinar parametros de codificacion de voz.
US20130294463A1 (en) Network jitter smoothing with reduced delay
US7444281B2 (en) Method and communication apparatus generation packets after sample rate conversion of speech stream
US20060074681A1 (en) Method and apparatus for enhancing voice intelligibility in voice-over-IP network applications with late arriving packets
JPH07334191A (ja) パケット音声復号方法
KR100594599B1 (ko) 수신단 기반의 패킷 손실 복구 장치 및 그 방법
JP4437052B2 (ja) 音声復号化装置および音声復号化方法
Nam et al. Adaptive playout algorithm using packet expansion for the VoIP
Gokhale Packet loss concealment in voice over internet
Westerlund Media-specific Forward Error Correction in a CELP Speech Codec Applied to IP Networks
Bhute et al. Adaptive Playout Scheduling and Packet Loss Concealment Based on Time-Scale Modification for Voice Transmission over IP