Sistema Brasileiro de TV Digital

Transcrição

Sistema Brasileiro de TV Digital
UNIVERSIDADE CATÓLICA DE PELOTAS
CENTRO POLITÉCNICO
PROGRAMA DE PÓS-GRADUAÇÃO EM INFORMÁTICA
Sistema Brasileiro de TV Digital
por
Christian Puhlmann Brackmann
Trabalho Individual I
TI-2008/02
Orientado por Prof. Dr. Paulo Roberto Gomes Luzzardi
Pelotas, novembro de 2008
Prefácio
“Desde o começo a imagem nos fascina. Inventamos muito. Buscamos a qualidade
que o olho tem. Nunca chegamos tão perto. É uma nova TV, com imagem mais nítida,
sem ruídos e interferências. E tudo isso é resultado de uma tecnologia que começa
com um pequeno detalhe: até há pouco as gravações eram analógicas. Marcas físicas
eram feitas em uma fita. No novo sistema, todo tipo de informação e gravação é
digitalizada, ou seja, transformada por fórmulas em códigos”
Primeira transmissão local de TV Digital no RS.
Abertura do Jornal do Almoço (05/11/2008)
2
SUMÁRIO
1 Introdução
10
2 Diferenças entre a tecnologia analógica e digital
12
3 A Implantação da TV Digital no Brasil
15
4 O Sistema Brasileiro de Televisão (SBTVD)
28
5 O middleware brasileiro: Ginga
31
5.1 Ginga-NCL (Linguagem Declarativa)
35
5.1.1 XHTML
35
5.1.2 Lua
35
5.2 Ginga-J (Linguagem Procedural)
37
5.5 Ginga-CC (Common Core)
39
6 Ferramenta Disponibilizada para testes: Virtual Set-Top Box
41
7 Canal de Retorno
42
8 Difusão de Dados
46
9 Interação
49
10 Conclusão
51
11 Trabalhos Futuros
52
12 Referências Bibliográficas
54
3
LISTA DE FIGURAS
1 Múltiplos percursos do sinal causando sobreposição de bits
13
recebidos (BARBOSA et. al, 2008)
2 Diferentes tipos de interferência e a recuperação de dados
14
(BARBOSA et. al, 2008a)
3 Cronograma de início de transmissão da TV Digital (FSBTVD,
15
2006)
4 Camadas genéricas dos sistemas de TV Digital (BECKER,
18
2008)
5 Exemplo de transmissão hierárquica e recepção parcial (ABNT
20
NBR 15604:2007).
6 Exemplo de URD Full-Seg
20
7 Exemplo de URD One-Seg
21
8 Formato Entrelaçado e Progressivo
24
9 Arquitetura interna de um Terminal de Acesso (BARBOSA et.
25
al, 2008)
10 Arquitetura interna de um Terminal de Acesso (CPqD, 2006)
25
11 Middlewares existentes atualmente em terminais de acesso
27
(SOUZA, 2008)
12 Camadas do Sistema Brasileiro de TV Digital (SOUZA, 2008)
28
13 Arquitetura do Middleware Ginga (OPENGINGA, 2008)
33
14 Possíveis formas de canais de comunicação
42
15 Sistema de transmissão e recepção de TV Digital (Adaptado de
44
BARBOSA, 2008)
16 Envio de dados por Carrossel
48
17 Tratamento de arquivo corrupto
48
18 Diagrama - novos dispositivos físicos de interação com a TVDi
53
4
LISTA DE TABELAS
1 Domicílios com bens duráveis e serviços de acesso a
10
comunicação em 2007 (IBGE, 2007)
2 Domicílios com bens duráveis e serviços de acesso a
10
comunicação de 1992 a 2007 (IBGE, 2007)
3 Prazos para implantação da TV Digital em diferentes regiões
16
(Adaptado de FSBTVD, 2006).
4 Sinal digital ativos e a serem implantados no Brasil
17
5 Funções e opcionais em URDs
22
6 Resoluções obrigatórias e opcionais em receptores de TV
23
Digital (ABNT NBR 15604:2007).
7 Perfis do H.264 (BARBOSA, 2008)
29
8 Perfis do MPEG-4 HE-ACC (BARBOSA, 2008)
30
9 Funcionalidades mínimas previstas para os URDs
49
5
LISTA DE ABREVIATURAS E SIGLAS
SBTVD
Sistema Brasileiro de TV Digital
API
Application Programming Interface
ARIB
Association of Radio Industries and Businesses
ATSC
Advanced Common Application Plataform
BP
Baseline Profile
BST-OFDM Band Segmented Transmission - Orthogonal Frequency Division
CIF
Common Intermediate Format
CPU
Central Processing Unit
DASE
Digital Television Application Software Environment
DAVIC
Digital Audio-Video Council
DSM-CC
Digital Storage Media, Command and Control
DVB
Digital Video Broadcasting
EAD
Educação a Distância
GPLv2
General Public License Version 2
HAVI
Home Audio-Video Interoperability
HD DVD
High Definition Digital Video Disc
HDMI
High-Definition Multimedia Interface
HDTV
High-Definition Television
HP
High Profile
ISDB
Integrated Services Digital Broadcasting
ITU
International Telecommunication Union
MHP
Multimedia Home Plataform
MP3
MPEG Layer-3 Audio
MPEG
Moving Picture Expert Group
NCL
Nested Context Language
6
P2P
Peer-to-Peer
RF
Radiofreqüência
SBR
Spectral Band Replication
SDTV
Standard Definition Television
SMIL
Synchronized Multimedia Integration Language
STB
Set-Top Box
TVDI
Televisão Digital Interativa
URD
Unidade de Recepção Digital
VM
Virtual Machine
XHTML
eXtensible Hypertext Markup Language
7
RESUMO
Desde os anos 90, discute-se TV Digital Terrestre no Brasil. Esta discussão gerou,
naturalmente, interesses tecnológicos e comerciais no Sistema Brasileiro de TV Digital
(SBTVD). Baseado no sistema de TV Digital Japonês, a criação do padrão SBTVD levou em
consideração também um conjunto de peculiaridades específicas dos costumes, questões
sociais e da geografia nacional para que a televisão digital tivesse ao alcance de todos os
brasileiros.
Este trabalho tem o objetivo de mostrar o estado-da-arte da TV digital no Brasil,
apresentando uma visão geral do Sistema Brasileiro de TV Digital, bem como o middleware
criado pela Pontifícia Universidade Católica do Rio de Janeiro (PUC-RJ) e Universidade
Federal de Pernambuco (UFPE) chamado Ginga.
8
ABSTRACT
Since the 1990’s terrestrial Digital TV is being discussed in Brazil. These discussions have,
naturally, made several technological and commercial interests in the Brazilian Digital TV
System. Based on the Japanese Digital TV system, the creation of the Brazilian system also
considered factors of the country’s culture, social issues, and the terrain, so that digital TV
could reach all Brazilian citizens.
This objective of this research is to show the state of art of the Brazilian digital TV,
presenting an overview of the system and also about the middleware developed by PUC-RIO
(Pontifícia Universidade Católica) and UFPE (Universidade Federal de Pernambuco).
9
1. Introdução
Desde a implantação do primeiro canal de TV, a BBC (British Broadcasting Corporation) de
Londres, fundada em 1936, a televisão já passou por várias mudanças, em um constante
processo de evolução e adaptação às novas necessidades sociais. Um grande acontecimento
da televisão ocorreu na década de 50, onde já era possível assistir imagens coloridas. No final
da década de 80 iniciaram os testes com diferentes tipos de modulações do sinal audiovisual
digital para transmissão terrestre e por satélite. (BBC, 2008)
A televisão é um dos mais importantes meios de comunicação no Brasil e sempre teve um
forte papel integrador, sendo um agente de cultura e entretenimento. Com uma forte
penetração popular, mais de 94% dos domicílios brasileiros (demonstrado na Tabela 1)
recebem informação e se integram ao contexto brasileiro através da televisão. Em algumas
localidades, esse é o único meio de comunicação existente (BECKER, 2004).
Tabela 1: Domicílios com bens duráveis e serviços de
acesso a comunicação em 2007 (IBGE, 2007)
Tabela 2: Domicílios com bens duráveis e serviços de
acesso a comunicação de 1992 a 2007 (IBGE, 2007)
10
Apesar do Sistema de TV Digital Terrestre Brasileiro ter sido definido recentemente, as
transmissões de TV por satélite já são feitas de forma digital há mais de 10 anos no Brasil.
Com diversas técnicas de digitalização e compressão dos sinais de vídeo e áudio, emissoras
de TV, empresas de ensino à distância e outras com interesses em transmissão de vídeo já
utilizam satélites para transmissão dos seus sinais de TV Digitais por todo país.
A TV Digital Terrestre é uma evolução tecnológica da TV Analógica, trazendo mais
qualidade de vídeo e áudio, aumento da oferta de programação e possibilidades de novos
serviços e aplicações.
11
2. Diferenças entre a tecnologia analógica e digital
Uma das principais características da transição da TV analógica para a digital é o aumento da
resolução, melhora da qualidade de imagem e som, fim de chuviscos e chiados, além de
fantasmas. Estes efeitos sobre a imagem ocorrem quando há interferência e ruídos no sinal
original, limitando a capacidade do sistema. Os dois tipos de ruídos (aleatório e impulsivo)
são melhor detalhados a seguir.
Ruídos aleatórios ocorrem em todos os espectros de freqüência e infelizmente não podem
ser evitados. Na transmissão analógica, eles são responsáveis pela queda da qualidade do
sinal recebido, causando os conhecidos “chuviscos” na imagem. A queda da qualidade
depende da relação entre a) potência do sinal e b) ruído (também conhecido como relação
S/N). De acordo com a distância do televisor com a fonte de transmissão (torre), diminui
também a qualidade do sinal. Em sistemas digitais, o ruído pode modificar um nível digital
do sinal a ser recebido a ponto de ser confundido e causando erro de bit. Para não ocorrer este
tipo de problema, todos os padrões de TV digital adotadas no mundo utilizam um código de
corretores de erros. Se a taxa de erros estiver acima de um limiar, o código corretor é capaz
de corrigir todos os erros e não ocorre perda de qualidade, ao contrário o que ocorre quando o
sinal é muito fraco: o código de correção não consegue recuperar a transmissão e acaba
inclusive inserindo bits errados. Por este motivo é usual dizer que tem-se um sinal perfeito e
sem chuviscos.
12
Figura 1: Múltiplos percursos do sinal
causando sobreposição de bits recebidos (BARBOSA et. al, 2008)
Outra forma de deterioração do sinal recebido é o chamado “múltiplo percurso”. Este efeito é
causado pelos diferentes caminhos que o sinal pode realizar. Cada um dos percursos pode
apresentar atenuação e atrasos diferentes dos demais, fazendo com que o sinal recebido seja
sobreposto de várias maneiras (como mostrado na Figura 1). Este tipo de efeito reflexivo em
prédios, casas e outros tipos de elevações íngremes do terreno resultam no efeito “fantasma”
no sistema analógico e no digital um fenômeno chamado de ISI (Inter Symbol interference),
ou em português: interferência entre símbolos. O ISI é um termo que denota a sobreposição
entre os bits recebidos. Se houver um retardo a ponto de sobrepor o símbolo, o ISI pode
tornar inviável a recepção.
Existem ainda outras fontes de possíveis interferências, tais como os ruídos impulsivos. Os
ruídos impulsivos são aqueles causados por motores elétricos (eletrodomésticos, elevadores,
motores industriais, entre outros), veículos automotores, transformadores de distribuição de
energia elétrica, descargas atmosféricas, etc.
13
Figura 2: Diferentes tipos de interferência e a
recuperação de dados (BARBOSA et. al, 2008a)
Demonstra-se na Figura 2 uma breve explicação de como ocorre a deterioração do sinal do
sinal original e sua recuperação. No topo é mostrado como o sinal original é transmitido, logo
abaixo são os efeitos ocasionados pela reflexão do sinal (ruídos aleatórios) e o ruído branco
Gaussiano (ruídos impulsivos) e como o sinal é recebido pela URD (Unidade Receptora
Decodificadora). A URD será responsável por receber o sinal e com a utilização do código de
recuperação e os instantes de amostragem recuperar o sinal original, garantido uma excelente
qualidade de imagem e som ao telespectador. O excesso de ruídos na recepção pode
ocasionar uma rajada de erros em símbolos consecutivos do sinal e o sistema corretor de
erros não ser capaz de corrigir o código recebido, levando a queda da recepção. Esta
ocorrência age de forma diferente no sistema analógico, pois por pior que seja o sinal o
telespectador pode continuar assistindo. No caso da TV digital, o sinal chega perfeito ou não
chega. Por este motivo foi importante avaliar qual sistema de transmissão é o melhor e mais
adequado para as residências brasileiras.
14
3. A Implantação da TV Digital no Brasil
A TV Digital, após anos de atraso em relação a outros países, chega no Brasil como uma
nova tendência de mercado. A primeira transmissão de sinal digital terrestre aberta feita no
Brasil aconteceu em dois de dezembro de 2007, na cidade de São Paulo. Ainda assim, a
disponibilidade de captação do sinal digital era restrito a alguns bairros da capital. Desde
então, o sinal tem se espalhado por outros bairros e até mesmo outras cidades. Destaca-se na
Figura 3 e Tabela 3, o cronograma de implantação da transmissão digital. Este cronograma
indica o período para a implantação do sinal digital em cada região do país. Espera-se que até
2016 todos os telespectadores já estejam aptos a receber a programação televisiva totalmente
digital e que, desta forma, possa extinguir o sinal analógico em âmbito nacional.
Figura 3: Cronograma de início de transmissão da TV Digital (FSBTVD, 2006).
Na Tabela 3 são mostrados os mesmos dados da Figura 3, porém em um formato de melhor
compreensão. Indicou-se os prazos iniciais e finais de cada implantação, dividos pelos grupos
de implantação. Na Grande São Paulo não houve uma data de início de implantação, pois seu
uso era apenas experimental. Definiu-se apenas um prazo final para o início oficial das
transmissões.
15
Fase
Início
Implantação
Prazo Final
Cidades Compreendidas
SP
-
Dezembro/2007
Grande São Paulo
1
Janeiro/2008
Janeiro/2010
Geradoras de Belo Horizonte, Brasília, Rio
de Janeiro, Salvador e Fortaleza
2
Maio/2008
Maio/2010
Geradoras de Belém, Curitiba, Goiânia,
Manaus, Porto Alegre e Recife.
3
Setembro/2008 Setembro/2010
Geradoras de Campo Grande, Cuiabá, João
Pessoa, Maceió, Natal, São Luiz e
Teresina.
4
Janeiro/2008
Janeiro/2011
Geradoras de Aracajú, Boa Vista,
Florianópolis, Macapá, Palmas Porto Velho,
Rio Branco, e Vitória.
5
Maio/2009
Maio/2011
Demais Geradoras
6
Junho/2009
Junho/2011
Retransmissoras Capitais e DF
7
Junho/2011
Junho/2013
Retransmissoras de outras localidades
Tabela 03: Prazos para implantação da TV Digital
em diferentes regiões (Adaptado de FSBTVD, 2006).
Vale lembrar que de acordo com EMBRATEL (2008), o sinal digital já é transmitido faz dez
anos no Brasil através de satélites de alta tecnologia da companhia. Para a captação deste
sinal, é necessário obter equipamentos específicos para captação de sinal por antenas
parabólicas e que possam decodificar o sinal de forma correta e íntegra, como por exemplo, o
receptor digital de satélite de alta definição Zinwell série ZDX (ZINWELL, 2008). Como
este sistema não é o foco deste trabalho, serão discutidos apenas temas pertinentes ao Sistema
Brasileiro de TV Digital Terrestre (SBTVD-T).
Mesmo existindo um cronograma de implantação do sinal digital, ele não está sendo seguido
com rigorosidade, pois já ocorre uma divergência em relação aos prazos estipulados na
Tabela 03. Esta divergência é detalhada na Tabela 04, onde para o Grupo G3 não há previsão
16
de início de transmissões em nenhuma das capitais e para o Grupo G4 houve um
adiantamento no início das transmissões.
Grupo
Cidade
Início das Transmissões
SP
Grande São Paulo
02/DEZ/2007 1
G1
Belo Horizonte
07/ABR/2008 2
G1
Rio de Janeiro
16/JUN/2008 3
G2
Goiânia
04/Ago/2008 4
G2
Curitiba
22/OUT/2008 5
G2
Porto Alegre
04/NOV/2008 6
G3
-
-
G4
Florianópolis
Final de NOV/2008 7
Tabela 4: Sinal digital ativos e a serem implantados no Brasil
Uma das grandes inovações que a TV Digital traz é a interatividade. De acordo com o
dicionário Aurélio, interatividade é qualquer ação que se exerce mutuamente entre duas ou
mais coisas, ou duas ou mais pessoas. A interação permitirá que o telespectador participe
ativamente da programação que está sendo transmitida através de aplicações que são enviadas
juntamente à transmissão do sinal digital, ou seja, parte da banda será alocada para o envio de
dados. Os aplicativos, assim como nos computadores, possuem inúmeros recursos que estão
disponíveis ao programador, para codificar seu aplicativo.
Com o surgimento das novas oportunidades frente à televisão, ocorre em paralelo uma
imensa revolução entre os tipos de telespectadores, pois surgem os telespectadores ativos, ou
seja, o modelo de transmissão digital cria um novo modelo de relacionamento com seu
público (COSTA et. al, 2008) (FLORES, 2008).
Além disso, surgem também os programas não-lineares. A definição é vista logo a seguir:
1
http://www.forumsbtvd.org.br/ http://idgnow.uol.com.br/telecom/
3
http://g1.globo.com/Noticias/0,,MUL603578-15515,00.html
4
http://g1.globo.com/ 5
http://olhardigital.uol.com.br/ 6
http://zerohora.clicrbs.com.br/
7
http://zerohora.clicrbs.com.br/
2
17
"Programa não-linear é um programa de TV composto não apenas pelo áudio
principal e vídeo principal, mas também por outros dados transmitidos em
conjunto. Estes dados constituem outros áudios e vídeos, além do principal,
imagens, textos, etc., e um aplicativo relacionando temporalmente e
especialmente todos esses objetos de mídia. Esse relacionamento pode ser
guiado por interações do usuário telespectador, ao qual poderá ser delegado
o controle de fluxo de um programa televisivo, determinando se um
determinado conteúdo deve ser exibido ou não e, em sendo, a forma como
será exibido. Como o fluxo de um programa televisivo deixa de ser contínuo
em sua concepção e com vários caminhos alternativos de exibição, esse
programa é chamado de não-linear." (BARBOSA, 2008)
A interação com a televisão só é possível havendo aplicativos específicos para a televisão que
é executado na camada de aplicação do terminal de acesso.
Todos os sistemas de TV Digital no mundo utilizam um sistema de camadas para a
organização dos diferentes padrões do sistema, como mostrado na Figura 4. O funcionamento
das camadas é comparável ao do utilizado em redes, ou seja, cada camada é responsável pelo
tratamento
de
uma
informação
específica.
As
camadas
são
(em
ordem
de
execução): modulação, transporte, compressão de áudio e vídeo, middleware e aplicação.
Figura 4: Camadas genéricas dos sistemas de TV Digital (BECKER, 2008)
Pode-se ver na Figura 4 que os aplicativos são localizados acima do middleware.
18
Um middleware é uma classe de software desenvolvida para gerenciar a complexidade e
heterogeneidade inerentes ao sistema (BAKKEN, 2001).
Programas
de
TV
digital
interativa
podem
ser
entendidos
como
aplicações
hipermídia/multimídia. Nesse cenário, sistemas hipermídia (ou multimídia interativos) irão se
constituir em uma das ferramentas mais importantes a serem dominadas. Sistemas de autoria
hipermídia são o suporte para a geração de informação, não se restringindo apenas à
concepção dos conteúdos em si, mas incluindo também a concepção de como eles devem ser
apresentados.
Sistemas
de
exibição
chamados middlewares para Set-Top
Boxes)
hipermídia
são
os
(núcleo
responsáveis
central
pela
dos
apresentação
especificada. Todos esses sistemas têm por base alguma linguagem de especificação.
Conteúdos para TV digital interativa são usualmente concebidos usando uma linguagem
declarativa (aplicações
essas
que
para
serem
exibidas
têm
o
suporte
do
chamado middleware declarativo), ou uma linguagem imperativa (a linguagem Java
predomina e, nesse caso, as aplicações têm o suporte do chamado middleware procedural).
Além do suporte à criação de conteúdos, o middleware tem a função de “virtualizar” os
aparelhos de televisão de diferentes fabricantes, definindo para os que produzem conteúdo
uma visão única de plataforma. Esse papel confere ao middleware fundamental importância,
pois é ele quem regula as relações entre duas indústrias estratégicas para o país de: a)
produção de conteúdo e b) fabricação de aparelhos receptores.
Os aparelhos receptores, também conhecidos como terminal de acesso, são dispositivos de
recepção e decodificação de sinais de televisão digital que são conectados a um televisor por
meio de cabos ou qualquer outro tipo de conexão e que, para tanto, disponibilizam interfaces
de saída de áudio e vídeo, sejam elas analógicas ou digitais (ABNT NBR 15604, 2007).
Aparelhos mais modernos também possuem interfaces de entrada e comunicação, tais como:
USB, Ethernet, Rede Sem-Fio, etc.
Vale ressaltar ainda que o terminal de acesso possui um sistema operacional sendo executado
na CPU (Central Processing Unit). Como o dispositivo foi fabricado para uma função
específica, ele pode ser considerado um sistema embarcado. Um sistema embarcado é
qualquer componente em um sistema maior que realiza seu processamento local (WOLF,
2002). Acima da camada do sistema operacional está localizada a camada do middleware.
19
O fato de o equipamento possuir um sistema operacional diferenciado possibilita grande
flexibilidade, tanto de aplicações, tanto de decodificações de áudio e vídeo. O tipo de URD
pode variar de acordo com a condução da codificação do canal. O SBTVD possui uma
condução de 13 unidades de segmento, conforme demonstrado na Figura 5.
Figura 5: Exemplo de transmissão hierárquica e recepção parcial (ABNT NBR 15604:2007).
Para haver a decodificação do sinal digital, é necessário uma URD ou também chamado de
terminais de acesso. Os terminais de acesso se dividem em duas categorias:
1. Full-Seg (utiliza todos os segmentos do canal):
São dispositivos capazes de decodificar informações de áudio, vídeo, dados etc.
contidas na camada do fluxo de transporte de 13 segmentos destinada ao serviço fixo
(indoor) e móvel. Receptores full-seg podem ser de dois tipos: integrado (dispositivo
de recepção de sinais de televisão digital integrado ao monitor, dispensando interfaces
de saídas dos sinais de áudio e vídeo) ou externo (Set-Top Box ou Conversor Digital
mostrado na Figura 6) e devem converter diferentes tipos de resoluções, conforme
mostrado na Tabela 5.
20
Figura 6: Exemplo de URD Full-Seg
2. One-Seg (utiliza apenas um segmento do canal)
Os receptores one-seg (exemplificado na Figura 7) devem obrigatoriamente pelo
menos suportar a decodificação de vídeo nos formatos: CIF (Common Intermediate
Format) com razão de aspecto de 4:3, QVGA (Quarter Video Graphics Array) e
SQVGA (Sub-QVGA), ambos com razão de aspecto de 4:3 e 16:9. Estes formatos de
vídeo são apresentados na Tabela 5 e 6, podendo, a critério do fabricante do receptor,
ser adicionadas outras resoluções.
Destinado para receptores móveis ou "handhelds", decodifica exclusivamente
informações de áudio, vídeo, dados etc., contidas na camada “A” localizada no
segmento central dos 13 segmentos. O middleware embarcado no receptor oneseg deve obrigatoriamente contemplar as especificações do Ginga-NCL standalone com máquina de execução LUA. A ponte com uma máquina Java é opcional.
Figura 7: Exemplo de URD One-Seg
21
Apresenta-se na Tabela 5 as diferentes especificações apresentadas pelo CPqD (Centro de
Pesquisa e Desenvolvimento em Telecomunicações) para os terminais de acesso (CPqD,
2006):
Tabela 5: Funções e opcionais em URDs (CPqD, 2006)
De acordo com a tabela de modelos apresentados na Tabela 5, o consumidor possui várias
alternativas de terminais de acesso de TV Digital. Os modelos vão aumentando
gradativamente em robustez, do básico ao avançado.
No modelo básico, o usuário tem a opção de um aparelho contendo simplesmente o
necessário para assistir aos programas transmitidos pela emissora em baixa qualidade. Um
dos pontos fracos deste modelo é a falta do middleware Ginga no equipamento, ou seja, não
há interação do usuário com a programação.
Diferentemente
do
modelo
anterior,
os
modelos
mais
avançados
já
possuem
o middleware instalado e, conseqüentemente, possuem interatividade, além de interfaces para
22
outros dispositivos (tais como: armazenamento externo, teclados, mouse, etc.) e saídas para
televisores de alta resolução (HDMI - High-Definition Multimedia Interface).
Conforme comentado anteriormente, as URDs trabalham com diferentes tipos de resoluções.
Na Tabela 6 são listados os diferentes padrões de resolução e sua obrigatoriedade:
Tabela 6: Resoluções obrigatórias e opcionais em
receptores de TV Digital (ABNT NBR 15604:2007).
As diferentes opções de formato possuem a finalidade de aumento de compatibilidade com
diferentes equipamentos e para que o telespectador possa usufruir da melhor qualidade de
imagem disponível.
Conforme apresentado na Tabela 6, nota-se que os formatos que são obrigatórios em
dispositivos Full-Seg possuem no final uma letra que indica o modo que a tela executa a
varredura de pixels na tela. As letras “i” e “p” indicam a freqüência com que as imagens são
projetadas na tela, mostrado na Figura 8. No formato entrelaçado (letra i, do inglês
interlaced), apenas metade das linhas de pixels da tela se acende a cada vez, enquanto a outra
metade permanece apagada formando a ilusão de uma resolução maior com apenas metade da
imagem formada. Isso ocorre alternadamente 60 vezes por segundo. Assim, cada linha se
acende 30 vezes a cada segundo, e a imagem é atualizada 30 vezes por segundo. (CLICRBS,
2008)
No formato progressivo (letra p), todas as linhas de pixels se acendem ao mesmo tempo 60
vezes por segundo. Isso significa que a imagem completa da cena é atualizada na tela 60
vezes por segundo. (CLICRBS, 2008)
23
Figura 8: Formato Entrelaçado e Progressivo (CLICRBS, 2008)
Apresenta-se nas Figuras 9 e 10, exemplos de diagramas em blocos dos terminais de acesso
que pode ou não estar embutido no aparelho de televisão. O sinal recebido, passa pelas
seguintes etapas (um diagrama mais detalhado pode ser visto também na Figura 15):
1 - Demodulação (sintonia e retirada do canal de freqüência);
2 - Demultiplexação (os fluxos de áudio, vídeo e dados são separados);
3 - Entrega do sinal aos decodificadores de áudio, vídeo e CPU.
Também são indicados alguns outros componentes, tais como: IR (interface de rede), CR
(controle remoto), CPU (unidade de processamento), RF (entrada e saída de sinais de
radiofreqüência) e entradas e saídas de vídeo.
24
Figura 9: Arquitetura interna de um Terminal de Acesso (BARBOSA et. al, 2008)
Figura 10: Arquitetura interna de um Terminal de Acesso (CPqD, 2006)
Os diagramas apresentados nas Figuras 9 e 10 mostram dois diferentes modelos de terminal
de acesso. Foram criados e desenhados pela PUC-Rio e CPqD, respectivamente. Não são
notadas muitas diferenças entre as arquiteturas, exceto o elo entre a CPU, onde se encontra o
sistema operacional e também o middleware, com a saída de vídeo e áudio. Tal elo é
essencial para ocorrer a comunicação entre o fluxo de imagem e áudio principal com o os
aplicativos executados no núcleo de processamento do terminal de acesso. Sem este elo, não
é possível incluir na tela de exibição a interfaces, menus, músicas, efeitos de som, entre
outros. Ou seja, a execução de todas as funções necessárias para a experiência completa dos
aplicativos interativos não seria viável no primeiro modelo. Diferentemente do primeiro
25
modelo, o segundo modelo possui um elo entre o núcleo de processamento e controle com o
"Processador Gráfico", ou seja, já há uma comunicação entre o middleware e a saída de vídeo
do equipamento, a qual será ligada ao televisor. Este elo torna possível misturar e fundir
imagens de diferentes fontes (fluxo de imagem principal e imagem gerada pelo aplicativo
sendo executado no CPU). Mesmo havendo este elo, não torna ainda completo todos os
módulos e fases necessárias para haver a experiência de interatividade completa com o
usuário, pois não há uma mixagem de som.
Os atuais middlewares existentes para Set-Top Box são (BECKER, 2004) (MORRIS, 2005)
(Veja Figura 11):
•
DASE (Digital Television Application Software Environment): Foi
desenvolvido como um padrão norte-americano para a camada
de middleware em Set-Top Box de TVs Digitais. O DASE utiliza uma
máquina virtual Java como mecanismo que facilita a execução de
aplicações interativas baseadas em Java, mas também permite o uso de
linguagens declarativas, usadas na Web, como HTML e JavaScript;
•
ARIB (Association
of
Radio
Industries
and
Businesses): O middleware japonês é padronizado pela organização ARIB.
Esse middleware é formado por alguns padrões, como o ARIB STD-B24
(Data Coding and Transmission Specification for Digital Broadcasting),
que define uma linguagem declarativa (BML – Broadcast Markup
Language) baseada em XML (Extensible Markup Language), e usada para
especificação de serviços multimídia para TV Digital. Outra especificação
do middleware é o ARIB-STD B23 (Application Execution Engine
Platform for Digital Broadcasting), baseada no padrão europeu (MHP), e
que permite a execução de aplicações interativas baseadas em Java;
•
MHP (Multimedia
Home
Plataform):
O
padrão
europeu
de middleware para TV Digital – busca oferecer um ambiente de TV
digital interativa, independente de hardware e software específicos, aberto
e inter-operável, para receptores e set-top box de TV Digital. Seu ambiente
de execução é baseado no uso de uma máquina virtual Java e em um
26
conjunto APIs que possibilitam aos programas escritos em Java, o acesso a
recursos e facilidades do receptor digital de forma padronizada. Uma
aplicação DVB (Digital Video Broadcasting) usando API Java é
denominada aplicação DVB-J. Além do uso da API Java, o MHP 1.1
introduziu a possibilidade de usar uma linguagem de programação
semelhante ao HTML, denominada DVB-HTML.
•
GINGA: O middleware brasileiro pode ser dividido em quatro macrosistemas principais: Ginga-NCL, Ginga-J (permitem o desenvolvimento
de aplicações seguindo dois paradigmas de programação diferentes:
declarativo e procedural), Ginga-CC e o Sistema Operacional (Linux).
Dependendo das funcionalidades requeridas no projeto de cada aplicação,
um paradigma possuirá uma melhor adequação que o outro. Nos capítulos
seguintes, o middleware Ginga será melhor detalhado.
Figura 11: Middlewares existentes atualmente
em terminais de acesso (SOUZA, 2008)
Para um melhor entendimento das funcionalidades do middleware brasileiro, no capítulo
seguinte será feito uma introdução ao Sistema Brasileiro de TV Digital (SBTVD), onde o
Ginga é o middleware.
27
4. O Sistema Brasileiro de Televisão (SBTVD)
Conforme pode ser visto na Figura 12, o SBTVD segue a tendência de outros middlewares e
seu funcionamento é particionado em camadas. Os padrões adotados são:
Figura 12: Camadas do Sistema Brasileiro de TV Digital (SOUZA, 2008)
São mostrados a seguir um detalhamento das camadas do SBTVD (Sistema Brasileiro de TV
Digital):
•
BST-OFDM (Band Segmented Transmission - Orthogonal Frequency
Division Multiplexing): Na modulação OFDM, divide-se o canal em
diversas sub-portadoras e transmite essas sub-portadoras paralelas umas
com as outras, e cada uma carrega uma porção da informação. Isto permite
que mesmo com interferências, somente uma pequena parte da informação
transmitida seja perdida e por isso tecnologia OFDM é mais imune a
interferências do ambiente. O BST é responsável pela segmentação de
banda, ou seja, torna viável o particionamento do espectro de 6 MHz em
três partes: video, áudio e dados.
•
MPEG-2 System (Moving Pictures Expert Group) - Camada de
Transporte: O padrão MPEG-2 também foi adotado na camada de
transporte em outros padrões, como o norte-americano e europeu. Esta
camada é responsável em conduzir o audio e vídeo em mídias frágeis e que
28
são sujeitas a perdas de dados, como a transmissão por antenas.
•
H.264 - Camada de Vídeo: Para que seja possível a visualização da
imagem, tanto em telas de alta resolução e também em aparelhos portáteis,
se faz uso de dois perfis do codec H.264. O perfil HP (High Profile) com
nível 4.0 (bit rate máximo de 25 Mbit/s) foi desenvolvido para
transmissões e armazenamento de vídeos em discos. Bit rate é a unidade de
quantidade de bits por segundo. Este padrão, além de ser utilizado em
transmissões de TV de alta definição, é adotado também nos discos de
Blu-Ray e HD DVD. O perfil BP (Baseline Profile) com nível 1.3 (bit rate
máximo
de
768
kbit/s)
é
destinado
a
aplicações
móveis
e
videoconferências. Seu uso é restrito a dispositivos com baixos recursos
computacionais. Vale salientar ainda que o uso do codec H.264, ao invés
do MPEG-2 é um dos diferenciais do padrão brasileiro com o padrão
Japonês (ISDB).
Na Tabela 7 são mostrados os dois perfis do H.264 utilizado no SBTVD:
Tabela 7: Perfis do H.264 (BARBOSA, 2008)
•
MPEG-4 HE-AAC (High Eficiency - Advanced Audio Coding) - Camada
de Áudio: Considerado por muitas pessoas o sucessor do MP3 (MPEG-1
Audio Layer 3), foi especificado no padrões MPEG-2 e MPEG-4.
Composto por um sistema que utiliza o método SBR (Spectral Band
Replication) para alta eficiência de codificação de áudio, tanto em
receptores fixos, assim como portáteis. Esta tecnologia leva em conta o
modelo psicoacústico humano, resultando um áudio de alta qualidade e a
geração de baixa taxa de bits.
29
Na Tabela 8 são mostrados os dois perfis do MPEG-4 HE-ACC utilizado
no SBTVD.
Tabela 8: Perfis do MPEG-4 HE-ACC (BARBOSA, 2008),
•
Ginga - Camada de Middleware: desenvolvido pela PUC-RIO e UFPB. É
responsável pela interatividade e interface da aplicação. Será visto com
mais detalhes no próximo capítulo.
•
Aplicações: É onde se encontram as aplicações enviadas pelo canal de
dados. Eles são executados de acordo com as necessidades e interesses do
telespectador.
30
5. O middleware brasileiro: Ginga
Conforme Ginga (2008), o nome foi escolhido porque é considerada uma qualidade, quase
indefinível de movimento e atitude que os brasileiros possuem e que é evidente no que fazem.
Isto inclui a forma como caminham, falam, dançam e se relacionam com tudo em sua
vida. Considerado também um movimento fundamental da capoeira, faz uma analogia com a
luta da liberdade e igualdade do povo brasileiro. O nome foi escolhido em reconhecimento à
cultura, arte e contínua liberdade deste povo. Conforme os autores do padrão de middleware,
o nome também faz uma menção aos anos de trabalho árduo da PUC-Rio e da UFPB, quando
romperam barreiras e conseguiu-se torná-lo a única inovação brasileira a compor o Sistema
Brasileiro de TV Digital (SBTVD).
Desde sua concepção, o Ginga levou em consideração a necessidade de inclusão social/digital
e a obrigação do compartilhamento de conhecimento de forma livre. Permitindo levar ao
cidadão todos os meios para que ele obtenha acesso à informação, educação à distância
(EAD) e serviços sociais apenas usando sua TV, o meio de comunicação onipresente no país.
O middleware Ginga leva em consideração a importância da televisão, presente na quase
totalidade dos lares brasileiros, como um meio complementar à inclusão social/digital. Ele dá
suporte para o que é chamado de "aplicações de inclusão", tais como T-Government, TBanking, T-Health e T-Learning. Tais serviços incluem o acesso a dados do governo
(imposto de renda, soliticação de documentos, etc.), serviços bancários (extratos,
transferências, etc.), serviços de saúde (marcar consultas, visualizar exames, etc.) e material
educacional (EAD, material educativo, etc.) à todas as classes sociais, ou seja, atingindo os
objetivos de inclusão digital e social de toda a população brasileira em potencial.
Adotado a licença GPLv2, possui especificação aberta, de fácil aprendizagem e livre
de royalties, permitindo que todos os brasileiros produzam conteúdo interativo. Isso dará
novo impulso às TVs comunitárias e à produção de conteúdo pelas grandes emissoras.
Ginga é a camada de software intermediária (middleware) que permite o desenvolvimento de
aplicações interativas para a TV Digital do Sistema Brasileiro de TV Digital (SBTVD) de
forma independente da plataforma de hardware dos fabricantes de terminais de acesso (SetTop Boxes).
31
Conforme Gustavo Gindre, coordenador-executivo do Instituto de Estudos e Projetos em
Comunicação e Cultura - INDECS e conselheiro eleito do Comitê Gestor da Internet no
Brasil - CGIbr, o Ginga foi a soma de dois middlewares: FlexTV (atualmente conhecido
como Ginga-J) e o Maestro (atualmente conhecido como Ginga-NCL) (OBSERVATORIO
DO DIREITO À COMUNICAÇÃO, 2007).
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), o Ginga reúne um
conjunto de tecnologias e inovações brasileiras, que o tornam uma especificação
de middleware mais avançada e, ao mesmo tempo, mais adequada à realidade do país.
Como visto anteriormente, o middleware Ginga pode ser divididos em quatro macro-sistemas
principais: Ginga-NCL, Ginga-J, Ginga-CC e Sistema Operacional . Dependendo das
funcionalidades requeridas no projeto de cada aplicação, um paradigma possuirá uma melhor
adequação
que
o
outro.
Apresenta-se
na
Figura
13 a
arquitetura
completa
do middleware Ginga.
32
Figura 13: Arquitetura do Middleware Ginga (OPENGINGA, 2008)
O middleware Ginga deve estar instalado em um Set-Top Box (STB), aparelho responsável
pela conversão do sinal digital e também pela execução das aplicações interativas. Logo,
todos os telespectadores deverão possuir um decodificador com o middleware Ginga
instalado, para que dessa forma possam usufruir de todos os benefícios que a TV Digital pode
lhes proporcionar.
De acordo com OPENGINGA (2008), o middleware é composto pelas seguintes bibliotecas :
33
•
libdirectfb-1.0-0: Biblioteca gráfica projetada tendo como alvo sistemas
embarcados. Oferece aceleração do hardware gráfico utilizando o mínimo
de recursos possíveis;
•
libdirectfb-dev: Arquivos necessários para compilar e associar programas
que utilizam DirectFB;
•
libdirectfb-extra: Provê pacotes extras ao DirectFB. Este pacote contém
os seguintes provedores adicionais: imagem PNG, imagem JPEG,
fonte FreeType, sistema X11;
•
liblua5.1-dev: Contém a implementação da linguagem Lua;
•
libxine-dev: Biblioteca que contém os arquivos de desenvolvimento
(cabeçalhos, documentação) para desenvolvedores da biblioteca do player
Xine. Suporta vídeo no formato MPEG-1 /2 e alguns tipos de AVI. Suporta
fluxos recebidos pela interface de rede, legendas e até mesmo arquivos no
formato MP3 ou OGG. Esta biblioteca é extensível através de plugins para
conteúdos de áudio e vídeo, entrada de mídias, demuxers, etc.
•
libxine1: Biblioteca de mídia do Xine;
•
libjpeg62-dev: Biblioteca de desenvolvimento para tratamento de arquivos
JPEG;
•
libfreetype6-dev: É um pacote de desenvolvimento de tipografia digital,
especialmente, para sistemas embarcados;
•
libwxgtk2.6-dev: Biblioteca de classes em C++ que provê componentes
GUI (Graphic User Interface) e outras funcionalidades em diversas
plataformas.
Este
pacote
é
necessário
para
a
compilação
de
programas WxWidgets;
•
libxvidcore4-dev: Biblioteca de desenvolvimento de codecs ISO MPEG4;
•
libx264-dev: Este pacote contém a biblioteca static e cabeçalhos usado
para construir programas que usam a libx264. A libx264 é uma biblioteca
avançada para a tratamento de fluxos de vídeo com codificação H.264
(MPEG-4 AVC);
•
libtiff4-dev: Biblioteca
desenvolvimento
que
prover
suporte
para TIFF (Tag Image File Format), um formato amplamente usando para
armazenamento
de
imagens.
Este
pacote
inclui
arquivos
de
desenvolvimento, biblioteca estática e arquivos de cabeçalho;
•
libxerces27-dev: Biblioteca de validação XML parser escrita em C++;
34
•
libopenthreads-dev: Biblioteca de desenvolvimento que provê um
mínimo
e
completo OO
(Object
Oriented) thread
interface para
programadores C++.
5.1 Ginga-NCL (Linguagem Declarativa)
Desenvolvido pela PUC-Rio para prover uma infra-estrutura de apresentação de aplicações
baseadas em documentos hipermídia escritos em linguagem NCL (Nested Conext Language),
com facilidades para a especificação de aspectos de interatividade, sincronismo espaçotemporal de objetos de mídia, adaptabilidade e suporte a múltiplos dispositivos (GINGANCL, 2008)
O Ginga-NCL utiliza uma linguagem declarativa. Uma das características da linguagem
declarativa é que ela descreve o que e não como seus procedimentos funcionam, ou seja,
descrevem propriedades da solução desejada, não especificando como o algoritmo em si deve
agir.
Em conjunto com a linguagem NCL, pode-se fazer uso também da linguagem Lua e
XHTML. Estes dois padrões serão vistos logo a seguir.
5.1.1 XHTML
O XHTML (eXtensible Hypertext Markup Language) é a união das tags HTML
(HyperText Markup Language) com as regas da XML (eXtensible Markup
Language). Este padrão é amplamente utilizado na internet para exibição de
páginas web em diversos dispositivos.
Pode-se fazer uso de ferramentas para verificar a correta estrutura e código de
arquivos XHTML utilizando um validador na página da W3C (World Wide Web
Consortium).
5.1.2 Lua
Lua é uma linguagem de programação muito leve e poderosa, sendo a única
linguagem desenvolvida por brasileiros, fora dos eixos EUA/Japão/Europa. Foi
35
desenvolvida na Tecgraf, na PUC-Rio, por Roberto Ierusalimschy, Luiz Henrique de
Figueiredo e Waldemar Celes, em 1993.
A motivação no Tecgraf para o desenvolvimento desta linguagem partia de uma forte
demanda para aplicações que fossem configuráveis externamente. Conseguindo isso,
pode-se dizer que é possível modificar diversos aspectos essenciais das aplicações
sem a necessidade de recompilar a aplicação. Esse tipo de configuração era muito
mais do que simples escolhas de tipo de fonte de texto, mas também era necessário
poder tomar decisões em tempo de execução que somente os usuários sabiam qual.
(CELES, 2008)
A partir daí, Lua tem se estendido pelo mundo inteiro, sendo muito utilizada para
programação em robôs e em jogos. Tudo isto facilitado pelo fato de ser de uso
gratuíto, além de código aberto, inclusive para aplicações comerciais. Outra vantagem
desta linguagem é, por ela ser de fácil aprendizado para qualquer programador, desde
que ele esteja ambientado com linguagens de script, orientadas à objetos ou
funcionais. No fundo, Lua pode ser tão simples ou tão complexa como se queira. ~
(CELES, 2008)
Basicamente, Lua é uma linguagem de extensão, ou seja, o código é programado
dentro de um código de outra linguagem (geralmente esta linguagem é C),
aprimorando e facilitando a programação, além de permitir uma prototipagem rápida e
um acesso programável pelo usuário à tecnologia implementada pela aplicação. Mas
sendo também muito usada como um interpretador stand-alone, onde o programa é
todo escrito em Lua, sem a necessidade do programador possuir conhecimento da API
C. Neste caso, as funções pré-definidas de Lua formam o ambiente de programação
através das bibliotecas padrão da linguagem, além de eventuais pacotes de extensão
que podem ser agregados.
As bibliotecas de Lua podem ser usadas em qualquer plataforma que tenha um
compilador compatível com o padrão ANSI, já que Lua foi desenvolvida
completamente em ANSI C.
Lua é uma linguagem que facilita muito a programação de aparelhos pequenos e
36
portáteis, já que apresenta um código compacto e modular, havendo a possibilidade de
remover componentes desnecessários.
Os chunks, como são chamados os trechos de código em Lua, podem ser précompilados para um formato binário e interpretado posteriormente.
Lua é muito usada para ligar linguagens e aplicações diferentes que possuem uma
interface com C. Sendo também, usada como linguagem de script de altíssimo nível.
Tanto a inteligência artificial de um robô como a inteligência em um jogo de
computador poderiam ter seu comportamento implementado facilmente em Lua.
Por ser muito simples, Lua reduz muito o trabalho dos programadores, sendo utilizada
em testes de algoritmos antes de suas implementações definitivas, além de servir
como uma linguagem de descrição de dados. (CELES, 2008)
5.2 Ginga-J (Linguagem Procedural)
Em desenvolvimento pela UFPB e SUN, o Ginga-J promete prover uma infra-estrutura de
execução de aplicações baseadas em linguagem Java, com facilidades especificamente
voltadas para o ambiente de TV Digital.
Atualmente, a linguagem procedural ainda não se encontra nos terminais de acesso devido a
problemas de royalties do uso do Java Virtual Machine. Sua implantação está prometida para
maio de 2009 (LUCA, 2008).
O Ginga-J é uma plataforma que utiliza outras APIs para o processamento de classes
compiladas. Estas, são consideradas como componentes e cada uma é definida para um tipo
de serviço, conforme descrito a seguir:
•
API Java: utilizada para apresentação, seleção de serviços, controle dos
gráficos na tela. Criada pela Sun Microsystems (SUN, 2008) e
desenvolvida
no
ambiente
J2ME
–
Plataforma
Java
2 Micro
Edition (JAVATV, 2008), sendo uma extensão da plataforma Java, é uma
API utilizada no desenvolvimento de conteúdo para Televisão Digital
37
Interativa, pois provê as funcionalidades necessárias em um terminal de
acesso.
A API apresenta um alto nível de abstração, isto é uma característica que
facilita no desenvolvimento, pois o desenvolvedor não se preocupa com as
camadas inferiores, que se referem aos protocolos de serviços, transmissão
e rede. Funciona como uma espécie de middleware, pois se situa entre o
sistema operacional e as aplicações.
Podem ser encontradas no Java TV, a JVM (Java Virtual Machine) e
várias bibliotecas destinadas a TVDI (TV Digital e Interativa), que contém
no terminal de acesso. Isso permite ao desenvolvedor escrever apenas uma
única vez o código, pois a JVM torna compatível para os receptores, sem
se preocupar em saber qual o hardware e software do equipamento. Esta é
uma das vantagem do Java, pois torna a aplicação portável e compatível
em vários ambientes.
O Java TV ainda oferece serviços e informações de serviços (SI – Service
Information), onde serviço pode ser considerado um programa de
televisão, ou seja, um conjunto de conteúdo (vídeo, áudio e dados) para
apresentação no terminal de acesso.
SI é uma coleção de informações que especificam o conteúdo dos serviços, que
são armazenadas em uma base de dados denominada SI database. Além disso, o
Java
especifica
pacotes
que
são
utilizados
para
o
desenvolvimento
de interfaces, navegação, serviços e transportes. Pode-se citar alguns exemplos,
como:
o
javax.tv.carousel: Fornece acesso a arquivos de radio difusão
e diretório de dados;
o
javax.tv.graphics: Permite que Xlets (programas em Java
específicos para TV Digital) possam obter seu repositório
principal;
o
javax.tv.locator: Oferece formas para referenciar dados ou
aplicativos acessíveis pela API JavaTV;
38
o
javax.tv.xlet: Provê interfaces para o desenvolvimento e
comunicação entre aplicações, oferecendo um gerenciamento
do mesmo.
•
API DAVIC (Digital Audio-Visual Council): Criada pela associação
DAVIC, especifica formatos de conteúdo para objetos como áudio, vídeo,
textos e hipertexto e ainda controla o acesso ao aplicativo e a língua
adotada (áudio e legenda);
•
API Havi (Home Audio Video): Criada por uma associação de companhias
de produto eletrônicos, com objetivo de atuar na apresentação e interface
gráfica do usuário, sendo mais robusta do que API Java Sun, ou seja, é
uma API que possui um padrão para interconexão e interoperação de áudio
e vídeo digital, a fim de interagirem entre si na rede. Além disso, pode
gerenciar a rede, a interface do usuário e a comunicação dos componentes.
Essa API permite que usuários controlem a aplicação através de botões de
um controle remoto (SILVA, 2005);
•
API DVB (Digital Video Broadcasting): API relacionada ao padrão
europeu DVB, necessária para segurança, acesso de dados e para
dispositivos de I/O (entrada/saída).
5.5 Ginga-CC (Common Core)
Oferece suporte básico para os ambientes declarativos (Ginga-NCL) e procedural (Ginga-J),
ficando entre os ambientes e o sistema operacional de forma que suas principais funções
sejam para tratar a exibição de vários objetos de mídia, tais como: JPEG, MPEG4, MP3, GIF,
entre outros formatos.
Fornece, ainda, o controle do plano gráfico para o modelo especificado para o SBDTV.
Também controla o acesso ao "Canal de Retorno", que é o módulo responsável por controlar
o acesso a camada de rede.
O Ginga-CC também é responsável pelos meios de obter conteúdos, através de
procedimentos e decodificadores de conteúdo unificado, sendo que esse conteúdo pode ser de
origem, tanto do Fluxo de Transporte que vem no carrossel de objetos (que será explicado
39
mais detalhadamente no capítulo 7), segundo a multiplexação de dados em MPEG-2 ST, ou
então pelo canal de comunicação com a Internet, também conhecido como canal de retorno.
Tanto o Ginga-CC, quanto uma aplicação residente, faz uso de chamadas ao sistema
operacional.
40
6. Ferramenta Disponibilizada para testes: Virtual Set-Top Box
O Ginga-NCL Virtual Set-top Box, também conhecido como Ginga-NCL Development SetTop Box (GINGA-NCL, 2008), consiste em um emulador virtual de um set-top box contendo
o middleware Ginga-NCL instalado. Ele foi desenvolvido pela PUC-Rio em linguagem Java,
e tem como base para seu funcionamento a distribuição Fedora (FEDORA, 2008) do Sistema
Operacional Linux.
Pelo fato desse emulador suportar apenas a parte voltada para a linguagem NCL
do middleware Ginga, aplicações baseadas em Java que utilizam Java TV, ainda não podem
ser executadas no Ginga-NCL Virtual STB. Porém, o middleware Ginga dá perfeitas
condições para os testes de aplicações baseadas em NCL.
O uso de NCL em aplicações para TV Digital Interativa proporciona uma maior facilidade na
construção de uma interface amigável para o telespectador, se comparada com Java,
justamente por se tratar de uma linguagem que utiliza documentos hipermídia. Porém, todo o
poder computacional que Java possui, não aparece na linguagem NCL, dificultando a
execução de determinadas operações como acesso a serviços a internet e banco de
dados. Para acesso à internet pelo Lua, por exemplo, necessita-se o uso de uma classe
específica chamada de TCP, o que ocorre de forma transparente no Java.
41
7. Canal de Retorno
Um assunto recorrente em muitas discussões é o canal de retorno dos URDs. Estes canais de
retorno já estão presentes em set-top boxes através de interface ethernet, como pode ser visto
nos equipamentos da Proview modelo XPS-1000 (Proview, 2008) e Zinwell modelo ZDS620S (Zinwell, 2008). Denota-se "Canal de Retorno" (Figura 14, item A) o canal de
comunicação de dados entre a URD e a nuvem, ou seja, o envio de dados ocorre em ambos os
sentidos e não apenas em um. Demonstra-se ainda na Figura 14, o canal de comunicação da
emissora com a nuvem (item B) e outros possíveis pontos de comunicação (item C). É de
extrema importância levar em consideração todos os possíveis pontos de comunicação dos
URDs, pois após a aplicação estar sendo executada na URD, ela tem a possibilidade de
trafegar seus dados pela nuvem, ou seja, o canal de comunicação pode conectar-se a um
serviço em um datacenter (ex: banco de dados, web services, etc.) e outras residências (ex:
P2P). Um diagrama mais detalhado é apresentado na Figura 15.
Figura 14: Possíveis formas de canais de comunicação
Na Figura 15 são apresentadas todas as fases de conversão, transmissão, recepção e formas de
comunicações existentes no Sistema Brasileiro de Televisão Digital. Partindo da emissora
(lado esquerdo), a imagem e som são gerados nos programas televisivos (estúdios ou mídias
gravadas) e os mesmos são codificados para os padrões do SBTVD (vide Tabela 7 e 8). Os
dados que serão enviados também são gerados pelo servidor de aplicativos da emissora. Na
fase da multiplexação (transmissão simultaneamente de dois ou mais fluxos em um mesmo
42
canal de transmissão), os três fluxos se transformam em apenas um a fim de proceder com a
transmissão do mesmo. Porém, antes da transmissão em si, o fluxo de dados multiplexados
precisa ser modulado (conversão para sinal analógico, possibilitando seu transporte por meio
de ondas portadoras, como ocorre, p. ex., na transmissão de dados por modem ou fax). O sinal
modulado então é enviado à antena emissora e se propaga no ar.
No lado direito são representadas as seqüências de processos que ocorrem dentro do terminal
de acesso (por exemplo: set-top box). O sinal é recebido por uma antena do tipo UHF (UltraHigh Frequency) na residência do telespectador e demodulado (processo que consiste em
extrair, de uma onda de RF modulada em amplitude, freqüência, ou fase, o sinal original
usado na modulação), dividindo um único fluxo em três novos: áudio, vídeo e dados. O áudio
e vídeo seguem diretamente para a tela de exibição, enquanto os dados seguem para
o middleware localizado na unidade de processamento do equipamento e se houver
necessidade irão se misturar ao áudio e vídeo do programa televisivo.
O aplicativo pode vir a exigir uma comunicação com algum serviço externo do equipamento.
Para isto, será necessário um canal de comunicação com a internet (nuvem). Este assunto tem
sido alvo de muita discussão, pois apenas 20% das pessoas no Brasil tem acesso à internet
(IBGE, 2007) e isto dificulta a interação do telespectador com os aplicativos interativos que
necessitam uma comunicação externa, tais como: enquetes, e-commerce, entre outros. A fim
de aumentar o número de telespectadores interativos, estudam-se vários formatos do canal de
comunicação com o objetivo haver uma melhor inclusão digital.
43
Figura 15: Sistema de transmissão e recepção de
TV Digital (Adaptado de BARBOSA, 2008)
Entre as várias formas de comunicações possíveis, as mais citadas até agora pelo governo e
fabricantes, são: linha de telefone (discada), rede sem-fio (wi-fi), ADSL (Asymmetric Digital
Subscriber Line), PLC (Power Line Communication), GSM/GPRS, CDMA2000/1xRTT e WiMAX.
44
A grande barreira para a escolha do melhor sistema é a inclusão digital de pessoas de baixa
renda.
Conforme Meloni (2007), uma da alternativa viável de canal de retorno seria a utilização da
tecnologia WiMAX-700, uma tecnologia que opera em frequências de 54 a 400MHz (VHF) e
de 400 a 960 MHz (UHF). Sua utilização possui várias vantagens, tais como: melhor
penetração de ondas dentro das residências, maior propagação (até 65KM) e baixo custo de
produção, pois utiliza peças já presentes em eletrônicos de entretenimento. A maior
propagação é um detalhe muito importante a ser observado, pois cidades de baixa densidade,
longe de emissoras, também seriam beneficiadas. Comparando-se as diferentes tecnologias
acredita-se que esta solução seja uma das
tendências em
canal
de
retorno.
No próximo capítulo será feito um melhor detalhamento do envio e recebimento dos dados
(datacasting), enviados juntos com os fluxos de áudio e vídeo.
45
8. Difusão de Dados
Conforme visto anteriormente, dentre os vários benefícios da TV digital em relação à
analógica, é o envio de dados em conjunto com a imagem e som. A capacidade de difundir
dados digitais que não sejam fluxos de áudio e vídeo nesse sinal é conhecida
como datacasting, e é o pilar da interatividade na televisão digital. É o datacasting que
permite às aplicações e demais dados correlacionados serem transmitidos. (PICCIONI et. al.,
2005)
Existem quatro mecanismos de datacasting, são eles (PICCIONI et. al., 2005): Data
Piping, Data Streaming, MPE (Multi-Protocol Encapsulation) e Carrosséis, sendo este
último subdividido em: Carrossel de Dados e Carrossel de Objetos. Os mecanismos de
carrossel de dados e carrossel de objetos são dois dos mecanismos mais utilizados para a
difusão de dados nos sistemas DVB, ATSC e SBTVD, por este motivo manterá-se o foco
apenas nestes mecanismos.
Ambos modelos de carrosséis são protocolos de difusão de dados definidos pelo padrão
DSM-CC (Digital Storage Media, Command and Control) (ISO/IEC 13818-6, 1996), a sexta
parte do conjunto de especificações MPEG-2. O DSM-CC foi originalmente desenvolvido
com o objetivo de fornecer funções semelhantes às presentes em aparelhos de vídeo cassete
para o controle de fluxos de áudio e vídeo de um fluxo de transporte. Posteriormente o DSMCC foi estendido e dividido em várias partes, com o intuito de fornecer, entre outras, funções
como seleção, acesso e controle de fontes distribuídas de vídeo e suporte para a
transmissão de dados através de fluxos de transporte.
O protocolo denominado carrossel foi desenvolvido com o intuito de possibilitar a difusão de
dados, de forma periódica, para set-top boxes. A idéia básica desse protocolo é de módulos de
dados difundidos ciclicamente, de modo que, quando o receptor necessitar determinado
módulo, deve apenas aguardar o instante de sua próxima repetição no fluxo de dados.
Na Figura 15 são apresentados os passos para o envio de arquivos pelo carrossel.
Representam-se nele, o carrossel em formato de círculo, os arquivos necessários para a
execução de um aplicativo no terminal de acesso (letras A, B e C) e as extremidades
(emissora e o terminal de acesso).
No primeiro momento, o Terminal de Acesso (TA) localizado no lado direito, não recebeu
nenhum arquivo da Emissora (lado esquerdo). Ao girar o carrossel, chega o momento do
46
arquivo A ser carregado e difundido (passo 2). Como o TA não possui ainda o arquivo A
registrado em sua memória, o arquivo recepcionado e mantido em sua memória de
armazenamento até completar o carregamento de todos os arquivos necessários para a
execução do aplicativo são recebidos. O mesmo processo se repete até o TA receber o
restante dos arquivos (passos 3 e 4). No passo 5, todos os arquivo já se encontram no TA e o
aplicativo está pronto para ser executado.
Na Figura 17 os mesmos arquivos são enviados, porém ilustra-se um problema no envio dos
dados entre a emissora e o TA. Diferentemente da Figura 15 no passo 5, o aplicativo não
encontra-se apto para ser executado, pois há falta de um dos arquivos necessários para sua
execução. O TA terá que aguardar a repetição do arquivo na próxima seqüência cíclica do
arquivo (passo 6) e carregar os arquivos ausentes em sua memória. No passo 7 representa-se
o momento em que o TA está apto a executar o aplicativo, pois todos os arquivo foram
recebidos e encontram-se íntegros.
47
Figura 16: Envio de dados por Carrossel
Figura 17: Tratamento de arquivo corrupto
Note que não há comunicação no sentido terminal de acesso - emissora, pois se torna
desnecessário e inviável neste modelo de envio de dados, pois não há um canal de
comunicação entre as duas extremidades.
Com a possibilidade de envio de arquivos audiovisuais e arquivos de dados no mesmo sinal
de transmissão, surge a possibilidade do envio de aplicativos para os terminais de acesso para
que o telespectador possa interagir com o programa televisivo. No capítulo seguinte, será
discutido o dispositivo responsável pela interação do telespectador com a televisão: o
controle remoto.
48
9. Interação
De acordo com as normas da ABNT (ABNT NBR 15604, 2007), que regulamenta os
receptores de TV Digital, são listadas as funções básicas do equipamento e sua interface
(física e virtual) com o usuário. São listadas na Tabela 9 algumas funções previstas para o
URDs.
Tipo de Receptor
Funcionalidade
Full-Seg
One-Seg
Opcional
Opcional
Obrigatório
Obrigatório
Closed-caption
Opcional
Opcional
Audiodescrição
Opcional
Opcional
Locução
Opcional
Opcional
Dublagem
Opcional
Opcional
Janela de LIBRAS
Opcional
Opcional
Opcional
Opcional
Recomendado
Recomendado
Botões de Controle de Volume
Opcional
Opcional
Botão do Guia de Programação
Opcional
Opcional
Opcional
Opcional
Recomendado
Recomendado
A. Acessibilidade
EPG (Eletronic Program Guide)
Classificação Indicativa
B. Controle Remoto (funções mínimas)
Botões Básicos (Liga/Desliga, Numéricos,
Seleção Sequencial de Canais)
C. Controle Remoto (funções interativas)
Botão Confirma
49
Botão Sair
Recomendado
Recomendado
Botão Voltar
Recomendado
Recomendado
Botões Direcionais (▲, ▼, ◄, ►)
Recomendado
Recomendado
Botões Coloridos
Recomendado
Recomendado
Botão de Informação sobre o evento
Recomendado
Recomendado
Botão Menu
Recomendado
Recomendado
Tabela 9: Funcionalidades mínimas previstas para os URDs.
As funcionalidades não se limitam às citadas na Tabela 9, pois a norma prevê interfaces
digitais de alta velocidade, são elas: porta USB 2.0 (Universal Serial Bus Specification 2.0),
IP (ethernet) e serial.
Nenhuma das interfaces é obrigatória, porém aumenta extremamente as possibilidades do
usuário a fazer uso de dispositivos dos mais variados tipos em conjunto com o equipamento.
O uso de outros dispositivos (além do controle remoto) incluem (CPqD, 2006):
teclado, mouse, joystick, impressora, modem, armazenamento, entre outros. Mesmo havendo
a citação destes dispositivos nos documentos do CPqD, os mesmos não são mencionados nas
normas brasileiras (ABNT).
As diferentes possibilidades de conexões do equipamento favorece a criação de novos
dispositivos específicos para TV Digital, bem como o uso de tecnologias já existentes
(teclado, mouse, etc.).
50
10. Conclusões
A demanda por estudos relacionados à TV Digital aumenta a cada dia no país, visto que será
implementada a transmissão digital em outros estados e interior dos que já possuem na
capital. Este trabalho procurou reunir o maior número de informações possíveis que são
relevantes ao funcionamento da TV Digital, sua interação, demonstrar o estado-da-arte da TV
digital no Brasil e o que é essencial compreender a respeito do assunto para seu
aprofundamento.
Os benefícios trazidos pela TV digital às casas dos brasileiros, incluindo a melhoria de
qualidade de som e imagem, como também a inclusão de novas funcionalidades
(interatividade) são pontos decisivos para a aceitação dos telespectadores e a rápida
digitalização da televisão.
O padrão adotado pelo Brasil, chamado de SBTVD (Sistema Brasileiro de TV Digital), é
baseado no padrão japonês ISDB e adaptado às necessidades brasileiras e às tecnologias mais
recentes no mercado e seu middleware, Ginga, evolui com muita velocidade.
Dividido em duas partes distintas, o Ginga compreende dois paradigmas de programação
diferentes. Integrando o Ginga-J com o Ginga-NCL, oferece-se ao desenvolvedor da
aplicação de TV digital a possibilidade de trabalhar tanto com uma linguagem procedural,
quanto com uma declarativa.
No primeiro semestre de 2008, foi lançada oficialmente a parte procedural do middleware e
este se faz necessário difundir o conhecimento frente à demanda nacional e internacional de
profissionais.
Ainda em um momento de “imaturidade”, a TV digital no Brasil não possui ainda
interatividade devido a royalties pelo uso da máquina virtual Java. Uma versão definitiva
deverá ser disponibilizada na metade de 2009 pelos órgãos competentes e só então será
possível desfrutar de todas as maravilhas que a TV digital proporciona.
51
11. Trabalhos Futuros
Pretende-se como trabalhos futuros um estudo mais aprofundado sobre as possibilidades,
formas, metodologias, paradigmas, barreiras e dispositivos de interação (periféricos), levando
em consideração sua facilidade, praticidade e compatibilidade com o telespectador e os
aplicativos televisivos.
Conforme MIRANDA (2008), existem diversos trabalhos a respeito de aplicativos complexos
e o uso do limitado controle remoto para a interação homem-máquina. Uma forma de
solucionar este tipo de problema, conforme o autor, é o uso de novos dispositivos físicos de
interação. Tais dispositivos são demonstrados na Figura 18 de forma bastante completa. No
ponto mais central são explicitados os autores que podem contribuir diretamente com o
desenvolvimento de novos artefatos físicos de interação (camada contribuição) e que
possuem interesses e/ou expectativas acerca desse desenvolvimento (camada comunidade).
A TV Digital ainda está muita “imatura” e a interatividade ainda não está completamente
funcional no Brasil. Muito há ainda a se pesquisar e criar com o SBTVD e sua arquitetura
aberta se torna uma grande ferramenta de inclusão digital.
Será que o futuro da TV Digital Interativa se resumirá a controles remotos arcaicos e
desajeitados e menus complexos sem usabilidade?
52
Figura 18: Diagrama – Novos Dispositivos
Físicos de Interação com a TVDI (MIRANDA et al., 2008).
53
12. Referências Bibliográficas
ABNT NBR 15604 - Associação Brasileira de Normas Técnicas, "Televisão digital
terrestre - Receptores", Sistema Brasileiro de TV Digital Terrestre, NBR 15604, 2007.
BARBOSA, S. D. J. SOARES, L. F. G. TV Digital Interativa no Brasil se faz com Ginga:
Fundamentos, Padrões, Autoria Declarativa e Usabilidade. Em T. Kowaltowski e K.
Breitman (orgs.) Atualizações em Informática 2008. Rio de Janeiro, RJ: Editora PUC-Rio,
2008. pp. 105-174
BARBOSA, S. D. J. SOARES, L. F. G. TV Digital Interativa no Brasil se faz com Ginga:
Fundamentos,
Padrões,
Autoria
Declarativa
e
Usabilidade.
Disponível
em: http://www.ncl.org.br/documentos/JAI2008-ppt.pdf, acesso em: Out/2008.
BAKKEN, D. E. Middleware Encyclopedia of distributed computing, Kluwer Academic
Press, 2001.
BBC. British Broadcasting Corporation. Disponível em: http://www.bbc.co.uk/info/,
acesso em: Nov/2008.
BECKER, V.; VARGAS, R.; GUNTER FILHO, ; MONTEZ, C. Júri Virtual I2TV: Uma
Aplicação para TV Digital Interativa Baseada em JavaTV e HyperProp. In webmídia
2004, Ribeirão Preto. Proceedings WebMedia & LA-Web 2004, 2004. v. 2. p. 12-19.
CELES,W. FIGUEIREDO, L. H. IERUSALIMSCHY, Roberto A Linguagem Lua e suas
Aplicações em Jogos. Disponível em: http://www.tvdi.inf.br/ upload / artigos / tutorial_sobre
_lua.pdf, acesso em: Set/2008.
CLICKRBS TV digital: como escolher um televisor. Disponível em: http://www.clicrbs.
com.br/ especial/ rs/ tecnologia/ noticia/ detalhe/ TV-digital: - como – escolher – um televisor.html, acesso em: Out/2008.
54
COSTA, L. CARNEIRO, L. G. DORNELLES, M. KIST, C. CÍRIO, M. PEREZ, M. F.
ADAMSKI, R. SET: as novas relações da mídia com o Público. Jornal Hipertexto / Jornal
da Famecos/PUCRS. Edição Ano 10, Nº 66. Set/2008.
CPqD Arquitetura de Referência Sistema Brasileiro de Televisão Digital Terrestre
FUNTTEL.
Disponível
em:
http://itvproducoesinterativas.com.br/pdfs/relatorios/
Modelo_de_referencia_SBTVD-ANEXO1_arquitetura_referencia_sbtvd.pdf,
acesso
em:
Ago/2008.
EMBRATEL Lançamento
do
Satélite
Star
One
C2.
Disponível
em:
http://satelitec2.embratel.net.br/hdtv-tv-digital-star-one-c2.html, acesso em Ago/2008.
FEDORA Fedora
Project. Disponível
em:
http://www.fedoraproject.org,
acesso
em
Ago/2008
FLORES, V. F. FAUST, R. PIMENTA, M. S. Definindo uma Proposta para Avaliações de
Usabilidade de Aplicações para o Sistema Brasileiro de TV Digital, Anais do IHC
(Simpósio Brasileiro de Fatores Humanos em Sistemas Computacionais) 2008, pág. 88-97.
PUCRS.
FSBTVD Fórum do Sistema Brasileiro de TV Digital Terrestre. Disponível
em: http://www.forumsbtvd.org.br/, acesso em: Ago/2008.
GINGA. Middleware Ginga. Disponível em: http://www.ginga.org.br/, acesso em
Ago/2008.
GINGA-NCL Virtual Set-top Box. Disponível: http://www.ncl.org.br/ferramentas/fedorafc7-ginga-i386.zip, acesso em: Ago/2008.
IBGE, Instituto Brasileiro de Geografia e Estatística - IBGE. Pesquisa Nacional por
Amostra de Domicílios PNAD 2007 [S.l.], 2007.
ISO/IEC 13818-6 - Organization for Standardization. Coding of Moving Pictures and
55
Associated Audio- Extension for Digital Storage Media Command and Controls.
Disponível em: http://www.iso.ch/cate/d25039.html, acesso em: Out/2008.
JAVATV. JavaTV API. Disponível em http://java.sun.com/products/javatv/index.jsp, acesso
em Out/2008.
LUCA, C. TV Digital: Sun cumpre o prazo de entrega da especificação Java - Futurecom
2008. Disponível em: http://www.convergenciadigital.com.br/cgi/cgilua.exe/sys/start.htm?
infoid=16507&sid=80, acesso em Out/2008.
MELONI, L. G. P. Return Channel for the Brazilian Digital Television SystemTerrestrial, Journal of the Brazilian Computer Society, no. 1; Vol. 13; Mar. 2007, ISSN
0104-650
MIRANDA, L. C. PICCOLO, L. S. G. BARANAUSKAS, M. C. Artefatos Físicos de
Interação com a TVDI: Desafios e Diretrizes para o Cenário Brasileiro. Anais do IHC
(Simpósio Brasileiro de Fatores Humanos em Sistemas Computacionais) 2008, pág. 60-69.
PUCRS.
MORRIS, S. SMITH-CHAIGNEAU, A. Interactive TV Standards: A Guide to MHP,
OCAP, and Java TV. Focal Press, 585p. 2005.
OBSERVATÓRIO DO DIREITO À COMUNICAÇÃO TV digital: uma farsa chamada
ISDTV. Disponível em: http://www.direitoacomunicacao.org.br/novo/content.php?option=
com_content&task=view &id=361, acesso em: Set/2008.
OPENGINGA. Ginga-j. Disponível em: http://www.openginga.org/, acesso em: Set/2008.
PICCIONI,
C. BECKER,
V.
MONTEZ, C.
HERWEG,
G.
H. Datacasting
e
Desenvolvimento de Serviços e Aplicações para TV Digital Interativa. In: TEIXEIRA,
Cesar Augusto Camilo; BARRÉRE, Eduardo; ABRÃO, Iran Calixto. (Org.). Web e
Multimídia: Desafios e Soluções. Poços de Caldas, 2005, v. 01, p. 01-30.
56
PROVIEW, 2008 Grupo Proview, Disponível: http://www.zinwell.com.br/, acesso em:
Out/2008
SILVA, J. Q. TV Digital Interativa. São Leopoldo: Unisinos. Monografia, Curso de
Especialização em Redes de Computadores, Centro de Ciências Exatas e Tecnológicas,
Universidade do Vale do Rio dos Sinos. 56p. 2004.
SOUZA, G. L. SOARES, L. F. G. Interactive Television in Brazil. Disponível
em: http://www.ncl.org.br/documentos/EuroiTV2007S.pdf, acesso em: Ago/2008.
SUN. Sun Microsystems. Disponível em http://www.sun.com/, acesso em Out/2008.
WOLF, W What is embedded computing? Revista Computer, Edição Jan 2002, Volume:
35, p.136-137
ZINWELL, 2008 Zinwell do Brasil, Disponível em: http://www.zinwell.com.br/ Acesso em:
Out/2008 57

Documentos relacionados

TV DIGITAL INTERATIVA NO BRASIL: ATÉ QUANDO ESPERAR?

TV DIGITAL INTERATIVA NO BRASIL: ATÉ QUANDO ESPERAR? portabilidade das aplicações, permitindo que sejam transportadas para qualquer receptor digital (ou set top box) que suporte o middleware adotado. Essa portabilidade é primordial em sistemas de TV ...

Leia mais