java na tv digital - programando interatividade com javadtv

89
Minicurso Java na TV Digital - Programando interatividade com JavaDTV

Upload: mercuriocfg

Post on 22-Apr-2015

1.495 views

Category:

Technology


3 download

DESCRIPTION

Java na TV Digital - Programando interatividade com JavaDTV. Mini curso realizado em 10 de outubro de 2013 no SEMCOMP16 no Campus 2 da USP de São Carlos-SP. O mini-curso vai abordar o padrão brasileiro do Sistema Brasileiro de TV Digital. O que é a interatividade na TV Digital? Mostraremos o middleware Ginga e sua arquitetura. Será apresentada a especificação JavaDTV , ambiente de desenvolvimento, ferramentas e demonstração de aplicativos. Cada participante vai programar e testar aplicações interativas.

TRANSCRIPT

Page 1: Java na TV Digital - Programando interatividade com JavaDTV

Minicurso Java na TV Digital - Programando

interatividade com JavaDTV

Page 2: Java na TV Digital - Programando interatividade com JavaDTV

Carlos Fernando Gonçalves

Mestre em Engenharia de Computação pelo Instituto de Pesquisas Tecnológicas (2004) e graduação em Bacharel em Física pelo Instituto de Física de São Carlos (1994). Quinze anos de experiência profissional. Consultor no projeto CEPID do Centro de Estudos da Metrópole. Consultor e desenvolvedor, utiliza software livre e Java nos seguintes temas: TV Digital Ginga-J, Web e Mobile. Consultor Técnico da Organização Internacional UNESCO para o projeto WEBGIS - Mapas Interativos - da Secretaria de Vigilância Sanitária - Ministério da Saúde (2007) DF- Brasília. Trabalhou nas empresas: EverSystems Informática, Touch Tecnologia e PROCOMP Indústria Eletônica LTDA. Tradutor e Revisor do IDE NetBeans. Fundador do Java Noroeste - Grupo de Usuários Java do Noroeste Paulista.

Page 3: Java na TV Digital - Programando interatividade com JavaDTV

Padrões de TV Digital

Middleware Ginga

Ecosistema da TV Digital

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Desenvolvendo interatividade com JavaDTV /Ginga-J

Referências

Agenda

Page 4: Java na TV Digital - Programando interatividade com JavaDTV

Padrões de TV DigitalSistema Brasileiro de Televisão Digital

Decreto Nº 4.901, de 26 de novembro de 2003

Institui o Sistema Brasileiro de Televisão Digital

http://www.forumsbtvd.org.br/anexos/decreto-tv-digital.pdf

DECRETO Nº 5.820, DE 29 DE JUNHO DE 2006.

Implantação do SBTVD-T

http://www.planalto.gov.br/ccivil_03/_Ato2004-2006/2006/Decreto/D5820.htm

Novembro de 2006

Fórum SBTVD

http://www.forumsbtvd.org.br/materias.asp?id=39

Início das transmissões em 2 de dezembro de 2007

http://www.dtv.org.br/informacoes-tecnicas/historia-da-tv-digital-no-brasil/

Decreto n.º 8.061/2013,2015 até 2018

Page 5: Java na TV Digital - Programando interatividade com JavaDTV

Padrões de TV Digital

Fonte: http://forumsbtvd.org.br/acervo-online/normas-brasileiras-de-tv-digital/

Page 6: Java na TV Digital - Programando interatividade com JavaDTV

ISDB-TB (Integrated Services Digital Broadcasting – Terrestrial Brazil)

Outros padrões

ATSC (Advanced Television System Committee)

DVB (Digital Video Broadcasting)

ISDB (Integrated Services Digital Broadcasting)

Padrões de TV Digital

Page 7: Java na TV Digital - Programando interatividade com JavaDTV

Padrões de TV DigitalISDB-TB

Fonte: http://pt.wikipedia.org/wiki/Ficheiro:Digital_broadcast_standards.svg

