Anda di halaman 1dari 56

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas

Jorge Fernandes1,2, Guido Lemos3 e Gledson Silveira3


1 2

Departamento de Cincia da Computao Universidade de Braslia (jhcf@cic.unb.br). Afastado do Departamento de Informtica e Matemtica Aplicada da Universidade Federal do Rio Grande do Norte. 3 Departamento de Informtica da Universidade Federal da Paraba (guido@di.ufpb.br, gledson@dimap.ufrn.br).

Abstract This text presents an overview of Interactive Digital Television Systems (IDTV) aimed for introducing computing students and professionals in the field. The architecture, protocols, and middleware standards for IDTV systems comprise the theoretical view. Practical aspects are approached through the demonstration of steps necessary for construction and use of a simplified test platform to be employed for initial development of Interactive Digital Television applications. Resumo Este texto apresenta uma introduo terico-prtica Televiso Digital Interativa (TVDI), para profissionais e estudantes de computao. Aspectos tericos so abordados atravs da apresentao de arquiteturas, protocolos e padres de middleware para sistemas de TVDI. Aspectos prticos so introduzidos atravs da descrio e demonstrao de como montar e utilizar uma plataforma de testes simplificada, capaz de permitir o desenvolvimento bsico de aplicaes para TVDI.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 1 de 1 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas Tabela de Contedos
1. Introduo 2. Conceitos Bsicos e Histrico 2.1 A Imagem em Movimento e o Olho Humano 2.2 Imagem Televisiva e Padres de TV Analgica 2.3 A Televisiva de Alta Definio 2.4 O Surgimento da TV Digital 3. Arquitetura de Sistemas de TVDI 3.1. Arquitetura de Software e Sistemas 3.2. Detalhes Arquiteturais de um Sistema de TV Atual 3.3. Arquitetura Bsica de um Sistema de Televiso Digital 3.4. Novos Conceitos Introduzidos do Modelo de TV Digital 3.5. Arquitetura de Sistemas de TV Digital Pseudo-Interativa 3.5. Arquitetura do STB Interativo 3.5. Arquitetura do Gerador de Carrossel 4. Padres para TVDI 4.1. Padres Mundiais de TVDI 4.2.1. DVB 4.2.2. ATSC 4.2.3. ISDB 4.3. Padres para Modulao e Transmisso 4.4. Padro para Multiplexao e Transporte 4.5. Padres para Codificao e Compresso 5. Padres de Middleware 5.1. Blocos Fundamentais 5.1.1. DAVIC 5.1.2. HAVi 5.1.3. Java TV 5.2. Padres de Midlleware para TVDI 5.2.1. DVB
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

6 8 8 8 9 9 10 10 11 13 15 16 19 20 21 22 23 25 26 28 30 34 35 36 37 38 39 41 41
Pgina 2 de 2 -

5.2.2. DASE/ATSC 5.2.3. ARIB/ISDB 6. Prtica em Desenvolvimento de Aplicaes para TVDI 6.1. Uma plataforma de desenvolvimento de Software para TVDI 6.2. Uma plataforma pessoal para desenvolvimento DVB-J/MHP. 6.3. Uso de Emuladores 6.4. O Emulador de Xlets da Espial 6.4. Um Exemplo de Xlet: QuizXlet. 7. Concluses e Agradecimentos Referncias

41 42 42 42 43 44 44 47 53 54

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 3 de 3 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Sobre os Autores
Gldson Elias recebeu o ttulo de Doutor em Cincia da Computao pelo Centro de Informtica (Cin) da UFPE, em 2002. A sua tese apresenta um framework para distribuio, gerenciamento e evoluo de sistemas de software baseados em componentes, explorando conceitos de engenharia de software e sistemas distribudos. Professor Adjunto no Departamento de Informtica da UFPB. No perodo de 1993 a 1996, foi Coordenador Tcnico dos Projetos: A Rede de Pesquisa da UFRN; Implantao do Ponto de Presena da RNP no RN; e Internet/RN Integrao da Comunidade Cientfica do RN, onde atuou na implantao da Internet no Estado do Rio Grande do Norte e na UFRN. Foi participante ativo na sede do Projeto RNP em Campinas de 1991 a 1993. Ocupou cargos de Direo e Assessoria na UFRN. Leciona na graduao e psgraduao em cursos como redes de computadores, redes de alta velocidade, gerncia de redes, redes mveis e sem fio, arquitetura TCP/IP, middleware, e sistemas operacionais. Pesquisa nas reas de redes de computadores, sistemas distribudos e engenharia de software. Nestas reas est avaliando protocolos de roteamento para redes mveis ad hoc utilizando o simulador NS2; concebendo uma arquitetura de mobilidade para a UFRN; desenvolvendo aplicaes para dispositivos mveis e televiso interativa usando J2ME e JavaTV; desenvolvendo uma plataforma de distribuio de vdeo sob demanda; desenvolvendo um ambiente de execuo para componentes JavaBeans; e desenvolvendo um ambiente para busca e recuperao de componentes em repositrios distribudos. Participa como pesquisador colaborador de projetos de pesquisa com outras instituies como: InfraVida (UFPE) desenvolvendo um sistema de videoconferncia com aplicao em telemedicina; e I2TV/HiTV (UFPB) - desenvolvendo um middleware para televiso digital interativa. Atua ainda no Grupo de Trabalho RNP de Vdeo Digital 2003/2004, onde realiza a coordenao local da equipe de Natal. Guido Lemos de Souza Filho Doutor em Informtica pela Pontifcia Universidade Catlica do Rio de Janeiro (PUC-RIO) e atualmente trabalha como professor do Departamento de Informtica da UFPB. um dos autores do livro "Redes de Computadores: das LANs, MANs e WANs s Redes ATM", best seller da Editora Campus com mais de 35.000 exemplares vendidos. Possui mais de 70 publicaes em diversas conferncias nacionais e internacionais nas reas de redes de computadores e sistemas multimdia. Coordena os projetos ICSpace e I2TV financiados pelo CNPq, e HiTV financiado pela FINEP. Nestes projetos esto sendo realizadas pesquisas nas reas de Televiso Digital, Museus Virtuais, Vdeo sob Demanda, Videoconferncia e Redes de Alta Velocidade. diretor executivo do LARC (Laboratrio Nacional de Redes de Computadores) e coordenador da Comisso Especial de Sistemas Multimdia e Hipermdia da SBC (Sociedade Brasileira de Computao). tambm coordenador do Grupo de Trabalho de Vdeo Digital da RNP, onde atua na organizao dos experimentos com vdeo digital no projeto Internet2 Brasil. Contribui para o projeto do Sistema Brasileiro de Televiso Digital (SBTVD) participando do Grupo de Trabalho sobre Servios, Aplicaes e Contedo (GTSAC). Jorge Fernandes Doutor e Mestre em Informtica pelo Centro de Informtica da UFPE. Est afastado do Departamento de Informtica e Matemtica Aplicada da UFRN,
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 4 de 4 -

atualmente atuando no Departamento de Cincia da Computao da Universidade de Braslia. Possui mais de 18 anos de experincia em educao, pesquisa, desenvolvimento e consultoria em engenharia de software e sistemas, tendo desenvolvido vrios softwares e atuado em consultoria de projetos de tecnologia da informao e desenvolvimento de software de pequeno, mdio e grande porte. Leciona em cursos de graduao e psgraduao em engenharia de software, sistemas de informao, reengenharia de processos, arquitetura de software, tcnicas de programao e programao para dispositivos mveis. Foi autor e apresentador de vrios cursos, mini-cursos e treinamentos em eventos locais, regionais e nacionais, entre eles alguns promovidos pela SBC, como Jornada de Atualizao em Informtica da SBC 1998 (Ciberespao), Jornada de Atualizao em Informtica da SBC 1996 (Introduo Java), Simpsio Brasileiro de Banco de Dados 2000 (Integrao com Java e Banco de Dados) e Simpsio Brasileiro de Sistemas Multimdia e Hipermdia 2000 (Sistemas Multimdia com JMF Java Media Framework). Possui extensa experincia de educao e treinamento em outros temas como programao para dispositivos mveis, reuso de software, mtricas de qualidade de cdigo, padres de design, metodologias e processos iterativos de desenvolvimento de software. Atua em projetos de pesquisa e desenvolvimento nas reas de Engenharia de Software, Vdeo e Televiso Digital, como: BLNET Desenvolvimento de Prottipo de Servio de Acesso em Banda Larga Internet usando Plataforma de TDVI; HiTV Software e Hardware para Televiso Digital de Alta Definio e I2TV Infra-estrutura Internet2 para Sistemas de Televiso Digital Interativa. Possui ainda interesse em reas como Educao em Informtica, Divulgao Cientfica e Modelos de Transferncia de Tecnologia.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 5 de 5 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

1. Introduo
A televiso, como os outros meios de comunicao de massa, segue a tendncia mundial do movimento de convergncia digital, que a fuso entre os mercados de mdias e Tecnologias da Informao e Comunicao (TICs), atravs de um acelerado processo de substituio de suas plataformas analgicas por plataformas e tecnologias digitais interoperveis. Onde e quando ocorre, a convergncia digital provoca grandes mudanas na cadeia de produo e consumo de mdias. A ttulo de exemplo, podemos dizer que a produo de filmes, jornais e software, que antes empregava processos produtivos diversos, tende hoje a empregar a mesma gama de profissionais e atividades. Transformaes similares ocorrero tambm com a transio da TV analgica para a TV digital (BroadcastPapers, 2004a), que j est ocorrendo, em trs ondas de impacto, que ocorrero inclusive no Brasil. A primeira onda de impacto, j sentida internamente por vrias redes de TV brasileiras, a necessria substituio dos equipamentos de captura, edio e transmisso interna de udio e vdeo analgicos, por similares digitais, visando melhoria da imagem e som. A segunda onda de impacto, a ser sentida pelo conjunto da sociedade, a necessria adoo de um padro uniforme para codificao, transmisso, modulao, difuso e recepo digital de programas. No Brasil, este impacto maior nos sistemas de TV Digital Terrestre (DTT Digital Terrestrial Television), comumente usado nos centros urbanos, onde o maior desafio a escolha tcnica-econmica-social-poltica do formato de modulao de sinais (BroadcastPapers, 2004c). Est em discusso no pas a definio do padro a ser adotado para DTT, sendo as opes os padres ATSC (americano), DVB (europeu), ISDB (japons), alm do padro chins que ainda est em desenvolvimento. Todos os padres para o sistema de transmisso que esto sendo avaliados convergem com relao ao formato adotado para a codificao digital dos dados a serem transmitidos: o padro ISO MPEG-2. Este padro, que na realidade define no uma, mas um conjunto de normas, divide-se em MPEG Vdeo, MPEG udio e MPEG Sistema. O MPEG Vdeo define mtodos para compresso e codificao de vdeo digital com diferentes expectativas de qualidade, dentre elas, SDTV (Standard Digital Television) e HDTV (High Definition Digital Television). O MPEG Sistema define formatos e protocolos para montagem de pacotes para transmisso de fluxos elementares multiplexados. Os fluxos elementares transportam streams de vdeo, udio ou dados. Porm, a escolha deste padro, apesar de importante, representa apenas a ponta de um iceberg, pois, segundo a ABERT/SET, o impacto da escolha representa menos de 4% do custo dos aparelhos receptores, e se d apenas sobre os equipamentos moduladores e demoduladores no conjunto de equipamentos das estaes transmissoras e retransmissoras, onde segundo (CPqD, 2001), o pas conta com pouco mais de 15 mil estaes emissoras e retransmissoras, incluindo-se tanto as efetivamente em operao quanto as planejadas. A terceira onda de impacto da TVD, a ser sentida aps a adoo do padro de DTT, a necessidade de desenvolvimento de novos modelos de negcios que (i) estimulem a populao a investir em equipamentos de TV de nova gerao, e (ii) permitam s redes obter retorno sobre os investimentos efetuados. No Brasil existem
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 6 de 6 -

atualmente cerca de 56 milhes de aparelhos de televiso, cobrindo mais de 90% dos domiclios brasileiros. Mesmo os brasileiros mais humildes, que no tm poder aquisitivo para adquirir um aparelho, assistem televiso atravs de aparelhos disponveis em locais de acesso pblico. Como conseqncia, a rede de distribuio de contedo televisivo tem a caracterstica singular de atingir a quase totalidade da populao brasileira sendo, portanto, um dos principais fatores de integrao nacional. Segundo esta viso, os recursos aplicados pelas cadeias de TV e pela audincia televisiva devem ser encarados como investimentos que permitem a explorao gerao de novos negcios. A maior expectativa de retorno reside na interao. O canal de dados do MPEG-2 torna possvel a agregao de elementos de interao aos programas de televiso tornando-os interativos. A possibilidade de interao coloca como requisitos para o aparelho receptor de televiso capacidade para processar o cdigo que define os elementos de interao, o cdigo do programa de tv interativo, e enviar o resultado da interao atravs de um canal de retorno para a estao emissora do programa interativo. A estao, conseqentemente, tambm precisa estar equipada com hardware e software adequados para dar suporte aos programas interativos. Espera-se tambm que a rede difusora de TV se associe a outras redes de transporte de informaes dando aos telespectadores capacidade para interagir influenciando nos programas que ir assistir. Em uma etapa mais avanada, espera-se que a rede de difuso de vdeo digital se torne uma das inmeras redes que formam a imensa inter-rede que a Internet. Em suma, quando a TV se tornar interativa (TVDI), espera-se que a mesma venha a associar imenso apelo e penetrao com capacidade de interao instantnea com milhes de telespectadores e com uma vasta cadeia de produtores de contedo. Portanto, preciso entender a TVDI como um novo meio a ser explorado que, no mundo e no Brasil, s obter sucesso atravs do desenvolvimento de novas aplicaes, reorganizao das cadeias de produo televisiva, gerao de negcios e de transformaes sociais neste nosso imenso pas. Porm, a transio da TV analgica para a TV digital se dar no curto, mdio e longo prazo, porque no razovel esperar que os usurios troquem seus aparelhos receptores analgicos por digitais quando o sistema digital se tornar disponvel. Prev-se um perodo de transio de cerca de 15 anos onde as difusoras devero transmitir sua programao simultaneamente nas formas analgica e digital (simulcast). Outra soluo usada tambm para suavizar a transio o uso de uma unidade conversora de sinais transportando vdeo digital (que sero recebidos da estao) para sinais com vdeo codificado na forma analgica, que compatvel com o sinal esperado pelos aparelhos receptores analgicos. Este conversor est sendo usualmente denominado Set-top Box (STB ou URD Unidade de Recepo e Decodificao). O nome set-top box vem do ingls caixa que fica sobre a TV. Cabe ressaltar que o hardware e o software deste equipamento ser totalmente incorporado ao aparelho receptor de televiso digital. Este captulo apresenta, do ponto de vista de profissionais de computao, uma introduo terico-prtica TV Digital Interativa. A parte terica composta pelas sees 2 - Conceitos Bsicos e Histrico, 3 - Arquitetura de Sistemas de TVDI, 4 - Protocolos de TVDI e 5 - Padres de Middleware. A parte prtica apresentada na Seo 6 - Prtica em Desenvolvimento de Aplicaes para TVDI. A Seo 7 apresenta as concluses do captulo e indica prximos passos a serem seguidos por profissionais e estudantes que desejam se aprimora por um tema atual, relevante e cheio de possibilidades.
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 7 de 7 -

