GPU/硬件编码/加速常见问题解答

本主题解决与 GPU 和硬件编码相关的问题


1. GPU 编码支持哪些平台和设备

MCEBuddy 支持用于解码和编码 H.264、H.265/HEVC 和 AV1 的 Intel (QuickSync)、NVidia (NVENC/CUDA) 和 AMD (VCN/VCE/AMF)。

有关驱动程序要求,请参见 2

要使用 Intel QuickSync

  • H.264 硬件编码器,Intel Sandy Bridge(第一代酷睿)或更新的芯片组
  • H.265 硬件编码器,Intel Broadwell(第四代酷睿)或更新的芯片组
  • AV1 硬件编码器,Intel ARC Graphics、Meteor Lake(第一代 Ultra Core)、Arrow Lake(第十五代酷睿)或更新的芯片组

要使用 NVidia NVENC 编码器

  • H.264 硬件编码,CUDA 硬件功能版本 3.0 或更高版本(Kepler 或更新版本)
  • H.265 硬件编码,CUDA 硬件功能版本 5.2 或更高版本(Maxwell GM2xx 或更新版本)
  • AV1 硬件编码,CUDA 硬件功能版本 8.9 或更高版本(Ada Lovelace AD1xx 或更新版本)

硬件编码兼容的 NVidia GPU 列表Video Encode and Decode Support Matrix | NVIDIA Developer 以及 nVidia Hardware Transcoding Calculator for Plex Estimates

对于基于 Pascal 的显卡,请使用驱动程序 376.51。请参见此帖子 - Hardware Acceleration with new Nvidia Pascal based cards

要使用 AMD AMF/VCE/VCN

  • H.264 硬件编码,Radeon 7700、R7 250E、FirePro、Radeon R5 或更新的 GPU
  • H.265 硬件编码,Radeon RX 400、Radeon R9、FirePro W7100/S7100X、Vega/II、Navi 或更新的 GPU
  • AV1 硬件编码,Navi 3x、Radeon RX 7000 或更新的 GPU

2. 适用于 Intel QuickSync、NVIDIA NVENC 和 AMD AMF/VCE/VCN 的稳定显卡驱动程序是什么

QuickSync: 为方便起见,这些驱动程序已上传至此处:

Windows 7/8.1(版本 15.33.30.3958)
32位 - Dropbox
64位 - Dropbox

Windows 10(版本 15.40.8.64.4281)
Dropbox

Windows 11(DCH 驱动程序版本 30.0.101.1340)
Dropbox

NVIDIA: 需要驱动程序版本 531.61 或更高版本(nvenc API v12.1+)

Win 7/8.1 (v441.66) - https://us.download.nvidia.com/Windows/Quadro_Certified/441.66/441.66-quadro-desktop-notebook-win8-win7-64bit-international-whql.exe

Win 10/11 (WHQL DCH v552.22) - > https://us.download.nvidia.com/Windows/Quadro_Certified/552.22/552.22-quadro-rtx-desktop-notebook-win10-win11-64bit-international-dch-whql.exe

基于 Nvidia Pascal 的显卡使用驱动程序 376.51。请参见此帖子 - Hardware Acceleration with new Nvidia Pascal based cards

AMD: 测试过的稳定驱动程序是 Adrenalin Edition 24.7.1 驱动程序版本 24.10.29.01

Win 10/11 RNDA - Dropbox
Win 10/11 RNDA Polaris/Vega - Dropbox

