关于 windows 下 ffmpeg 的性能

2021-09-28 10:28:03 +08:00
 johnsonshu

我经常需要从 720p 的视频里抽取幻灯片图片,用了类似下面的参数

ffmpeg -i XXX.mp4 -r 0.07 image_%d

但是,一个差不多两小时的视频大概需要 40,50 分钟左右去处理。

i3_4160 + GT730 的配置。 我知道配置有点弱,但是这处理速度也太离谱了吧。

我觉得它没用上显卡的硬件加速,但是怎么才能用上呢?

3300 次点击
所在节点    FFmpeg
12 条回复
gainsurier
2021-09-28 10:29:30 +08:00
你给的信息太少了,视频什么编码,ffmpeg 哪个版本
mingl0280
2021-09-28 10:30:54 +08:00
我看你这个瓶颈应该在硬盘写入速度上……不是没加速。
zhanggang807
2021-09-28 10:36:42 +08:00
-c:v h264_videotoolbox
用上 GUP 硬解之后你可能会发现还不如软解
Kagari
2021-09-28 10:47:36 +08:00
cpu 太旧了,换新平台,6 核起步吧
mingl0280
2021-09-28 11:08:22 +08:00
@zhanggang807 没用,他那个纯粹是写入性能差。ffmpeg 不指定解码器的时候用 h264 解码 mp4 文件,已经是带帧 /切片级的并行了。如果非要加速的话他应该用 h264_qsv 或者 h264_cuvid (而且要写在-i 前面)
GrayXu
2021-09-28 11:29:18 +08:00
ffmpeg 默认调用应该都是软件编解码吧
GalaDOS
2021-09-28 11:30:27 +08:00
先试试 ffmpeg -i XXX.mp4 -f null NULL 看看纯解码是什么速度,这个是上限,太慢就换电脑
再试试 ffmpeg -i XXX.mp4 -qscale:v 31 image_%d.jpg 把输出画质压到最低,如果变快了就是磁盘 IO 的问题,换硬盘或者输出数据量压低一些
再试试 ffmpeg -i XXX.mp4 -an -vf "framerate=0.07" image_%d.jpg 简化一下编码流程看看有没有救
zhuangzhuang1988
2021-09-28 12:06:23 +08:00
首先关闭杀毒软件.
holinhot
2021-09-28 12:22:55 +08:00
h264_cuvid
Zepp
2021-09-28 13:03:34 +08:00
去看 ffmpeg 的官方指南吧: https://trac.ffmpeg.org/wiki/HWAccelIntro

楼上也真乃神人,一堆 encoder 闭上眼张口就来。楼主用的显然不是苹果,你还叫他 h264_videotoolbox 这不是傻吗?还有 cuvid 早就是过去式了,现在的叫 nvenc,当然楼主的卡不一定支持,建议自己调研。
zvl0reqglvd
2021-09-28 13:51:03 +08:00
我用这个一般都不到一秒。不用固态?
zhanggang807
2021-09-29 13:41:32 +08:00
@Zepp 问一句,你们博士都这么说话的么,还是只有你这么说话?
首先,没细看,楼主非 macOS
再次 我一直这么用,h264_videotoolbox,仅供楼主参考
大家在这里提问回答也只是涨见识或者提供参考,话语中有攻击意味这就不对了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/804812

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX