From 5da156b43327035f9e701d71077c731e257b1dc3 Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Wed, 5 Sep 2018 18:57:40 -0700 Subject: [PATCH] Prefer H.264 for higher decoding performance in very high load situations --- app/streaming/session.cpp | 10 ++++++++++ moonlight-common-c/moonlight-common-c | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/app/streaming/session.cpp b/app/streaming/session.cpp index def15bec..dff470c1 100644 --- a/app/streaming/session.cpp +++ b/app/streaming/session.cpp @@ -339,6 +339,16 @@ Session::Session(NvComputer* computer, NvApp& app) m_StreamConfig.width, m_StreamConfig.height, m_StreamConfig.fps); + + // Oddly enough, the H.264 encoder on my GTX 1080 is actually more + // performant than the HEVC encoder (especially because split frame encode + // is disabled for HEVC by moonlight-common-c). Use H.264 for 1440p 100 FPS and above. + if (m_StreamConfig.width * m_StreamConfig.height * m_StreamConfig.fps >= 2560 * 1440 * 100) { + SDL_LogInfo(SDL_LOG_CATEGORY_APPLICATION, + "Preferring H.264 for higher performance"); + m_StreamConfig.supportsHevc = false; + } + m_StreamConfig.enableHdr = false; break; case StreamingPreferences::VCC_FORCE_H264: diff --git a/moonlight-common-c/moonlight-common-c b/moonlight-common-c/moonlight-common-c index 884b8d0a..8743ce5d 160000 --- a/moonlight-common-c/moonlight-common-c +++ b/moonlight-common-c/moonlight-common-c @@ -1 +1 @@ -Subproject commit 884b8d0a950a47496fb96cd5d9a32c6745ba590a +Subproject commit 8743ce5d083407c33c8b3c23529eaa9630361e7c