OBS Flatpak Doesn't Seem to Detect My Nvidia GPU

TrebleSix

New Member
Hello,

I recently switched to Linux a little over a month ago and have been using the OBS Flatpak version 32.0.4 and have a Nvidia 5070 and AMD Ryzen 7 9800X3D. OBS doesn't seem to detect my GPU and when I try to record or stream using a NVIDIA NVENC encoder, I get the message in the log "Not running on NVIDIA GPU, falling back to non-texture encoder" I am able to select the Nvidia encoders in the advanced settings I still get the message in the logs. Is there some way I can get OBS to stream/record using a Nvidia encoder?

Thank you
 

Attachments

In you case, OBS is using hardware encoding, however it is using a "non-texture" (non-CUDA) route. This is slower than the CUDA path. The reason for this is that you are running OBS on an integrated GPU - e.g. a Radeon which is part of your Ryzen processor - see this line of your log:

Code:
info: Loading up OpenGL on adapter AMD AMD Ryzen 7 9800X3D 8-Core Processor

If you want to run OBS on the NVIDIA card using PRIME offloading, then run OBS with __NV_PRIME_RENDER_OFFLOAD=1 obs or if you have prime-run you can use that too, e.g. prime-run obs. Then you'll see a line similar to this in your log (based on my machine which has a Ryzen 4900 + NVIDIA RTX 2060):

Code:
info: Loading up OpenGL on adapter NVIDIA Corporation NVIDIA GeForce RTX 2060 with Max-Q Design PCIe/SSE2

For my own setup - I don't run OBS on the NVIDIA card because I simultaneously use the NVIDIA card for games, and I figure why not share the load and let the Ryzen/Radeon take care of OBS and all its compositing and rendering etc.
 
Last edited:
Thank you for helping me out on this, I see that it is running on the CPU's integrated GPU. Bear with me as I am still pretty new to linux, how would I run the flatpak with PRIME offloading, is that something I can add into my shellscript for OBS?
 
All good - welcome to Linux! I don't use FlatPak, but I can guess that one of these two terminal commands will do the trick:

Code:
flatpak run --env=__NVIDIA_PRIME_RENDER_OFFLOAD=1 com.obsproject.Studio

Or

Code:
__NV_PRIME_RENDER_OFFLOAD=1 flatpak run com.obsproject.Studio

If you are using a desktop shortcut to run the application, you might need to edit the .desktop file and update the Exec. These files are found in /usr/share/applications or sometimes overridden in ~/.local/share/applications.

Of course, that depends a little on what desktop (distribution) you are running.
 
Back
Top