SMU29009: Apresentação
Objetivos e conteúdo programático
O objetivo geral da disciplina é: analisar sistemas que englobam a geração, transmissão e reprodução de audio, video e texto com requisitos de tempo-real.
O conteúdo programático se constitui de:
- conceitos básicos e problemas associados a comunicação multimídia em redes;
- compressão de aúdio e vídeo (sem se aprofundar em aspectos teóricos);
- aspectos de roteamento voltado para a comunicação multimídia;
- QoS para redes Multimídia;
- Protocolos de Sinalização e de Transporte de Mídia: SIP, RTP, RTCP etc;
- Visão da arquitetura multimídia de sistemas 3G/4G.
Sistemas multimidia
Sistemas multimidia são compostos pelos elementos envolvidos com a representação, geração, transmissão e reprodução de conteúdo digital multimidia. Esse tipo de conteúdo inclui audio, video e texto com diferentes graus de interatividade. Em particular, o uso de redes de dados tem papel primordial anos sistemas multimidia a serem estudados.
O estudo de sistemas multimidia inicia com aplicações multimidia, pois as características e necessidades dessas aplicações justificam as técnicas, tecnologias e infraestruturas concebidas para esse tipo de sistema. Algumas categorias de aplicações são:
- Video streaming (ex: Netflix, Youtube)
- Audio streaming (ex: Icecast, Spotify)
- VoIP e telefonia IP (SIP com Asterisk, Freeswitch ou FreePBX; Skype)
- Video e áudio conferência
- Telemedicina
- Jogos
- Vigilância eletrônica
- ... outros ?
Algumas questões sobre essas aplicações:
- Como funcionam esses serviços ? Como os conteúdos são acessados ?
- Como os dados são representados ?
- Como os dados são transportados através da rede ? Quais os protocolos envolvidos e como os dados são encapsulados em suas PDUs ?
- Que requisitos quanto à transmissão pela rede possuem para um bom funcionamento ?
Exemplo 1: video streaming
Video streaming é a transmissão de video por uma rede de dados, com sua visualização ocorrendo à medida que for sendo recebido pelo cliente. Um exemplo muito conhecido de serviço de video streaming é fornecido pelo YouTube. Outros exemplos de video streaming são Netflix, que possibilita assistir filmes via Internet mediante o pagamento de uma assinatura, e a transmissão de jogos de futebol via Internet por algumas emissoras de TV aberta. Apesar de a experiência dos usuários parecer a mesma (ou quase ...) para esses serviços, existem diferenças na forma como são implementados.
Experimente visualizar os videos abaixo. Em todos eles observe quanto tempo demora para iniciar a tocar o video e sua continuidade (se ele interrompe ou degrada a imagem). Experimente também avançar o video, como por exemplo para perto de seu final.
Como é feito o acesso a esses videos, e como eles são transportados pela rede ?
- Execute o wireshark e repita o acesso aos videos. Enquanto a captura acontece, faça um reposicionamento do video - i.e. avance-o para perto de seu final. Observe as mensagens trocadas entre sua aplicação cliente e o servidor do video.
- Você conseguiria descrever como funcionam seus acessos e tranmsmissões ?
- Você pode notar alguma diferença entre as diferentes transmissões de video ?
Exemplo 2: Internet radio
Atualmente muitas estações de rádio transmitem suas programações também pela Internet. Existem inclusive muitas estações cujas transmissões são feitas somente pela rede - i.e. a rigor, não fazem transmissão por rádio. Com isso, pessoas conseguem escutar a programação de uma estação de rádio de outro país. Um atrativo dessas estações via Internet é informarem o gênero de música transmitida, além de apresentarem uma boa qualidade sonora. Esse tipo de serviço se popularizou tanto que existem diretórios de estações, que podem ser acessados por aplicativos e assim possibilitar que os usuários escolham que tipo de música desejam escutar.
Um aplicativo do Linux que oferece fácil acesso a Internet radio é o Rhytmbox. Ele pode ser executado no menu Aplicativos->Som e video. Execute o Rhytmbox em seu computador, e escolha uma estação de radio. Observe quanto tempo demora para que a música comece a tocar, a qualidade do som, e sua continuidade.
Tente também acessar o Spotify, ou algum serviço de streaming de audio parecido.
Como é feito o acesso às estações de rádio, e como as músicas são transportadas pela rede ?
- Execute o wireshark e repita o acesso à estação. Enquanto a captura acontece, observe os protocolos envolvidos e as mensagens que fluem entre seu computador e o servidor da estação. Observe também onde a estação se localiza (país/cidade).
- Você conseguiria descrever como funcionam seus acessos e transmissões ?
Exemplo 3: Hangout
O serviço Hangout do Google possibilita conversas com texto, audio e video, e mesmo conferências. Criem uma ou mais videochamadas em grupo, e analisem a comunicação. Usem o wireshark para identificar as interações geradas ao acessar o Hangout:
- Quais os protocolos envolvidos ?
- Como os dados são representados ?
TAREFA: pesquisa sobre APIs para aplicações multimidia
Escolha uma aplicação ou serviço de streaming, e investigue seu funcionamento. Descreva a aplicação ou serviço escolhido, e identifique o seguinte:
- As características da midia: como é representada, os formatos usados, os padrões envolvidos
- Os métodos de transmissão usados: que protocolos e mecanismos estão envolvidos, e quais suas características
- Os requisitos quanto à rede: que necessidades existem quanto à rede para que a aplicação funcione a contento.
- As tecnologias utilizadas: em que tecnologias e APIs se baseiam essas aplicações ?
Escreva um resumo contendo essas informações, e entregue-o pelo Moodle.