问题
HLS流在iOS浏览器(实时中间流)中运行良好,
但是在大多数Android浏览器中,流总是从一开始就开始(流开始时的第一个Ts文件)。
参考文献
ffmpeg -re -i rtmp://ipaddress/live/streamname -codec:a libfaac -b:a 96k -af volume=1 -ac 2 -ar 44100 -f segment -segment_time 5 -segment_list_flags live -segment_list /path/to/m3u8 -segment_format mpegts /path/to/ts
#EXTM3U #EXT-X-VERSION:3 #EXT-X-MEDIA-SEQUENCE:0 #EXT-X-ALLOW-CACHE:NO #EXT-X-TARGETDURATION:6 #EXTINF:5.000278, file0000.ts #EXTINF:5.013356, file0001.ts4
帮助
还有人遇到这个问题吗?
发布于 2015-08-19 18:02:07
正如Aergistal在评论中所说的那样。最新的ffmpeg直接支持hls
。所以,只需使用-f hls
而不是-f segment
。然后问题解决了。
-f segment
- The value of `#EXT-X-MEDIA-SEQUENCE` will always be `0`.
- Previous TS records would not be removed when latest records are added.
- Maybe there are some parameters that I didn't know.
因此Android设备总是从第一个TS文件开始。
-f hls
- We can use `-hls_list_size` to define the number of TS files in m3u8 file.
- The value of `#EXT-X-MEDIA-SEQUENCE` will update automatically.
然后效果很好。
https://stackoverflow.com/questions/31997356
复制相似问题