31 de ago. de 2009

Lua - Variáveis e Estruturas de Controle

Após o nosso primeiro post que explicava como preparar um ambiente para desenvolvimento em Lua, iremos falar hoje sobre variáveis e estruturas de controle. Variáveis Variáveis, conforme descrição do Wikipedia, é um objeto que representa valor ou uma expressão matemática. Não existem dados primitivos em Lua, portanto, ao declarar uma variável, ela poderá ser utilizada tanto para dados númericos, como texto e valores booleanos. A única exeção são tabelas que precisam ser declaradas de uma forma especial. Em Lua temos três tipos de variáveis: Globais, Locais e Table. Toda variável, ao ser declarada é determinada como global, a não ser que, seja explicitamente definida como local. Antes da primeira atribuição, uma variável possui o valor nil. Sendo assim, podemos realizar o seguinte teste:


print(variavel1)

variavel1 = 'Ola, como vai?'

print(variavel1)


Ao executar o script acima, percebemos que no primeiro print, a variável possui valor nulo. No segundo print, a variável possui o valor determinado na segunda linha. Variáveis locais tendem a existir apenas dentro do seu escopo. Sua declaração é definida pela palavra chave local. Um exemplo de declaração de uma variável local seria:

local variavel2


Uma outra forma de declarar variáveis globais e locais seria atribuindo o valor durante a declaração:


variavel3 = 'Versao Digital'

local variavel4 = 'Linguagem Brasileira: Lua'

É possível ainda atribuir valores a várias variáveis em uma mesma linha:

variavel5, variavel6, variavel7 = 'Cachorro','Gato',3.14

No exemplo acima atribuimos dois textos as duas primeiras variáveis e um valor numérico na última variável A table por ser uma estrutura especial, dedicaremos um post futuro apenas para ela. Estruturas de Controle Lua possui quatro estruturas de controle: if, while, repeat e for if A estrutura if, executa um bloco de comandos apenas se uma sentença é verdadeira. Sua sintaxe é a seguinte:

if {sentença} then

{bloco de comandos}

elseif {sentença} then

{bloco de comandos}

else

{bloco de comandos}

end

Um exemplo simples é testar se o conteúdo de uma variável maior ou menor que um determinado número.

print('Digite um numero: \n')

local var1 = io.read("*number")

if var1 > 5 then

print('var1 e maior que 5.')

elseif var1 < 5 then

print('var1 e menor que 5')

else

print('var1 e igual a 5')

end

while A estrutura while, irá executar o bloco de comandos enquanto a sentença for verdadeira. Sua sintaxe é a seguinte:

while {sentença} do

{bloco de comandos}

end

No exemplo a seguir, o bloco de comando irá ser executado enquanto o valor da variável for menor que 10.

local var1 = 0


while var1 < 10 do

print('O valor de var1 e: '..var1)

var1 = var1 + 1

end

repeat A idéia do repeat é a mesma do while, no entanto, o teste para verificação se a sentença é verdadeira é realizado após a execução do bloco de comandos, ou seja, caso a sentença seja verdadeira inicialmente, o bloco de comandos será executado pelo menos uma vez.

repeat

{bloco de comandos}

until {sentença}

Sabendo desta diferença, vamos executar o mesmo exemplo anterior, adaptado para o repeat.

local var1 = 0


repeat

print('O valor de var1 e: '..var1)

var1 = var1 + 1

until var1 > 10

Compare os dois exemplos e veja se o resultado final, apesar da semelhança das estruturas, é o mesmo. for A estrutura de controle for irá executar um bloco de comandos, enquanto uma variável de controle varia de acordo com uma progressão aritimética. Sua sintaxe é:

for {sentença} do

{bloco de comandos}

end

Um exemplo simples é a interação de uma variável dentro de um intervalo numérico e a impressão do seu valor, assim como fizemos no while e no repeat.

for var1 = 1, 10 do

print('O valor de var1 e: '..var1)

end