2. Conceitos Bsicos e Histrico


Nesta seo sero apresentados conceitos bsicos sobre televiso analgica e digital. Estes conceitos sero introduzidos tomando por base uma apresentao sucinta dos principais sistemas de televiso analgicos para que se possa entender onde os melhoramentos historicamente introduzidos pelos sistemas digitais. 2.1 A Imagem em Movimento e o Olho Humano Fisicamente, uma imagem definida por ondas eletromagnticas refletidas, refratadas ou geradas por objetos localizados em uma determinada regio do espao que so percebidas por clulas especiais (bastonetes e cones) localizados no olho humano. As clulas funcionam como pequenos aparelhos receptores de ondas eletromagnticas com freqncia variando entre 4,3 1014Hz (vermelho) e 7,5 1014Hz (violeta). O processo de recepo de imagens pelo olho extremamente complexo, mas pode ser modelado por um parmetro denominado persistncia da viso, que uma propriedade que o sistema de recepo visual possui de reter por um certo tempo a impresso de uma imagem que j passou. Com isto o olho humano age como um integrador e permite que uma sucesso de imagens paradas possa ser compreendida pelo crebro como uma imagem contnua. Para se produzir as imagens em movimento necessrio se justapor uma seqncia de imagens separadas por um determinado intervalo de tempo que funo das propriedades de persistncia da viso. Na produo de um filme, por exemplo, a filmadora nada mais que uma cmara fotogrfica que tira fotografias sucessivas de uma cena, em uma frequncia conhecida como frequncia de amostragem, armazenando estas fotografias em um filme. Para que o olho humano perceba a sensao de movimento nos objetos contidos em uma cena so necessrias pelo menos 15 imagens por segundo, porm a percepo s atinge uma qualidade ideal com 30 imagens (ou quadros) por segundo. 2.2 Imagem Televisiva e Padres de TV Analgica Nos monitores de televiso, as imagens so produzidas por um processo que se baseia no bombeamento de energia para tomos de fsforo que, ao serem excitados, emitem ftons (luz) e voltam ao estado de equilbrio. Deste modo, as imagens so acesas na tela do monitor, que em seguidas apagam quando o fsforo volta ao estado equilbrio. Sendo acesas novamente em um processo contnuo. Percebe-se ento que a tela do monitor cintila (acende e apaga) com uma determinada freqncia. Para que o olho no perceba a cintilao necessria uma freqncia de pelo menos 50 refrescamentos por segundo. Existem vrios padres de sistemas de televiso, como o M, N, BGH, entre outros. Esses padres especificam as caractersticas da imagem, como nmero de pontos por linha, nmero de linhas por quadro, nmero de quadros por segundo, entre outras informaes. No incio dos anos 50, as cores passaram a ser aproveitadas, com os Estados Unidos criando o padro conhecido na prtica como NTSC (National Television System Committee), que na verdade representa o nome do comit que foi criado pela indstria para elaborar a proposta de televiso a cores ao FCC. Esse padro de cores foi aceito pelo Japo e rejeitado pela Europa, que em 1966 adotou o SECAM (Squentiel Couleur Avec Memoire) como padro. Os europeus possuem ainda outro padro de cores, que foi o adotado pelo Brasil, o PAL (Phase Alternation Line).
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 8 de 8 -

No sistema NTSC, o vdeo formado por 30 imagens (ou quadros) por segundo com 525 linhas. Este padro utilizado nos Estados Unidos, Canad, Groenlndia, Mxico, Cuba, Panam, Japo, Filipinas, Porto Rico, e partes da Amrica do Sul. Os quadros so divididos em campo mpar (conjunto das linhas mpares do quadro) e campo par. Os campos dos pares so transmitidos em seqncia. Assim, no NTSC para que se atinja uma taxa de 30 quadros de vdeo so transmitidos e acesos na tela das TVs, de forma alternada e entrelaada, 60 campos por segundo de vdeo, evitando a percepo da cintilao. Nos sistemas SECAM e PAL as imagens so formadas por 625 linhas e so transmitidos 25 quadros por segundo (50 campos alternados e entrelaados). O sistema SECAM usado na Frana e na maior parte dos pases vizinhos ou dentro da antiga Unio Sovitica. O sistema PAL usado por quase toda a Europa Ocidental (com exceo da Frana). As 100 linhas a mais dos sistemas PAL e SECAM acrescentam significativamente, em termos de detalhe e clareza, imagem de vdeo, mas quando comparamos os 50 campos por segundo com os 60 campos do sistema do NTSC, podemos notar uma ligeira trepidao (flicker) na imagem daqueles sistemas. A televiso analgica que assistimos nos dias de hoje bastante semelhante a que foi inventada h quase cinco dcadas. 2.3 A Televisiva de Alta Definio A evoluo na direo da televiso de alta definio se iniciou com uma pesquisa realizada pelos japoneses, que desenvolveram um sistema analgico que oferecia um nmero de linhas maior que o dobro (de 525 para 1125) e permitia a transmisso de som de alta qualidade. Os resultados da pesquisa japonesa foram apresentados no incio da dcada de 80. Os japoneses, na verdade, direcionaram sua pesquisa buscando primeiro um padro de produo em estdio, para da derivar um padro para transmisso, tanto via satlite, como em sistema de cabo e difuso terrestre. Assim, o primeiro sistema de televiso de alta definio a entrar em operao em escala comercial foi o sistema japons MUSE (Multiple Sub-Nyquist Sampling Encoding). No MUSE, o sinal de alta definio, com mais de 1 Gbit/s de informao, codificado em um canal com 27 MHz de largura de faixa, compatvel com os canais disponveis em satlites. Os europeus tambm iniciaram suas pesquisas na direo da melhoria da qualidade da televiso usando tecnologia analgica. Em 1986, se iniciou o projeto da Comunidade Europia Eureka, financiando o desenvolvimento do sistema MAC Multiplexed Analog Components. O padro MAC se baseava na digitalizao e compresso independente de cada componente de croma e utilizava algumas tcnicas analgicas para a composio final do sinal. Uma verso com maior resoluo do sistema bsico foi denominada HD-MAC (High Definition - MAC). O sistema, entretanto, no foi bem sucedido comercialmente e, em 1993, a comunidade europia voltou seus esforos de pesquisa na direo de um padro totalmente digital. 2.4 O Surgimento da TV Digital Nos Estados Unidos, em 1987, foram iniciados estudos com o objetivo de desenvolver novos conceitos no servio de televiso. Foi ento criado o ACATS (Adivisory Commitee on Advanced Television). No incio de seus trabalhos, o comit decidiu
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 9 de 9 -

desenvolver um sistema totalmente digital, que foi denominado DTV - Digital Television. Foi ento criado um um laboratrio, o ATTC - Advanced Television Test Center, que, entre 1990 e 1992, testou seis propostas. Nos testes realizados, nenhuma das propostas satisfez a todos os requisitos. Em 1993, sete empresas e instituies participantes dos testes (AT&T, GI, MIT, Phillips, Sarnoff, Thomson e Zenith) se uniram formando a Grande Aliana para desenvolver um padro juntas. Numa deciso arrojada foi adotado como padro para compresso do vdeo o padro MPEG-2. No final de 1993, os europeus tambm decidiram desenvolver um padro totalmente digital e adotaram o padro MPEG. Criou-se ento o consrcio DVB - Digital Vdeo Broadcasting. A verso DVB para a radiodifuso terrestre (DVB-T) entrou em operao em 1998, na Inglaterra. Em 1995, o ATSC - Advanced Television System Commitee recomenda FCC adotar o sistema da Grande Aliana como o padro para a DTV norte-americana. O padro americano, que ficou conhecido como ATSC, entrou em operao tambm em 199 S em 1997 os Japoneses decidiram desenvolver um padro totalmente digital. O sistema Japons denominado ISDB - Integrated Services Digital Broadcasting assemelha-se ao europeu e entrou em operao com transmisso via satlite em 2000. A ttulo de ilustrao, a Figura 1 mostra o aspecto de uma imagem NTSC com 525 linhas de resoluo e razo de aspecto de 4:3 ao lado do aspecto de uma imagem HDTV com 1080 linhas e razo 16:9 (semelhante a usada nas telas de cinema).

Figura 1. Comparao entre Aspectos de imagem NTSC e HDTV

3. Arquitetura de Sistemas de TVDI


Esta seo apresenta os diversos componentes que fazem parte da arquitetura de sistemas de TVDI. Visando situar historicamente o carter evolucionrio dos sistemas, a arquitetura ser apresentada atravs do refinamento de uma srie de diagramas arquiteturais, que se inicia com a apresentao do modelo atual, que contm um misto de componentes analgicos e digitais, e conclui com uma definio arquitetural geral de sistemas de TV Digital Interativa e seus diversos componentes. 3.1. Arquitetura de Software e Sistemas Arquitetura de um software, ou de um sistema qualquer, a estrutura descritiva do elemento sob anlise, composta pelos componentes do sistema, pelas propriedades externamente visveis destes componentes, e pelo relacionamento entre estes componentes. Os componentes podem ser objetos, processos, bases de dados, subsistemas, etc, o que depende do ponto de vista sob o qual esto sendo descritos. Numa
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 10 de 10 -

arquitetura so omitidas, as informaes que no so pertinentes s interaes entre os componentes. Adotaremos neste captulo uma viso simplificada de descrio arquitetural, baseada no uso de diagramas UML para representar subsistemas e classes que compem a arquitetura de sistemas de TVDI, do ponto de vista de profissionais de computao. A Figura 2 apresenta um modelo de anlise arquitetural de alto nvel de um sistema de TV, composto por vrios subsistemas.

Figura 2. Arquitetura de Alto Nvel de um Sistema de TV.

A Figura 2 descreve a composio de um sistema de TV, como formado por trs subsistemas principais: Central de Produes, Rdio-Difuso e Recepo Domstica. A Central de Produes responsvel por gerar programas de TV que sero veiculados atravs do sistema de Rdio-Difuso, e composta por vrios Estdios. Existe uma relao unidirecional entre mltiplas Centrais de Produo e subsistemas de RdioDifuso. O subsistema de Rdio-Difuso responsvel por receber o sinal a ser difundido, realizar a devida modulao conforme o meio usado e transmitir o sinal para a Recepo Domstica (audincia). Existe tambm uma relao unidirecional entre mltiplos sistemas de Rdio-Difuso e mltiplos sistemas de Recepo Domstica. 3.2. Detalhes Arquiteturais de um Sistema de TV Atual A Figura 3 refina a anlise dos elementos tpicos que formam um sistema de TV atual, mostrando que estes so formados por uma mistura de componentes digitais e analgicos. Para simplificar a arquitetura sero omitidos aspectos como iluminao, cenrios, etc, que tambm variam na transio do analgico para o digital, mas que esto fora do escopo nesta viso. Cada Estdio da Central de Produo composto pelos subsistemas de Produo/Ps-produo e Armazenamento. A Produo responsvel pela gravao de cenas, edio e criao dos programas. O Armazenamento responsvel por armazenar e recuperar o acervo de cenas e programas criados pelo Estdio. A Transmisso responsvel pela transferncia de cenas e programas intra-Estdio e inter-Estdio, bem como a transmisso para a Rdio-Difuso.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 11 de 11 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Figura 3. Arquitetura de Sistemas de TV Atuais.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 12 de 12 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

A transmisso dos programas do Estdio para Rdio-difuso pode se dar de vrios meios, sendo o mais comum o uso de links de satlites e micro-ondas. A difuso para Recepo Domstica pode ser dar atravs de trs meios: terrestre, satlite e cabo, sendo a transmisso terrestre aquela realizada em reas urbanas atravs do posicionamento de antenas em regies elevadas da cidade. O subsistema de Recepo Domstica recebe o sinal difundido atravs do conjunto Antena + Receptor Analgico (em geral embutido no aparelho de TV) e envia este sinal para o Monitor de TV, que exibe o programa para a audincia. Atualmente vrias partes dos subsistemas de TV atual j empregam codificao digital. Os elementos da Figura 3 que possuem cor mais escura so em geral os mdulos que j empregam alguma forma de digitalizao. Por exemplo, formatos de vdeo como o MiniDV, usados em produo de TV, empregam codificao digital de sinais. Alguns aparelhos de TV comuns empregam algum tipo de tratamento digital de imagens, como o PIP (picture in picture). Por fim, praticamente todo sistema de transmisso via satlite, inclusive a recepo domstica de sinais de satlite, usa modulao digital. 3.3. Arquitetura Bsica de um Sistema de Televiso Digital O nico fator considerado fixo dentre as opes atuais de plataformas de TV digital a adoo do padro MPEG-2 Sistemas, o que traz em seu bojo um imenso conjunto de solues que definem a arquitetura bsica de sistemas de TV Digital, cujos elementos so apresentados na Figura 4. A adoo do padro MPEG-2 confere grande capacidade de interoperabilidade entre os diversos subsistemas de uma plataforma de TV digital. Os elementos com cores escuras na Figura 4 representam os principais mdulos adicionais acrescidos pela arquitetura MPEG-2 ao cenrio de plataformas de TV digital. Impacto da TV Digital sobre o Estdio. No Estdio de TV Digital a Cmera tem uma maior resoluo de linhas e colunas. Destaca-se tambm a presena do Codificador MPEG (Tektronix, 2002), responsvel principalmente por aplicar tcnicas de compresso temporal e espacial de imagens a um sinal de vdeo digital, originalmente em formato quadro a quadro, a fim de produzir um fluxo de streams elementares de A/V, que no caso de codificao digital para o vdeo obtm taxas de compresso que chegam a 1 bit comprimido para cada 70 bits da codificao sem compresso. Streams de A/V comprimido so facilmente armazenveis em um meio permanente como um DVD (Digital Vdeo Disk). No estdio destaca-se tambm que a Ilha de Edio passa a ser No Linear, pois as cenas no so mais armazenadas em fitas (acesso linear), mas sim em dispositivos de acesso direto (no linear), como discos rgidos e DVDs. Para distribuio dos programas para a Central os arquivos podem ser transmitidos atravs de uma rede local de computadores, reduzindo a quantidade de cabeamento e o transporte de fitas ou mesmo DVDs. Para transmisses em espao urbano ou longa distncia o estdio pode tambm dispor de um Streamer, detalhado mais abaixo. Impacto da TV Digital sobre a Central de Produes. Na Central de Produes (agora chamada de Provedora de Servios) so introduzidos dois elementos: Streamer e Multiplexador. O Streamer (tambm chamado de Empacotador TS) responsvel por transmitir e receber streams (fluxos) de transporte MPEG-2 (MPEG-2TS), a partir da segmentao de streams elementares de A/V. O Streamer facilita a gerao de fluxos que podem ser transmitidos atravs de redes de computadores de mdia
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 13 de 13 -

