diff --git a/checks/graphics.py b/checks/graphics.py index 15a731c..80440b9 100644 --- a/checks/graphics.py +++ b/checks/graphics.py @@ -1,5 +1,6 @@ from .vars import * from .utils.utils import * +from .linux import checkFlatpak def checkInit(lines): @@ -58,6 +59,15 @@ def checkNVIDIAdriversEGL(lines): return [LEVEL_WARNING, "Old NVIDIA Drivers", "Legacy NVIDIA 390 drivers do not support window capture on EGL."] +def checkLLVMpipe(lines): + if search('OpenGL on adapter Mesa llvmpipe', lines): + helpText = "OBS is running on a software-emulated graphics pipeline. This is not supported as OBS requires access to a physical GPU. Please make sure your graphics drivers are up to date." + + if checkFlatpak(lines): + helpText += "

If you are using an NVIDIA GPU, please reboot your PC, then run flatpak update from a terminal." + return [LEVEL_CRITICAL, "Software rendering", helpText] + + def checkVideoSettings(lines): videoSettings = [] res = [] diff --git a/loganalyzer.py b/loganalyzer.py index eb510d4..c19ec90 100755 --- a/loganalyzer.py +++ b/loganalyzer.py @@ -189,7 +189,8 @@ def doAnalysis(url=None, filename=None): checkLinuxVCam(logLines), checkMacPermissions(logLines), checkServiceRecommendations(logLines), - checkLinuxSystemInfo(logLines) + checkLinuxSystemInfo(logLines), + checkLLVMpipe(logLines) ]) messages.extend(checkVideoSettings(logLines)) m = parseScenes(logLines)