Java Media Framework Fabio de Lima Hedayioglu Felipe Levi Barros de Azevedo Wanderley de Oliveira Cansanção
Roteiro <ul><li>Modelos da JMF </li></ul><ul><ul><li>Arquitetura </li></ul></ul><ul><ul><li>Modelos: Tempo, Eventos, Dados...
O que é? <ul><li>API com uma implementação de referência desenvolvida em conjunto pela Sun e IBM; </li></ul><ul><li>Permit...
Arquitetura Aplicações JMF, Applets, Beans API JMF de Apresentação e Processamento API JMF de Plug-Ins Muxes & Demuxes Cod...
Modelo Básico de Funcionamento
Framework
Java Media Framework <ul><li>Streams de Mídia </li></ul><ul><li>Um stream de mídia é um stream de dados obtidos de um arqu...
Java Media Framework <ul><ul><li>Streams de mídia podem ser categorizados de acordo com o modo que os dados são entregues:...
Modelo de Tempo syncStart Clock stop getMediaTime setMediaTime getRate setRate getStopTime setStopTime getTimeBase setTime...
Gerenciadores <ul><li>JMF usa 4 gerenciadores:  </li></ul><ul><ul><li>Manager </li></ul></ul><ul><ul><li>PackageManager </...
Modelo de Eventos <ul><li>Quando um objeto JMF precisa fazer alguma notificação, ele registra um  MediaEvent . </li></ul><...
Modelo de dados <ul><li>Players baseados em JMF normalmente usam  DataSources  para gerenciar o conteúdo de mídia. </li></...
JMF: Principais Funcionalidades <ul><li>Apresentação </li></ul><ul><li>Processamento </li></ul><ul><li>Captura de dados </...
Player DataSource Player
Processor DataSource Processor DataSource Pre A->B Post Pre A->B Post Codec  Plugin Post-Proc.  Plugin Pre-Proc.  Plugin T...
JMF: Extensibilidade <ul><li>A JMF pode ser estendida através da implementação de plug-ins, media handlers e data sources ...
Protocolo RTP <ul><li>Usado pela JVM para transmissão de Streaming. </li></ul><ul><li>Independente de protocolos, mas norm...
Protocolo RTP <ul><li>RTCP: Informações sobre qualidade de Serviço, fonte da mídia transmitida e estatísticas sobre a tran...
Próximos SlideShares
Carregando em…5
×

Sintese Java Media Framework(JMF)

3.208 visualizações

Publicada em

