Introdução ao middleware de TV Digital brasileiro

Documentos relacionados
Ginga e a TV Digital Interativa no Brasil

Arquitetura do Sistema Brasileiro. Novos Recursos. Aplicações. Middleware

Middleware Ginga. Jean Ribeiro Damasceno. Escola de Engenharia Universidade Federal Fluminense (UFF) RuaPassoda Pátria, 156 Niterói RJ Brasil

TV INTERATIVA SE FAZ COM GINGA

Tópicos. Visão geral do sistema Modelo de referência Algumas demonstrações Requisitos para um middleware Ginga Consideraçõesfinais

As múltiplas possibilidades do middleware Ginga

TV Interativa se faz com Ginga

Roteiro. Módulo IV 3 horas. A arquitetura de um sistema digital de televisão Padrões de Middleware DASE MHP ARIB GINGA

Entretenimento e Interatividade para TV Digital

Sistema de acesso a dispositivos eletrônicos através da TV Digital interativa. Aluno: Rodrigo Brüning Wessler Orientador: Francisco Adell Péricas

comum apresentando, em caráter informativo, os três padrões anteriormente mencionados.

1.1. Objetivos e Contribuições

3 Trabalhos Relacionados

Introdução Padrão Brasileiro de TV Digital. Desenvolvimento de Aplicações Interativas. Trabalhos em andamento

Francisco Sant'Anna Renato Cerqueira Luiz Fernando Gomes Soares

Java. para Dispositivos Móveis. Thienne M. Johnson. Novatec. Desenvolvendo Aplicações com J2ME

Middleware Ginga. Jean Ribeiro Damasceno. Escola de Engenharia Universidade Federal Fluminense (UFF) Rua Passo da Pátria, 156 Niterói RJ Brasil

Integração de Aplicações para TV Digital Interativa com Redes Sociais

Introdução 15. representações definidas pelo MHEG-1, porém foi cancelado por falta de recursos.

Norma de TV digital criada a partir do ISDB-T (Integrated Services Digital Broadcasting Terrestrial) e adicionando modificações Brasileiras

5 O Fomatador NCL Xlet

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

TV Digital no Brasil e o Middleware Ginga. Luiz Eduardo Cunha Leite

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Televisão Digital Interativa se faz com Ginga

Entretenimento e Interatividade para TV Digital

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

Suporte para desenvolvimento de aplicações multiusuário e multidispositivo para TV Digital com Ginga

Um estudo sobre localização de serviços sensíveis ao contexto para Televisão Digital Móvel

Cadeia Produtiva na TV Digital - rumo a certificação

PADRÕES DE MIDDLEWARE PARA TV DIGITAL

Introdução ao Desenvolvimento de

Aplicativo para TV Digital Interativa de acesso ao Twitter

Por Bruno T Aquino, Roberto Luiz e Ricardo Vinicius Fabri, Abril 14, 2009.

Ginga-J ou Ginga-NCL: características das linguagens de desenvolvimento de recursos interativos para a TV Digital

Ginga-J: Implementação de Referência do Ambiente Imperativo do Middleware Ginga

Agenda da Aula. Reuso de Software. Tipos de Reuso. Potenciais Problemas. Vantagens de Reuso. Introdução a Reuso de Software

3 Trabalhos relacionados

4 O Fomatador NCL O Formatador NCL Java

Tratamento de Documentos Multimídia/Hipermídia

Protocolo de Aplicação para Jogos de Tabuleiro para Ambiente de TV Digital

2 Conceitos Preliminares

1.1. Aplicações de TVD dinâmicas

UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO

6 Arquitetura do Sistema

Aplicações Visuais Mobile com Netbeans 6.0

3.1 Reflexão Computacional

MDD Mídias Interativas

Ginga-NCL e a Democratização da Produção de Conteúdo

TDC T-Commerce e T-Banking- Aplicações Seguras. Julho de 2011 Aguinaldo Boquimpani Gerente Senior de Produtos TOTVS TQTVD

Estruturas de Sistemas Operacionais

Técnicas para Reutilização de Software

Uma Proposta de Arquitetura Educacional Multimídia

Banco de Dados na TV Digital Usando NuSOAP e NCLua SOAP

AULA 1 INTRODUÇÃO AO JAVA

Modelo Hipermídia. Documentos Hipermídia. Entidades Hipermídia. Componentes de um documento hipermídia

Introdução à TV Digital

