sábado, 23 de janeiro de 2010

Streaming de vídeo com o VLC (VideoLAN Player)...

VLC - VideoLAN Player é um software de código-fonte aberto, estando disponível para Windows, Linux, MacOS, FreeBSD e outros sistemas operacionais. Ele permite a reprodução de diversos formatos de áudio e vídeo, além da conversão entre vários formatos de arquivos.
Uma função interessante do VLC - VideoLAN Player é o streaming de vídeo. O streaming é o envio da informação em um fluxo, diferente do envio por rajadas que é a forma utilizada no protocolo HTTP,  por exemplo. Na figura abaixo, estão demonstrados os estágios de uma transmissão por streaming.

Para criar um fluxo de vídeo no VLC, deve-se possuir algum arquivo de vídeo ou DVD de filme (é possível fazer o streaming originando de webcam ou microfone também!). O VLC funciona como servidor e cliente, bastando apenas selecionar a configuração desejada. Como servidor, a função será gerar o streaming a partir de alguma fonte. Neste caso, será usado um arquivo de vídeo.
 
Escolher a opção "Fluxo"
 
Clicar em "Adicionar" e escolher o arquivo de vídeo
 
 Na opção Destinos, selecionar o protocolo HTTP e clicar em Adicionar.
 
Em “Opções de Transcodificação” podem ser selecionados os codificadores a serem utilizados no envio do streaming (fluxo) de vídeo. Deixar o padrão e clicar em Próximo.
 
 Marcar as opções conforme a figura.

Após pressionar o botão "Fluxo" deverá estar sendo gerado o streaming de vídeo e o VLC ficará no aguardo dos clientes. 

Nos clientes, o procedimento é o seguinte:


 Selecionar a opção “Abrir Fluxo de Rede”.
 
Selecionar  o protocolo HTTP e o IP e a porta utilizados pelo servidor.
Após pressionar o botão "Reproduzir" deverá aparecer o vídeo no VLC. É interessante verificar o quanto de largura de banda está sendo consumida nesta transmissão. Para isto, pode ser utilizada a ferramenta Netmeter que já foi comentada neste blog ou o próprio Wireshark. A partir daqui, pode-se modificar os tipos de codificadores para verificar a relação de consumo de largura de banda e qualidade do vídeo. Além disto, pode-se observar o atraso inserido na codificação, compressão e transmissão do vídeo analisando o vídeo na origem e no destino.
 Bom, agora é com vocês!



Referências:
Avaliação de transmissão de fluxo contínuo de vídeo em redes IP sem fio Padrão IEEE 802.11b e 802.11g
Wiki do VideoLAN

4 comentários:

  1. Olá, parabéns pelo tutorial, ficou excelente.galera é o segunte,
    Como fazer uma videoconferencia usando o VLC?
    Estou com um projeto na faculdade, no qual tenho que transmitir um video real de uma maquina para outra e vice versa...no caso sao dois notebooks usando a webcam...ficarei muito grato se puderem me ajudar.

    Marcelo Muniz

    ResponderExcluir
  2. Eduardo Maroñas

    Excelente tutorial, unico lugar que achei as coisas de maneira sucinta e clara.
    Ajudou muito.
    Marcelo
    Creio que para utilizar video conferencia seria o mesmo que captar dispositivo.
    deixa dois dispositivos vlc ligados um por hora é server e vice-versa.

    ResponderExcluir
  3. estou usando um vlc mais novo, fiz os p-a-p mas não funicona, consigo fazer o streaming, mas o cliente não recebe. pelo que vejo as configuraç~eos da ultima versão do vlc é diferente no instante de configurar o ip e a porta. O ip que de ve ser inserifdp é o ip do computador que estpa fazendo o streaming ? por que voc~e colocou no seu guia as informça~eos de ip 0.0.0.0. ?

    ResponderExcluir
  4. só faltou dizer a versão do VLC a utilizar. visto que as versões mais novas não funcionam...

    ResponderExcluir