Publicada em: Tecnologia, Educação
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
3.208
No SlideShare
0
A partir de incorporações
0
Número de incorporações
26
Ações
Compartilhamentos
0
Downloads
97
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Sintese Java Media Framework(JMF)

  1. 1. Java Media Framework Fabio de Lima Hedayioglu Felipe Levi Barros de Azevedo Wanderley de Oliveira Cansanção
  2. 2. Roteiro <ul><li>Modelos da JMF </li></ul><ul><ul><li>Arquitetura </li></ul></ul><ul><ul><li>Modelos: Tempo, Eventos, Dados </li></ul></ul><ul><li>Funcionalidades Básicas </li></ul><ul><ul><li>Apresentação </li></ul></ul><ul><ul><li>Processamento </li></ul></ul><ul><ul><li>Captura </li></ul></ul><ul><ul><li>Armazenamento e Transmissão </li></ul></ul><ul><li>Extensibilidade </li></ul><ul><li>O Protocolo RTP </li></ul>
  3. 3. O que é? <ul><li>API com uma implementação de referência desenvolvida em conjunto pela Sun e IBM; </li></ul><ul><li>Permite que aplicações e applets Java tratem dados multimídia com fins de transmissão e captura de streams de áudio e/ou vídeo; </li></ul><ul><li>Permite adicionar novas funcionalidades com a adição de plug-ins. </li></ul>
  4. 4. Arquitetura Aplicações JMF, Applets, Beans API JMF de Apresentação e Processamento API JMF de Plug-Ins Muxes & Demuxes Codecs Efeitos Renderizadores <ul><li>Um renderizador é uma abstração de um dispositivo de apresentação. </li></ul><ul><li>Um demultiplexador extrai faixas individuais de dados a partir de um stream de mídia multiplexado. </li></ul><ul><li>Um multiplexador realiza o oposto, ele toma faixas de mídia separadas e as mistura em um único stream de mídia. </li></ul><ul><li>Um codec realiza compressão e descompressão de dados de mídia. </li></ul><ul><li>Um filtro de efeitos pode aplicar efeitos especiais como eco ou fundo azul ou blur(“borramento”) </li></ul>
  5. 5. Modelo Básico de Funcionamento
  6. 6. Framework
  7. 7. Java Media Framework <ul><li>Streams de Mídia </li></ul><ul><li>Um stream de mídia é um stream de dados obtidos de um arquivo local, de uma rede local, através da Internet ou capturado de uma câmera ou microfone. Streams de mídia poem conter vários canais de dados chamados faixas. </li></ul><ul><ul><li>O tipo de uma faixa identifica o tipo de dados que ela contém, podendo ser áudio ou vídeo. O formato de uma faia define como estes dados são estruturados. </li></ul></ul>
  8. 8. Java Media Framework <ul><ul><li>Streams de mídia podem ser categorizados de acordo com o modo que os dados são entregues: </li></ul></ul><ul><ul><ul><li>Pull — transferência de dados é iniciada pelo cliente. </li></ul></ul></ul><ul><ul><ul><li>Push — o servidor inicia a transferência de dados e controla o fluxo. </li></ul></ul></ul>
  9. 9. Modelo de Tempo syncStart Clock stop getMediaTime setMediaTime getRate setRate getStopTime setStopTime getTimeBase setTimeBase TimeBase getTime getNanoseconds Time Time(long nanosecs) Time(double secs) getNanoseconds getSeconds SecondsToNanoseconds Duration getDuration has a . . .
  10. 10. Gerenciadores <ul><li>JMF usa 4 gerenciadores: </li></ul><ul><ul><li>Manager </li></ul></ul><ul><ul><li>PackageManager </li></ul></ul><ul><ul><li>CaptureDeviceManager </li></ul></ul><ul><ul><li>PlugInManager . </li></ul></ul>
  11. 11. Modelo de Eventos <ul><li>Quando um objeto JMF precisa fazer alguma notificação, ele registra um MediaEvent . </li></ul><ul><li>Para cada evento, a JMF define uma interface ouvidora apropriada, de acordo com o modelo de eventos padrão definido em Java. </li></ul><ul><li>Objetos controladores (tais como Players e Processors ) notificam eventos. </li></ul>
  12. 12. Modelo de dados <ul><li>Players baseados em JMF normalmente usam DataSources para gerenciar o conteúdo de mídia. </li></ul><ul><li>Um DataSource é identificado por um JMF MediaLocator ou por uma URL. </li></ul><ul><ul><li>Um data source padrão usa um array de bytes como unidade de transferência. Um buffer data source usa um objeto Buffer como unidade de transferência. </li></ul></ul><ul><li>JMF data sources podem ser classificados de acordo com o modo de transferência de dados: </li></ul><ul><ul><li>Pull Data-Source </li></ul></ul><ul><ul><li>Push Data-Source </li></ul></ul>
  13. 13. JMF: Principais Funcionalidades <ul><li>Apresentação </li></ul><ul><li>Processamento </li></ul><ul><li>Captura de dados </li></ul><ul><li>Armazenamento e Transmissão </li></ul>
  14. 14. Player DataSource Player
  15. 15. Processor DataSource Processor DataSource Pre A->B Post Pre A->B Post Codec Plugin Post-Proc. Plugin Pre-Proc. Plugin Track1 Track2 Demux Plugin Mux Plugin Renderer Plugin Renderer Plugin
  16. 16. JMF: Extensibilidade <ul><li>A JMF pode ser estendida através da implementação de plug-ins, media handlers e data sources customizados </li></ul>
  17. 17. Protocolo RTP <ul><li>Usado pela JVM para transmissão de Streaming. </li></ul><ul><li>Independente de protocolos, mas normalmente usa-se UDP. </li></ul>
  18. 18. Protocolo RTP <ul><li>RTCP: Informações sobre qualidade de Serviço, fonte da mídia transmitida e estatísticas sobre a transmissão. </li></ul><ul><li>RTP: Indicadores sobre a posição da mídia e a mídia propriamente dita. </li></ul>

×