使用 ffmpeg 时如何提高图像 export/extract 速度?

How to increase image export/extract speed when using ffmpeg?

我正在使用 fps -r 25 参数从 mp4 视频(视频 fps:25)中提取所有帧,使用 ffmpeg。

这是我使用的命令:ffmpeg -i input.mp4 -r 25 frame_%%02d.bmp。有用。

在提取过程 ffmpeg 开始时有 speed=~4x,在 200-300 帧后速度减慢到 ~0.3x。但是CPU using is only 3% max,内存还可以。输出元数据:

    Encoder         : Lavf58.12.100
    Stream #0:0(und): Video: bmp, bgr24, 1920x1080, q=2-31, 200 kb/s, 25 fps, 25
 tbn, 25 tbc (default)

问题:如何提取更快?

我试过这个参数,但速度没有改变:

回顾一下评论中的答案:您受到磁盘速度的限制。 BMP 图像未压缩,这意味着单个 1920x1080 帧导出的大小约为 6MB。在 25fps 下,这将是 150MB/s 的数据流。在您期望的 4 倍速下,这将是 600MB/s。只有最快的 SSD 才能跟上这个速度,甚至只是在理论上。

如果图像质量是一个重要因素,我建议改为导出为 PNG 文件。这提供了良好的图像质量,同时仍然产生小得多的文件。否则只需使用 JPG,根据使用的压缩设置,它们也可以在更小的文件大小下产生良好的图像质量。