Assim, Honduras(trocou ATCS) é o terceiro país na América Central a escolher o

padrão nipo-brasileiro, e o 15º no mundo. Uruguai, Argentina, Paraguai, Chile,

Bolívia, Peru, Equador, Venezuela, Costa Rica, Filipinas, Botswana e Guatemala

já optaram pelo ISDB-T, além de Brasil e Japão.

Page 8: Java na TV Digital - Programando interatividade com JavaDTV

Padrões de TV DigitalResolução de TV

Page 9: Java na TV Digital - Programando interatividade com JavaDTV

Padrões de TV DigitalISDB-TB

TV Analógica e TV Digital

Page 10: Java na TV Digital - Programando interatividade com JavaDTV

Padrões de TV DigitalCanal na TV Digital

A banda do canal legal no DTV é de 6MHz (igual ao do analógico PAL-M), como por exemplo, o canal 14 começa na frequência de 470MHz e vai até 476MHz. O canal é dividido em 14 segmentos de 428,57KHz, mas um segmento é descartado para a transmissão, ficando somente 13, que são numerados de 0 a 12. Portanto a banda de transmissão de um canal DTV é de 13x428,57=5,57MHz, mas para uma maior segurança é expandida para 5,7MHz.

Segmento 0 que fica bem no centro, por ser de mais fácil recepção, é destinado para

receptores portáteis como celular. Por ser transmissão de 1 só segmento, é

conhecido como One Seg ou 1 Seg.

Fonte:http://imagemesomhd.blogspot.com/2010/01/tv-digital-sbtvdisdb-tb.html

Page 11: Java na TV Digital - Programando interatividade com JavaDTV

Padrões de TV DigitalMultiprogramação

vantagem do sistema, é de poder aproveitar as camadas hierárquicas, por exemplo, se uma camada estiver transmitindo um programa em SD e a segunda camada, o mesmo programa em HD, a segunda aproveita também a primeira camada que tem informações de SD para formar o HD. Um receptor móvel que só consegue receber o SD, aproveita a primeira camada e descarta a segunda. Cada camada pode transmitir um programa diferente, e acaba se tornando um canal lógico. Além da transmissão One Seg, no Full Seg é possível ter até mais 3 programas em definição padrão (SD), mas em Full HD (1920x1080) que utiliza todos os 12 segmentos, só é possível transmitir 1 programa.

Fonte:http://imagemesomhd.blogspot.com/2010/01/tv-digital-sbtvdisdb-tb.html

Page 12: Java na TV Digital - Programando interatividade com JavaDTV

Padrões de TV DigitalTV Analógica e TV Digital

Esse número é a relação entre Largura e Altura da tela. Às vezes é chamada de “tela de

cinema” ou “tela larga”.

Para ver um imagem de alta definição verdadeira (1920 pixels na horizontal e 1080

pixels/linhas na vertical) o televisor precisa ter, no mínimo, 42 polegadas (da ordem de

1.07m) de diagonal. Isso equivale a uma largura de 93cm e altura de 52cm, porque a

largura/altura é 16/9.

Page 13: Java na TV Digital - Programando interatividade com JavaDTV

Padrões de TV DigitalCodificação e Compressão – Carrossel● DSM-CC (Digital Storage Media Command and Control)

– No ambiente de TV digital, é utilizado para broadcast de dados e

sistemas de arquivos.

• Transmissão unidirecional – o receptor não tem como requisitar os dados

• Os dados são transmitidos de maneira cíclica

• O receptor é capaz de “remontar” os dados conforme são recebidos

• DSM-CC suporta dois tipos de carrossel

● Carrossel de dados

● Carrossel de objetos

Page 14: Java na TV Digital - Programando interatividade com JavaDTV

Padrões de TV Digital

Page 15: Java na TV Digital - Programando interatividade com JavaDTV

Padrões de TV Digital

Middleware Ginga

Ecosistema da TV Digital

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Desenvolvendo interatividade com JavaDTV /Ginga-J

