libobs: Log Windows 10 Gaming Features
This commit adds logging for Windows 10 Gaming features that may negatively impact the performance of game capture, recording, or streaming. This doesn't check Group Policy settings.
This commit is contained in:
parent
0759eeb5da
commit
b02a97ab0f
@ -15,6 +15,7 @@
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
******************************************************************************/
|
||||
|
||||
#include "util/windows/win-registry.h"
|
||||
#include "util/windows/win-version.h"
|
||||
#include "util/platform.h"
|
||||
#include "util/dstr.h"
|
||||
@ -189,6 +190,49 @@ static void log_aero(void)
|
||||
aeroMessage);
|
||||
}
|
||||
|
||||
#define WIN10_GAME_BAR_REG_KEY \
|
||||
L"Software\\Microsoft\\Windows\\CurrentVersion\\GameDVR"
|
||||
#define WIN10_GAME_DVR_POLICY_REG_KEY \
|
||||
L"SOFTWARE\\Policies\\Microsoft\\Windows\\GameDVR"
|
||||
#define WIN10_GAME_DVR_REG_KEY L"System\\GameConfigStore"
|
||||
#define WIN10_GAME_MODE_REG_KEY L"Software\\Microsoft\\GameBar"
|
||||
|
||||
static void log_gaming_features(void)
|
||||
{
|
||||
if (win_ver < 0xA00)
|
||||
return;
|
||||
|
||||
struct reg_dword game_bar_enabled;
|
||||
struct reg_dword game_dvr_allowed;
|
||||
struct reg_dword game_dvr_enabled;
|
||||
struct reg_dword game_dvr_bg_recording;
|
||||
struct reg_dword game_mode_enabled;
|
||||
|
||||
get_reg_dword(HKEY_CURRENT_USER, WIN10_GAME_BAR_REG_KEY,
|
||||
L"AppCaptureEnabled", &game_bar_enabled);
|
||||
get_reg_dword(HKEY_CURRENT_USER, WIN10_GAME_DVR_POLICY_REG_KEY,
|
||||
L"AllowGameDVR", &game_dvr_allowed);
|
||||
get_reg_dword(HKEY_CURRENT_USER, WIN10_GAME_DVR_REG_KEY,
|
||||
L"GameDVR_Enabled", &game_dvr_enabled);
|
||||
get_reg_dword(HKEY_CURRENT_USER, WIN10_GAME_BAR_REG_KEY,
|
||||
L"HistoricalCaptureEnabled", &game_dvr_bg_recording);
|
||||
get_reg_dword(HKEY_CURRENT_USER, WIN10_GAME_MODE_REG_KEY,
|
||||
L"AllowAutoGameMode", &game_mode_enabled);
|
||||
|
||||
blog(LOG_INFO, "Windows 10 Gaming Features:");
|
||||
blog(LOG_INFO, "\tGame Bar: %s",
|
||||
(bool)game_bar_enabled.return_value ? "On" : "Off");
|
||||
blog(LOG_INFO, "\tGame DVR Allowed: %s",
|
||||
(bool)game_dvr_allowed.return_value ? "Yes" : "No");
|
||||
blog(LOG_INFO, "\tGame DVR: %s",
|
||||
(bool)game_dvr_enabled.return_value ? "On" : "Off");
|
||||
blog(LOG_INFO, "\tGame DVR Background Recording: %s",
|
||||
(bool)game_dvr_bg_recording.return_value ? "On" :
|
||||
"Off");
|
||||
blog(LOG_INFO, "\tGame Mode: %s",
|
||||
(bool)game_mode_enabled.return_value ? "On" : "Off");
|
||||
}
|
||||
|
||||
void log_system_info(void)
|
||||
{
|
||||
struct win_version_info ver;
|
||||
@ -202,6 +246,7 @@ void log_system_info(void)
|
||||
log_windows_version();
|
||||
log_admin_status();
|
||||
log_aero();
|
||||
log_gaming_features();
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user