SACCA Sistema Automático de Catálogo de Conteúdo Audiovisual SBTVD Sistema Brasileiro de TV Digital Terrestre. Agora que o modelo de TV digital do Brasil foi adotado pelo governo, a televisão não é mais apenas uma ferramenta de comunicação assistida. Ao mesmo tempo, pesquisadores trabalham para padronizar a interatividade na TV digital com o middleware Ginga, o que facilitará o processo de desenvolvimento de aplicações interativas sem que os desenvolvedores tenham que se preocupar com a plataforma de hardware à qual o Ginga está vinculado.
INTRODUÇÃO
- PROBLEMATIZAÇÃO
- Formulação do Problema
- Solução Proposta
- OBJETIVOS
- Objetivo Geral
- Objetivos Específicos
- METODOLOGIA
- ESTRUTURA DO TRABALHO
Os set top boxes são responsáveis por receber fluxos de televisão digital e decodificá-los para televisão, além de possibilitar a interatividade (MONTEZ; BECKER, 2005). O Composer (GINGA-NCL, 2009) se destaca entre os softwares que a comunidade da TV Digital Interativa já conhece na hora de criar conteúdo interativo. Desenvolver uma ferramenta web que desenvolva documentos NCL sobre televisão digital interativa utilizando o padrão Ginga-NCL.
FUNDAMENTAÇÃO TEÓRICA
TV DIGITAL
- Cenário no Brasil
- Equipamentos necessários
- Padrões para o Desenvolvimento de Programas Interativos no Brasil
- Ginga-J
- Ginga-NCL
- Modelo Conceitual de Dados da Linguagem NCL - NCM
- Estrutura de um documento Hipermídia - NCL
- Cabeçalho do arquivo NCL
- Cabeçalho do programa
- Corpo do programa
- Ferramentas de auxilio para o desenvolvimento de documentos NCL
- Composer
- NCL Eclipse - Plug-in do Eclipse
- Ginga-NCL Emulator
- Ginga-NCL Virtual STB
- Exemplos de Programas para a TV Digital baseados em NCL
- Exemplo 1
- Exemplo 2
- Tecnologias para desenvolvimento de ferramentas web
- Tecnologias especiais
O dispositivo Ginga também pode enviar informações aos transmissores de conteúdo quando houver canal de retorno (ABNT/CEET, 2007). Apresentação de parte do conteúdo de um objeto de mídia, seleção de parte do conteúdo de um objeto são exemplos de eventos. O conteúdo de um medianode pode ser definido como uma referência ao próprio conteúdo ou como uma sequência de bytes (SOARES; RODRIGUES, 2005).
Cada definição de nó de conteúdo deve, além do arquivo fonte da mídia, apresentar o descritor que será responsável por controlar a mídia e associá-la a uma região. Cada nó de mídia [neste trabalho, tratado como nó de conteúdo] é definido dentro de um contexto. Portanto, cada nó, seja conteúdo ou assembly, é definido dentro de um contexto, com
definido como uma instância específica de contexto.Portanto, ao declarar um link, também é necessário definir o conector que será responsável pela semântica da associação entre os nós. Qualquer subconjunto de unidades de informação de um nó pode ser destacado, e a definição exata do que pode ser destacado depende do tipo de conteúdo (SOARES; RODRIGUES p. 70): “O objetivo do uso de âncoras é identificar segmentos ou propriedades de um nó para ser usado como um nó de mídia ou contexto, seja como fonte ou destino de links.”. As âncoras de propriedade são responsáveis por apontar para a propriedade de um nó de origem ou destino, que pode ser manipulada pelos links.
Na linguagem NCL, uma âncora de propriedade é definida como um elemento de propriedade dentro de um nó, independentemente de ser conteúdo ou contexto. Os gráficos temporais ilustram a sincronização temporal entre as mídias de um documento NCL, definindo suas posições relativas no tempo e as possibilidades de interatividade do usuário. Isso permite ao usuário controlar as mídias reproduzidas e suas possíveis interações, simulando uma ação do usuário com a televisão o mais real possível a partir de um sistema interativo de TV digital.
PROJETO OBAA
- Requisitos Funcionais
- Diagrama de Casos de Usos
- Pacote 01: Módulo Administrador
- Pacote 02: Módulo Usuário
- Diagrama de atividades
- Diagrama de Entidade-Relacionamento
- Implementação
- Funcionamento da ferramenta
- Dificuldades encontradas
Após definir as mídias a serem utilizadas, o usuário especifica como elas se relacionarão entre si, vinculando-as. RF10: O sistema deve permitir que o usuário liste e utilize a mídia no repositório de mídia. Enquanto o usuário manipula seu programa interativo, o repositório pode ser aberto para selecionar a mídia que pode fazer parte de seu programa interativo.
Antes de desenvolver sua aplicação NCL, o usuário precisará selecionar no repositório de mídia que pode fazer parte de sua aplicação interativa. Para fazer isso, eles podem enviar sua própria mídia para o repositório selecionando a opção Enviar Mídia ou selecionar a mídia já existente no repositório simplesmente selecionando a opção Repositório. Após selecionar a mídia no repositório, o usuário poderá selecionar a opção Desenvolver NCL no menu principal, que apresentará a tela de escopo própria da ferramenta, onde o usuário poderá desenvolver toda a sua aplicação baseada em NCL para TV Digital Interativa.
Na visualização 1 aparece o desktop do usuário, conhecido como workspace, é nesta visualização que o usuário irá desenvolver seu projeto com as mídias disponíveis no menu. Uma vez disponibilizada a mídia aqui, todo o controle da visão espacial é feito através da interface arrastar e soltar. A mídia selecionada nesta opção é automaticamente adicionada ao menu para uso imediato.
Inicialmente, a ferramenta declarou a mídia enviada pelo usuário em NCL sem nenhuma extensão, considerando apenas o atributo type para especificar o que é aquela mídia.
TESTES E VALIDAÇÕES
Este item permite ao usuário salvar seu desenvolvimento para posterior finalização ou modificação, baixar o arquivo compactado em formato .zip para uso no emulador ou máquina virtual Ginga ou retornar à tela principal da ferramenta. Para melhor compreensão do funcionamento da ferramenta desenvolvida neste trabalho de conclusão de curso, exemplos de construção de alguns aplicativos interativos estão localizados no Apêndice. Alguns erros foram encontrados na máquina virtual durante testes com a linguagem NCL gerada pela ferramenta, levando à pergunta: “o que a ferramenta está fazendo de errado?” Após o teste, foram encontrados erros na máquina virtual.
A fase de testes e validação foi dividida em duas fases, uma das quais ocorreu paralelamente à codificação da ferramenta e a segunda fase ocorreu na fase final de desenvolvimento. Durante a fase inicial de teste e validação, foram realizados testes de compatibilidade e funcionalidade da ferramenta durante a codificação. Os testes de compatibilidade realizados tiveram como objetivo verificar o comportamento da ferramenta nos diversos tipos de navegadores disponíveis no mercado.
Nestes navegadores testados, todos conseguiram rodar a ferramenta em versão funcional, levando à conclusão de que qualquer navegador que implemente os padrões estabelecidos pelo consórcio W3C é capaz de rodar a ferramenta. Os testes funcionais, que ainda estavam na primeira fase, tiveram como objetivo verificar se as funcionalidades da ferramenta, como resultado final, tiveram os resultados planejados antes da implementação. Seguindo este método de teste, foi possível obter uma melhor confiabilidade dos resultados finais da ferramenta após seu desenvolvimento.
Esta fase, além de verificar se a ferramenta entregou os resultados esperados, também teve como objetivo identificar possíveis fragilidades na usabilidade da ferramenta.
CONSIDERAÇÕES FINAIS
No TCCI foi descrito que toda especificação e controle do uso dos conectores seria implementado e controlado no SGDB, durante a implementação da ferramenta no TCCII a especificação era feita em um arquivo externo que era anexado à aplicação do usuário quando o usuário realizou a transferência, simplesmente verificando nos links do SGDB a aplicação do usuário que utilizará essas conexões. Desta forma há um melhor nível de utilização e melhor controle de manutenção, pois para qualquer alteração, seja uma alteração ou adição de uma nova regra semântica para links, basta realizar a manutenção neste arquivo. Isso proporciona um melhor controle da aplicação por parte do usuário e uma usabilidade mais vantajosa do que a apresentada nos protótipos, já que todo o controle de desenvolvimento da aplicação agora pode ser realizado em uma única interface.
Todos os objetivos específicos previstos para esta fase foram alcançados, mas o resultado final da conclusão deste curso poderá ser melhorado com a adição de novas funcionalidades à ferramenta. Aceitar conteúdo processual Java e/ou LUA: caso a ferramenta aceite esse tipo de conteúdo, o usuário experiente em desenvolvimento de aplicações para TV digital poderá definir recursos de script que somente uma aplicação processual pode fornecer; Aprimorar funcionalidades relacionadas à interação do espectador com o aplicativo: O único nível de interação do usuário com a mídia, disponível na ferramenta desenvolvida por este Trabalho de Conclusão de Curso, é através dos botões vermelho, verde, amarelo e azul do controle remoto.
Adicione à ferramenta as propriedades aceitas para descritores: Os descritores proporcionam melhor controle da mídia por parte do usuário, permitindo definir a transparência de exibição de uma imagem ou o controle de volume de um arquivo de áudio, por exemplo; Melhorar as capacidades de pré-visualização de mídias presentes no espaço de trabalho: A ferramenta desenvolvida por esta tese aceita apenas pré-visualizações de mídias de imagem. Proposta de ferramenta de apoio à construção de programas para televisão digital interativa baseada em NCL, 2009, Florianópolis.
SOARES, Luiz Fernando Gomes; RODRIGUES, Rogério Ferreira; Nested Context Model 3.0: parte 1 - NCM Núcleo, Rio de Janeiro, 2005.
PROJETO
Casos de Usos
- Pacote 01: Módulo Administrador
- Pacote 02: Módulo Usuário
No passo 2, caso o administrador não selecione uma mídia, o sistema exibe a mensagem “Uma mídia deve ser selecionada”. No passo 2, caso o administrador não selecione um usuário, o sistema exibe a mensagem “Um usuário deve ser selecionado”. Caso os campos não sejam preenchidos no passo 6, o sistema emite a mensagem: “Todos os campos são obrigatórios!”.
Caso os campos não sejam preenchidos no passo 4, o sistema exibirá a mensagem: “Todos os campos são obrigatórios!” retorne ao passo 1. Caso o nome de usuário e/ou senha especificados no passo 4 não possam ser validados, o sistema exibe a mensagem "Nome de usuário e/ou senha inválidos" e retorna ao passo 1. O sistema exibe a tela onde o usuário pode escolher um mídia do seu computador e preencha as opções correspondentes.
No passo 2, caso um meio não seja selecionado para envio, o sistema exibe a mensagem “Selecionar um meio é obrigatório”. No passo 2, caso o usuário não selecione a mídia, o sistema exibe a mensagem “Uma mídia deve ser selecionada”. No passo 2, caso um programa não esteja selecionado, o sistema exibe a mensagem “É necessário selecionar um programa”.
No passo 2, caso o usuário não selecione a mídia, o sistema exibe a mensagem “A mídia deve ser selecionada”.
Tutorial de construção de uma aplicação interativa na
Quando a opção de hierarquia de uso é selecionada, ela exibe quando a mídia será iniciada em relação a outras no projeto. A mídia “html” junto com um design de jogo, imediatamente à direita e abaixo da mídia que utiliza como referência de lançamento, indica que será executada quando a mídia “vídeo” for lançada. Na tela de conclusão do projeto o usuário deverá selecionar a opção de compactar e baixar este arquivo compactado, esta ação é indicada por uma “caixa”, conforme Erro.
Para isso, na tela principal do programa, o usuário deve selecionar a opção Inserir presente no menu, após a Região. Para isso, na tela principal do programa, o usuário deve selecionar a opção Inserir presente no menu, após o Descritor. Para isso, na tela principal do programa, o usuário deve selecionar a opção Inserir presente no menu, após Mídia.
Para simplificar o processo, serão retiradas etapas e para isso são necessários os mesmos procedimentos já realizados para a mídia “vídeo”. Para isso, na Visualização Estrutural o usuário deve selecionar a mídia que fará parte do relacionamento e, na tela principal do programa, o usuário deve selecionar a opção Inserir presente no menu, após o Link Causal. Conforme mostra a Figura 63, é definido um link denominado "aoInitial_Inicia", pertencente às regras "onBegin" e "start", e quando a mídia "vídeo" for iniciada, a mídia "html" também deverá iniciar.
Ao usar o mesmo exemplo desenvolvido na ferramenta desenvolvida a partir deste curso e na ferramenta Composer, há um benefício óbvio em termos de usabilidade e facilidade para usuários leigos.