La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Xlets Multimedia Home Protocol. 10/04/2005.2 E.T.S de Ingenieros de Telecomunicación Xlets Mapa de Índice.

Presentaciones similares


Presentación del tema: "Xlets Multimedia Home Protocol. 10/04/2005.2 E.T.S de Ingenieros de Telecomunicación Xlets Mapa de Índice."— Transcripción de la presentación:

1 Xlets Multimedia Home Protocol

2 10/04/ E.T.S de Ingenieros de Telecomunicación Xlets Mapa de Índice

3 INTRODUCCIÓN Introducción a las Xlets

4 10/04/ E.T.S de Ingenieros de Telecomunicación Introducción Diferencia entre Aplicación Xlet e Interface Xlet Las Xlets como aplicaciones, parecidas a los Applets o Midlets Una aplicación debe implementar el javax.tv.xlet.Xlet Interface Aplicaciones iniciadas automáticamente por el Broadcaster o manualmente por el Set-top Box (Mando a distancia Usuario)

5 10/04/ E.T.S de Ingenieros de Telecomunicación Cómo localizamos a la Xlet? Un registro en la AIT nos localiza la clase inicial de la Xlet (Initial_class_byte) Introducción

6 CICLO DE VIDA LifeCycle de una aplicación Xlet

7 10/04/ E.T.S de Ingenieros de Telecomunicación CICLO DE VIDA Una aplicación entra en el estado Loaded cuando es cargada bien sea desde Set-top Box o bien desde el Carrousel de datos. Después de esto, el Application manager señaliza a la aplicación para iniciarse a si misma, por lo que pasa al estado Paused. El estado Active (Running) significa que la aplicación está en ejecución y puede volver al estado Paused o bien terminar la aplicación pasando al estado Destroyed.

8 10/04/ E.T.S de Ingenieros de Telecomunicación Ciclo de Vida

9 APLICATION MANAGER ¿Qué Es? ¿Qué hace?

10 10/04/ E.T.S de Ingenieros de Telecomunicación Aplication Manager Reside en el Set-top Box y se inicia cuando se enciende el mismo, hasta que se apaga Se encarga de manejar los estados de cada Aplicación y hacer de puente a los recursos del Set-top Box Aministra la memoria, key events, errores de ejecución de las aplicaciones Define el modelo de ciclo de vida

11 10/04/ E.T.S de Ingenieros de Telecomunicación Aplication Manager (2) Establece el XletContext para cada Aplicación Mediante el XletContext Inteface, el Application Manager se comunica con las Xlets para ser notificado de sus cambios de estado.

12 10/04/ E.T.S de Ingenieros de Telecomunicación Identifica y Cachea la información de las aplicaciones procedentes de las Tablas Aplication Manager (2)

13 10/04/ E.T.S de Ingenieros de Telecomunicación Define el protocolo de comunicación entre la Aplicación y él mismo. Aplication Manager (3)

14 Interfaces: Xlet y XletContext Definen una serie de métodos abstractos pero no los implementan

15 10/04/ E.T.S de Ingenieros de Telecomunicación Xlet Interface initXlet() - startXlet() - pauseXlet() - destroyXlet() Una aplicación debe sobreescribir estos métodos para implementar la interface Xlet El aplication manager llamará a estos métodos para iniciar, comenzar, pausar o eliminar una aplicación de la memoria. Es una interface muy parecida al de las Applets o los Midlets (J2me)

16 10/04/ E.T.S de Ingenieros de Telecomunicación pauseXlet() A menudo ignorado por los desarrolladores También ignorado por algunas herramientas de desarrollo Los receptores y servicios confían en que esté bien implementado El navegador puede poner en modo pausado cuando se presenta la aplicación Ofrece grandes ventajas (explicadas más adelante) Xlet Interface

17 10/04/ E.T.S de Ingenieros de Telecomunicación destroyXlet() Una aplicación puede ser terminada en cualquier momento cuando se evoca el destroyXlet() Esta llamada la debe hacer el Application Manager o bien la propia aplicación. Xlet Interface

18 10/04/ E.T.S de Ingenieros de Telecomunicación XletContext Interface getXletProperties() notifyPaused() notifyDestroyed() resumeRequest() Actúa como puente entre el Xlet y el Application Manager Permite que el Application Manager sea correctamente notificado de cualquier cambio en los estados de las Xlets

19 Formas y maneras de implementar bien el Xlet Interface Como implementar Bien

20 10/04/ E.T.S de Ingenieros de Telecomunicación Optimización del tiempo de recarga de la Xlet. La Xlet puede ser precargada por un lanzador de aplicaciones Se ejecuta initXlet() Carga los recursos e inicializa la aplicación La carga puede ser ejecutada en menos de 1 seg cuando el espectador quiere comenzar la aplicación. –Siemplemente se hace visible la Hscene. Como implementar Bien

21 10/04/ E.T.S de Ingenieros de Telecomunicación Tiempo de Carga o Cambio de Aplicación en condiciones normales Como implementar Bien

22 10/04/ E.T.S de Ingenieros de Telecomunicación La carga de aplicaciones tiene mejor sincronización. La aplicación interactiva salta (se hace visible) en cuanto el anuncio empieza. Evita cargas y recargas sucesivas. Como implementar Bien

