1 / 36

O que é?

StreamViewer Um analizador gráfico de transport stream code.google.com/p/streamviewer Paulo Flabiano Smorigo. O que é?. Um analisador visual de streams; Inicialmente compativel com streams no formato de dados da TV digital brasileira: Transport Stream (TS);

Download Presentation

O que é?

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. StreamViewerUm analizador gráfico de transport streamcode.google.com/p/streamviewerPaulo Flabiano Smorigo

  2. O que é? • Um analisador visual de streams; • Inicialmente compativel com streams no formato de dados da TV digital brasileira: Transport Stream (TS); • Inteiramente feito por software livre;

  3. TV Digital • Mudança do sinal analógico para o sinal digital; • Mais qualidade, mais canais, mais informações e interatividade; • Na mesma faixa de frequência do analógico, no digital suporta: • Um canal HD, um standard e um móvel (1Seg) ou; • Quatro canais standard e um móvel; • Mais informações: EPG, Interatividade...

  4. TV Digital • 6Mhz = 19 Mbps; • Multiprogramação; • Mobilidade (Assistir TV no celular); • Televisão em 3D; • Resoluções: • HD: 1920x1080; • SD: 720×576; • LD: 320x240;

  5. TV Digital • Inicio da transmissão digital: • Dezembro de 2007 • Fim da transmissão analógica: • Dezembro de 2016

  6. TV Digital

  7. TV Digital no Mundo

  8. Transport Stream (TS) • Formato de stream usado na televisão digital; • Video: H.264, Áudio: AAC; • Formado por pacotes de 188 bytes que podem conter diversos formatos de dados: • Informações do canal como descrição, faixa etária, inicio e fim, grade de programação etc; • Vídeos e áudios (não há limite); • Interatividade.

  9. Transport Stream (TS)

  10. Transport Stream (TS)

  11. Transport Stream (TS)

  12. Transport Stream (TS)

  13. Transport Stream (TS)

  14. Captura do TS • Foi capturado com o uso de software usando um dongle USB; • Atualmente é comum achar arquivos TS na internet contento filmes, jogos de futebol etc;

  15. StreamViewer • Extrair as informações do arquivo de transport stream (via DVBSnoop); • Analisa (Parser) dos dados; • Mostra gráficamente os resultados;

  16. DVBSnoop

  17. DVBSnoop

  18. DVBSnoop

  19. DVBSnoop

  20. Estrutura do Projeto • Programado de C++; • Cross-compilação via MingW; • Interface gráfica em GTKmm e Glade 3; • Documentação do código via Doxygen; • Build seguindo padrão da maioria dos softwares livres (./configure; make etc); • Multiplataforma;

  21. Modelo de desenvolvimento Producing Open Source Software, Karl Fogel

  22. Por que C++? • Toda vantagem do C com orientação a objetos; • Uma das linguagens mais usadas no mundo; • Compilador GCC (G++); • Segundo o site SourceForge.net: • Java(43,101) • C++(34,240) • PHP(28,272) • C(26,666)

  23. GTKmm • Wrapper para C++ do GTK+; • GTK é uma das bibliotecas gráficas mais usadas no mundo; • GTK+ vs Qt (Gnome vs KDE); • Pode ser usado juntamente com o Glade; • Suporte a temas (milhares disponíveis);

  24. GTKmm • Multiplataforma (Linux, Windows, Mac); • Praticamente independente do sistema operacional; • Linux: vem instalado, por padrão nas distribuições testadas: Debian, Ubuntu, Fedora etc; • Windows: mesma aplicação funciona, sem modificações, no 95, XP, Vista, 7;

  25. Glade • Glade é um construtor de interfaces gráficas; • Permite a criação a criação de interfaces gráficas seguindo o conceito WYSIWYG; • Facilita a construção do software no modelo MVC; • Separação quase que total da UI com a lógica de programação;

  26. Glade • Gera a interface no Glade e gera um XML como saída; • No código é associado o nome do elemento com o nome criado pelo Glade; • Separação quase que total do código e interface; • Permite alteração da interface sem a necessidade de compilar novamente;

  27. Doxygen • Documentação do código (geração da API); • Compativel com Javadoc;

  28. Build • Necessita dos pacotes de desenvolvimento: buildutils, gtkmm-dev e glade; • Ir no diretório do projeto e digitar make;

  29. Build

  30. Build

  31. Glade

  32. Tela inicial

  33. Abrindo arquivo

  34. Resultado

  35. Futuro • Procurar por desenvolvedores; • E-mail em fóruns como mplayer, vlc; • Divulgação na internet; • Não usar o DVBSnoop (criar o próprio parser); • Visualizar outros stream;

More Related