FFMPEG:如何从视频中提取PNG序列,删除过程中的重复帧并保留原始帧号?



我有一个旧游戏的录音,它具有可变帧率。由于我想处理单个帧以升级和现代化素材,因此我想避免任何重复的帧。我知道我可以使用此功能从视频中提取所有帧:

ffmpeg -i input.mov -r 60/1 out%04d.png

而且我知道我可以使用此功能删除重复的帧:

ffmpeg -i input.mov -vf mpdecimate,setpts=N/FRAME_RATE/TB output.mov

但是,上面的命令删除了重复的帧并将帧彼此相邻,而为了保持各种时间码,能够提取具有帧号的PNG(视频是渐进式60fps(但没有所有重复项,这将更加有用。

所以,问题是:如果我想提取 PNG 文件但在序列中保持原始的相应帧号怎么办?那么,如果我们有一个 10 帧的视频,而 2-8 帧是重复的,它会吐出 1.png 2.png 9.png 和 10.png?如何组合上面列出的两个代码位?

尝试

ffmpeg -i fulltest.mov -vsync 0 -frame_pts true -vf mpdecimate out%04d.png

最新更新