Colaborador: Luiz Eduardo Araújo.
Para quem pretende iniciar os estudos para desenvolver aplicativos interativos para TV Digital, eu digo: Essa é a hora. Apesar do mercado novo, algumas empresas já estão contratando. Uma delas, a Peta5, estava até o final de novembro com duas vagas para estagiar com desenvolvimento de aplicações interativas.
Mas o que eu preciso? Apenas o NCL? Resposta: Não!
O NCL atende perfeitamente bem para o que foi proposto: sincronismo de mídias. Muitas aplicações básicas poderão e deverão ser desenvolvidas apenas em NCL. No entanto, aplicações que exijam uma interface que varie de acordo com as opções selecionadas pelo telespectador, a melhor escolha será Lua e Java.
O Ginga Java ainda não possui o mesmo nível de maturidade que o Ginga NCL/Lua tem com relação à TV Digital. É possível desenvolver interfaces dinâmicas e ricas trabalhando apenas com Lua.

Imagem: Seria possível criar imagens para serem utilizadas no NCL, pois a quantidade de Regiões existentes no Brasil é fixa. Mas e quando não sabemos ao certo os dados que deverão ser apresentados?
Participo atualmente de um projeto de Educação à Distância para TV Digital. Inicialmente toda a aplicação foi escrita em NCL que chamava algumas mídias Lua que efetivamente executavam os módulos da aplicação. Depois de sete meses e aproximadamente cinco ciclos de desenvolvimento praticamente jogados no lixo, partimos para o desenvolvimento exclusivamente em Lua.
Criamos um simples NCL que seu único trabalho é iniciar uma mídia Lua. A partir deste ponto, desde a simples tarefa da apresentação do menu principal até o controle de entrada de dados a partir do controle remoto passou a ser feito em Lua. Após seis meses, nos impressionamos com os ganhos obtidos. Nossa aplicação que conta com dez módulos, já possui seis desenvolvidos.

Imagem: Na pesquisa, não sabemos quantas cidades serão retornadas.
Mas é preciso atenção, nem todas as bibliotecas disponíveis para linguagem Lua fazem parte do Ginga NCL/Lua.
A linguagem Lua para TV Digital conta com quatro módulos obrigatórios:
Canvas – Permite desenhar objetos em uma mídia Lua;
Event – Permite que mídias Lua se comuniquem com mídias NCL e outros objetos externos;
Persistent – Permite exportar variáveis de ambiente entre aplicações interativas;
Settings – Permite acesso às variáveis definidas no documento NCL.
Um exemplo de biblioteca Lua que não é obrigatória segundo a norma, é o Lua Socket que da suporte para conexões TCP. Para isso, é necessário utilizar o módulo Event.
Para quem pretende trabalhar com desenvolvimento para TV Digital, está é a dica que deixo: NCL é ótimo quando a idéia é apresentar informações que não variem tanto. Mas quando precisamos apresentar dados que pode variar de acordo com as opções escolhidas pelo telespectador, Lua pode ser uma grata surpresa.
Mais informações podem ser obtidas na comunidade Ginga do portal do Software Público.
———————– — -
Luiz Eduardo é Pós Graduando em Engenharia de Software pela Poli-UFRJ. Possui experiência em desenvolvimento cliente-servidor e web. Entusiasta do Software Livre, escreve para o blog Versão Digital. Atua como arquiteto desenvolvedor em projetos de pesquisa e desenvolvimento de Educação à Distância para TV Digital na iniciativa privada.
Luiz,
Parabéns pelo post, ele ficou bem interessante.
Lua realmente é uma ótima opção para o tipo de aplicação que você está desenvolvendo.
Abs.
Muito bom o post. Você poderia disponibilizar os códigos em Lua pra gente ir estudando.
Abraços !!
Luiz ,
O Ginga NCL/Lua realmente é melhor ele facilita desenvolver interfaces dinâmicas .
Ficou ótimo o post. parabéns!
Abraço
Ricardo,
assim que eu terminar esta aplicação, pretendo disponibilizar o código fonte.
Abs.
[...] Texto publicado originalmente em: O Futuro é Digital [...]
Saudações,
Parabéns pelo post ! Nada como a experiência alheia para elucidar “novas tecnologias” .
Ol
Really good work about this website was done. Keep trying more – thanks!
Feed RSS dos comentários deste post URL de TrackBack
Comentários