e longa distncia com grande qualidade e custo reduzido (Broadcast Papers, 2004c). O uso de Streamers reduz a necessidade de links de satlite pela Central de Produes. Combinado com o uso do Multiplexador, o Streamer aumenta fortemente a capacidade de integrao da Central com uma maior quantidade de estdios, inclusive externos, o que permite uma maior oferta de programas.

Figura 4. Arquitetura de Sistemas de TV Digital.

Impacto da TV Digital sobre a Rdio-Difuso. A aplicao de tcnicas de compresso aos sinais televisivos permite que, no mesmo espao de banda passante terrestre (canal UHF/VHF) por onde hoje trafega um sinal analgico, seja possvel transmitir pelo menos 4 programas com qualidade superior. Este espao adicional pode ser usado para transmitir programas e dados adicionais. Deste modo, no subsistema de
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 14 de 14 -

Rdio-difuso (ou Rede de Difuso) introduzido um mdulo de multiplexao, normalmente chamado de Remultiplexador (Broadcast Papers, 2004c). O Remultiplexador responsvel por fazer a multiplexao entre os vrios TS gerados por uma ou mais centrais de produo. Alm de permitir a transmisso de mais programas em um nico espao de banda (canal), a Remultiplexao pode ter outros funes, dentre as quais se destacam: (i) renomear os identificadores dos programas e fluxos elementares enviados pelas centrais para evitar coliso de identificadores, (ii) eliminar, substituir ou inserir programas e fluxos de dados que sero veiculados, (iii) inserir informaes gerais sobre a programao dos vrios canais veiculados e (iv) proteger programas cujo contedo consumido atravs de pagamento (pay-per-view). A introduo do remultiplexador permite ao difusor operar uma maior quantidade de Centrais de Produo (Provedores de Servios), o que aumenta a oferta de contedo e canais. Impacto da TV Digital sobre a Recepo Domstica. O subsistema de recepo domstica de TV Digital necessita de um STB que seja capaz de receber, demodular, decodificar e remodular o sinal televisivo que ser apresentado pela TV. O STB um equipamento digital com capacidade de processamento de sinais de udio e vdeo, e eventualmente capacidade de execuo de programas. O sinal de A/V gerado na sada do STB pode ser compatvel com televisores analgicos. Detalhes sobre a arquitetura do STB so apresentados na Seo 3.5. 3.4. Novos Conceitos Introduzidos do Modelo de TV Digital A arquitetura geral de TVD apresentada acima introduz uma srie de conceitos que apiam novos modelos de negcios, fundamentais para o sucesso da mudana tecnolgica para a TV Digital. A Figura 5 apresenta as principais relaes entre estes conceitos, conforme definidos no modelo DVB Digital Vdeo Broadcasting (DVB, 2004).

Figura 5. Modelo de Entrega de Servios na Plataforma DVB (DVB, 2004).


Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 15 de 15 -

No modelo de consumo de servios de TV digital o elemento atmico de produo de mdia chamado de evento. Um evento um agrupamento de streams elementares (A/V/D) com um tempo definido de incio e fim, como, por exemplo, a primeira parte de uma novela ou o primeiro tempo de uma partida de futebol. Um programa uma concatenao de um ou mais eventos produzidos por um estdio, como um captulo de novela ou um show. Um servio uma seqncia de programas (programao) controlada por um difusor, que tem por objetivo atingir uma determinada audincia, e que veiculado em uma determinada faixa de horrios. O servio a principal unidade de produo e consumo na TV digital. Uma Central de Produes pode compor um conjunto de servios (programao) produzidos por vrios estdios, formando o que se chama de Bouquet. O Bouquet , portanto, a unidade de distribuio das programaes de uma Central de Produes. Os bouquets produzidos pelas centrais so remultiplexados pelas redes de rdio-difuso, que canalizam um ou mais servios atravs da alocao dos sinais em uma faixa do espectro eletromagntico. 3.5. Arquitetura de Sistemas de TV Digital Pseudo-Interativa A capacidade de interatividade da TV digital se deve presena de trs elementos: Gerador de Carrossel, Multiplexador e STB Interativo (Broadcast Papers, 2004d). O Gerador de Carrossel capaz de transformar um conjunto de arquivos de dados em um fluxo elementar, empregado um esquema de transmisso cclica de dados. O Multiplexador capaz de fundir um ou mais fluxos de dados aos fluxos de udio e vdeo que compem os eventos e programas, os quais por sua vez compem os servios consumidos pela audincia. O STB Interativo possui capacidade de processamento computacional, sendo capaz de interpretar computacionalmente os fluxos de dados multiplexados. Deste modo o STB executa uma aplicao que exibe na TV uma interface com o usurio. Isto permite audincia interagir com o programa de TV atravs do teclado ou controle remoto. Ao entregar audincia um fluxo de dados localmente computvel, a TV Digital se torna interativa. Caso o resultado da interao entre o usurio e o STB fique restrito ao subsistema de Recepo Domstica, o modelo chamado de TV Digital Pseudo-Interativa (Enhanced DTV). Uma expanso do modelo de pseudo-interatividade permite que o STB envie e receba dados adicionais atravs de um canal de interao (retorno), estabelecido via modem, por exemplo. Neste caso o resultado da interao com o usurio pode ser avaliado em tempo quase real por um provedor de servios vinculado rede de TVD, resultado no modelo chamado de TV Digital Interativa (Interactive DTV). A Figura 6 apresenta os elementos que definem a arquitetura geral de sistemas de TV Digital Pseudo-Interativa (Enhanced DTV). Na EDTV existe um estdio especializado, chamado Estdio Dados, que realiza dois novos processos: (1) Produo Dados, o que envolve gerao de vdeo-texto e pginas HTML e (2) Produo Aplicaes, que envolve desenvolvimento de software. O Estdio Dados disponibiliza seus resultados para o subsistema de Transmisso de Dados, que contm um Gerador de Carrossel, responsvel por transmitir um fluxo elementar de dados (e aplicaes) a partir dos dados do estdio. Este fluxo D (Dados) sincronizado com os fluxos A/V. Os fluxos A/V/D so recebidos pelo STB (Pseudo-)Interativo. Os dados e programas so
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 16 de 16 -

interpretados e produzem interao local, que se d principalmente atravs do Controle Remoto.

Figura 6. Arquitetura Geral de Sistemas de TV Digital Pseudo-Interativa.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 17 de 17 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Figura 7. Arquitetura Geral de Sistemas de TV Digital Interativa.

A Figura 7 apresenta a arquitetura geral de sistemas de TV Digital Interativa, com indicao dos elementos adicionais relativos TV Pseudo-Interativa. Na arquitetura de TVDI destaca-se a presena de um Provedor de Acesso, ao qual o STB Interativo conecta-se para enviar e/ou receber dados resultados do processo de interao local. Esta conexo pode ser feita atravs de um modem ou outro meio alternativo. O Provedor de Acesso contm um Gateway para acesso Internet, e desta forma o STB Interativo pode ter acesso a dados e servios da Internet. A fim desenvolver um modelo de negcios que produza resultados econmicos mais relevantes na TVDI, o STB normalmente direcionado a interagir com um Provedor de Servio especfico, que oferta um produto ou servio fortemente relacionado ao contedo de A/V/D do evento televisivo produzido na Central. As sees que se seguem apresentam maiores detalhes da arquitetura dos seguintes subsistemas: (i) STB Interativo e (ii) Gerador de Carrossel. Os componentes Multiplexador e Demultiplexador apiam praticamente toda a flexibilidade de operao da TV Digital e so fundamentais para compreenso da arquitetura de sistemas de TVDI. O funcionamento e a arquitetura destes componentes j foi descrito na Seo 3.2.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 18 de 18 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

3.5. Arquitetura do STB Interativo

Figura Arquitetura de um STB Interativo.

O STB Interativo o elemento que fica na extremidade da arquitetura de TVDI, e sua arquitetura esboada na Figura O STB Interativo um pequeno computador dedicado tarefa de processar fluxos de udio, vdeo e dados, atravs da sintonizao e demultiplexao do sinal de TVDI. O STB seleciona uma srie de streams relacionadas a um servio. As streams pertencem a duas categorias: (i) relativas a udio e vdeo - A/V e (ii) dados sobre servios. As streams A/V so diretamente enviadas para o Controlador de Mdias, que as exibir conforme controles ajustados pelo usurio ou pelas aplicaes executadas no STB. Os dados sobre servio so remetidos ao subsistema de Informao Servios (SI Service Information). Estes fluxos contem informaes detalhadas sobre todas as outras streams A/V/D disponveis para o STB. A partir das Informaes sobre Servios possvel exibir os dados e executar as aplicaes que foram produzidas nos estdios. A execuo de aplicaes segue um modelo computacional padronizado, que contm reas de Processo e Sistema de Arquivos.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 19 de 19 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Figura 9. Arquitetura do Carrossel.

3.5. Arquitetura do Gerador de Carrossel A Figura 9 apresenta um esboo arquitetural de como funciona o Carrossel. A inteno primria do modelo de Carrossel permitir a instalao dinmica, no STB, de uma cpia de um sistema de arquivos produzido no Estdio de Dados. Este Sistema de Arquivos
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 20 de 20 -

persiste no STB apenas enquanto o servio est sintonizado. O Gerador de Carrossel o elemento responsvel por gerar um stream elementar de dados que, recebida pelo STB, produz este efeito. O stream Carrossel segue o protocolo DSM-CC, sub-protocolo DSMCC Object, do padro MPEG-2. Outras variaes do protocolo DSM-CC permitem a transmisso de outros tipos de dados, como fluxos IP e atualizao de firmware, que esto descritas em detalhes em (ETSI, 2003b). O nome carrossel se deve ao fato de que os fluxos de dados que geram o sistema de arquivos precisam ser re-transmitidos ciclicamente, a fim de que seja possvel a um STB que sintonizou o servio receber este sistema de arquivos, mesmo aps o incio da difuso. Os arquivos a serem transmitidos pela Central de Produes - chamada de Server User no protocolo DSM-CC - fazem parte de uma aplicao, que estar sendo transmitida em um fluxo individualmente identificado. Os arquivos so agrupados em mdulos, aos quais esto associadas prioridades de re-transmisso. O Gerador de Carrossel gera continuamente um stream contendo os mdulos a transmitir, sendo que os mdulos de maior prioridade so transmitidos com maior freqncia. A Gerao do Carrossel pode ser feita em tempo real ou off-line. Se feita off-line um arquivo produzido no Gerador de Carrossel, e continuamente enviado. Qualquer que seja a alternativa, o fluxo DSM-CC Object sincronizado e multiplexado com os outros fluxos que fazem parte do programa a transmitir. O subsistema de Rdio Difuso chamado de Network, no protocolo DSMCC - no sofre alteraes. Ao serem recebidos pelo STB interativo chamado de Client User - os arquivos do carrossel podem ter vrias finalidades, como apresentar dados especficos para serem apresentados por um programa de EPG - Guia de Programao Eletrnica, conter informaes adicionais sobre uma determinada propaganda veiculada, apresentar um teletexto, bem como enviar uma aplicao a ser executada no STB, como um Xlet.

4. Padres para TVDI


Uma questo fundamental para o sucesso de um sistema de televiso digital a adoo e aceitao de padres abertos para os vrios componentes do sistema. fato que o negcio televiso envolve o trabalho de inmeros profissionais de diferentes organizaes na produo do contedo televisivo. Este contedo deve ser transmitido, no caso do Brasil, por milhares de estaes transmissoras e retransmissoras para milhes de aparelhos receptores. Os aparelhos receptores sero produzidos por inmeros fabricantes no Brasil ou no mundo. Como j apresentado, os aparelhos receptores digitais incluem em seu hardware, de forma embarcada, o STB. Como os dados podem ser cdigos executveis, o STB inclui tambm um conjunto de componentes de software que constituem seu sistema operacional e o ambiente de execuo dos programas de televiso interativos. Os componentes de software que formam o sistema operacional so normalmente dependentes do hardware, com vrios de seus componentes desenvolvidos sob medida para um determinado hardware. Assim, esperado que o conjunto dos aparelhos receptores inclua equipamentos elaborados por fabricantes distintos executando sistemas operacionais distintos. Porm, neste cenrio no tem sentido esperar que os produtores de contedo televiso, no caso programas de televiso interativos, codifiquem verses de seus programas para os diferentes sistemas operacionais e hardwares dos aparelhos receptores. Torna-se ento fundamental ento a padronizao tambm de uma camada de adaptao
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 21 de 21 -

de software que oferea para os desenvolvedores um ambiente de programao padronizado. Feitas estas consideraes, a Figura 10 apresenta uma srie de escolhas tecnolgicas que precisam ser consideradas quando da definio de um sistema de televiso digital. As escolhas tecnolgicas para os componentes do sistema so questes estratgicas definidas por rgos de padronizao de pases ou blocos econmicos, levando em considerao aspectos socioeconmicos. 4.1. Padres Mundiais de TVDI Um sistema de televiso digital interativa deve adotar e integrar um conjunto de diferentes tecnologias de hardware e software para implementar suas funcionalidades. Conjuntamente, estas tecnologias permitem que um sinal eletromagntico, que transporta fluxos elementares de udio, vdeo, dados e aplicaes, possa ser transmitido para o STB e, ento, que estes fluxos sejam recebidos, processados e apresentados aos usurios. Considerando a diversidade de solues tecnolgicas que podem ser adotadas para implementar um sistema de televiso digital interativa, diversos rgos de padronizao concentraram esforos na especificao de padres. Como resultado destes esforos, atualmente, existem trs padres mundiais de sistema de televiso digital interativa reconhecidos: ?? DVB - Digital Video Broadcasting ?? ATSC - Advanced Television Systems Committee ?? ISDB - Integrated Services Digital Broadcasting Estes sistemas (DVB, ATSC e ISDB) adotam diferentes padres para modulao do sinal de difuso; transporte de fluxos elementares de udio, vdeo, dados e aplicaes; codificao e qualidade de udio e vdeo; e servios de middleware. A Figura 10 apresenta uma viso arquitetural em camadas de um sistema de televiso digital, identificando as diversas opes de padres de transmisso, transporte, codificao e middleware que podem ser adotados em cada camada.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 22 de 22 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Aplicaes

