使用ffmpeg时如何提高图像导出/提取速度?

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

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

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

[在开始提取过程中,ffmpeg具有speed=~4x,并且在200-300帧速度之后减速至~0.3x。但是CPU使用率最高仅为3%,内存也可以。输出元数据:

    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)

问题:如何更快地提取?

我已经尝试过使用此参数,但是速度未更改:

  • [-threads 4线程数已更改,但速度未更改,
  • [-presetveryfastultrafast也不是。
c# c++ performance ffmpeg bmp
1个回答
1
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.