Projetos em andamento na UFRGS

Título Função Financiamento Início Fim
PMM: Plataforma Multimídia Modular Coordenador MCT/FINEP/CT-INFO-SOFTWARE (1898/05) 2006 2008
SAM: Sistema adaptável para transmissão multimídia utilizando um codificador de vídeo em camadas Participante MCT/FINEP/CT-INFO-SOFTWARE (1899/05) 2006 2008
GT-IEAD: Grupo de Trabalho para Infra-estrutura em Ensino a Distância Coordenador RNP: Rede Nacional de Pesquisa (GT-RNP 2006/2007) 2006 2007
SICREMAQ: Sistema de Capacitação Remota Multimídia de Alta Qualidade Coordenador MCT/SEBRAE/FINEP/Ação Transversal – Cooperação ICT’s – MPEs – 07/2006 2007 2008
Especialização em TV Digital Coordenador Mínimo 20 alunos 2007 2008
         

PMM: Plataforma Multimídia Modular

Esta proposta visa o desenvolvimento do middleware e de aplicações para uma plataforma multimídia modular (PMM), com recursos de gravação de vídeo digital e interatividade, ou seja, uma unidade que pode gravar programas de televisão usando mídia digital (disco rígido ou memória) e que tenha possibilidade de interatividade com a Internet e com a emissora de televisão. O código-fonte será baseado em arquiteturas de software-livre, a fim de facilitar o desenvolvimento de extensões e a portabilidade para esse sistema. O sistema será utilizado, entre outras coisas, para multiplicar o conhecimento nesta área. A Figura a seguir mostra em linhas gerais o desenvolvimento proposto. A partir da placa-mãe, vários periféricos são conectados, como disco rígido (onde fica o sistema operacional, middleware e aplicativos) e switch para conexão à Internet, onde deverá estar ligado o equipamento de interconectividade, como modem ADSL, cable modem, ou outro mecanismo. O acesso à televisão via teclado e mouse é feito remotamente, facilitando ao usuário a interação com o PMM a distância. Opcionalmente, o dispositivo pode conter um gravador de DVD, permitindo ao usuário a gravação dos programas (aulas, vídeos, etc) em mídia removível. Numa segunda etapa de industrialização, a placa mini-itx seria substituída por um hardware dedicado, visando competitividade de preço com o mercado.

Os segmentos de abrangência desta proposta são os seguintes:

Através do desenvolvimento desta plataforma para uso acadêmico, espera-se criar um "know-how" para multiplicar o conhecimento no desenvolvimento de plataformas multimídia. Além disso, espera-se que forneça mecanismos para ajudar a inserção da empresa interveniente no mercado nacional, diminuindo a influência estrangeira nessa área. Além disso, com o crescimento intelectual gerado pelo projeto, espera-se obter competitividade internacional nesse segmento de mercado, o que pode trazer rendimentos para o Brasil a médio prazo.

SAM: Sistema adaptável para transmissão multimídia utilizando um codificador de vídeo em camadas

O objetivo geral deste projeto é aperfeiçoar e transformar os algoritmos resultados de uma investigação acadêmica de uma Tese de doutorado e uma dissertação de mestrado em um produto comercializável. A ferramenta pode ser utilizada para transmissões multimídia gravadas (vídeo sob demanda) ou ao vivo, como aulas a distância síncronas, shows e canais de TV. Seu maior benefício é aumentar o desempenho e a acessibilidade da transmissão, utilizando para isso um sinal codificado em camadas, onde cada camada é transmitida como um grupo multicast separado. O receptor, utilizando a ferramenta, adapta-se de acordo com a sua capacidade de rede e máquina no momento. Assim, por exemplo, um receptor com acesso via ADSL e outro via rede local podem assistir à transmissão na melhor qualidade possível para os mesmos.

Durante a Tese de Doutorado (Roesler, 2003a), se desenvolveu um algoritmo de controle de congestionamento para transmissões multimídia denominado ALMTF (Adaptive Layered Multicast TCP Friendly). Esse algoritmo é parte de um sistema maior também fruto da Tese, denominado SAM (Sistema Adaptativo para Multimídia) (Roesler, 2003b), (Roesler, 2002), (Roesler, 2001). Este sistema foi todo desenvolvido com o uso de software livre e os fontes foram disponibilizados à comunidade sob a licença GPL.

Além disso, foi implementado, através de uma dissertação de mestrado, um codificador em camadas, denominado “VEBIT” (Bruno, 2003). Esse codificador foi desenvolvido visando sua integração no SAM.

