如何使用ffmpeg按帧数(包括视频和音频)裁剪视频的一部分?

问题描述 投票:0回答:1

我有一个简单的清单:

LReg.start = rise[i];
LReg.end = fall[i];
LR.Add(LReg);

start和end最后是int我有一个我要从视频文件中提取的帧列表。例如,在LR的索引0中,我开始48结束51在索引1中,开始110结束124

所以我想在List上循环保存为视频文件视频文件的一部分,使用ffmpeg根据帧号开始和结束跳转到这个帧。跳到第48帧并从第48帧到第51帧创建一个视频文件,包括48和51.然后向前跳到下一组帧110和124,依此类推。

问题是如何使用ffmpeg来提取和保存视频文件?

c# video ffmpeg
1个回答
0
投票

使用selectsetpts过滤器:

ffmpeg -i input -filter_complex "[0:v]select='between(n,48,51)+between(n,110,124)+between(n,150,181)',setpts=N/FRAME_RATE/TB[v]" -map "[v]" output
© www.soinside.com 2019 - 2024. All rights reserved.