Aplicao1

AplicaoN

Middleware

MHP

DASE

ARIB

MPEG2 BC

MPEG2 AAC

Dolby AC3 MPEG2 HDTV

Codificao
MPEG2 SDTV

Transporte Transmisso
8-VSB

MPEG2 Sistemas

COFDM

QAM

PSK

QPSK

Figura 10. Opes de padres para um sistema de televiso digital interativa.

A seguir apresentamos uma breve descrio da arquitetura dos principais padres de sistema de televiso digital interativa, identificando os componentes bsicos adotados nestes padres. A organizao do Middleware dos padres de TVDI ser apresentada na seo 5. 4.2.1. DVB O projeto DVB - Digital Video Broadcasting (DVB, 2004) um consrcio iniciado em setembro de 1993 e composto por mais de 300 membros, incluindo fabricantes de equipamentos, operadoras de redes, desenvolvedores de software e rgos de regulamentao de 35 pases. O objetivo do projeto DVB especificar uma famlia de padres mundiais para sistemas de televiso digital interativa, incluindo a transmisso do sinal e servios de dados associados. A famlia de padres especificada pelo projeto DVB caracteriza o padro de sistema de televiso digital tambm denominado DVB, que conhecido como o padro europeu de televiso digital. O padro DVB adotado nos pases da Unio Europia e em outros pases como Austrlia, Nova Zelndia, Malsia, Hong Kong, Singapura, ndia e frica do Sul. A Inglaterra o pas onde a adoo do padro DVB est mais consolidada, pois j possui mais de um milho de receptores digitais instalados. O padro DVB formado por um conjunto de documentos que definem os diversos padres adotados, incluindo aqueles relacionados transmisso, transporte, codificao e middleware. A Figura 12 ilustra esquematicamente a arquitetura do sistema DVB, identificando os principais componentes padronizados nas diversas camadas.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 23 de 23 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Aplicaes

Aplicao1

AplicaoN

Middleware

MHP

DASE

ARIB

MPEG2 BC

MPEG2 AAC

Dolby AC3 MPEG2 HDTV

Codificao
MPEG2 SDTV

Transporte Transmisso
8-VSB

MPEG2 Sistemas

COFDM

QAM

PSK

QPSK

Figura 11. Arquitetura DVB

O padro DVB permite diversas configuraes para a camada de transmisso, cada configurao apresentando uma diferente relao capacidade/robustez. Os principais padres de transmisso adotados pelo DVB so: DVB-T: (transmisso terrestre por radiodifuso); DVB-C (transmisso via cabo); DVB-S (transmisso via satlite); DVB-MC (transmisso via microondas operando em freqncias de at 10GHz); e DVBMS (transmisso via microondas operando em freqncias acima de 10GHz). Os padres DVB-T, DVB-C, DVB-S, DVB-MC e DVB-MS adotam diferentes esquemas de modulao. O DVB-T (ETSI, 2001) pode operar em canais de 6, 7 ou 8 MHz e adota a modulao COFDM (Coded Orthogonal Frequency Division Multiplexing), cuja taxa de transmisso pode variar entre 5 e 31,7 Mbps, dependendo dos parmetros utilizados na codificao e modulao do sinal. O COFDM ser detalhado na Seo 4.2. O DVB-T suporta seis modos de transmisso com resolues que variam de 1080 240 linhas, podendo ser usado para sistemas de alta definio (HDTV High Definition Television) e sistemas mveis de baixa definio (LDTV Low Definition Television). No entanto, alguns estudos apontam que o funcionamento no satisfatrio quando ocorrem transmisses simultneas para sistemas de alta definio e sistemas mveis. Na Europa, em um primeiro momento, est sendo utilizada a resoluo padro (SDTV - Standard Definition Television), inicialmente em formato de tela 4:3. Considerando a largura de banda do canal, a transmisso SDTV permite a difuso de at seis programas simultaneamente. Portanto, o modelo de negcios dos pases europeus privilegiou a oferta diversificada de programas e servios na transmisso terrestre. Por outro lado, a Austrlia optou por combinar programas em alta definio (HDTV) e programas em definio padro (SDTV).
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 24 de 24 -

Para as redes de televiso a cabo, o DVB-C (ETSI, 1998) adota a modulao 64QAM. O termo 64 a constelao do esquema de modulao, que representa o nmero de smbolos possveis. O nmero de smbolos determina diretamente o nmero de bits associado a cada smbolo transmitido. Por exemplo, a modulao 64-QAM transporta 6 bits por smbolo, pois com 64 smbolos possvel representar as 64 combinaes possveis de 6 bits. Embora o DVB-C sugira a modulao 64-QAM, em funo das caractersticas da rede e do servio desejado, a modulao QAM tambm pode ser usada com outras constelaes. Por exemplo, pode-se utilizar constelaes de 16, 32, 64, 128 e 256 smbolos. Para a difuso via satlite, o DVB-S (ETSI, 1997a) recomenda a modulao QPSK. Para a radiodifuso terrestre utilizando microondas, so previstos dois tipos de modulao. Para freqncias abaixo de 10 GHz (MMDS), o DVB-MC (ETSI, 1997c) recomenda a utilizao da modulao 16, 32 ou 64-QAM. Para freqncias acima de 10 GHz (LMDS), o DVB-MS (ETSI, 1997b) recomenda o mesmo mecanismo de modulao que o DVB-S, ou seja, QPSK. Nas camadas de transporte e codificao, o padro DVB um sistema fundamentalmente baseado no MPEG-2. Portanto, os padres de transporte e codificao adotados pelo DVB so baseados nas recomendaes MPEG-2. Na camada de codificao, o sinal de udio codificado usando a recomendao MPEG2-BC e o sinal de vdeo codificado usando a recomendao MPEG-2 Vdeo (ISO, 1996b) com qualidade SDTV. Na camada de transporte, os fluxos elementares de udio, vdeo e dados (aplicaes) so multiplexados no produtor de contedo e demultiplexados nos set-top boxes dos usurios usando a recomendao MPEG-2 Sistemas (ISO, 1996a). 4.2.2. ATSC O comit ATSC (Advanced Television Systems Committee) (ATSC, 2004) uma organizao de padronizao americana iniciada em 1982 e composta por cerca de 170 membros, incluindo fabricantes de equipamentos, operadores de redes, desenvolvedores de software e rgos de regulamentao. O objetivo do comit ATSC especificar padres para televiso digital. O conjunto de padres especificado pelo comit ATSC caracteriza o padro de sistema de televiso digital tambm denominado ATSC, que conhecido como o padro americano de televiso digital. Em funcionamento nos Estados Unidos desde novembro de 1998, o padro ATSC tambm j foi adotado pelo Canad, Coria do Sul, Taiwan e Argentina. Nestes dois ltimos pases, existe uma sinalizao que dever ocorrer uma reviso do padro de sistema de televiso digital a ser adotado. Da mesma forma que o padro DVB, o padro ATSC formado por um conjunto de documentos que definem os diversos padres adotados, incluindo aqueles relacionados transmisso, transporte, codificao e middleware. A Figura 12 ilustra esquematicamente a arquitetura do sistema ATSC, identificando os principais componentes padronizados nas diversas camadas.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 25 de 25 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Aplicaes

Aplicao1

AplicaoN

Middleware

MHP

DASE

ARIB

MPEG2 BC

MPEG2 AAC

Dolby AC3 MPEG2 HDTV

Codificao
MPEG2 SDTV

Transporte Transmisso
8-VSB

MPEG2 Sistemas

COFDM

QAM

PSK

QPSK

Figura 12. Arquitetura ATSC.

O padro ATSC permite diversas configuraes para a camada de transmisso, definindo diferentes esquemas de modulao para transmisso terrestre, via cabo e via satlite. Na radiodifuso terrestre, o padro ATSC pode operar com canais de 6, 7 ou 8 MHz e utiliza a modulao 8-VSB, cuja taxa de transmisso de 19,8 Mbps. Em funo deste esquema de modulao, um sistema ATSC apresenta problemas na recepo por antenas internas e no permite a recepo mvel. Para as redes de televiso a cabo e as transmisses via satlite, da mesma forma que o padro DVB, o padro ATSC adota as modulaes 64-QAM e QPSK, respectivamente. O padro ATSC prev diversos modos de transmisso com diferentes nveis de resoluo da imagem e formatos de tela. No entanto, o modelo de negcios americano foi direcionado para a televiso de alta definio (HDTV). Em funo do alto custo dos aparelhos de televiso de alta definio, o sistema americano de televiso digital ainda possui uma baixa adeso dos usurios. Na camada de codificao, o sinal de udio codificado usando o padro Dolby AC-3 (ATSC, 2001) e o sinal de vdeo codificado usando a recomendao MPEG-2 Vdeo (ISO, 1996b) com qualidade HDTV. Na camada de transporte, da mesma forma que o padro DVB, o padro ATSC multiplexa e demultiplexa os fluxos elementares de udio, vdeo e dados (aplicaes) usando a recomendao MPEG-2 Sistemas (ISO, 1996a). 4.2.3. ISDB O padro ISDB foi especificado em 1999 no Japo pelo grupo DiBEG - Digital Broadcasting Experts Group (DiBEG, 2004), criado em 1997 e composto por vrias empresas e operadoras de televiso. O objetivo do grupo DiBEG promover e especificar o sistema de difuso terrestre de televiso digital japons.
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 26 de 26 -

O padro ISDB tambm conhecido como o padro japons de televiso digital. At o momento, o padro ISDB foi adotado apenas no Japo, porm amplamente divulgado que o mesmo um sistema que rene o maior conjunto de facilidades: alta definio - HDTV, transmisso de dados e recepo mvel e porttil. Da mesma forma que os padres DVB e ATSC, o padro ISDB formado por um conjunto de documentos que definem os diversos padres adotados, incluindo aqueles relacionados transmisso, transporte, codificao e middleware. A Figura 13 ilustra esquematicamente a arquitetura do sistema ISDB, identificando os principais componentes padronizados nas diversas camadas.

Aplicaes

Aplicao1

AplicaoN

Middleware

MHP

DASE

ARIB

MPEG2 BC

MPEG2 AAC

Dolby AC3 MPEG2 HDTV

Codificao
MPEG2 SDTV

Transporte Transmisso
8-VSB

MPEG2 Sistemas

COFDM

QAM

PSK

QPSK

Figura 13. Arquitetura ISDB

Da mesma forma que os padres DVB e ATSC, o padro ISDB permite diversas configuraes para a camada de transmisso, definindo diferentes esquemas de modulao para transmisso terrestre, via cabo e via satlite. Na radiodifuso terrestre, a especificao ISDB-T (Integrated Services Digital Broadcasting Terrestrial) (ISDB, 1998) pode operar com canais de 6, 7 ou 8 MHz e, da mesma forma que o padro DVB, utiliza a modulao COFDM (Coded Orthogonal Frequency Division Multiplexing), mas com algumas variaes, alcanando uma taxa de transmisso que varia entre 3,65 e 23,23 Mbps. Para as redes de televiso a cabo e as transmisses via satlite, o padro ISDB adota as modulaes 64-QAM e 8-PSK, respectivamente. O ISDB projetado para suportar sistemas hierrquicos com mltiplos nveis, podendo ser usado, por exemplo, para prover simultaneamente recepo de baixa taxa de dados sob condies mveis excepcionalmente difceis, taxa de dados intermediria (SDTV) para recepo esttica e alta taxa de dados (HDTV) para boas condies de recepo.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 27 de 27 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Embora seja baseado no sistema de transmisso europeu, o ISDB-T superior ao DVB-T quanto imunidade a interferncias, permitindo a convivncia da televiso de alta definio com a recepo mvel. Na camada de codificao, o sinal de udio codificado usando a recomendao MPEG-2 AAC (Advanced Audio Coding) (ISO, 1997) e o sinal de vdeo codificado usando a recomendao MPEG-2 Vdeo (ISO, 1996b) com qualidade HDTV. Vale ressaltar que, em funo da flexibilidade do sistema, o sinal de vdeo pode ser codificado usando a recomendao MPEG-2 Vdeo em diferentes nveis de resoluo. Na camada de transporte, da mesma forma que os padres DVB e ATSC, o padro ISDB multiplexa e demultiplexa os fluxos elementares de udio, vdeo e dados (aplicaes) usando a recomendao MPEG-2 Sistemas (ISO, 1996a). Segue uma descrio resumida dos principais padres de modulao, transmisso, codificao, compresso, multiplexao e transporte, utilizados nos padres de televiso digital. 4.3. Padres para Modulao e Transmisso Os sistemas de televiso digital j definidos adotam dois esquemas de modulao o 8VSB e o COFDM que so descritos a seguir. Modulao 8-VSB (Vestigial Sideband). O ATSC definiu como esquema de modulao para transmisso terrestre o 8-VSB [Sparano]. A Figura 14 ilustra o processo de modulao 8-VSB [13]16 . O fluxo de bits MPEG-2 transporte embaralhado, para suavizar o espectro, evitando a concentrao de energia em alguns pontos. Em seguida, o sinal passa por um gerador de cdigo corretor de erros (Reed Solomon) que opera em nvel de blocos, inserindo 20 bytes de paridade para cada bloco de 187 bytes. Os 207 bytes formam um segmento. Depois da codificao realizado o entrelaamento temporal, onde os bytes so espalhados em 52 segmentos com o objetivo de evitar que um rudo impulsivo danifique um ou vrios segmento inteiros. O espalhamento distribui os erros provocados pelo rudo em bytes de vrios segmentos, o que em conjunto com o cdigo corretor de erros, garante uma boa imunidade do sistema a rudos impulsivos. inserido ento um segundo cdigo corretor de erros (trelia ou convolucional), onde cada 2 bits originais so convertidos para 3 bits. O terceiro bit melhora a redundncia da informao. Os 3 bits so convertidos para um smbolo de 8 nveis (23). A carga til de cada segmento formada por 828 smbolos de 8 nveis.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 28 de 28 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Figura 14. Modulao 8-VSB.