SISTEMAS OPERACIONAIS DE REDE

Uma Arquitetura para Integrar Ambientes Educacionais na Web com Sistemas em T-Learning

5 Integração da Ferramenta de Ajuste com Exibidores de Conteúdo

Manoel Campos da Silva Filho Mestre em Engenharia Elétrica / UnB 16 de novembro de 2011

Objetos e Componentes Distribuídos: EJB e CORBA

NCL e Java. Aquiles Burlamaqui

Televisão Digital Interativa se faz com Ginga. Guido Lemos de Souza Filho LAVID DI - UFPB

(Versão revista e ampliada do tutorial original publicado em 13/10/2008).

Práticas de Testes de Software para aplicativo de TV Digital embarcado em dispositivos móveis

Thiago Paris Salviato. Suporte a Aplicações Sensíveis ao Contexto no Cenário do Sistema Brasileiro de Televisão Digital

Nova Emissora de TV Online MultiNetwork PRIVATE LABEL TV

3 Sistema Operacional Scriptável

UNIVERSIDADE SALVADOR UNIFACS PROGRAMA DE PÓS-GRADUAÇÃO MESTRADO PROFISSIONAL EM SISTEMAS E COMPUTAÇÃO

Middleware é um programa de computador que faz a mediação entre outros

3 Tecnologias Relacionadas

Utilização das Plataformas Web e Ginga-NCL no Desenvolvimento de Aplicações de EAD adaptadas para TV Digital

Uma Arquitetura para Integração TV Internet e Enriquecimento de Conteúdo em Aplicações de TVDi

7 Conclusão e Trabalhos Futuros

Conferência Internacional Espectro, Sociedade e Comunicação IV. Rafael Diniz - Universidade de Brasília

As principais contribuições do presente trabalho são as seguintes:

6.1.Exibidor X3D no Ginga-NCL

Técnicas para Reutilização de Software Prof. Eduardo Figueiredo Estagiário: Johnatan Oliveira

Ginga-NCL: Implementação de Referência para Dispositivos Portáteis

REDES DE COMPUTADORES

Desenvolvimento de Aplicações Imperativas para TV Digital no middleware Ginga com Java

GINGAWAY UMA FERRAMENTA PARA CRIAÇÃO DE APLICAÇÕES GINGA NCL INTERATIVAS PARA TV DIGITAL

4 Plano de Recuperação

1 Introdução Motivação

Prof. Me. Sérgio Carlos Portari Júnior

Pesquisa em LIBRAS. LibrasTV: Geração Automática da Janela de LIBRAS no SBTVD. Dr. Guido Lemos de Souza Filho Felipe Herminio Lemos Danilo Assis Nobre

Técnico em Informática. Web JavaScript. Profª Ana Paula Mandelli

2 Trabalhos Relacionados

5 Implementação 5.1 Plataforma 5.2 Arquitetura

Gerenciamento Baseado em Políticas

TELEVISÃO DIGITAL INTERATIVA, UM NOVO HORIZONTE PARA A EDUCAÇÃO A DISTÂNCIA

PLUG-IN SAGA EDITOR VISUAL DE APLICAÇÕES INTERATIVAS PARA TV DIGITAL BASEADO NO MIDDLEWARE GINGA

FlexTV Uma Proposta de Arquitetura de Middleware para o Sistema Brasileiro de TV Digital

Agenda do Curso. Reuso de Software. Agenda da Aula. Tipos de Reuso. Vantagens de Reuso. Reuso de Software. Eduardo Figueiredo

INTRODUÇÃO A TV DIGITAL

Nova Emissora de TV Online MultiNetwork PRIVATE LABEL TV

Transcrição:

Introdução ao middleware de TV Digital brasileiro Bruno Ghisi Fundação CERTI SCJA, SCJP, SCMAD, SCSNI e IBM Certified Specialist SQ Ian Ribas Fundação CERTI SCEA

Objetivo Fornecer uma visão geral sobre o middleware brasileiro de TV Digital, o Ginga, e seus subsistemas Ginga-NCL e Ginga-J

Exemplo Rede Globo

Exemplo Record

Exemplo SBT

Agenda Contextualização Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ponte

Agenda Contextualização Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ponte

Histórico Novembro 2003 o Ato federal para criação de um sistema de TV Digital o SBTVD (Sistema Brasileiro de TV Digital Terrestre) Junho 2006 o Definição do padrão ISDB-T Novembro 2007 o Início da transmissão do sinal da TV Digital no Brasil Janeiro 2017 o Fim da TV Analógica

