quarta-feira, 27 de fevereiro de 2008

emissoras e fabricantes de TV indignados

as emissoras e fabricantes de TV Digital estão bufando com a atual situação da TV digital no país.

a maior reclamação é sobre o Ginga.

leia a notícia publicada no Baguete: clique aqui

segunda-feira, 25 de fevereiro de 2008

palestra na Campus Party sobre TV Digital

palestra do professor Luís Fernando Soares na Campus Party sobre TV Digital:
veja aqui

o objeto Carrossel

o nome é bonito "Carrossel", ou em inglês, "Carousel"...

na prática, é apenas uma forma de disponibilizar arquivos através do canal de difusão, já que muitos receptores não suportam o canal de interatividade (formado pelo canal de descida e retorno) para baixar os arquivos das aplicações.

o objeto Carousel funciona da seguinte forma:
- a árvore de diretórios e seus arquivos são transformados em módulos e transmitidos para os receptores em forma de objetos, juntamente com os dados de vídeo e áudio do programa em exibição. (pode ocorrer de haver canais especiais, como os de compra e jogos da Sky, nesse caso, toda a banda do canal será utilizada para esses objetos)
- cada módulo é transmitido em forma de um único objeto, e esses objetos são enviados em seqüência, um após o outro
- ao término do envio seqüencial de módulos o processo é reiniciado. por isso o nome "carrossel": é como se cada diretório fosse um "cavalinho" do carrossel, e após terminar uma volta começa tudo de novo.

os arquivos que podem ser disponibilizados vão desde as classes das aplicações a imagens de fundo, imagens de botões, arquivos de áudio, animações, arquivos de dados, XML e muitos outros. ou seja: todos os arquivos das aplicações.

para se aprofundar mais no objeto Carousel, recomendo o livro Interactive TV Standards: A Guide to MHP, OCAP, and JavaTV do Steve Morris.
dica: compre a versão impressa, não faça como eu, que comprei a versão PDF e ela vem bloqueada e eu não consigo copiar trechos nem imprimir :P


domingo, 24 de fevereiro de 2008

tutorial de instalação do Java TV e XletView

você ouviu falar de TV Digital, descobriu que é possível desenvolver aplicações interativas para ela, pesquisou no Google e descobriu que existe uma API chamada Java TV e resolveu fazer seu trabalho de conclusão sobre o assunto.

você pesquisou um pouco mais e descobriu que existe o middleware Ginga, que será utilizado nos set-top-boxes (sim, vc já sabe que o nome do aparelho receptor da TV digital é esse) do padrão brasileiro de TV digital terrestre.

você já programa em Java e gostaria de desenvolver aplicações para o Ginga-J, mas como esta possibilidade não está disponível ainda, resolveu utilizar diretamente as bibliotecas JavaTV na sua IDE preferida e o emulador XletView para rodar seus Xlets.

assim como eu e você tivemos essa idéia, muitas outras pessoas estão tendo neste momento e terão no futuro.

como eu já passei alguns maus bocados até entender como a coisa funciona e conseguir desenvolver algo, resolvi escrever esse tutorial sobre como preparar o ambiente para compilar sua aplicação e colocar o seu primeiro Xlet para rodar.

eu vou descrever os passos que EU fiz, sei que existem outras ferramentas e maneiras de fazer a mesma tarefa, talvez mais produtivas, talvez melhores, mas do jeito que eu fiz funcionou... e fui aprovado no meu TCC, que era o objetivo maior : )

primeiro, baixe e instale as seguintes programas e bibliotecas:

- Net Beans IDE com JDK (Java Development Kit)
- JavaTV API 1.0
- XletView - o emulador (recomendo baixar os arquivos fonte)
- JMF (Java Media Framework) - para exibir vídeos

obviamente, você pode usar outra IDE de sua preferência, como o Eclipse.. mas como falei anteriormente, estou descrevendo os passos que eu segui.
ah, e instalei o Net Beans em português - o que me arrependi depois, mas nada que comprometa o sucesso da operação : ) portanto, vou descrever os ítens de menu em português, mas se você é ninja o suficiente para instalar em inglês, saberá traduzir.

tendo tudo isso instalado, o segredo agora está nos CLASSPATHs da sua aplicação.

- abra o Net Beans (ou sua outra IDE favorita)
- crie um novo projeto, defina onde ele será salvo, blablabla...
- referencie as seguintes bibliotecas no CLASSPATH do seu projeto:
  • - arquivo "javatv_fcs\javatv.jar"
  • - arquivo "xletview.jar"
  • - pasta "javatv_fcs\lib"
o local dos arquivos dependerá de onde vc instalou, no meu caso - porque instalei tudo na pasta "C:\Arquivos de programas\Java", estão em:
C:\Arquivos de programas\Java\javatv_fcs\javatv.jar
C:\Arquivos de programas\Java\xletview-0.3.6\xletview.jar
C:\Arquivos de programas\Java\javatv_fcs\lib

