OBS studio says graphics driver update required

I have an nvidia geforce 960 graphics card. Up to this point, I've been using the compatible drivers for Nvidia 570 as suggested by my system, which kinda sucks but works well enough most of the time. But Nvidia came out with a new (allegedly) linux compatible driver for the 960 last week:

When I try to install it, it gives me a warning that says the driver is incompatible with the X-server that I guess runs a lot of the windows and GUI?

I'm trying to run OBS studio but it says I need to update my graphics driver first. Is there a way to safely install and run the newest Nvidia driver without breaking everything?

I'm running Mate 1.26.2

I'd suggest to verify xorg, kernel, etc. versions compatibility according to Chapter 2. Minimum Requirements

2 Likes

Rather than the version of MATE, I'd suggest you start & consider what Ubuntu MATE release you're using, as Ubuntu LTS releases provide kernel stack choice, with your install media setting the default.

Ubuntu-MATE being a flavor still follows (as do all flavors) the standard of Ubuntu 18.04 LTS Desktop (and earlier); thus if you've got an older graphics card; an often easy fix is to use the older kernel stack option (ie. GA), with more problems expected when using the newer stack(s) (ie. HWE).

I'm ignoring OEM stack options, as that complicates things & they're on of benefit for specific hardware (and releases)

Note: as you've already got a warning saying you need the latest 'graphics driver', using an older kernel stack may not help you anyway, but I'd still consider what OS/release you're using, as that DOES impact your options.

3 Likes

I'm running Ubuntu MATE 24.04 which has MATE 1.26.2 (you could be running 22.04 perhaps which might change things up a bit). On UM 24.04 (Noble) the NVIDIA 570 driver is already at 570.133.07, which is about 2 months old. As a GeForce 960 is now 10 years old, they aren't going to have done much work on it in the last 2 months. Looking at the release notes:

  • Fixed a bug that could cause OpenGL applications and compositors to stall when using NVIDIA as a PRIME Display Offload sink ("Reverse PRIME"), potentially resulting in a black screen.
  • Fixed a bug that led to increasing memory usage in X11 OpenGL and Vulkan applications after suspend/resume cycles.

That doesn't sound like a deal-breaker for a 960.

The drivers generally kinda suck (see this 2 year-old issue for why I'm not a fan) but it sounds to me like you're experiencing more than just an out-of-date driver issue:

On Linux, OBS requires a functioning OpenGL stack. I bet you're seeing in the log (or if you run from the terminal):

error: Failed to initialize video.  Your GPU may not be supported, or your graphics drivers may need to be updated.

Perhaps give us some details about what you're seeing with OBS and we might be able to help with that - rather than go on a wild goose chase with NVIDIA drivers. Or this might be a very OBS-specific problem, in which case you could try the OBS forums?

2 Likes

So what I'm seeing with OBS is that when I try to access my webcam, which is plug-and-play, it gives this error:
Failed to open NVENC codec: Unknown error occurred

Try installing the latest NVIDIA driver.

So I dutifully went to update them and am having other issues.
I do understand that my graphics card is quite old and drivers can only do so much, I'm saving up for a newer one but I'm not there yet.

3 Likes

It's probably not X-server incompatibility, by the way. You can't run nvidia-installer while the X server is running (see the Before you begin section of the README). You must use a terminal session to run the installer:

  1. either boot with a lower runlevel, or;
  2. switch to another terminal (Ctrl + Alt + F2) and stop the lightdm service.
3 Likes

What's the output of glxinfo -B?

Also, the output of ffmpeg -codecs 2>/dev/null | grep nvenc might be useful.

I'm not sure (yet) why OBS is asking about the NVIDIA encoders when you add your webcam as a source - assuming that's what you're doing. Have you tried adding other things to your scene? Does the error occur when you add the webcam, or does it happen when you start recording?

2 Likes

glxinfo -B returns this:
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVIDIA GeForce GTX 960/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 570.133.07
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 4.6.0 NVIDIA 570.133.07
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)

OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 570.133.07
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

ffmpeg -codecs 2>/dev/null | grep nvenc returns this:
DEV.L. av1 Alliance for Open Media AV1 (decoders: libdav1d libaom-av1 av1 av1_cuvid av1_qsv) (encoders: libaom-av1 librav1e libsvtav1 av1_nvenc av1_qsv av1_vaapi)
DEV.LS h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (decoders: h264 h264_v4l2m2m h264_qsv h264_cuvid) (encoders: libx264 libx264rgb h264_nvenc h264_qsv h264_v4l2m2m h264_vaapi)
DEV.L. hevc H.265 / HEVC (High Efficiency Video Coding) (decoders: hevc hevc_qsv hevc_v4l2m2m hevc_cuvid) (encoders: libx265 hevc_nvenc hevc_qsv hevc_v4l2m2m hevc_vaapi)

Looks good in terms of ffmpeg having the correct encoders.

I would take this to OBS forums instead, feel free to link from here so if I think of anything else, I can follow up. You can clarify there exactly what steps you took to get the error.

You could try an older driver, perhaps, I'm running 550 on my system without problems in OBS (I haven't tried 570 lately). But, also, I build OBS from source because I occasionally push bug fixes - so my setup won't be exactly comparable to yours.

4 Likes

Thanks, I'll ask over there!

2 Likes

In case i need to follow up: NVENC Codec problem | OBS Forums

It looks related to recording (encoding) settings, not the webcam.

2 Likes