2021-09-07 19:47:35 -07:00
|
|
|
From f9e74e7d75b84f1831e49f7be9197e3a6db6e428 Mon Sep 17 00:00:00 2001
|
2015-02-21 19:08:15 -08:00
|
|
|
From: Sebastian Lackner <sebastian@fds-team.de>
|
|
|
|
Date: Sat, 21 Feb 2015 23:37:26 +0100
|
2021-09-07 19:47:35 -07:00
|
|
|
Subject: [PATCH] winecfg: Add checkbox to enable/disable vaapi GPU decoder.
|
2015-02-21 19:08:15 -08:00
|
|
|
|
|
|
|
---
|
|
|
|
programs/winecfg/resource.h | 1 +
|
2021-09-07 19:47:35 -07:00
|
|
|
programs/winecfg/staging.c | 20 ++++++++++++++++++++
|
2015-02-21 19:08:15 -08:00
|
|
|
programs/winecfg/winecfg.rc | 1 +
|
2021-09-07 19:47:35 -07:00
|
|
|
3 files changed, 22 insertions(+)
|
2015-02-21 19:08:15 -08:00
|
|
|
|
|
|
|
diff --git a/programs/winecfg/resource.h b/programs/winecfg/resource.h
|
2021-09-07 19:47:35 -07:00
|
|
|
index 582c5c967e4..17378655db6 100644
|
2015-02-21 19:08:15 -08:00
|
|
|
--- a/programs/winecfg/resource.h
|
|
|
|
+++ b/programs/winecfg/resource.h
|
2018-04-01 15:22:59 -07:00
|
|
|
@@ -214,6 +214,7 @@
|
2015-02-21 19:08:15 -08:00
|
|
|
|
|
|
|
/* Staging tab */
|
|
|
|
#define IDC_ENABLE_CSMT 9001
|
|
|
|
+#define IDC_ENABLE_VAAPI 9002
|
|
|
|
|
|
|
|
/* About tab */
|
|
|
|
#define IDC_ABT_OWNER 8432
|
|
|
|
diff --git a/programs/winecfg/staging.c b/programs/winecfg/staging.c
|
2021-09-07 19:47:35 -07:00
|
|
|
index a2a2117a56d..3ba1e618bb3 100644
|
2015-02-21 19:08:15 -08:00
|
|
|
--- a/programs/winecfg/staging.c
|
|
|
|
+++ b/programs/winecfg/staging.c
|
2021-09-07 19:47:35 -07:00
|
|
|
@@ -42,10 +42,26 @@ static void csmt_set(BOOL status)
|
|
|
|
set_reg_key_dword(config_key, L"Direct3D", L"csmt", status);
|
2015-02-21 19:08:15 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
+/*
|
|
|
|
+ * DXVA2
|
|
|
|
+ */
|
|
|
|
+static BOOL vaapi_get(void)
|
|
|
|
+{
|
|
|
|
+ BOOL ret;
|
2021-09-07 19:47:35 -07:00
|
|
|
+ WCHAR *value = get_reg_key(config_key, keypath(L"DXVA2"), L"backend", NULL);
|
|
|
|
+ ret = (value && !wcscmp(value, L"va"));
|
2015-02-21 19:08:15 -08:00
|
|
|
+ HeapFree(GetProcessHeap(), 0, value);
|
|
|
|
+ return ret;
|
|
|
|
+}
|
|
|
|
+static void vaapi_set(BOOL status)
|
|
|
|
+{
|
2021-09-07 19:47:35 -07:00
|
|
|
+ set_reg_key(config_key, keypath(L"DXVA2"), L"backend", status ? L"va" : NULL);
|
2015-02-21 19:08:15 -08:00
|
|
|
+}
|
|
|
|
|
|
|
|
static void load_staging_settings(HWND dialog)
|
|
|
|
{
|
|
|
|
CheckDlgButton(dialog, IDC_ENABLE_CSMT, csmt_get() ? BST_CHECKED : BST_UNCHECKED);
|
|
|
|
+ CheckDlgButton(dialog, IDC_ENABLE_VAAPI, vaapi_get() ? BST_CHECKED : BST_UNCHECKED);
|
|
|
|
}
|
|
|
|
|
|
|
|
INT_PTR CALLBACK StagingDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
2021-09-07 19:47:35 -07:00
|
|
|
@@ -75,6 +91,10 @@ INT_PTR CALLBACK StagingDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lPar
|
2015-02-21 19:08:15 -08:00
|
|
|
csmt_set(IsDlgButtonChecked(hDlg, IDC_ENABLE_CSMT) == BST_CHECKED);
|
|
|
|
SendMessageW(GetParent(hDlg), PSM_CHANGED, 0, 0);
|
|
|
|
return TRUE;
|
|
|
|
+ case IDC_ENABLE_VAAPI:
|
|
|
|
+ vaapi_set(IsDlgButtonChecked(hDlg, IDC_ENABLE_VAAPI) == BST_CHECKED);
|
|
|
|
+ SendMessageW(GetParent(hDlg), PSM_CHANGED, 0, 0);
|
|
|
|
+ return TRUE;
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
diff --git a/programs/winecfg/winecfg.rc b/programs/winecfg/winecfg.rc
|
2021-09-07 19:47:35 -07:00
|
|
|
index 895f68c1237..eafbdd6cd67 100644
|
2015-02-21 19:08:15 -08:00
|
|
|
--- a/programs/winecfg/winecfg.rc
|
|
|
|
+++ b/programs/winecfg/winecfg.rc
|
2021-09-07 19:47:35 -07:00
|
|
|
@@ -318,6 +318,7 @@ BEGIN
|
2015-02-21 19:08:15 -08:00
|
|
|
GROUPBOX "Staging settings",IDC_STATIC,8,4,244,210
|
|
|
|
LTEXT "The following settings are experimental and may break stuff!\nMake sure to reset them again in case of a problem.",IDC_STATIC,16,16,230,16
|
2018-04-01 15:22:59 -07:00
|
|
|
CONTROL "Enable &CSMT for better graphic performance (deprecated)",IDC_ENABLE_CSMT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,40,230,8
|
2015-02-21 19:08:15 -08:00
|
|
|
+ CONTROL "Enable &VAAPI as backend for DXVA2 GPU decoding",IDC_ENABLE_VAAPI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,55,230,8
|
|
|
|
END
|
|
|
|
|
|
|
|
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
|
|
|
--
|
2021-09-07 19:47:35 -07:00
|
|
|
2.33.0
|
2015-02-21 19:08:15 -08:00
|
|
|
|