A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

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

Apresentações semelhantes


Apresentação em tema: "Caio Neves Leila Soriano. Agenda O que é Ginga? SBTVD News NCL API NCLua Exemplos."— Transcrição da apresentação:

1 Caio Neves Leila Soriano

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

3 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)

4 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

5 NCL - O que tocar?

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

7 NCL - Onde tocar?

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

9 NCL - Como tocar?

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

11 NCL – Quando tocar?

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

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

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

15 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

16 NCL - Estrutura

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

18 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' }

19 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 }

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

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

22 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'

23 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)()

24 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 ()

25 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 ])

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

27 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

28 Referências http://www.abnt.org.br/imagens/Normal izacao_TV_Digital/ABNTNBR15606- 5_2008Ed1.pdf http://www.abnt.org.br/imagens/Normal izacao_TV_Digital/ABNTNBR15606- 5_2008Ed1.pdf www.ncl.org.br/documentos/TutorialNCL 3.0-2ed.pdf www.ncl.org.br/documentos/TutorialNCL 3.0-2ed.pdf

29 Dúvidas? Obrigado pela atenção!


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

Apresentações semelhantes


Anúncios Google