Os algoritmos de controle de congestionamento do SAM foram validados através de simulações, num simulador de redes de computadores. Os resultados mostraram que o sistema é aplicável em transmissões multimídia para grandes audiências, como por exemplo transmissão de sinais de TV e aulas remotas síncronas através de redes de computadores.

Os algoritmos do VEBIT, utilizados para a codificação e decodificação do vídeo em camadas, foram implementados em ANSI C, entretanto, existem diversas melhorias que devem ser efetuadas visando sua utilização comercial, como por exemplo: alteração para alta resolução; utilização de maior qualidade; utilização de algoritmos de compressão aritmética; quantização vetorial, wavelets, entre outros.

O desenvolvimento do Codificador e Decodificador Alternativo de Vídeo para integração no SAM busca obter maior eficiência na codificação de vídeo em relação aos padrões existentes atualmente, principalmente o MPEG-2 e o MPEG-4.

O número de equipamentos que podem se beneficiar de tal sistema é muito grande, e pode-se citar telefones celulares, palm tops, sistemas de segurança de vídeo, computadores e televisores, num sistema de transmissão de vídeo digital.

 No caso de sinais de televisão, a largura de banda utilizada é de 6MHz, limitando a taxa possível para aproximadamente 19 Mbit/s. Essa taxa, entretanto, é suficiente para enviar sinais HDTV e SDTV combinados através de um sistema alternativo de transmissão.

O grupo já desenvolveu um codificador / decodificador escalável por bitplanes (Vebit) com até cinco qualidades, porém em baixas taxas de transmissão, como será detalhado adiante. Além disso, o grupo está desenvolvendo a parte de escalabilidade do MPEG-4 e um codificador e decodificador MPEG-2 escalável, dentro do SBTVD.

Pretende-se efetuar estudos para otimizar os algoritmos já desenvolvidos a fim de atender toda uma gama de aplicações de vídeo. Pretende-se expandir o estudo já realizado, visando fazer com que o codificador efetue a compressão do vídeo em outras qualidades, como, por exemplo: a) Sinais de baixa resolução (até 160x120 pixels), para celulares e palm tops; b) SD (Standard Definition) com uma resolução de 720x486i; c) HD (High Definition), que é, na prática, um sinal complementar ao SD que adiciona qualidade ao mesmo, permitindo uma resolução de 1920x1080i.

O principal problema que este projeto busca abordar é: como obter acesso universal à transmissão multimídia sendo efetuada? Isso quer dizer que todos usuários devem conseguir acesso a determinada transmissão, independente de estarem em redes congestionadas, enlaces lentos, possuírem máquinas com baixo poder de processamento, resolução de tela, e assim por diante. Dentro desse problema abordado, surgem outras questões essenciais relacionadas, descritas a seguir:

Esses problemas foram investigados durante a Tese (Roesler, 2003a), e se desenvolveu o algoritmo ALMTF para controle de congestionamento, bem como o algoritmo VEBIT (Bruno, 2003), para codificação do sinal em camadas.

GT-IEAD: Grupo de Trabalho RNP 2006/2007 em Infraestrutura para Ensino a Distância

O objetivo geral deste projeto é a criação de um ambiente completo em software e hardware para transmissão multimídia interativa em alta qualidade entre instituições ligadas à rede da RNP. Como meta específica pretende-se, ao final do projeto, deixar o sistema funcional 24h/7dias em salas / auditórios de cinco instituições parceiras, de forma que todos os eventos realizados sejam transmitidos sem esforço de montagem de ambiente. O produto oferecido é inovador, visto que não existe ainda hoje no mercado um sistema flexível utilizando características de TV interativa com qualidade broadcast, podendo ser associado com videoconferência de alta qualidade. O diferencial desse sistema em relação aos existentes atualmente se dá através dos seguintes três pilares: 1) alta qualidade, semelhante à vista em DVDs; 2) transmissão em multicast, permitindo milhares de participantes simultaneamente; 3) baixo custo de equipamentos receptores com capacidade de interação. Uma das vantagens do projeto é o baixo custo envolvido para as instituições, visto que o software será disponibilizado sob o conceito de software livre, e o hardware será desenvolvido utilizando uma abordagem de sistemas embarcados de baixo consumo e custo, reduzindo assim de forma global os custos das instituições usuárias da RNP. A fim de aumentar a capacitação do grupo de trabalho, firmou-se uma parceria ampla entre institutos de pesquisa e empresas da área. Os parceiros ligados ao projeto são: INMETRO, Instituto de Informática da UFRGS, Centro Universitário LaSalle, Centro Universitário Univates, CSP Controle e Automação ltda, E-Trust e PD3.

