GINGA - Software Livre para TV Digital Brasileira

Propaganda
GINGA - Software Livre para TV Digital Brasileira [Artigo]
1 of 6
http://www.vivaolinux.com.br/artigos/impressora.php?codigo=9814
GINGA - Software Livre para TV Digital Brasileira
Autor: Paulo Roberto Junior - WoLF <paulorvojr at gmail.com>
Data: 13/04/2009
O que é GINGA
Posso falar com minhas próprias indagações e avaliações sobre este projeto, mas nada como os próprios
desenvolvedores o definem.
Texto abaixo retirado e com os devidos créditos do site do governo: http://www.softwarepublico.gov.br/
"Ginga é a camada de software intermediário (middleware) que permite o desenvolvimento de aplicações
interativas para a TV Digital de forma independente da plataforma de hardware dos fabricantes de
terminais de acesso (set-top boxes).
Resultado de anos de pesquisas lideradas pela Pontifícia Universidade Católica do Rio de Janeiro
(PUC-Rio) e pela Universidade Federal da Paraíba (UFPB), Ginga reúne um conjunto de tecnologias e
inovações brasileiras que o tornam a especificação de middleware mais avançada e, ao mesmo tempo, mais
adequada à realidade do país.
O Middleware Ginga pode ser dividido em três subsistemas principais: Ginga-CC, Ginga-J e Ginga-NCL.
Ginga-CC (Ginga Common-Core) oferece o suporte básico para os ambientes declarativo (Ginga-NCL) e
procedural (Ginga-J) (veja detalhes da arquitetura Ginga em nosso Wiki). Dependendo das funcionalidades
requeridas no projeto de cada aplicação, um paradigma de programação (declarativo ou procedural)
possuirá uma melhor adequação que o outro.
Ginga-J foi desenvolvido pela UFPB para prover uma infra-estrutura de execução de aplicações baseadas
em linguagem Java, com facilidades especificamente voltadas para o ambiente de TV digital. Em breve, o
subgrupo Ginga-J estará disponível nesta comunidade!
Ginga-NCL foi desenvolvido pela PUC-Rio para prover uma infra-estrutura de apresentação de aplicações
baseadas em documentos hipermídia escritos em linguagem NCL, com facilidades para a especificação de
aspectos de interatividade, sincronismo espaço-temporal de objetos de mídia, adaptabilidade e suporte a
múltiplos dispositivos. NCL possui Lua como sua linguagem de script. Entre agora mesmo no subgrupo
Ginga-NCL!
Para facilitar o desenvolvimento de aplicações Ginga-NCL, a PUC-Rio desenvolveu também a ferramenta
Composer. Composer é um ambiente de autoria voltado para a criação de programas NCL para TV digital
interativa. Nessa ferramenta, as abstrações são definidas em diversos tipos de visões que permitem simular
um tipo específico de edição (estrutural, temporal, leiaute e textual). Essas visões funcionam de maneira
sincronizada, a fim de oferecer um ambiente integrado de autoria. Entre agora mesmo no subgrupo
Composer!
Cabe observar que os desenvolvimentos relacionados à linguagem NCL e à ferramenta Composer estão
aplicados ao cenário de TV Digital, mas já são aplicados em outros cenários de aplicações multimídia e
hipermídia, como Web, IPTV etc. TV Digital Interativa é apenas um caso particular de aplicação
23/6/2010 22:40
GINGA - Software Livre para TV Digital Brasileira [Artigo]
2 of 6
http://www.vivaolinux.com.br/artigos/impressora.php?codigo=9814
multimídia. "
Sistema de TV Digital: Uma visão geral rápida
Um sistema de TV digital é um sistema típico de cliente/servidor. O servidor compõe o ambiente de uma
radiodifusora (Globo, SBT) ou de um servidor de conteúdo (GINGA por exemplo) e o cliente o ambiente
do usuário telespectador (NÓS).
Um programa de TV é composto por um áudio principal e um vídeo principal, capturado ao vivo de uma
câmera, ou de um servidor com vídeos(não ao vivo).
Com o GINGA instalado, consegue-se usar a interatividade da televisão Digital.
Um dos exemplos de interatividade é a escolha de um programa dentro de um canal, como filmes de ação,
dentro do canal de filmes; ou fazer compras pela televisão.
O que é TV DIGITAL sem GINGA
Basicamente é uma televisão com uma imagem e som melhor.
Portanto, não aceite uma televisão ou um set-top box sem ter o programa brasileiro GINGA, pois ele é
indispensável para que a interatividade da televisão e as inovações de canal e programação possam ser
usufruídas por você.
Então posso criar um programa interativo, onde pessoas com seus devidos recursos necessários para o tal,
e elas interagirem com o controle remoto?
Sim, pode perfeitamente e é isso que a TV Digital vai proporcionar, além de claro uma melhor qualidade
de sinal e resolução, e acima de tudo, interação com os usuários.
GINGA em formato LIVE-CD
Este maravilho projeto agora está disponível de uma forma mais prática. Um belo Live-cd.
Para baixá-lo acesse o link:
http://www.ncl.org.br/ferramentas/ginga_LiveCD_v1.0.iso
Caso o link não funcione ou seja alterado, procure na página oficial em: http://www.gingancl.org.br
/ferramentas.html
Após baixar, grave esta imagem de cd em formato .iso, em um cd virgem, e como qualquer outra
distribuição Linux live-cd, inicie o computador ou sua máquina virtual pelo cd, ou pela .iso (no caso de
uma máquina virtual).
Após isto, as seguintes imagens irão aparecer:
23/6/2010 22:40
GINGA - Software Livre para TV Digital Brasileira [Artigo]
3 of 6
http://www.vivaolinux.com.br/artigos/impressora.php?codigo=9814
em seguida:
Set-top Box Virtual de desenvolvimento Ginga-NCL
Outra forma de conhecer o Ginga-NCL é em formato já pronto de máquina virtual:
Para baixar acesse: http://www.ncl.org.br/ferramentas/fedora-fc7-ginga-i386.zip
Após baixar, descompacte em uma pasta onde se localiza seu repositório de máquinas virtuais, tanto para
VMWare, VirtualBox, entre outros.
Com informações de fácil entendimento, segue abaixo a melhor descrição do assunto, criado com os
créditos dos próprios desenvolvedores:
"O Set-top Box Virtual Ginga-NCL é uma máquina virtual construída para facilitar o processo de
distribuição e implantação do Ginga-NCL versão C++, a versão do player NCL que conta com os mais
avançados recursos de apresentação de aplicações declarativas, melhor desempenho e maior proximidade
de uma implementação embarcada em set-top boxes reais.
23/6/2010 22:40
GINGA - Software Livre para TV Digital Brasileira [Artigo]
4 of 6
http://www.vivaolinux.com.br/artigos/impressora.php?codigo=9814
Analisando os reportes dos membros da comunidade Ginga, nota-se a dificuldade enfrentada por usuários
não-avançados para colocar essa versão do Ginga-NCL em funcionamento em seus computadores.
Mas, ao mesmo tempo, vê-se que a demanda pelo uso da versão C++ vem crescendo, provavelmente
motivada pela maior fidelidade de apresentação dos documentos NCL, se comparada à versão escrita em
Java.
Uma máquina virtual é a implementação em software de um computador que executa programas tal qual
uma máquina real. Ela pode ser vista como uma duplicata isolada de uma máquina real. Cabe ao software
de virtualização multiplexar o hardware real gerenciado por um sistema operacional hospedeiro (host)
entre diversas instâncias virtuais desse hardware, gerenciadas por sistemas operacionais convidados
(guests). Os sistemas operacionais convidados não precisam ser o mesmo que o hospedeiro, e nem
precisam ser os mesmos entre si. Isso quer dizer que em um sistema hospedeiro pode-se ter diferentes
sistemas operacionais (e suas aplicações) executando ao mesmo tempo, concorrentemente, disputando o
compartilhamento do hardware real.
Criar uma máquina virtual envolve a seleção de quais dispositivos de hardware estarão disponíveis para o
sistema operacional convidado, qual a quantidade de memória, e outras configurações. Tal seleção é
guiada por uma avaliação dos objetivos finais da máquina virtual. Uma vez configurada, a máquina virtual
deve receber a instalação de um sistema operacional convidado, dos pacotes de sua distribuição e de
softwares de terceiros.
Assim, a virtualização se torna um atrativo veículo para distribuição de software, principalmente daqueles
que possuem alta complexidade de compilação, instalação ou personalização junto ao hardware e serviços.
E essas mesmas características são encontradas no Ginga-NCL.
A máquina virtual fedora-fc7-ginga-i386 foi criada e configurada pela equipe do Laboratório TeleMídia da
PUC-Rio utilizando o software VMWare Workstation 6 (trial). As características de hardware
configuradas para a máquina virtual estão exibidas na figura ao lado.
O sistema operacional instalado é Linux, distribuição Fedora Core 7. A instalação foi otimizada para
incluir apenas os pacotes de software essenciais para o desenvolvimento do Middleware Ginga e para a
execução do gingaNclPlayer versão C++. Dessa forma, foram excluídos programas populares como todo
ambiente gráfico X/GNOME/KDE, e suas ferramentas. O objetivo é gerar um ambiente muito próximo a
um set-top box de desenvolvimento real. A maior diferença é que nosso set-top box virtual é capaz de
recompilar os programas que executa e possui a mesma plataforma de hardware de um PC. E,
infelizmente, não vem com controle remoto...
Os principais pacotes de software instalados são:
gingancl-cpp (mais recente)
kernel 2.6.23.1
GNU toolchain (gcc 4.1.2-27, glibc 2.6-4)
directfb 1.0.1 (extras & examples)
xine-lib 1.1.7
gingancl-cpp-devel (código fonte)
Com tudo isso, a máquina virtual apresenta como principais vantagens:
Instalação descomplicada, pois tudo está pronto, não há configurações de kernel ou boot a serem
feitas
Portabilidade entre diferentes sistemas operacionais
23/6/2010 22:40
GINGA - Software Livre para TV Digital Brasileira [Artigo]
5 of 6
http://www.vivaolinux.com.br/artigos/impressora.php?codigo=9814
Ótimo ambiente de testes de aplicações NCL / NCLua.
Ambiente completo para os desenvolvedores do middleware
Obs.: O STB Virtual vem pré-configurado com o uma resolução de 640x480, baixa dessa forma para
otimizar o uso da CPU. Usuários com alguma experiência em framebuffer e directfb podem modificar a
resolução conforme suas necessidades.
1.2. Requisitos para o funcionamento do Set-top Box Virtual de Desenvolvimento Ginga-NCL
Requisitos de Hardware:
Arquitetura Intel.
Pentium 4 3.0GHz ou melhor. HyperThreading recomendado. Duplo núcleo ideal.
Memória RAM de 1 Gb ou maior. 2 Gb recomendado.
Placa Aceleradora de Vídeo com 64Mb ou maior. Chipsets nVidia e ATI recomendados.
Disco rígido com 5Gb livres.
Placa de som
Requisitos de software:
Sistema Operacional: Windows XP (ou posterior), ou Linux, ou Mac OS X.
Software de virtualização: VMWare Player (Windows ou Linux) ou VMWare Workstation
(Windows ou Linux) ou VMWare Fusion (Mac OS X).
Os requisitos de hardware podem ser relaxados se o usuário se limitar a aplicações NCL mais simples, que
incluem mídias de baixa resolução e que evitam a renderização em paralelo de diversos vídeos e áudios. "
Convite a todos
Com o desenvolvimento e melhorias deste brilhante projeto brasileiro, e por sua filosofia de software livre,
todos que se interessarem podem ajudar, aprender e a divulgar o GINGA.
Criando pequenas aplicações, tutoriais, disseminando informações ao redor do mundo.
Para ver muitos artigos, textos e tutoriais, acesse:
http://www.gingancl.org.br/documentos.html
Agradecimentos
23/6/2010 22:40
GINGA - Software Livre para TV Digital Brasileira [Artigo]
6 of 6
http://www.vivaolinux.com.br/artigos/impressora.php?codigo=9814
Obrigado a todos que leram este artigo com foco em divulgação e novidades, e não apenas com o intuito
de "howto", de como fazer isso, faça aquilo.
Logo que esta incrível tecnologia se fixar melhor no Brasil e adquirir conhecimento suficiente para o
mesmo, posto novidades e como implementar programas, desenvolvê-lo e usar.
Espero que tenham gostado.
Obrigado, também a todos os mantedores desta comunidade Viva o/ Linux,
Abraços.
Paulo Roberto Junior
http://www.paulojr.info
http://www.vivaolinux.com.br/artigo/GINGA-Software-Livre-para-TV-Digital-Brasileira
Voltar para o site
23/6/2010 22:40
Download