Introdução ao middleware de TV Digital
brasileiro
Bruno Ghisi
Alexandre Lemos
Objetivo
Introduzir o conceito do cenário brasileiro
de TV Digital, middleware Ginga,
aplicações interativas e ferramentas...
Agenda
Contextualização
Demo
Padrão Brasileiro TVD
Middleware Ginga
Subsistema Ginga-NCL
Subsistema Ginga-J
Ferramentas
Co...
Agenda
Contextualização
Demo
Padrão Brasileiro TVD
Middleware Ginga
Subsistema Ginga-NCL
Subsistema Ginga-J
Ferramentas
Co...
Histórico
Novembro 2003
Ato federal para criação de um sistema de TV Digital
SBTVD (Sistema Brasileiro de TV Digital Terre...
Cadeia de valor
Radiodifusor
Fabricante de produto (OEM)
Academia
Fornecedor de middleware
Fornecedor de JVM
Fabricante de...
Fórum SBTVD e ABNT
Fórum SBTVD
Define as especificações e propões soluções
de acordo com a realidade brasileira
Dissemina ...
Agenda
Contextualização
Demo
Padrão Brasileiro TVD
Middleware Ginga
Subsistema Ginga-NCL
Subsistema Ginga-J
Ferramentas
Co...
Agenda
Contextualização
Demo
Padrão Brasileiro TVD
Middleware Ginga
Subsistema Ginga-NCL
Subsistema Ginga-J
Ferramentas
Co...
Padrão Brasileiro TVD
ISDB-Tb - padrão japonês
Vídeo H.264
Áudio MPEG-4
Ginga
Mobilidade
One-seg (1Seg)
Padrão Brasileiro TVD
Países que escolheram:
Brasil
Peru
Argentina
Chile
Venezuela
Equador
Costa Rica
Paraguai
Bolívia
Nic...
Receptores full-seg e one-seg
Full-seg
1920x1080i, 1280x720p, 720x480p
ex: set top box e televisão
One-seg
320x240
ex: cel...
Agenda
Contextualização
Demo
Padrão Brasileiro TVD
Middleware Ginga
Subsistema Ginga-NCL
Subsistema Ginga-J
Ferramentas
Co...
Middleware de TVD
O que é um middleware?
Camada de software intermediário que oculta
dependências de plataforma e permite ...
Carrossel Objetos
O que é o Ginga?
Ginga é o nome do Middleware
Aberto do Sistema Brasileiro de TV
Digital (SBTVD)
Norma Middleware Ginga
ABNT NBR 15606 - Middleware Ginga
Middleware brasileiro de TV Digital
É uma especificação X impleme...
Arquitetura Middleware TVD
Arquitetura Middleware Ginga
Agenda
Contextualização
Demo
Padrão Brasileiro TVD
Middleware Ginga
Subsistema Ginga-NCL
Subsistema Ginga-J
Ferramentas
Co...
Middleware Ginga - Ginga-NCL
NCL
PUC-Rio
NCL (Nested Context Language) é a parte declarativa
do Ginga
Linguagem formato XML
Código NCL define os objeto...
NCL
Players
Players de mídia específicos apresentam o conteúdo
para o usuário
Vídeo, Imagens
Player Lua - interpretador para s...
Lua
PUC-Rio 1993
Linguagem de script poderosa, leve
e extensível
Implementado como uma biblioteca,
escrita em C
Linguagem ...
Lua
NCLua
Extensões ao Lua
módulo canvas
desenhar diretamente em uma área da TV
módulo event
comunicação com players no NCL
in...
Agenda
Contextualização
Demo
Padrão Brasileiro TVD
Middleware Ginga
Subsistema Ginga-NCL
Subsistema Ginga-J
Ferramentas
Co...
Middleware Ginga - Ginga-J
Histórico
Ginga-J foi proposto pela UFPB (Universidade da
Paraíba) em Dez/07 e ocorreram algumas
questões de propriedade i...
Stack Ginga-J
Ginga-J define o ambiente de execução para aplicação
procedurais: Java Xlets
CDC / FP / PBP
Connected Device Configuration (CDC)
A configuração mais abrangente do Java ME
CDC é compatível com sintaxe...
Java TV
Acesso aos dados do SI (Service Information)
Controle dos media players específicos da TV
via JMF
APIs definidas n...
Java DTV
Informações de serviço, tuner, transporte (MPEG streams)
Propriedades do usuário
Acesso aos arquivo da transmissã...
LWUIT
LWUIT - LightWeight User Interface Toolkit
Componentes gráficos de alto nível
Tratador de eventos hierárquico atravé...
Extensões brasileiras (SBTVD)
Complementam e extendem a Java DTV
API de informações de serviço dependente de
protocolo
Ace...
Middleware Ginga - Ponte
Agenda
Contextualização
Demo
Padrão Brasileiro TVD
Middleware Ginga
Subsistema Ginga-NCL
Subsistema Ginga-J
Ferramentas
Co...
Ferramentas
Eclipse
Eclipse Public License
www.eclipse.org
LuaEclipse
Licença MIT
http://luaeclipse.luaforge.net/
http://g...
Ferramentas
Emulador Ginga-J - Open Ginga - implementação
referência Ginga-J
GPLv2
http://ginga.lavid.ufpb.br/projects/gin...
Agenda
Contextualização
Demo
Padrão Brasileiro TVD
Middleware Ginga
Subsistema Ginga-NCL
Subsistema Ginga-J
Ferramentas
Co...
Comunidades e Listas
http://www.forumsbtvd.org.br
http://www.softwarepublico.gov.br
http://clube.ncl.org.br
https://javatv...
Agenda
Contextualização
Demo
Padrão Brasileiro TVD
Middleware Ginga
Subsistema Ginga-NCL
Subsistema Ginga-J
Ferramentas
Co...
Receptores
Copa - Band
Copa - Globo
Tititi - Globo
Passione - Globo
Caminho das Índias - Globo
A Fazenda - Record
Portal SBT
Obrigado
Bruno Ghisi
weblogs.java.net/blog/brunogh
bcg@certi.org.br
Alexandre Lemos
arl@certi.org.br
Estamos contratando: ...
Solisc 2010 ginga
Solisc 2010 ginga
Solisc 2010 ginga
Solisc 2010 ginga
Upcoming SlideShare
Loading in …5
×

Solisc 2010 ginga

1,409 views
1,261 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,409
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
17
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Solisc 2010 ginga

  1. 1. Introdução ao middleware de TV Digital brasileiro Bruno Ghisi Alexandre Lemos
  2. 2. Objetivo Introduzir o conceito do cenário brasileiro de TV Digital, middleware Ginga, aplicações interativas e ferramentas open source relacionadas.
  3. 3. Agenda Contextualização Demo Padrão Brasileiro TVD Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ferramentas Comunidades Status atual
  4. 4. Agenda Contextualização Demo Padrão Brasileiro TVD Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ferramentas Comunidades Status atual
  5. 5. Histórico Novembro 2003 Ato federal para criação de um sistema de TV Digital SBTVD (Sistema Brasileiro de TV Digital Terrestre) Junho 2006 Definição do padrão ISDB-Tb
  6. 6. Cadeia de valor Radiodifusor Fabricante de produto (OEM) Academia Fornecedor de middleware Fornecedor de JVM Fabricante de chipset Gerador de conteúdo Fornecedor de ferramentas ...
  7. 7. Fórum SBTVD e ABNT Fórum SBTVD Define as especificações e propões soluções de acordo com a realidade brasileira Dissemina o padrão ABNT Normatiza as especificações Gerencia as normas
  8. 8. Agenda Contextualização Demo Padrão Brasileiro TVD Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ferramentas Comunidades Status atual
  9. 9. Agenda Contextualização Demo Padrão Brasileiro TVD Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ferramentas Comunidades Status atual
  10. 10. Padrão Brasileiro TVD ISDB-Tb - padrão japonês Vídeo H.264 Áudio MPEG-4 Ginga Mobilidade One-seg (1Seg)
  11. 11. Padrão Brasileiro TVD Países que escolheram: Brasil Peru Argentina Chile Venezuela Equador Costa Rica Paraguai Bolívia Nicarágua
  12. 12. Receptores full-seg e one-seg Full-seg 1920x1080i, 1280x720p, 720x480p ex: set top box e televisão One-seg 320x240 ex: celular Ginga-NCL é mandatório para todos receptores Ginga-J é mandatório para receptores full-seg Canal de retorno: Full-seg, opcional; one-seg, obrigatório
  13. 13. Agenda Contextualização Demo Padrão Brasileiro TVD Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ferramentas Comunidades Status atual
  14. 14. Middleware de TVD O que é um middleware? Camada de software intermediário que oculta dependências de plataforma e permite que aplicações sejam desenvolvidas de maneira independente O que é um middleware de TV Digital? Middleware que irá rodar no conversor (set top box) ou embarcado na TV
  15. 15. Carrossel Objetos
  16. 16. O que é o Ginga? Ginga é o nome do Middleware Aberto do Sistema Brasileiro de TV Digital (SBTVD)
  17. 17. Norma Middleware Ginga ABNT NBR 15606 - Middleware Ginga Middleware brasileiro de TV Digital É uma especificação X implementação ABNT NBR 15606 é dividida em 6 partes NBR 15601 Transmissão NBR 15602 Codificação NBR 15603 Multiplexação NBR 15604 Receptores NBR 15605 Segurança NBR 15606 Middleware NBR 15607 Canal de Interatividade NBR 15608 Guia de operação
  18. 18. Arquitetura Middleware TVD
  19. 19. Arquitetura Middleware Ginga
  20. 20. Agenda Contextualização Demo Padrão Brasileiro TVD Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ferramentas Comunidades Status atual
  21. 21. Middleware Ginga - Ginga-NCL
  22. 22. NCL PUC-Rio NCL (Nested Context Language) é a parte declarativa do Ginga Linguagem formato XML Código NCL define os objetos de mídia e a estrutura da apresentação Formatador NCL controla fluxo da apresentação ciclo de vida dos players de mídia
  23. 23. NCL
  24. 24. Players Players de mídia específicos apresentam o conteúdo para o usuário Vídeo, Imagens Player Lua - interpretador para scripts Lua Player de Xlets Java Player XHTML - decodifica conteúdo XHTML, incluindo CSS (stylesheets) e ECMAScript
  25. 25. Lua PUC-Rio 1993 Linguagem de script poderosa, leve e extensível Implementado como uma biblioteca, escrita em C Linguagem procedural, com sintaxe semelhante ao C Dinamicamente tipado Sem ponteiros Coletor de lixo http://www.lua.org
  26. 26. Lua
  27. 27. NCLua Extensões ao Lua módulo canvas desenhar diretamente em uma área da TV módulo event comunicação com players no NCL input canal de retorno informações do programa de TV módulo settings configurações do NCL e receptor módulo persistent permite armazenar pequena quantidade de dados no receptor
  28. 28. Agenda Contextualização Demo Padrão Brasileiro TVD Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ferramentas Comunidades Status atual
  29. 29. Middleware Ginga - Ginga-J
  30. 30. Histórico Ginga-J foi proposto pela UFPB (Universidade da Paraíba) em Dez/07 e ocorreram algumas questões de propriedade intelectual em função do MHP (APIs HAVI & DAVIC) Forum SBTVD e a Sun Microsystems propuseram uma nova especificação Java DTV
  31. 31. Stack Ginga-J Ginga-J define o ambiente de execução para aplicação procedurais: Java Xlets
  32. 32. CDC / FP / PBP Connected Device Configuration (CDC) A configuração mais abrangente do Java ME CDC é compatível com sintaxe Java 1.4 Com a a adição dos profiles, pode se chegar na API Java SE Foundation Profile (FP) APIs io, security, network, utility Personal Basis Profile (PBP) AWT
  33. 33. Java TV Acesso aos dados do SI (Service Information) Controle dos media players específicos da TV via JMF APIs definidas no Java TV fornecem um framework Outros middlewares TVD utilizam como stack básica Java TV
  34. 34. Java DTV Informações de serviço, tuner, transporte (MPEG streams) Propriedades do usuário Acesso aos arquivo da transmissão (broadcast) Persistência (limitada) Canal de retorno Acesso aos dispositivos de rede Comunicação Inter-Xlet LWUIT Segurança
  35. 35. LWUIT LWUIT - LightWeight User Interface Toolkit Componentes gráficos de alto nível Tratador de eventos hierárquico através dos containers e componentes Abstração dos componentes nativos (Graphics, Font, etc) Suporte a style, theme e look and feel Resource bundles permitem o empacotamento dos recursos de maneira portável Temas, fontes, imagens, animações e mensagens
  36. 36. Extensões brasileiras (SBTVD) Complementam e extendem a Java DTV API de informações de serviço dependente de protocolo Acessa informações dos serviços específicas do padrão brasileiro (baixo nível) API da ponte NCL
  37. 37. Middleware Ginga - Ponte
  38. 38. Agenda Contextualização Demo Padrão Brasileiro TVD Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ferramentas Comunidades Status atual
  39. 39. Ferramentas Eclipse Eclipse Public License www.eclipse.org LuaEclipse Licença MIT http://luaeclipse.luaforge.net/ http://github.com/KINFOO/LuaEclipse NCL Eclipse Duplo Licenciamento (semelhante ao MySql) http://laws.deinf.ufma.br/~ncleclipse/faq.html http://laws.deinf.ufma.br/~ncleclipse/index.html STB Virtual - implementação referência Ginga-NCL Licença indeterminada http://www.gingancl.org.br/ferramentas.html Ref http://www.bravaitv.com.br/fisl
  40. 40. Ferramentas Emulador Ginga-J - Open Ginga - implementação referência Ginga-J GPLv2 http://ginga.lavid.ufpb.br/projects/gingaj-emulator/wiki Ant Apache Software License http://ant.apache.org Lunity Creative Commons http://phrogz.net/lua/lunity.lua LuaCov Licença MIT http://luacov.luaforge.net Ref http://www.bravaitv.com.br/fisl
  41. 41. Agenda Contextualização Demo Padrão Brasileiro TVD Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ferramentas Comunidades Status atual
  42. 42. Comunidades e Listas http://www.forumsbtvd.org.br http://www.softwarepublico.gov.br http://clube.ncl.org.br https://javatv-developers.dev.java.net Listas Lista TV Digital SouJava em tvdigital- subscribe@soujava.dev.java.net devdtv@googlegroups.com tvinterativa@googlegroups.com
  43. 43. Agenda Contextualização Demo Padrão Brasileiro TVD Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ferramentas Comunidades Status atual
  44. 44. Receptores
  45. 45. Copa - Band
  46. 46. Copa - Globo
  47. 47. Tititi - Globo
  48. 48. Passione - Globo
  49. 49. Caminho das Índias - Globo
  50. 50. A Fazenda - Record
  51. 51. Portal SBT
  52. 52. Obrigado Bruno Ghisi weblogs.java.net/blog/brunogh bcg@certi.org.br Alexandre Lemos arl@certi.org.br Estamos contratando: TVD, Web, Mobile, Java, C/C++, Unix, embedded, XP http://www.certi.org.br/ccd

×