De forma geral, o projeto é dividido em duas entidades principais: Gerentes e Clientes, que se comunicam através de uma rede de computadores (rede RNP). O Gerente é composto pelo Gerente Visualizador (Suíte) e Gerente Monitor. O Cliente está dividido em Cliente Participante e Cliente Apresentador. A Figura 2 apresenta uma idéia geral do sistema.

Figura 2: interoperação entre as entidades Cliente e Gerente. No caso, existem três Clientes Apresentadores (Porto Alegre, Belo Horizonte e São Paulo). A Suíte está combinando tais fluxos através da mesa de edição e enviando o fluxo em multicast (Multicast Principal) para os Clientes Participantes.  A figura ainda mostra o Gerente Monitor, para controle de perguntas.

O Gerente Visualizador (ou Suíte), cuja interface preliminar com o usuário pode ser vista na Figura 3, mostra a lista de apresentadores e participantes, definindo quem vai "ao ar" e em que momento isso vai acontecer. Essa entidade é análoga ao coordenador da mesa de corte (switch) num estúdio de televisão, ou seja, é responsável por avisar a determinado apresentador (através de uma comunicação via chat) o momento que o mesmo vai entrar no ar. Além disso, o controlador da Suíte efetua a seleção de um desses fluxos para transmissão em multicast. Diferentemente de um estúdio de televisão, entretanto, a transmissão é via rede, e não via broadcast terrestre. Dessa forma, novos fatores devem ser considerados, como a taxa de codificação do vídeo de cada apresentador (que é definida pelo gerente), o tipo de transmissão (foi escolhido multicast, devido ao número elevado de possíveis participantes), e as características da rede (atraso, perda de pacotes, etc). O sistema proposto prevê diversos apresentadores simultâneos.

Figura 3: Interface preliminar. O logo da RNP deverá aparecer na interface final. A) Coluna esquerda superior: apresenta a lista de apresentadores (previamente cadastrados). Ao lado já aparece se o Apresentador possui recursos de câmera e microfone ativos (ícones) . B) Coluna esquerda inferior: mostra o número de outros clientes existentes; C) Janelas de 1 a 6: representam os possíveis fluxos de apresentadores. A escolha de qual apresentador está ativo é dada pelo menu abaixo de cada janela. D) Janela central inferior: representa o chat entre os apresentadores. E) Janela inferior direita: apresenta o sinal que está sendo transmitido em multicast (no caso o sinal 1). F) Botões “1 a 6”: determinam quais janelas serão enviadas em multicast. G) botão “config”: permite ao gerente configurar o sistema, como taxa de transmissão, IP multicast, etc.

O Gerente Monitor é o responsável por controlar a lista de perguntas dos clientes participantes, filtrando e encaminhando o resultado para o apresentador. É análogo a um mediador, que analisa a qualidade das perguntas e repassa a quem tiver capacidade de responder.

O Cliente Participante é, basicamente, aquele usuário que possui interesse em acompanhar ou participar do debate, porém não é um dos apresentadores. Assim, este cliente é basicamente um DECODIFICADOR, semelhante a um set-top box de IPTV, que só recebe o fluxo multicast de qualidade SD emitido pelo gerente. O sistema proposto neste GT disponibiliza a possibilidade de interação desse cliente via mensagens.

O Cliente Apresentador representa o palestrante, e seu equipamento deve efetuar DECODIFICAÇÃO e CODIFICAÇÃO. A decodificação é do fluxo multicast de qualidade SD, e a codificação é do seu próprio sinal, que é enviado para o gerente compor os diversos fluxos numa única saída em multicast. Alguns apresentadores, conforme seu hardware, capacidade de máquina e rede, utilizarão a transmissão de vídeo numa qualidade inferior à qualidade SD, como, por exemplo, CIF (358x244).

Os Gerentes serão implementados somente em software, pois o número deles é pequeno demais para justificar um desenvolvimento de hardware. Os clientes, entretanto, serão implementados em software e hardware. Em software para levar a abrangência do sistema para todos que tenham computador, e em hardware para estender ainda mais essa abrangência, através de um hardware de baixo custo, que pode ser utilizado para os usuários que não possuem computador.

A implementação da solução de software será efetuada no estilo software livre (GPL), visando uma maior disseminação do sistema.