Os segmentos recebem ento alguns smbolos adicionais de sincronismo. 312 segmentos, mais um de sincronismo, formam um quadro. Esse conjunto (que um sinal AC), recebe um pequeno nvel DC, o qual, ao ser modulado, aparecer como um ressalto no espectro, formando o sinal piloto do canal. Esse conjunto colocado num modulador VSB, que pode ser analgico ou um circuito que sintetize digitalmente a forma de onda j em rdio-freqncia (mais precisamente, em FI freqncia intermediria). O sinal resultante est pronto para ser adaptado para a freqncia de operao da emissora, amplificado e transmitido. Modulao COFDM (Coded Orthogonal Frequency-Division Multiplexing). O COFDM baseado na utilizao de diversas portadoras, onde cada portadora transporta uma parte do sinal em subcanais FDM (Frequency Division Multiplexing) em um canal de 6, 7 ou 8 MHz. No DVB so usadas 1705 (modo 2K) ou 6817 (modo 8K) portadoras. A interferncia entre as portadoras evitada por condies de ortogonalidade entre as mesmas, que ocorre quando o espaamento entre as portadoras o inverso do perodo sobre o qual o receptor far a operao de demodulao do sinal. Para melhorar a imunidade a interferncias externas, utilizada uma srie de tcnicas de codificao, que inclui uma permuta pseudo-aleatria da carga til entre as diversas portadoras. A Figura 15 ilustra o processo de codificao de um sinal COFDM.

Figura 15. Modulao COFDM.

O feixe de sinal recebido do multiplexador MPEG embaralhado, para distribuir de maneira uniforme a energia. Em seguida o sinal passa por um primeiro processo de codificao externa, que utiliza o Reed-Solomon para criar bits redundates utilizados para recuperao de erros. Os bytes de cada 12 blocos so entrelaados para que, caso algum bloco no seja recebido sejam perdidos poucos bits por bloco em vez de um bloco completo. Na codificao interna usado um cdigo convolucional FEC (Forward Error Correction) que gera bits adicionais para melhorar a redundncia. Alguns dos bits adicionais so omitidos em intervalos regulares para desbalancear a energia dos smbolos. Desta forma alguns smbolos (os que tiveram bits omitidos) ficam com a energia reduzida, enquanto outros ganham um reforo de potncia. Os smbolos com melhor relao sinal/rudo (SNR) so utilizados para transportar as informaes de controle e sincronismo
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 29 de 29 -

do canal. Aps o entrelaamento interno os bits so mapeados para compor os smbolos e quadros da transmisso. A montagem parametrizvel podendo ser definidos o tipo de modulao (QPSK, 16-QAM ou 64-QAM), nmero de portadoras e intervalo de guarda. Para uma dada configurao dos parmetros supracitados, os bits so agrupados para formar uma palavra. Cada palavra ir modular uma portadora, durante um tempo TU. O conjunto de palavras de todas as portadoras num dado intervalo TU chamado de smbolo COFDM. Cada conjunto de 68 smbolos COFDM forma um quadro COFDM. Algumas portadoras so utilizadas como sinal piloto, sendo utilizadas para sincronismo e controle de fase. As duas portadoras extremas do canal (as de nmero 0 e 1704 no modo 2K e 0 e 6816 no modo 8K) tm essa finalidade. Outras 43 portadoras so utilizadas como piloto contnuo no modo 2K e 175 no modo 8K. Nas demais portadoras, algumas palavras so utilizadas dentro de uma seqncia predefinida para atuar como sinais pilotos dispersos, que so usados para estimar as caractersticas de transmisso da portadora e de portadoras adjacentes. Algumas portadoras so utilizadas para transportar um sinal de controle chamado TPS (Transmission Parameter Signilling) que identifica os parmetros de transmisso do canal, como o tipo de modulao, nmero de portadoras, etc. O ISDB apresenta trs modos de operao COFDM, existe um modo intermedirio 4K. Existem tambm diferenas nos outros modos. Por exemplo, o nmero de portadoras no modo 2K ISDB 1405 e 1705 no modo 2k do DVB. 4.4. Padro para Multiplexao e Transporte A funo do subsistema de multiplexao e transporte receber as seqncias elementares de bits geradas pelos codificadores de aplicaes dos diferentes subsistemas (vdeo, udio, dados auxiliares, etc) e, atravs da multiplexao, gerar em sua sada uma seqncia nica de pacotes, cujo formato definido pelo padro MPEG-2 Systems. A codificao dos pacotes pode ser realizada de duas formas: fluxo de transporte ou fluxo de programa. No fluxo programa os pacotes gerados possuem tamanho varivel e usualmente grande. Este tipo de fluxo usado para sistemas de transmisso com baixa probabilidade de ocorrncia de erros, o que no o caso de sistemas de televiso. No fluxo transporte os pacotes possuem tamanho fixo de 188 bytes, sendo mais adequados para tratamento de erros, alm de simplificar a implementao de circuitos eletrnicos e algoritmos, e aumentar a velocidade de processamento. A seqncia de pacotes de transporte resultante da multiplexao pode ser novamente multiplexada com outras seqncias do mesmo tipo antes do envio para o subsistema de transmisso. No receptor, essa seqncia de pacotes ser demultiplexada e as seqncias elementares de bits sero reconstrudas e entregues aos seus respectivos decodificadores. Utilizando informaes contidas no cabealho dos pacotes de transporte, possvel a realizao de operaes como sincronizao do aparelho receptor, deteco e sinalizao de erros. As seqncias elementares de bits podem ou no, antes da multiplexao e formatao em pacotes de transporte, passar por um processo de organizao em segmentos PES (Packetized Elementary Stream) de t manho varivel. As principais a finalidades da segmentao PES so viabilizar a sincronizao das seqncias elementares de bits de um mesmo programa. As seqncias de udio e vdeo passam obrigatoriamente
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 30 de 30 -

por essa etapa. O processo de gerao de segmentos PES pode ser realizado diretamente pelo subsistema de multiplexao e transporte ou pelo prprio codificador da aplicao geradora da seqncia elementar de bits. A multiplexao das seqncias de dados auxiliares, udio e vdeo, nos pacotes de transporte realizada atravs de um simples campo identificador em seu cabealho. Esse campo denominado o PID (Packet Identifier), e sua utilizao permite, por exemplo, que a capacidade do canal seja alocada de forma dinmica para rajadas de determinado subsistema gerador de seqncias elementares. A arquitetura empregada na multiplexao e no transporte permite a extensibilidade dos servios oferecidos, ao mesmo tempo que garante compatibilidade futura com o parque de equipamentos j instalados. Novos servios sero implementados atravs do emprego de novos PIDs, sem que seja alterada a estrutura do pacote. Dessa maneira, os equipamentos que no estejam preparados para receb-los, simplesmente filtraro os pacotes de PIDs desconhecidos, decodificando apenas as s eqncias de pacotes cujo tratamento possvel ser realizado. A multiplexao no subsistema de multiplexao e transporte realizada em dois nveis distintos. Inicialmente, as seqncias elementares de bits (em formato PES ou no), que compartilham uma mesma base de tempo, so multiplexadas entre si e com uma seqncia de controle, chamada de Elementary Stream Map para formar um programa. Programa o termo utilizado na televiso digital para a denominao do que vem a ser um canal na TV tradicional. Nesse primeiro nvel de multiplexao, cada seqncia elementar possui seu prprio identificador, chamado Stream_ID. No h restries sobre o nmero e tipo de seqncias elementares presentes em um programa. A seqncia de controle possui uma tabela, a Program Map Table, que inclui informaes sobre os identificadores de cada uma das seqncias que compem o programa e sobre o relacionamento entre as mesmas. A Figura 16 ilustra a multiplexao nesse nvel, supondo que as seqncias elementares j esto na forma de pacotes de transporte, aps passarem pela etapa PES.
Elementary stream 1 (Video) Elementary stream 2 (Audio1) PID1 PID2 PID3

.........

Elementary stream 3 (Audio2)

Elementary Stream n-1 (Data i) Elementary Stream n (Data j) Elementary stream map
(program_map_table )

PID(n-1) PIDn PID(n+1)

Multiplexer

MUXed program transport bit stream

Figura 16. Multiplexao de fluxos elementares

Os programas, por sua vez, so multiplexados assincronamente entre si e com uma seqncia de controle de mais alto nvel, a Program Stream Map, para formar a seqncia de transporte do sistema. Essa seqncia de controle contm, de forma anloga Program Map Table de um programa, uma tabela de mapeamento entre os programas e suas seqncias de transporte, a Program Association Table.
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 31 de 31 -

Esse segundo nvel de multiplexao, mostrado na Figura 17, oferece uma funcionalidade importante, que a definio de programas com uma combinao qualquer de seqncias PES, incluindo repeties e selees de seqncias especficas. Podemos citar como exemplo uma mesma seqncia de udio que deve ser sincronizada com duas seqncias de vdeo para a composio de dois programas diferentes. Alm dessa funcionalidade, a multiplexao a nvel de programas permite a insero de programao local.
Program transport stream 1 Program transport stream 2

.........

Program transport stream 3 Program transport stream 4 Program transport stream 5 Program stream map
(program_assocication_table)

Multiplexer System level multiplex PID = 0

Figura 17. Multiplexao de programas

Esse segundo nvel de multiplexao pode ocorrer recursivamente, ou seja, podem haver sucessivas multiplexaes de vrias seqncias de sistema em uma nica seqncia de maior largura de banda. Esse procedimento recursivo exige, no entanto, a recriao da Program Association Table, gerando, conseqentemente, uma nova seqncia Program Stream Map.
Elementary bit streams for a program Dump other transport packets

. .

PIDn

PID = 0

program_association_table

Obtain PIDs for elementary bit streams

Obtain program_map_PID ( PID of bit stream containing the program_map_table )

program_map_table

System bit stream

program_ map_PID

Program Identity

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

.......

PID1 PID2

Pgina 32 de 32 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Figura 1 Demultiplexao de programas e fluxos elementares.

A poltica de multiplexao e o funcionamento do multiplexador no so objetos de padronizao, nem mesmo sendo necessria sua implementao em dois nveis distintos. Apenas o formato das seqncias deve ser obedecido, de forma a serem possveis suas decodificaes. A Figura 18 apresenta a estrutura da demultiplexao de uma seqncia de pacotes de transporte em um aparelho receptor de TV digital. A Figura 19 apresenta um exemplo sumrio da estrutura bsica de fluxos que compem um MPEG-2-TS. Cada fluxo usa um identificador nico, chamado de PID (packet id). No padro MPEG-2, trs identificadores de fluxo so reservados para usos especiais, que so: PAT (Program Association Table) PID=0, CAT (Conditional Access Table) PID = 1 e TSDT (Transport Stream Description Table) PID = 2. O fluxo PAT indica quais so todos os programas que so veiculados no TS. O PAT, de fato, indica apenas os PIDs dos fluxos que contm as tabelas dos programas, chamadas PMT (Program Map Table). Cada PMT indica os fluxos que compem o programa. Para cada fluxo especificado o tipo (vdeo, udio ou dados) e o PID dos pacotes que podem ser usados para gerar os streams elementares de vdeo, udio ou dados. O primeiro programa da tabela PAT contm informaes especficas da rede difusora, como dados sobre outros servios que podem estar disponveis em outros canais ou freqncias. A parte inferior da Figura 19 apresenta como estes pacotes podem ser multiplexados gerando um MPEG-2-TS.

Figura 19. Estrutura de tabelas do MPEG-2-TS (Tektronix, 2002).

Atravs do acesso s tabelas que esto nos fluxos PAT, CAT e PMT o multiplexador pode ser programado para inserir, remover e renomear programas e fluxos de vdeo, udio e dados, tanto no subsistema de Estdio quanto no subsistema de RdioIntroduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 33 de 33 -

Difuso, tornando possvel, a mistura de centenas de fluxos de contedos produzidas por diversos estdios, o que potencializa enormemente a aquisio e veiculao de contedos em sistemas de TVDI. 4.5. Padres para Codificao e Compresso Todos os sistemas j definidos adotaram para codificao e compresso de vdeo o padro MPEG-2. Este padro na realidade faz parte de uma famlia de padres (MPEG-1, MPEG-4, MPEG-7 etc.) de compresso de udio, vdeo, codificao de objetos multimdia, multiplexao de sinais e descrio de objetos de mdia. O MPEG-2 por sua vez composto por diversos padres para vdeo (ISO, 1996b), para udio com compatibilidade regressiva (ISO, 1998a), etc. O mtodo de compresso do MPEG-2 Vdeo baseia-se em algoritmos assimtricos, onde o custo da codificao muito maior que o da decodificao. Esta uma caracterstica interessante para a televiso, pois o alto custo do codificador assimilado pelo rdio-difusor, enquanto que o receptor do telespectador requer um decodificador de baixo custo. Os algoritmos so bastante flexveis, possibilitando a codificao de imagens com diferentes nveis de resoluo (qualidade). A parte do MPEG-2 que trata da codificao de vdeo um padro genrico, contendo muitos algoritmos e ferramentas. O uso de diferentes subconjuntos do MPEG de uma forma desordenada poderia inviabilizar a interoperabilidade dos sistemas. Por tal motivo, foi criada uma estrutura hierarquizada de perfis e nveis, de forma a garantir a interoperabilidade de sistemas mesmo que estes estejam operando em nveis diferentes. Existem cinco perfis definidos, sendo que cada perfil contempla um conjunto de facilidades, ou seja, de algoritmos e ferramentas, sendo orientado a determinados tipos de aplicaes. Os nveis definem as restries sobre os parmetros, o que restringe o escopo das aplicaes. Dentro de cada perfil, um nvel mais alto engloba todas as funcionalidades do nvel inferior. Com relao a codificao de udio, o sistema Europeu prev o uso do MPEG-2 BS e o Japons do MPEG-2 AAC. Os americanos optaram por usar o padro Dolby AC3. Todos os sistemas prevem a transmisso de 6 canais distribudos conforme mostra a Figura 20. Onde uma caixa de som deve ser instalada exatamente frente da audincia, acima ou abaixo do aparelho de televiso, principalmente para reproduo dos dilogos. Nas laterais, frente, deve ser instalado um par de caixas de som, para a reproduo da trilha sonora do programa sendo assistido, de forma similar ao efeito estreo j conhecido. Atrs da audincia, lateralmente, deve ser posicionado mais um par de caixas de som, para a reproduo do som surround, cuja principal funo proporcionar a terceira dimenso da trilha sonora. Por fim, uma sexta e ltima caixa de som, especial para a reproduo de sons de baixa freqncia (conhecida como subwoofer), dever ser posicionada, preferencialmente, prxima a uma das extremidades do ambiente. O ambiente estabelecido por um aparelho de televiso (normalmente de tela grande, maior do que 29 polegadas) e a distribuio das caixas de som acima apresentada ficou conhecido nos ltimos anos como home theater.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 34 de 34 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Figura 20. Distribuio das caixas de som em ambientes de TV Digital.