Referências

Agenda

Page 16: Java na TV Digital - Programando interatividade com JavaDTV

“O valor do televisor é percebido pelo número de conteúdos que ele tem. Hoje, o desafio está no software e não no hardware.”

Sony, Carlos Goya - 2011

"Brasil é o melhor país do mundo para investir", diz presidente JW Kim da Samsung - 2011

Middleware Ginga

Page 17: Java na TV Digital - Programando interatividade com JavaDTV

Middleware GingaO Ginga é a especificação de middleware do SBTVD, resultado da integração das propostas FlexTV [Leite 2005] e MAESTRO [Soares 2006], desenvolvidas por consórcios liderados pela UFPB e PUC-Rio no projeto SBTVD , respectivamente

O Ginga integrou estas duas soluções, chamadas de Ginga-J e Ginga-NCL , tomando por base as recomendações internacionais da ITU. Desta forma, o Ginga é subdividido em dois subsistemas interligados, também chamados de Máquina de Execução (Ginga-J) e Máquina de Apresentação (Ginga-NCL)

Page 18: Java na TV Digital - Programando interatividade com JavaDTV

MW Ginga

Ginga-J Ginga-NCL

BR

IDG

E

Ginga COMMON COREJVM

CDC 1.1 / FP 1.1 / PBP 1.1

AP

Is b

r.o

rg.s

btv

d

NC

L F

orm

atte

r

LU

A S

crip

t

XH

TM

L +

CS

S +

EC

MA

Scr

ipt

SM

IL T

ran

siti

on

s

Mo

no

-med

ia P

laye

rs

JavaTV 1.1

JMF

JavaDTVLWUIT

Middleware Ginga

Page 19: Java na TV Digital - Programando interatividade com JavaDTV

Middleware Ginga

JavaDTVEm 2008 foram verificados problemas com questões de propriedade intelectual na parte MHP (APIs HAVI e DAVIC)Fórum do SBTVD e a SUN Microsystems propuseram JavaDTV nova especificação em DEZ/2008Pacotes da especificação JavaDTV 1.3 – extende os pacotes do JavaTV 1.1 para implementar funcionalidades específicas de TV Digital adicionais ou de menor grau de abstração.

Acesse:

http://forumsbtvd.org.br/acervo-online/javadtv-download/

Page 20: Java na TV Digital - Programando interatividade com JavaDTV

Middleware Ginga

Ginga-J

Page 21: Java na TV Digital - Programando interatividade com JavaDTV

Middleware Ginga

CDC 1.1 / FP 1.1 / PBP 1.1

JavaTV 1.1

Med

ia A

PIs

Ap

plic

atio

n M

ana

gem

ent

MP

EG

Con

cep

ts

Bro

adca

st F

ilesy

ste

m

MP

EG

Sec

tion

Filt

erin

g

Tu

ning

Net

wor

k D

evic

e

Use

r S

ettin

gs &

Pre

fs

Eve

nts

ARIB extensions

Con

tent

Se

curit

y

Re

sour

ce M

ana

gem

ent

Per

sist

ent

Sto

rage

TV

Gra

phic

s

SBTVD Extensions

Applications

UI

Wid

get

Set

Page 22: Java na TV Digital - Programando interatividade com JavaDTV

Agenda

Padrões de TV Digital

Middleware Ginga

Ecosistema da TV Digital

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Desenvolvendo interatividade com JavaDTV /Ginga-J

Referências

Page 23: Java na TV Digital - Programando interatividade com JavaDTV

Ecosistema da TV Digital

Page 24: Java na TV Digital - Programando interatividade com JavaDTV

Ecosistema da TV Digital

Page 25: Java na TV Digital - Programando interatividade com JavaDTV

Ecosistema da TV Digital

Page 26: Java na TV Digital - Programando interatividade com JavaDTV

Ecosistema da TV Digital

Toshiba - TV 65WL800i3D - TV 55WL800i3D - TV 46WL800i3D