dica: utilizando o Net Beans, para adicionar clique com o botão direito em "Bibliotecas", depois "Adicionar Jar/Pasta", e aí selecione os arquivos e a pasta descritos acima.

o resultado deve ficar como na imagem abaixo:

você pode estar perguntando "por que adicionar o xletview.jar?"
porque é a maneira mais fácil de referenciar as bibliotecas do MHP e do HAVi, que estão contidas no pacote, e assim você poderá usar suas classes na aplicação e compilar sem problema nenhum.

- vamos pegar um atalho (afinal, pra que reinventar a roda?) e baixar um exemplo de código disponibilizado pela revista Mundo Java edição 17:
baixe aqui o exemplo

- agora é so compilar e gerar os arquivos .class

para executar o seu Xlet no emulador:
- abra o XletView
dica: abra via console, pois clicando diretamente no arquivo xletview.jar você não conseguirá ver o resultado de comandos como System.out.println() e mensagens de erro. para isso, execute o comando:

C:\WINDOWS\system32\java.exe -jar "C:\Arquivos de programas\Java\xletview-0.3.6\xletview.jar"
dica 2: crie um atalho para o comando acima, pra facilitar a sua vida ; )

- no menu "Applications", selecione "Manage applications":

- na janela que se abre, escolha "New Application":
- informe o nome para referência da sua aplicação, o caminho onde se encontra o arquivo .class gerado na compilação e o .class propriamente dito:
- salve e execute o Xlet. para executar, basta abrir o menu "Applications" e selecionar o nome que você deu anteriormente.

o resultado será o seguinte:
para cada tecla que você pressiona no controle remoto (lado direito da imagem) será exibido o nome do botão.

atingimos assim o objetivo desse tutorial, que era demonstrar os passos para instalação, configuração do ambiente e execução do seu primeiro Xlet.

agora você deve se aprofundar nos estudos para entender o ciclo de vida do Xlet, dominar a criação de elementos como botões e campos e uma série de outras características próprias de Xlets.

e o maior desafio: conseguir carregar seu Xlet em uma aplicação Ginga-NCL. se você conseguir, me ensine como : )

um abraço e sucesso! qualquer dúvida, entre em contato através de comentários ou pelo grupo Desenvolvimento para TV digital


importante: se você deseja copiar ou distribuir este conteúdo, utilize o arquivo disponibilizado em:
http://devdtv.googlegroups.com/web/Tutorial_JavaTV_XletView.pdf
mantendo a referência ao autor e ao site

quinta-feira, 21 de fevereiro de 2008

curso de TV Digital em março na Unicamp

Curso TV Digital

"Descrição do Curso
O curso Desenvolvendo Aplicações para TV Digital Interativa Utilizando JavaTV, MHP, ACAP, ARIB e GINGA é destinado a pessoas que desejam começar a trabalhar com desenvolvimento de aplicações para TV Digital Interativa (TVDI), se especializando na API JavaTV que foi criada pela Sun Microsystems. Além disso, serão abordadas diversas características e ferramentas de desenvolvimento baseadas em software livre voltadas para as especificações de middleware para TVDI adotadas na Europa (MHP), nos EUA (ACAP), no Japão (ARIB) e no Brasil (GINGA).

Data e Local do Curso
Data: 26 e 27 de Março de 2008
Local: CPV - UNICAMP - CAMPINAS - SP

Valor do Curso: R$ 950,00 (individual) *
* Desconto especial para inscrições em grupo.

Maiores Informações
Telefone: (19) 3579-0744
E-mail: atendimento@rcasoft.com.br
WEB Site: http://www.rcasoft.com.br
"

fonte: RCA Soft

sexta-feira, 15 de fevereiro de 2008

receptor de TV digital USB da Leadership

a Leadership lançou seu receptor USB para o sistema brasileiro de TV digital.



vejam as características disponibilizadas no site do fabricante:

Nome do Produto:
Receptor de TV Digital USB

Descrição:
- Totalmente compatível com o padrão de TV digital brasileiro.
- Assista a programação da TV Digital diretamente no seu PC ou notebook.
- Total mobilidade permitindo assistir TV Digital a qualquer hora e em qualquer lugar com seu notebook.
- Permite gravar a programação da TV diretamente no HD.
- Permite agendamento de gravações.
- Função Time Shifiting que permite utilizar a função pause em programas de TV.
- Acompanha duas antenas, sendo uma mini retrátil para mobilidade e outra de alta sensibilidade para locais com sinal baixo.
- Sintonia automática de canais.
- Acompanha o software Presto! PVR Monitor
- Conexão via porta USB.

