我正在尝试使用 ffmpeg 从视频中截取一些片段并将它们组合在一起,类似于这样。
除了剪辑来自重叠的时间戳之外。我的命令如下所示:
"C:\Program Files\ffmpeg\bin\ffmpeg.exe" -y -i "C:\temp\5min.mp4" ^
-vf "select='between(t,4,6.5)+between(t,5,6)', setpts=N/FRAME_RATE/TB" ^
-af "aselect='between(t,4,6.5)+between(t,5,6)', asetpts=N/SR/TB" "C:\temp\5min-clip.mp4"
输出的视频仅包含第一个剪辑。我使用的是最新版本的 ffmpeg。
我如何实现这个目标?
其中
select
包含一个表达式,该表达式在秒5
和6
两次之间选择相同的帧,第二次between
是无用的。它不会创建 2 个剪辑,而是创建一个包含所有选定帧的剪辑。您将需要使用
filter_complex
,例如更简单的trim
,然后concat
(合并)一些输出:setpts
用于设置合并的正确时间戳。音频的一切都类似。