Para simplificar a divisão de tarefas conforme especialidade do desenvolvedor, dividiu-se as principais áreas de atividade do projeto em Transmissão, Codificação, Decodificação, Interface com o Usuário, Sistema Operacional e Interatividade.

Para a Transmissão, pretende-se utilizar a o backbone da RNP (Rede Nacional de Pesquisa). Nessa área, inicialmente devem ser tratadas questões como transmissão TCP/UDP, unicast/multicast, ipv4/ipv6, segurança, atraso e QoS. Um protocolo de rede entre os gerentes e clientes deve ser elaborado. Para a transmissão, prevê-se a utilização de unicast entre os apresentadores e o gerente visualizador, e multicast para todos os clientes participantes, pois o sistema deve suportar muitos simultaneamente. Futuramente, pode-se evoluir a parte de transmissão visando o acesso global às transmissões, buscando que possa ser recebida por diversos usuários em redes com diferentes larguras de banda e com vários tipos de resolução de tela, ou mesmo características de processamento muito diferentes.

Na área de Codificação de Vídeo, as entidades envolvidas são o Gerente Visualizador e o Cliente Apresentador. Ambos necessitam efetuar codificação, porém de formas diferentes. O Gerente Visualizador recebe os diversos fluxos dos Clientes Apresentadores, formata a imagem em uma ou mais porções da tela, recodifica e transmite em multicast. Nessa etapa, pode acontecer, por exemplo, do Gerente receber quatro fluxos unicast de 2 Mbit/s e transformar um único fluxo multicast de 2 Mbit/s, contendo quatro pequenas imagens, uma de cada apresentador. O Cliente Apresentador, por outro lado, necessita efetuar codificação e decodificação em tempo real. A codificação vem da câmera de vídeo, ou seja, consiste de seu próprio sinal, e a decodificação vem do sinal multicast principal, transmitido pelo Gerente. Nessa área a equipe executora também possui conhecimento tanto em software como em hardware, tendo desenvolvido os projetos do codificador e decodificador escalável MPEG-2 para a televisão digital no Brasil, e tendo efetuado diversos estudos complementares em H.264/AVC. Algumas publicações que comprovam isso são: [Husemann 2006], [Frohlich 2005], [Roesler 2005a], [Roesler 2004a], [Souza 2005a], [Souza 2005b], [Bruno 2005a], [Bruno 2005b], [Bruno 2005c], [Bruno 2005d].

O Decodificador de Vídeo é utilizado no Cliente Participante, e a solução de hardware será basicamente um set-top box IPTV com capacidade de interatividade através de mensagens. Na área de software, será basicamente um "player" de vídeo com capacidade de receber multicast, decodificar áudio e vídeo e transmitir mensagens de controle conforme definições do sistema.

Na área de Interface com o Usuário, a estratégia de software é utilizar o sistema de janelas da biblioteca SDL (Simple Direct Layer), que permite a utilização tanto em sistemas operacionais windows como Linux. Isso é importante no momento que existe todo um movimento governamental para utilização de software livre. Ainda na área de interface com o usuário, questões de usabilidade no cliente serão levadas em consideração, visto que o objetivo é fazer com que a tecnologia seja transparente ao utilizador da mesma. O hardware de cliente permitirá a execução do aplicativo em uma televisão normal, que suscita diversas questões de usabilidade, como tamanho dos caracteres (tipos maiores que 18 pontos), utilização de textos claros em fundos escuros, aumento de entrelinhas e espaçamento entre caracteres em relação a computador, e assim por diante.

Na área de Sistemas Operacionais, existem diversos aspectos relacionados a tamanho de buffer visando minimizar o atraso, estilo de desenvolvimento visando compatibilidade do mesmo software para windows e linux, implementação de software embarcado nos clientes de hardware, entre outras.

Na área da Interatividade, será definido um protocolo de rede para que as entidades participantes interajam entre si. 

SICREMAQ: Sistema de Capacitação Remota Multimídia de Alta Qualidade

O objetivo geral deste projeto é a criação de um sistema de software para transmissão multimídia em alta qualidade visando apoio para:

O setor PITCE no qual essa proposta de encaixa é "software" (recursos solicitados nessa área), entretanto, também serão desenvolvidos com outros recursos equipamentos de hardware, mais avançados que set-top boxes IPTV, pois permitem também codificação de vídeo, e não apenas decodificação.

Os parceiros envolvidos podem ser vistos na figura a seguir: