Este documento introduz o conceito do cenário brasileiro de TV Digital, middleware Ginga, aplicações interativas e ferramentas open source relacionadas. Ele discute a história e padrões da TV Digital brasileira, o middleware Ginga e seus subsistemas Ginga-NCL e Ginga-J, ferramentas disponíveis e status atual da TV Digital no Brasil.
2. Objetivo
Introduzir o conceito do cenário brasileiro
de TV Digital, middleware Ginga,
aplicações interativas e ferramentas open
source relacionadas.
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. 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. 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
11. Padrão Brasileiro TVD
Países que escolheram:
Brasil
Peru
Argentina
Chile
Venezuela
Equador
Costa Rica
Paraguai
Bolívia
Nicarágua
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
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
16. O que é o Ginga?
Ginga é o nome do Middleware
Aberto do Sistema Brasileiro de TV
Digital (SBTVD)
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
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
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. 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
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
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
33. 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
34.
35. 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
36.
37. 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
38. 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
39.
40. 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