23 10/04/ E.T.S de Ingenieros de Telecomunicación Linea de tiempo con y sin precarga. Como implementar Bien

24 10/04/ E.T.S de Ingenieros de Telecomunicación Como implementar Bien initXlet() vs. startXlet() En InitXlet() ejecuta tareas de inicializacion de una vez. Construye el Hscene, registra los listeners y carga los recursos. StartXlet() y PauseXlet() son parejas. Imágenes cargadas en StartXlet() son limpiadas PauseXlet(). Hace la Hscene visible. También realiza la carga de recursos abundantes y escasos. También considera otras aplicaciones Si las imágenes son cargadas en InitXlet(), la Xlet comienza más rápido. Si muchas aplicaciones corren simultaneamente, se reserva mucha cantidad de memoria y el estado de PauseXlet() es inestable.

25 10/04/ E.T.S de Ingenieros de Telecomunicación Como implementar Bien Xlets corriendo simultaneamente. Facilmente pueden correr unas 10 pequeñas aplicaciones. Generalmente el ancho de banda es el mayor problema. El manejo de recursos necesita ser diseñado. No usar recursos escasos en modo Pausa. Los escenarios deben ser testeados. Todas las Xlets corriendo simultaneamente en un escenario de máxima demanda con el receptor más restrictivo.

26 10/04/ E.T.S de Ingenieros de Telecomunicación Recursos disponibles. 1.5MB de memoria para datos. 4MB de memoria para imágenes. 4MB de contenido de carrusel, dividido en varios carruseles Limitada cantidad de filtros. Usado para ficheros dinámicos, stream events, datos del SI… Un uso máximo de 10 ficheros dinámicos. Como implementar Bien

27 10/04/ E.T.S de Ingenieros de Telecomunicación Como implementar Bien Comunicación Recurso apoderado Permite correr aplicaciones simultaneamente para compartir recursos escasos. API de comunicación entre aplicaciones Permite una mejor comunicación. Aplicaciones individuales suministran múltiples servicios.

28 10/04/ E.T.S de Ingenieros de Telecomunicación Ejemplo de lanzador: Menú Como implementar Bien

29 10/04/ E.T.S de Ingenieros de Telecomunicación Ejemplo de lanzador: icono de testeo. Como implementar Bien

30 10/04/ E.T.S de Ingenieros de Telecomunicación Linea de tiempo del icono de testeo. Como implementar Bien

31 10/04/ E.T.S de Ingenieros de Telecomunicación Linea de tiempo de la carga del mensaje. Como implementar Bien

32 10/04/ E.T.S de Ingenieros de Telecomunicación Evitar implementaciones extra Cuando empieza la aplicación muestra un icono, es el comportamiento habitual de aplicaciones autoejecutables. Aplicaciones minimizadas muestran un icono No permite que otras aplicaciones sean usadas. Ambos casos serán mejor implementados con un lanzador. Evita confusiones. Las aplicaciones tienen un modelo más simple. Como implementar Bien

33 10/04/ E.T.S de Ingenieros de Telecomunicación Destroy o Pause para salir de la aplicación? Pause cuando: La aplicación es usada con frecuencia y necesita ser de acceso rápido (EPG). Cuando la aplicación contiene datos de actualización dinámica (teletexto digital). Cuando el tiempo de ejecución es largo y es como si continuara más tarde (banking, T-commerce). Destroy cuando: Aplicaciones que están disponibles a menudo pero que son usadas ocasionalmente (juegos). Como implementar Bien

34 10/04/ E.T.S de Ingenieros de Telecomunicación Destroying Xlet: Prepararse para un cambio rapido de servicio. Muchos receptores tienen preferencia por un zapping rápido entre servicios Los recursos pueden no estar disponibles. Suministra un mensaje de salida DestroyXlet(false). Señalizar DESTROY a la AIT 1 minuto antes También llamado si el receptor se queda sin recursos No necesita notificar al XletContext Como implementar Bien

35 10/04/ E.T.S de Ingenieros de Telecomunicación Conclusiones Implementar el estado Pausa en aplicaciones Para comportarse mejor. Para obtener mejor rendimiento en entornos agiles. Cuando corren múltiples aplicaciones simultaneamente Verificar los requisitos de memoria de las aplicaciones. Diseñar la comunicación y compartición de recursos. No implementar estados extras en Xlets. Permitir a un manejador de aplicaciones manejar esto. Considerar el comportamiento de la aplicación Antes de la extraccion de la señalización. Como implementar Bien

36 Ejemplo de Xlet Ejemplo sencillo de Xlet

37 10/04/ E.T.S de Ingenieros de Telecomunicación Ejemplo de Xlet public class MyFirstExampleXlet implements javax.tv.xlet.Xlet { public MyFirstExampleXlet() {…} public void initXlet(javax.tv.xlet.XletContext context) throws javax.tv.xlet.XletStateChangeException {…} public void startXlet() throws javax.tv.xlet.XletStateChangeException {…} public void pauseXlet() {…} public void destroyXlet(boolean unconditional) throws javax.tv.xlet.XletStateChangeException {…} }


Descargar ppt "Xlets Multimedia Home Protocol. 10/04/2005.2 E.T.S de Ingenieros de Telecomunicación Xlets Mapa de Índice."

Presentaciones similares


Anuncios Google