|
|
Linha 18: |
Linha 18: |
|
| |
|
| == Referências == | | == Referências == |
|
| |
| == Hardwares necessários ==
| |
| <TABLE WIDTH=50% BORDER=0 CELLPADDING=4 CELLSPACING=0>
| |
| <TR>
| |
| <TD WIDTH=100% VALIGN=TOP>
| |
| [[Imagem:caboethernet.png|thumb|right|150px|Cabo Ethernet - cat5]]
| |
| * <B>Banda larga estável</B>, preferencialmente via cabo, com 2Mb de velocidade ou superior (embora se recomende o uso de banda via cabo, ethernet, é possível fazer streaming com wireless, desde que o sinal seja estável e a banda corresponda em velocidade);
| |
|
| |
| <P CLASS="western" ALIGN=JUSTIFY STYLE="margin-bottom: 0cm"><BR>
| |
| </P>
| |
| * <B>1 Câmera</B> mini DV ou HD, com entrada firewire;
| |
| [[Imagem:handcam.png|thumb|center|350px|Câmera mini dv Sony]]
| |
|
| |
| <P CLASS="western" ALIGN=JUSTIFY STYLE="margin-bottom: 0cm"><BR>
| |
| </P>
| |
| </TD>
| |
| </TR>
| |
| </TABLE>
| |
|
| |
| <P CLASS="western" ALIGN=JUSTIFY STYLE="margin-bottom: 0cm">
| |
| * <B>1 Cabo firewire</B> (pode ser 4x4 ou 6x4, dependendo de como será a entrada de seu computador);</P>
| |
|
| |
| <TABLE WIDTH=100% BORDER=0 CELLPADDING=4 CELLSPACING=0>
| |
| <TR VALIGN=TOP>
| |
| <TD WIDTH=50%>
| |
| <P CLASS="western" ALIGN=JUSTIFY>
| |
| [[Imagem:firewire4x4.png|thumb|center|400px|Cabo firewire com pontas 4 x 4.]]</P>
| |
| </TD>
| |
| <TD WIDTH=50%>
| |
| <P CLASS="western" ALIGN=JUSTIFY>
| |
| [[Imagem:firewire6x4.png|thumb|center|400px|Cabo firewire com pontas 6 x 4.]]</P>
| |
| </TD>
| |
| </TR>
| |
|
| |
| </TABLE>
| |
|
| |
| <P CLASS="western" ALIGN=JUSTIFY STYLE="margin-bottom: 0cm"><BR>
| |
| </P>
| |
| [[Imagem:notebooklenovo.png|thumb|right|250px|Notebook Le novo usado para fazer o streaming como exemplo desse tutorial.]]
| |
| <P CLASS="western" ALIGN=JUSTIFY STYLE="margin-bottom: 0cm">
| |
| * <B>1 computador</B> com seguintes itens mínimos:</P>
| |
| <P CLASS="western" ALIGN=JUSTIFY STYLE="margin-bottom: 0cm">
| |
| :*<B>entrada firewire</B> (se for desktop, em geral, terá a entrada firewire 6, para cabos 6x4. Se for notebook terá uma entrada firewire 4 para cabos 4x4);
| |
| </P>
| |
| <P CLASS="western" ALIGN=JUSTIFY STYLE="margin-bottom: 0cm">
| |
| :* <B>1 sistema GNU/Linux</B> instalado, como Debian, Ubuntu ou Arch Linux ou outro que o valha (vale ressaltar que esse tutorial está elaborado para qualquer sistema gnu/linux, mas também funciona em sistemas com outras interfaces, ex: KDE/Linux, XFCE/Linux, etc. Na verdade funciona em qualquer sistema Linux em que seja possível instalar os softwares necessários, não necessitando, portanto, de uma interface gráfica, pois o processo de streaming é feito no terminal de comandos.);</P>
| |
|
| |
| <P CLASS="western" ALIGN=JUSTIFY STYLE="margin-bottom: 0cm">
| |
| :* <B>1 entrada de rede</B> 10/100Mb ou superior(pode ser uma entrada ethernet para o caso da banda via cabo ou uma placa de rede wireless para o caso do streaming ser feito via wireless);</P>
| |
| <P CLASS="western" ALIGN=JUSTIFY STYLE="margin-bottom: 0cm">
| |
| :* <B>processador de 2.0Ghz</B> ou superior;</P>
| |
| <P CLASS="western" ALIGN=JUSTIFY STYLE="margin-bottom: 0cm">
| |
| :* <B>1 Gb de ram</B> ou superior;</P>
| |
|
| |
| == Softwares necessários ==
| |
| <TABLE BORDER=0 CELLPADDING=4 CELLSPACING=0>
| |
| <TD WIDTH="40%">
| |
| <B>
| |
| * dvgrab </B> software de captura de vídeo, via linha de comando, que captura .dv ou .mpeg-2 através da porta firewire. Como instalar? Digite no terminal de comandos, logado como root:<br>
| |
|
| |
| <div align=center> <TABLE BORDER=1 BORDERCOLOR="#000000" CELLPADDING=4 CELLSPACING=0>
| |
|
| |
| <TR>
| |
| <TD VALIGN=TOP>
| |
| <P CLASS="western" ALIGN=LEFT><FONT FACE="Courier, monospace">#
| |
| apt-get install dvgrab</FONT></P>
| |
| </TD>
| |
| </TR>
| |
| </TABLE></div>
| |
| </TD>
| |
|
| |
| <TD WIDTH="60%">
| |
| [[Imagem:installdvgrab.png|thumb|center|600px|Instalação do <B>dvgrab</B> no ubuntu 10.04]]
| |
| </TD>
| |
|
| |
| <TR VALIGN=TOP>
| |
| <TD WIDTH=307>
| |
| <B>
| |
| *ffmpeg</B> - software de conversão de formatos de vídeo. Como instalar? Digite no terminal de comandos, logado como root:
| |
| <div align=center>
| |
| <TABLE WIDTH=242 BORDER=1 BORDERCOLOR="#000000" CELLPADDING=4 CELLSPACING=0>
| |
| <TR>
| |
| <TD VALIGN=TOP>
| |
| <P CLASS="western"><FONT FACE="Courier, monospace"># apt-get
| |
| install ffmpeg</FONT></P>
| |
| </TD>
| |
| </TR>
| |
| </TABLE>
| |
| </div>
| |
| <P CLASS="western" STYLE="margin-bottom: 0cm"><BR>
| |
| </P>
| |
| </TD>
| |
| <TD >
| |
| <P CLASS="western" STYLE="margin-bottom: 0cm">[[Imagem:installffmpeg.png|thumb|center|600px|Instalação
| |
| do <B>ffmpeg</B> no ubuntu 10.04]]</P>
| |
|
| |
| </TD>
| |
| </TR>
| |
| <TR VALIGN=TOP>
| |
| <TD>
| |
| <B>
| |
| * ffmpeg2theora </B>- software de conversão de formatos de vídeo. Como instalar? Digite no terminal de comandos, logado como root:
| |
| <div align=center>
| |
| <TABLE WIDTH=307 BORDER=1 BORDERCOLOR="#000000" CELLPADDING=4 CELLSPACING=0>
| |
| <TR>
| |
| <TD VALIGN=TOP>
| |
| <P CLASS="western"><FONT FACE="Courier, monospace"># apt-get
| |
| install ffmpeg2theora</FONT></P>
| |
| </TD>
| |
| </TR>
| |
| </TABLE>
| |
| </div>
| |
| </TD>
| |
| <TD WIDTH=320>
| |
| <P CLASS="western" STYLE="margin-bottom: 0cm">[[Imagem:installffmpeg2theora.png|thumb|center|600px|Instalação
| |
| do <B>ffmpeg2theora </B>no ubuntu 10.04]]</P>
| |
| </TD>
| |
| </TR>
| |
| <TR VALIGN=TOP>
| |
|
| |
| <TD WIDTH=307>
| |
| <B>
| |
| * Oggfwd</B> - software que lê um stream Ogg e encaminha para um servidor específico. Usado, em geral, com icecast. Como instalar? Digite no terminal de comandos, logado como root:
| |
| <div align=center> <TABLE WIDTH=245 BORDER=1 BORDERCOLOR="#000000" CELLPADDING=4 CELLSPACING=0>
| |
| <TR>
| |
|
| |
| <TD WIDTH=235 VALIGN=TOP>
| |
| <P CLASS="western"><FONT FACE="Courier, monospace"># apt-get
| |
| instal oggfwd</FONT></P>
| |
| </TD>
| |
| </TR>
| |
| </TABLE>
| |
| </div>
| |
| <P CLASS="western" STYLE="margin-bottom: 0cm"><BR>
| |
| </P>
| |
| </TD>
| |
|
| |
| <TD WIDTH=320>
| |
| <P CLASS="western" STYLE="margin-bottom: 0cm">[[Imagem:installoggfwd.png|thumb|center|600px|Instalação
| |
| do <B>oggfwd </B>no ubuntu 10.04]]</P>
| |
| </TD>
| |
| </TR>
| |
| </TABLE>
| |
|
| |
| == Executando Streaming ==
| |
| Para executar o stream,
| |
| será necessário ter, além do computador (<B>broadcaster</B>)
| |
| conectado a câmera (<B>hand cam</B>), um servidor (<B>streaming
| |
| server</B>) que possa receber o vídeo e distribuir para os
| |
| computadores que irão assistir a transmissão. Nesse tutorial vamos
| |
| usar o streaming server do [http://www.estudiolivre.org/ <B>Estúdio Livre</B>] mas você poderá usar outro, se assim preferir. <br>
| |
|
| |
| <TABLE WIDTH=100% BORDER=0 CELLPADDING=4 CELLSPACING=0>
| |
| <TR VALIGN=TOP>
| |
| <TD WIDTH=40%>
| |
| <P CLASS="western" STYLE="margin-bottom: 0cm"><FONT SIZE=4><B>1°</B></FONT>
| |
| - Abra uma conta no [http://www.estudiolivre.org <B>Estúdio Livre</B>] e crie um canal de streaming.</P>
| |
|
| |
| <P CLASS="western" STYLE="margin-bottom: 0cm"><BR>
| |
| </P>
| |
| <P CLASS="western">
| |
| * Logue com seu usuário ou crie uma conta:</P>
| |
| </TD>
| |
| <TD WIDTH=60%>
| |
| <P CLASS="western">[[Imagem:contaestudiolivre.png|thumb|center|700px|Login
| |
| e/ou criação de conta no Estúdio Livre]]</P>
| |
| </TD>
| |
| </TR>
| |
|
| |
| <TR VALIGN=TOP>
| |
| <TD WIDTH=50%>
| |
| <P CLASS="western">
| |
| * Clique no perfil de seu usuário para ir para
| |
| sua página pessoal:</P>
| |
| </TD>
| |
| <TD WIDTH=50%>
| |
| <P CLASS="western">[[Imagem:usuarioestudiolivre.png|thumb|center|700px|Página
| |
| do usuário no Estúdio Livre]]</P>
| |
| </TD>
| |
| </TR>
| |
|
| |
| <TR VALIGN=TOP>
| |
| <TD WIDTH=50%>
| |
| <P CLASS="western">
| |
| * Crie um novo canal de transmissão ao vivo. Em “<B>Canais de transmissão ao vivo</B>” clique em “<B>criar novo canal</B>”.
| |
| </P>
| |
| </TD>
| |
| <TD WIDTH=50%>
| |
| <P CLASS="western">[[Imagem:criarcanal.png|thumb|center|700px|Crianção de um canal de transmissão no streaming server do Estúdio
| |
| Livre]]</P>
| |
|
| |
| </TD>
| |
| </TR>
| |
| </TABLE>
| |
|
| |
| # - Conecte a câmera ao computador (broadcaster) e cheque se ela está capturando vídeo. Você pode usar o software kino para isso, mas lembre-se de fechá-lo depois da checagem pois com o kino aberto não será possível fazer o streaming.
| |
| # - Abra um terminal e execute o seguinte comando:
| |
|
| |
| $ dvgrab --format raw -| ffmpeg2theora -f dv -H 22050 -a 0 -v 2 -x 320 -y 240 -o \
| |
| /dev/stdout -| oggfwd estudiolivre.org 8000 xxxxxx /nosdigitais
| |
|
| |
| == Sobre o comando executado ==
| |
| [[Imagem:Streaming_info_gráfico.png|center|900px]]
| |
|
| |
|
| |
| == Como assistir ao Streaming? ==
| |
| [[Imagem:telastreaming.png|thumb|right|400px|Tela de vídeo .ogg de streaming diretamente visualizado pelo navegador]]
| |
|
| |
| Este tutorial dá como exemplo a transmissão de um streaming de vídeo livre no formato
| |
| livre .ogg. O formato .ogg é lido naturalmente por qualquer navegador de internet que possua suporte a html5. Recomanda-se, portanto, o uso do navegador firefox 3.5 ou superior.
| |
|
| |
| Você poderá assistir o vídeo transmitido, no navegador ou em algum software que toque fluxo de vídeo em stream (como VLC ou Totem), diretamente pelo endereço:
| |
|
| |
| * [http://www.estudiolivre.org:8000/nosdigitais http://www.estudiolivre.org:8000/nosdigitais]<br><br>
| |
|
| |
| Você verá um player como este ao lado. Para colocar o vídeo em uma página web, use este canal de transmissão e insira algum player em sua página html.
| |
|
| |
| Existe outras opções, chamadas de fallback (players citados).
| |
|
| |
| * Opção 1
| |
|
| |
| Solução DebateAberto (https://github.com/pr-snas/debateaberto) > Essa solução incorpora o vídeo gerado pela solução de distribuição numa tag HTML5 com fallback para Java Cortado, incorporando uma solução de chat em rails.
| |
|
| |
| * Opção 2:
| |
|
| |
| OIPlayer jQuery plugin (http://www.openimages.eu/oiplayer) > É um plugin player HTML5 com fallback para Java e Flash;
| |
|
| |
| * Opção 3:
| |
|
| |
| Kaltura Video Player (http://www.kaltura.org/project/Video_Player_Playlist_Widget) > Player para ser incorporado em soluções de visualização com interação;
| |
|
| |
| * Opção 4:
| |
|
| |
| Jplayer (http://www.jplayer.org) > Um player jQuery para ser incorporado em soluções de visualização com interação.
| |
|
| |
| == Gravando uma cópia do arquivo de vídeo ==
| |
| Para fazer uma cópia do vídeo que está sendo filmado durante o streaming, você pode usar o seguinte comando:
| |
| /home/usuario/arquivo-de-video(.dv/.ogg)
| |
|
| |
| == Transmissão com Theorur ==
| |
|
| |
| Uma interface gráfica que reune todos os comando citados acima é Theorur.
| |
|
| |
| Para instalar você pode usar o instalar gráfico de sua preferência, buscando por theorur ou pela linha de comando, em distribuições baseadas em Debian:
| |
| # apt-get install theorur
| |
|
| |
| [[Imagem:Theorur.png]]
| |
|
| |
| Para ficar em português brasileiro pegue o arquivo http://pub.nkosi.org/theorur/theorur.mo e copie para /usr/share/locale/pt_BR/LC_MESSAGES/
| |
| # wget http://pub.nkosi.org/theorur/theorur.mo
| |
| # mv theorur.mo /usr/share/locale/pt_BR/LC_MESSAGES/
| |
|
| |
| == com gstreamer ==
| |
|
| |
|
| |
| <pre>
| |
| #!/bin/bash
| |
| # Créditos: Carlos Eduardo Matos Ellery [carlos.ellery em serpro.gov.br] e é GPL
| |
| gst-launch-0.10 \
| |
| v4l2src device=/dev/video1 \
| |
| ! ffmpegcolorspace \
| |
| ! video/x-raw-yuv,format=\(fourcc\)I420,width=640,height=480 \
| |
| ! videorate \
| |
| ! video/x-raw-yuv,framerate=10/1 \
| |
| ! videoscale \
| |
| ! video/x-raw-yuv,width=400,height=300 \
| |
| ! ffmpegcolorspace \
| |
| ! theoraenc quality=40 \
| |
| ! queue \
| |
| ! mux1. \
| |
| pulsesrc \
| |
| ! audio/x-raw-int,rate=22050,channels=1,depth=16 \
| |
| ! audioconvert \
| |
| ! vorbisenc quality=0.1 \
| |
| ! queue \
| |
| ! oggmux name=mux1 \
| |
| ! queue \
| |
| ! shout2send ip=servidor port=8000 password=hackme username=nosdigitais mount=nosdigitais.ogv
| |
| </pre>
| |
|
| |
| * http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good-plugins/html/gst-plugins-good-plugins-dv1394src.html
| |
| * http://manpages.ubuntu.com/manpages/lucid/man1/dv4l.1.html
| |
| * http://en.wikibooks.org/wiki/Puredyne/Stream_Audio_and_Video
| |
|
| |
| == dicas ==
| |
| # No caso de camera de qualidade HDV é necessário alterar para DV, senão volta o erro: libiec61883 error: Failed to get channels available.
| |
| # É importante ajustar o aspect ratio para 4x3, para garantir redimensionamento proporcional a resolução
| |
|
| |
| [[Category:Video]]
| |