3

How can I turn off Hardware Acceleration in Linux, also known as Direct Rendering. I wish to turn this off, as it messes with some applications like OBS Studio which can't handle capturing of hardware acceleration on other applications since it's enabled for the entire system. Certain apps can turn it on and off, but can't do this for desktop and other apps.

When adding a source to capture from in OBS it just shows a blank capture image, for example if I wanted to record my desktop, it'll just show it as a blank capture input. Doesn't work if I want to capture web browser like Google Chrome, unless it's a single window with no tabs, and hardware acceleration is turned off in it's settings.

Graphics:  Card-1: Intel 3rd Gen Core processor Graphics Controller bus-ID: 00:02.0
       Card-2: NVIDIA GF108M [GeForce GT 630M] bus-ID: 01:00.0
       Display Server: X.Org 1.15.1 driver: nvidia Resolution: 1366x768@60.0hz
       GLX Renderer: GeForce GT 630M/PCIe/SSE2 GLX Version: 4.5.0 NVIDIA 384.90 Direct Rendering: Yes
  • Try asking about a specific scenario, not something general like this. Like broadcasting a chrome window through X and OBS on some distribution with some video card and some module. Also refer to where you've set which setting off exactly. This helps people understand your setup. – Zip Dec 3 '17 at 18:10
  • @Zip Maybe you didn't read the question before properly and understand it. Check and try again, I have asked about a specific scenario, and that is to disable Hardware Acceleration for the whole system not just parts of it just for few applications. – user91679 Dec 3 '17 at 18:57
  • Well, I did not explain myself appropriately. Applications will individually access hardware resources directly through the modules or through libs generally. I don't think there is a system wide simple switch for that. Anyway you don't mention your distro nor which drivers you're using, which may influence the answer. You seem to have issues with a very particular obs setup that may have an easier solution than what you asked, with the bonus that you may keep acceleration on for other stuff. Just ignore this from me if you disagree though, to keep comments clean... – Zip Dec 3 '17 at 19:21
8

You can configure Xorg to disable OpenGL / GLX.

For a first try, you can run a second X session: switch to tty2, log in and type:

startx -- :2 vt2 -extension GLX

To permanently disable hardware acceleration, create a file:

/etc/X11/xorg.conf.d/disable-gpu.conf

with the the content:

Section "Extensions"
    Option "GLX" "Disable"
EndSection

Note that Xwayland in Wayland compositors like Gnome3-Wayland will ignore settings in xorg.conf.d.

  • That approach not working unfortunately on xubuntu 18, do you know how to do the same on modern xorg? – Ivan Talalaev Oct 11 '18 at 6:00
  • @IvanTalalaev Try to also disable extensions DRI2 and DRI3. – mviereck Oct 11 '18 at 9:21
  • thanks, but that doesn't work either. Let me clarify: in my system I have xorg.conf.d in /usr/share/X11/ I placed there disable-gpu.conf file with required disable lines as depicted on image i.imgur.com/QKHzz6l.png that is right? – Ivan Talalaev Oct 11 '18 at 9:42
  • @IvanTalalaev The file looks correct. Change its name to 90-disable-gpu.conf to make sure it is applied as the last one. Maybe another config overwrites it. – mviereck Oct 11 '18 at 9:52
  • @IvanTalalaev Output of xdpyinfo | head -n 60 shows you enabled X extensions. – mviereck Oct 11 '18 at 10:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy