FFmpeg 实现MP4 转m3u8
程序员文章站
2022-07-14 18:17:58
...
方式一: 操作简单,但是转换效率很低
cmd 直接切片命令(参数建议看官网文档)
ffmpeg -i input.mp4 -c:v libx264 -c:a aac -strict -2 -f hls -hls_list_size 2 -hls_time 15 output.m3u8
方式二: 效率优化版,共需两步,效率大大提升
-- 视频整体转码ts
ffmpeg -y -i music.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb out\music.ts
-- ts 文件切片
ffmpeg -i music.ts -c copy -map 0 -f segment -segment_list out\music.m3u8 -segment_time 15 out\15s_%3d.ts
效果截图:
mp4转化成hls时附带的参数详解
-hls_time n: 设置每片的长度,默认值为2。单位为秒
-hls_list_size n:设置播放列表保存的最多条目,设置为0会保存有所片信息,默认值为5
-hls_wrap n:设置多少片之后开始覆盖,如果设置为0则不会覆盖,默认值为0.这个选项能够避免在磁盘上存储过多的片,而且能够限制写入磁盘的最多的片的数量
-hls_start_number n:设置播放列表中sequence number的值为number,默认值为0
上一篇: Unbuntu18.04 编译FFmpeg 支持 QSV 硬编解码
下一篇: 关于集合的一些总结