Sharp TV LED AQUOS LC-60LE640B TV LED AQUOS LC-70LE640B

D-Link Visiontec

Page 27: Java na TV Digital - Programando interatividade com JavaDTV

Multi-ScreenInteratividade na 2ª. Tela

Sincronização com o conteúdo

Ecosistema da TV Digital

Page 28: Java na TV Digital - Programando interatividade com JavaDTV

Híbrido Broadband & Broadcast

Ecosistema da TV Digital

Page 29: Java na TV Digital - Programando interatividade com JavaDTV

Push VoD

sem necessidade de conexão à Internet

Ecosistema da TV Digital

Page 30: Java na TV Digital - Programando interatividade com JavaDTV

Hotel

Ecosistema da TV Digital

Page 31: Java na TV Digital - Programando interatividade com JavaDTV

Cemig

Ecosistema da TV Digital

Page 32: Java na TV Digital - Programando interatividade com JavaDTV

TV analógica aberta

Ecosistema da TV Digital

Page 33: Java na TV Digital - Programando interatividade com JavaDTV

Ecosistema da TV DigitalTV Digital aberta

Page 34: Java na TV Digital - Programando interatividade com JavaDTV

TV Digital aberta

Ecosistema da TV Digital

Page 35: Java na TV Digital - Programando interatividade com JavaDTV

Brasil 4D - EBC (Empresa Brasil de Comunicação - TV Brasil)

Projeto Brasil 4D recebe prêmios nacionais e internacionais

http://www.ebc.com.br/sobre-a-ebc/sala-de-imprensa/2013/08/brasil-4d-recebe-premios-nacionais-e-internacionais

Ecosistema da TV Digital

Page 36: Java na TV Digital - Programando interatividade com JavaDTV

Ginga.BR.Labs 1) Instituto de Radiodifusão Educativa da Bahia – IRDEB (BA)

2) Fundação Televisão Rádio e Cultura do Amazonas – Funtec (AM)

3) Fundação Universidade do Tocantins – Unitins (TO)

4) Fundação Cultural Piratini - Rádio e Televisão (RS)

5) Fundação Rádio e Televisão Educativa de Uberlândia – RTU (MG)

6) Fundação Rádio e Televisão Educativa e Cultural - Fundação RTVE (GO)

7) TV Assembleia (MG)

8) Fundação Padre Anchieta (SP)

9) Televisão Universitária Unesp (SP)

10) Fundação Educativa de Rádio e Televisão Ouro Preto (MG)

http://convergenciadigital.uol.com.br/cgi/cgilua.exe/sys/start.htm?infoid=34339&sid=11#.UlZhoRBaUhI

Ecosistema da TV Digital

Page 37: Java na TV Digital - Programando interatividade com JavaDTV

Ecosistema da TV Digital

Page 38: Java na TV Digital - Programando interatividade com JavaDTV

http://www.noticiasdatv.com.br/noticia/tecnologia/cinco-anos-apos-tv-digital-80-das-casas-ainda-tem-televisor-de-tubo-557

Ecosistema da TV Digital

Page 39: Java na TV Digital - Programando interatividade com JavaDTV

Agenda

Padrões de TV Digital

Middleware Ginga

Ecosistema da TV Digital

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Desenvolvendo interatividade com JavaDTV /Ginga-J

Referências

Page 40: Java na TV Digital - Programando interatividade com JavaDTV

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Acesse:https://www.astrodevnet.com/AstroDevNet/home.html

Page 41: Java na TV Digital - Programando interatividade com JavaDTV

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Acesse:https://www.astrodevnet.com/AstroDevNet/home.html

Page 42: Java na TV Digital - Programando interatividade com JavaDTV

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Acesse:https://www.astrodevnet.com/AstroDevNet/home.html

Page 43: Java na TV Digital - Programando interatividade com JavaDTV

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Acesse:https://www.astrodevnet.com/AstroDevNet/home.html

