Émettre :
# apt install ffmpeg
# cat /etc/ffserver.conf
HTTPPort 8090
HTTPBindAddress 0.0.0.0
MaxHTTPConnections 51
MaxClients 42
MaxBandwidth 10240
CustomLog -
<Feed feed1.ffm>
File /tmp/feed1.ffm
#Truncate
FileMaxSize 5M
ACL allow 127.0.0.1
</Feed>
<Stream test1.mpg>
Feed feed1.ffm
Format mpeg
# Minimum quality
VideoFrameRate 10
VideoBitRate 256
VideoSize 320×240
# Average quality
#VideoFrameRate 10
#VideoBitRate 512
#VideoSize 640×480
# “High” quality
#VideoFrameRate 24
#VideoBitRate 1024
#VideoSize 640×480
VideoIntraOnly
NoAudio
Strict -1
</Stream>
$ ffserver
$ ffmpeg -thread_queue_size 512 -f v4l2 -i /dev/video0 http://localhost:8090/feed1.ffm
Lancer :
$ ffplay -probesize 128 -sync video -framedrop http://SERVER:8090/test1.mpg
$ vlc http://SERVER:8090/test1.mpg
$ mplayer -nocache http://SERVER:8090/test1.mpg
Note : -probesize permet de minimiser le décalage avec un live (la valeur minimum est 32) mais cela peut forcer à lancer plusieurs fois la commande au démarrage (cf ffmpeg -h full | grep 'analyzeduration\|probesize')