Características do produto:
- Alta sensibilidade: -97dBm
- Baixo consumo de energia: 500mW ~ 550mW
- Recepção de Canais: UHF 13 - 69 (470~806Mhz)
- Proteção contra cópia: Saída AES 128 bit
- Interface USB 2.0 (5V ± 5%), dispensa alimentação externa.
- Codificação do Hardware: Suporte para codificação do Hardware e cópia única

Características de reprodução:
- Decodificador do software: H.264 e decodificador de áudio.
- Lista de canais: Lista de canais de TV e informações do canal com uma janela com a lista dos programas (depende da disponibilidade da emissora)
- Controle de vídeo: Brilho / contraste / cor / controle de saturação.

Geral:
- Controle de qualidade de vídeo para diferentes níveis de tolerância
- Transferência de hora / vários idiomas / integrado.
- Varredura de canais / programação de gravação
- EPG - Exibe os horários da programação dos canais e a sua descrição (depende da disponibilidade da emissora)

Requerimentos do Sistema:
- Sistema operacional: Windows 2000 SP4 / XP SP2 / Vista
- DirectX 9.0a ou acima
- CPU: processador com (1.5GHz)
- Memória RAM: 128MB RAM
- Placa de vídeo com 64MB RAM

Conteúdo da embalagem:
1 Receptor de TV Digital USB
1 Mini antena retrátil
1 Antena Retrátil de alta sensibilidade
1 CD-ROM (manual do usuário, software e driver

fonte: Leadership

quarta-feira, 13 de fevereiro de 2008

Ginga NCL e Microsoft

e não é que a Microsoft também está planejando criar uma linguagem declarativa semelhante ao XML, assim como o Ginga NCL e outras linguagens para TV digital?

especula-se que a linguagem deva se chamar "D", o que pode cair bem, pois seria o próximo passo depois do "C" e também a inicial de "Declarative" : )

[obs.: a linguagem D já existe, mas quem falou sobre o nome foi a Computerworld]

li recentemente um livrinho da série "Empresários de Êxito" contando a história do Bill Gates, e o que ficou fortemente ressaltado é que ele e a Microsoft nunca criaram nada, apenas pegam boas idéias, "melhoram" e depois vendem. o autor do livro é Robert Heller

nesse livrinho há uma citação de Bill Gates onde ele fala que a próxima onda tecnológica será a TV digital (pág. 18). talvez, quem sabe, o "D" seja de "Digital TV"?

fonte: Computerworld

saiba mais: Wikipedia - Declarative programming

terça-feira, 5 de fevereiro de 2008

Zero Hora: Estado quer aproveitar chegada da TV digital para atrair investimentos

boa notícia a que saiu no site da Zero Hora hoje:

fonte: Estado quer aproveitar chegada da TV digital para atrair investimentos

vamos torcer para que o RS leve essa, apesar de termos alguns acontecimentos recentes que me fazem desanimar um pouco, como a ida da fábrica da Dell para São Paulo (leia aqui e aqui).

middlewares e bibliotecas para TV Digital

neste post anterior eu citei que foram avaliados 3 padrões existentes para a adoção das transmissões terrestres no Brasil: Europeu, Americano e Japonês.

vou agora descrever algumas das principais características de cada sistema, quais os seus middlewares e as APIs suportadas.

Padrão Europeu (DVB-MHP)
Sistema de transmissão: DVB (Digital Vídeo Broadcasting)
O enfoque inicial deste sistema foi a interatividade em detrimento da qualidade. Possui três subdivisões em relação ao sistema de transmissão:
DVB-T: Terrestre, por radiodifusão
DVB-C: Cabo
DVB-S: Satélite

Na maioria dos países o DVB-T é pago, e os receptores (set-top-boxes) subsidiados pelas operadoras de TV ou até gratuitos.
Middleware: MHP (Multimedia Home Platform)
Baseado no uso de uma JVM (Java Virtual Machine) e um conjunto de APIs possibilita que programas feitos em Java acessem recursos do receptor de forma padronizada. Uma aplicação DVB que utiliza Java é chamada DVB-J. Na especificação 1.1 do MHP foi introduzido o DVB-HTML. Possibilita entre diversos outros recursos o download de aplicações, que são armazenadas em memória persistente e acesso a smart-cards.
O padrão DVB-MHP é utilizado, além dos países europeus, na Austrália, Malásia, Índia, África do Sul e Honk-Kong na China.

Padrões Americanos (ATSC-DASE e OCAP)
ATSC-DASE: Terrestre
Sistema de transmissão: ATSC (Advanced Television Systems Committee)
O principal enfoque deste sistema é a transmissão de alta definição (HDTV, High Definition Television), em detrimento da interatividade e multiprogramação.
Apresenta problemas na recepção através de antenas internas e não suporta recepção em dispositivos móveis, como por exemplo, em celulares.
Middleware: DASE (Digital TV Application Software Environment)
Utiliza JVM (Java Virtual Machine) e permite o uso de linguagens declarativas, como o HTML.
O padrão ATSC-DASE é utilizado nos Estados Unidos, Canadá, Coréia do Sul e Taiwan.
CableLabs-OCAP: Cabo
Sistema de transmissão: sistema de TV a cabo, independente da organização ou fabricante.
Middleware: OCAP (OpenCable Applications Platform)
Baseado no MHP europeu é o middleware utilizado nas transmissões de TV a cabo dos Estados Unidos, que detém a ampla maioria das recepções neste país.

Padrão Japonês (ISDB-ARIB):
Sistema de transmissão: ISDB (Integrated Services Digital Broadcasting)
As vantagens deste sistema em relação aos demais são a flexibilidade de operação, boa recepção em antenas internas ou em áreas encobertas e o bom suporte a aplicações móveis.
Middleware: ARIB (Association of Radio Industries and Businesses)
Definido pela organização ARIB, esse middleware é formado por alguns padrões, como:
ARIB STD-B23 (Application Execution Engine Platform for Digital Broadcasting), baseada no middleware MHP, indica uma tendência de entrar em conformidade com o DVB-MHP, como veremos adiante.
ARIB STD-B24 (Data Coding and Transmission Specification for Digital Broadcasting), define uma linguagem declarativa denominada BML (Broadcast Markup Language), baseada em XML (Extensible Markup Language), é usada para especificação de serviços multimídia para TV digital.
O padrão ISDB-ARIB é utilizado somente no Japão, até então.

obs.: este conteúdo está disponível no meu artigo do trabalho de conclusão sobre TV digital, assim como a bibliografia utilizada nas pesquisas.

emissoras planejam utilizar redes celulares como canal de retorno

veja essa matéria do Tela Viva, onde Ana Paula Paes Leme, executiva de contas de novos negócios do SBT, fala sobre interatividade e a possibilidade o uso das redes celulares como canal de retorno:

Recursos de interatividade não são novidade para radiodifusores
(obs.: requer autenticação para acessar)

sábado, 2 de fevereiro de 2008

Inatel oferece pós-graduação em TV Digital

"O curso de especialização lato sensu em Engenharia de Sistemas de TV Digital e IPTV do Inatel tem como objetivo desenvolver conhecimentos tecnológicos e científicos especializados na área de sistemas de TV digital e IPTV, capacitando os profissionais ao exercício das atividades de pesquisa e desenvolvimento tecnológico."

fonte: Inatel - Instituto Nacional de Telecomunicações

Inatel Competence Center desenvolve Set Top Box interativo para TV Digital

"O Inatel Competence Center (ICC) assinou, no mês de janeiro, um contrato com a Fundação Centro de Análise, Pesquisa e Inovação Tecnológica de Manaus (Fucapi) para o desenvolvimento de um Set Top Box que permitirá ao usuário da TV Digital interagir com a programação da emissora, escolhendo filmes, séries e até optando pelo final dos episódios de acordo com sua preferência. O projeto será concluído em junho deste ano e deve estar disponível no mercado a partir julho.

No primeiro convênio com a Fucapi, concluído em dezembro de 2007, foi desenvolvido um Set Top Box para conversão do sinal de TV digital para a TV analógica. Agora, na segunda fase do projeto, a intenção é incrementar o aparelho, que deverá ganhar mais funções e oferecer mais vantagens aos usuários. 'Se na primeira etapa o Set Top Box era básico, ou seja, só recebia e convertia o sinal, agora vai fazer isso e ainda ter um canal de retorno que irá permitir a cada telespectador escolher a programação a seu gosto. O usuário vai poder interagir com a programação da emissora e decidir como será a programação em sua TV', explica o gerente do Inatel Competence Center Hardware, Carlos Augusto Rocha.

'A importância deste projeto é a busca pelos novos recursos que a TV Digital oferece. Além de outras vantagens, eles permitirão maior inclusão social, que é um dos principais objetivos do governo com a implantação da nova tecnologia', afirma o gerente. De acordo com ele, a responsabilidade pelo desenvolvimento de hardware do projeto ficará a cargo da equipe de TV Digital do Inatel Competence Center, enquanto uma equipe da Fucapi coordenará a parte de software.

As negociações para os dois convênios iniciaram-se após uma visita de representantes da Fucapi ao estande do Inatel na feira Telexpo, em 2006, onde o projeto de Modulação Inovadora para o Sistema Brasileiro de Televisão Digital (MI-SBTVD) foi exposto."


fonte: Inatel - Instituto Nacional de Telecomunicações

CEF testa set-top-box com Ginga da AIKO

em dezembro a Caixa Econômica Federal testou o set-top-box interativo com Ginga da AIKO. a aplicação demo era de uma operação de crédito imobiliário.

fontes:
Convergência Digital
Google
Yahoo!