Cadeia de valor Radiodifusor OEM Academia Fabricante de chipset Empresa de middleware Gerador de conteúdo...

Fórum SBTVD e ABNT Fórum SBTVD o Define as especificações e propões soluções de acordo com a realidade brasileiro o Dissemina o padrão ABNT o Normatiza as especificações o Gerencia as normas

O que é o Ginga? Ginga é o nome do Middleware Aberto do Sistema Brasileiro de TV Digital (SBTVD)

Norma Middleware Ginga ABNT NBR 15606 - Middleware Ginga o Middleware brasileiro de TV Digital o É uma especificação X implementação Parte 1: Codificação de dados o Estrutura geral do middleware, requisitos e integração com o hardware Parte 2: Ginga-NCL para receptores fixos e móveis - Linguagem de aplicação XML para codificação de aplicações

ABNT NBR 15606 Parte 3: Especificação de transmissão de dados Parte 4: Ginga-J Ambiente para a execução de aplicações procedurais o Em processo de homologação Parte 5: Ginga-NCL para receptores portáteis - Linguagem XML para codificação de aplicações

Agenda Contextualização Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ponte

O que é um middleware de TVD? O que é um middleware? o Camada de software intermediário que oculta dependências de plataforma e permite que aplicações sejam desenvolvidas de maneira independente O que é um middleware de TV Digital? o Middleware que irá rodar no conversor (set top box) ou embarcado na TV

Arquitetura Básica de Middleware

Arquitetura Ginga Aplicações podem ser o declarativas (Ginga-NCL) o procedurais (Ginga-J) o híbridas (Ponte) Ginga Common Core o Decodificadores o Acesso aos recursos

Arquitetura Middleware Ginga

Receptores full-seg e one-seg Full-seg o ex: set top box e televisão One-seg o ex: celular Ginga-NCL é mandatório para todos receptores Ginga-J é mandatório para receptores full-seg Canal de retorno: Full-seg, opcional; one-seg, obrigatório

Exemplos de aplicações Sincronismo de apresentação o assíncrono o sincronismo programa o sincronismo tempo Exs o Relacionado com serviço de difusão Participação em programas -> Vendas, questionários, etc. Canal de retorno Informação suplementar sobre programas -> Produção, programa, informação de produto, notícias da emissora etc. o Independente com serviço de difusão Informação Independente -> Notícias, previsão do tempo, informação de tráfego, informações de mercado, desastres, eleições, etc o Serviço de função Download -> Correção de erros, upgrade de versão

Processo de Apresentação

Agenda Contextualização Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ponte

Middleware Ginga - Ginga-NCL

Ginga-NCL NCL (Nested Context Language) é a parte declarativa do Ginga Linguagem XML Código NCL define os objetos de mídia e a estrutura da apresentação Formatador NCL controla o fluxo da apresentação o ciclo de vida dos players de mídia

Documento NCL o quê? onde? como? quando? nós regiões descritores elos e conectores Fonte: Oficina de introdução de aplicações para o Ginga. Telemídia, 2009.

Ginga-NCL Conector dispara um evento action de um nó de mídia Baseado na ocorrência de outro evento condition de um nó de mídia Fonte: Oficina de introdução de aplicações para o Ginga. Telemídia, 2009.

Players Players de mídia específicos apresentam o conteúdo para o usuário o Vídeo, Imagens o Player Lua - interpretador para scripts Lua o Player de Xlets Java o Player XHTML - decodifica conteúdo XHTML, incluindo CSS (stylesheets) e ECMAScript

Lua Linguagem de script poderosa, leve e extensível Implementado como uma biblioteca, escrita em C Linguagem procedural, com sintaxe semelhante ao C o Tipo string o Dinamicamente tipado o Sem ponteiros o Coletor de lixo o Tabela associativas dinâmicas como a única estrutura de dados o Funções são variáveis de primeira classe o Suporta alguns conceitos de OOP e FP Referência completa em: http://www.lua.org

NCLua Módulos extras que devem ser implementados e automaticamente carregados: o módulo canvas: oferece uma API para desenhar primitivas gráficas e manipular imagens o módulo event: permite aplicações NCLua se comunicarem com o middleware através de eventos(ncl e eventos de tecla). Oferece mecanismo para interatividade(tcp class) o módulo settings: exporta uma tabela com variáveis definidas pelo autor do documento NCL e variáveis reservadas de ambiente contidas no nodo application/xginga-settings o módulo persistent: exporta uma tabela com variáveis persistentes, que podem ser manipulados por objetos imperativos.

