ES2319433T3 - 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. - Google Patents
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. Download PDFInfo
- Publication number
- ES2319433T3 ES2319433T3 ES05004865T ES05004865T ES2319433T3 ES 2319433 T3 ES2319433 T3 ES 2319433T3 ES 05004865 T ES05004865 T ES 05004865T ES 05004865 T ES05004865 T ES 05004865T ES 2319433 T3 ES2319433 T3 ES 2319433T3
- Authority
- ES
- Spain
- Prior art keywords
- temporary
- transcoder
- voice data
- temporary storage
- voice
- 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
Un procedimiento para llevar a cabo un alineamiento temporal en un transcodificador de un sistema de comunicaciones radio, cuyo alineamiento temporal se usa para disminuir un retardo de almacenamiento temporal, el mencionado retardo temporal resultante del almacenamiento temporal de los datos de voz codificados por el mencionado transcodificador antes de transmitir los mencionados datos de voz sobre una interfaz radio del mencionado sistema de comunicaciones radio con el fin de compensar un desplazamiento de fase en una estructura de tramas de los mencionados datos de voz en el mencionado transcodificador y en la mencionada interfaz radio, comprendiendo el procedimiento: - determinar si se tiene que llevar a cabo un alineamiento temporal; y - en el caso de que se determine que se tiene que llevar a cabo un alineamiento temporal, condensar los datos de voz para conseguir el alineamiento de tiempo requerido por medio de descartar al menos una trama de los datos de voz, en el que los parámetros de la ganancia y los coeficientes de codificación predictiva lineal de tramas de los datos de voz que rodean a la al menos una trama descartada son modificados para combinar de manera gradual las tramas que rodean la al menos una trama descartada.
Description
Procedimientos para cambiar el tamaño de una
memoria de almacenamiento temporal de fluctuación y para el
alineamiento temporal, sistema de comunicaciones, fin de la
recepción y transcodificador.
La invención se refiere a un procedimiento para
llevar a cabo un alineamiento temporal en un transcodificador de un
sistema de comunicaciones radio, cuyo alineamiento temporal se usa
para disminuir un retardo de memoria de almacenamiento temporal, el
mencionado retardo de memoria de almacenamiento temporal siendo
resultado del almacenamiento temporal de datos de voz codificados
por el mencionado transcodificador antes de transmitir los
mencionados datos de voz sobre una interfaz radio del mencionado
sistema de comunicaciones radio con el fin de compensar un
desplazamiento de fase en una estructura de tramas de los
mencionados datos de voz en el mencionado transcodificador y en la
mencionada interfaz radio. Además, la invención se refiere a dicho
sistema de comunicaciones y a un transcodificador para un sistema de
comunicaciones radio y a un aparato.
Un ejemplo de una red por paquetes es una red de
voz sobre IP (VoIP).
La telefonía IP o la voz sobre IP (VoIP) hace
posible a los usuarios transmitir señales de audio, como la voz,
sobre el protocolo de Internet. El envío de voz por Internet se hace
por medio de la inserción de muestras de voz o de voz comprimida
dentro de paquetes. Los paquetes son entonces encaminados de manera
independiente unos de los otros a su destino de acuerdo con la
dirección IP incluida en cada uno de los paquetes.
Una desventaja en la telefonía IP es la
disponibilidad y el funcionamiento de redes. Aunque las redes
locales podrían ser estables y previsibles, Internet a menudo está
congestionada y no existen garantías de que los paquetes no se
pierdan o se retrasen de manera significativa. Los paquetes perdidos
o los retardos largos tienen un efecto inmediato sobre la calidad
de la voz, en la reciprocidad y en el ritmo de la conversación.
Debido al encaminamiento independiente de los
paquetes, los paquetes además tardan tiempos variables en atravesar
la red. La variación en los tiempos de llegada de los paquetes se
denomina fluctuación. Para reproducir la voz en el extremo de
recepción de manera correcta, sin embargo, los paquetes deben estar
en el orden de transmisión y espaciados de manera equidistante.
Para conseguir este requisito se puede emplear una memoria de
almacenamiento temporal de fluctuación. La memoria de
almacenamiento temporal de fluctuación puede estar situada antes o
después de un descodificador usado en el extremo de recepción para
la descodificación de la voz que fue descodificada para la
transmisión. En la memoria intermedia de fluctuación, el orden
correcto de los paquetes se puede asegurar entonces por medio de la
comprobación de los números de secuencia contenidos en los paquetes.
Las consignas de tiempo igualmente contenidas se pueden usar de
manera adicional para determinar el nivel de fluctuación de la red y
para compensar la fluctuación en la reproducción.
El tamaño de la memoria intermedia de
fluctuación, sin embargo, tiene un efecto contrario sobre el número
de paquetes que se pierden y sobre el retardo extremo a extremo. Si
la memoria intermedia de fluctuación es muy pequeña, se pierden
muchos paquetes porque han llegado después de su punto de
reproducción. Por otra parte, si la memoria intermedia de
fluctuación es muy grande, aparece un retardo extremo a extremo
excesivo. Ambos, tanto la pérdida de paquetes como el retardo
extremo a extremo, tienen un efecto sobre la calidad de la voz. Por
lo tanto, el tamaño de la memoria de almacenamiento temporal de
fluctuación no tiene resultado en un valor aceptable para ambos, la
pérdida de paquetes y el retardo. Como ambos pueden variar con el
tiempo, se tienen que emplear las memorias de almacenamiento
temporal de fluctuación adaptables con el fin de poder garantizar
de manera continua un buen compromiso para los dos factores. El
tamaño de una memoria de almacenamiento temporal de fluctuación
adaptable se puede cambiar en base a los retardos medidos de los
paquetes de voz recibidos y de las varianzas de retardo medidas
entre los paquetes de voz recibidos.
Procedimientos conocidos ajustan el tamaño de la
memoria de almacenamiento temporal de fluctuación al comienzo de un
chorro de voz. Al comienzo de un chorro de voz y por lo tanto al
final de una pausa en la voz, la voz reproducida no se ve afectada
por el ajuste del tamaño de la memoria de almacenamiento temporal de
fluctuación. Esto quiere decir, sin embargo, que se tiene que
retrasar un ajuste hasta que ocurra un comienzo de un chorro de voz
y que se necesite un detector de actividad de voz (VAD). Dichos
procedimientos se describen por ejemplo, en "An algorithm for
playout of packet voice based on adaptive adjustment of talkspurt
silence periods", LCN '99, Conferencia sobre Redes de
Ordenadores Locales, 1999, páginas 224 a la 231, de J. Pinto y de
K. J. Christensen, y en "Adaptive playout mechanisms for
packetized audio applications in wide-area
networks", INFOCOM '94, 13ª Actas IEEE Trabajo en Red para
Comunicaciones Globales, 1994, páginas 680 a 688, vol. 2, de R.
Ramjee, J. Kurose, D. Towsley y H. Schulzrinne.
Un problema similar con las memorias de
almacenamiento temporal de fluctuación puede surgir, por ejemplo, en
voz sobre redes ATM.
\newpage
Un problema similar puede surgir además durante
el alineamiento temporal en GSM (sistema global para comunicaciones
móviles) o sistemas 3G (de tercera generación). En los sistemas de
comunicaciones radio como GSM o en un sistema 3G, la interfaz radio
requiere una fuerte sincronización entre la transmisión de enlace
ascendente y la transmisión de enlace descendente. Sin embargo, al
inicio de la llamada o después de un traspaso, el desplazamiento de
fase inicial entre la estructura en tramas de enlace ascendente y
enlace descendente en un transcodificador usado sobre el lado de
red para la codificación de datos para las transmisiones de enlace
descendente y para la descodificación de datos a partir de las
transmisiones de enlace ascendente es diferente del correspondiente
desplazamiento de fase en la interfaz radio. Este desplazamiento de
fase también se puede ver en el desplazamiento de fase solamente de
la estructura de tramas de enlace descendente en el transcodificador
y en una interfaz radio del sistema de comunicaciones radio. Por lo
tanto, se necesita una memoria de almacenamiento temporal de enlace
descendente para conseguir una correcta sincronización para la
interfaz radio, cuya memoria de almacenamiento temporal está
incluida en GSM en una estación base y en redes 3G en un controlador
de red radio (RNC) del sistema de comunicaciones. El almacenamiento
temporal 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, se puede
utilizar un procedimiento de alineamiento temporal en el lado de
red. El alineamiento temporal se usa para alinear el desplazamiento
de fase en la estructura de trama del transcodificador y de esta
manera minimizar el retardo de almacenamiento temporal después de
un establecimiento de llamada o de un traspaso. Durante el
alineamiento temporal, la estación base o el controlador de red
radio solicita al transcodificador llevar a cabo un alineamiento
temporal deseado. En el alineamiento temporal, el instante de tiempo
de transmisión de una trama de voz codificada y las siguientes
tramas necesitan ser adelantadas o retrasadas. Por lo tanto, la
ventana (una trama de voz) de la memoria de almacenamiento temporal
de entrada de muestras lineales antes del codificador se tiene que
desplazar en la dirección deseada en una cantidad de muestras
solicitadas por la estación base. En el momento actual, se lleva a
cabo un alineamiento temporal por medio de arrojar o repetir
muestras de voz, lo que conduce a un deterioro de la calidad de la
voz.
La patente de los Estados Unidos 5.664.044
pretende proporcionar un sistema y un procedimiento para permitir
la reproducción sincronizada controlada por el usuario a velocidad
variable de una presentación de audio/vídeo existente grabada en
formato digital. El flujo de datos digitales es un flujo de datos de
audio/vídeo comprimido tal como el que se especifica en la norma
MPEG. En una realización, el usuario controla directamente la
velocidad de la reproducción de vídeo por medio de la configuración
de un factor de escala de vídeo. La longitud de tiempo necesaria
para reproducir una trama de de audio se ajusta entonces de manera
automática usando el procedimiento de escalado armónico en el
dominio del tiempo de forma que se adapte de manera aproximada a la
longitud de tiempo en el que se visualiza una trama de vídeo. El
número de tramas de audio digital comprimido en una memoria de
almacenamiento temporal de audio se supervisa y se ajusta el factor
de escala armónico en el dominio del tiempo de manera continua
durante la reproducción para asegurar que la memoria intermedia de
audio no se desborda o se infradesborda. Un estado de
infradesbordamiento o de desbordamiento en la memoria intermedia de
almacenamiento temporal de audio causalmente provocaría una pérdida
de la sincronizacion entre el audio y el vídeo.
Es un objeto de la invención mejorar el
alineamiento temporal en los sistemas de comunicaciones por
radio.
Este objeto se alcanza por una parte con un
procedimiento para llevar a cabo un alineamiento temporal en un
transcodificador de un sistema de comunicaciones radio, cuyo tiempo
de alineamiento se usa para disminuir un retardo en la memoria de
almacenamiento temporal, el mencionado retardo en la memoria de
almacenamiento temporal siendo el resultado del almacenamiento
temporal de los datos de voz codificados por el mencionado
transcodificador antes de transmitir los mencionados datos de voz
sobre una interfaz radio del mencionado sistema de comunicaciones
radio con el fin de compensar un desplazamiento de fase en una
estructura de tramas de los mencionados datos de voz por parte del
mencionado transcodificador y por la mencionada interfaz radio.
Primeramente, se determinó si se ha llevado a cabo un alineamiento
temporal.
En el caso en el que se determine que se ha
llevado a cabo un alineamiento temporal, los datos de voz se
condensan para conseguir el alineamiento temporal requerido por
medio del descarte de al menos una trama de los datos de voz. Los
parámetros de ganancia y los coeficientes de codificación predictiva
lineales (LPC) de tramas de datos de voz que rodean a la al menos
una trama descartada son además modificados para combinar de manera
gradual las tramas que rodean la al menos una trama descartada.
El objeto de la invención se alcanza por otra
parte con un sistema de comunicaciones radio que comprende al menos
una interfaz radio para la transmisión de datos de voz codificados y
al menos un transcodificador. Dicho transcodificador incluye al
menos un codificador para codificar los datos de voz para su uso
para una transmisión a través de la mencionada interfaz radio. El
transcodificador incluye de manera adicional un medio de procesado
para llevar a cabo un alineamiento temporal sobre las muestras de
voz codificadas de acuerdo con el procedimiento propuesto. El
sistema de comunicaciones radio comprende además un medio de
almacenamiento temporal dispuesto entre la mencionada interfaz
radio y el mencionado transcodificador para el almacenamiento
temporal de datos de voz codificados por el mencionado
transcodificador antes de la transmisión de los mencionados datos de
voz codificados a través de la mencionada interfaz radio con el fin
de compensar un desplazamiento de fase en una estructura de tramas
de los mencionados datos de voz por parte del mencionado
transcodificador y por parte de la mencionada interfaz radio.
Finalmente, el sistema de comunicaciones radio comprende un medio de
procesado para determinar si y hasta qué extensión las muestras de
voz codificadas por el mencionado codificador tienen que ser
alineadas temporalmente antes de la transmisión con el fin de
minimizar un retardo de memoria de almacenamiento temporal para los
datos de voz codificados resultantes de un almacenamiento temporal
por el mencionado medio de almacenamiento temporal. El objeto de la
invención se alcanza de igual manera con dicho transcodificador
para un sistema de comunicaciones radio.
La invención se basa en la idea de que el
alineamiento de tiempo en un transcodificador de un sistema de
comunicaciones radio se podría conseguir con menos efecto sobre las
muestras de voz codificadas, si no se lleva a la práctica
simplemente arrojando o repitiendo muestras de voz, sino más bien
por medio de la compensación del alineamiento temporal de una
manera más sofisticada que dé como resultado menos efecto en la
calidad de los datos de voz. La compensación propuesta de un
alineamiento de tiempo asegura solamente transiciones graduales
dentro de los datos de voz alineados. De esta manera, es una
ventaja de la invención que hace posible de una manera sencilla un
alineamiento temporal mejorado.
Se ha de hacer notar que expresado de manera
estricta el desplazamiento de fase mencionado se refiere a la
diferencia temporal del envío y la recepción del primer bit de datos
de una trama sobre un enlace ascendente frente a un enlace
descendente, es decir, cómo se alinean las tramas de datos en el
tiempo en un punto de observación en diferentes direcciones de
transmisión. Para GSM, por ejemplo, inicialmente esta diferencia de
tiempo no es igual entre interfaces radio e interfaces abis. Después
del alineamiento temporal, la diferencia de tiempo debería ser casi
igual, es decir, mínimo almacenamiento temporal.
Resulta obvio que la invención se basa en el
cambio de la cantidad de datos de audio disponibles en el momento
presente en base a estos datos de audio existentes de forma que se
pueda conseguir un cambio necesario sin un deterioro severo de los
datos de audio durante la transmisión en curso.
La invención se puede emplear en particular,
aunque no de manera exclusiva, en una pasarela de medios, así como
también en alineamientos GSM y en alineamientos de tiempo 3G.
A continuación, la explicación se explica con
más detalle con referencia a los dibujos, de los cuales,
La figura 1 ilustra el principio de tres
enfoques para el cambio del tamaño de memoria de almacenamiento
temporal de fluctuación;
La figura 2 muestra diagramas que ilustran un
aumento en el tamaño de la memoria de almacenamiento temporal de
fluctuación de acuerdo con primer enfoque en base a un procedimiento
para el manejo de una trama mala;
La figura 3 muestra diagramas que ilustran una
disminución en el tamaño de la memoria intermedia de fluctuación de
acuerdo con el primer enfoque;
La figura 4 muestra diagramas que ilustran el
principio de un escalado de tiempo en el dominio del tiempo de
acuerdo con un segundo enfoque;
La figura 5 es un diagrama de flujo del segundo
enfoque;
La figura 6 muestra diagramas que ilustran de
manera adicional el segundo enfoque;
La figura 7 muestra diagramas que ilustran el
principio de un tercer enfoque de un tercer escalado en el tiempo en
el dominio de la frecuencia;
La figura 8 es un diagrama de flujo del tercer
enfoque;
La figura 9 muestra señales de memoria de
almacenamiento temporal de fluctuación antes y después del escalado
de tiempo de acuerdo con el tercer enfoque;
La figura 10 es un diagrama de flujo que ilustra
un cuarto enfoque que cambia un tamaño de memoria de almacenamiento
temporal de fluctuación en el dominio paramétrico;
La figura 11 muestra de manera esquemática una
parte de un primer sistema;
La figura 12 muestra de manera esquemática una
parte de un segundo sistema; y
La figura 13 muestra de manera esquemática una
parte de un tercer sistema; y
La figura 14 muestra de manera esquemática un
sistema de comunicaciones en el que se puede emplear un alineamiento
temporal de acuerdo con la invención.
En el lado izquierdo de la figura 1, se muestra
un incremento de un flujo de paquetes, mientras que en el lado
izquierdo, se muestra una disminución de un flujo de paquetes. La
parte superior de la figura muestra para ambos casos flujos
originales, la parte intermedia para ambos casos de flujos tratados
de acuerdo de acuerdo con un primer enfoque y la parte inferior
para ambos casos de flujos tratados de acuerdo con un segundo o un
tercer enfoque.
En la parte superior izquierda de la figura 1,
se indica un primer flujo de paquetes con ocho paquetes originales
1 al 8 que incluyen datos de voz. Este flujo de paquetes está
contenido en una memoria de almacenamiento temporal de fluctuación
de un extremo de recepción en una red de voz sobre IP antes de que
sea necesario un aumento del tamaño de la memoria de almacenamiento
temporal de fluctuación. En la parte superior derecha de la figura
1, se indica un segundo flujo de paquetes con nueve paquetes 9 al 17
incluyendo datos de voz. Estos flujos de paquetes están contenidos
en una memoria de almacenamiento temporal de fluctuación de un
extremo de recepción en una red de voz sobre IP antes de que sea
necesaria una disminución del tamaño de la memoria de almacenamiento
temporal de fluctuación.
En el lado izquierdo en la parte media de la
figura 1, se muestra el primer flujo de paquetes después de un
incremento del tamaño de memoria de almacenamiento temporal de
fluctuación. El tamaño de la memoria de almacenamiento temporal de
fluctuación se aumento por medio de proporcionar un espacio vacío de
la longitud de un paquete entre el paquete original 4 y el paquete
original 5 del flujo de paquetes en la memoria de almacenamiento
temporal de fluctuación. Este espacio vacío se rellena por medio de
un paquete 18 generado de acuerdo con manejo de trama mala BFH como
se define en el códec ITU-T G.711 anteriormente
mencionado, el espacio vacío siendo simplemente considerado como un
paquete vacío. El tamaño del flujo original se expande de esta
manera en la longitud de un paquete.
En el lado derecho en la parte media de la
figura 1, en contraste, se muestra el segundo flujo de paquetes
después de una disminución del tamaño de la memoria de
almacenamiento temporal de fluctuación. Se realiza en la primera
aproximación descrita por medio del solapamiento de dos paquetes
consecutivos, en este ejemplo, el paquete original 12 y el paquete
original 13 del segundo flujo de paquetes. El solapamiento reduce el
número de muestras de voz contenidas en la memoria de
almacenamiento temporal de fluctuación en la longitud de un
paquete, cuyo tamaño puede reducirse de esta manera en la longitud
de un paquete.
En el lado izquierdo en la parte inferior de la
figura 1, el primer flujo de paquetes se muestra de nuevo después
de un aumento del tamaño de la memoria de almacenamiento temporal de
fluctuación lo que da como resultado un espacio vacío de la
longitud de un paquete entre los paquetes originales 4 y 5 del
primer flujo de paquetes. Esta vez, sin embargo, los paquetes
originales 4 y 5 estaban escalados en el tiempo en el dominio del
tiempo o en el dominio de la frecuencia de acuerdo con una segunda
o con una tercera aproximación con el fin de rellenar el espacio
vacío resultante. Esto quiere decir que los datos de los paquetes
originales 4 y 5 fueron expandidos para rellenar el espacio de tres
en lugar de dos paquetes. El tamaño del flujo original fue expandido
de esta manera en la longitud de un paquete.
En el lado derecho en la parte inferior de la
figura 1, finalmente, se muestra el segundo flujo de paquetes de
nuevo después de una disminución del tamaño de memoria intermedia de
fluctuación. La disminución correspondiente del flujo de datos se
realizó de acuerdo con la segunda o con la tercera aproximación por
medio del escalado de tiempo de los datos de los tres paquetes
originales respecto de la longitud de dos paquetes. En el ejemplo
que se presenta, los datos de los paquetes originales 12 al 14 del
segundo flujo de paquetes se condensaron a la longitud de dos
paquetes. El tamaño del flujo original se redujo de esta manera en
la longitud de un paquete.
El aumento y la disminución del tamaño de la
memoria intermedia de fluctuación de acuerdo con la primera
aproximación se explicarán ahora con detalle con referencia a las
figuras 2 y 3.
La figura 2 está tomada del apéndice de la
especificación ITU-T G.711, en el que se usa para la
ilustración de ocultación de paquetes perdidos, mientras que aquí
se usa para ilustrar la primera aproximación, en la que se llama al
gestor de trama mala ITU-T entre paquetes adyacentes
para compensar un aumento del tamaño de la memoria de
almacenamiento temporal de fluctuación.
La figura 2 muestra tres diagramas que
representan la amplitud de las señales sobre el número de muestra de
las señales. En el primer diagrama se muestra la entrada de las
señales a la memoria de almacenamiento temporal de fluctuación,
mientras que un segundo y un tercer diagrama muestran voz
sintetizada en dos puntos diferentes en el tiempo. Los diagramas
ilustran cómo se aumenta el tamaño de la memoria de almacenamiento
temporal de fluctuación de acuerdo con el primer enfoque
correspondiente a una gestión de trama mala presentada en el
anteriormente citado códec ITU-T G.711. Como se ha
mencionado con anterioridad, la citada norma describe un
procedimiento de ocultación de pérdida de paquetes para el códec
ITU-T G.711 en base a la forma de onda de réplica de
tono.
El tamaño de los paquetes empleados en esta
aproximación es de 20 ms, que corresponde a 160 muestras. El BFH se
modificó para poder usar paquetes de 20 ms.
Los paquetes llegados así como los paquetes
sintetizados son guardados en una memoria de almacenamiento temporal
de historial de una longitud de 390.
Después de un aumento del tamaño de la memoria
de almacenamiento temporal de fluctuación en la longitud de dos
paquetes, existe un espacio vacío en la memoria de almacenamiento
temporal de fluctuación correspondiente a los dos paquetes
perdidos, indicado por el primer diagrama de la figura 2 por medio
de una línea horizontal que conecta las señales recibidas. Al
inicio de cada espacio vacío, los contenidos de la memoria de
almacenamiento temporal de historial son copiados a una memoria de
almacenamiento temporal de tonos que se usa por todo el espacio
vacío para encontrar una forma de onda sintética que pueda ocultar
el espacio vacío. En la situación del primer diagrama, las muestras
que están a la izquierda de los dos paquetes vacíos, es decir, las
muestras que hayan llegado antes del aumento del tamaño, forman el
contenido actual de la memoria de almacenamiento temporal de
tonos.
Se usa un procedimiento de correlación cruzada
ahora para calcular una estimación de período de tono a partir de
la memoria de almacenamiento temporal de tonos. Como se ilustra en
el segundo diagrama de la figura 2, el primer paquete vacío es
entonces sustituido por medio de la réplica de la forma de onda que
comienza una longitud de período de tono de nuevo desde el final de
la memoria de almacenamiento temporal de historial, indicada con
una línea vertical a la que se hace referencia por medio de 21, en
el número requerido. Para asegurar una transición gradual entre la
voz real y la voz sintetizada, así como entre las formas de onda de
longitud de onda del período de tono repetido, las últimas 30
muestras de la memoria de almacenamiento temporal de historial, en
la región limitada por una vertical y una línea inclinada a la que
se hace referencia por medio de 22 en el primer diagrama, se suman
solapadas con las 30 muestras que preceden a la forma de onda
sintética en la región limitada por la línea vertical 21 y una línea
inclinada conectada. La señal solapada sustituye a las últimas 30
muestras 22 en la memoria de almacenamiento temporal de tonos. Este
procedimiento de adición de solapamiento provoca un retardo
algorítmico de 3,75 ms, o de 30 muestras. De la misma manera, se
asegura una transición gradual entre formas de onda de longitud de
período de tono
repetidas.
repetidas.
La forma de onda sintética además se amplía más
allá de la duración de paquetes vacíos para asegurar una transición
gradual entre la forma de onda sintética y la señal recibida con
posterioridad. La longitud de la extensión 23 es de 4 ms. Al final
del espacio vacío, la extensión se eleva en 4 ms por paquete vacío
añadido. La longitud de extensión máxima es de 10 ms. Al final del
espacio vacío esta extensión se solapa con la señal del primer
paquete después del espacio vacío, estando indicada la región de
solape en la figura con la línea inclinada 25. El segundo diagrama
de la figura 2 ilustra el estado de la señal sintentizada después de
10 ms, cuando se hayan replicado las muestras de una longitud de
paquete.
En el caso de que haya un segundo paquete vacío
añadido, como en el primer diagrama de la figura 2, se añade otro
período de tono a la memoria de almacenamiento temporal de tonos.
Ahora, la forma de onda que vaya a ser replicada es de dos períodos
de tono de longitud y comienza desde la línea vertical a la que se
hace referencia por 24. A continuación, las 30 muestras 24
anteriores a la memoria de almacenamiento temporal de tonos se
solapan añadidas con las últimas 30 muestras 22 en la memoria de
almacenamiento temporal de tonos. Una vez más, la señal solapada
sustituye a las 30 últimas muestras de la región 22 en la memoria de
almacenamiento temporal de tonos. Se asegura una transición gradual
entre una y dos señales de longitud de período de tono por medio de
la realización de la adición de un solapamiento entre las regiones
indicadas por 23 y 26. La región 26 se coloca por medio de la
sustracción de períodos de tonos hasta que el puntero de tonos esté
en la primera longitud de onda de la parte actualmente usada de la
memoria de almacenamiento temporal de tonos. El resultado de la
adición de solapamientos sustituye a las muestras de la región 23.
El tercer diagrama de la figura 2 muestra la señal sintetizada en
la que se ocultó un espacio vacío de la longitud de dos paquetes
añadido para un incremento en el tamaño de la memoria de
almacenamiento temporal de fluctuación.
Si se aumenta el tamaño de la memoria de
almacenamiento temporal de fluctuación, se añadiría otro período de
tono a la memoria de almacenamiento temporal de tonos. Sin embargo,
si el aumento en el tamaño de la memoria de almacenamiento temporal
de fluctuación es grande, es más probable que la señal de
sustitución falsifique a la señal original. Se usa atenuación para
disminuir este problema. El primer paquete de sustitución no se
atenúa. El segundo paquete se atenúa con una rampa lineal. El
extremo del paquete se atenúa en un 50 % en comparación al inicio
con el tamaño de paquete usado de 20 ms. Esta atenuación también se
usa para los siguientes paquetes. Esto quiere decir que después de
3 paquetes (60 ms) la amplitud de la señal es de cero.
De manera similar, los procedimientos de manejo
de trama mala de los codificadores de voz paramétricos se pueden
emplear para compensar un incremento del tamaño de la memoria de
almacenamiento temporal de fluctuación.
La figura 3 ilustra cómo se disminuye el tamaño
de memoria de almacenamiento temporal de fluctuación de acuerdo con
la primera aproximación por medio del solapamiento de dos paquetes
adyacentes. Para este fin, la figura muestra tres diagramas que
representan la amplitud de las señales con el número de muestra de
las señales.
El primer diagrama de la figura 3 muestra las
señales de cuatro paquetes 31 al 34 almacenados en ese momento en
una memoria de almacenamiento temporal de fluctuación antes de una
disminución en el tamaño, cada uno de los paquetes conteniendo 160
muestras. Ahora, el tamaño de la memoria de almacenamiento temporal
de fluctuación va a ser disminuida en un paquete. Para este fin, se
multiplican dos paquetes adyacentes 32, 33 con una función de rampa
de bajada 36 y una función de rampa de subida 37 respectivamente,
como se indica en el primer diagrama. Después, los paquetes
multiplicados 32, 33 de las señales son solapados, lo que se muestra
en el segundo diagrama de la figura 3. Finalmente, la parte
solapada de la señal 32/33 se añade como se muestra en el tercer
diagrama de la figura 3, el cuarto paquete estando ahora formado
por el paquete 35 siguiente al cuarto paquete original 34. El
resultado de la adición de solapamiento es una señal que comprende
un paquete menos que la señal original, y este paquete eliminado
hace posible una disminución del tamaño de la memoria de
almacenamiento temporal de fluctuación.
Cuando el tamaño de la memoria de almacenamiento
temporal de fluctuación vaya a ser decrementado en más de un
paquete a la vez, ningún paquete adyacente sino paquetes separados
se adicionan solapados, y se descartan los paquetes entre ellos.
Por ejemplo, si el tamaño de la memoria de almacenamiento temporal
de fluctuación va a ser cambiado de tres paquetes a uno, el primer
paquete de la memoria de almacenamiento temporal de fluctuación se
añade solapado con el tercer paquete de la memoria de almacenamiento
temporal de fluctuación como se describe para los paquetes 32 y 33
con referencia a la figura 3, y el segundo paquete se descarta.
En un segundo enfoque, un aumento y una
disminución inmediatos de un tamaño de memoria de almacenamiento
temporal de fluctuación es habilitada por medio de un procedimiento
de escalado en el tiempo en el dominio del tiempo, y de manera más
particular por medio de una forma de un procedimiento de adición de
solapamiento de similitud de forma de onda (WSOLA) descrito en el
documento anteriormente mencionado "una técnica de solapamiento -
adición basada en la similitud de la forma de onda (WSOLA) para la
modificación de escala de tiempo de alta calidad de la voz".
El procedimiento WSOLA se ilustra para un
escalado de tiempo de ejemplo resultante de una reducción de
muestras de una señal de la figura 4, que comprende en la parte
superior una forma de onda original x(n) y en la parte
inferior una forma de onda sintética y(n) construida con
valores adecuados de la forma de onda original x(n). n
indica la muestra respectiva de las señales. El procedimiento WSOLA
se basa en la construcción de una forma de onda sintética que
mantenga una similitud local máxima con la señal original. La forma
de onda sintética y(n) y la forma de onda original
x(n) tienen una similitud máxima alrededor de tiempos
especificados por una función de distorsión 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 cortado
de la forma de onda original x(n). Este segmento 41 es el
último segmento que fue añadido como un segmento de síntesis A a la
forma de onda sintetizada y(n). El segmento A fue solapado -
añadido 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 va a ser
cortado a partir de la señal de entrada x(n) en torno al
instante de tiempo \tau^{-1}(S_{k}), y el solapamiento
es añadido a la señal de salida y(n) en el instante S_{k} =
kS. Como se puede ver en la figura, el segmento 41' de la señal de
entrada x(n) se solaparía perfectamente con el segmento 41
de la señal de entrada x(n). El segmento 41' se usa por lo
tanto como una plantilla cuando se elige un segmento 42 en torno a
un instante de tiempo \tau^{-1}(S_{k}) de la señal de
entrada x(n) que va a ser usada como un siguiente segmento
de sintaxis B. Se calcula una medida de similitud entre el segmento
41' y el segmento 42 para encontrar el valor de desplazamiento
óptimo \Delta que maximiza la similitud entre los segmentos. El
siguiente segmento de síntesis B se selecciona de esta manera por
medio de encontrar la mejor coincidencia 42 para la plantilla 41'
en torno al instante de tiempo \tau^{-1}(S_{k}). La
mejor coincidencia debe estar dentro del intervalo de tolerancia de
\Delta, cuyo intervalo de tolerancia cae entre un \Deltamin
mínimo predeterminado y un valor \Deltamax máximo predeterminado.
Después del solape - adición del 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 la siguiente plantilla.
El procedimiento WSOLA usa instantes de síntesis
regularmente espaciados S_{k} = kS. La longitud de la ventana de
análisis y de síntesis es constante. Si la ventana de
análisis/síntesis se elige de manera tal que,
y si la ventana de
análisis/síntesis es simétrica, la ecuación de síntesis para el
procedimiento WSOLA
es
Por medio de la selección de una función de
distorsión de tiempo diferente, se puede emplear el mismo
procedimiento 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 desde la señal
original a la señal escalada en el tiempo sea gradual. Además, el
período de tono no debería cambiar durante los saltos de la señal
usada como recibida respecto de la señal escalada en el tiempo.
Como se explicó con anterioridad, el tiempo de escalado WSOLA
conserva el período de tono. Sin embargo, cuando se realiza el
escalado de tiempo para una parte en el medio de la señal de voz,
alguna discontinuidad ya sea al comienzo o al final de la señal
escalada en el tiempo puede no evitarse a veces.
Con el fin de disminuir el efecto de dicho
desajuste de fase, se propone para el segundo enfoque, modificar
ligeramente el procedimiento descrito con referencia a la figura 4.
El procedimiento WSOLA modificado (MWSOLA) usa información de
historial y extensión extra para disminuir los efectos de este
problema.
Un algoritmo MWSOLA que use una extensión de la
escala de tiempo para una mitad extra de una longitud de paquete se
describe ahora con referencia al diagrama de flujo de la figura 5 y
con referencia a los cinco diagramas de la figura 6. El tamaño de
paquete usado es de 20 ms, o de 160 muestras, la velocidad de
muestreo siendo de 8 kHz. La ventana de análisis/síntesis usada
tiene la misma longitud que la de los paquetes.
La figura 5 ilustra el proceso básico de
actualización del tamaño de memoria de almacenamiento temporal de
fluctuación usando el algoritmo MWSOLA propuesto. Como se muestra en
el lado izquierdo del diagrama de flujo de la figura 5, primero se
eligen los paquetes que vayan a ser escalados. Además, media
longitud de paquete de la señal que llegó con anterioridad, es
decir, 80 muestras, son seleccionadas como muestras de historial.
Las muestras seleccionadas también están indicadas en el primer
diagrama de la figura 6. después de ser seleccionadas, son
reenviadas al algoritmo MWSOLA.
El algoritmo MWSOLA, que se muestra con más
detalle en el lado derecho de la figura 5, se usa entonces para
proporcionar el escalado de tiempo deseado sobre las señales
seleccionadas como se describe con referencia a la
figura 4.
figura 4.
La ventana de análisis/síntesis se crea por
medio de la modificación de una ventana de Hanning de forma que la
condición de la ecuación (1) se cumple. La función de distorsión de
tiempo \tau^{-1}(n) está construida de manera diferente
para la expansión y comprensión de escala de tiempo, es decir, para
un aumento y para una disminución del tamaño de memoria de
almacenamiento temporal de fluctuación. La función de distorsión de
tiempo y los límites de la región de búsqueda \Delta (\Delta =
[\Deltamin...\Deltamax]) se eligen de manera tal que se obtenga
una buena variación de la señal. Por medio de la fijación de los
límites de la región de búsqueda y de la función de distorsión de
tiempo de manera correcta, se puede evitar el elegir de manera
repetida 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 a la señal original. Esto asegura que el cambio de la
señal original precedente respecto a la señal escalada en el tiempo
sea gradual.
Después de que se hayan fijado los parámetros
iniciales como la función de distorsión de tiempo y los límites
para la región de búsqueda, y se haya inicializado una señal de
salida, se usa un bucle para encontrar nuevas tramas para la señal
de salida escalada en el tiempo mientras se necesite. Se usa una
mejor adaptación entre las últimas L muestras de la trama anterior
y las primeras L muestras de la nueva trama como un indicador en
encontrar la siguiente trama. La longitud usada L de la correlación
es de 1/2 * la longitud de la ventana = 80 muestras. La región de
búsqueda \Delta(\Delta = [\Deltamin...\Deltamax])
debería ser más larga que el máximo período de tono en las
muestras, de forma que sea posible una correcta sincronización entre
tramas consecutivas.
El segundo diagrama de la figura 6 muestra como
se colocan en la señal de entrada MWSOLA las ventanas de análisis
61 a la 67 que definen diferentes segmentos cuando se escala en el
tiempo de dos a tres paquetes.
El tercer diagrama de la figura 6 muestra como
solapar los segmentos de síntesis satisfactorios. Como se puede
ver, las diferentes ventanas 61 a la 67 se solapan, en este caso,
completamente de manera perfecta.
La adición de solapamiento de todas las tramas
de análisis/síntesis da como resultado la señal escalada en el
tiempo que se muestra en el cuarto diagrama de la figura 6, que
constituye la señal de salida del algoritmo MWSOLA. El algoritmo
MWSOLA devuelve los nuevos paquetes de tiempo escalados y una
extensión para ser añadida solapada con la primera media longitud
de paquete del siguiente paquete de llegada.
Como se muestra de nuevo en la parte izquierda
del diagrama de flujo de la figura 5, la memoria de almacenamiento
temporal de fluctuaciones se actualiza entonces con las señales
escaladas en el tiempo y la extensión se añade solapada con el
siguiente paquete de llegada. La señal resultante se puede ver en el
quinto diagrama de la figura 6.
Este procedimiento disminuye el efecto de los
desajustes de fase y de amplitud entre la señal escalada en el
tiempo y la señal válida.
Se describirá un procedimiento de escalado de
memoria de almacenamiento temporal de fluctuación basado en vocóder
de fase con referencia a las figuras 7 a la 9 como tercer enfoque.
Este procedimiento constituye un procedimiento de escalado en el
tiempo en el dominio de la frecuencia.
El procedimiento de modificación de escala de
tiempo de vocóder de fase se basa en tomar transformadas de Fourier
de corta duración en el tiempo (STFT) de la señal de voz en la
memoria de almacenamiento temporal de fluctuación como se describe
en el documento mencionado con anterioridad "Applications of
Digital Signal Processing to Audio and Acoustics". La figura 7
ilustra esta técnica. La modificación de escala de tiempo basada en
vocóder de fase comprende una etapa de análisis, indicada en la
parte superior de la figura 7, una etapa de modificación indicada
en la parte media de la figura 7, y una etapa de síntesis indicada
en la parte inferior de la figura 7.
\newpage
\global\parskip0.900000\baselineskip
En la etapa de análisis, las transformadas de
Fourier de corta duración son tomadas a partir del solapamiento de
las partes de ventana 71 a 74 de una señal recibida. En particular,
las transformadas de Fourier discretas en el tiempo (DFT) como
describe J. Laroche y M. Dolson en "Improved Phase Vocoder
Time-Scale Modification of Audio", Transacciones
sobre procesado de voz y de audio del IEEE, vol. 7, Núm. 3, de mayo
de 1999. páginas 323 a la 332, se pueden emplear en la etapa de
análisis de vocóder de fase. Esto quiere decir que tanto la
representación de la escala de frecuencia como la representación de
escala en el tiempo de la señal, son discretas. Los instantes de
tiempo t_{a}^{u} de análisis están espaciados de manera regular
en R_{a} muestras, Ra. t_{a}^{u} = u*R_{a}. R_{a} se
denomina el factor de salto de análisis. La transformada de Fourier
acortada en el tiempo es entonces
donde x es la señal original,
h(n) la ventana de análisis, y \Omega_{k} = 2pi*k/N la
frecuencia central del canal de vocóder k-ésimo. Los canales de
vocóder también se pueden denominar contenedores. N es el tamaño de
la DTF, donde N debe ser más largo que la longitud de la ventana de
análisis. En soluciones prácticas, la DTF se obtiene por lo general
con la Transformada Rápida de Fourier (FFT). La frecuencia de corte
de las ventanas de análisis para las ventanas estándar (Hanning,
Hamming) requieren que la ventana de análisis se solapen al menos
el 75%. Después de la FFT de análisis, la señal es representada por
canales de vocóder horizontales e instantes de tiempo de análisis
verticales.
En la etapa de modificación de fase, la escala
de tiempo de la señal de voz se modifica por medio de fijar el
factor de salto de análisis R_{a} diferente de un factor de salto
de síntesis usado R_{s}, como se describe en el documento
mencionado "Improved Phase Vocoder Time-Scale
Modification of Audio". La nueva evolución en el tiempo de las
ondas senoidales se consigue por medio de la fijación de
|Y(t^{u}_{S}, \Omega_{k}) | = |
X(t_{a}^{u}, \Omega_{k})| y por medio del
cálculo de nuevos valores de fase para Y(t^{u}_{S},
\Omega_{k}).
Los nuevos valores de fase para
Y(t^{u}_{s}, \Omega_{k}) se calculan de la siguiente
manera. Se usa un proceso llamado desdistorsión de fase, en el que
el incremento de fase entre dos tramas consecutivas se usa para
estimar la frecuencia instantánea de una sinusoide cercana en cada
uno de los canales k. primero, se calcula el incremento de fase
heterodino por medio de
Después, por medio de la suma o de la resta de
los múltiplos de 2\pi de forma que el resultado de (7) caiga
entre \pm\pi, se determina la determinación principal del
incremento de fase heterodino (\Delta _{p}\Phi^{u}_{k}).
La frecuencia instantánea se calcula después
usando
La frecuencia instantánea se determina porque la
FFT se calcula solamente para frecuencias discretas \Omega_{k}.
De esta manera, la FFT no representa de manera necesaria la señal
de la ventana de manera exacta.
Las fases escaladas en el tiempo de la STFT en
un instante t^{u}_{s} se calculan a partir de
La elección de fases de síntesis iniciales
\angleY(t^{0}_{s}, \Omega_{k}) es importante para
una buena calidad de la voz. En el documento mencionado con
anterioridad, "Improved Phase Vocoder Time-Scale
Modification of Audio", se recomienda una configuración de
inicialización estándar de
lo que provoca una conmutación
desde una señal escalada de manera no lineal a una señal escalada en
el tiempo posible sin discontinuidad de fase. Este es un atributo
importante para el escalado temporal de memoria de almacenamiento
temporal de
fluctuación.
\global\parskip1.000000\baselineskip
Después de haber 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, las transformadas de
Fourier acortadas en el tiempo modificadas Y(t^{u}_{s},
\Omega_{k}) son primero sometidas a una transformada inversa de
Fourier con la ecuación
Los instantes de tiempo de síntesis son fijados
t^{u}_{s} = u * R_{s}. Finalmente, las señales acortadas en
el tiempo son multiplicadas por una ventana de síntesis w(n)
y se suman juntas, dando la señal de salida y(n):
La distancia entre las ventanas de análisis es
diferente de la distancia entre las ventanas de síntesis debido a
la modificación de la escala temporal, por lo que se consigue una
extensión o una comprensión temporal de los datos de memoria de
almacenamiento temporal de fluctuación recibidos. La sincronización
entre el solapamiento de las ventanas de síntesis se consiguió por
medio de la modificación de las fases en la STFT.
El uso del escalado temporal basado en vocóder
de fase para aumentar o para disminuir el tamaño de una memoria de
almacenamiento temporal de fluctuación se ilustra en el diagrama de
flujo de la figura 8.
Primero, se recibe la señal de entrada y se fija
un factor de escalado temporal.
El algoritmo se inicializa entonces por medio de
la fijación de los tamaños de salto de análisis y de síntesis, y
por medio de la fijación de los instantes de tiempo de análisis y de
síntesis. Cuando se haga esto, se tienen que tener en cuenta unas
pocas restricciones, que se han listado, por ejemplo, en el
documento anteriormente mencionado "Applications of Digital
Signal Processing to Audio and Acoustics". La frecuencia de corte
de la ventana de análisis debe satisfacer w_{h} <
min_{i}\Deltaw_{i}, es decir, la frecuencia de corte debe ser
menor que el espaciado entre dos sinusoides. Además, la longitud de
la ventana de análisis debe ser lo suficientemente pequeña de forma
que las amplitudes y las frecuencias instantáneas de las sinusoides
se pueden considerar constantes dentro de la ventana de análisis.
Finalmente, para habilitar el desdistorsión de fase, la frecuencia
de corte y la velocidad de análisis debe satisfacer w_{h}Ra <
\pi. La frecuencia de corte para ventanas de análisis estándar
(Hamming, Hanning) es de W_{h} \approx 4\pi/Nw, donde Nw es la
longitud de la ventana de análisis.
Como parámetro inicial adicional, se calcula el
número de tramas a procesar. Este número se usa para determinar
cuántas veces se debe procesar el siguiente bucle de la figura 8.
Finalmente, se fijan las fases de síntesis iniciales, de acuerdo con
la ecuación (7).
Después de la inicialización, un bucle de
procesado de vocóder sigue al escalado de tiempo real. Dentro de la
fase de bucle de procesado de vocóder, la rutina es una realización
directa Del procedimiento presentado con anterioridad. Primero, se
obtiene la respectiva siguiente trama de análisis por medio de la
multiplicación de la señal con la ventana de análisis en el
instante de tiempo t_{a}^{u}. Después, se calcula la FFT de la
trama. Se calcula el incremento de fase heterodino fijando R_{a}
en la ecuación (4) a t_{a}^{u} -
t_{a}^{u-1}. Las frecuencias instantáneas se
obtienen también fijando R_{a} en la ecuación (5) a t_{a}^{u}
- t_{a}^{u-1}. Las fasesescaladas en el tiempo
se obtienen a partir de la ecuación (6). A continuación, se calcula
la IFFT de la FFT modificada de la trama actual de acuerdo con la
ecuación (8). El resultado de la ecuación (8) se multiplica
entonces por la ventana de síntesis y se añade a la señal de salida.
Antes de pasar a través del bucle de nuevo, las fases previas de
análisis y de síntesis que se van a usar en las ecuaciones (4) y (6)
son actualizadas.
Finalmente, antes de sacar la señal escalada en
el tiempo, se suavizan las transiciones entre la señal escalada en
el tiempo y la señal no escalada en el tiempo. Después de esto, se
puede completar la modificación de tamaño de memoria de
almacenamiento temporal de fluctuación. La figura 9 muestra la señal
resultante cuando se escalan en el tiempo dos paquetes dentro de
tres con escalado en el tiempo basado en vocóder de fase. En el
primer diagrama de la figura 9, se representa la amplitud de la
señal sobre las muestras antes del escalado de tiempo. En un
segundo diagrama de la figura 9, se representa la amplitud de la
señal sobre las muestras después del escalado de tiempo. Los dos
paquetes con muestras 161 a 481 del primer diagrama fueron
expandidos a tres paquetes con muestras 161 a 641.
Antes de que aumente el tamaño de la memoria de
almacenamiento temporal de fluctuación, debería ocurrir una
ocultación de error. Además, se deberían recibir un número
predeterminado de paquetes antes de que se incremente el tamaño de
la memoria de almacenamiento temporal de fluctuación.
La figura 10 es un diagrama de flujo que ilustra
un cuarto enfoque, que se puede usar para cambiar un tamaño de
memoria de almacenamiento temporal de fluctuación en el dominio
paramétrico. Las tramas de voz codificadas paramétricas son
solamente descodificadas por medio de un descodificador después del
almacenamiento temporal en la memoria de almacenamiento temporal de
fluctuación.
En un primer paso, se determina si el tamaño de
la memoria de almacenamiento temporal de fluctuación tiene que ser
cambiado. En el caso de que no tenga que ser cambiado, los
contenidos de la memoria intermedia de almacenamiento temporal de
fluctuación son directamente reenviados al descodificador.
En el caso en el que se determine que el tamaño
de la memoria intermedia de fluctuación tenga que ser incrementada,
la memoria de almacenamiento temporal de fluctuación es aumentada y
se generan tramas adicionales por medio de la interpolación de una
trama adicional a partir de dos tramas adyacentes en el dominio
paramétrico. Las tramas adicionales son usadas para rellenar el
espacio de memoria de almacenamiento temporal vacío resultante de
un aumento en el tamaño. Solamente entonces las tramas almacenadas
temporalmente son reenviadas al descodificador.
En el caso en el que se determine que el tamaño
de la memoria de almacenamiento temporal de fluctuación tenga que
ser decrementada, la memoria de almacenamiento temporal de
fluctuación se decrementa y se interpolan dos tramas adyacentes o
espaciadas en el dominio paramétrico dentro de una trama. La
distancia de las dos tramas usadas para la interpolación de una con
otra depende de la cantidad de la disminución requerida del tamaño
de memoria de almacenamiento temporal de fluctuación. Solamente
entonces las tramas almacenadas de manera temporal son reenviadas
al descodificador.
Las figuras 11 a la 13 muestran partes de tres
sistemas de comunicaciones de voz sobre IP diferentes.
En el sistema de comunicaciones de la figura 11,
un codificador 111 y un medio de paquetización 112 pertenecen a un
extremo de transmisión del sistema. El extremo de transmisión está
conectado a un extremo de recepción a través de una red de voz
sobre IP 113. EL extremo de recepción comprende una memoria de
tramas 114, que se conecta a través de un descodificador 115 a una
memoria de almacenamiento temporal de fluctuación adaptable 116. La
memoria de almacenamiento temporal de fluctuación adaptable 116
tiene de manera adicional una entrada de control conectada a un
medio de control y una salida a algún medio de procesado del extremo
de recepción que no está representado.
En el extremo de transmisión, la voz que vaya a
ser transmitida se codifica en el codificador 111 y se paquetiza
por medio del medio de paquetización 112. Cada paquete se entrega
con información acerca de su posición correcta en un flujo de
paquetes y acerca de la distancia correcta en el tiempo respecto de
los otros paquetes. Los paquetes resultantes son enviados sobre la
red de voz sobre IP 113 al extremo de recepción.
En el extremo de recepción, los paquetes
recibidos son primeramente reordenados en la memoria de tramas 114
con el fin de ponerlos de nuevo en el orden original en el que
fueron transmitidos por parte del extremo de transmisión. Los
paquetes reordenados son después descodificados por el
descodificador 115 en voz PCM lineal. El descodificador 115 realiza
también una gestión de trama mala sobre los datos descodificados.
Después de esto, los paquetes de voz PCM lineales son reenviados
por parte del descodificador 115 a la memoria de almacenamiento
temporal de fluctuación adaptable 116. En la memoria de
almacenamiento temporal de fluctuación adaptable, se puede emplear
entonces un procedimiento de escalado de tiempo lineal para aumentar
o para disminuir el tamaño de la memoria de almacenamiento temporal
de fluctuación y por lo tanto conseguir más o menos tiempo para que
lleguen los paquetes a la memoria de tramas.
La entrada de control de la memoria de
almacenamiento temporal adaptable 116 se usa para indicar a la
memoria de almacenamiento temporal de fluctuación adaptable 116 si
el tamaño de la memoria de almacenamiento temporal de fluctuación
116 se debería cambiar. La decisión sobre esto es tomada por el
medio de control en base a la evaluación del retardo global actual
y la variación actual del retardo entre los diferentes paquetes. El
medio de control indica de manera más específica la memoria de
almacenamiento temporal de fluctuación adaptable 116 si el tamaño
de almacenamiento temporal de fluctuación 116 se ha de aumentar o
disminuir y en qué cantidad y qué paquetes se han de seleccionar
para el escalado de tiempo.
En el caso de que el medio de control indique a
la memoria de almacenamiento temporal de fluctuación adaptable 116
que su tamaño va a ser cambiado, la memoria de almacenamiento
temporal de fluctuación adaptable 116 escala en el tiempo al menos
parte de los paquetes actualmente almacenados de manera temporal de
acuerdo con la información recibida, por ejemplo, una manera
descrita en la segunda o en el tercer enfoque. La memoria de
almacenamiento temporal de fluctuación 116 se extiende por lo tanto
por medio de la expansión de la escala de tiempo de los datos de
voz almacenados de manera temporal en el momento actual y reducidos
por medio de la compresión de escala de tiempo de los datos de voz
almacenados de manera temporal en el momento actual. De manera
alternativa, un procedimiento basado en un procedimiento de gestión
de trama mala para aumentar el tamaño de la memoria de
almacenamiento temporal se puede emplear para cambiar el tamaño de
memoria de almacenamiento temporal de fluctuación. Este
procedimiento alternativo podría ser por ejemplo el procedimiento
del primer enfoque, en el que además, los datos se solapan para
disminuir el tamaño de la memoria de almacenamiento temporal.
El escalado de tiempo lineal de la figura 11 se
puede emplear en particular para un códec de baja velocidad
binaria.
La figura 12 muestra una parte de un sistema de
comunicaciones que se basa en un procedimiento de escalado de
tiempo de voz PCM lineal. En este sistema, un extremo transmisor que
corresponde al de la figura 11 y que no está representado en la
figura 12, se conecta de nuevo a través de una red de voz sobre IP
123 al extremo de recepción. El extremo de recepción, sin embargo,
está diseñado de alguna manera diferente del extremo de recepción
en el sistema de la figura 11. El extremo de recepción comprende
ahora un medio para una ley A para la conversión lineal 125
conectado a una memoria de almacenamiento temporal de fluctuación
adaptable 126. La memoria de almacenamiento temporal de fluctuación
adaptable 126 tiene de nuevo de manera adicional una entrada de
control conectada a un medio de control y una salida a algún medio
de procesado del extremo receptor que no se representa.
Los paquetes que contienen datos de voz que
fueron transmitidos por el extremo transmisor y que fueron recibidos
por el extremo receptor a través de la red de voz sobre IP 123 son
primeramente introducidos al medio para la ley A para la conversión
lineal 125 del extremo de recepción, en donde son convertidos en
datos PCM lineales. Con posterioridad, los paquetes son
reorganizados en la memoria de almacenamiento temporal de
fluctuación adaptable 126. Además, la memoria de almacenamiento
temporal de fluctuación adaptable 126 tiene cuidado de una gestión
de trama mala, antes de reenviar los paquetes con un correcto
retardo al medio de procesado.
Los medios de control se usan una vez más para
decidir cuándo y cómo cambiar el tamaño de la memoria de
almacenamiento temporal de fluctuación. Siempre que sea necesario,
algún procedimiento de escalado en el tiempo para voz lineal, por
ejemplo, uno de los procedimientos presentados, se usa entonces en
la memoria de almacenamiento temporal adaptable 126 para cambiar su
tamaño de acuerdo con la información recibida por los medios de
control. De manera alternativa, se podría emplear una vez más un
procedimiento basado en una gestión de malas tramas para cambiar la
memoria de almacenamiento temporal de fluctuación, por ejemplo, el
procedimiento del primer enfoque. Este procedimiento alternativo
podría también hacer uso del procedimiento de gestión de tramas
malas implementado en la memoria de almacenamiento temporal de
fluctuación de algún modo para la gestión de malas tramas.
La figura 13, finalmente, muestra una parte de
un sistema de comunicaciones en el que se emplea un códec de baja
velocidad binaria y un escalado en el tiempo en el dominio
paramétrico.
De nuevo, un extremo transmisor correspondiente
al de la figura 11 y no representado en la figura 13, se conecta a
través de una red de voz sobre IP 133 a un extremo de recepción. El
extremo de recepción comprende una unidad de memoria de paquetes y
de organizador 134, que se conecta a través de una memoria de
almacenamiento temporal de fluctuación adaptable 136 a un
descodificador 135. La memoria de almacenamiento temporal de
fluctuación adaptable 136 tiene además una entrada de control
conectada a un medio de control, y la salida del descodificador 135
se conecta a algún medio de procesado del extremo de recepción,
ambos, el medio de control y el medio de procesado no estando
representados.
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 sobre IP 133 son
primeramente reordenados en la unidad de memoria de paquetes y en
la unidad de reorganizador 134.
Los paquetes reordenados son entonces reenviados
directamente a la memoria de almacenamiento temporal de fluctuación
adaptable 136. La memoria de almacenamiento temporal de fluctuación
136 aplica una gestión de malas tramas sobre los paquetes recibidos
en el dominio paramétrico. La voz contenida en los paquetes se
descodifica solamente después de abandonar la memoria de
almacenamiento temporal de fluctuación adaptable 136 en el
descodificador 135.
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 de almacenamiento temporal de fluctuación.
Siempre que sea necesario, se usa entonces algún tipo de
procedimiento de escalado para la voz paramétrica en la memoria de
almacenamiento temporal de fluctuación adaptable 136 para cambiar
su tamaño de acuerdo con la información recibida por el medio de
control. De manera alternativa, se podría emplear un procedimiento
de gestión de tramas malas diseñado para la gestión de tramas malas
de paquetes en el dominio paramétrico para aumentar el tamaño de
memoria de almacenamiento temporal de fluctuación. Como una
alternativa adicional, se podrían interpolar tramas adicionales a
partir de dos a partir de dos tramas adyacentes como se propone con
la referencia a la figura 10. La disminución del tamaño de la
memoria de almacenamiento temporal de fluctuación se podría
conseguir descartando un paquete o por medio de la interpolación de
dos paquetes en uno en el dominio paramétrico como se propone con
referencia a la figura 10. En particular, si se desea una
disminución en más de un paquete, los paquetes que estén alrededor
de la cantidad deseada de paquetes podrían ser interpolados en un
paquete.
A continuación se presenta una realización de la
invención relativa al alineamiento de tiempo con referencia a la
figura 14, que muestra un sistema de comunicaciones radio GSM o
3G.
El sistema de comunicaciones radio comprende una
estación móvil 140, de la cual se representa una antena 141 y un
descodificador 142. Por otra parte, comprende una red de acceso
radio, de la cual se representa una estación base y un controlador
de red radio 143 como un único bloque con acceso a una antena 144.
la estación base y el controlador de red radio 143 están además
conectados a un transcodificador de red 145 que comprende un
codificador 146 y un medio de alineamiento temporal 147 conectado
uno con el otro. La estación base o el controlador de red radio 143
tienen además un acceso de control al medio de alineamiento temporal
147.
\newpage
En el sistema de comunicaciones radio, las
tramas de voz son transmitidas en la dirección de enlace descendente
desde la red de acceso radio a la estación móvil 140 y en la
dirección de enlace descendente desde la estación móvil 140 a la
red de acceso radio. Las tramas de voz que se vayan a transmitir en
la dirección de enlace descendente son primeramente codificadas por
medio de un codificador 146 del transcodificador 145, transmitidas
a través del controlador de red radio, de la estación base 143 y de
la antena 144 del de la red de acceso radio, recibidas por la
antena 142 de la estación móvil 140 y descodificadas por el
descodificador 141 de la estación móvil 140.
Al comienzo de la llamada o después de un
traspaso, el desplazamiento de fase inicial entre la estructura de
tramas de enlace ascendente y el enlace descendente en el
transcodificador puede ser diferente del desplazamiento de fase de
la interfaz radio, lo que evita las transmisiones síncronas
estrictas requeridas en el enlace ascendente y en el enlace
descendente. En GSM, la estación base 143 garantiza por lo tanto que
el desplazamiento de fase sea igual por medio del almacenamiento
temporal de todas las tramas de voz codificadas recibidas desde el
transcodificador 145 durante una transmisión de enlace descendente
tan larga como se requiera. Incluso aunque la estación base 143
determine el retardo de almacenamiento temporal requerido por medio
de la comparación de los datos de voz de enlace ascendente
recibidos desde la estación móvil 140 con los datos de voz de enlace
descendente recibidos desde el transcodificador 145, esto significa
también una compensación de un desplazamiento de fase de la
estructura de tramas de enlace descendente en el transcodificador y
en la interfaz radio del sistema a la que se accede a través de la
antena 144. En una red 3G, esta función se proporciona por parte
del controlador de red radio 143. Este almacenamiento temporal
conduce a un retardo adicional de hasta una trama de voz en la
estación base en la dirección de enlace descendente. Con el fin de
minimizar el retardo de almacenamiento temporal requerido para la
sincronización, en GSM la estación base y en 3G el controlador de
red radio 143 solicitan desde el medio de alineamiento temporal 147
del transcodificador 145 para aplicar un alineamiento temporal a las
tramas de voz codificadas.
En un alineamiento temporal, el instante de
tiempo de transmisión de una trama de voz codificada y de las
siguientes tramas se avanza o se retrasa en una cantidad
especificada de muestras de acuerdo con la información recibida de
la estación base o del controlador de red radio 143 respectivamente,
reduciendo de esta manera el retardo de almacenamiento temporal
necesario en la estación base o en el controlador de red radio
143.
De acuerdo con la invención, el alineamiento
temporal se lleva ahora a cabo por el medio de alineamiento temporal
147 por medio de la aplicación de un escalado de tiempo sobre las
tramas de voz codificadas por el codificador 146, antes de
reenviarlas al controlador de red radio o a la estación base 143. En
particular, se puede emplear cualquier procedimiento de escalado
temporal en el dominio del tiempo o en el dominio de la frecuencia
propuesto para cambiar un tamaño de memoria de almacenamiento
temporal de fluctuación.
Como resultado de esto, el retardo del
almacenamiento temporal en la estación base 143 se reduce en un
alineamiento temporal conocido, pero la calidad de la voz se ve
menos afectada.
Claims (5)
1. Un procedimiento para llevar a cabo un
alineamiento temporal en un transcodificador de un sistema de
comunicaciones radio, cuyo alineamiento temporal se usa para
disminuir un retardo de almacenamiento temporal, el mencionado
retardo temporal resultante del almacenamiento temporal de los datos
de voz codificados por el mencionado transcodificador antes de
transmitir los mencionados datos de voz sobre una interfaz radio del
mencionado sistema de comunicaciones radio con el fin de compensar
un desplazamiento de fase en una estructura de tramas de los
mencionados datos de voz en el mencionado transcodificador y en la
mencionada interfaz radio, comprendiendo el procedimiento:
- -
- determinar si se tiene que llevar a cabo un alineamiento temporal; y
- -
- en el caso de que se determine que se tiene que llevar a cabo un alineamiento temporal, condensar los datos de voz para conseguir el alineamiento de tiempo requerido por medio de descartar al menos una trama de los datos de voz, en el que los parámetros de la ganancia y los coeficientes de codificación predictiva lineal de tramas de los datos de voz que rodean a la al menos una trama descartada son modificados para combinar de manera gradual las tramas que rodean la al menos una trama descartada.
2. Un procedimiento de acuerdo con la
reivindicación 1, en el que el transcodificador es un
transcodificador de red y en el que los mencionados datos de voz
son datos de voz de enlace descendente.
3. Un sistema de comunicaciones radio que
comprende
- -
- al menos una interfaz radio para transmitir los datos de voz codificados;
- -
- al menos un transcodificador (145), cuyo transcodificador (145) incluye al menos un codificador (146) para codificar los datos de voz que se vayan a usar para una transmisión a través de la mencionada interfaz radio, y cuyo transcodificador (145) incluye de manera adicional un medio de procesado (147) para llevar a cabo un alineamiento temporal sobre las muestras de voz codificadas de acuerdo con el procedimiento de la reivindicación 1 ó 2; y
- -
- un medio de almacenamiento temporal (143) dispuesto entre la mencionada interfaz radio y el mencionado transcodificador (145) para el almacenamiento de manera temporal de datos de voz codificados por el mencionado transcodificador (145) antes de transmitir los mencionados datos de voz codificados a través de la mencionada interfaz radio con el fin de compensar un desplazamiento de fase en una estructura de tramas de los mencionados datos de voz por parte del mencionado transcodificador (145) y por la mencionada interfaz radio; y
- -
- un medio de procesado (143) para determinar en qué medida las muestras de voz codificadas por el mencionado codificador (146) tienen que ser alineadas en el tiempo antes de la transmisión, con el fin de minimizar un retardo de almacenamiento temporal para los datos de voz codificados resultantes de un almacenamiento temporal por el mencionado medio de almacenamiento temporal (143).
4. Un transcodificador (145) para un sistema de
comunicaciones radio que comprende:
- -
- al menos un codificador (146) para codificar los datos de voz que se vayan a usar para una transmisión a través de una interfaz radio del mencionado sistema de comunicaciones; y
- -
- un medio de procesado (147) para llevar a cabo un alineamiento temporal de acuerdo con el procedimiento de la reivindicación 1 ó 2.
5. Un aparato que comprende un medio de
procesado (147) para llevar a cabo un alineamiento temporal de
acuerdo con el procedimiento de la reivindicación 1 o de la
reivindicación 2.
Applications Claiming Priority (3)
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 |
EP01931645A EP1382143B1 (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 |
EP05004865A EP1536582B1 (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 |
---|---|
ES2319433T3 true ES2319433T3 (es) | 2009-05-07 |
Family
ID=8164382
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
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. |
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. |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
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. |
Country Status (7)
Country | Link |
---|---|
US (1) | US20040120309A1 (es) |
EP (2) | EP1382143B1 (es) |
AT (2) | ATE353503T1 (es) |
AU (1) | AU2001258364A1 (es) |
DE (2) | DE60137656D1 (es) |
ES (2) | ES2280370T3 (es) |
WO (1) | WO2002087137A2 (es) |
Families Citing this family (95)
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 |
WO2003023707A2 (en) * | 2001-09-12 | 2003-03-20 | Orton Business Ltd. | Method for calculation of jitter buffer and packetization 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 |
US7529664B2 (en) * | 2003-03-15 | 2009-05-05 | Mindspeed Technologies, Inc. | Signal decomposition of voiced speech for CELP speech coding |
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 |
US20070047515A1 (en) * | 2003-11-11 | 2007-03-01 | Telefonaktiebolaget Lm Ericsson (Publ) | Adapting playout buffer based on audio burst length |
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 |
AU2005256062B2 (en) * | 2004-06-09 | 2009-06-11 | Vanu, Inc. | Reducing cost of cellular backhaul |
DE102004041015A1 (de) * | 2004-08-24 | 2006-03-09 | Siemens Ag | Verfahren zum Umschalten einer Kommunikationsverbindung von einem ersten Verbindungsweg auf einen zweiten Verbindungsweg |
CN101873267B (zh) | 2004-08-30 | 2012-10-24 | 高通股份有限公司 | 用于语音ip传输的自适应去抖动缓冲器 |
US7674096B2 (en) * | 2004-09-22 | 2010-03-09 | Sundheim Gregroy S | Portable, rotary vane vacuum pump with removable oil reservoir cartridge |
US7418013B2 (en) * | 2004-09-22 | 2008-08-26 | Intel Corporation | Techniques to synchronize packet rate in voice over packet networks |
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 |
US7784076B2 (en) | 2004-10-30 | 2010-08-24 | Sharp Laboratories Of America, Inc. | Sender-side bandwidth estimation for video transmission with receiver packet buffer |
US8356327B2 (en) | 2004-10-30 | 2013-01-15 | Sharp Laboratories Of America, Inc. | Wireless video transmission system |
US7797723B2 (en) | 2004-10-30 | 2010-09-14 | Sharp Laboratories Of America, Inc. | Packet scheduling for video transmission with sender queue control |
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 | 通信速度制御方法及びその装置 |
EP1872496A4 (en) * | 2005-04-11 | 2011-09-07 | Nokia Corp | METHOD AND APPARATUS FOR DYNAMIC SPEECH COMPARISON |
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 | 法国电信公司 | 传送误差隐藏的方法和装置、以及数字信号解码器 |
EP2236001B1 (en) * | 2008-01-22 | 2015-04-22 | Savox Communications Oy AB (LTD) | A method and arrangement for connecting an ad-hoc communication network to a permanent communication network |
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 |
EP3246919B1 (en) * | 2009-01-28 | 2020-08-26 | Dolby International AB | Improved harmonic transposition |
PL3751570T3 (pl) | 2009-01-28 | 2022-03-07 | 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 |
CN103325385B (zh) * | 2012-03-23 | 2018-01-26 | 杜比实验室特许公司 | 语音通信方法和设备、操作抖动缓冲器的方法和设备 |
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 |
JP6317436B2 (ja) | 2013-06-21 | 2018-04-25 | フラウンホーファーゲゼルシャフト ツール フォルデルング デル アンゲヴァンテン フォルシユング エー.フアー. | 時間スケーラ、オーディオデコーダ、方法および品質制御を用いるコンピュータプログラム |
US10412779B2 (en) * | 2015-09-18 | 2019-09-10 | Whatsapp Inc. | Techniques to dynamically configure jitter buffer sizing |
US9749178B2 (en) | 2015-09-18 | 2017-08-29 | Whatsapp Inc. | Techniques to dynamically configure target bitrate for streaming network connections |
CN105554019B (zh) * | 2016-01-08 | 2018-07-24 | 全时云商务服务股份有限公司 | 一种音频去抖动系统和方法 |
EP3220603B1 (en) | 2016-03-17 | 2019-05-29 | 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 |
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 |
EP0659326B1 (en) * | 1993-06-14 | 2002-09-04 | Telefonaktiebolaget Lm Ericsson | Time alignment of transmission in a down-link of a cdma system |
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 |
US5920840A (en) * | 1995-02-28 | 1999-07-06 | Motorola, Inc. | Communication system and method using a speaker dependent time-scaling technique |
MX9706532A (es) * | 1995-02-28 | 1997-11-29 | Motorola Inc | Metodo y aparato para la compresion de la voz en un sistema de comunicacion. |
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 EP EP01931645A patent/EP1382143B1/en not_active Expired - Lifetime
- 2001-04-24 DE DE60137656T patent/DE60137656D1/de not_active Expired - Lifetime
- 2001-04-24 ES ES01931645T patent/ES2280370T3/es not_active Expired - Lifetime
- 2001-04-24 AT AT01931645T patent/ATE353503T1/de not_active IP Right Cessation
- 2001-04-24 ES ES05004865T patent/ES2319433T3/es not_active Expired - Lifetime
- 2001-04-24 EP EP05004865A patent/EP1536582B1/en not_active Expired - Lifetime
- 2001-04-24 WO PCT/EP2001/004608 patent/WO2002087137A2/en active IP Right Grant
- 2001-04-24 DE DE60126513T patent/DE60126513T2/de not_active Expired - Lifetime
- 2001-04-24 AT AT05004865T patent/ATE422744T1/de not_active IP Right Cessation
- 2001-04-24 US US10/475,779 patent/US20040120309A1/en not_active Abandoned
- 2001-04-24 AU AU2001258364A patent/AU2001258364A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
EP1382143A2 (en) | 2004-01-21 |
WO2002087137A2 (en) | 2002-10-31 |
AU2001258364A1 (en) | 2002-11-05 |
EP1536582A3 (en) | 2005-06-15 |
ATE353503T1 (de) | 2007-02-15 |
WO2002087137A3 (en) | 2003-03-13 |
DE60137656D1 (de) | 2009-03-26 |
EP1536582B1 (en) | 2009-02-11 |
DE60126513T2 (de) | 2007-11-15 |
DE60126513D1 (de) | 2007-03-22 |
EP1536582A2 (en) | 2005-06-01 |
ES2280370T3 (es) | 2007-09-16 |
US20040120309A1 (en) | 2004-06-24 |
ATE422744T1 (de) | 2009-02-15 |
EP1382143B1 (en) | 2007-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2319433T3 (es) | 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. | |
US8243761B2 (en) | Decoder synchronization adjustment | |
US7457282B2 (en) | Method and apparatus providing smooth adaptive management of packets containing time-ordered content at a receiving terminal | |
US7319703B2 (en) | Method and apparatus for reducing synchronization delay in packet-based voice terminals by resynchronizing during talk spurts | |
ES2355039T3 (es) | Método y aparato destinados a una memoria temporal supresora de fluctuación en retardos adaptativa. | |
US7424026B2 (en) | Method and apparatus providing continuous adaptive control of voice packet buffer at receiver terminal | |
JP4504429B2 (ja) | 端末間のボイスオーバインターネットプロトコルのメディアの待ち時間を管理する方法および装置 | |
KR100722707B1 (ko) | 멀티미디어 신호를 전송하기 위한 전송 시스템 | |
JP2007511939A5 (es) | ||
ES2340545T3 (es) | Control de escalado en el tiempo de una señal de audio. | |
US7444281B2 (en) | Method and communication apparatus generation packets after sample rate conversion of speech stream | |
JP4945638B2 (ja) | 遅延を減らしたネットワークジッターの平滑化 | |
US7783482B2 (en) | Method and apparatus for enhancing voice intelligibility in voice-over-IP network applications with late arriving packets | |
Nam et al. | Adaptive playout algorithm using packet expansion for the VoIP | |
Issing et al. | Adaptive playout for VoIP based on the enhanced low delay AAC audio codec |