1. ffmpeg剪辑时出现的问题
ffmpeg 为了加速,会使用关键帧技术, 所以有时剪切出来的结果在起止时间上未必准确。
上述原理会出现剪辑视频时,若开始时间处并不是关键帧,导致剪辑的片段开头有停顿。
网上搜寻了一些解决方法,但是都不管用
一种笨解决方案
其中一种方法就是将视频关键帧间隔设为1,即视频所有秒数处都为关键帧。
步骤
- 从原视频剪出一个更长的片段,包含你需要的部分,且由于不知道关键帧在哪里,头尾处尽量延长一部分。
# 从原片中00:00:30开始剪出10秒的片段
ffmpeg -i input.mkv -ss 00:00:30 -t 00:00:10 -c copy out.mkv
- 将此片段的关键帧间隔设为1
ffmpeg -i out.mkv -g 1 -keyint_min 1 out1.mkv
- 从这个片段中再剪出你需要的片段
ffmpeg -ss 00:00:00 -t 00:00:05 -i out1.mkv -c copy out2.mkv
若网友们有真正的便捷的解决方法,可以在下面评论讨论
2. ffmpeg合并视频片段
在工作路径创建一个文本以下列格式包含你要合并的片段:
file 'input1.mkv'
file 'input2.mkv'
file 'input3.mkv'
然后输入命令:
ffmpeg -f concat -i filelist.txt -c copy output.mkv