Nvidia NVENC를 사용하는 RemoteFX 및 하드웨어 h.264가 포함된 Windows 10 원격 데스크톱

Nvidia NVENC를 사용하는 RemoteFX 및 하드웨어 h.264가 포함된 Windows 10 원격 데스크톱

저는 Windows 10 Pro를 서버로, Windows 10 Pro를 클라이언트로 사용하고 있습니다. 서버에는 최신 드라이버가 포함된 GTX 1070 카드가 있으며 h.264/AVC 444 하드웨어 인코딩이 가능한 완전한 NVENC가 있습니다. Steam 스트리밍은 서버 측의 하드웨어 코덱을 사용하여 작동합니다.

서버에서 RemoteFX를 활성화했으며 원격 데스크톱 서비스/원격 데스크톱 세션 호스트/원격 세션 환경 아래의 그룹 정책에서 다음을 활성화했습니다.

  • 모든 원격 데스크톱 서비스 세션에 하드웨어 그래픽 어댑터 사용
  • RemoteApp에 고급 RemtoteFX 그래픽 사용
  • 원격 데스크톱 연결을 위해 H.264/AVC 444 그래픽 모드 우선 순위 지정
  • 원격 데스크톱 연결을 위한 H.264/AVC 하드웨어 인코딩 구성
  • RemoteFX 데이터에 대한 압축 구성
  • RemoteFX 적응형 그래픽의 이미지 품질 구성
  • Windows Server 2008 R2 SP1용으로 설계된 RemoteFX 클라이언트에 대해 RemoteFX 인코딩을 활성화합니다.
  • 원격 데스크톱 프로토콜 8.0 활성화
  • RemoteFX 적응형 그래픽의 이미지 품질 구성

서버에 연결하고 이벤트 뷰어에서 RemoteDesktopServicesd-RdpCoreTS로 이동하면 EventID 162 또는 170이 포함된 이벤트가 표시되지 않으며 설명서에는 하드웨어 인코딩을 사용할 때 이러한 이벤트가 나타나야 한다고 나와 있습니다.

내가 도대체 ​​뭘 잘못하고있는 겁니까? 하드웨어 h.264 인코딩을 받지 못하는 이유는 무엇입니까? 활성화해야 하는 또 다른 설정이 누락되어 있습니까?

답변1

마침내 작동하게 만들었습니다. 솔루션에는 여러 부분이 있었습니다.

  1. 하드웨어 인코딩은오직AVC444 인코딩과 함께 사용된 적이 있습니다. 클라이언트가 AVC444를 사용할 수 있다고 서버에 명시적으로 알리지 않는 경우(예: AVC420만 처리할 수 있는 경우) RDP 서버는절대하드웨어 인코딩을 사용하십시오. 이는 MS가 AVC420 디코더에 맞는 스트림을 생성하기 위해 특수 코덱을 사용하지만 글꼴이 뭉툭하거나 흐릿하게 보이지 않게 만드는 특수 인코딩을 적용하기 때문이라고 생각합니다.

    따라서 클라이언트가 AVC444를 지원하는지 확인하고 필요한 경우 대체 옵션을 활성화하지 마십시오.

    FreeRDP 클라이언트를 사용하는 경우 시작했는지 확인하세요.~와 함께 /gfx-h264:AVC444, 최소 /bpp:24, NO /rfx또는 을 설정했습니다 /rfx-mode:video. 또한 OpenH.264가 아닌 ffmpeg h.264 지원으로 FreeRDP를 구축했는지 확인해야 합니다. OpenH.264는 AVC444 디코딩에 대한 지원을 중단하고 RDP를 사용할 수 없게 만드는 아티팩트가 발생하기 때문입니다.

  2. Nvidia 드라이버 버전이 중요합니다. 저는 원래 Nvidia의 최신 "Game Ready" 드라이버를 사용하려고 했는데 제대로 작동하지 못했습니다. 결국에는 좀 더 오래된 "Studio" 드라이버를 사용하여 작업하게 되었습니다.

  3. AVC444 인코딩에 대한 하드웨어 지원은필요한. 이는 Maxwell GM107 이상의 GPU(GeForce 9xx 이상만 해당)를 의미합니다. 이전 버전에는 YUV444 인코딩이 지원되지 않기 때문입니다. 처음에는 AVC444가 아닌 AVC420만 지원하는 Kepler GK208(GT 630) GPU를 기반으로 하는 GT630을 사용해 보았습니다.

요약하자면, 이 작업을 수행하려면 다음이 필요합니다.

  1. YUV444/AVC444 인코딩을 지원하는 하드웨어(GM107/9xx 시리즈 이상)

  2. Nvidia Studio 드라이버(적어도 이 글을 쓰는 시점에는 Game Ready 드라이버에 적용됨)

  3. AVC444 디코딩을 지원하고 자체적으로 보고하는 클라이언트입니다.

  4. 서버 측에서 AVC444의 우선 순위를 지정/선호하는 옵션을 활성화합니다.

  5. 해상도를 <= 2560x1440으로 유지하세요.

업데이트: Windows 10 대신 사용하는 경우 훨씬 더 좋고 안정적으로 작동합니다.원격 게임 호스트를 위한 Windows Server 2016.

관련 정보