[FFmpeg-user] m3u8 live stream will not play in google chrome

Micael Silva micaelsilva at gmail.com
Tue Jul 24 20:53:26 EEST 2018


On Tue, Jul 24, 2018 at 8:14 AM, Anthony Griffiths <neuronetv at gmail.com>
wrote:

> I use ffmpeg on a centos 6 machine to create a live stream that goes
> to a centos 6 vps server running nginx. This is the command:
>
> ffmpeg -y -f mpegts -i /dev/dvb/adapter0/dvr0 -f flv \
> -codec:v libx264 -preset slow -s 320x180 -qscale:v 20 -maxrate 600k
> -bufsize 1000k -vf scale=-1:240 -threads 0 \
> -vsync cfr -framerate 25 -c:a aac -b:a 64k -af aformat=s16:44100
> rtmp://nginx-server/mobile
>
> nginx delivers the video as http://198.91.92.112:90/mobile/index.m3u8
>
> the command works and the video plays on a mobile phone and in MS Edge
> but it won't play in google chrome on a windows desktop.
> The stream can be viewed here: http://198.91.92.112/edge.html.
> Ironically it will play in chrome on an android device.
> I'm fairly certain the 'f -flv' bit in the command is the culprit
> however ffmpeg won't run without it. Can anyone help in correcting
> this command so the stream will play in google chrome?
>
>
Probably there is some wrong packaging occurring because of the order of
the arguments. Everything that comes after -f says about the muxer and
-codec should come before that. Try using "ffmpeg -y -f mpegts -i
/dev/dvb/adapter0/dvr0 -codec:v libx264 (...) -c:a aac (...) -f
flv rtmp://nginx-server/mobile"


More information about the ffmpeg-user mailing list