Вы находитесь на странице: 1из 36

Java Media Framework.

Tpicos.

Introduccin a los datos en tiempo real. Presentacin de Java Media Framework (JMF). Captura, Procesamiento y Entrega de Medios con JMF. Ejemplo.

Datos en Tiempo Real.

Datos en Tiempo Real.

Son los datos que pueden cambiar considerablemente con respecto al tiempo. Estos medios pueden ser obtenidos de diversas fuentes, como archivos locales o remotos, cmaras, micrfonos y difusiones en vivo. Sistemas Multimedia. (Audio, Video) Animaciones. Video - Conferencia.

Ej:

Datos en Tiempo Real.

Streaming Media: La caracterstica principal de este medio es que requiere de un tiempo de entrega y de procesamiento, y por esto se debe controlar, ya que una vez iniciado el flujo de datos, se deben satisfacer ciertos limites de tiempo.

Etapas.

Captura : Estos pueden ser capturados desde una fuente en vivo para procesarla y reproducirla o puede ser adquirida de un archivo de forma remota.

Procesamiento : En muchas instancias, la informacin contenida en un medio es manipulada antes de ser presentado al usuario, ya sea multiplexndola, filtrndola, comprimindola, o convirtindola en otro tipo de medio.

Presentacin : La mayora de estos medios pueden ser presentados a travs de dispositivos de salida tales como parlantes y monitores, u otras destinaciones (Ej.: a la red).

Java Media Framework.

Java Media Framework.

Herramienta (API) que permite la adquisicin, procesamiento y entrega de informacin en tiempo real. Contiene interfaces basados en Java que permiten el manejo de streaming media.

Arquitectura JMF.

Dos niveles de desarrollo: Alto nivel y Bajo nivel.

Analoga.

Captura.

Un dispositivo de captura multimedia puede actuar como una fuente de entrega de medios basados en el tiempo. Algunos dispositivos entregan mltiples flujos de datos que pueden ser separados mediante el procesamiento.

Procesamiento.

Presentacin (Player).

Presentacin (Player).

Unrealized: instanciado. Realizing: determinando y obteniendo los recursos necesarios. Realized: ha determinado los recursos necesarios. Prefetching: preparndose para presentar, obteniendo los datos de la fuente. Prefetched: preparado para empezar. Started: reproduccin empezada.

Clases e Interfaces.

Interfaz Manager. Interfaz DataSource. Interfaz Controller. Interfaz Player. Interfaz Processor. Clase Time. (Interfaz Clock, TimeBase.)

...

Paquetes JMF.
javax.media javax.media.bean.playerbean javax.media.control javax.media.datasink javax.media.format javax.media.protocol javax.media.renderer javax.media.rtp javax.media.rtp.event javax.media.rtp.rtcp javax.media.util

Ejemplo: Video-Conferencia con JMF.

Video-Conferencia usando JMF


Se mostrar un programa en java de video conferencia usando las libreras de JMF. Se explicarn los aspectos ms importantes del programa. La idea es conocer de mejor manera algunas de las funciones mas importantes de JMF mediante un ejemplo prctico.

Clases

El programa se divide en diez clases. Cada clase tiene una funcin especifica dentro del programa. Se mostrarn con detalle slo las clases que implementan las libreras de JMF.

Clase Config

Esta clase se utiliza para cargar y guardar la configuracin del programa principal y no tener que estar introducindola de nuevo cada vez que se inicie.

Clase Target

Esta clase se utiliza para guardar la configuracin de puertos y direcciones IP del programa principal y utilizarlos en el resto de clases.

Clase Misc

Esta clase se utiliza para albergar los mtodos que dan formato al log de la consola del programa.

Clase Comunicador

Esta clase principal del programa, es la que contiene el mtodo main(). Se encarga de construir el entorno grfico, detectar los dispositivos de captura, y lanzar los transmisores y los receptores cuando el usuario lo indique.

Clase Transmisor

Esta clase se utiliza para ser heredada por otra clase que implemente una transmisin RTP ya que implementa los mtodos necesarios y que son independientes de las particularidades de cada transmisor (origen, destino, tipo de datos).

Clase TransmisorAudio

Esta clase se utiliza para transmitir el audio proveniente de un dispositivo de captura y enviarlo a travs de una comunicacin RTP. Esta clase hereda de la clase Transmisor, en la cual se encuentran todas las variables miembro que utiliza.

Clase TransmisorVideo

Esta clase se utiliza para transmitir el video proveniente de un dispositivo de captura y enviarlo a travs de una comunicacin RTP. Esta clase hereda de la clase Transmisor, en la cual se encuentran todas las variables miembro que utiliza.

Subclase StateListener

Esta subclase de la clase Transmisor se utiliza para mantener un escucha del estado del procesador.

Clase Receptor

Esta clase se utiliza para ser heredada por otra clase que implemente una recepcin RTP ya que implementa los mtodos necesarios y que son independientes de las particularidades de cada receptor (origen, destino, tipo de datos).

Clase ReceptorAudio

Esta clase se utiliza para recibir y reproducir el audio proveniente de la comunicacin RTP. Esta clase hereda de la clase Receptor, en la cual se encuentran todas las variables miembro que utiliza.

Clase ReceptorVideo

Esta clase se utiliza para recibir y reproducir el video proveniente de la comunicacin RTP. Esta clase hereda de la clase Receptor, en la cual se encuentran todas las variables miembro que utiliza.

Subclase PlayerWindow

Esta subclase de la clase Receptor se utiliza para mostrar una ventana de reproduccin.

Subclase PlayerPanel

Esta subclase de la clase Receptor se utiliza para mantener un panel de reproduccin.

FIN

Вам также может понравиться