Durante este post, utilizamos algumas funções, que você pode não estar familiarizado, vamos a elas: print() - Esta função é utilizada para imprimir na tela o valor de uma variável ou uma string. io.read() - Esta função inclui uma pausa na execução do programa e aguarda o pressionamento de uma tecla para retomar a execução da aplicação. Os dois pontos, utilizados na maioria dos exemplos, é o operador que indica concatenação. Com isso finalizamos mais um post. No próximo post falaremos de table.



Saiba Mais


Preparando um ambiente de desenvolvimento


Manual de Referência Lua

27 de ago. de 2009

Cobertura do SET 2009 – Terceiro dia

Terceiro dia do SET 2009, foi o dia com menos tuitadas, mas vamos a um resumo do principal enviado pela galera presente ao evento. Não deixem de ler as Coberturas do Dia 1 e Dia 2

Dia 3:

* A fala é de Fernando Bittencourt, da Globo. Para ele não haverá massificação sem padronização, com plataformas proprietárias. “Acho que só vai massificar se todo mundo puder oferecer um padrão. Se continuar a Samsung com o Terra a Lg com outro, não vai…”

* Samsung acha muito difícil a padronização de plataformas entre fabricantes. Podem é aceitar conteúdos através de padrões abertos.

* @DeLuca: Em resumo, a forma de fornecer o conteúdo é padrão. Como vc trabalha esse conteúdo na sua TV é que é difícil padronizar.

* “Acredito que o anúncio, em qualquer espaço, em qualquer janela, obedecerá regras que surgirão, paulatinamente”, diz advogado.

* DeLuca: #set2009 – Fernando Bittencourt diz; por convicção pessoal, acredita que o controle remoto pode ser individualizado. Se aproximar do celular.

* A Samsung não acredita que o simples acesso à internet seja indutor de venda do seu produto. “É só mais um entre muitos recursos.”

* Samsung diz que a experiência da Internet na TV é complementar.

* Como a oferta de conteúdo descontrolado (internet) vai conviver com a TV, com o broadcast, que é totalmente controlado, regulamentado?

* Luiz Fernando, da Puc-rio mostrando aplicativos interativos comunicando com multidispositivos iphone e android.

* Fabio Angeli da Record bem lembrou que um grande desafio da interatividade é o tamanho da aplicação.

Cobertura SET 2009 – Segundo dia

Continuando com um resumo das melhores “tuitadas” recolhidas sobre o SET 2009 até agora. Esse tópico, espera-se, será atualizado ao longo do dia. Não deixei de ler o resumo do primeiro dia no post abaixo.

Dia 2:

* A SET mantém um grupo de melhores práricas para TV Digital com o objetivo de levar experiências da implantação a todo o país

* Atualização dos receptores pelo ar é algo que vem sendo bastante discutido. Muitos continuam céticos. Outros pedem regras claras

* O Fórum SBTVD fará apenas a documentação da suíte de testes para interatividade. A implementação caberá a cada fabricante

* Pesquisa da Telefonica: na Am. Latina, internet ganha da TV na preferência dos jovens em todos os paises. No Brasil, 56% dos jovens preferem Internet à TV, diz Antonio Valente.

* “A tecnologia de Tv Digital rompe definitivamente com o unilateralismo que caracterizou o brodcast”

* Argentina deve adotar padrão nipobrasileiro ainda nesta semana.

* O rádio e a TV continuarão pelas próximas décadas sendo líderes no entretenimento de massa, diz a Abert.

* @ DeLuca: #set2009 – Abert responde com retórica, reforçando “a profunda crença na força da radiodifusão nacional”

* necessidade de integração do SBTVD com vídeo em Internet e TV paga, para não privar a população do melhor

* Alta definição e mobilidade gratuitos. O SBTVD partiu daí. Já foram vendidos 1,5 milhão de receptores. Mas falta divulgação

25 de ago. de 2009

Cobertura do SET 2009 - Primeiro dia

Pesoal, começou hoje em São Paulo e vai até sexta, dia 28/08, a SET 2009, feira de broadcasting, cable e engenharia de radiodifusão, que trará várias exposições, discussões e painéis sobre TV Digital no Brasil. Não pude comparecer, mas vou selecionar os melhores twits sobre a feira e compilá-los aqui para vocês.

