关于FFmpeg将m3u8合并成mp4之后时长不对的解决方法

关于FFmpeg将m3u8合并成mp4之后时长不对的解决方法

解决方法

  • 导致时长不对的合并方法
    concat方法会导致合并的视频时长有问题
ffmpeg -y -f concat -i ./download/a/ts_list.txt -bsf:a aac_toadstool -c copy ./download/a.mp4
  • 时长正确的合并方法
    使用读取m3u8文件的方式合并,合并出的视频时长是正确的。(注意:生成本地m3u8文件的时候要注意ts文件是否在下载时已经解密。如果已经解密,则生成的m3u8文件中不需要#EXT-X-KEY。)
ffmpeg -allowed_extensions ALL -i ./download/a/convert_m3u8.m3u8 -c copy ./download/a.mp4 -y

参考文献:

  1. M3U8文件格式说明及解决大量拼接ts文件时长不对问题
  2. ffmpeg protocol concat 进行ts流合并视频的时间戳计算及音画同步方式一点浅析
  3. 使用ffmpeg拼接视频踩坑记录

猜你喜欢

转载自blog.csdn.net/qq1261275789/article/details/128536675