ES2340545T3 - Control de escalado en el tiempo de una señal de audio. - Google Patents
Control de escalado en el tiempo de una señal de audio. Download PDFInfo
- Publication number
- ES2340545T3 ES2340545T3 ES07705785T ES07705785T ES2340545T3 ES 2340545 T3 ES2340545 T3 ES 2340545T3 ES 07705785 T ES07705785 T ES 07705785T ES 07705785 T ES07705785 T ES 07705785T ES 2340545 T3 ES2340545 T3 ES 2340545T3
- Authority
- ES
- Spain
- Prior art keywords
- time
- change
- frames
- scaling
- type
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000005236 sound signal Effects 0.000 title claims abstract description 28
- 238000000034 method Methods 0.000 claims description 19
- 230000003111 delayed effect Effects 0.000 claims description 13
- 230000015572 biosynthetic process Effects 0.000 claims description 3
- 230000005284 excitation Effects 0.000 claims description 3
- 238000003786 synthesis reaction Methods 0.000 claims description 3
- 238000012986 modification Methods 0.000 description 16
- 230000004048 modification Effects 0.000 description 16
- 230000005540 biological transmission Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 12
- 238000012545 processing Methods 0.000 description 10
- 238000013459 approach Methods 0.000 description 7
- 230000003068 static effect Effects 0.000 description 6
- 230000015556 catabolic process Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000006731 degradation reaction Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000003139 buffering effect Effects 0.000 description 4
- 230000007423 decrease Effects 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000005055 memory storage Effects 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008602 contraction Effects 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
-
- 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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5603—Access techniques
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
- Stringed Musical Instruments (AREA)
- Electrophonic Musical Instruments (AREA)
- Electromechanical Clocks (AREA)
Abstract
Un procedimiento, que comprende: detectar un cambio en un retardo de tramas que se reciben a través de una red de conmutación de paquetes, perteneciendo las tramas a una secuencia de tramas en la que se distribuye una señal de audio; determinar la cantidad de escalado en el tiempo que se requiere aplicar a las tramas recibidas para compensar dicho cambio detectado; determinar un tipo de dicho cambio evaluando al menos un cambio en la cantidad de tramas retardadas; y determinar una longitud de una ventana de tiempo dentro de la cual va a completarse un escalado en el tiempo de dicha cantidad requerida dependiendo de dicho tipo determinado de dicho cambio.
Description
Control del escalado en el tiempo de una señal
de audio.
La invención se refiere a un procedimiento para
controlar un escalado en el tiempo de una señal de audio. La
invención se refiere además a un conjunto de chips, a un receptor de
audio, a un dispositivo electrónico y a un sistema que permite un
control de un escalado en el tiempo de una señal de audio. La
invención se refiere además a un producto de programa de software
que almacena un código de software para controlar un escalado en el
tiempo de una señal de audio.
El escalado en el tiempo de una señal de audio
puede habilitarse, por ejemplo, en un receptor de audio que sea
adecuado para recibir señales de audio codificadas en paquetes a
través de una red de conmutación de paquetes, tal como Internet,
para descodificar las señales de audio codificadas y para reproducir
la señal de audio descodificada para un usuario.
La naturaleza de las comunicaciones de
conmutación de paquetes introduce normalmente variaciones en los
tiempos de transmisión de los paquetes, conocidas como
fluctuaciones, lo cual se observa en el receptor como paquetes que
llegan a intervalos irregulares. Además de las condiciones de
pérdida de paquetes, las fluctuaciones de red suponen un obstáculo
importante especialmente para servicios de voz conversacionales
proporcionados por las redes de conmutación de paquetes.
Más específicamente, un componente de
reproducción de audio de un receptor de audio que funciona en tiempo
real requiere una entrada de datos constante para mantener una
buena calidad de sonido. Incluso las interrupciones cortas deben
evitarse. Por lo tanto, si algunos paquetes que comprenden tramas de
audio llegan solamente después de las tramas de audio necesarias
para la descodificación y un procesamiento adicional, estos paquetes
y las tramas de audio incluidas se consideran como perdidos. El
descodificador de audio ocultará los errores para compensar la
señal de audio
transportada en las tramas perdidas. Obviamente, un ocultamiento de errores excesivo reducirá la calidad del sonido.
transportada en las tramas perdidas. Obviamente, un ocultamiento de errores excesivo reducirá la calidad del sonido.
Por lo tanto, una memoria intermedia de
fluctuación se utiliza normalmente para ocultar los intervalos
irregulares de llegada de paquetes y para proporcionar una entrada
de datos continua al descodificador y a un componente de
reproducción de audio posterior. La memoria intermedia de
fluctuación almacena con este fin tramas de audio entrantes durante
una cantidad de tiempo predeterminada. Este tiempo puede
especificarse, por ejemplo, tras la recepción del primer paquete de
un flujo de paquetes. Sin embargo, una memoria intermedia de
fluctuación introduce un componente de retardo adicional ya que los
paquetes recibidos se almacenan antes de un procesamiento
adicional. Esto incrementa el retardo de extremo a extremo. Una
memoria intermedia de fluctuación puede caracterizarse por el
retardo medio de almacenamiento en memoria intermedia y por la
proporción resultante de tramas retardadas entre todas las tramas
recibidas.
Una memoria intermedia de fluctuación que
utilice un retardo fijo es inevitablemente un compromiso entre un
bajo retardo de extremo a extremo y un número bajo de tramas
retardadas, y encontrar un equilibrio óptimo no es una tarea
sencilla. Aunque puede haber entornos y aplicaciones especiales
donde puede estimarse que la cantidad de fluctuación esperada
permanece dentro de límites predeterminados, en general la
fluctuación puede variar de cero a cientos de milisegundos (incluso
dentro de la misma sesión). La utilización de un retardo fijo que
esté fijado a un valor lo suficientemente grande como para cubrir la
fluctuación según el peor caso de escenario esperado mantendría
controlado el número de tramas retardadas, pero al mismo tiempo
existe el riesgo de introducir un retardo de extremo a extremo que
sea lo bastante largo como para permitir una conversación natural.
Por lo tanto, la aplicación de un almacenamiento fijo en memoria
intermedia no es la elección óptima en la mayoría de aplicaciones
de transmisión de audio que funcionen a través de una red de
conmutación de paquetes.
Una memoria intermedia adaptativa de fluctuación
puede utilizarse para controlar dinámicamente el equilibrio entre
un retardo suficientemente corto y un número suficientemente bajo de
tramas retardadas. En este enfoque, el flujo de paquetes entrantes
se supervisa constantemente, y el retardo de almacenamiento en
memoria intermedia se ajusta según los cambios observados en el
comportamiento de retardo del flujo de paquetes entrantes. En caso
de que parezca que el retardo de transmisión aumenta o que la
fluctuación esté empeorando, el retardo de almacenamiento en
memoria intermedia se incrementa para satisfacer las condiciones de
red. En una situación opuesta, el retardo de almacenamiento en
memoria intermedia puede reducirse y, por lo tanto, el retardo
global de extremo a extremo se minimiza.
Puesto que el componente de reproducción de
audio necesita una entrada de datos regular, el ajuste de la memoria
intermedia no es del todo sencillo. Surge el problema de que si se
reduce el retardo de almacenamiento en memoria intermedia, es
necesario que la señal de audio que se proporciona al componente de
reproducción se acorte para compensar el retardo acortado de
almacenamiento en memoria intermedia y, por otro lado, si se
aumenta el retardo de almacenamiento en memoria intermedia, la señal
de audio tiene que alargarse para compensar el retardo aumentado de
almacenamiento en memoria intermedia.
Para aplicaciones de voz sobre IP (VoIP), se
conoce modificar la señal en caso de un mayor o un menor retardo de
almacenamiento en memoria intermedia descartando o repitiendo una
parte de la señal de ruido aceptable entre periodos de voz activa
cuando la transmisión discontinua (DTX) está habilitada. Sin
embargo, un enfoque de este tipo no es siempre posible. Por
ejemplo, la funcionalidad DTX no podría utilizarse o la DTX no
podría conmutar a un ruido aceptable debido a condiciones de ruido
de fondo difíciles, tales como escuchar de fondo a otro
hablante.
En una solución más avanzada que controle un
retardo variable de memoria intermedia, se utiliza un escalado en
el tiempo de señales para modificar la longitud de las tramas de
audio de salida que se reenvían al componente de reproducción. El
escalado en el tiempo de señales puede realizarse o bien en el
descodificador o bien en una unidad de postprocesamiento después
del descodificador. En este enfoque, el descodificador lee con más
frecuencia las tramas de la memoria intermedia de fluctuación cuando
disminuye el retardo que durante el funcionamiento normal, mientras
que un mayor retardo reduce la velocidad de salida de trama desde la
memoria intermedia de fluctuación.
En un receptor de audio que esté equipado con
una memoria intermedia adaptativa de fluctuación y con una
funcionalidad de escalado en el tiempo, el estado de la red y el
estado de la memoria intermedia se supervisan constantemente. En
función del estado de la memoria intermedia y de la red, se realizan
modificaciones de escalado en el tiempo en una señal de audio,
añadiendo o eliminando uno o más segmentos de la señal de audio,
para compensar cualquier cambio en el retardo de memoria
intermedia.
La solicitud de patente WO 2005/117366 presenta
un procedimiento, un aparato y un programa para impedir que una
memoria intermedia de recepción se quede vacía: almacenando los
paquetes recibidos en la memoria intermedia de recepción;
detectando la mayor fluctuación de retardo de llegada de los
paquetes y el nivel de memoria intermedia de la memoria intermedia
de recepción mediante una parte de detección de estado; obteniendo
un nivel óptimo de memoria intermedia para la mayor fluctuación de
retardo utilizando una tabla predeterminada mediante una parte de
control; determinando, en función del nivel detectado de memoria
intermedia y del nivel óptimo de memoria intermedia, el nivel de
urgencia referente a la necesidad de ajustar el nivel de la memoria
intermedia; expandiendo o reduciendo la forma de onda de un flujo de
datos de audio descodificados de la trama actual descodificada a
partir de un paquete leído de la memoria intermedia de recepción
mediante una parte de ajuste de consumo que ajusta el consumo de
tramas de reproducción en función del nivel de urgencia, el nivel
detectado de memoria intermedia y el nivel óptimo de memoria
intermedia.
El reto a la hora de realizar modificaciones de
escalado en el tiempo en partes activas de la señal de audio es
mantener la calidad de audio percibida en un nivel suficientemente
alto.
\vskip1.000000\baselineskip
Un objeto de la invención es mejorar una
operación de escalado en el tiempo que se aplica a una señal de
audio. Un objeto adicional de la invención es optimizar la calidad
de audio de una señal de audio escalada en el tiempo.
Se propone un procedimiento para escalar en el
tiempo una señal de audio, distribuyéndose la señal de audio en una
secuencia de tramas que se reciben a través de una red de
conmutación de paquetes. El procedimiento comprende detectar un
cambio en un retardo de tramas recibidas. El procedimiento comprende
además determinar la cantidad de escalado en el tiempo que se
necesita aplicar a las tramas recibidas para compensar el cambio
detectado. El procedimiento comprende además determinar un tipo del
cambio evaluando al menos un cambio en la cantidad de tramas
retardadas. El procedimiento comprende además determinar una
longitud de una ventana de tiempo dentro de la cual va a
completarse un escalado en el tiempo de la cantidad requerida
dependiendo del tipo determinado del cambio.
Además se propone un aparato. El aparato
comprende un componente de control de escalado en el tiempo para
controlar un escalado en el tiempo de una señal de audio, señal de
audio que se distribuye en una secuencia de tramas que se reciben a
través de una red de conmutación de paquetes. El componente de
control de escalado en el tiempo está adaptado para detectar un
cambio en un retardo de tramas recibidas. El componente de control
de escalado en el tiempo está adaptado además para determinar la
cantidad de escalado en el tiempo que se necesita aplicar a las
tramas recibidas para compensar un cambio detectado. El componente
de control de escalado en el tiempo está adaptado además para
determinar un tipo de un cambio detectado evaluando al menos un
cambio en la cantidad de tramas retardadas. El componente de
control de escalado en el tiempo está adaptado además para
determinar una longitud de una ventana de tiempo dentro de la cual
va a completarse un escalado en el tiempo de la cantidad requerida
dependiendo del tipo determinado del cambio.
Debe observarse que el componente de control de
escalado en el tiempo puede realizarse mediante hardware y/o
software. El componente de control de escalado en el tiempo puede
implementarse, por ejemplo, en un conjunto de chips o puede
realizarse mediante un procesador que ejecute componentes de código
de programa de software correspondientes.
El aparato puede ser un conjunto de chips con al
menos un chip, un receptor de audio o un dispositivo electrónico.
El dispositivo electrónico puede ser, por ejemplo, un mero
dispositivo de procesamiento de audio o un dispositivo más
complejo, como un terminal móvil, una pasarela multimedia, etc.
Además, un sistema puede comprender una red de
conmutación de paquetes adaptada para transmitir señales de audio,
un transmisor adaptado para proporcionar señales de audio para su
transmisión a través de la red de conmutación de paquetes, y un
receptor adaptado para recibir señales de audio a través de la red
de conmutación de paquetes. El receptor se corresponde con el
receptor de audio propuesto anteriormente.
Finalmente, se propone un código de software
para controlar un escalado en el tiempo de una señal de audio. De
nuevo se supone que la señal de audio se distribuye en una secuencia
de tramas que se reciben a través de una red de conmutación de
paquetes. El código de software está adaptado para llevar a cabo las
etapas del procedimiento propuesto cuando se ejecuta por un
procesador. Un producto de programa de software puede almacenar el
código de software en un medio legible. El producto de programa de
software puede ser, por ejemplo, un dispositivo de memoria
independiente, una memoria que vaya a implementarse en un receptor
de audio, etc.
La invención parte de la consideración de que
una operación de escalado en el tiempo debe comportarse de diferente
manera ante diferentes tipos de situaciones.
En general, una operación de escalado en el
tiempo da como resultado la mejor calidad de audio cuando el cambio
aplicado en una escala de tiempo es lo más pequeño posible. Por
ejemplo, puede esperarse que la ampliación de un segmento de 20 ms
de una señal de audio a un segmento de 25 ms no provoque
prácticamente ninguna degradación de la calidad, mientras que es
probable que la ampliación del segmento de 20 ms a un segmento de 40
ms provoque alguna degradación en la calidad de audio. Esto implica
que dividir una solicitud de escalado en el tiempo algo larga en
una serie de etapas de escalado más cortas proporciona normalmente
una clara ventaja en lo que respecta a la calidad de audio.
Aunque parece que este requisito favorece
modificaciones graduales, cambios repentinos en las características
de retardo de transmisión pueden requerir modificaciones inmediatas
de escala de tiempo a pesar de la ventaja de una modificación
gradual tal y como se ha mencionado anteriormente. Aunque realizar
las modificaciones inmediatamente y dentro de un corto límite de
tiempo podría dar como resultado una cierta degradación de la
calidad, un desbordamiento o un subdesbordamiento de la memoria
intermedia que diera lugar a la pérdida de una trama o de varias
tramas debido a una modificación gradual sería todavía más
grave.
Por lo tanto, se propone utilizar una operación
de escalado en el tiempo mediante división en ventanas y controlar
el escalado en el tiempo proporcionando no solamente la cantidad
requerida de escalado en el tiempo sino, además, una longitud de
una ventana de tiempo, es decir, un límite de tiempo en el que debe
realizarse el escalado. Esto permite realizar el escalado en el
tiempo en tantas pequeñas etapas como sea posible dentro de la
ventana de tiempo.
Una ventaja de la invención es que el equilibrio
entre el retardo de almacenamiento en memoria intermedia y la
cantidad de tramas de audio retardadas puede mantenerse de manera
óptima. Los cambios en las características de transmisión que
requieren diferentes estrategias de adaptación de memoria intermedia
pueden tenerse en cuenta mediante un control correspondiente del
escalado en el tiempo. Esto mejora la calidad de audio que se
obtiene con la operación de escalado en el tiempo.
El tipo determinado de un cambio es o bien un
tipo que requiere una ventana de tiempo más corta para una cantidad
determinada de escalado en el tiempo, o bien un tipo que permite una
ventana de tiempo más larga para una cantidad determinada de
escalado en el tiempo.
Puede determinarse que un tipo de un cambio que
requiere una ventana de tiempo más corta se obtiene, por ejemplo,
en caso de que se detecte un cambio en el retardo que supere un
valor predeterminado. Tal cambio significativo puede indicar un
cambio en el retardo de transmisión "estático" en la red de
conmutación de paquetes. Como alternativa o adicionalmente, puede
determinarse que un tipo de un cambio que requiere una ventana de
tiempo más corta se obtiene, por ejemplo, en caso de que se detecte
un valor de pico de retardo.
Puede determinarse que un tipo de un cambio que
requiere una ventana de tiempo más larga se obtiene, por ejemplo,
en caso de que se detecte un cambio en la cantidad de tramas
retardadas. Un cambio de este tipo puede indicar un cambio de
fluctuación en la red de conmutación de paquetes. Si las tramas
recibidas se almacenan en una memoria intermedia variable tras su
recepción, como alternativa o adicionalmente puede determinarse que
un tipo de un cambio que permite una ventana de tiempo más larga se
obtiene, por ejemplo, en caso de que se detecte un cambio gradual
de ocupación de memoria intermedia. Un cambio de este tipo en la
ocupación de la memoria intermedia puede indicar un desajuste de
reloj entre el transmisor y el receptor.
Las tramas recibidas pueden escalarse en el
tiempo en la cantidad determinada dentro de una ventana de tiempo
de la longitud determinada. El escalado real puede llevarse a cabo
de cualquier manera adecuada. Cada periodo de escalado puede
corresponderse, por ejemplo, con un múltiplo adecuado de un periodo
de tono.
Debe entenderse que el escalado en el tiempo no
tiene por qué realizarse exactamente en aquellas tramas que se
reciban realmente con un retardo modificado y para las que se
detecte un cambio de retardo. Al menos en algunos sistemas e
implementaciones, el retardo modificado de las tramas recibidas
puede determinarse, por ejemplo, en función de estadísticas de
recepción y, por lo tanto, no en función del retardo de tramas
únicas en primer lugar.
Para el escalado real en el tiempo puede
considerarse además que la calidad de audio resultante después de
una modificación de escala de tiempo no es la misma para todos los
contenidos de audio. Por ejemplo, para señales de voz, ciertos
tipos de trama, tales como tramas transitorias o ataques sonoros, se
tratan con cuidado de manera ventajosa para no degradar la calidad
de audio. Esto implica que con criterios de calidad estrictos
pueden conseguirse los mejores resultados prohibiendo el escalado de
determinadas tramas. En particular, en caso de que la longitud
determinada de la ventana de tiempo sea más larga, puede
determinarse además el tipo de contenido de las tramas dentro de la
ventana de tiempo determinada. Por lo tanto puede evitarse un
escalado en el tiempo de aquellas tramas dentro de la ventana de
tiempo que tengan un contenido de un tipo predeterminado.
El escalado en el tiempo podría no aplicarse
directamente a las tramas recibidas, sino a tramas recibidas
procesadas.
Las tramas recibidas pueden, por ejemplo,
almacenarse en una memoria intermedia variable tras su recepción y
recuperarse de la memoria intermedia variable para su
descodificación. Después, las tramas descodificadas pueden
someterse al escalado en el tiempo. Esta alternativa es
particularmente adecuada para el caso en que el escalado en el
tiempo se realice en un bloque de procesamiento dedicado, es decir,
en un circuito de hardware delimitado o en un código de software
delimitado.
Como alternativa, el escalado en el tiempo puede
realizarse, por ejemplo, en combinación con otra función de
procesamiento, tal como una función de descodificación o de
transcodificación. Combinar una técnica de escalado sincronizado
con el tono y un descodificador de voz, por ejemplo, es un enfoque
particularmente favorable para proporcionar una capacidad de
escalado en el tiempo de alta calidad. Por ejemplo, con un códec AMR
esto proporciona claros beneficios en lo que respecta a una baja
carga de procesamiento.
Si el escalado en el tiempo se combina con la
descodificación, las tramas recibidas también pueden almacenarse en
una memoria intermedia variable tras su recepción y recuperarse de
la memoria intermedia variable para su descodificación. Sin
embargo, en este caso, las tramas que están sometidas al escalado en
el tiempo pueden ser tramas que incluyan una señal de excitación de
filtro de síntesis de predicción lineal (LP) generada en la
descodificación.
La invención puede aplicarse a cualquier tipo de
códec de audio, en particular, aunque no exclusivamente, a
cualquier tipo de códec de voz. Además, puede usarse, por ejemplo,
para AMR y VoTP.
Otros objetivos y características de la presente
invención resultarán evidentes a partir de la siguiente descripción
detallada considerada junto con los dibujos adjuntos. Sin embargo,
debe entenderse que los dibujos están diseñados solamente para
fines ilustrativos y no como una definición de los límites de la
invención, para los cuales debe hacerse referencia a las
reivindicaciones adjuntas. Además, debe entenderse que los dibujos
no están dibujados a escala y que simplemente pretenden ilustrar
conceptualmente las estructuras y los procedimientos descritos en
este documento.
La fig. 1 es un diagrama de bloques esquemático
de un sistema de transmisión según una realización de la
invención;
la fig. 2 ilustra detalles de un receptor de
audio del sistema de la fig. 1;
la fig. 3 ilustra detalles adicionales de un
receptor de audio del sistema de la figura 1; y
la fig. 4 es un diagrama de flujo que ilustra el
funcionamiento del receptor de audio de la fig. 1.
La figura 1 es un diagrama de bloques
esquemático de un sistema de transmisión a modo de ejemplo en el que
puede implementarse un escalado en el tiempo mejorado según una
realización de la invención.
El sistema comprende un dispositivo 110
electrónico con un transmisor 111 de audio, una red 120 de
comunicación de conmutación de paquetes y un dispositivo 130
electrónico con un receptor 131 de audio. El transmisor 111 de
audio puede transmitir tramas de audio que incluyan datos de audio
codificados a través de la red 120 de comunicación de conmutación
de paquetes al receptor 131 de audio, comprendiendo cada paquete una
trama de audio con datos de audio codificados.
La entrada del receptor 131 de audio está
conectada dentro del receptor 131 de audio a una memoria 132
intermedia de fluctuación, por un lado, y a un analizador 133 de
red, por otro lado. La memoria 132 intermedia de fluctuación está
conectada a través de un descodificador 134 y de una unidad 135 de
escalado en el tiempo a la salida del receptor 131 de audio. Una
salida de señales de control del analizador 133 de red está
conectada a una primera entrada de control de una lógica 136 de
control de escalado en el tiempo, mientras que una salida de
señales de control de la memoria 132 intermedia de fluctuación está
conectada a una segunda entrada de control de la lógica 136 de
control de escalado en el tiempo. Una salida de señales de control
de la lógica 136 de control de escalado en el tiempo está conectada
además a una entrada de control de la unidad 135 de escalado en el
tiempo.
La salida del receptor 131 de audio puede
conectarse a un componente 138 de reproducción del dispositivo 130
electrónico, por ejemplo a altavoces.
La memoria 132 intermedia de fluctuación se
utiliza para almacenar tramas de audio recibidas que esperan ser
descodificadas y reproducidas. La memoria 132 intermedia de
fluctuación puede tener la capacidad de disponer las tramas
recibidas en el orden de descodificación correcto y de proporcionar
las tramas dispuestas (o información relacionada con tramas
ausentes) en secuencia al descodificador 134 bajo solicitud. Además,
la memoria 132 intermedia de fluctuación proporciona información
referente a su estado a la lógica 136 de control de escalado en el
tiempo. El analizador 133 de red calcula un conjunto de parámetros
que describen las características de recepción actuales en función
de estadísticas de recepción de trama y de la temporización de las
tramas recibidas, y proporciona el conjunto de parámetros a la
lógica 136 de control de escalado en el tiempo. En función de la
información recibida, la lógica 136 de control de escalado en el
tiempo determina la necesidad de un retardo variable de
almacenamiento en memoria intermedia y proporciona comandos de
escalado en el tiempo correspondientes a la unidad 135 de escalado
en el tiempo. El retardo medio de almacenamiento en memoria
intermedia utilizado no tiene que ser un múltiplo entero de la
longitud de trama de entrada. El retardo óptimo medio de
almacenamiento en memoria intermedia es el retardo que minimiza el
tiempo de almacenamiento en memoria intermedia sin que ninguna
trama llegue tarde.
El descodificador 134 recupera una trama de
audio de la memoria 132 intermedia siempre que el componente 138 de
reproducción solicite nuevos datos. Descodifica la trama de audio
recuperada y reenvía la trama de audio descodificada a la unidad
135 de escalado en el tiempo. La unidad 135 de escalado en el tiempo
realiza un escalado controlado por la lógica 136 de control de
escalado en el tiempo, es decir, puede alargar o acortar las tramas
descodificadas recibidas. Las tramas descodificadas y posiblemente
escaladas en el tiempo se proporcionan al componente 138 de
reproducción para su presentación a un usuario. Debe entenderse que
la arquitectura presentada del receptor 131 de audio de la figura 1
solo pretende ilustrar la funcionalidad lógica básica de un receptor
de audio a modo de ejemplo según la invención. En una
implementación práctica, las funciones representadas pueden
asignarse de diferente manera a bloques de procesamiento. Algunos
bloques de procesamiento de una arquitectura alternativa pueden
combinar varias de las funciones descritas anteriormente. Una unidad
de escalado en el tiempo combinada con un descodificador, por
ejemplo, puede proporcionar una solución muy eficaz a nivel
computacional. Además, puede haber bloques de procesamiento
adicionales y algunos componentes, como la memoria 132 intermedia,
pueden estar dispuestos incluso fuera del receptor 131 de audio.
El sistema presentado puede implementarse como
un sistema convencional en el que los datos de audio se transmiten
desde un transmisor de audio hasta un receptor de audio, excepto en
lo referente a la lógica 136 de control de escalado en el tiempo y
la unidad 135 de escalado en el tiempo del receptor 131 de
audio.
La figura 2 muestra detalles funcionales de la
lógica 136 de control de escalado en el tiempo.
La lógica 136 de control de escalado en el
tiempo puede implementarse mediante un código de software que pueda
ejecutarse por un procesador 200 del dispositivo 131 electrónico.
Debe entenderse que el mismo procesador 200 puede ejecutar además
códigos de software que realicen otras funciones del receptor 131 de
audio o, en general, del dispositivo 130 electrónico. Debe
observarse que, como alternativa, las funciones de la lógica 136 de
control de escalado en el tiempo pueden realizarse mediante
hardware, por ejemplo mediante un circuito integrado en un chip o
en un conjunto de chips.
La lógica 136 de control de escalado en el
tiempo comprende un componente 210 de determinación de la
"cantidad de escalado en el tiempo" y un componente 211 de
determinación de la "longitud de ventana de tiempo" conectado
a este componente 210 de determinación. Ambas entradas de control de
la lógica 136 de control de escalado en el tiempo que están
conectadas al analizador 133 de red y a la memoria 132 intermedia de
fluctuación, respectivamente, están conectadas al componente 210 de
determinación. El componente 210 de determinación suministra una
solicitud de escalado que se introduce en la unidad 135 de escalado
en el tiempo. El componente 211 de determinación suministra una
longitud de ventana de tiempo que se introduce en la unidad 135 de
escalado en el tiempo.
La figura 3 muestra detalles funcionales de la
unidad 135 de escalado en el tiempo.
La unidad 135 de escalado en el tiempo también
puede implementarse mediante un código de software que pueda
ejecutarse por un procesador 200 del dispositivo 131 electrónico.
Debe entenderse que el mismo procesador 200 puede ejecutar además
códigos de software que realicen otras funciones del receptor 131 de
audio o, en general, del dispositivo 130 electrónico. En
particular, un código de software que realice las funciones de la
unidad 135 de escalado en el tiempo puede ejecutarse por el mismo
procesador 200 como un código de software que realice las funciones
de la lógica 136 de control de escalado en el tiempo. Debe
observarse que, como alternativa, la función de la unidad 135 de
escalado en el tiempo también puede realizarse mediante hardware,
por ejemplo mediante un circuito integrado en un chip o en conjunto
de chips, posiblemente el mismo chip o conjunto de chips en el que
están integradas las funciones de la lógica 136 de control de
escalado en el tiempo.
La unidad 135 de escalado en el tiempo comprende
un componente 310 de determinación del "tipo de trama" y un
componente 311 de "escalado de tiempo mediante división en
ventanas" conectado a este componente 310 de determinación.
Ambas salidas de señales de control de la unidad 136 de escalado en
el tiempo para la solicitud de escalado y la longitud de ventana de
tiempo están conectadas al componente 311 de "escalado en el
tiempo mediante división en ventanas". La salida del
descodificador 134 está conectada al componente 310 de
determinación. El componente 311 de "escalado en el tiempo
mediante división en ventanas" suministra tramas descodificas y
escaladas que se introducen en el componente 138 de
reproducción.
Si la unidad 135 de escalado en el tiempo
funciona como un bloque de procesamiento independiente tal y como
se ilustra, la modificación de escala de tiempo descrita se realiza
normalmente en la señal de voz descodificada. Si la unidad 135 de
escalado en el tiempo está combinada con el descodificador 134, la
modificación de escala de tiempo descrita puede realizarse, por
ejemplo, en la señal de excitación de filtro de síntesis LP generada
en el descodificador 134.
A continuación se describirá un control de
escalado en el tiempo según una realización a modo de ejemplo de la
invención con referencia al diagrama de flujo de la figura 4. Las
etapas 401 a 405 indicadas se llevan a cabo por la lógica 136 de
control de escalado en el tiempo, mientras que las etapas 406 y 407
indicadas se llevan a cabo por la unidad 135 de escalado en el
tiempo.
La lógica 136 de control de escalado en el
tiempo recibe información acerca del estado de red desde el
analizador 133 de red e información acerca del estado de memoria
intermedia desde la memoria 132 intermedia de fluctuación. En
función de esta información, el componente 210 de determinación
determina si un cambio del retardo de almacenamiento en memoria
intermedia es inminente y, si es así, determina además la cantidad
de escalado en el tiempo que se requiere para compensar el cambio
(etapa 401). Cuando las características de la red y el estado de la
memoria intermedia indican un mayor retardo, algunas tramas tienen
que alargarse en una cantidad apropiada de manera que el componente
138 de reproducción solicite nuevos datos en menor proporción para
impedir un subdesbordamiento de la memoria intermedia mientras
aumenta el retardo de almacenamiento en memoria intermedia. Cuando
las características de la red y el estado de la memoria intermedia
indican un menor retardo, algunas tramas tienen que acortarse en
una cantidad apropiada para que el componente 138 de reproducción
solicite nuevos datos en mayor proporción para impedir un
desbordamiento de la memoria intermedia mientras disminuye el
retardo de almacenamiento en memoria intermedia.
El componente 210 de determinación informa al
componente 211 de determinación con respecto a cualquier escalado
en el tiempo requerido así como acerca del estado actual de la red y
de la memoria intermedia. Además, genera una solicitud de escalado
en el tiempo que incluye la cantidad requerida de escalado en el
tiempo y la proporciona a la unidad 135 de escalado en el
tiempo.
En caso de que se requiera un escalado en el
tiempo (etapa 402), el componente 211 de determinación determina si
el tipo del retardo modificado requiere una reacción rápida (etapa
403).
Para este fin, el componente 211 de
determinación puede diferenciar, por ejemplo, entre un desajuste de
reloj, cambios en un retardo de transmisión "estático",
valores de pico variables de retardo y de fluctuación, tal y como
se explica a continuación.
En algunos casos, los relojes que activan el
funcionamiento del transmisor 111 y del receptor 131 no están
sincronizados debido a que la señal de reloj no es completamente
precisa. Puede haber una pequeña desviación que haga que la
velocidad real del reloj sea ligeramente diferente del valor
nominal, dando como resultado un desajuste del reloj. Si el reloj
del transmisor es más rápido que el reloj del receptor, parece que
las tramas llegan al receptor 131 en intervalos demasiado cortos y
se observa que en el receptor 131 crece gradualmente la ocupación
de la memoria intermedia y aumenta el retardo medio de
almacenamiento en memoria intermedia. Por otro lado, si el reloj
del transmisor es más lento que el reloj del receptor, parece que
las tramas llegan al receptor 131 en intervalos demasiado largos y
esto provocará que disminuya lentamente la ocupación en la memoria
intermedia y que disminuya el retardo medio de almacenamiento en
memoria intermedia. Si no se controla este fenómeno, tarde o
temprano se producirá un desbordamiento o un subdesbordamiento en la
memoria intermedia.
Este primer aspecto considerado puede detectarse
mediante el componente 211 de determinación controlando la
variación gradual de la memoria intermedia.
Puede producirse un cambio en el retardo de
transmisión "estático" si cambia repentinamente la carga de la
red. Como resultado, puede haber un cambio significativo en el
retardo que requiera adaptar la memoria intermedia. Es probable que
un aumento evidente del retardo provoque un subdesbordamiento en la
memoria intermedia, mientras que una disminución repentina del
retardo puede provocar un desbordamiento en la memoria
intermedia.
Este segundo aspecto considerado puede
detectarse mediante el componente 211 de determinación controlando
un cambio evidente en el retardo de los paquetes recibidos.
Un cambio en la carga de red también puede
observarse como una fluctuación variable en lugar de cambios en el
componente de retardo estático. Una fluctuación variable puede ser
realmente un fenómeno mucho más común que un retardo estático
variable. En este escenario, una mayor fluctuación provocará una
mayor cantidad de tramas llegan tarde si el retardo de
almacenamiento en memoria intermedia no aumenta consecuentemente.
Por otro lado, una tendencia decreciente en la fluctuación reducirá
el número de tramas perdidas a causa de una llegada tardía, lo que
puede utilizarse para reducir el retardo de almacenamiento en
memoria intermedia.
Este tercer aspecto considerado puede detectarse
mediante el componente 211 de determinación evaluando la cantidad
de tramas que llegan tarde.
Una perturbación de muy poca duración en la red
120 puede observarse en el receptor 131 como un valor de pico de
retardo, es decir, un corto periodo sin ningún paquete seguido de
una ráfaga de paquetes.
Este cuarto aspecto considerado puede detectarse
mediante el componente 211 de determinación evaluando la
distribución del tiempo de recepción de los paquetes.
El mismo ritmo de modificación no daría como
resultado la mejor calidad de audio posible en todos los escenarios
enumerados anteriormente. El desajuste de reloj y la fluctuación
variable se producen normalmente de manera que puedan controlarse
mediante modificaciones graduales, las cuales son por sí mismas el
mejor enfoque para mantener una alta calidad de audio. Por otro
lado, un cambio en el retardo de transmisión estático y valores de
pico de retardo requieren una reacción rápida para minimizar la
degradación en la calidad de audio debida a la pérdida de
paquetes.
En caso de que se detecte que no es necesaria
una reacción rápida (etapa 403), el componente 211 de determinación
fija la longitud de una ventana de tiempo para la cantidad requerida
de escalado a un valor elevado y proporciona este valor a la unidad
135 de escalado en el tiempo (etapa 404). El valor elevado es
adecuado para ordenar a la unidad 135 de escalado en el tiempo que
lleve a cabo la cantidad requerida de escalado en el tiempo durante
un periodo de modificación relativamente largo.
En caso de que se detecte que se requiere una
reacción rápida (etapa 403), el componente 211 de determinación
fija la longitud de una ventana de tiempo para la cantidad requerida
de escalado a un valor pequeño y proporciona este valor a la unidad
135 de escalado en el tiempo (etapa 405). El valor pequeño es
adecuado para ordenar a la unidad 135 de escalado en el tiempo que
lleve a cabo inmediatamente la cantidad requerida de escalado en el
tiempo y dentro de un corto periodo de modificación.
Debe entenderse que en ambos casos el tamaño de
ventana seleccionado puede depender además de otros criterios.
Puede depender además, por ejemplo, de la cantidad requerida de
escalado en el tiempo ya que una gran cantidad de escalado y una
pequeña cantidad de escalado dentro de la misma ventana de tiempo
tendrán evidentemente diferentes efectos.
La unidad 135 de escalado en el tiempo recibe
tramas de audio descodificadas desde el descodificador 134. Además,
recibe el comando de escalado y la longitud asociada de una ventana
de tiempo desde la lógica 136 de control de escalado en el
tiempo.
El componente 310 de determinación comprueba el
tipo de las tramas descodificadas actualmente recibidas para
detectar tramas que presenten requisitos particulares relacionados
con la calidad de audio, como tramas transitorias o tramas con
ataques sonoros (etapa 406).
El componente 311 de escalado en el tiempo
mediante división en ventanas de la unidad 135 de escalado en el
tiempo aplica después un escalado en el tiempo a las tramas
descodificadas recibidas (etapa 407).
El escalado en el tiempo se realiza en la
cantidad solicitada dentro de la ventana de tiempo indicada. El
componente 311 de escalado en el tiempo mediante división en
ventanas selecciona tramas apropiadas para el escalado en el tiempo
y puntos de modificación óptimos en las tramas seleccionadas para el
escalado en el tiempo.
En principio, el escalado en el tiempo comienza
con la primera trama que se recibe después de un nuevo comando de
escalado. Sin embargo, si la combinación de la cantidad de escalado
en el tiempo y el tamaño de ventana indicado no implican que se
requiera una reacción rápida, el componente 311 de escalado en el
tiempo mediante división en ventanas controla que se evite un
escalado en el tiempo de tramas sensibles detectadas por el
componente 310 de determinación.
Normalmente, la extensión o la contracción de
señales se realizan como múltiplos de ciclos de tono. Un ejemplo de
un escalado en el tiempo adecuado puede encontrarse en el documento
"High quality time-scale modification for
speech" de S. Roucos y A.M Wilgus, IEEE ICASSP 1985, páginas
493 a 496. Sin embargo, debe entenderse que también pueden
utilizarse otros enfoques de escalado en el tiempo.
Debe observarse que la cantidad de escalado en
el tiempo no viene dada solamente por una cantidad absoluta de un
escalado requerido que va a conseguirse con tramas recibidas dentro
de la ventana de tiempo dada. La cantidad de escalado en el tiempo
también puede indicar, por ejemplo, cuántas tramas escaladas en el
tiempo deben estar contenidas en la ventana de tiempo indicada. Por
lo tanto, la longitud de la ventana de tiempo puede limitar el
número de tramas consideradas antes del escalado en el tiempo o
definir la extensión de las tramas resultantes del escalado en el
tiempo.
Debe observarse además que un enfoque
alternativo en el que la lógica 136 de control de escalado en el
tiempo distribuye una solicitud de escalado más grande en una serie
de solicitudes más pequeñas, es menos beneficioso la división en
ventanas propuesta. El motivo es que la unidad 135 de escalado en el
tiempo conoce las características de señal actuales y, por lo
tanto, puede tomar la decisión acerca del punto de escalado exacto
que minimice la degradación de la calidad de audio.
En general, la memoria intermedia adaptativa de
fluctuación debe tener en cuenta las condiciones de red subyacentes,
el funcionamiento del descodificador y el rendimiento de la unidad
de escalado en el tiempo.
Aunque se han mostrado, descrito y expuesto
características novedosas fundamentales de la invención aplicadas a
una realización preferida de la misma, debe entenderse que los
expertos en la técnica pueden realizar diversas omisiones,
sustituciones y cambios en la forma y en los detalles de los
dispositivos y procedimientos descritos sin apartarse del alcance
de la invención, la cual está definida solamente por las
reivindicaciones adjuntas en este documento.
Claims (20)
1. Un procedimiento, que comprende:
- detectar un cambio en un retardo de tramas que se reciben a través de una red de conmutación de paquetes, perteneciendo las tramas a una secuencia de tramas en la que se distribuye una señal de audio;
- determinar la cantidad de escalado en el tiempo que se requiere aplicar a las tramas recibidas para compensar dicho cambio detectado;
- determinar un tipo de dicho cambio evaluando al menos un cambio en la cantidad de tramas retardadas; y
- determinar una longitud de una ventana de tiempo dentro de la cual va a completarse un escalado en el tiempo de dicha cantidad requerida dependiendo de dicho tipo determinado de dicho cambio.
\vskip1.000000\baselineskip
2. El procedimiento según la reivindicación 1,
en el que un tipo determinado de dicho cambio es o bien un cambio
que requiere una ventana de tiempo más corta para una cantidad
determinada de escalado en el tiempo o bien un tipo que permite una
ventana de tiempo más larga para una cantidad determinada de
escalado en el tiempo.
3. El procedimiento según la reivindicación 2,
en el que se determina que sea dado un tipo de un cambio que
requiere una ventana de tiempo más corta al menos en caso de que se
detecte uno de entre un cambio de retardo, cambio que supere un
valor predeterminado, y un valor de pico de retardo.
4. El procedimiento según la reivindicación 2 ó
3, en el que las tramas recibidas se almacenan en una memoria
intermedia variable tras su recepción y en el que se determina que
sea dado un tipo de un cambio que permita una ventana de tiempo más
larga al menos en caso de que se detecte un cambio gradual de
ocupación de memoria intermedia.
5. El procedimiento según una de las
reivindicaciones 2 a 4, en el que se determina que sea dado un tipo
de un cambio que permite una ventana de tiempo más larga al menos en
caso de que se detecte un cambio en la cantidad de tramas
retardadas.
6. El procedimiento según una de las
reivindicaciones anteriores, que comprende una etapa posterior en la
que las tramas recibidas se escalan en el tiempo en dicha cantidad
determinada dentro de una ventana de tiempo de dicha longitud
determinada.
7. El procedimiento según la reivindicación 6,
que comprende además determinar un tipo de contenido de dichas
tramas dentro de dicha ventana de tiempo y evitar un escalado en el
tiempo de esas tramas dentro de dicha ventana de tiempo, tramas que
presentan un contenido de un tipo predeterminado.
8. El procedimiento según una de las
reivindicaciones 6 a 7, en el que las tramas recibidas se almacenan
una memoria intermedia variable tras su recepción y se recuperan de
dicha memoria intermedia variable para su descodificación, y en el
que las tramas que están sometidas a dicho escalado en el tiempo son
tramas que incluyen una señal de excitación de filtro de síntesis
de predicción lineal generada en dicha descodificación.
9. Un aparato que comprende un componente de
control de escalado en el tiempo para controlar un escalado en el
tiempo de una señal de audio, señal de audio que se distribuye en
una secuencia de tramas que se reciben a través de una red de
conmutación de paquetes,
estando adaptado dicho componente de control de
escalado en el tiempo para detectar un cambio en un retardo de
tramas recibidas;
estando adaptado dicho componente de control de
escalado en el tiempo para determinar la cantidad de escalado en el
tiempo que se requiere aplicar a las tramas recibidas para compensar
un cambio detectado;
estando adaptado dicho componente de control de
escalado en el tiempo para determinar un tipo de un cambio
detectado evaluando al menos un cambio en la cantidad de tramas
retardadas; y
estando adaptado dicho componente de control de
escalado en el tiempo para determinar una longitud de una ventana
de tiempo dentro de la cual va a completarse un escalado en el
tiempo de dicha cantidad requerida dependiendo de dicho tipo
determinado de dicho cambio.
\vskip1.000000\baselineskip
10. El aparato según la reivindicación 9, en el
que un tipo determinado de dicho cambio es o bien un tipo que
requiere una ventana de tiempo más corta para una cantidad
determinada de escalado en el tiempo o bien un tipo que permite una
ventana de tiempo más larga para una cantidad determinada de
escalado en el tiempo.
11. El aparato según la reivindicación 10, en el
que dicho componente de control de escalado en el tiempo está
adaptado para determinar que sea dado un tipo de un cambio que
requiera una ventana de tiempo más corta al menos en caso de que se
detecte uno de entre un cambio de retardo, cambio que supere un
valor predeterminado, y un valor de pico de retardo.
12. El aparato según la reivindicación 10 u 11,
que comprende una memoria intermedia variable adaptada para
almacenar tramas recibidas tras la recepción y en el que dicho
componente de control de escalado en el tiempo está adaptado para
determinar que sea dado un tipo de un cambio que permita una ventana
de tiempo más larga al menos en caso de que se detecte un cambio
gradual de ocupación de memoria intermedia.
13. El aparato según una de las reivindicaciones
10 a 12, en el que dicho componente de control de escalado en el
tiempo está adaptado para determinar que sea dado un tipo de un
cambio que permita una ventana de tiempo más larga al menos en caso
de que se detecte un cambio en la cantidad de tramas retardadas.
14. El aparato según una de las reivindicaciones
9 a 13, que comprende un componente de escalado en el tiempo
adaptado para que las tramas recibidas se escalen en el tiempo en
una cantidad determinada dentro de una ventana de tiempo de una
longitud determinada.
15. El aparato según la reivindicación 14, en el
que dicho componente de escalado en el tiempo está adaptado para
determinar un tipo de contenido de tramas dentro de dicha ventana de
tiempo y para evitar un escalado en el tiempo de esas tramas dentro
de dicha ventana de tiempo, tramas que presentan un contenido de un
tipo predeterminado.
16. Un aparato según una de las reivindicaciones
9 a 15, en el que dicho aparato es uno de entre un conjunto de
chips con al menos un chip, un receptor de audio y un dispositivo
electrónico.
17. Un código de software adaptado para llevar a
cabo las siguientes etapas cuando se ejecuta por un procesador:
- detectar un cambio en un retardo de tramas recibidas que se reciben a través de una red de conmutación de paquetes, perteneciendo las tramas a una secuencia de tramas en la que se distribuye una señal de audio;
- determinar la cantidad de escalado en el tiempo que se requiere aplicar a las tramas recibidas para compensar dicho cambio detectado;
- determinar un tipo de dicho cambio evaluando al menos un cambio en la cantidad de tramas retardadas; y
- determinar una longitud de una ventana de tiempo dentro de la cual va a completarse un escalado en el tiempo de dicha cantidad requerida dependiendo de dicho tipo determinado de dicho cambio.
\vskip1.000000\baselineskip
18. El código de software según la
reivindicación 17, en el que un tipo determinado de dicho cambio es
o bien un tipo que requiere una ventana de tiempo más corta para
una cantidad determinada de escalado en el tiempo o bien un tipo
que permite una ventana de tiempo más larga para una cantidad
determinada de escalado de tiempo.
19. El código de software según la
reivindicación 17 o 18, que cuando se ejecuta por un procesador,
dicho código de software realiza una etapa posterior en la que las
tramas recibidas se escalan en el tiempo en dicha cantidad
predeterminada dentro de una ventana de tiempo de dicha longitud
determinada, las tramas recibidas.
20. Un producto de programa de software en el
que está almacenado un código de software según una de las
reivindicaciones 17 a 19.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US349745 | 2003-01-21 | ||
US11/349,745 US8832540B2 (en) | 2006-02-07 | 2006-02-07 | Controlling a time-scaling of an audio signal |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2340545T3 true ES2340545T3 (es) | 2010-06-04 |
Family
ID=38037463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES07705785T Active ES2340545T3 (es) | 2006-02-07 | 2007-02-05 | Control de escalado en el tiempo de una señal de audio. |
Country Status (10)
Country | Link |
---|---|
US (1) | US8832540B2 (es) |
EP (1) | EP1982332B1 (es) |
KR (1) | KR101002405B1 (es) |
CN (1) | CN101379556B (es) |
AT (1) | ATE463030T1 (es) |
DE (1) | DE602007005605D1 (es) |
ES (1) | ES2340545T3 (es) |
PT (1) | PT1982332E (es) |
TW (1) | TWI480861B (es) |
WO (1) | WO2007091204A1 (es) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7983309B2 (en) * | 2007-01-19 | 2011-07-19 | Nokia Corporation | Buffering time determination |
US20080222636A1 (en) * | 2007-03-05 | 2008-09-11 | David Tzat Kin Wang | System and method of real-time multiple-user manipulation of multimedia threads |
JP5734517B2 (ja) | 2011-07-15 | 2015-06-17 | 華為技術有限公司Huawei Technologies Co.,Ltd. | 多チャンネル・オーディオ信号を処理する方法および装置 |
US9420475B2 (en) * | 2013-02-08 | 2016-08-16 | Intel Deutschland Gmbh | Radio communication devices and methods for controlling a radio communication device |
CN105474313B (zh) * | 2013-06-21 | 2019-09-06 | 弗劳恩霍夫应用研究促进协会 | 时间缩放器、音频解码器、方法和计算机可读存储介质 |
SG11201510459YA (en) | 2013-06-21 | 2016-01-28 | Fraunhofer Ges Forschung | Jitter buffer control, audio decoder, method and computer program |
US10700797B2 (en) | 2017-07-07 | 2020-06-30 | Nxp B.V. | Signal processing using multiple sources |
US10313416B2 (en) | 2017-07-21 | 2019-06-04 | Nxp B.V. | Dynamic latency control |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW419645B (en) * | 1996-05-24 | 2001-01-21 | Koninkl Philips Electronics Nv | A method for coding Human speech and an apparatus for reproducing human speech so coded |
US6512761B1 (en) * | 1999-02-02 | 2003-01-28 | 3Com Corporation | System for adjusting billing for real-time media transmissions based on delay |
US6735192B1 (en) * | 1999-09-29 | 2004-05-11 | Lucent Technologies Inc. | Method and apparatus for dynamically varying a packet delay in a packet network based on a log-normal delay distribution |
TW446935B (en) * | 1999-10-26 | 2001-07-21 | Elan Microelectronics Corp | Method and apparatus of multi-channel voice analysis and synthesis |
US6636830B1 (en) * | 2000-11-22 | 2003-10-21 | Vialta Inc. | System and method for noise reduction using bi-orthogonal modified discrete cosine transform |
US7171367B2 (en) * | 2001-12-05 | 2007-01-30 | Ssi Corporation | Digital audio with parameters for real-time time scaling |
WO2005117366A1 (ja) * | 2004-05-26 | 2005-12-08 | Nippon Telegraph And Telephone Corporation | 音声パケット再生方法、音声パケット再生装置、音声パケット再生プログラム、記録媒体 |
MY149811A (en) | 2004-08-30 | 2013-10-14 | Qualcomm Inc | Method and apparatus for an adaptive de-jitter buffer |
-
2006
- 2006-02-07 US US11/349,745 patent/US8832540B2/en active Active
-
2007
- 2007-02-05 EP EP07705785A patent/EP1982332B1/en active Active
- 2007-02-05 DE DE602007005605T patent/DE602007005605D1/de active Active
- 2007-02-05 TW TW096104019A patent/TWI480861B/zh active
- 2007-02-05 KR KR1020087019311A patent/KR101002405B1/ko active IP Right Grant
- 2007-02-05 CN CN2007800046200A patent/CN101379556B/zh active Active
- 2007-02-05 AT AT07705785T patent/ATE463030T1/de not_active IP Right Cessation
- 2007-02-05 PT PT07705785T patent/PT1982332E/pt unknown
- 2007-02-05 WO PCT/IB2007/050368 patent/WO2007091204A1/en active Application Filing
- 2007-02-05 ES ES07705785T patent/ES2340545T3/es active Active
Also Published As
Publication number | Publication date |
---|---|
EP1982332A1 (en) | 2008-10-22 |
CN101379556A (zh) | 2009-03-04 |
PT1982332E (pt) | 2010-05-06 |
TW200807395A (en) | 2008-02-01 |
US20070186145A1 (en) | 2007-08-09 |
KR101002405B1 (ko) | 2010-12-21 |
WO2007091204A1 (en) | 2007-08-16 |
TWI480861B (zh) | 2015-04-11 |
DE602007005605D1 (de) | 2010-05-12 |
EP1982332B1 (en) | 2010-03-31 |
KR20080083206A (ko) | 2008-09-16 |
CN101379556B (zh) | 2012-11-14 |
US8832540B2 (en) | 2014-09-09 |
ATE463030T1 (de) | 2010-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2340545T3 (es) | Control de escalado en el tiempo de una señal de audio. | |
ES2405750T3 (es) | Procedimiento y aparato de memoria intermedia de supresión de fluctuación adaptativa | |
ES2287133T3 (es) | Configuracion y metodo relativo a la comunicacion del habla. | |
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. | |
US7319703B2 (en) | Method and apparatus for reducing synchronization delay in packet-based voice terminals by resynchronizing during talk spurts | |
ES2378491T3 (es) | Procedimiento y aparato para modificar una sincronización de reproducción de ráfagas de voz en una frase sin afectar a la inteligibilidad | |
US7787500B2 (en) | Packet receiving method and device | |
KR101121212B1 (ko) | 통신 시스템에서 데이터 전송 방법 | |
US20040076191A1 (en) | Method and a communiction apparatus in a communication system | |
WO2007132377A1 (en) | Adaptive jitter management control in decoder | |
US20070294087A1 (en) | Synthesizing comfort noise | |
US20070201656A1 (en) | Time-scaling an audio signal | |
EP2070294B1 (en) | Supporting a decoding of frames | |
JP2004104485A (ja) | 無線電話機及び無線通信方法 | |
JP2001160826A (ja) | 遅延ゆらぎ吸収装置、遅延ゆらぎ吸収方法 | |
US20070186146A1 (en) | Time-scaling an audio signal | |
JP2005309096A (ja) | 音声復号化装置および音声復号化方法 | |
JP2004205638A (ja) | 無音圧縮装置 | |
JP2001251342A (ja) | パケット受信装置 |