- O Netcat (nc) parece ser o que apresenta o menor atraso.
Na minha experiência, o VLC tem o maior atraso. Por outro lado, há um cliente VLC para Android, o que é conveniente.
<IP-OF-THE-CLIENT>
é o IP do computador que deve receber o fluxo de vídeo.
<IP-OF-THE-RPI>
é o IP do Raspberry Pi.
Usando o Netcat:
No cliente
(Execute o comando no cliente primeiro e depois no servidor (RPi)).
Linux
nc -l 2222 | mplayer -fps 200 -demuxer h264es -
OS X
nc -l 2222 | mplayer -fps 200 -demuxer h264es -
No RPi
/opt/vc/bin/raspivid -t 0 -w 300 -h 300 -hf -fps 20 -o - | nc <IP-OF-THE-CLIENT> 2222
Usando o GStreamer:
No cliente
Linux
gst-launch-1.0 -v tcpclientsrc host=<IP-OF-THE-RPI> port=5000 ! gdpdepay ! rtph264depay ! avdec_h264 ! videoconvert ! autovideosink sync=false
OS X
gst-launch-1.0 -v tcpclientsrc host=<IP-OF-THE-RPI> port=5000 ! gdpdepay ! rtph264depay ! avdec_h264 ! videoconvert ! osxvideosink sync=false
No RPi
/opt/vc/bin/raspivid -t 0 -hf -fps 20 -w 300 -h 300 -o - | gst-launch-1.0 fdsrc ! h264parse ! rtph264pay config-interval=1 pt=96 ! gdppay ! tcpserversink host=<IP-OF-THE-RPI> port=5000
Usando o VLC
No cliente
O cliente pode até estar em um telefone celular (tentei no Android).
Simplesmente abra da rede no cliente VLC:
http://<IP-OF-THE-RPI>:8090
No RPi
/opt/vc/bin/raspivid -o - -t 0 -hf -w 640 -h 360 -fps 25|cvlc -vvv stream:///dev/stdin --sout '#standard{access=http,mux=ts,dst=:8090}' :demux=h264