ffmpeg N 卡的 GPU 转码问题

2023-08-18 11:53:24 +08:00
 itgoyo

系统环境:Ubuntu 22.04

ffmpeg -i abc.flv -vf ass=abc.ass -vcodec libx264 -acodec copy abc_danmu.flv

耗时 2800 秒

ffmpeg -hwaccel cuvid -c:v h264_cuvid -i abc.flv -vf ass=abc.ass -c:v h264_nvenc -acodec copy abc_danmu.flv

耗时 2600 秒

显卡用的是 1030 和 Tesla P4 ,感觉这个显卡 GPU 转码提升也不大呀,请问是我用法错了么?并没有体会到别人的 x4 或者是 x10 的提速,是不是我 ffmpeg 的用法错了?

1201 次点击
所在节点    问与答
9 条回复
GuardX
2023-08-18 12:07:59 +08:00
看你 cpu 是什么型号的了,cpu 也有一些指令专门做视频编解码,我之前用 qsv 提升也挺明显
neteroster
2023-08-18 12:21:26 +08:00
1030 没有 NVENC 单元,所以你需要确保 ffmpeg 用了 P4 ,具体 Google 直接搜就有方法
ysc3839
2023-08-18 12:51:10 +08:00
ass 那个 filter 支持 CUDA 吗?会不会是用 CPU 运算的?
itgoyo
2023-08-18 13:41:00 +08:00
@neteroster 感谢指出,昨晚也看到类似的一个贴纸关于 OBS 的,也说是 1030 的卡不支持 NVENC 之类的
chesha1
2023-08-18 15:08:13 +08:00
这个 nv 的官方网站明确写了 nvenc 在各个型号上的规格,1030 确实没有 nvenc:
https://developer.nvidia.com/video-encode-and-decode-gpu-support-matrix-new

顺便吐槽一下,你都写了-c:v 了,为啥还用-vcodec 和-acodec ,都用-c:v -c:a 不好吗?

速度方面,我个人的体验是,x10 的提速很难有
如果把 preset 开高,比如 cpu 开成 slow slow,GPU 开到 p7
具体数值记不清了,反正 x4 都很困难
gam2046
2023-08-18 15:19:53 +08:00
我自己也有尝试,但是我发现 GPU 硬件加速( 3070 )的转码效果,照着 CPU 软编码,可差远了,除了速度快点,是真没啥拿得出手的
itgoyo
2023-08-18 15:26:00 +08:00
@chesha1 感谢大佬指出,我其实不太属性 ffmpeg 对应的参数用法,都是看别人帖子然后一个个试的,很受用,感谢
Arthur2e5
2023-08-18 22:17:12 +08:00
@gam2046 确实,GPU 加速编码就是拿来直播这种即时情况下用的,设计目的是“能看就行”……
AoEiuV020JP
2023-08-21 09:43:25 +08:00
我看一些简单的剪辑工具似乎都只用显卡解码,不用显卡编码,质量太差体积太大,10000kbps 感觉和 cpu 编码 2000kbps 差不多,

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

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

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

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

© 2021 V2EX