mirror of
https://github.com/nestriness/nestri.git
synced 2025-12-11 08:15:38 +02:00
## Description Adds new `-device` argument for gpu-screen-recorder which allows specifying a GPU to use (by `/dev/dri/cardN` path) This fixes an issue with multi-gpu systems when device such as `/dev/dri/card1` is passed through but gpu-screen-recorder will still try to access `/dev/dri/card0` for capturing and failing. Added relevant bits to `gpu_helpers.sh` to find the card path - I assume all modern modesetting drivers will have a `/drm/` path that tells the card number. If not, the script will fall back to gpu-screen-recorder's own method of finding the card. Edit: Forgot to mention patches are now copied to /tmp/ rather than /etc/ Co-authored-by: Kristian Ollikainen <DatCaptainHorse@users.noreply.github.com>
24 lines
824 B
Diff
24 lines
824 B
Diff
diff --git a/src/main.cpp b/src/main.cpp
|
|
index 112a6ac..57bd9bf 100644
|
|
--- a/src/main.cpp
|
|
+++ b/src/main.cpp
|
|
@@ -1906,6 +1906,7 @@ int main(int argc, char **argv) {
|
|
{ "-gopm", Arg { {}, true, false } }, // deprecated, used keyint instead
|
|
{ "-keyint", Arg { {}, true, false } },
|
|
{ "-encoder", Arg { {}, true, false } },
|
|
+ { "-device", Arg { {}, true, false } },
|
|
};
|
|
|
|
for(int i = 1; i < argc; i += 2) {
|
|
@@ -2226,6 +2227,10 @@ int main(int argc, char **argv) {
|
|
overclock = false;
|
|
}
|
|
|
|
+ const char *dri_device = args["-device"].value();
|
|
+ if (dri_device)
|
|
+ egl.dri_card_path = dri_device;
|
|
+
|
|
egl.card_path[0] = '\0';
|
|
if(wayland || egl.gpu_info.vendor != GSR_GPU_VENDOR_NVIDIA) {
|
|
// TODO: Allow specifying another card, and in other places
|