我有最新的ffmpeg 2.5版本,我正在尝试将mp4文件转换为HLS文件。据我所知,ffmpeg可以生成ts和m3u8播放列表。当ffmpeg结束时,播放列表只包含生成的最后几个ts文件。它似乎被覆盖了。我必须向ffmpeg传递哪些参数才能生成所有ts文件的完整m3u8列表?
生成的最终m3u8:
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:9
#EXT-X-MEDIA-SEQUENCE:50
#EXTINF:9.000000,
480x27050.ts
#EXTINF:9.000000,
480x27051.ts
#EXTINF:9.000000,
480x27052.ts
#EXTINF:9.000000,
480x27053.ts
#EXTINF:0.466667,
480x27054.ts
#EXT-X-ENDLIST
ffmpeg参数:
ffmpeg -i test_2.mp4 -c:a aac -strict experimental -ac 2 -ar 48k -ab 64k -c:v libx264 -s 480x270 -aspect 16:9 -b:v 400k -r 15 -g 45 -profile:v baseline -level 3.0 -f hls -hls_time 9 480x270.m3u8
我不得不添加
-hls_list_size 0
这将把生成的所有ts文件写入m3u8。
感谢