5. Padres de Middleware
As tecnologias de TVDI permitem a fabricao de STBs com diferentes arquiteturas de hardware, cujas capacidades de processamento, armazenamento e comunicao so bastante variveis. Alm disso, estes diversos dispositivos tambm podem adotar diferentes sistemas operacionais. Neste cenrio de hardware e software heterogneos, os desenvolvedores de aplicaes devem escrever diferentes verses dos programas para cada combinao de hardware e sistema operacional dos diversos tipos de STBs. Conseqentemente, a heterogeneidade das plataformas torna o desenvolvimento de aplicaes para TVDI uma atividade ineficiente e de custo elevado, que pode inviabilizar sua adoo em larga escala. Para tornar mais eficiente o desenvolvimento de aplicaes, bem como reduzir os custos associados, favorecendo assim a consolidao da TVDI, os fabricantes e provedores de contedo perceberam que a soluo adotar mecanismos que tornem portveis as aplicaes e os servios nos diversos tipos de STBs. Neste sentido, para atender ao requisito de portabilidade, os STBs devem prover s aplicaes uma API (Application Programming Interface) genrica, padronizada e bem definida (Figura 21). Esta API deve abstrair as especificidades e heterogeneidades de hardware e software dos diversos tipos de dispositivos receptores.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 35 de 35 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Aplicaes API Genrica Sistema Operacional

Desenvolvedores independentes Diferentes provedores de servios Diversas reas de aplicao

Implementaes independentes Diferentes plataformas de hardware Diferentes plataformas de software Diversos tipos de set-top box

Hardware
Figura 21. Portabilidade baseada em API genrica.

Para prover esta API genrica, uma camada de software adicional, denominada middleware, deve ser includa entre o sistema operacional e as aplicaes. O objetivo do middleware oferecer um servio padronizado s aplicaes, escondendo as especificidades e heterogeneidades das camadas de hardware e sistema operacional, que do suporte as facilidades bsicas de codificao, transporte e modulao de um sistema de televiso digital. Oferecendo uma API padronizada, o middleware incrementa a portabilidade das aplicaes. Desta forma, as aplicaes no acessam diretamente as facilidades providas pelo sistema operacional e o hardware do dispositivo, mas apenas os servios oferecidos pela camada de middleware. Conseqentemente, sem qualquer tipo de modificao no cdigo, as aplicaes podem ser diretamente executadas em qualquer STB que suporte o middleware adotado no desenvolvimento das mesmas. Em funo dos benefcios da adoo de uma camada de middleware, diversos rgos de padronizao concentraram esforos na especificao de padres de middleware. Como resultado destes esforos, atualmente, existem trs padres de middleware para TVDI: MHP - Multimedia Home Platform (ETSI, 2003c), DASE DTV Application Software Environment (ATSC, 2003) e ARIB - Association of Radio Industries and Businesses (ARIB, 2002). Apesar da existncia de padres, para ser suportado nos diversos tipos de STBs, um determinado padro de middleware deve ser implementado para cada plataforma de hardware e sistema operacional. Vale ressaltar que, embora as aplicaes se tornem portveis entre diferentes plataformas de hardware e sistema operacional, elas se tornam dependentes do middleware adotado. Ou seja, uma aplicao desenvolvida para o middleware MHP no diretamente portvel para o DASE e o ARIB. 5.1. Blocos Fundamentais Embora os diversos padres de middleware no sejam compatveis entre si, estes padres adotam verses modificadas, reduzidas ou estendidas de determinados componentes. Dentre estes blocos fundamentais comuns, podemos destacar os seguintes componentes: DAVIC - Digital Audio-Visual Council (DAVIC, 1999); HAVi - Home Audio Video
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 36 de 36 -

Interoperability (HAVi, 2001) e Java TV (Sun, 2000). Em funo da ampla adoo destes blocos fundamentais, antes de descrever os padres de televiso digital, apresentamos uma breve descrio das principais funcionalidades do DAVIC, HAVi e Java TV. 5.1.1. DAVIC DAVIC uma associao que representa diversos setores da indstria audiovisual, que foi iniciada em 1994, mas extinta aps 5 anos de atividade, conforme j previsto no seu estatuto. O principal objetivo da associao DAVIC foi especificar um padro da indstria para interoperabilidade fim-a-fim de informaes audiovisual digital interativa e por difuso. Para obter esta interoperabilidade, as especificaes DAVIC ( AVIC, 1999) D definem interfaces em diversos pontos de referncia, onde cada interface definida por um conjunto de fluxos de informaes e protocolos. As especificaes DAVIC especificam formatos de contedos para diversos tipos de objetos (fonte, texto, hipertexto, udio e vdeo) e tambm incluem facilidades para controlar a lngua adotada no udio e na legenda. Alm disso, as especificaes DAVIC definem diversas APIs relacionadas a informaes de servios, filtragem de informaes, notificao de modificaes nos recursos, sintonizao de canais de transporte (tuning) e controle de acesso: ?? Service Information API: prov s aplicaes uma interface de alto nvel para acessar informaes de servios presentes em fluxos MPEG-2. Esta API define mtodos para acessar todas as informaes presentes nas tabelas de servios ( I S Tables), permitindo, por exemplo, que um guia de programao eletrnico (EPG Electronic Program Guide) possa identificar o escalonamento dos programas de cada servio. ?? MPEG-2 Section Filter API: permite as aplicaes identificarem a ocorrncia de determinados padres nos dados mantidos em sees privadas MPEG-2. ?? Resource Notification API: define um mecanismo padro para aplicaes registrarem interesse em determinados recursos e serem notificadas de mudanas nestes recursos. ?? Tuning API: especifica uma interface de alto nvel para fisicamente sintonizar os diferentes fluxos de transporte. ?? Conditional Access API: prov uma interface bsica para o sistema de controle de acesso. Por exemplo, esta API permite a aplicao verificar se o usurio possui direito de acesso a um dado servio ou evento. ?? DSM-CC User-to-Network API: define mecanismos para que as aplicaes possam controlar as sesses DSM-CC. Para apresentao de sada grfica, as especificaes DAVIC adotam um subconjunto do pacote AWT de interface com o usurio da API Java. Para apresentar fluxos de udio e vdeo, as especificaes DAVIC adotam o JMF - Java Media Framework (Sun, 1999) e definem algumas extenses para caractersticas especficas de
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 37 de 37 -

televiso digital. Por exemplo, as especificaes definem APIs para sincronizar aplicaes em um instante especfico de tempo de um determinado contedo e gerenciar eventos includos no contedo ou incio da apresentao de uma determinada mdia. 5.1.2. HAVi HAVi uma iniciativa das oito maiores companhias de produtos eletrnicos que especifica um padro para interconexo e interoperao de dispositivos de udio e vdeo digital. A especificao (HAVi, 2001) permite que os dispositivos de udio e vdeo da rede possam interagir entre si, como tambm define mecanismos que permitem que as funcionalidades de um dispositivo possam ser remotamente usadas e controladas a partir de outro dispositivo. A especificao HAVi independente de plataforma e linguagem de programao, podendo ser implementada em qualquer linguagem para qualquer processador e sistema operacional. Desta forma, a especificao HAVi permite que os fabricantes projetem dispositivos interoperveis e os desenvolvedores de aplicaes possam escrever aplicaes Java para estes dispositivos usando a API provida pelo HAVi. No contexto de televiso digital interativa, o STB pode ser conectado em uma rede HAVi, podendo compartilhar seus recursos com outros dispositivos e usar os recursos de outros dispositivos para compor aplicaes mais sofisticadas. Por exemplo, um STB pode gerar um menu completo que permite ao usurio acessar funcionalidades de qualquer dispositivo ou uma combinao de dispositivos HAVi, usando somente o controle remoto da televiso e apresentando o sistema de forma consistente para o usurio. Como outro exemplo, um STB pode automaticamente programar o aparelho de vdeo cassete a partir das informaes obtidas do guia de programao eletrnico (EPG Electronic Program Guide). HAVi adota o padro de rede IEEE-1394 - Firewire (IEEE, 1995) que atualmente suporta uma taxa de transmisso de at 400Mbps e capaz de suportar comunicao iscrona, tornando-o adequado para tratamento simultneo de mltiplos fluxos de udio e vdeo digital em tempo real. A especificao HAVi define uma arquitetura de software distribuda cujos elementos de software asseguram a interoperabilidade e implementam servios bsicos tais como: gerenciamento da rede, comunicao entre dispositivos e gerenciamento da interface com os usurios. HAVi define um conjunto servios distribudos que suportam APIs Java padronizadas, permitindo que aplicaes distribudas possam transparentemente acessar os servios atravs da rede. Para assegurar a interoperabilidade, todos os elementos de software se comunicam usando um mecanismo de passagem de mensagem que adota formatos de mensagens e protocolos padronizados pelo HAVi. Os elementos de software da arquitetura HAVi so: ?? 1394 Communication Media Manager: coordena a comunicao assncrona e iscrona em uma rede IEEE-1394. ?? Messaging System: responsvel pela passagem de mensagens entre os diversos elementos de software.
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 38 de 38 -

?? Registry: define um servio de diretrio que permite localizar os diversos elementos de software na rede e identificar suas funcionalidades e propriedades. ?? Event Manager: implementa um servio de notificao de eventos, que sinaliza mudanas no estado dos elementos de software ou na configurao da rede HAVi. ?? Stream Manager: gerencia a transferncia em tempo real de fluxos de udio e vdeo entre elementos de software. ?? Resource Manager: controla o compartilhamento de recursos e realiza o escalonamento de aes. ?? Device Control Module (DCM): representa um dispositivo da rede HAVi e expe as APIs deste dispositivo. Cada dispositivo da rede HAVi possui um DCM associado. ?? DCM Manager: coordena a instalao e remoo de DCMs. 5.1.3. Java TV Java TV (Sun, 2000) uma extenso da plataforma Java que permite a produo de contedo para televiso interativa. O principal objetivo de Java TV viabilizar o desenvolvimento de aplicaes interativas portveis, que so independentes da tecnologia de rede de difuso. Java TV consiste de uma mquina virtual Java JVM Java Virtual Machine (Lindholm, T. and Yellin, F., 1999) e vrias bibliotecas de cdigos reusveis e especficos para televiso digital interativa. A JVM hospedada e executada no prprio STB. Java TV foi desenvolvido sobre o ambiente J2ME (Sun, 2002), que foi projetado para operar em dispositivos com restries de recursos. Neste contexto, determinadas caractersticas da plataforma Java foram excludas, pois so consideradas desnecessrias ou inadequadas para tais ambientes. No entanto, o J2ME no define funcionalidades especficas de televiso. Tais funcionalidades so includas no Java TV. Java TV permite nveis avanados de interatividade, grficos de qualidade e processamento local no prprio STB. Estas facilidades oferecem um amplo espectro de possibilidades para os desenvolvedores de contedo, mesmo na ausncia de um canal de retorno. Por exemplo, EPGs podem oferecer uma viso geral da programao disponvel, permitindo a mudana para o canal desejado pelo usurio. Atravs de mecanismos de sincronizao, aplicaes especficas podem ser associadas a um determinado programa de televiso. Alm disso, aplicaes isoladas podem executar de forma independente do programa de televiso. Em Java TV, programas de televiso tradicionais e interativos so caracterizados como um conjunto de servios individuais. Um servio uma coleo de contedo para apresentao em um STB. Por exemplo, um servio pode representar um programa de televiso convencional, com udio e vdeo sincronizados, ou um programa de televiso interativa, que contm udio, vdeo, dados e aplicaes associadas. Cada servio Java TV caracterizado por um conjunto de informaes que descrevem o contedo do servio (SI - Service Information). As informaes sobre os servios disponveis so armazenadas em uma base de dados de informaes de servios (SI database).
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 39 de 39 -

A API Java TV prov uma abstrao que permite aplicaes obterem informaes sobre os diversos servios disponveis de forma independente do hardware e dos protocolos adotados. Desta forma, uma aplicao pode ser reusada em uma variedade de ambientes. Java TV define vrios pacotes que suportam um conjunto de facilidades para selecionar servios, obter informaes dos servios, filtrar informaes de servios, controlar a apresentao dos servios, acessar informaes que so entregues atravs do canal de difuso e gerenciar o ciclo de vida das aplicaes. As informaes dos servios podem ser acessadas atravs de filtros que encontram apenas os servios de interesse da aplicao. A API Java TV usa o JMF (Sun, 1999) para tratar os fluxos digitais que so recebidos pelo STB, definindo fontes de dados e manipuladores de contedo. Uma aplicao Java TV denominada Xlet. Xlets no precisam estar previamente armazenados no STB, pois podem ser enviados pelo canal de difuso quando necessrios. Ou seja, o modelo Xlet baseado na transferncia de cdigo executvel pelo canal de difuso para o STB e posterior carga e execuo do mesmo, de forma automtica ou manual. Um Xlet bastante similar a um Applet na Web ou MIDlet em celulares e outros dispositivos mveis. O ciclo de vida de um Xlet composto por 4 estados: loaded, paused, active e destroyed. Todo Xlet deve implementar a interface javax.tv.xlet.Xlet, cujos mtodos so ativados para sinalizar mudanas de estado da aplicao. A Figura 22 ilustra o ciclo de vida de um Xlet, identificando os estados e os mtodos suportados por sua interface. startXlet() Start initXlet() Loaded Paused Active
pauseXlet() destroyXlet() destroyXlet() destroyXlet()

Destroyed
Figura 22. Ciclo de vida de um Xlet.

Para gerenciar o ciclo de vida das aplicaes (Xlets), Java TV define o conceito de um gerente de aplicao (application manager). O estado de um Xlet pode ser mudado pelo gerente de aplicao ou pelo prprio Xlet. Para tal, mtodos da interface Xlet devem ser ativados pelo gerente de aplicao ou pelo prprio Xlet. Neste ltimo caso, o prprio Xlet notifica o gerente de aplicao sobre a transio de estado via um mecanismo de callback, que configurado durante o processo de inicializao do Xlet. Desta forma, o estado de um Xlet sempre conhecido pelo gerente de aplicao. Inicialmente, o Xlet instanciado pelo gerente de aplicao usando o mtodo new. Aps a instanciao, o Xlet encontra-se no estado loaded. Em seguida, o Xlet pode ser inicializado pelo gerente de aplicao usando o mtodo initXlet. No processo de inicializao, o gerente de aplicao passa para o Xlet um objeto XletContext que define o contexto de execuo do Xlet. Atravs deste objeto, o Xlet pode obter propriedades do ambiente de execuo e notificar o gerente de aplicao sobre mudanas de estados via o mecanismo de callback.
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 40 de 40 -

