Gor*_*bić 6 remote-desktop h.264 remotefx nvidia-graphics-card windows-10
我将 Windows 10 Pro 作为服务器,将 Windows 10 Pro 作为客户端。服务器具有带有最新驱动程序的 GTX 1070 卡,并且完全支持 H.264 / AVC 444 硬件编码的 NVENC。Steam 流使用服务器端的硬件编解码器工作。
我在服务器上启用了 RemoteFX,并在远程桌面服务/远程桌面会话主机/远程会话环境下的组策略中启用了以下内容:
当我连接到服务器时,在事件查看器中并转到 RemoteDesktopServicesd-RdpCoreTS,我没有看到任何事件 ID 为 162 或 170 的事件,并且文档说使用硬件编码时应该会出现这些事件。
我究竟做错了什么?为什么我没有获得硬件 h.264 编码?是否还有其他需要启用的设置?
终于成功让它发挥作用了。解决方案分为几个部分。
硬件编码仅与 AVC444 编码一起使用。如果您的客户端没有明确告诉服务器它支持 AVC444(例如,如果它只能处理 AVC420),RDP 服务器将永远不会使用硬件编码。我认为这是因为 MS 使用特殊的编解码器来生成 AVC420 解码器正确的流,但应用了特殊的编码,使字体看起来不块状和模糊。
因此:确保您的客户端支持 AVC444,如有必要,请勿启用任何后备选项。
如果您使用 FreeRDP 客户端,请确保您至少设置了和 NO或 来启动 它。您还需要确保使用 ffmpeg h.264 支持而不是 OpenH.264 构建 FreeRDP,因为后者破坏了对 AVC444 解码的支持,并将导致导致 RDP 无法使用的工件。/gfx-h264:AVC444
/bpp:24
/rfx
/rfx-mode:video
Nvidia 驱动程序版本很重要。我最初尝试使用 Nvidia 最新的“Game Ready”驱动程序,但无法让它工作。最后,我让它与有点旧的“Studio”驱动程序一起工作。
AVC444 编码的硬件支持是必要的。这意味着 Maxwell GM107 或更好的 GPU(仅限 GeForce 9xx 及更高版本),因为旧版本没有 YUV444 编码支持。我最初尝试使用基于 Kepler GK208 (GT 630) GPU 的 GT630,它仅支持 AVC420,而不支持 AVC444。
总而言之,要完成这项工作,您需要:
支持YUV444/AVC444编码的硬件(GM107/9xx系列或更高版本)
Nvidia Studio 驱动程序(至少在撰写本文时,与 Game Ready 驱动程序相同)
支持 AVC444 解码并报告自身的客户端。
启用在服务器端优先/优先选择 AVC444 的选项。
保持分辨率 <= 2560x1440
更新:如果您使用Windows Server 2016 作为远程游戏主机而不是 Windows 10,则效果会更好、更稳定。
归档时间: |
|
查看次数: |
6404 次 |
最近记录: |