Streaming na pratica Shoutcast Flumotion Felipe Santos dos Santos 1 1 Faculdade de Tecnologia Senac Pelotas(FATEC) Rua Gonçalves Chaves, 602 Centro CEP: 96.015-560 Pelotas RS Brasil Curso Superior de Tecnologia em Redes de Computadores felipesdsredes@gmail.com Resumo. Neste artigo será descrito dois cenários utilizando ferramentas que nos proporcionam a transmissão de áudio e vídeo pela rede. Alem disso será também abordado conceitos básicos que são necessários antes da implantação como: protocolos utilizados, conceitos, pré-requisitos necessários para implantação entre outros. Abstract. Here, we described two scenarios using tools we provide streaming audio and video over the network. In addition will also be covered basic concepts that are needed before deployment as protocols used, concepts, and necessary prerequisites for implementation among others. 1. INTRODUÇÃO Com o surgimento do streaming facilitou muito a comunição e a disseminação do conhecimento pela internet, essa tecnologia nos possibilita transmitir áudio e vídeo em tempo real assim como utilizarmos como beneficio em diversas áreas tais como: na educação, no comercio eletrônico, na área musical, entre outros. Neste artigo serão demonstradas em especial duas ferramentas que pode ser utilizada para esta transmissão o shoutcast para transmissões de áudio e o flumotion para transmissões de vídeo, ira ser demonstrado estas ferramentas em cenários que serão criados para tal simulação. 2. O QUE É STREAMING O streaming é uma forma de transmissão de som e imagens (áudio e vídeo) através de uma rede qualquer de computadores sem a necessidade de efetuar downloads do que esta se vendo ou ouvindo, pois neste método a maquina recebe as informações ao mesmo tempo em que as repassa para o usuário. Neste trabalho serão abordadas duas ferramentas uma delas nos proporciona streaming de áudio e a outra de vídeo, serão abordados os conceitos necessários para cada uma destas transmissões. 2.1. STREAMING DE ÁUDIO O áudio streaming é bem menos complexo do que o streaming de vídeo, e em virtude disso, ele apresenta um resultado melhor para os seus ouvintes. Um exemplo que pode ser dado é que conexões com a velocidade de 56kbps podem receber seu sinal com uma qualidade excelente, bem próxima a dos CDs..
2.2. STREAMING DE VÍDEO Como no streaming de áudio, o vídeo possibilita que usuários de uma rede de computadores possam assistir a um vídeo sem a necessidade de um download prévio. No procedimento de transmissão, o vídeo é partido em pequenos pedaços e compactado para depois ser enviado para o computador de destino. Essa compactação deve retirar dados irrelevantes sem comprometer a qualidade final do vídeo que esta sendo apresentado. A grande aplicabilidade do streaming de vídeo se encontra nas suas potenciais aplicações no comercio eletrônico, no ensino eletrônico nas telecomunicações, e nos dias atuais em transmissões em tempo real. Para que transmissões possam ser eficazes em redes de banda estreita é necessária uma taxa alta de compressão de dados a fim de garantir uma boa qualidade visual, o MPEG (motion pictures experts groups) é o mais utilizado. 2.3. PROTOCOLOS Em uma comunicação por streaming podem ser utilizadas varias técnicas e com isto cada técnica tem o seu protocolo especifico será listado os protocolos mais utilizados em comunicações streaming, mas neste artigo serão abordados os protocolos em tempo real mais utilizado RTSP e RTP, abaixo ira ser listado outros protocolos utilizados em comunicações por steaming. RTSP ( Real time streaming protocol) RTP ( real rime protocol) RTCP ( real time control protocol) RSVP( resourse reservation protocol) Protocolo UDP O RTSP é um protocolo que atua na camada de aplicação e tem como principal função um gerenciamento de entrega de dados em tempo real. As fontes de dados podem ser de programas de áudio e ou vídeo a o vivo, ou conteúdos gravados e pré gravados conforme a demanda. O RTSP trabalha com vários protocolos dentre eles o HTTP, o RTP e qualquer outro que suporte mídias continuas pela internet. Este protocolo suporta interoperabilidade entre os padrões cliente e servidor de diferentes fabricantes, e pode trabalhar com trafego unicast e multicast. No caso do RTP é um protocolo de transporte fim a fim que permite que aplicações possam transmitir dados em tempo real através de serviços unicast ou multicast. O protocolo de controle RTPC é utilizado no transporte dos dados, com isso é possível monitorar a entrega de dados. Neste protocolo podem ser transmitidos vários formatos como o PCM e o GSM para som e os padrões MPEG para vídeo. Alem disso, outros formatos proprietários podem ser transmitidos também. Neste protocolo temos um mecanismo que auxilia a garantir a ordem de saída e chegada dos pacotes, o nome desse mecanismo é timestamping ( registro de tempo) e numeração sequencial entre outros. 2.4. CODECS No caso de transmissões streaming de áudio o codec mais utilizado é o G.711 ele foi um dos primeiros codecs que surgiram com a finalidade de atender as comunicações em tempo real na internet. Sua facilidade de implementação e boa qualidade da mídia quando decodificada torna seu uso bastante comum. De fato, praticamente todas as aplicações dessa área, baseadas em software ou em hardware, implementam esse codec. Apartir
deste codec se deu criação a outros que são utilizados nos dias de hoje temos codecs disponíveis proprietários e também com seus códigos fontes abertos mas praticamente todos ainda utilizam como base o G.711. Já nas transmissões de vídeo o que deu base para a criação dos demais foi o H.261 ele possui uma taxa de transmissão múltipla de 64kbps, variando de acordo com as configurações do usuário. Em relação a resolução, o formato QCIF é o mais utilizado, embora o formato CIF seja também possível. Com base neste protocolo foi criado as nossas extensões de vídeo que são hoje transmitidas a mais utilizada por ser mais leve é a MPEG. 3. CENARIO Para a aplicação das duas ferramentas que serão demonstradas neste artigo foi feita a criação de um cenário de testes. Na figura 1 será demonstrado o ambiente que foi criado, foi instalado o virtualbox para virtualizar dois computadores um com Linux ( ubuntu 12.04) para a instalação do flumotion e foi criado outra maquina virtual com a instalação do Windows XP para servir como cliente das nossas aplicações, e no notebook foi instalado o shoutcast server que é o nosso servidor de transmissão de áudio. Figura 1. CENARIO - APLICAÇÃO DAS FERRAMENTAS STREAMING 3.1. SHOUTCAST È um software para transmissão de áudio pela internet ou em redes locais, sua instalação e configuração é bem simples e foi desenvolvido pelo mesmo grupo que desenvolveu o winanp, esta ferramenta seu modulo servidor é compatível com Windows e Linux e como cliente é utilizado o winanp. O seu modulo servidor é o shoutcast Dnas atualmente esta na versão 2.0 e foi esta versão que foi utilizada para aplicação do ambiente. Como demonstrado na figura 1 possuímos um servidor com Linux(ubuntu 12.04) virtualizado fiz a utilização deste para realizar a configuração do shoutcast server realizando o download do DNAS na propria pagina do fabricante e logo ápos foi executado o arquivo SCserv. Na figura 2 sera demonstrado o arquivo de configuração onde podemos modificar senha e porta de acesso a o shoutcast, eu determinei a padrão que é a porta 8000.
Figura 2. ARQUIVO DE CONFIGURAÇÃO SHOUTCAST DNAS Na figura 3 é demonstrada a utilização do programa shoutcast source, que auxilia na conexão com o shoutcast server, logo após a conexão podemos colocar os arquivos que queremos transmitir, e na figura 3 é demonstrando o winnanp tocando as musicas que estão sendo disponibilizadas. Na figura 4 é demonstrado o winnanp cliente executando as musicas que foram inseridas, qualidade de som otima, foram realizados varios testes e a ferramenta obteve um otimo desempenho. 3.2. FLUMOTION Flumotion foi a ferramenta utilizada para transmissões de vídeo em rede, como sugerido no site do fabricante foi utilizado o sistema operacional ubuntu para a realização das configurações em questão de instalação não teve dificuldade alguma pois a ferramenta esta disponível nos repositórios padrão, utilizando o comando apt get install flumotion, com isto já estamos com a ferramenta devidamente instalada logo após colocamos o vídeo que queremos transmitir e no caso do cliente não é necessário nenhuma instalação pois o
Figura 3. SHOUTCAST SOURCE CONECTANDO NO SERVIDOR serviço utiliza o protocolo HTTP para transmissão do vídeo na figura 5 será demonstrado o software servidor e na imagem 6 a transmissão de um vídeo. 4. CONCLUSÃO Este artigo teve objetivo de demonstrar duas ferramentas para disponibilização do serviço de streaming na rede, foram demonstradas o shoutcast e o flumotion, foram realizados diversos testes e foi diagnosticado uma excelente performance dos dois aplicativos na questão do vídeo que era uma preocupação de ocorrer algum delay por se tratar de um trafego maior de informações foi obtido êxito e não aconteceu nenhum problema durante todos os testes. Ótimas soluções para administradores de redes ou para curiosos que queiram criar uma radio online ou seu próprio youtube. 5. Referencias Livro Streaming, RENATO NOGUEIRA PEREZ AVILA, ciencia moderna Livro COMUNICAÇÕES MULTIMIDIA NA INTERNET, DANIEL GOUVEIA, CIENCIA MODERNA
Figura 4. WINNANP CLIENT EXECUTANDO AS MUSICAS COMPARTILHADAS PELO SERVIDOR Figura 5. FLUMOTION MODULO SERVIDOR Figura 6. FLUMOTION MODULO SERVIDOR