Aps a inicializao, o Xlet encontra-se no estado paused. Neste estado, o Xlet no pode manter ou usar nenhum recurso compartilhado. O Xlet no estado paused pode ser ativado usando o mtodo startXlet. Aps a ativao, o Xlet encontra-se no estado active. Neste estado, o Xlet ativa suas funcionalidades e prov seus servios. O Xlet no estado active pode voltar ao estado paused usando o mtodo pauseXlet. Em qualquer estado, um Xlet pode ser destrudo usando o mtodo destroyXlet. Aps ser destrudo, o Xlet libera todos os recursos e finaliza a execuo. Java TV tem sido amplamente adotado por organizaes de padronizao, tornando-o um forte candidato a padro mundial para contedo de televiso digital interativa. Por exemplo, diversas implementaes de middleware adotam o modelo Java TV, com ligeiras diferenas entre si. 5.2. Padres de Midlleware para TVDI 5.2.1. DVB Na camada de middleware, o padro DVB adota o MHP, cuja especificao denominada DVB-MHP (Digital Video Broadcasting Multimedia Home Platform) (ETSI, 2003c). A plataforma MHP comeou a ser especificada pelo projeto DVB em 1997. No entanto, a primeira verso (MHP 1.0) foi oficialmente lanada em junho de 2000. Aps um ano do lanamento da primeira verso, em junho de 2001, foi lanada uma nova especificao (MHP 1.1). Em junho de 2003, foi lanada a verso 1.1.1 do MHP. O MHP define uma interface genrica entre as aplicaes e o set-top box (hardware e sistema operacional), no qual as aplicaes so executadas. Alm disso, o MHP define o modelo e o ciclo de vida das aplicaes, como tambm os protocolos e os mecanismos distribuio de dados em ambientes de televiso pseudo-interativa e interativa. Nas verses 1.1 e 1.1.1, o MHP prov funcionalidades adicionais em relao verso inicial, incluindo, por exemplo, a possibilidade de carregar programas interativos atravs do canal de retorno e o suporte opcional a aplicaes desenvolvidas usando uma linguagem declarativa. A partir da verso 1.1, o MHP adota modelos de aplicaes baseados em linguagens procedural e declarativa. No modelo procedural, o MHP suporta a execuo de aplicaes Java TV, denominadas DVB-J. No modelo declarativo, opcionalmente, o MHP suporta a execuo de aplicaes desenvolvidas com tecnologias relacionadas linguagem HTML, denominadas DVB-HTML. 5.2.2. DASE/ATSC Na camada de middleware, o padro ATSC adota o DASE (DTV Application Software Environment) (ATSC, 2003), definindo uma camada de software que permite a programao de contedo e aplicaes. O DASE adota modelos de aplicaes baseados em linguagens procedural e declarativa. No modelo procedural, o DASE suporta a execuo de aplicaes Java TV. No modelo declarativo, o DASE suporta a execuo de aplicaes desenvolvidas em uma verso estendida da linguagem HTML.
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 41 de 41 -

5.2.3. ARIB/ISDB Na camada de middleware, o padro ISDB adota a plataforma padronizada pelo ARIB (Association of Radio Industries and Businesses) (ARIB, 2002), definindo uma camada de software que permite a programao de contedo e aplicaes. O ARIB adota um modelo de aplicao baseado na linguagem declarativa denominada BML (Broadcast Markup Language), que baseada na linguagem XML (Extensible Markup Language).

6. Prtica em Desenvolvimento de Aplicaes para TVDI


Esta seo apresenta um breve tutorial sobre desenvolvimento de aplicaes para sistemas de TDVI, com nfase nas caractersticas do modelo DVB-J/MHP. So apresentados elementos fundamentais para montagem de plataformas para desenvolvimento e teste de Xlets. O ciclo de desenvolvimento de aplicaes ser apresentado, com identificao dos passos e competncias necessrias. Por fim, uma pequena aplicao ser desenvolvida, integrada e executada usando a uma plataforma de testes baseada em emuladores MHP. Sero explorados o uso de componentes visuais (widgets), o tratamento de eventos do controle remoto, e o acesso aos arquivos do carrossel. 6.1. Uma plataforma de desenvolvimento de Software para TVDI A Figura 23 apresenta um ambiente para desenvolvimento de software na plataforma MHP, que pode ser aplicada ao desenvolvimento em equipe (Frolich, 2002). Na plataforma apresentada destaca-se a presena de computadores PC 1, PC2,..., PCn, que so estaes de trabalho contendo o ambiente usado para edio, compilao e emulao dos Xlets. Os STBs so conectveis a um ou mais monitores de TV e servem para testes do funcionamento dos Xlets em condies prximas s reais. O computador Carousel Adm Interface usado para configurar os arquivos do Carrossel, entre os quais esto as aplicaes DVB-J que so produzidas nos PCs. O computador Multiplexer/Modulator realiza as funes de: (1) multiplexador de streams (incluindo o stream carrossel) e (2) modulador do sinal que ser difundido para os STBs. O esquema de modulao usado depende do tipo de interface com o STB, onde o mais simples e fazer modulao DVB-C (cabo). Para que o A/V possa ser usado durante os testes necessrio enviar ao multiplexador um stream com o que deve ser apresentado, atravs da instalao de um streamer, que pode estar na mesma mquina onde est o Gerador de Carrossel. O canal de retorno fornecido atravs de uma rede Ethernet, onde o MHP Back-End Server atua como o Provedor de Servio. O ciclo de desenvolvimento nesta plataforma composto por seis passos: 1. Edio e compilao dos Xlets no PC; 2. Emulao e teste inicial do Xlets no PC; 3. Carga do Xlet no Gerador de Carrossel; 4. Sintonizao do STB no canal onde est sendo transmitido o Carrossel; 5. Carga manual ou automtica (auto-start) do Xlet no STB; 6. Teste e coleta de dados sobre funcionamento do Xlet executando no STB.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 42 de 42 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Figura 23. Ambiente para Desenvolvimento MHP em Equipe (Frolich, 2002).

6.2. Uma plataforma pessoal para desenvolvimento DVB-J/MHP. A Figura 24 apresenta uma plataforma simplificada para desenvolvimento DVB-J/MHP, composta basicamente por trs elementos de hardware: (1) TV, (2) PC e (3) STB. O PC usado para codificao e emulao de Xlets. A carga de Xlets feita manualmente, com o uso de um software loader que carrega o Xlet no STB atravs de um cabo serial. O canal de retorno do STB feito atravs da sada Ethernet. Alguns STBs para desenvolvimento so comercializados pela ADB Global (ADB, 2004).

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 43 de 43 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Figura 24. Plataforma individual para Desenvolvimento DVB-J/MHP.

6.3. Uso de Emuladores Caso no se tenha acesso a um STB ainda assim possvel realizar-se a prototipao de aplicaes DVB-J, atravs do uso de emuladores. Emuladores permitem montar um ambiente para aprendizagem introdutria ao desenvolvimento de aplicaes DVB-J. importante ressaltar que o funcionamento de aplicaes DVB-J em emuladores apresenta diferenas significativas no que se refere a desempenho e interface com o usurio. Tendo estas limitaes em mente, so apresentados os passos necessrios para iniciar o desenvolvimento de aplicaes para TVDI. 6.4. O Emulador de Xlets da Espial Para emular os programas aqui apresentados ser utilizado o Espial's iTV reference platform, disponvel em (Espial, 2002). O emulador Espial contm um subconjunto mnimo do MHP, suficiente para a construo de Xlets simples. Uma verso de avaliao do emulador fornecida sem custo. Para que o emulador funcione preciso instalar o J2SDK (Java Development Kit). Aps o download e descompactao dos arquivos do emulador, pode-se executar o arquivo runit.bat, que est na pasta onde foi descompactado o emulador. Aparecer na tela um conjunto de trs janelas como na Figura 25.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 44 de 44 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Figura 25. Aspecto do Emulador Espial's iTV reference platform.

A tela de ttulo Espial, que aparece na frente das demais, executada sempre que o emulador iniciado, e pode ser fechada ao pressionar do mouse no boto Ok. A tela que aparece direita da figura emula o funcionamento do controle remoto. Observe que no existe teclado, e que em geral o usurio espera usar apenas as setas de navegao na regio inferior do controle remoto para interagir com a aplicao. A tela esquerda emula o funcionamento da tela de TV, e ser chamada de Monitor. Apenas imagens estticas so apresentadas no Monitor, pois o objetivo emular apenas o comportamento das aplicaes DVB-J, cuja interface em geral ser sobreposta ao vdeo emulado. No canto inferior direito do monitor existe um pequeno boto com um smbolo i, que emula o boto de ativao manual da interao, que aparece quando h um Xlet disponvel no carrossel.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 45 de 45 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Figura 26. Sistema de Arquivos do Emulador Espial.

A plataforma Espial permite a emulao da carga e execuo de Xlets e bem como dos arquivos no Carrossel. A estrutura de arquivos do emulador apresentada na Figura 26. A pasta channels emula as informaes associadas aos canais (servios) que so sintonizados pelo usurio, em nmero de 1 a 9. Na pasta de cada servio existe um arquivo channel.properties, em formato texto, no qual esto definidos os valores de dois atributos: TVImage=<IMAGE>.jpg e Xlet=<XLET>. <IMAGE> o nome do arquivo que contm a imagem a ser apresentada quando o servio for selecionado, e <XLET> o nome do Xlet a ser executado automaticamente quando o usurio selecionar o servio. Em um STB real o Xlet s executado automaticamente se o Xlet e STB estiverem configurados no modo autostart. A pasta carousel, contida na pasta de cada um dos servios, emula os arquivos que so distribudos no carrossel. A pasta docs contm javadocs da biblioteca MHP, apresentados na Figura 27.

Figura 27. Packages do subconjunto MHP disponveis no Emulador Espial.


Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 46 de 46 -

Na Figura 27, as pastas jmfstub e lib contem as bibliotecas de apoio compilao e emulao MHP. A pasta persistent emula o sistema de arquivos persistente do STB, possivelmente armazenado numa memria flash ou em um HD do STB real. Em um STB real, os Xlets tambm so distribudos atravs da pasta carrossel, mas neste emulador eles so montados a partir da rea raiz do sistema de arquivos do emulador. Na pasta test/sports existe um Xlet de nome test.sports.SportsXlet pode ser associado a qualquer servio. 6.4. Um Exemplo de Xlet: QuizXlet. A Figura 28 apresenta o aspecto visual do QuizXlet, um prottipo de aplicao DVB-J que faz perguntas e apresenta respostas ao usurio, estimulando sua interao com a TV.

Figura 2 Aspecto Visual do QuizXlet executado no emulador Espial.

O QuizXlet formado por duas classes: QuizXlet e QuizPanel, e importa vrias outras classes, apresentadas no diagrama da Figura 29. O cdigo completo das classes que forma o QuizXlet apresentado a seguir, e para facilitar o entendimento do mesmo, as linhas que realizam as funes descritas no texto so indicadas entre chaves. QuizXlet implementa a interface Xlet {28}, e deste modo se obriga a implementar os mtodos initXlet() {51}, startXlet() {75}, pauseXlet() {89} e destroyXlet() {93}. Adicionalmente, o QuizXlet responsvel por obter as perguntas e respostas que sero mostradas ao usurio atravs do object carrossel. Para tal, QuizXlet implementa a interface Asynchronous Loading Event Listener {28}, e deste modo pode ser notificado da carga do arquivo no carrossel atravs do mtodo receiveEvent() {97}. Este ltimo mtodo recebe como argumento um Asynchronous Loading Event, que contm referncia a um DSMCCObject {99}, que um arquivo (File). Um FileInputStream {104} pode ser usado para ler o DSMCCObject. QuizXlet tambm responsvel por obter espao na tela de TV, para apresentar a GUI. Este espao definido por um objeto HAVi do tipo HScene. Um Xlet obtm uma HScene {68} atravs da chamada de um mtodo de HSceneFactory.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 47 de 47 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

A fbrica de cenas {66} precisa de um conjunto de parmetros para formatao para a cena, que esto definidos em HSceneTemplate {55}, este timo contendo principalmente a posio (HScreenPoint {56}) e tamanho (HScreenDimension {57}) da cena na tela de TV. A HScene obtida herda de java.awt.Container, que por sua vez herda de java.awt.Component. Deste modo, a uma cena podem ser adicionados {127} outros componentes AWT, como o QuizPanel {125}. Para organizar o QuizPanel no centro da HScene, QuizXlet utiliza um BorderLayout {70}. QuizPanel um HAVi Container, e apresenta dois componentes visuais (widgets) que desempenham funes de Label e Buttom, e que so ELabel {54} e EButtom {57}, respectivamente. Estes widgets, produzidos pela Espial, no pertencem ao padro MHP. Qualquer STB DVB/MHP real contm uma verso completa do middleware MHP, que contm componentes padronizados HAVi.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 48 de 48 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Figura 29. Arquitetura do QuizXlet.

Para capturar a interao do usurio atravs do controle remoto, QuizPanel implementa a interface de notificao UserEventListener {24} e se registra junto ao EventManager {44}, informando-lhe, atravs de um UserEventRepository {40}, qual o conjunto de eventos de interesse que deseja ser notificado. O quadro abaixo apresenta o cdigo completo do Xlet QuizXlet.
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 49 de 49 -

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55