Page 44: Java na TV Digital - Programando interatividade com JavaDTV

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Acesse:https://www.astrodevnet.com/AstroDevNet/home.html

Na caixa de email...

Page 45: Java na TV Digital - Programando interatividade com JavaDTV

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Acesse:https://www.astrodevnet.com/AstroDevNet/home.html

Acionar

Page 46: Java na TV Digital - Programando interatividade com JavaDTV

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Acesse:https://www.astrodevnet.com/AstroDevNet/home.html

Page 47: Java na TV Digital - Programando interatividade com JavaDTV

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Acesse:https://www.astrodevnet.com/AstroDevNet/home.html

astrobox

Page 48: Java na TV Digital - Programando interatividade com JavaDTV

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Acesse:https://www.astrodevnet.com/AstroDevNet/home.html

Page 49: Java na TV Digital - Programando interatividade com JavaDTV

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Acesse:https://www.astrodevnet.com/AstroDevNet/home.html

Digitar email cadastrado:

Page 50: Java na TV Digital - Programando interatividade com JavaDTV

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Acesse:https://www.astrodevnet.com/AstroDevNet/home.html

Digitar senha cadastrada:

Page 51: Java na TV Digital - Programando interatividade com JavaDTV

Agenda

Padrões de TV Digital

Middleware Ginga

Ecosistema da TV Digital

Montando ambiente de desenvolvendo JavaDTV /Ginga-J

Desenvolvendo interatividade com JavaDTV /Ginga-J

Referências

Page 52: Java na TV Digital - Programando interatividade com JavaDTV

Aplicações Ginga-J podem obter acesso de forma genérica aos planos gráficos oferecidos pelo terminal de acesso, para configuração e exibição de conteúdo de acordo com um modelo de camadas na tela do dispositivo.

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 53: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Planos gráficos

1. Plano[0]: Plano de texto e gráficos;

2. Plano[1]: Plano de seleção vídeo/imagem;

3. Plano[2]: Plano de imagens estáticas;

4. Plano[3]: Plano de vídeo.

Plano de legenda não é acessível

Page 54: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Dica

Desenvolver para TV Digital é ter em mente que:

● As aplicações tem uma área de trabalho de 1280X720● TVs e set-top-box tem por norma devem oferecer 6 MB

de memória● Em torno de 80% do tamanho das aplicações, são

constituídas de imagens● Existe um número pequeno de TVs com acesso a internet

Page 55: Java na TV Digital - Programando interatividade com JavaDTV

XletAs aplicações para TV interativa desenvolvidas em JavaDTV são chamadas de Xlets.

O ciclo de vida dos Xlets é regido por quatro métodos:

- initXlet():responsável por inicializar os componentes da aplicação e manipula o XletContext;

- startXlet(): que é o metodo chamado para iniciar a aplicação;

- pauseXlet(): chamando quando há um evento que causa uma pausa na aplicação

- destroyXlet(): chamado quando a aplicação é destruída.

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 56: Java na TV Digital - Programando interatividade com JavaDTV

Xlet

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 57: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Primeiro exemploAlô Mundo

Page 58: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

public class Exemplo_01_Xlet implements Xlet {

protected XletContext xletcontext;

public void initXlet(XletContext xc) throws XletStateChangeException {

this.xletcontext = xc;

}

public void startXlet() throws XletStateChangeException {

Form mainForm = new Form("Alô mundo!");

Label label = new Label(" Alô mundo!");

MainForm.addComponent(label);

mainForm.show();

}

public void pauseXlet() {

}

public void destroyXlet(boolean bln) throws XletStateChangeException {

}

}

Page 59: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Problema na acentuação?

Page 60: Java na TV Digital - Programando interatividade com JavaDTV

DicasSempre deixar Source Level=JDK 1.3 e Enconding=UTF-8

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 61: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 62: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 63: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 64: Java na TV Digital - Programando interatividade com JavaDTV

DicasAdicionar as bibliotecas ao projeto

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 65: Java na TV Digital - Programando interatividade com JavaDTV

