this repo has no description

Merge pull request #219 from TheEssem/native-fixes

nativeFixes: Add Vulkan and VAAPI driver check ignore options

authored by Cynthia Foxwell and committed by GitHub edb78f4d d1e11769

Changed files
+23 -1
packages
core-extensions
src
nativeFixes
+9 -1
packages/core-extensions/src/nativeFixes/host.ts
··· 29 29 app.commandLine.appendSwitch("disable-background-timer-throttling"); 30 30 } 31 31 32 + if (moonlightHost.getConfigOption<boolean>("nativeFixes", "vulkan") ?? false) { 33 + enabledFeatures.push("Vulkan", "DefaultANGLEVulkan", "VulkanFromANGLE"); 34 + } 35 + 32 36 if (process.platform === "linux") { 33 37 if (moonlightHost.getConfigOption<boolean>("nativeFixes", "linuxAutoscroll") ?? false) { 34 38 app.commandLine.appendSwitch("enable-blink-features", "MiddleClickAutoscroll"); ··· 43 47 // hardware acceleration is disabled 44 48 const noAccel = app.commandLine.hasSwitch("disable-gpu-compositing"); 45 49 if ((moonlightHost.getConfigOption<boolean>("nativeFixes", "vaapi") ?? true) && !noAccel) { 46 - if (process.platform === "linux") 50 + if (process.platform === "linux") { 47 51 // These will eventually be renamed https://source.chromium.org/chromium/chromium/src/+/5482210941a94d70406b8da962426e4faca7fce4 48 52 enabledFeatures.push("VaapiVideoEncoder", "VaapiVideoDecoder", "VaapiVideoDecodeLinuxGL"); 53 + 54 + if (moonlightHost.getConfigOption<boolean>("nativeFixes", "vaapiIgnoreDriverChecks") ?? false) 55 + enabledFeatures.push("VaapiIgnoreDriverChecks"); 56 + } 49 57 } 50 58 51 59 app.commandLine.appendSwitch("enable-features", [...new Set(enabledFeatures)].join(","));
+14
packages/core-extensions/src/nativeFixes/manifest.json
··· 23 23 "type": "boolean", 24 24 "default": true 25 25 }, 26 + "vulkan": { 27 + "advice": "restart", 28 + "displayName": "Enable Vulkan renderer", 29 + "description": "Uses the Vulkan backend for rendering", 30 + "type": "boolean", 31 + "default": false 32 + }, 26 33 "linuxAutoscroll": { 27 34 "advice": "restart", 28 35 "displayName": "Enable middle click autoscroll on Linux", ··· 43 50 "description": "Provides hardware accelerated video encode and decode. Has no effect on other operating systems", 44 51 "type": "boolean", 45 52 "default": true 53 + }, 54 + "vaapiIgnoreDriverChecks": { 55 + "advice": "restart", 56 + "displayName": "Ignore VAAPI driver checks on Linux", 57 + "description": "Forces hardware video acceleration on some graphics drivers at the cost of stability. Has no effect on other operating systems", 58 + "type": "boolean", 59 + "default": false 46 60 }, 47 61 "linuxUpdater": { 48 62 "advice": "restart",