/* * QuizXlet - v 1.0 - 25/05/2004 * Xlet de perguntas e respostas que funciona em plataforma de TVDI * Copyright (c) 2004, por Jorge Henrique Cabral Fernandes (jhcf@cic.unb.br) * Uso livre para fins educacionais e no lucrativos, desde que * sejam mantidas intactas as informaes originais de autoria */ package br.unb.cic.introtvdi; // Para leitura dos arquivos do carrossel. import java.io.FileInputStream; import java.io.IOException; // gerenciador de layout awt import java.awt.BorderLayout; // xlet import javax.tv.xlet.Xlet; import javax.tv.xlet.XletContext; // para obter arquivos do carrossel import org.dvb.dsmcc.AsynchronousLoadingEvent; import org.dvb.dsmcc.AsynchronousLoadingEventListener; import org.dvb.dsmcc.DSMCCObject; import org.dvb.dsmcc.InvalidPathNameException; // para obter espao na tela de TV import org.havi.ui.HScene; import org.havi.ui.HSceneFactory; import org.havi.ui.HSceneTemplate; import org.havi.ui.HScreenDimension; import org.havi.ui.HScreenPoint; public class QuizXlet implements Xlet, AsynchronousLoadingEventListener { // questes e respostas padro do QuizXlet private String defaultQ = "Desafio"; private String defaultA = "Aguarde..."; private String answer = null; private String question = null; //Cena sobre a qual ser apresentada o Xlet. private HScene hScene; //Painel que contm a GUI do Xlet private QuizPanel panel; //Context que passado para o Xlet na inicializao private XletContext xletContext; // Fbrica de cenas HSceneFactory factory; // Template para definir o formato da cena desejada pelo Xlet HSceneTemplate hSceneTemplate; // Localizao da cena na tela HScreenPoint hScreenPoint; // Dimenso da cena solicitada HScreenDimension hScreenDimension; // Layout manager BorderLayout layout; //Chamado para inicalizar o Xlet, uma nica vez public void initXlet(XletContext context) { System.out.println("init QuizXlet (" + context + ")"); xletContext = context; //Define um template que ser usado para pedir a cena fbrica hSceneTemplate = new HSceneTemplate();
Pgina 50 de 50 -

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111

hScreenPoint = new HScreenPoint((float) 0.0, (float) 0.0); hScreenDimension = new HScreenDimension((float) 1.0, (float) 1.0); hSceneTemplate.setPreference( HSceneTemplate.SCENE_SCREEN_DIMENSION, hScreenDimension, HSceneTemplate.REQUIRED); hSceneTemplate.setPreference( HSceneTemplate.SCENE_SCREEN_LOCATION, hScreenPoint, HSceneTemplate.REQUIRED); factory = HSceneFactory.getInstance(); // obtm uma cena hScene = factory.getBestScene(hSceneTemplate); // Configura o layout manager para a cena hScene.setLayout(new BorderLayout()); // insere o painel quiz na cena changePanel(defaultQ, defaultA); } // Coloca o Xlet em estado ativo public void startXlet() { System.out.println("start QuizXlet"); // busca informaes no carrossel try { System.out.println("Requesting file"); DSMCCObject carouselFile = new DSMCCObject("msgfile"); // solicita notificao assncrona quando o arquivo estiver disponvel carouselFile.asynchronousLoad(this); } catch (InvalidPathNameException e) { System.out.println("Invalid path name!"); } } // Chamado pelo app manager quando o Xlet precisa parar public void pauseXlet() { System.out.println("pause QuizXlet"); } // Chamado pelo app manager quando o Xlet vai ser removido da memria public void destroyXlet(boolean unconditional) { System.out.println("destroy QuizXlet (" + unconditional + ")"); } // recebe evento do DSMCC controller public void receiveEvent(AsynchronousLoadingEvent ale) { // verifica se um arquivo que foi encontrado no carrossel DSMCCObject file = (DSMCCObject) ale.getSource(); try { // abre o arquivo e l as perguntas e respostas FileInputStream fis = new FileInputStream(file); byte[] buffer = new byte[100]; fis.read(buffer); String quiz = new String(buffer); int idx1 = quiz.indexOf("-", 0); int idx2 = quiz.indexOf("-", idx1 + 1); question = new String(buffer, 0, idx1); answer = new String(buffer, idx1 + 1, idx2 - idx1 - 1); // muda o painel na GUI changePanel(question, answer);
Pgina 51 de 51 -

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 }

} catch (IOException ioe) { System.out.println("Error reading file in carrossel: " + ioe); } } // modifica o painel apresentado private void changePanel(String q, String a) { // remove todos os componentes de GUI da cena atual if (panel != null) { panel.release(); hScene.remove(panel); } // Cria um QuizPanel, com perguntas e respostas especficas panel = new QuizPanel(q, a, 10, 10, 500, 200); // insere o novo componente de GUI na cena hScene.add(panel); // Prepara e apresenta a cena no monitor de TV hScene.validate(); hScene.repaint(); hScene.setVisible(true); }

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

/* * QuizPanel.java - V 1.0 - 25/05/2004 * Painel que apresenta uma pergunta e mostra a resposta correspondente, * caso o usurio pressione o boto <enter> do controle remoto. * Copyright (c) 2004, por Jorge Henrique Cabral Fernandes (jhcf@cic.unb.br) * Uso livre para fins educacionais e no lucrativos, desde que * sejam mantidas intactas as informaes originais de autoria. */ package br.unb.cic.introtvdi; // gerenciador de layout awt import java.awt.BorderLayout; // interao do usurio com o Xlet atravs do controle remoto import org.havi.ui.event.HRcEvent; import org.dvb.event.EventManager; import org.dvb.event.UserEvent; import org.dvb.event.UserEventListener; import org.dvb.event.UserEventRepository; // o QuizPanel um container import org.havi.ui.HContainer; // os widgets so da Espial import espial.awt.EButton; import espial.awt.ELabel; import espial.awt.EPanel; public class QuizPanel extends HContainer implements UserEventListener { // Contm o conjunto de eventos que sero tratados pelo Xlet. private UserEventRepository userEventRepository; private EventManager eventManager; // Gerenciador de eventos private EPanel showPanel; // sub-painel private EButton showButton; // boto private ELabel showLabel; // rtulo private BorderLayout layout1, layout2; // gerenciadores de layout private String question; // pergunta apresentada ao usurio
Pgina 52 de 52 -

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75

private String answer; // resposta // cria um painel de perguntas e respostas public QuizPanel(String q, String a, int x, int y, int w, int h) { super(x, y, w, h); this.question = q; this.answer = a; //Define inputs do usurio que sero tratados userEventRepository = new UserEventRepository("EventsOfInterest"); userEventRepository.addAllArrowKeys(); userEventRepository.addKey(HRcEvent.VK_ENTER); eventManager = EventManager.getInstance(); eventManager.addUserEventListener(this, userEventRepository); // cria um layout manager associado ao painel layout1 = new BorderLayout(); this.setLayout(layout1); // Cria um sub-painel que conter os componentes apresentados showPanel = new EPanel(); layout2 = new BorderLayout(); showPanel.setLayout(layout2); this.add(showPanel, BorderLayout.CENTER); //Cria um boto, que ao ser ativado mostra a mensagem showButton = new EButton(question); showPanel.add(showButton, BorderLayout.NORTH); // Cria o label que vai conter a resposta. showLabel = new ELabel("?"); showLabel.setCentered(true); showPanel.add(showLabel, BorderLayout.CENTER); // inicia com foco no boto showButton.requestFocus(); } //end constructor // remove tratamento de eventos a partir deste componente public void release() { eventManager = EventManager.getInstance(); eventManager.removeUserEventListener(this); } // Trata eventos do controle remoto public void userEventReceived(UserEvent e) { if (e.getCode() == HRcEvent.VK_ENTER) { showLabel.setLabel(answer); repaint(); } } }

7. Concluses e Agradecimentos
Este captulo apresentou uma introduo Televiso Digital Interativa (TVDI), que esperamos tenha servido para introduzir estudantes e profissionais de computao na rea. Muito ainda h que ser aprendido nesta rea na qual a cincia da computao e o desenvolvimento de software foram inseridos recentemente. O trabalho aqui apresentado foi resultado da vivncia prtica e terica pela qual os autores passaram durante a realizao de vrios projetos de pesquisa e desenvolvimento da rea de Vdeo e TV Digital, nos Laboratrios LAVID-DI-UFPB e Natalnet-DIMApUFRN. Gostaramos de externar nossos agradecimentos a todos os professores, alunos e
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 53 de 53 -

tcnicos que contriburam para que o conhecimento aqui apresentado fosse compreendido, especialmente as contribuies de Luiz Eduardo Leite, Milano Gadelha e Jorge Washington de Sousa. Todos os erros e omisses so de inteira responsabilidade dos autores. Finalmente os autores gostariam de indicar o apoio financeiro e logstico das seguintes instituies e projetos, sem o qual no teria sido possvel a realizao deste trabalho: Universidade Federal da Paraba Departamento de Informtica; Universidade Federal do Rio Grande do Norte Departamento de Informtica e Matemtica Aplicada; Universidade de Braslia Departamento de Cincia da Computao; Projeto HITV para Desenvolvimento de Hardware e Software para Sistemas de Televiso Digital de alta Definio, financiado pela FINEp; Projeto BLNet de Acesso em Banda Larga Internet em Plataforma de TV Digital, financiado pelo CPqD; Projeto I2TV - Infraestrutura Internet2 para Desenvolvimento e Teste de Programas e Ferramentas para TV Interativa, financiado pelp CNPq; e Projeto GT de Vdeo Digital, financiado pela RNP.

Referncias
ADB (2004). ADB Advanced Digital Broadcast. 2004. http://www.adbglobal.com. ARIB. (2002) ARIB STD B24 - ARIB Standard: Data Coding and Transmission Specification for Digital Broadcasting, Revision 3.2. 2002. ATSC. (2001). Standard A/52A - Digital Audio Compression (AC-3) Standard, Revision A. ATSC. (2003) Standard A/100 - DTV Application Software Environment Level 1 (DASE-1). ATSC. (2004) Advanced Television Systems Committee, www.atsc.org, acessado em junho de 2004. Broadcast Papers. (2004a) Asset Management Papers. Disponvel http://www.broadcastpapers.com/asset/asset.htm. Acessado em junho de 2004. URL:

Broadcast Papers. (2004b) Editing and Post-Production Management Papers. Disponvel URL: http://www.broadcastpapers.com/editing/editing.htm. Acessado em junho de 2004. Broadcast Papers. (2004c) TV Transmission Papers. Disponvel URL: http://www.broadcastpapers.com/tvtran/tvtran.htm. Acessado em junho de 2004. Broadcast Papers. (2004d) Interactive TV and Datacasting Papers. Disponvel URL: http://www.broadcastpapers.com/data/data.htm. Acessado em junho de 2004. CPqD. (2001). Relatrio Integrador dos Aspectos Tcnicos e Mercadolgicos da Televiso Digital. Anatel. Maro de 2001. DAVIC. (1999) DAVIC 1.4.1 Specification Part 9: Information Representation. DiBEG. (2004) Digital Broadcasting Experts Group, www.dibeg.org, acessado em junho de 2004. DVB. (2004) Digital Video Broadcasting Project, www.dvb.org, acessado em junho de 2004.
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 54 de 54 -

Espial. (2002) iTV Development Platform. http://www.devicetop.com/dt/tutorials/DVB-MHP-RefImpl.ZIP. Acessado em junho de 2004. ETSI. (1997a) ETSI EN 300 421 - Digital Video Broadcasting (DVB): Framing Structure, Channel Coding and Modulation for 11/12 GHz Satellite Services, Edition 1.1.2, August 1997. ETSI (1997b) ETSI EN 300 748, Digital Video Broadcasting (DVB): Multipoint Video Distribution Systems (MVDS) at 10 GHZ and above, Edition 1.1.2, August 1997. ETSI. (1997c). ETSI EN 300 749 - Digital Video Broadcasting (DVB): Microwave Multipoint Distribution Systems (MMDS) below 10 GHz, Edition 1.1.2, August 1997. ETSI. (1998) ETSI EN 300 429 - Digital Video Broadcasting (DVB): Framing Structure, Channel Coding and Modulation for Cable Systems, Edition 1.2.1, April 199 ETSI. (2001) ETSI EN 300 744 - Digital Video Broadcasting (DVB): Framing Structure, Channel Coding and Modulation for Digital Terrestrial Television, Edition 1.4.1, January 2001. ETSI (2003b) ETSI EN 301 192 - Specification for Data Broadcast. Edition 1.3.1. May 2003. ETSI (2003c) ETSI TS 102 812 - Digital Video Broadcasting (DVB) Multimedia Home Platform (MHP) Specification 1.1.1, June 2003. Frolich. (2002). "Establishment of MHP application development and play-out seen from a public broadcasters point of view". IBC 2002 Conference. HAVi (2001). HAVi v1.1 - Home Audio Video Interoperability Version 1.1, www.havi.org, acessado em junho de 2004. IEEE (1995). IEEE1394 - Standard for a High Performance Serial Bus, IEEE, 1995. ISDB. (1998) ISDB-T - Terrestrial Integrated Services Digital Broadcasting (ISDB-T): Specification of Channel Coding, Framing Structure and Modulation, September 199 ISO. (1996a). ISO/IEC 13818-1 - Information Technology Generic Coding of Moving Pictures and Associated Audio Information Part 1: Systems (MPEG-2 Systems), 1996. ISO. (1996b). ISO/IEC 13818-2 - Information Technology Generic Coding of Moving Pictures and Associated Audio Information Part 2: Video (MPEG-2 Video), 1996. ISO. (1997). ISO/IEC 13818-7 - Information Technology Generic Coding of Moving Pictures and Associated Audio Information: Advanced Audio Coding, 1997. ISO. (1998a). ISO/IEC 13818-3 - Information Technology Generic Coding of Moving Pictures and Associated Audio Information Part 3: Audio (MPEG-2 Audio), Second Edition, 199
Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados. Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004. Pgina 55 de 55 -

ISO. (1998b). ISO/IEC 13818-6 - Information Technology Generic Coding of Moving Pictures and Associated Audio Information: Extensions for Digital Storage Media Command and Control. 199 Sparano, D. What Exactly is 8-VSB Anyway?, The Guide to Digital Television, 3rd edition, Silbergleid & Pescatore org, Miller Freeman Inc, March 2000. Sun. (1999) JMF 2.0 - Java Media Framework 2.0 API Guide, Sun Microsystems November 1999. Sun. (2000). Java TV 1.0 - Java TV API Technical Overview: The Java TV API White Paper, Version 1.0, Sun Microsystems. November 2000. Sun. (2002) JSR62 - J2ME Personal Profile Specification 1.0, Final Release, September 2002. Lindholm, T. and Yellin, F. (1999), The Java Virtual Machine Specification, Second Edition, Addison-Wesley, 1999. Tektronix. (2002) A Guide to MPEG Fundamentals and Protocol Analysis (Including DVB and ATSC). Disponvel URL: http://www.tektronix.com.

Introduo Televiso Digital Interativa: Arquitetura, Protocolos, Padres e Prticas. Copyright 2004, por Jorge Fernandes, Guido Lemos e Gledson Elias. Todos os Direitos Reservados.

Pgina 56 de 56 -

Apresentado na Jornada de Atualizao em Informtica do Congresso da Sociedade Brasileira de Computao, JAI-SBC, em Salvador BA Agosto de 2004. Anais do JAISBC, 2004.

Anda mungkin juga menyukai