ffmpeg 使用 Nvidia 硬件编码器编码 H.264
Posted
技术标签:
【中文标题】ffmpeg 使用 Nvidia 硬件编码器编码 H.264【英文标题】:ffmpeg encode H.264 with Nvidia hardware encoder 【发布时间】:2014-09-08 15:01:17 【问题描述】:我有一个 GTX 660,带有 nvidias 花哨的硬件 H.264 编码器,我还有一堆视频文件想编码成 H.264。是否可以告诉 ffmpeg 使用我的硬件 H.264 编码器而不是我的 CPU 来编码视频?
【问题讨论】:
【参考方案1】:FFmpeg 没有内置解决方案。
但如果您使用 NVIDIA SDK 进行编码,这是可能的。我自己做的。但是与 libx264 相比,NVIDIA H.264 HE 的质量很糟糕。我没有找到其他人对结果感到满意...... :-(
【讨论】:
【参考方案2】:显然,ffmpeg 2.6 现在包括支持(来自 http://git.videolan.org/?p=ffmpeg.git;a=blob;f=RELEASE_NOTES;hb=release/2.6):
A lot of people will probably be happy to hear that we now
have support for NVENC — the Nvidia Video Encoder interface for
H.264 encoding — thanks to Timo Rothenpieler, with some little
help from NVIDIA and Philip Langdale.
【讨论】:
【参考方案3】:您需要使用 -enable-nvenc 密钥配置 ffmpeg 并使用 -vcodec nvenc 请阅读this documentation了解更多信息。
【讨论】:
以上是关于ffmpeg 使用 Nvidia 硬件编码器编码 H.264的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 NVidia NVEnc 硬件编码器通过 UDP 流式传输 H.264 视频?
我可以在 nVidia GPU 中使用硬件编码器 NVEN 压缩 8 个 FullHD 30fps 视频流吗?