Caio Neves Leila Soriano. Agenda O que é Ginga? SBTVD News NCL API NCLua Exemplos.

Slides:



Advertisements
Apresentações semelhantes
Web Services e Enterprise Services Vasco Veiga & Developer Group Microsoft Corporation.
Advertisements

Novas Tecnologias Microsoft.
Shop Notas de implementação [Exercício da Disciplina de ADAV]
2008, Edgard Jamhour IPv6 Exercício de Tunelamento 6To4 Edgard Jamhour.
VHDL Very High Speed Integrated Circuit Hardware Description Language Prof. Eduardo Todt 2008.
VHDL - Tipos de dados e operações
1 A Linguagem SQL Todo Banco de Dados apresenta uma Linguagem para definição e uma para manipulação de dados. Com relação aos Bancos de Dados Relacionais,
Prof. José Fernando Rodrigues Júnior Pacotes Material original: Profa. Elaine Parros Machado de Sousa SCC Bancos de Dados e Suas Aplicações.
A.4. Trabalhando com elementos de biblioteca STL – Standard Template Libraby Disponibiliza um conjunto de classes templates, provendo algoritmos eficientes.
Ronaldo Celso Messias Correia
Dicas práticas para o uso do FEMM
FORTRAN 90 Denise Yumi Takamura.
ANIMAÇÃO EM MATLAB Danilo Ueno Takahagi Rafael Amaro
SQL Procedural Junho/2006.
Funções de Linha 24/04/06. Funções de Linha Gerar ou construir novo valor não existente na tabela inicial. Valor construído a partir de dados de uma ou.
SQL-3. Novo contexto e necessidade de : Manipular imagens Outros tipos de dados além de texto e números Recuperação de dados mais complexos Níveis distintos.
Trac é uma ferramenta open source e de interface web para controle de projetos de desenvolvimento de software. O objetivo do software é ajudar o desenvolvedor.
CONCEITOS BÁSICOS HTML - HiperText Markup Language Principais TAGS:
Container Managed Persistent Bean Kellyton Brito Projeto Compose
(projetado sobre o plano)
MODELAGEM DINÂMICA DE SISTEMAS MECÂNICOS
Gaspare Giuliano Bruno
Teste Estrutural de Software
(Como implementar multiplicação e divisão uma vez só :-)
Twofish Leonardo H. Furlan.
Slide 1 Rede Nacional de Ensino e Pesquisa Treinamento em Gradep - julho 2005 Serviço Worb Treinamento no GRADEp Serviço Worb WorbDemo.
Slide 1 Rede Nacional de Ensino e Pesquisa Treinamento em Gradep - junho 2005 Serviço Collector Treinamento no GRADEp Serviço Collector CollectorDemo e.
Servidores e Programação Web Redes de Computadores.
O Fluxo de Testes © Alexandre Vasconcelos
HAND: Height Above the Nearest Drainage
Estatística: Aplicação ao Sensoriamento Remoto SER 202 Aula 01 - ANO 2013 Camilo Daleles Rennó
Metodologias de Construção de Sites
"Tudo o que acontece, acontece em algum lugar." Gilberto Câmara - INPE Gilberto Câmara - INPE.
GT Processo Eletrônico SG Documentos Eletrônicos Segunda reunião – 28/08/2009 Interlegis.
Sistemas de Tutoria Inteligente (STI) Visam proporcionar instrução de forma adaptada a cada aprendiz. STIs adaptam o processo de instrução a determinadas.
CT-300 – Seminário de Tese 1/25 Um Framework Padrão para Simulação de Modelos de Robôs Móveis de Robôs Móveis Juliano A. Pereira Prof. Carlos H. C. Ribeiro.
CE-262 Ontologia e Web Semântica Prof. José M Parente de Oliveira
ITA - Instituto Tecnológico de Aeronáutica Aula #1.1 – Tutorial de Web Services utilizando o NetBeans 5.5 Disciplina: CE 262 – Ontologias e Web Semântica.
Capítulo IX – Ponteiros 9.1 – Introdução 9.2 – Relação entre ponteiros e variáveis indexadas 9.3 – Alocação dinâmica de memória 9.4 – Variáveis indexadas,
Mecânica dos Materiais TA-431 FEA/Unicamp
Curso Técnico em Informática La Salle - Canoas
Trabalho de Formatura Supervisionado – MAC499 Aluno: Danilo Toshiaki Sato Orientador: Marco Dimas Gubitoso Estágio: Mai/2002 – Dez/2003.
Tecnologia para Web JavaScript Enrique Pimentel Leite de Oliveira
Marco Antonio Montebello Júnior
Sistemas Operacionais e Windows XP Aula 04 – DCA0302.
04:27 Introdução Tipos de Fluxo de Dados e de Arquivos Manipulação de Arquivos em Java Classes FileReader e FileWriter Classes FileInputStream e FileOutputStream.
Objetos Distribuídos - Programação Distribuída Orientado a Objetos Luiz Affonso Guedes.
Programação Concorrente com Thread Java
Robótica: Sistemas Sensorial e Motor
OpenGL Computação Gráfica. O que é OpenGL? Uma linguagem de programação gráfica de baixo nível Projetada para gráfico interativo 2D e 3D Uma interface.
Introdução Ciência da Computação estudo de algoritmos –ÊNFASE ao estudo de DADOS armazenamento manipulação refinamento (a partir de dados cru) estrutura.
Transporte Escolar Fluvial
Usando Java no Oracle Por Edson Almeida Junior
CSS Programação Web.
Prof. Eduardo Mantovani Prof. Fábio de P. Santos AES 2007.
Exercícios de revisão.
NCL(Nested Context Language)
INPE / CAP-315 Airam J. Preto, Celso L. Mendes Aula 30 (1) Empacotamento de Dados em MPI Tópicos: Buffer de Mensagem Empacotamento/Desempacotamento.
Java em Redes de Computadores
Mapeamento de CSP para JCSP Patrícia Muniz (pmf) Rafael Duarte (rmd)
Funções ou procedures Professor Esp. Diego André Sant’Ana
Aula Gráfica de LP2 Professor: André Santos Monitor: José Edson.
Cursor Professor Esp. Diego André Sant’Ana
RT-EXPERT Artis Corp. C calling program RTSUB [rule set subroutine] RTSUB [rule set subroutine] RTSUB [rule set subroutine]... DSL Decision Support Language.
ArrayList e Genéricos Profs. PROG2 - UNISINOS.
Alisson Rafael Appio SOP aplicado em um jogo tipo de corrida usando a arquitetura cliente e servidor Alisson Rafael Appio
Marlon Novas ferramentas da Nokia para a plataforma S40 1.
HTML CSS CRD Filipe Pacheco.
HTML 5 CRIAÇÃO DE TABELAS
Javascript, Introdução
Transcrição da apresentação:

Caio Neves Leila Soriano

Agenda O que é Ginga? SBTVD News NCL API NCLua Exemplos

O que é Ginga? Middleware Aberto do Sistema Brasileiro de TV Digital (SBTVD) Dois Módulos  Ginga-J (Java)  Ginga-NCL (Lua - suporte) Grande Inovação (Ponte Java-NCL NCL-Java)

SBTVD News Ginga-J  Primeiro draft final de setembro  Royalties free  Implementação aqui! (cesar) Seminário de Televisão Digital: Modelo, Cenários, Linguagem Ginga 1.0

NCL - O que tocar?

NCL – O que tocar? Suporta todos os tipos definidos na norma. A definição do que tocar define-se no body.

NCL - Onde tocar?

NCL – Onde tocar? As dimensões podem ser definidas por unidades de pixel ou por porcentagem.

NCL - Como tocar?

NCL – Como tocar? Definido no head. Parâmetros: transparency freeze...

NCL – Quando tocar?

Descreve-se o comportamento do elo no head. Pode-se ter ações compostas.

NCL – Quando tocar? Com o port pode-se tornar uma mídia auto initialize. Definido no body.

NCL – Quando tocar? Conectar a mídia ao comportamento do elo.

NCL - Estrutura Todo documento NCL é escrito em XML Cabeçalho do documento NCL Uma seção de Cabeçalho do programa (head) Corpo do programa (body) Pelo menos uma porta Conclusão do documento

NCL - Estrutura

API – NCLua (Events) event.register (f: function) event.timer (time: number, f: function) event.post (dst: string; evt: event) event.uptime () event.post(evt)

Classes de Eventos Eventos Key:  evt = { class='key', type: string, key: string}  type pode ser 'press' ou 'release'.  key é o valor da tecla em questão.  evt = { class='key', type='press', key=’0’ } Tipo ‘presentation’:  evt = { class='ncl', type='presentation', area='?', action='start'/'stop'/'abort'/'pause'/'resume' }

Classes de Eventos Tipo ‘selection’:  evt = { class='ncl', type='selection', area='?', transition='stops' } Tipo ‘attribution’:  evt = { class='ncl', type='attribution', area='?', transition='stops' } Classes TCP:  evt = { class=’tcp’, from=’addr:port’, value=string }

Settings Dados do próprio set-top-box  lang = settings.system.language  age = settings.user.age  location = settings.user.location

Persistent Variáveis persistentes entre execuções Divididas entre tres grupos:  “service”  “channel”  “shared” persistent.service.total = 10 color = persistent.shared.color

API – NCLua (Canvas) canvas:new()  Construtor vazio, imagem, (width, height) canvas:attrSize()  retorno x, y = canvas:attrSize() canvas:attrColor()  'white', 'aqua', 'lime', 'yellow', 'red', 'fuchsia', 'purple', 'maroon','blue', 'navy', 'teal', 'green', 'olive', 'silver', 'gray', 'black'

API – NCLua (Canvas) canvas:attrFont (face: string; size: number; style: string) canvas:drawLine (x1, y1, x2, y2: number) canvas:drawRect (mode: string; x, y, width, height: number) canvas:drawPolygon (mode: string)  canvas:drawPolygon('fill')(1,1)(10,1)(10,10)(1,10)()

API – NCLua (Canvas) canvas:drawEllipse (mode: string; xc, yc, width, height, ang_start, ang_end: number) canvas:drawText (text: string; x, y: number) canvas:flush ()

API – NCLua (Canvas) canvas:measureText (x, y: number; text: string) canvas:compose (x, y: number; src: canvas; [ src_x, src_y, src_width, src_height: number ])

Exemplo 1 Aplicacao que conta o números de cliques e mostra na tela.

Desafio Faça o macaco comer a banana! Através de captura de eventos da classe “key” Criação de canvas com imagens Composição de canvas

Referências izacao_TV_Digital/ABNTNBR _2008Ed1.pdf izacao_TV_Digital/ABNTNBR _2008Ed1.pdf ed.pdf ed.pdf

Dúvidas? Obrigado pela atenção!