其他稳定驱动程序列在下方(参见 10

3. 启用硬件编码时,转换一直无响应或卡住

如果禁用硬件编码(Conversion Task Settings → Advanced Settings → Expert Settings → Enable Hardware Encoding)后转换正常,则极有可能是您的驱动程序不稳定(因为编码是通过显卡驱动程序完成的)。

请参阅上文以获取最稳定的显卡驱动程序。

4. 如何知道 MCEBuddy 是否在使用硬件加速

这是一个__两步过程__,首先确定您的系统和驱动程序是否支持硬件加速,然后检查编码器是否正在使用它。

确定硬件功能:

转换完成后,打开转换日志。要检查是否支持硬件编码,请查找以下文字:

Detected hardware encoder capability ->

后面将跟有检测到的所有硬件编码器(Intel、NVidia、AMD)的详细信息以及支持的功能(例如 h264Codec、h265Codec、av1Codec 等)。true 表示支持该功能(如果硬件和显卡驱动程序均满足要求),false 表示不支持。

如果您的 INTEL QUICKSYNC 编码器正用于编码,请在日志中查找以下任何文字

h264_qsv, hevc_qsv, av1_qsv, qsv_h264, qsv_h265, qsv_av1

如果没有这些文字,则即使您的驱动程序支持,也没有使用 QuickSync 硬件编码器。

如果您的 NVIDIA NVENC 编码器正用于编码,请在日志中查找以下任何文字

h264_nvenc, hevc_nvenc, av1_nvenc, nvenc_h264, nvenc_h265, nvenc_av1

如果没有这些文字,则即使您的驱动程序支持,也没有使用 NVENC 硬件编码器。

如果您的 AMD AMF/VCE/VCN 编码器正用于编码,请在日志中查找以下任何文字

h264_amf, hevc_amf, av1_amf, vce_h265, vce_h264, vce_av1

如果没有这些文字,则即使您的驱动程序支持,也没有使用 AMF 硬件编码器。

5. 突然之间我的编码时间变得非常长,或者某些视频需要很长时间

很可能是您的 Intel 驱动程序存在漏洞并引发了问题。请使用 2 中推荐的版本,这应该能解决您的问题。最新的驱动程序并不总是最稳定或更快的驱动程序。

如果您遇到有问题的驱动程序,其症状可能会有所不同,从编码缓慢到系统卡死、系统崩溃或日志中的错误消息。错误驱动程序的示例,或者在使用硬件编码时运行占用大量显卡的应用程序/游戏,可能会耗尽 Intel 驱动程序的资源并导致资源耗尽,您可能会在日志中看到类似以下内容:

2014-04-15T20:43:36 MCEBuddy.AppWrapper.Handbrake → Encoding: task 1 of 1, 0.02 %[20:43:36] qsv_enc_init: using ‘hardware (1)’ implementation, API: 1.3
2014-04-15T20:43:36 MCEBuddy.AppWrapper.Handbrake → Error code -1, av_qsv_wait_on_sync 642
2014-04-15T20:43:36 MCEBuddy.AppWrapper.Handbrake → Error code -1, av_qsv_wait_on_sync 642
2014-04-15T20:43:36 MCEBuddy.AppWrapper.Handbrake → Encoding: tasError code -1, av_qsv_wait_on_sync 642
2014-04-15T20:43:36 MCEBuddy.AppWrapper.Handbrake → Encoding: task 1 of 1, 0.06 %not enough to have 10 sync point(s) allocated
2014-04-15T20:43:36 MCEBuddy.AppWrapper.Handbrake → ERROR: qsv: Not enough resources allocated for QSV encode

6. 尝试转换视频时,我的系统崩溃、卡死,或者在日志文件中看到许多错误

如果您的驱动程序存在漏洞,它可能会导致系统的未知问题。由于编码是在视频驱动程序中完成的,并且视频驱动程序在内核空间中运行,它可能会导致系统变得不稳定甚至崩溃。确定视频驱动程序是否引起问题的最佳方法是:在 Conversion Options → Expert Settings 中_关闭_硬件编码,然后查看症状是否消失。如果消失了,请尝试更新到稳定的驱动程序。

7. OpenCL 和 QuickSync 硬件编码是自动启用的吗?或者我在 BIOS 中启用了 quicksync/Intel GPU,但它仍然显示 QuickSync 不存在?

MCEBuddy 将自动检测您是否拥有启用了 Intel QuickSync 的芯片组并启用 QuickSync 编码。

  1. 如果您拥有 Intel 芯片组和另一块显卡rd,如果 MCEBuddy 无法检测到 QuickSync,请使用“伪装显示器”技巧 (Intel Quick Sync Video on Desktop PC with PCI-E graphics card) 来启用英特尔图形芯片组,并让 MCEBuddy 识别它。

如果你的驱动程序中支持 OpenCL,则需要手动启用对其的支持,因为它的性能因系统而异,MCEBuddy 无法判断它会让系统变快还是变慢。

  1. 如果你使用的是__较旧的 CPU(如 Pentium/Core/Core 2)以及来自 Nvidia 或 ATI 的优秀显卡__,那么你可能想要在___配置文件中的 handbrake-video 行末尾添加 -U___。这将启用硬件解码。这仅在 GPU 比 CPU 更强大时有效;如果在解码方面比显卡强大得多的较新 CPU 上使用,反而会降低性能。
  2. 如果你拥有支持 OpenCL 1.1 的__较新显卡(非常强大),那么在___配置文件中的 handbrake-video 行末尾添加 -P_。如果你使用的是裁剪来减小视频大小(或者配置文件正在使用预读取 (lookahead)),此功能就会派上用场。同样,这仅对配备 OpenCL 驱动程序的强大显卡有所帮助。如果在性能较弱的显卡上使用,它可能会降低性能。

MCEBuddy 无法自动启用 OpenCL,因为它取决于显卡与 CPU 的搭配。如果检测到 QuickSync,MCEBuddy 只能自动将其启用。

8. 即使启用了硬件加速,我的编码也需要很长时间,或者我的帧率 (FPS) 看起来很慢/很低

GPU 编码性能取决于许多会影响 FPS 或编码所需时间的因素。其中包括:

  1. 正在使用的配置文件
    • 如果 GPU 不支持配置文件中的某些滤镜,这些滤镜会减慢转换速度,因为 CPU 必须处理这些滤镜
    • 2-pass(二次编码)需要更多时间
    • 更高的比特率需要更多时间
    • 更慢的预设需要更多时间
    • 启用裁剪和优化视频质量需要更多时间
  2. 输入和输出分辨率,高清 (HD) 以及高分辨率需要明显更长的时间
  3. 你的 GPU 和 CPU 正被其他进程占用,或者你同时进行了多次转换。编码时,请使用 CPUZGPUZ 工具检查你的 GPU 和 CPU 利用率
  4. 检查你正在使用的硬件芯片组,某些芯片组比其他芯片组更快
  5. 检查你的视频驱动程序,有漏洞或缓慢的视频驱动程序是导致编码缓慢的主要原因
  6. 在较新的 CPU 上启用硬件解码会减慢转换速度,因为视频数据从 CPU 传输到 GPU,然后再传回 CPU 进行预处理可能需要更多时间。硬件解码最适合较旧的慢速 CPU,或者在不涉及任何预处理(滤镜、裁剪、调整大小等)时使用,即仅进行解码后跟编码
  7. 有时 OpenCL 设置不兼容,如果手动启用可能会导致性能下降

根据上述因素,GPU 帧率 (FPS) 可以从 25FPS 到 1200FPS 不等,与不使用硬件加速的性能相比,这通常代表着 5 倍到 100 倍的提升。

这是一个性能对比:Hardware v/s Software Encoding Performance Benchmarking

9. NVIDIA NVENC 的其他稳定驱动程序有哪些

经报告/测试,NVIDIA NVENC/CUDA 的其他稳定驱动程序为:

419.67
这些驱动程序可在此处获取:
Windows 10 64位 - Driver Details | NVIDIA

使用安装文件安装上述内容

10. Intel QuickSync 的其他稳定驱动程序有哪些

经报告/测试的 Intel QuickSync 稳定驱动程序为:

22.20.16.4944(又名 15.65
为了方便起见,这些驱动程序已上传至此处:
Windows 10 64位 - Dropbox

使用安装文件安装上述内容

21.20.16.4839
Windows 7/8.1/10 - 从 Microsoft Update Catalog 下载

解压 cab 文件,然后通过运行文件 IgxPun.exe 安装上述内容

10.18.14.4414(据报道这也是性能最快的驱动程序)
为了方便起见,这些驱动程序已上传至此处:
32位 - Dropbox
64位 - Dropbox

使用安装文件安装上述内容

10.18.10.3621
为了方便起见,这些驱动程序已上传至此处:
32位 - Dropbox
64位 - Dropbox

10.18.10.3379
为了方便起见,这些驱动程序已上传至此处:
32位 - Dropbox
64位 - Dropbox

以上是 ZIP 文件(从 Windows Update CAB 文件重新打包),你需要解压文件,然后使用以下步骤通过设备管理器手动安装它们:

  1. 将 ZIP 文件内容解压到某个文件夹中(根据你的系统选择 x86 或 x64)
  2. 打开设备管理器(从控制面板)
  3. 寻找“显示适配器”
  4. 展开它(记下你的显卡的名称,你在第 12 步中会用到它)
  5. 右键点击你的英特尔显卡设备并选择_更新驱动程序软件_
  6. 选择_浏览计算机以查找驱动程序软件_
  7. 选择_从计算机的设备驱动程序列表中选择_
  8. 点击“从磁盘安装…” (Have Disk)
  9. 点击“浏览”并选择你在第 1 步中解压驱动程序文件的文件夹
  10. 选择设置信息文件 igdlh 并点击_打开_
  11. 点击_确定_
  12. 选择你的显卡(参见你在第 4 步中记下的名称),确保在此处选择正确的名称,否则它将无法工作
  13. 点击_下一步_。如果它发出关于_不建议使用设备驱动程序…_ 的更新驱动程序警告,请返回并选择正确的设备名称。切勿使用错误的设备名称继续操作,因为这可能会导致你的系统崩溃。
  14. 它会发出关于_Windows 无法验证发布者_的警告,请点击_仍然安装此驱动程序_
  15. 它将安装驱动程序,你可能需要重新启动

经报告/测试的 AMD 稳定驱动程序为:

v26.20.12028.2(它是 Windows Update 的一部分)
为了方便起见,这些驱动程序已上传至此处:

Win 10 - Dropbox

提醒一下,nvidia gt 1030 不支持 nvenc(硬件编码)。这是目前我知道的唯一例外。