Agenda Contextualização Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ponte

Middleware Ginga - Ginga-J

Histórico Ginga-J foi proposto pela UFPB (Universidade da Paraíba) em Dez/07 e ocorreram algumas questões de propriedade intelectual em função do MHP (APIs HAVI & DAVIC) o Forum SBTVD e a Sun Microsystems propuseram uma nova especificação em Dez/08 Java DTV

Stack Ginga-J Ginga-J define o ambiente de execução para aplicação procedurais: Java Xlets

Modelo de aplicação (XLet) O gerenciador de aplicativos (AMS) o Carrega, configura, instancia e roda aplicativos o Controla o ciclo de vida dos aplicativos Cada aplicativo roda separado e não pode compartilhar class loaders

CDC / FP / PBP Connected Device Configuration (CDC) o A configuração mais abrangente do Java ME o CDC fornece uma implementação completa da linguagem Java 1.4 o Com a a adição dos profiles, pode se chegar na API Java SE Foundation Profile (FP) o Adiciona APIs ao CDC io, security, network, utility Personal Basis Profile (PBP) o Ambiente de aplicação para aplicativos baseados em AWT que usam somente componentes leves o Muitos dos pacotes e classes do PBP são subcojuntos dos seus equivalentes em Java SE

Java TV Fornece um framework Outros middlewares utilizam como stack básica Acesso ao dados transmitido com o sinal de TV Acesso aos dados do SI (Service Information) Controle dos media players específicos da TV via JMF

Java DTV Informações de serviço, tuner, transporte (MPEG streams) Media players o Controle das mídias: áudio,vídeo e legendas (close caption) o API de acesso aos recursos de mídia da plataforma Propriedades do usuário Acesso aos arquivo da transmissão (broadcast) Persistência (limitada) Canal de retorno o Acesso aos dispositivos de rede Comunicação Inter-Xlet o Integra com o IXC do PBP LWUIT Segurança

LWUIT LWUIT - LightWeight User Interface Toolkit Componentes gráficos de alto nível Tratador de eventos hierárquico através dos containers e componentes Abstração dos componentes nativos Componentes podem ser animados Personalização através de look and feels Resource bundles permitem o empacotamento dos recursos de maneira portável Temas, fontes, imagens, animações e mensagens

Extensões brasileiras Complementam e extendem a Java DTV API de informações de serviço dependente de protocolo o Acessa informações dos serviços específicas do padrão brasileiro (baixo nível) API extensões para sintonia (zapping) de canais API da ponte NCL API adicional de acesso ao canal de retorno o Reserva e conexão o Envio de mensagens API de acesso baixo nível aos planos gráficos API de integração de dispositivos externos

Agenda Contextualização Middleware Ginga Subsistema Ginga-NCL Subsistema Ginga-J Ponte

Middleware Ginga - Ponte

Ponte - NCL -> Java A ponte funciona em ambos os sentidos Há um XLet Player, usado integrar o ambiente procedural no formatador NCL o Ginga-J (Xlets) são representados como elementos <media> o No documento NCL, é possível sincronizar Xlets com outros tipos de mídia Elementos <property> podem ser associados com métodos ou atributos no Xlet, a serem modificados por eventos NCL Scripts Lua tem acesso à API Java do Ginga-J o Tem um mapeamento dos tipos entre as liguagens

Ponte - Java -> NCL A API da ponte NCL contém um conjunto de classes que implementam a comunicação entre o ambiente imperativo e o declarativo do ambiente Ginga Controle da apresentação do documento NCL pelo programa Java o NCLPlayer é um player dos documentos NCL para ser incluido no Xlet Java o NCLEdit permite edição dinâmica do documento NCL Notificação dos eventos do formatador NCL para um Xlet o NCLEventListener precisa ser implementado para receber NCLEvents

Referências http://www.forumsbtvd.org.br http://www.softwarepublico.gov.br https://javatv-developers.dev.java.net http://clube.ncl.org.br http://www.openginga.org Lista TV Digital SouJava em tvdigitalsubscribe@soujava.dev.java.net

Obrigado Bruno Ghisi weblogs.java.net/blog/brunogh bcg@certi.org.br Ian Ribas iri@certi.org.br Estamos contratando!