Uma Solução de Webcast para Ensino à Distância
Isidro Lopes da Silva Neto
Fundação CPqD
[email protected]
Anderson Luiz Brunozi
Fundação CPqD
[email protected]
Resumo
Este trabalho explora as possibilidades de uso de webcast
de conteúdo multimídia para Ensino à Distância
apresentando uma solução que compreende uma
ferramenta de autoria e uma arquitetura cliente-servidor
para armazenamento, acesso, difusão e consumo deste
tipo de conteúdo ao vivo ou sob demanda.
Os usuários têm acesso ao conteúdo multimídia por meio
de sessões RTSP [4] e HTTP [5] síncronas através das
quais são transportadas mídias dinâmicas (áudio e vídeo)
e estáticas (imagens) respectivamente.
1. Introdução
Webcast ou webdifusão significa transmissão de mídia
na web. Webcast emprega uma tecnologia chamada
streaming que permite que a mídia seja transmitida pelo
provedor e assistida pelo usuário simultaneamente,
descontados os atrasos intrínsecos de software e de rede.
Observe que streaming é diferente de outras
tecnologias tais como o download e o progressive
download nas quais o usuário deve esperar que a mídia
(ou pelo menos parte dela) seja “baixada” para que sua
apresentação tenha início.
Webcast também pode ser confundido com
webconference, mas são coisas diferentes. No primeiro
caso a transmissão é ponto-multiponto e no segundo caso
a transmissão é multiponto-multiponto. De fato, uma
webconference é um conjunto de “pequenos” webcasts
dado que o número de pontos envolvidos numa
webconference geralmente é bem menor do que o número
de pontos envolvidos num webcast.
O conteúdo de um webcast pode ser constituído por
uma mídia simples como um vídeo, que é a situação mais
freqüente, ou pelo que chamamos de rich media, que é a
composição de várias mídias elementares tais como áudio,
vídeo, imagens, texto e até mesmo páginas da web.
Este trabalho propõe uma solução de webcast baseada
em rich media, como uma ferramenta complementar para
suporte a EaD.
EaD
HTTP
JPEG
PNG
Real Media
RTSP
SMIL
SVG
URL
W3C
web services
webcast
WSDL
XML
Vinicius de Lima
Fundação CPqD
[email protected]
Ensino à Distância
Hypertext Transfer Protocol [5]
Joint Photographic Experts Group [17]
Portable Network Graphics [18]
Formato de compactação de mídia
desenvolvido pela Helix Community
[6]
Real Time Streaming Protocol [4]
Synchronized Multimedia Integration
Language [2]
Scalable Vector Graphics [16]
Uniform Resource Locator
World Wide Web Consortium [7]
Arquitetura que provê meio
padronizado de interoperação entre
aplicações diferentes [3]
O mesmo que webdifusão. Significa
transmissão de mídia na web.
Web Services Description Language
[3]
Extensible Markup Language[1]
3. Casos de uso
Abaixo apresentamos vários casos de uso da solução de
webcast, conforme ilustra a Figura 1.
Figura 1. Casos de Uso
2. Abreviações e acrônimos
Termo
Descrição
AJAX
Asynchronous JavaScript And XML
1- XVII Programa de Atualização Continuada em
Oftalmologia “Grand Round” – 2007, Departamento de
Oftalmologia UNIFESP/EPM, transmitido ao vivo às
segundas feiras das 19:30 às 21 horas, SP, SP.
Até o momento este foi o caso de uso mais completo e
bem sucedido para Educação à Distância, graças aos
organizadores da Escola Paulista de Medicina. Foram
apresentados casos médicos reais, muito bem ilustrados
com imagens impressionantes. Sob a coordenação do
preceptor dos residentes, a audiência, tanto presencial
como virtual, era convidada a propor diagnóstico e
conduta para cada um dos casos apresentados, os quais,
após o debate, eram desvendados com a apresentação do
diagnóstico, conduta e recuperação do paciente. Havia
também sessões em Inglês para permitir a participação de
convidados estrangeiros. Este acervo está gravado e
disponível para um grupo de usuários administrados pelos
organizadores.
2- Workshop de P&D do Projeto GIGA da RNP,
transmitido ao vivo no período de 03/09/07 a 06/09/07,
Petrópolis, RJ. Disponível sob demanda no endereço:
http://dmdweb.giga.cpqd .com.br/rnp
3- V Simpósio InCor sobre Doença Arterial
Coronariana transmitido ao vivo no período de 23/11/07
a 24/11/07, SP, SP. Não disponível sob demanda.
4- Medicina em Evidência acessível através do portal
do CREMESP (Conselho de Medicina do Estado de São
Paulo), no endereço:
http://www.cremesp.org.br/
conjunto de regiões da tela que podem ser ocupadas pelas
mídias elementares dinamicamente.
O comportamento temporal é fundamentalmente
descrito por dois elementos XML principais denominados
par e seq. O elemento par define mídias que devem ser
apresentadas simultaneamente e o elemento seq define as
mídias que devem ser apresentadas seqüencialmente no
tempo.
A Figura 2 apresenta um exemplo de um particular
encadeamento dos elementos par e seq e o conseqüente
comportamento temporal gerado. Barras verticais indicam
elementos to tipo par e barras horizontais indicam
elementos do tipo seq. Observe-se que cada elemento par
pode conter um número qualquer de elementos seq e viceversa, permitindo, desta forma, ampla liberdade para o
autor definir o comportamento temporal de sua
apresentação.
4. Fundamentos Teóricos
Nesta seção serão descritas algumas das tecnologias e
conceitos empregados no projeto. Como poderá ser
observado, buscou-se a conformidade com as
especificações do W3C [7], que é um consórcio cujo
objetivo é especificar padrões de interoperabilidade para
conduzir a web ao seu potencial pleno.
4.1 SMIL
SMIL [2] ou Synchronized Multimedia Integration
Language é uma especificação do W3C [7] de linguagem
XML [1] que habilita a construção simples de
apresentações audiovisuais interativas. Tipicamente é
usada para produção de apresentações rich media
permitindo a integração e sincronização de áudio e vídeo
com imagens, texto ou qualquer outro tipo de mídia.
Atualmente encontra-se disponível a especificação SMIL
2.1, de dezembro de 2005 e já existe uma publicação
candidata para a versão SMIL 3.0, publicada em janeiro
de 2008.
Usando SMIL, o autor de uma apresentação rich media
poderá descrever o seu comportamento temporal, associar
hiperlinks com objetos de mídia e ainda desenhar o layout
de sua apresentação na tela.
O layout de uma apresentação é descrito por um
Figura 2. Comportamento temporal de uma
apresentação SMIL
4.2 SVG e outros formatos de imagens
Os padrões de imagens estáticas mais comuns em
webcasts são JPEG [16] e PNG [17]. Estes padrões
permitem a compressão de imagens para um determinado
tamanho, com ou sem perdas, resultando em imagens com
uma determinada quantidade total de pixels. Caso haja
necessidade de ampliação, este tipo de imagem perde
qualidade visual, dado que sua área aumenta, mas a
quantidade total de pixels permanece a mesma. A Figura 3
ilustra este efeito apresentando três imagens padrão PNG
denominadas A, B e C. A imagem B é a imagem A
reduzida quatro vezes e a imagem C é a imagem B
ampliada quatro vezes. É possível observar a perda de
qualidade visual da imagem C em relação à imagem A.
O padrão SVG [18], ou Scalable Vector Graphics, é
uma especificação de linguagem XML [1] do W3C [7]
para imagens gráficas bidimensionais escaláveis.
Figura 3. Zoom de imagens não escaláveis
Por imagens escaláveis entende-se aquelas que, mesmo
ampliadas ou reduzidas, apresentam sempre a mesma
densidade de pixels e, conseqüentemente, a mesma
qualidade visual. Se o padrão das imagens da Figura 3
fosse SVG as imagens A e C seriam idênticas.
Uma imagem padrão SVG é um arquivo XML [1] e,
por esta razão, necessita de um visualizador que interprete
seu conteúdo para transformá-lo em imagem apresentável
na tela do computador.
O visualizador gratuito mais empregado atualmente é o
Adobe SVG Viewer [10] que oferece qualidade visual
excelente. Para produzir imagens no padrão SVG existem
vários editores de mercado, tais como o Corel Draw e o
Adobe Illustrator. Há também o INKSCAPE [11], que foi
usado para ilustrar este trabalho. É gratuito, fácil de usar e
também produz imagens de excelente qualidade. A
imagem A da Figura 3 foi obtida de um dos exemplos de
imagem padrão SVG do INKSCAPE exportada para o
padrão PNG.
O padrão SVG permite ainda importação de imagens
não escaláveis tais como fotos e ainda dá suporte para
animação, interatividade e scripting. Normalmente os
visualizadores SVG permitem o uso de lupas sobre estas
imagens, facilidade esta interessante para imagens
detalhadas, tais como mapas, gráficos de funções
matemáticas e ilustrações de anatomia, o que torna este
padrão ainda mais atrativo para trabalhos como EaD que
exigem qualidade visual de imagem.
4.3 Produção, difusão e consumo de conteúdo.
A Figura 4 ilustra o processo de produção, consumo e
difusão de conteúdo rich media.
Conceitualmente uma ferramenta de autoria de
conteúdo rich media é um programa capaz de realizar a
captura e gravação de todas as mídias elementares de uma
apresentação (áudios, vídeos, imagens e textos)
simultaneamente com o registro do comportamento
temporal das mesmas.
Um player de conteúdo rich media é um programa
capaz de reproduzir este conteúdo a partir do registro feito
pela ferramenta de autoria e de um layout de apresentação
que define as regiões da tela do computador onde as
mídias elementares devem ser exibidas. Conforme dito no
item 4.1, a linguagem SMIL [2] dá suporte à descrição
tanto do layout como do comportamento temporal das
mídias elementares de uma apresentação, sendo por esta
razão empregada por várias ferramentas de autoria.
Opcionalmente a ferramenta de autoria pode transmitir
o conteúdo rich media para o servidor http/rtsp ao vivo,
via stream, enquanto realiza a gravação. Um player SMIL,
tal como o Real Player [8] ou Quick Time [9] pode então
consumir este conteúdo local ou remotamente.
Vamos imaginar, numa primeira aproximação, que este
conteúdo foi produzido off line e depois enviado a um
servidor RTSP. O consumo local deste conteúdo ocorreria
sem problemas, mas o consumo remoto, via servidor
RTSP, poderia sofrer algumas restrições que serão
descritas a seguir.
Figura 4. Produção, difusão e consumo de
conteúdo rich media.
Normalmente as imagens de uma apresentação são
arquivos de tamanho 50 a 100 kbytes. Transportá-las na
mesma conexão RTSP é possível, mas isso causaria picos
de ocupação de banda durante as mudanças de imagem,
propiciando travamentos eventuais da apresentação. Por
esta razão, alguns players fazem o parser do arquivo
SMIL identificando e baixando previamente todas as
imagens da apresentação causando um outro efeito
colateral indesejável: o usuário tem que esperar o
download de todas as imagens antes que a apresentação se
inicie. Tomemos, a título de exemplo, em uma conexão a
128 kbps e uma apresentação com 100 slides de tamanho
médio 100kbytes. Teríamos, neste caso, um tempo de
download de imagens superior a 10 minutos, intolerável
para qualquer usuário.
Outro problema é que não podemos empregar esta
mesma abordagem para apresentações ao vivo, pois o
arquivo SMIL só ficará pronto após o final da produção.
Para evitar os problemas descritos acima, uma
alternativa interessante é enviar as imagens a um servidor
HTTP [5] e o stream para um servidor RTSP [4]. Este
stream precisaria ser composto não somente por pacotes
de vídeo e áudio, mas também por pacotes de dados que
contêm a informação da URL da imagem corrente da
apresentação.
Os players teriam então acesso à apresentação através
de duas sessões: uma HTTP e a outra RTSP.
Inicialmente o player estabelece uma sessão HTTP com
o servidor obtendo o arquivo SMIL da apresentação. Este
arquivo contém a URL para estabelecimento da sessão
RTSP. Estabelecida a sessão RTSP, o player passa a
receber o stream composto por pacotes de áudio e vídeo e
dados a partir dos quais ele recompõe, respectivamente, as
mídias de áudio e vídeo e a seqüência de URL das
imagens da apresentação. Com esta seqüência o player
sincroniza a sessão HTTP que passa a apresentar estas
imagens em intervalos de tempo coerentes com o áudio e
o vídeo. Esta coerência é garantida independentemente
dos atrasos de rede e da inevitável buferização de pacotes
ao longo de toda cadeia.
A Figura 5 apresenta a ocupação de banda causada pelo
par de sessões RTSP e HTTP durante uma apresentação,
para um acesso a 256 kbps. Observa-se o valor quiescente
da ocupação correspondente à banda consumida pela
sessão RTSP (aproximadamente 128 kbps) e os picos
correspondem à banda consumida pela sessão HTTP.
outro tipo de atividade educacional de forma que o aluno
não sentisse a diferença entre estar real ou virtualmente
presente. Com a tecnologia que dispomos hoje, tanto de
rede como de processamento de imagens, a virtualização
imersiva é possível, mas seriam necessários recursos de
captura, de rede e de processamento que inviabilizariam o
projeto do ponto de vista econômico.
Para maximizar esta sensação de presença, uma solução
de compromisso seria aquela que atendesse os seguintes
requisitos de interface com usuário:
1) O aluno deve poder ver e ouvir o professor;
2) O aluno deve poder fazer perguntas textuais para o
professor;
3) O aluno deve poder ver as imagens apresentadas
durante a aula com a melhor definição e tamanho
possíveis.
Além dos requisitos acima, seria desejável atender a
requisitos de audiência e de plataforma:
4) O acesso às aulas deve ser possível a partir de
conexões de 128 kbps;
5) O acesso às aulas deve ser possível a partir das
plataformas Windows, Linux e Mac OS.
Figura 6. A solução CPqD Webcasting
Figura 5. Ocupação de banda das sessões HTTP
e RTSP
5. A solução CPqD Webcasting
Parte do tempo das aulas, sobretudo em universidades,
são ocupadas com apresentações durante as quais os
alunos têm interatividade plena com o professor: eles
podem vê-lo, ouvi-lo, observar as imagens por ele
apresentadas e fazer perguntas verbais a qualquer hora.
Um grande desafio para um projeto de EaD seria a
virtualização imersiva de uma aula presencial ou qualquer
A solução CPqD Webcasting foi desenvolvida para
contemplar estes requisitos. Trata-se de uma suíte que
compreende três aplicações: o Webcast Recorder, o
Webcast Server e o Webcast Client conforme ilustra a
Figura 6.
Estas aplicações correspondem a ferramenta de autoria,
ao servidor http/rtsp e ao player SMIL descritos na seção
4.3, mas suas funcionalidades foram estendidas para que
os webcasts ocorram em salas de chat permitindo
interatividade entre alunos e entre alunos e professor.
A seguir serão descritas resumidamente as principais
características de cada uma destas aplicações bem como
suas interfaces com usuários.
5.1 Webcast Recorder
O Webcast Recorder é uma implementação da
ferramenta de autoria de conteúdo rich media, baseado em
SMIL, descrita no item 4.3 e um cliente chat.
A Figura 7 ilustra a interface com usuário desta
aplicação.
Esta aplicação realiza a aquisição de vídeo, de
áudio e de eventos associados a mudanças de
imagens gerando um único stream composto,
em formato Real Media, que é transmitido para
o Webcast Server. As imagens podem ser
importadas diretamente de arquivos
PowerPoint,
quando há necessidade de zoom em ambientes amplos
como auditórios. Com relação ao áudio, é possível fazer
captura estereofônica desde que o computador esteja
equipado com hardware adequado.
Após a gravação, esta aplicação oferece suporte para
criação de índice, conforme ilustra a Figura 8, para
facilitar a navegação do usuário no conteúdo multimídia.
Esta aplicação foi implementada empregando as
linguagens Java e C++ e software da Comunidade Helix
[6].
5.2 Webcast Server
O Webcast Server é uma implementação do servidor
http/rstp descrita no item 4.3 e um servidor de chat que
associa a cada webcast uma sessão de chat exclusiva,
criando assim uma interatividade próxima a uma sala de
aula. Mesmo aulas gravadas ocorrem em salas de chat
onde os alunos podem tirar dúvidas uns com os outros ou
mesmo com o professor, se este estiver na sala.
Esta aplicação oferece serviço completo de webcasting
compreendendo as operações de criação (com eventual
upload de conteúdo), supressão e acesso a conteúdo.
Além destes há os serviços de cadastro on-line com envio
de senha por e-mail e geração de relatórios de
participação por aluno e por aula.
É possível integrar os serviços de webcasting a
qualquer ambiente de suporte a EaD, empregando web
services, conforme será descrito no item 5.4.
Esta aplicação foi implementada empregando
linguagem Java e software da Comunidade Helix [6] sobre
servidor Apache Tomcat [20].
Figura 7. Interface com usuário do Webcast
Recorder
5.3 Webcast Client
Open Office Impress ou diretórios de imagens JPEG,
PNG ou SVG. Assim que importadas, as imagens são
enviadas para o Webcast Server no caso de webcasts ao
vivo. Cada importação gera um lote de imagens cuja
visualização em miniatura fica disponível na região de
pré-visualização (do lado direito da tela) permitindo que o
professor as apresente seqüencial ou aleatoriamente. A
imagem corrente da apresentação é exibida na parte
central da tela.
O professor pode ler as perguntas formuladas pelos
alunos, visíveis na região de mensagens, podendo então
optar por respondê-las textual ou verbalmente.
A produção de conteúdo é realizada de forma simples e
amigável empregando facilidades tais como a descoberta
automática dos dispositivos de captura de áudio e vídeo e
a programação das bandas de transmissão para audiências
de 128, 256, 512 e 1024 kbps. No caso da captura de
vídeo podem ser empregadas desde câmeras web até
câmeras digitais, sendo estas últimas mais indicadas
O Webcast Client é uma implementação do player
SMIL descrito no item 4.3 e um cliente chat que permite
que o aluno participe de aulas on-demand ou ao vivo,
atendendo todos os requisitos enunciados no início desta
seção. A Figura 8 ilustra interface com usuário desta
aplicação.
A linha tracejada indica a separação das sessões RTSP
e HTTP. A sessão RTSP apresenta o vídeo e o áudio do
professor com eventual índice para webcasts de aulas
gravadas. Há também duas regiões para imagens
adicionais e controles de pause (que pode ser usado
mesmo para webcasts ao vivo), stop, play, volume e uma
barra deslizante que permite o avanço ou retrocesso no
tempo de webcasts gravados. A sessão HTTP apresenta as
imagens da apresentação e uma janela de chat retrátil, que
pode ser minimizada quando não estiver em uso. Esta
solução visa maximizar a região de imagens que é o
principal foco de atenção do aluno.
A camada de apresentação da sessão HTTP foi
construída empregando as práticas AJAX e a camada de
apresentação da sessão RTSP foi desenhada com o
suporte a layout da linguagem SMIL e implementada com
o uso do plug-in do Real Player [8].
5.4 Integração com Ambientes de suporte a EaD
As instituições de ensino empregam diferentes
ambientes de suporte a EaD. Tanto alunos como
professores já estão acostumados ao uso destes ambientes
e substituí-los poderia ser um transtorno. Por esta razão a
aplicação Webcast Server oferece interface para
integração baseada em Web Services [3] que é uma
especificação do W3C [7] para dar suporte à comunicação
entre aplicações na web. A integração se dá por meio de
um arquivo WSDL que expõe o serviço de webcasting
descrito na seção 5.2. A partir deste arquivo é possível
gerar agentes de forma automatizada para qualquer
linguagem de programação.
os alunos estão naturalmente reunidos e podem, além de
executar suas tarefas escolares, desenvolver suas
habilidades de interação social tais como discussão,
colaboração, acordo, procura de consenso, compromisso,
ajuda e encorajamento dos colegas em dificuldade [19].
7. Conclusão
A solução para webcasting apresentada neste trabalho
permite um avanço nos mecanismos de Educação à
Distância
oferecendo
suporte
para
autoria,
armazenamento e webcast de aulas e apresentações ao
vivo ou gravadas podendo ser integrada a qualquer
ambiente de suporte a EaD.
Tanto professores como alunos podem produzir
material multimídia de forma simples, rápida e econômica
e acessar este material onde estiverem e sempre que
precisarem.
A idéia de o aluno poder apresentar os resultados de
seu trabalho em formato multimídia, que incorpora as
linguagens escrita, visual, falada e gestual, incentiva o
aluno a desenvolver sua capacidade de criação e
expressão como cidadão, além de estimular o trabalho
colaborativo em ambientes educacionais virtuais.
A solução, se aplicada no contexto de um programa
nacional, poderia contribuir para o nivelamento e
melhoria da qualidade de ensino.
8. Referências
Figura 8. Interface com usuário do Webcast
Client
[1]
[2]
[3]
[4]
Estes agentes podem então ser incorporados aos
ambientes de EaD de forma que o serviço de webcasting
fique disponível como mais um recurso destes ambientes.
Até o momento foram realizadas integrações bem
sucedidas com os ambientes TelEduc [12], Moodle [13] e
Sakai [14].
[5]
6. Orientação Pedagógica
[11]
[12]
[13]
[14]
[15]
A solução apresentada neste trabalho é agnóstica à
orientação pedagógica das instituições de ensino.
Contudo, independentemente de qual seja esta orientação,
webcast de conteúdo didático pode ser de grande auxílio
para o educador.
Sem a intenção de recomendar, que não é de
competência dos autores, mas apenas para avaliar o
alcance, o uso de webcast poderia, numa situação
econômica ideal, até inverter o paradigma tradicional de
“aulas na escola e tarefas em casa” para “aulas em casa e
tarefas na escola”. O tempo na escola poderia ser
aproveitado para o trabalho colaborativo em grupo onde
[6]
[7]
[8]
[9]
[10]
[16]
[17]
[18]
[19]
[20]
Extensible Markup Language http://www.w3.org/XML
Synchronized Multimedia http://www.w3.org/AudioVideo/
Web Services Activity http://www.w3.org/2002/ws/
Real Time Streaming Protocol, RFP2326,
http://tools.ietf.org/html/rfc2326
HTTP - Hypertext Transfer Protocol
http://www.w3.org/Protocols/
Helix Community http://helixcommunity.org/
W3C World Wide Web Consortium http://www.w3.org/
Real Player http://www.realplayer.com/
Quick Time Player http://www.apple.com/quicktime/
Adobe SVG Viewer
http://www.adobe.com/svg/viewer/install/
INKSCAPE http://www.inkscape.org/
TelEduc http://teleduc.nied.unicamp.br/pagina/
Moodle http://moodle.org/
Sakai http://sakaiproject.org/
IMS Global Learning Consortium
http://www.imsglobal.org/
SVG, XML Graphics for the Web
http://www.w3.org/Graphics/SVG/
Joint Photographic Experts Group http://www.jpeg.org/
Portable Network Graphics http://www.w3.org/TR/PNG/
Sandra Audrey Hennings, “A Psycho-educational
Approach to Facilitate Synergy with Respect to Teaching
and Learning in a Secondary School”, Mini-Dissertation,
University of Johannesburg, May 2004.
Apache Tomcat http://tomcat.apache.org/
Download

Uma Solução de Webcast para Ensino à Distância