Se você está no Twitter, sugiro seguir os perfis @DeLuca (da jornalista e expert em TV Digital no Brasil Cristina de Luca), @ForumSBTVDSET09 e o oficial do evento, @broadcast_cable. As hashtags do evento são: #set2009 e #broadcast_cable.

Dia 1:

* A LG demonstra no stand do Fórum SBTVD o modelo da TV Time Machine Digital já com Ginga embutido. Ready for market.

* Qualcomm acredita que o uso da interatividade torna a oferta da TV aberta no celular ainda mais atraente, e rentável.

* Na visão da Qualcomm, a Tv aberta no celular reduz a barreira de entrada e estimula o uso do celular para as aplicações on demand.

* Oferta de TV paga pela rede celular é questão de custo de oportunidade, diz a Qualcomm. Faz uso de redes dedicadas mais vantajoso

* "Telespectador q investe em TV Digital reclama de ver conteúdo em 4:3", diz Luiz Gurgel.

* RT @ForumSBTVDSET09 Maurício de Sousa lança "TURMA DA MÔNICA P/ TV DIGITAL INTERATIVA", amanhã, às 10h, no estande Fórum

* #set2009 - É possível transmitir aplicativos diferentes, para praças diferentes, durante intervalos comerciais? A princípio, sim, dizem.

* Já é possível alterar tempo de ciclo de alguns objetos no carrossel? Sim, dizem alguns dos fornecedores. Com adaptores, via XML.

* EITV, que já tem uma implementação do Ginga-NCL, anuncia para os próximos meses a implementação com Ginga-J.

* Apresentação do Astro Play, da TQTVD. Aplicativo na ponta do emissor para controle das aplicações a serem transmitidas já está pronto para cenários de interatividade avançada e plena, com adaptação de conteúdo de diversas fontes, incluindo internet.

* A NXP, ex-Phillips, já tem uma plataforma pronta para o Ginga (a STB236). Todo desenvolvimento feito por engenheiros brasileiros.

* NXP garante: hoje já há escala para produção de conversores no país. Há plataformas internacionais facilmente customizáveis.

* Entre as próximas etapas do Ginga está o suporte do middleware pelas TVs por assinatura. Tarefa para os próximos meses.

* “O crescimento de vídeo na Internet é grande, pesquisas indicam 62% ao ano até 2013”, diz Rafael Pereira, da Globo.com.

Lua - Preparando um ambiente

Este é o primeiro da nossa série de posts sobre Lógica de Programação com a linguagem LUA. O intuito é fazer um bom material pra quem está começando. Se o FeedBack for bom, podemos aprofundar mais no "curso".

Introdução

Lua é com certeza uma das linguagens de programação mais simples para aprendizado. Leve e rápida, é ideal para a utilização em sistemas embarcados.

Com a adoção do Lua como uma das linguagens para o SBTVD e a inclusão como uma das linguagens disponíveis nos celulares com Android, a demanda por profissionais qualificados será grande, por isso temos que nos preparar.

Acompanhando as discussões na lista Lua-BR, recem criada por conta do Lua Workshop 2009, temos notado um grande apelo por tutoriais que expliquem a linguagem. Com isso decidimos escrever uma série de artigos para apresentação da linguagem. Sendo assim, vamos ao que interessa.

Preparando o Ambiente

A instalação do Lua é simples. Utilizaremos como base o Windows e a distribuição Ubuntu.

Windows
1. Realize o downlod do Lua para Windows do Site Lua Forge.
2. Execute o arquivo como um instalador padrão do Windows: Next - Next - Finish.
2.1 Ao final, o instalador dá a opção de rodar os exemplos. Se você for um autodidata, recomendo que dê uma olhada nos exemplos para começar a se ambientar com a linguagem. Não se preocupem em fazer N programinhas para se aperfeiçoar, traremos exemplos bem legais para isso.
3. Para testar a instalação, abra o prompt do DOS e execute o comando lua.

O interpretador Lua deverá ser iniciado:

Microsoft Windows XP [versão 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\luiz>lua
Lua 5.1.4 Copyright (C) 1994-2008 Lua.org, PUC-Rio
>


4. O Lua está instalado e pronto para utilização.

Ubuntu
1. Na linha de comando, execute o comando sudo apt-get install lua
2. Para testar a instalação, na linha de comando execute o comando lua.

O interpretador Lua deverá ser iniciado:


[root@gingavm ~]# lua
Lua 5.1.2 Copyright (C) 1994-2007 Lua.org, PUC-Rio
>



IDE
Para a edição dos códigos lua você poderá utilizar qualquer editor de texto. A instalação do Lua para Windows também instala o editor SciTE.

Preferimos o Geany como editor. Ele funciona tanto no Windows quanto no Linux e sua instalação é bem simples.

No Windows, basta seguir o procedimento padrão: Next - Next - Finish.

No Linux basta executar na linha de comando sudo apt-get install geany.

Hello World
Como primeiro exercício, iremos criar um Hello World. Com o Geany aberto, digite a linhas de código a seguir:

local variavel = 'Ola amigos. Estamos no Versao Digital: http://versaodigital.blogspot.com/'

print (variavel)

Na barra de ferramentas do Geany, clique no botão Executar. O resultado será esse:



Com isso finalizamos este primeiro post. Seu ambiente está configurado e funcional. No próximo post, explicaremos declaração de variáveis, atribuição de valores, estruturas condicionais e laços de repetição. Não percam!

18 de ago. de 2009

A revolução será televisionada...pela TV?

Nesses últimos dias, li algumas notícias que explicam bem em que pé está a TV Digital no Brasil.

A primeira delas, muito boa, é a de que a LG lançará um modelo de Netbook com TV digital integrada, mais uma vez dentro da "família" Scarlet, que já possui modelos de televisores e celulares com recepção do sinal digital.

Tudo muito bom, mas eu daqui quero ver qual será a capacidade de recepção desses aparelhos, pois, como lembrado no blog da jornalista Cristina de Luca, os conversores atuais, embutidos ou acoplados, na esmagadora maioria das vezes precisam de uma antena UHF externa para captar o sinal aberto digital com qualidade.

De qualquer forma, a integração entre TV digital e dispositivos com acesso à internet (notes e netbooks, PCs, celulares) permitirá que a interatividade do usuário tenha um CANAL DE RETORNO, ou seja, que as ações do usuário possam ser enviadas para o transmissor da programação ou a uma terceira parte interessada.

Esse retorno, seja via internet regular ou 3G, é a chave para aplicações de compra pela TV (alô, Shoptime!), EAD, enquetes e pesquisas em geral e até a personalização da programação de acordo com o perfil do espectador.

A dificuldade de integrar esse canal de retorno nos televisores convencionais pode ser mais um motivo para que a TV digital no Brasil estoure primeiro nos celulares e computadores portáteis. A revolução será televisonada pela tv... ou pelos dispositivos móveis?

Por falar nisso, outra notícia é sobre a Portaria Interministerial 237 - que obriga, a partir de Janeiro de 2010, que cada fabricante de celular tenha 5% da sua produção local adaptada ao SBTVD.

Os produtores de celulares pedem a flexibilização dessa portaria, que prevê a perda de isenção da Lei de Informática para a produção local no caso do não cumprimento do prazo. As empresas, com dificuldades de adaptação ao SBTVD e ao Ginga, temem não cumprir o prazo e propõem que haja um incentivo aos que chegarem aos 5%, e não um corte para os que não conseguirem.

Esse pedido ainda será avaliado pelo governo. De qualquer forma, essa notícia não é boa, pois demonstra claramente que a implementação da Tv Digital no Brasil, mais uma vez, será mais lenta do que se esperava.

Mais sobre o assunto:

TV digital no celular: contraproposta ao governo (Site Convergência Digital)

Antena: o calcanhar de aquiles da TV Digital (Site Circuito, por Cristina de Luca)

LG lança netbook com TV digital integrada (Site Tele.síntese)

12 de ago. de 2009

I Simpósio Internacional de TV Digital

A Comissão Organizadora do I Simpósio Internacional de Televisão Digital comunica que os prazos para envio de resumos e de artigos foram estendidos. Os resumos, de acordo com as normas disponíveis no site do evento, podem ser enviados até 17 de setembro. O prazo para envio de trabalho final (em todos os casos) passa a ser 18 de outubro.

Os aceites serão enviados em duas datas diferentes: até 17 de agosto (para aqueles que enviaram até dia 09 de agosto) e até 24 de setembro (para aqueles que enviarem até 17 de setembro).

Mais informações sobre a inscrição de trabalhos e programação completa, confira no site do evento, em www.faac.unesp.br/simtvd .

Programação Confirmada:

18 de novembro – quarta-feira (Teatro Municipal de Bauru)
19h - Recepção dos participantes
19h30 – 20h – Sessão de Abertura
20h – 21h – Conferência de Abertura - "Panorama da Televisão Digital no Brasil: perspectivas e embates" com Maurício Kakassu (Superintendente do Fórum SBTVD)

19 de novembro – quinta-feira (Auditório A1)
10h – 12h - Mesa 01: Comunicação, Produção de Conteúdos e Políticas Públicas: desafios para Televisão Digital no Brasil - Fernando Dias (Presidente da ABPI - TV)
14h – 16h - Mesa 02: Tecnologias educacionais para a Televisão Digital - Fernando Spanhol (Diretor da ABED), Maria Teresa Quiroz (Universidade de Lima, Peru), Márcio Pereira (Canal Futura)
20h30 – 22h30 - Mesa 03: Padrão do Sistema Digital Brasileiro: convergência, interatividade em multiplataformas - Guido Lemos (UFPB), Luis Valle (Universidade de Palermo, Argentina), Fernando Bittencourt (Diretor de Tecnologia da TV Globo)

20 de novembro – sexta-feira (locais a serem confirmados)
8h – 10h – Relatos de Pesquisa
16h - 18h – Grupos de Trabalho
18h – Plenária de Encerramento

Mesas temáticas e oficinas estão sendo agendadas para sexta-feira, 20, às 10h e 14h.

O evento está sendo promovido pelo Programa de Pós-Graduação em Televisão Digital: Informação e Conhecimento (UNESP - Bauru). Será realizado nos dias 18, 19 e 20 em Bauru - SP.

Contato: 014 - 3103-6168
simtvd2009@faac.unesp.br

Disney estuda impacto da publicidade digital

Reproduzo abaixo matéria da Meio & Mensagem Online, para quem não tem cadastro no site deles. Bem interessante notar que a Disney estão estudando também publicidade digital na TV.

Disney quer decifrar impacto da publicidade online

Pesquisa do grupo analisa movimentos dos olhos, batimentos cardíacos e a temperatura do corpo para identificar os formatos de publicidade digital que mais (e menos) agradam as pessoas

11/08/2009 – 17:06

A Disney conduz um estudo para monitorar a efetividade da publicidade online e aprender mais sobre como os consumidores reagem quando eles são afetados por diferentes tipos de formatos. A técnica está sendo utilizada também para identificar as reações diante da televisão, em outro estudo.

A pesquisa utiliza técnicas de monitoramento dos olhos, de modo a determinar quais peças publicitárias são relevantes e quais não são. Além do olhar, o estudo analisa outros fatores como os batimentos cardíacos, a temperatura da pele e as expressões faciais, cujos dados são gravados e analisados, de modo que a equipe da empresa possa analisar o que funciona e o que não funciona.

Dentre outras coisas, estão sendo analisados fatores como o quão pequeno o banner pode ser antes de ser ignorado, o quão bem as pessoas reagem a anúncios animados e qual o melhor local para dispor a publicidade online.

Algumas das descobertas iniciais são que os anúncios “fly out”, aqueles que aparecem próximos ao player de vídeo em um site e que podem se expandir com o simples passar do mouse, resultam no mesmo impacto do que os chamados “over-lay” transparentes, os anúncios que correm acima do conteúdo, só que com a vantagem de serem menos intrusivos.

A ideia da Disney, que é dona de propriedades como ABC e ESPN, é fornecer aos anunciantes uma maneira de mensurar o retorno obtido sob seus investimentos na publicidade online, valorizando esta mídia. Embora afetada pela recessão, a publicidade de internet nos Estados Unidos irá atingir aproximadamente US$ 25 bilhões neste ano, segundo a eMarketer, e pode chegar a US$ 37 bi em 2013.

Com informações do New York Times.

Fonte: M&M Online

11 de ago. de 2009

Review: XPS-1000 da Proview

Acabei de responder a um e-mail da lista de discussão de TV Digital sobre o Set-top Box (STB) XPS-1000 da proview e decidi, a partir do e-mail, escrever esta análise.

Antes de falar sobre o XPS, vamos entender oque é o STB:

Set-top Box (STB) ou conversor é um termo que descreve um equipamento que se conecta a um televisor e a uma fonte externa de sinal, e transforma este sinal em conteúdo no formato que possa ser apresentado em uma tela.

A fonte deste sinal pode ser um cabo ethernet, (veja triple play), uma antena de satélite, um cabo coaxial (veja Televisão a cabo), uma linha telefônica (incluindo conexões DSL), ou até mesmo uma conexão de uma antena VHF ou UHF.

Fonte: Wikipedia


No caso do SBTVD, a conexão realizada é feita a partir de uma antena UHF. Sabendo disso, vamos ao que interessa.



O XPS-1000 é o primeiro STB para o SBTDV a chegar ao mercado com suporte a interatividade. O aparelho chega com o status de STB mais barato do mercado e realmente ele consegue ser feliz nesta tarefa. Em uma consulta rápida no boa dica encontramos o aparelho por R$ 299,00, no Rio de Janeiro.

O aparelho possui 3 saidas de vídeo (HDMI, Vídeo Componente e Vídeo Composto), 2 saidas de áudio (Coaxial e Ótico) mais uma porta ethernet e uma USB.

Caso o consumidor possua uma TV HDMI, terá uma bela surpresa ao abrir a caixa: o aparelho vem apenas com os cabos de Vídeo Componente.

A caixa possui ainda fonte de alimentação e uma antena que certamente deverá ser substituida caso o local onde será instalado o aparelho possua muitos obstáculos.

No meu caso, a opção pelo XPS era justamente a possibilidade de se testar aplicações interativas que só foi possível desenbolsando mais R$ 200,00 pela a atualização. No final das contas, o barato não é tão barato, principalmente se levarmos em consideração que o aparelho é instável, lento na transição de menus e o midleware instalado não está implementado em sua totalidade. Chego a dizer que não está implementado nem mesmo 25% do que está descrito na norma.

Assistência técnica hoje é inexistente, não é possível encontrar lugar que realize manutenção no aparelho no Rio de Janeiro. O suporte por e-mail é fraco e desconhece o produto. Cheguei a esperar mais de sete dias para obter uma relação de melhorias/implementações em uma atualização do firmeware.

É comum que o aparelho trave e seja necessário retirá-lo da tomada. A velha estória de sair e entrar no fusca para ver se pega.

Ao final de 2 meses o aparelho apresentou defeito e até o momento não encontramos um local que realize a assistência. Antes que alguém diga que foi azar meu, conheço casos de pessoas que tiveram problemas no aparelho após 2 semanas de uso apenas como decodificador.

A dica que fica é: para quem pretende desenvolver para TV Digital com Ginga-NCL, vale mais a pena pegar um computador que esteja encostado e instalar o Ginga-NCL que está disponível no portal do software público. Na pior das hipóteses você ganhará conhecimento.

Para saber mais:

Software Público
Ginga-NCL
Clube do Conversor XPS-1000 (Fórum técnico em eletrônica)