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 PDFInfo
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/18—Service support devices; Network management devices
- H04W88/181—Transcoding devices; Rate adaptation devices
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Processing 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/04—Time compression or expansion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/062—Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
- H04J3/0632—Synchronisation 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.
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.
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.
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.
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.
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.
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.
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}).
\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).
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)
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)
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 |
-
2001
- 2001-04-24 AT AT01931645T patent/ATE353503T1/de not_active IP Right Cessation
- 2001-04-24 DE DE60137656T patent/DE60137656D1/de not_active Expired - Lifetime
- 2001-04-24 ES ES05004865T patent/ES2319433T3/es not_active Expired - Lifetime
- 2001-04-24 US US10/475,779 patent/US20040120309A1/en not_active Abandoned
- 2001-04-24 WO PCT/EP2001/004608 patent/WO2002087137A2/en active IP Right Grant
- 2001-04-24 ES ES01931645T patent/ES2280370T3/es not_active Expired - Lifetime
- 2001-04-24 DE DE60126513T patent/DE60126513T2/de not_active Expired - Lifetime
- 2001-04-24 AU AU2001258364A patent/AU2001258364A1/en not_active Abandoned
- 2001-04-24 EP EP05004865A patent/EP1536582B1/en not_active Expired - Lifetime
- 2001-04-24 AT AT05004865T patent/ATE422744T1/de not_active IP Right Cessation
- 2001-04-24 EP EP01931645A patent/EP1382143B1/en not_active Expired - Lifetime
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 |