Title: Sincronizacin
1Sincronización
- http//piglet.uccs.edu/cs525/synmm/Blakowski20.p
df - http//piglet.uccs.edu/cs525/synmm/synmm.htm
2Índice
- Introducción
- Nociones de sincronización
- Requerimientos de presentación
- Modelos de referencia
- Especificación de la sincronización
3INTRODUCCIÓN
4Introducción I
- Los sistemas multimedia avanzados se caracterizan
por - La generación integrada y controlada por
ordenador, y - Almacenamiento, comunicación, manipulación y
presentación de - Medios dependientes e independientes del tiempo.
5Introducción II
- Sincronización en los sistemas multimedia se
refiere a las relaciones temporales entre
diferentes elementos multimedia. - En un sentido mas amplio se puede utilizar el
término, comprendiendo - Los contenidos
- Las relaciones espacio temporales entre los
diferentes elementos multimedia.
6Elementos multimediadependientes del tiempo
- Se pueden representar como un flujo del elemento.
- Existen relaciones temporales entre unidades
consecutivas del flujo multimedia. - Si todas las unidades presentan la misma duración
el elemento multimedia es continuo. - Un ejemplo es el vídeo conjunto de frames
ordenados de duración fija.
7Elementos multimediaindependientes del tiempo
- Cualquiera de los elementos multimedia
tradicionales como el texto y las imágenes.
8Nociones de sincronización
9Características generales
- Definiciones de sistemas multimedia
- Aspectos básicos de la sincronización
- Sincronización inter e intra-elemento
- Unidades lógicas de datos
- Tipos de sincronización
10Introducción
- La sincronización entre elementos multimedia
comprende las relaciones entre elementos
dependientes e independientes del tiempo. - Ejemplo de sincronización entre medios continuos
es el vídeo y el audio. - Ejemplo de sincronización entre elementos
dependientes e independientes es el de una cinta
de audio y un carrusel de diapositivas.
11Definiciones de Sistema Multimedia
- Dependiendo del número de elementos multimedia.
- Dependiendo del tipo de medios soportados
dependientes e independientes del tiempo. - Dependiendo del grado de integración, entendiendo
esta como que los diferentes elementos permanecen
independientes pero pueden ser procesados y
presentados juntos.
12Definición conjunta
- Combinando los tres criterios anteriores, un
sistema multimedia puede definirse como - Un sistema o aplicación que soporta el
procesamiento integrado de varios tipos de
elementos multimedia con al menos uno de los
medios dependiente del tiempo.
13Clasificación de los medios usados en sistemas
multimedia
Mezclan medios analógicos Dependientes del
tiempo Con medios digitales Independientes del
tiempo
14Aspectos básicos de la sincronización
- Relaciones entre contenidos
- Relaciones espaciales
- Relaciones temporales
15Relaciones entre contenidos
- Ejemplo los datos de una hoja de cálculo y su
representación gráfica. - En los documentos multimedia integrados es
importante expresar estas relaciones
explícitamente con el fin de permitir una
actualización automática de las diferentes vistas
de los mismos datos.
16Relaciones espaciales
- Definen
- el espacio usado para la presentación de un
elemento multimedia - en un dispositivo de salida
- en un cierto instante de tiempo
- en una presentación multimedia
- Ejemplos
- Tamaño de una ventana Windows
- Espacio físico en multimedia contextual
17Relaciones temporales
- Definen las dependencias temporales entre
elementos multimedia. - Ejemplo
- Las relaciones entre audio y vídeo en una
grabación de un concierto.
18Sincronización intra-elemento
- Se refiere a las relaciones temporales entre
varias unidades de presentación en un elemento
multimedia dependiente del tiempo. - Por ejemplo una secuencia de vídeo de 25
frames/seg. Cada frame debe mostrarse cada 40
mseg.
19Sincronización inter-elemento
- Se refiere a la sincronización entre diferentes
elementos multimedia. - Por ejemplo
20Unidades Lógicas de Datos
- Los elementos multimedia dependientes del tiempo
consisten normalmente de una secuencia de
unidades de información denominadas Unidades
Lógicas de Datos (ULD). - Se pueden observar diferentes niveles de
granularidad a la hora de definir una ULD. P. e. - Una sinfonía digitalizada tiene movimientos,
notas musicales y muestras digitalizadas.
21Unidades Lógicas de Datos
- Los diferentes niveles de granularidad que
implican la descomposición jerárquica de los
elementos multimedia pertenecen en general a dos
tipos diferentes de jerarquías - La que implica los contenidos (p. e. movimientos
y notas de la sinfonía) - La que implica la codificación de los datos (p.
e. muestreo de la señal)
22Unidades Lógicas de Datos
- Pueden clasificarse en
- Cerradas
- Duración predecible
- Ejemplos ULDs parte de medios continuos como
vídeo y audio. - Abiertas
- Duración no predecible antes de la ejecución de
la presentación. - Ejemplos Cámara o micrófono, en general objetos
que incluyen la interacción con el usuario.
23Clasificación de las ULDs
- En el caso del vídeo digital se suele asociar ULD
a frame. - Por ejemplo para un vídeo de 30 imágenes por
segundo, cada ULD tiene una duración de 1/30 seg.
24Clasificación de las ULDs
- En otros casos, por ejemplo el audio digital, la
muestra individual es demasiado pequeña para
considerarse. En este caso una ULD se considera
formada por 512 muestras.
25Clasificación de las ULDs
- En los elementos multimedia generados en un
ordenador la duración de la ULD pueden ser
seleccionada por el usuario. - Un ejemplo son los frames de una animación,
dependiendo de la velocidad de presentación se
pueden usar mas o menos frames por unidad de
tiempo.
26Clasificación de las ULDs
- En algunas ocasiones las ULD varían en duración.
- Por ejemplo el registro de eventos de una
interfaz gráfica de usuario para reproducir la
interacción del usuario.
27Clasificación de las ULDs
- Las ULD abiertas de duración no predecible tienen
lugar en el caso de que las ULD no tienen una
duración inherente. - Un ejemplo de este tipo es una interacción de
usuario en la cual la duración de dicha
interacción no se conoce por adelantado.
28Clasificación de las ULDs
- Otros ejemplos
- Sincronización de labios necesita un alto nivel
de acoplamiento entre las LDU de audio y video. - Una presentación de diapositivas con comentarios
grabados debe estar relacionada temporalmente.
29Tipos de sincronización
- Sincronización en vivo
- Las señales se graban y reproducen juntas.
- Sincronización artificial
- Las señales se graban separadas y se reproducen
juntas.
30Sincronización en vivo
31Sincronización artificial
- Su importancia radica en permitir una relación de
sincronización flexible entre diferentes medios. - Se distinguen dos fases
- Especificación las relaciones temporales entre
medios se definen de forma explícita. - Presentación un sistema run-time presenta los
datos de un modo sincronizado.
32Requerimientos de presentación
33Introducción
- Para presentar correctamente los datos multimedia
en la interfaz de usuario, es esencial la
sincronización. - No es posible suministrar una medida objetiva de
la sincronización desde el punto de vista del
usuario. - Puesto que la percepción varia de persona a
persona, sólo se pueden aplicar criterios
heurísticos para determinar si la presentación es
correcta o no.
34Qué requisitos comprende la presentación?
- En la sincronización intra-objeto, la exactitud
concerniente al retraso en la presentación de las
ULD. - En la sincronización inter-objeto la exactitud en
la presentación en paralelo de los objetos
multimedia.
35The gap problem
Problema ocasionado por el bloqueo de una de las
dos fuentes dependientes del tiempo
36Soluciones al gap problem
- Bloqueo restringido utiliza como mecanismo de
re-sincronización la presentación repetida de la
última muestra o una presentación alternativa. - Re-muestreo de un flujo consiste en acelerar o
retrasar el flujo con el fin de alcanzar la
sincronización. Puede ser off-line o on-line. - Eliminar o añadir elementos consiste en insertar
o borrar partes de un flujo.
37Sincronización de labiosDefiniciones
- Se refiere a las relaciones temporales entre
flujos de audio y vídeo en el caso particular del
habla. - Las diferencias de tiempo entre LDU de audio y
vídeo relacionadas se conocen como skew.
38Sincronización de labiosMedidas en usuarios
- La región de sincronía se extiende desde -80 ms
(retraso de audio) hasta 80 ms (adelanto del
audio). Tolerable para la mayoría de los
usuarios. - La región de fuera de sincronía se extiende por
encima de -160 ms y 160 ms. No es aceptable por
prácticamente ningún usuario. - Existe una zona transitoria (audio por encima del
vídeo) donde a mayor cercanía del locutor mas
fácil detectar el error. - Existe otra zona transitoria (vídeo por encima
del audio) que aunque se comprota de forma
semejante a la anterior sin embargo resulta mas
tolerante para los usuario.
39Sincronización de un señalador
- Trabajo realizado en CSCW compartiendo varios
usuarios un puntero (señalador) y señales de
audio. - La zona de sincronía cuando el audio está por
encima del puntero es de 750 ms y cuando el
puntero está por delante del audio de 500 ms. - La zona de sincronía está por encima de -1000
ms y 1250 ms.
40Modelo de referencia para la sincronización
multimedia
41Introducción
- Se necesita un modelo de referencia para
- Comprender los diferentes requerimientos para una
presentación multimedia. - Identificar y estructurar los mecanismos run-time
que apoyan la ejecución de la sincronización. - Identificar interfaces entre mecanismos run-time.
- Comparar soluciones para la sincronización
multimedia.
42Clasificaciones existentes
- Clasificación general de Little y Ghafoor (1990)
- Niveles físico, sistemas y humano.
- Sincronización intraflujo e interflujo
- Sincronización en directo o artificial
- Modelo de Gibbs, Breiteneder y Tsichichritzis
(1993) - Mapea un objeto multimedia sincronizado en un
flujo de bytes no interpretado. - Ehley, Furth y Ilyas (1994)
- Clasifican las técnicas intermedias de
clasificación que se utilizan para controlar los
saltos entre flujos de acuerdo con el tipo y
ubicación del control de sincronización. - Distinguen entre un control distribuido basado en
protocolos, distribución basada en servidores y
distribución sobre nodos sin estructura de
servidores. - Meyer, Effelsberg y Steinmetz (1993)
- Capa de medios para sincronización intraflujo de
medios dependientes del tiempo. - Capa de flujos para sincronización interflujo de
flujos de medios - Capa de objetos para la presentación, incluyendo
la presentación de objetos no dependientes del
tiempo.
43Modelo de referencia para la sincronización
Es un modelo de cuatro capas, cada una de las
cuales implementa Mecanismos de sincronización
proporcionados por un interfaz apropiado
44Capa de elemento multimedia I
- Una aplicación opera como un flujo continuo de un
elemento multimedia que es tratado como una
secuencia de ULD. - El proceso lee y escribe ULD en un loop durante
tanto tiempo como los datos están disponibles.
45Capa de elemento multimedia II
- Utilizando esta capa, la misma aplicación es
responsable de la sincronización, utilizando
mecanismos de control de flujo. - Si varios flujos se desarrollan en paralelo, la
necesidad de compartir recursos puede alterar los
requerimientos de tiempo real. - También hay que tener en cuenta si el sistema es
local o distribuido.
46Capa de flujo I
- Opera en flujos continuos de elemento multimedia.
- En un grupo, todos los flujos se presentan en
paralelo utilizando mecanismos para la
sincronización interflujo. - El elemento multimedia continuo, es visto como
flujo de datos con restricciones implícitas de
tiempo. Los ULD son son visibles.
47Capa de flujo II
- Esta capa deriva de la abstracción suministrada
por la integración de elementos multimedia
analógicos. - En el proyecto Athena del MIT, los elementos
continuos son introducidos por canales separados
en el ordenador. - En estos sistemas la sincronización en vivo entre
varios elementos multimedia continuos se lleva a
cabo por dispositivos específicos.
48Capa de objeto
- Trabaja con todos los tipos de elementos
multimedia sin diferenciar entre medios continuos
discretos. - Esta capa toma una especificación de
sincronización como entrada y es responsable de
la correcta temporalización de toda la
presentación.
49Capa de especificación I
- Es una capa abierta
- Contiene aplicaciones y las herramientas permiten
crear especificaciones de sincronización.
50Métodos de especificación
- Basadas en intervalos
- Permiten la especificación de relaciones
temporales entre los intervalos de tiempo de la
presentación de elementos multimedia. - Basadas en ejes
- Relaciona eventos de las presentaciones con los
ejes compartidos por los elementos de la
presentación. - Basadas en el flujo
- A determinados puntos de sincronización el flujo
de la presentación es sincronizado. - Basadas en eventos
- Los eventos disparan las acciones de la
presentación.
51Sincronización en Entornos distribuidos
- Es mas compleja que en entornos locales.
- Debido al almacenamiento distribuido de la
información y a las diferentes localizaciones de
los elementos multimedia implicados en la
presentación. - La comunicación entre el almacenamiento y el
sitio de la presentación introduce retrasos y
saltos adicionales.
52Transporte de la especificación de sincronización
I
- En el nodo destino de la presentación, los
componentes de la misma necesitan la
especificación de sincronización en el momento
que el elemento multimedia vaya a ser mostrado.
53Transporte de la especificación de sincronización
II
- Existen tres aproximaciones principales para la
llegada de la información de sincronización al
destino. - Llegada de toda la información de sincronización
antes del comienzo de la presentación. - Utilización de un canal de sincronización
adicional. - Flujos de datos multiplexados
54Combinación de elementos I
- En algunos casos es posible sincronizar elementos
multimedia, combinando los mismos en un nuevo
elemento. - Esta aproximación puede utilizarse para reducir
las demandas de recursos de comunicación. - P. E. Una animación y dos imágenes que deben
superponerse a un vídeo pueden mezclarse para
formar un nuevo vídeo.
55Combinación de elementos II
56Sincronización de reloj I
- En los sistemas distribuidos, debe considerarse
la exactitud de la sincronización entre los
relojes de la fuente y el destino.
57Sincronización de reloj II
- Muchos esquemas de sincronización necesitan
conocer las relaciones temporales. - Este conocimiento es la base para los esquemas de
sincronización globales basados en el tiempo. - También es la base para esquemas que necesitan
que las operaciones en nodos distribuidos estén
coordinadas para asegurar por una parte la
llegada a tiempo y por otra que no lleguen
demasiado pronto y evitar el overflow del buffer.
58Sincronización de reloj III
- El problema es especialmente importante para la
sincronización en el caso de múltiples fuentes.
Fuente A (audio) Ta, Oa
Na
Destino AV Tav
Fuente V (vídeo) Tv, Ov
Nv
59Sincronización de reloj IV
- Si una presentación sincronizada de audio y vídeo
debe comenzar al tiempo Tav en el nodo destino,
la transmisión de audio de la fuente A debe
comenzar a - Ta Tav Na Oa
- Siendo Na el retraso de la red
- Siendo Oa el offset del reloj del nodo A con
relación al reloj destino. - Para la fuente del nodo V, el tiempo de comienzo
de la transmisión de vídeo es - Tv Tav Nv - Ov
60Sincronización de reloj V
- Es posible reservar cierta capacidad del buffer
de destino y comenzar la transmisión del audio y
el vídeo con antelación, para garantizar que las
unidades multimedia requeridas están disponibles. - Debido a que la capacidad necesaria de buffer en
el nodo destino depende del posible offset y
debemos asumir una capacidad limitada del buffer,
es necesario limitar el offset máximo. - Este hecho puede ser alcanzado con protocolos de
sincronización del reloj que permiten una
sincronización con una exactitud en el rango de
10 ms.
61Relaciones múltiples de comunicación
62Sincronización en pasos múltiples
- Sincronización durante la adquisición de los
elementos multimedia (p. e. digitalización) - Sincronización durante la recuperación (p. e.
acceso a marcos de un vídeo almacenado) - Sincronización durante la libración de ULD a la
red - Sincronización durante el transporte
- Sincronización en el destino
- Sincronización en el dispositivo de salida
63Especificación de sincronización
64Introducción
- La especificación de sincronización de un
elemento multimedia describe todas las
dependencias temporales de los elementos
multimedia incluidos en el elemento multimedia. - Se produce utilizando herramientas en la capa de
especificaciones y es utilizada en la interfaz de
la capa de elementos.
65Aspectos que debe comprender
- Especificaciones de sincronización intra-elemento
para los elementos multimedia de la presentación. - Descripciones de Calidad de Servicio para la
sincronización intra-elemento. - Especificaciones de sincronización inter-elemento
para elementos multimedia de la presentación. - Descripciones de Calidad de servicio para
sincronización inter-elemento.
66Calidad de servicio para un elemento multimedia
- Incluye la calidad concerniente a ULDs simples de
un elemento multimedia y la exactitud con la que
las relaciones temporales entre ULDs de este
elemento multimedia deben completarse si el
elemento multimedia es un elemento dependiente
del tiempo.
67Parámetros de Calidad de Servicio para un
elemento multimedia
68Calidad de servicio para la sincronización
69Calidad de servicio para dos elementos multimedia
relacionados
- Nivel de producción
- Se refiere a la calidad de servicio a ser
garantizada antes de la presentación de los datos
en la interfaz de usuario. - Implica el registro de datos sincronizados para
ser visualizados posteriormente. - Nivel de presentación
- Define lo que es razonable a nivel de interfaz de
usuario. - Tiene que ver con la percepción.
70Especificaciones basadas en intervalo
- En este sistema, la duración de la presentación
de un elemento es contemplada como un intervalo. - Dos intervalos de tiempo pueden estar
sincronizados en 13 modos distintos - A antes de B, A superpuesto a B, A comienza con
B, A igual que B, A encuentra a B, A durante B, A
finaliza con B - Y los inversos de los anteriores excepto igual
71Especificaciones basadas en intervalos
72Mejora de la especificación basada en intervalos
73Sincronización basada en ejes
Ejemplo base
74Sincronización basada en un temporizador global
- Todos los elementos multimedia individuales son
añadidos a un eje de tiempo que representa una
abstracción en tiempo real. - Permite buenas abstracciones de la estructura
interna de un elemento multimedia individual. - Este tipo de sincronización puede no ser
suficiente para expresar las relaciones de
sincronización entre diferentes flujos de
presentación.
75Sincronización basada en Ejes virtuales
- En éste método es posible especificar sistemas de
coordenadas con unidades de medida definidas por
el usuario. - En el ejemplo el eje pitch (tono) es mapeado como
frecuencia y el eje beat (compás) como
temporizador.
76Ejes virtuales
Aplicado al caso ejemplo
77Especificaciones basadas en el control de flujo
- Especificaciones basadas en la jerarquía
- Están basadas en dos operaciones principales
- Sincronización en serie de acciones, p. e. Una
secuencia de diapositivas. - Sincronización en paralelo de acciones, p. e.
Movimiento de labios y locución.
78Especificaciones basadas en el control de flujo
79Especificaciones basadas en el control de flujo
- Puntos de referencia
- En este caso los elementos multimedia
individuales son contemplados como secuencias de
ULD cerradas. - Los tiempos de comienzo y parada de la
presentación de un elemento multimedia
conjuntamente con los tiempos de comienzo de las
sub-unidades de los elementos multimedia
dependientes del tiempo se llaman puntos de
referencia. - La sincronización entre elementos se define
mediante la conexión de los puntos de referencia
de los elementos multimedia. - Un conjunto de puntos de referencia conectados se
llama punto de sincronización.
80Sincronización de punto de referencia
81Redes de Petri temporalizadas
- Reglas de funcionamiento
- Una transición se desencadena si todos los
lugares de entrada contienen un token no
bloqueante. - Si se desencadena una transición, se elimina un
token por cada entrada y se añade un token por
cada salida. - Cuando se añade un token a un nuevo lugar aquel
se bloquea durante la duración asignada a dicho
lugar.
82Ejemplos de Redes de Petri
83Ejemplos de Redes de Petri
84Sincronización basada en eventos
- Las acciones de presentación son iniciadas por
eventos de sincronización - Comienzo
- Final
- Preparación
- Los eventos pueden ser externos (generadosr de
tiempos) o internos de la presentación (generado
al alcanzar una ULD especifica en un objeto
dependiente del tiempo.
85Scripts
- Es una descripción textual del escenario de
sincronización. - Frecuentemente los scripts acaban constituyendo
un lenguaje de programación. - Un ejemplo típico es un script basado en un
método jerárquico que soporta tres operaciones
principales - Presentación serie
- Presentación paralela
- Presentación repetida