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)