LWUIT

Light Weight User Interface Toolkit

Inspirado no LWUIT dos dispositivos móveis (JavaME/MIDP)

Foi baseado no Swing

Estilo Swing MVC

Melhorou componentes existentes

Não é compatível com o que se tem em JavaME

Pacotes, classes, métodos foram adaptados a realidade da TV Digital

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 66: Java na TV Digital - Programando interatividade com JavaDTV

LWUIT

Light Weight User Interface Toolkit

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 67: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

O componente Form possui uma Barra de Título na parte superior em que o título do

formulário pode ser escrito e uma Barra de Menu na parte inferior, para os comandos

e menu. O espaço entre as duas barras é para o painel conteúdo, que carrega os

componentes a serem colocados no formulário.

**************************

* Title *

**************************

* *

* *

* ContentPane *

* *

* *

**************************

Form form = new Form(); Form form = new Form (“Formulário”);

Page 68: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

O componente Label pode exibir de imagens e textos que não podem ser

selecionados e sem interação com o usuário. Possui um grande número de

possibilidades alinhamento que são suportados para o posicionamento do texto e à

imagem.

Label lb = new Label();

Label lb = new Label ( “SEMCOMP16”);

Label lb = new Label(imagem);

Page 69: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Gerenciadores de Layout (Layout Managers) no LWUIT tem um gerenciador de

layout sofisticado para UIs. Os gerenciadores suportados são:

com.sun.dtv.lwuit.layouts

● BorderLayout

● BoxLayout

● CoordinateLayout

● FlowLayout

● GridLayout

● GroupLayout

● Layout

● LayoutStyle

Page 70: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

O visual de todos os componentes LWUIT pode ser variado através de um objeto de

estilo associado. Alterar a aparência de um componente individual, você pode

recuperar o objeto de estilo e métodos de chamada para fazer alterações.

com.sun.dtv.lwuit.plaf

Border

DefaultLookAndFeel

LookAndFeel

Style

UIManager

Page 71: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

LWUIT inclui o conceito de um Command. Um Command é algo que o usuário pode

fazer em sua aplicação. LWUIT decide como mostrar o comando na tela e como o

usuário faz acontecer. Normalmente, os comandos são atribuídos aos botões virtuais

de seu telefone móvel. LWUIT normalmente irá mostrar os comandos como etiquetas

nos cantos inferiores da tela, o usuário pode invocar pressionando o botão

correspondente. com.sun.dtv.lwuit.Command

com.sun.dtv.ui.event

interfaces KeyListener, UserInputEvent, UserInputEventListener

classes KeyEvent, UserInputEventManager, RemoteControlEvent

Page 72: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Uma transição fornece uma pista útil visual para o usuário sobre a relação entre

diferentes formas.

LWUIT pode deslizar formas horizontalmente ou verticalmente. LWUIT inclui também

uma transição gradual de uma forma para outra.

Page 73: Java na TV Digital - Programando interatividade com JavaDTV

Dicas

● Retirar cores amarelas de textos e substituir por negrito pois o usuário confunde com hiperlink

● Não utilizar o ícone de navegação de páginas para direita e esquerda porque os usuários confundem com a tecla ‘play’

● Manter as cores dos botões da aplicação na mesma ordem das cores dos botões do controle remoto

● Quando houver um texto que deve ser lido na sequência, não utilizar diferentes telas, e sim o scroll vertical

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 74: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Segundo exemploÍcone animado

Page 75: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 76: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Terceiro exemploTeclas

Page 77: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 78: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Acesse:https://www.astrodevnet.com/AstroDevNet/home.html

Mapa de teclas

Page 79: Java na TV Digital - Programando interatividade com JavaDTV

Desenvolvendo interatividade com JavaDTV /Ginga-J

Acesse:https://www.astrodevnet.com/AstroDevNet/home.html

Mapa de teclas

Page 80: Java na TV Digital - Programando interatividade com JavaDTV

