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