Ginga - Solisc 2010

Download Ginga - Solisc 2010

Post on 06-Sep-2014

583 views

Category:

Technology

1 download

Embed Size (px)

DESCRIPTION

 

TRANSCRIPT

<ul><li> Introduo ao middleware de TV Digital brasileiro Bruno Ghisi Alexandre Lemos </li> <li> Objetivo Introduzir o conceito do cenrio brasileiro de TV Digital, middleware Ginga, aplicaes interativas e ferramentas open source relacionadas. </li> <li> Agenda <ul><li><ul><li>Contextualizao </li></ul></li></ul><ul><li><ul><li>Demo </li></ul></li></ul><ul><li><ul><li>Padro Brasileiro TVD </li></ul></li></ul><ul><li><ul><li>Middleware Ginga </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-NCL </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-J </li></ul></li></ul><ul><li><ul><li>Ferramentas </li></ul></li></ul><ul><li><ul><li>Comunidades </li></ul></li></ul><ul><li><ul><li>Status atual </li></ul></li></ul></li> <li> Agenda <ul><li><ul><li>Contextualizao </li></ul></li></ul><ul><li><ul><li>Demo </li></ul></li></ul><ul><li><ul><li>Padro Brasileiro TVD </li></ul></li></ul><ul><li><ul><li>Middleware Ginga </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-NCL </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-J </li></ul></li></ul><ul><li><ul><li>Ferramentas </li></ul></li></ul><ul><li><ul><li>Comunidades </li></ul></li></ul><ul><li><ul><li>Status atual </li></ul></li></ul></li> <li> Histrico <ul><li><ul><li>Novembro 2003 </li></ul></li></ul><ul><li><ul><li><ul><li>Ato federal para criao de um sistema de TV Digital </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>SBTVD (Sistema Brasileiro de TV Digital Terrestre) </li></ul></li></ul></li></ul><ul><li><ul><li>Junho 2006 </li></ul></li></ul><ul><li><ul><li><ul><li>Definio do padro ISDB-Tb </li></ul></li></ul></li></ul></li> <li> Cadeia de valor <ul><li><ul><li>Radiodifusor </li></ul></li></ul><ul><li><ul><li>Fabricante de produto (OEM) </li></ul></li></ul><ul><li><ul><li>Academia </li></ul></li></ul><ul><li><ul><li>Fornecedor de middleware </li></ul></li></ul><ul><li><ul><li>Fornecedor de JVM </li></ul></li></ul><ul><li><ul><li>Fabricante de chipset </li></ul></li></ul><ul><li><ul><li>Gerador de contedo </li></ul></li></ul><ul><li><ul><li>Fornecedor de ferramentas </li></ul></li></ul><ul><li><ul><li>... </li></ul></li></ul></li> <li> Frum SBTVD e ABNT <ul><li><ul><li>Frum SBTVD </li></ul></li></ul><ul><li><ul><li><ul><li>Define as especificaes e propes solues de acordo com a realidade brasileira </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Dissemina o padro </li></ul></li></ul></li></ul><ul><li><ul><li>ABNT </li></ul></li></ul><ul><li><ul><li><ul><li>Normatiza as especificaes </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Gerencia as normas </li></ul></li></ul></li></ul></li> <li> Agenda <ul><li><ul><li>Contextualizao </li></ul></li></ul><ul><li><ul><li>Demo </li></ul></li></ul><ul><li><ul><li>Padro Brasileiro TVD </li></ul></li></ul><ul><li><ul><li>Middleware Ginga </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-NCL </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-J </li></ul></li></ul><ul><li><ul><li>Ferramentas </li></ul></li></ul><ul><li><ul><li>Comunidades </li></ul></li></ul><ul><li><ul><li>Status atual </li></ul></li></ul></li> <li> T-Commerce </li> <li> Agenda <ul><li><ul><li>Contextualizao </li></ul></li></ul><ul><li><ul><li>Demo </li></ul></li></ul><ul><li><ul><li>Padro Brasileiro TVD </li></ul></li></ul><ul><li><ul><li>Middleware Ginga </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-NCL </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-J </li></ul></li></ul><ul><li><ul><li>Ferramentas </li></ul></li></ul><ul><li><ul><li>Comunidades </li></ul></li></ul><ul><li><ul><li>Status atual </li></ul></li></ul></li> <li> Padro Brasileiro TVD <ul><li><ul><li>ISDB-Tb - padro japons </li></ul></li></ul><ul><li><ul><li><ul><li>Vdeo H.264 </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>udio MPEG-4 </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Ginga </li></ul></li></ul></li></ul><ul><li><ul><li>Mobilidade </li></ul></li></ul><ul><li><ul><li><ul><li>One-seg (1Seg) </li></ul></li></ul></li></ul></li> <li> Padro Brasileiro TVD <ul><li><ul><li>Pases que escolheram: </li></ul></li></ul><ul><li><ul><li><ul><li>Brasil </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Peru </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Argentina </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Chile </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Venezuela </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Equador </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Costa Rica </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Paraguai </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Bolvia </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Nicargua </li></ul></li></ul></li></ul></li> <li> Receptores full-seg e one-seg <ul><li><ul><li>Full-seg </li></ul></li></ul><ul><li><ul><li><ul><li>1920x1080i, 1280x720p, 720x480p </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>ex: set top box e televiso </li></ul></li></ul></li></ul><ul><li><ul><li>One-seg </li></ul></li></ul><ul><li><ul><li><ul><li>320x240 </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>ex: celular </li></ul></li></ul></li></ul><ul><li><ul><li>Ginga-NCL mandatrio para todos receptores </li></ul></li></ul><ul><li><ul><li>Ginga-J mandatrio para receptores full-seg </li></ul></li></ul><ul><li><ul><li>Canal de retorno: Full-seg, opcional; one-seg, obrigatrio </li></ul></li></ul></li> <li> Agenda <ul><li><ul><li>Contextualizao </li></ul></li></ul><ul><li><ul><li>Demo </li></ul></li></ul><ul><li><ul><li>Padro Brasileiro TVD </li></ul></li></ul><ul><li><ul><li>Middleware Ginga </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-NCL </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-J </li></ul></li></ul><ul><li><ul><li>Ferramentas </li></ul></li></ul><ul><li><ul><li>Comunidades </li></ul></li></ul><ul><li><ul><li>Status atual </li></ul></li></ul></li> <li> Middleware de TVD <ul><li><ul><li>O que um middleware? </li></ul></li></ul><ul><li><ul><li><ul><li>Camada de software intermedirio que oculta dependncias de plataforma e permite que aplicaes sejam desenvolvidas de maneira independente </li></ul></li></ul></li></ul><ul><li><ul><li>O que um middleware de TV Digital? </li></ul></li></ul><ul><li><ul><li><ul><li>Middleware que ir rodar no conversor (set top box) ou embarcado na TV </li></ul></li></ul></li></ul></li> <li> Carrossel Objetos </li> <li> O que o Ginga? <ul><li><ul><li>Ginga o nome do Middleware Aberto do Sistema Brasileiro de TV Digital (SBTVD) </li></ul></li></ul></li> <li> Norma Middleware Ginga <ul><li><ul><li>ABNT NBR 15606 - Middleware Ginga </li></ul></li></ul><ul><li><ul><li><ul><li>Middleware brasileiro de TV Digital </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li> uma especificao X implementao </li></ul></li></ul></li></ul><ul><li><ul><li>ABNT NBR 15606 divididaem 6 partes </li></ul></li></ul>NBR 15601 Transmisso NBR 15602 Codificao NBR 15603 Multiplexao NBR 15604 Receptores NBR 15605 Segurana NBR 15606 Middleware NBR 15607 Canal de Interatividade NBR 15608 Guia de operao </li> <li> Arquitetura Middleware TVD </li> <li> Arquitetura Middleware Ginga </li> <li> Agenda <ul><li><ul><li>Contextualizao </li></ul></li></ul><ul><li><ul><li>Demo </li></ul></li></ul><ul><li><ul><li>Padro Brasileiro TVD </li></ul></li></ul><ul><li><ul><li>Middleware Ginga </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-NCL </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-J </li></ul></li></ul><ul><li><ul><li>Ferramentas </li></ul></li></ul><ul><li><ul><li>Comunidades </li></ul></li></ul><ul><li><ul><li>Status atual </li></ul></li></ul></li> <li> Middleware Ginga - Ginga-NCL </li> <li> NCL <ul><li><ul><li>PUC-Rio </li></ul></li></ul><ul><li><ul><li>NCL (Nested Context Language) a parte declarativa do Ginga </li></ul></li></ul><ul><li><ul><li>Linguagem formato XML </li></ul></li></ul><ul><li><ul><li>Cdigo NCL define os objetos de mdia e a estrutura da apresentao </li></ul></li></ul><ul><li><ul><li>Formatador NCL controla </li></ul></li></ul><ul><li><ul><li><ul><li>fluxo da apresentao </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>ciclo de vida dos players de mdia </li></ul></li></ul></li></ul></li> <li> NCL </li> <li> Players <ul><li><ul><li>Players de mdia especficos apresentam o contedo para o usurio </li></ul></li></ul><ul><li><ul><li><ul><li>Vdeo, Imagens </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Player Lua - interpretador para scripts Lua </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Player de Xlets Java </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Player XHTML - decodifica contedo XHTML, incluindo CSS (stylesheets) e ECMAScript </li></ul></li></ul></li></ul></li> <li> Lua <ul><li><ul><li>PUC-Rio 1993 </li></ul></li></ul><ul><li><ul><li>Linguagem de script poderosa, leve e extensvel </li></ul></li></ul><ul><li><ul><li>Implementado como uma biblioteca, escrita em C </li></ul></li></ul><ul><li><ul><li>Linguagem procedural, com sintaxe semelhante ao C </li></ul></li></ul><ul><li><ul><li><ul><li>Dinamicamente tipado </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Sem ponteiros </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Coletor de lixo </li></ul></li></ul></li></ul><ul><li><ul><li>http://www.lua.org </li></ul></li></ul></li> <li> Lua </li> <li> NCLua <ul><li><ul><li>Extenses ao Lua </li></ul></li></ul><ul><li><ul><li><ul><li>mdulo canvas </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li><ul><li>desenhar diretamente em uma rea da TV </li></ul></li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>mdulo event </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li><ul><li>comunicao com players no NCL </li></ul></li></ul></li></ul></li></ul><ul><li><ul><li><ul><li><ul><li>input </li></ul></li></ul></li></ul></li></ul><ul><li><ul><li><ul><li><ul><li>canal de retorno </li></ul></li></ul></li></ul></li></ul><ul><li><ul><li><ul><li><ul><li>informaes do programa de TV </li></ul></li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>mdulo settings </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li><ul><li>configuraes do NCL e receptor </li></ul></li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>mdulo persistent </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li><ul><li>permite armazenar pequena quantidade de dados no receptor </li></ul></li></ul></li></ul></li></ul></li> <li> Agenda <ul><li><ul><li>Contextualizao </li></ul></li></ul><ul><li><ul><li>Demo </li></ul></li></ul><ul><li><ul><li>Padro Brasileiro TVD </li></ul></li></ul><ul><li><ul><li>Middleware Ginga </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-NCL </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-J </li></ul></li></ul><ul><li><ul><li>Ferramentas </li></ul></li></ul><ul><li><ul><li>Comunidades </li></ul></li></ul><ul><li><ul><li>Status atual </li></ul></li></ul></li> <li> Middleware Ginga - Ginga-J </li> <li> Histrico <ul><li><ul><li>Ginga-J foi proposto pela UFPB (Universidade da Paraba) em Dez/07 e ocorreram algumas questes de propriedade intelectual em funo do MHP (APIs HAVI &amp; DAVIC) </li></ul></li></ul><ul><li><ul><li><ul><li>Forum SBTVD e a Sun Microsystems propuseram uma nova especificao </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li><ul><li>Java DTV </li></ul></li></ul></li></ul></li></ul></li> <li> Stack Ginga-J <ul><li><ul><li>Ginga-J define o ambiente de execuo para aplicao procedurais: Java Xlets </li></ul></li></ul></li> <li> CDC / FP / PBP <ul><li><ul><li>Connected Device Configuration (CDC) </li></ul></li></ul><ul><li><ul><li><ul><li>A configurao mais abrangente do Java ME </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>CDC compatvel com sintaxe Java 1.4 </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Com a a adio dos profiles, pode se chegar na API Java SE </li></ul></li></ul></li></ul><ul><li><ul><li>Foundation Profile (FP) </li></ul></li></ul><ul><li><ul><li><ul><li><ul><li>APIs io, security, network, utility </li></ul></li></ul></li></ul></li></ul><ul><li><ul><li>Personal Basis Profile (PBP) </li></ul></li></ul><ul><li><ul><li><ul><li>AWT </li></ul></li></ul></li></ul></li> <li> Java TV <ul><li><ul><li>Acesso aos dados do SI (Service Information) </li></ul></li></ul><ul><li><ul><li>Controle dos media players especficos da TV via JMF </li></ul></li></ul><ul><li><ul><li>APIs definidas no Java TV fornecem um framework </li></ul></li></ul><ul><li><ul><li>Outros middlewares TVD utilizam como stack bsica Java TV </li></ul></li></ul></li> <li> Java DTV <ul><li><ul><li>Informaes de servio, tuner, transporte (MPEG streams) </li></ul></li></ul><ul><li><ul><li>Propriedades do usurio </li></ul></li></ul><ul><li><ul><li>Acesso aos arquivo da transmisso (broadcast) </li></ul></li></ul><ul><li><ul><li>Persistncia (limitada) </li></ul></li></ul><ul><li><ul><li>Canal de retorno </li></ul></li></ul><ul><li><ul><li><ul><li>Acesso aos dispositivos de rede </li></ul></li></ul></li></ul><ul><li><ul><li>Comunicao Inter-Xlet </li></ul></li></ul><ul><li><ul><li>LWUIT </li></ul></li></ul><ul><li><ul><li>Segurana </li></ul></li></ul></li> <li> LWUIT <ul><li><ul><li>LWUIT - LightWeight User Interface Toolkit </li></ul></li></ul><ul><li><ul><li><ul><li>Componentes grficos de alto nvel </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Tratador de eventos hierrquico atravs dos containers e componentes </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>Abstrao dos componentes nativos (Graphics, Font, etc) </li></ul></li></ul></li></ul><ul><li><ul><li>Suporte a style, theme e look and feel </li></ul></li></ul><ul><li><ul><li>Resource bundles permitem o empacotamento dos recursos de maneira portvel </li></ul></li></ul><ul><li><ul><li><ul><li>Temas, fontes, imagens, animaes e mensagens </li></ul></li></ul></li></ul></li> <li> Extenses brasileiras (SBTVD) <ul><li><ul><li>Complementam e extendem a Java DTV </li></ul></li></ul><ul><li><ul><li> API de informaes de servio dependente de protocolo </li></ul></li></ul><ul><li><ul><li><ul><li>Acessa informaes dos servios especficas do padro brasileiro (baixo nvel) </li></ul></li></ul></li></ul><ul><li><ul><li>API da ponte NCL </li></ul></li></ul></li> <li> Middleware Ginga - Ponte </li> <li> Agenda <ul><li><ul><li>Contextualizao </li></ul></li></ul><ul><li><ul><li>Demo </li></ul></li></ul><ul><li><ul><li>Padro Brasileiro TVD </li></ul></li></ul><ul><li><ul><li>Middleware Ginga </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-NCL </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-J </li></ul></li></ul><ul><li><ul><li>Ferramentas </li></ul></li></ul><ul><li><ul><li>Comunidades </li></ul></li></ul><ul><li><ul><li>Status atual </li></ul></li></ul></li> <li> Ferramentas Eclipse Eclipse Public License www.eclipse.org LuaEclipse Licena 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 - implementao referncia Ginga-NCL Licena indeterminada http://www.gingancl.org.br/ferramentas.html Ref http://www.bravaitv.com.br/fisl </li> <li> Ferramentas Emulador Ginga-J - Open Ginga - implementao referncia 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 Licena MIT http://luacov.luaforge.net Ref http://www.bravaitv.com.br/fisl </li> <li> Agenda <ul><li><ul><li>Contextualizao </li></ul></li></ul><ul><li><ul><li>Demo </li></ul></li></ul><ul><li><ul><li>Padro Brasileiro TVD </li></ul></li></ul><ul><li><ul><li>Middleware Ginga </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-NCL </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-J </li></ul></li></ul><ul><li><ul><li>Ferramentas </li></ul></li></ul><ul><li><ul><li>Comunidades </li></ul></li></ul><ul><li><ul><li>Status atual </li></ul></li></ul></li> <li> Comunidades e Listas <ul><li><ul><li>http://www.forumsbtvd.org.br </li></ul></li></ul><ul><li><ul><li>http://www.softwarepublico.gov.br </li></ul></li></ul><ul><li><ul><li>http://clube.ncl.org.br </li></ul></li></ul><ul><li><ul><li>https://javatv-developers.dev.java.net </li></ul></li></ul><ul><li><ul><li>Listas </li></ul></li></ul><ul><li><ul><li><ul><li>Lista TV Digital SouJava em tvdigital-subscribe@soujava.dev.java.net </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>[email_address] </li></ul></li></ul></li></ul><ul><li><ul><li><ul><li>tvinterativa@googlegroups.com </li></ul></li></ul></li></ul></li> <li> Agenda <ul><li><ul><li>Contextualizao </li></ul></li></ul><ul><li><ul><li>Demo </li></ul></li></ul><ul><li><ul><li>Padro Brasileiro TVD </li></ul></li></ul><ul><li><ul><li>Middleware Ginga </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-NCL </li></ul></li></ul><ul><li><ul><li>Subsistema Ginga-J </li></ul></li></ul><ul><li><ul><li>Ferramentas </li></ul></li></ul><ul><li><ul><li>Comunidades </li></ul></li></ul><ul><li><ul><li>Status atual </li></ul></li></ul></li> <li> Receptores </li> <li> Copa - Band </li> <li> Copa - Globo </li> <li> Tititi - Globo </li> <li> Passione - Globo </li> <li> Caminho das ndias - Globo </li> <li> A Fazenda - Record </li> <li> Portal SBT </li> <li> Obrigado Bruno Ghisi weblogs.java.net/blog/brunogh [email_address] Alexandre Lemos [email_address] Estamos contratando: TVD, Web, Mobile, Java, C/C++, Unix, embedded, XP http://www.certi.org.br/ccd </li> </ul>