Ginga Hackathon

https://www.facebook.com/events/513829981993640/

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 81: Java na TV Digital - Programando interatividade com JavaDTV

Ginga Hackathon

Raphael Ferras Gonçalves da Silva, ex-aluno do curso de Bacharel em Ciências de Computação pelo ICMC-USP São Carlos apresentou mini palestra: Usando Canvas em games para Ginga-J

Apresentação no The Developers Conference 2013 – Trilha de TV digital

http://www.thedevelopersconference.com.br/tdc/2013/saopaulo/trilha-tv-digital#programacao

Labirinto Ginga-J

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 82: Java na TV Digital - Programando interatividade com JavaDTV

Dicas

Games com Ginga-J :

● Sempre evitar de utilizar um loop principal da aplicação. Isto evita ter problemas de threads ou perda de sincronismo

● Sempre utilizar AWT ● Usar a fila de eventos do AWT para controlar os eventos de

animação e similares necessários para o jogo.

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 83: Java na TV Digital - Programando interatividade com JavaDTV

Perguntas

Perguntas?

Page 84: Java na TV Digital - Programando interatividade com JavaDTV

Curso gratuito

http://www.globalcode.com.br/treinamentos/cursos/videoaulas/java-e-tv-digital

Desenvolvendo interatividade com JavaDTV /Ginga-J

Page 85: Java na TV Digital - Programando interatividade com JavaDTV

Referências

Parte 4: Ginga-J - Ambiente para a execução de aplicações procedurais

http://www.dtv.org.br/download/pt-br/ABNTNBR15606-4_2010Ed1.pdf

Parte 6: Java DTV 1.3

http://www.tvdi.inf.br/site/artigos/Normas%20ABNT/15606-6-Middleware.pdf

Introdução a interatividade na TV Digital

http://www.slideshare.net/mercuriocfg/tutorial-introduo-ainteratividadenatvdigitalicmcuspsaocarlos20130828

Informações sobre TV Digital interativa

http://blog.globalcode.com.br/2011/10/informacoes-sobre-tv-digital-interativa.html

Blog Thiago G. Vespa

http://www.thiagovespa.com.br/blog/category/tv-digital/

Page 86: Java na TV Digital - Programando interatividade com JavaDTV

Ginga, Java e Interatividade na TV Digital

http://blog.globalcode.com.br/2013/02/ginga-java-e-interatividade-na-tv.html

Trilha TV Digital 2013 The Developers Conference –São Paulo

http://www.thedevelopersconference.com.br/tdc/2013/saopaulo/trilha-tv-digital#programacao

Trilha TV Digital 2012 The Developers Conference –São Paulo

http://www.thedevelopersconference.com.br/tdc/2012/saopaulo/trilha-tv-digital#programacao

Trilha TV Digital 2011 The Developers Conference - Goiânia

http://www.thedevelopersconference.com.br/tdc/2011/goiania/trilha-tv-digital#programacao

Trilha TV Digital 2011 The Developers Conference –São Paulo

http://www.thedevelopersconference.com.br/tdc/2011/saopaulo/trilha-tvdigital#programacao

Blog Thiago G. Vespa

http://www.thiagovespa.com.br/blog/category/tv-digital/

Referências

Page 87: Java na TV Digital - Programando interatividade com JavaDTV

Yara Senger Bruno Souza

Javaman

Referências

Vinicius Senger Thiago G. Vespa

Page 88: Java na TV Digital - Programando interatividade com JavaDTV

Grupo de Usuários Java Noroeste Paulista

8 ANOSFundado em 24 de outubro de 2004

http://groups.google.com/group/javanoroeste?hl=pt-BR_USPelo site é possível se cadastrar:

http://javanoroeste.com.br/javanoroeste/

Referências

Page 89: Java na TV Digital - Programando interatividade com JavaDTV

Obrigado :)[email protected]

[email protected]@mercuriocfg@javanoroeste

www.javanoroeste.com.br