我想使用 ffmpeg 来:
- 裁剪图片
- 检测裁剪图像上的场景变化
- 输出整个场景(未裁剪的图像)。
我知道如何做 1. 和 2.,但不知道如何做 3。
这是我的命令行:
ffmpeg.exe -i "movie.mp4" -vf "crop=130:250:220:50,select=gt(scene\,0.011)" -vsync vfr "movieThumb%%04d.png"
谢谢。
答案1
使用
ffmpeg.exe -i "movie.mp4" -filter_complex "[0]split=2[roi][full];[roi]crop=130:250:220:50,select=gt(scene\,0.011)[roi];[roi][full]scale2ref[roi][full];[roi][full]overlay=shortest=1" -vsync vfr "movieThumb%%04d.png"
视频流被分成两个 - 在一个实例上执行场景检测。然后将其调整回全尺寸,并将第二个实例叠加在第一个实例上。由于叠加按时间戳同步,因此场景变化帧是叠加选择用于输出的帧。