Sincronización cs525/synmm/Bl akowski%20.pdf cs525/synmm/s ynmm.htm

Preview:

Citation preview

Índice

• Introducción

• Nociones de sincronización

• Requerimientos de presentación

• Modelos de referencia

• Especificación de la sincronización

INTRODUCCIÓN

Introducció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.

Introducció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.

Elementos 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.

Elementos multimediaindependientes del tiempo

• Cualquiera de los elementos multimedia tradicionales como el texto y las imágenes.

Nociones de sincronización

Caracterí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

Introducció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.

Definiciones 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.

Definició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.

Clasificación de los medios usados en sistemas multimedia

Mezclan medios analógicosDependientes del tiempoCon medios digitales Independientes del tiempo

Aspectos básicos de la sincronización

• Relaciones entre contenidos

• Relaciones espaciales

• Relaciones temporales

Relaciones 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.

Relaciones 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

Relaciones temporales

• Definen las dependencias temporales entre elementos multimedia.

• Ejemplo:– Las relaciones entre audio y vídeo en una

grabación de un concierto.

Sincronizació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.

Sincronización inter-elemento

• Se refiere a la sincronización entre diferentes elementos multimedia.

• Por ejemplo:

Unidades 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.

Unidades 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)

Unidades 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.

Clasificació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.

Clasificació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.

Clasificació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.

Clasificació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.

Clasificació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.

Clasificació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.

Tipos 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.

Sincronización en vivo

Sincronizació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.

Requerimientos de presentación

Introducció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.

¿Qué 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.

“The gap problem”

Problema ocasionado por el bloqueo de una de las dos fuentes dependientes del tiempo

Soluciones 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.

Sincronización de labios:Definiciones

• 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”.

Sincronización de labios:Medidas 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.

Sincronizació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.

Modelo de referencia para la sincronización multimedia

Introducció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.

Clasificaciones 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.

Modelo 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

Capa 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.

Capa 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.

Capa 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.

Capa 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.

Capa 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.

Capa de especificación I

• Es una capa abierta

• Contiene aplicaciones y las herramientas permiten crear especificaciones de sincronización.

Mé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.

Sincronizació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.

Transporte 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.

Transporte 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

Combinació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.

Combinación de elementos II

Sincronizació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.

Sincronizació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.

Sincronizació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

Fuente V (vídeo)

Tv, Ov

Destino AV

Tav

Na

Nv

Sincronizació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

Sincronizació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.

Relaciones múltiples de comunicación

Sincronizació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

Especificación de sincronización

Introducció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.

Aspectos 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.

Calidad 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.

Parámetros de Calidad de Servicio para un elemento multimedia

Imagen Vídeo Audio

Profundidad de color

Profundidad de color

Muestreo lineal o logarítmico

Resolución Resolución Tamaño de la muestra

Frecuencia de los frames

Frecuencia de muestreo

Temblor Temblor

Razón de error Razón de error

Calidad de servicio para la sincronización

MEDIO MODO CALIDAD DE SERVICIO

Vídeo Animacion Correlacionado +/- 120 ms

Audio Sincronización de labios +/- 80 ms

Imagen Superposición +/- 240 ms

No superposición +/- 500 ms

Texto Superposición +/- 240 ms

No superposición +/- 500 ms

Audio Animación Correlación de eventos +/- 80 ms

Audio Fuertemente acoplado (stereo) +/- 11 ms

Débilmente acoplado (diálogo) +/- 120 ms

Débilmente acoplado (fondo) +/- 500 ms

Imagen Fuertemente acoplado (música con notas +/- 5 ms

Débilmente acoplado (carrusel diapositivas) +/- 500 ms

Texto Anotación de texto +/- 240 ms

Puntero Audio relacionado con movimiento puntero - 500 ms / + 700 ms

Calidad 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.

Especificaciones 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

Especificaciones basadas en intervalos

Mejora de la especificación basada en intervalos

Sincronización basada en ejesEjemplo base

Sincronizació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.

Sincronizació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.

Ejes virtuales

Aplicado al caso ejemplo

Especificaciones 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.

Especificaciones basadas en el control de flujo

Especificaciones 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.

Sincronización de punto de referencia

Redes 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.

Ejemplos de Redes de Petri

Ejemplos de Redes de Petri

Sincronizació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.

Scripts

• 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

Recommended