aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2025-06-16 20:57:59 +0200
committerdec05eba <dec05eba@protonmail.com>2025-06-16 20:57:59 +0200
commitbc58e382b7182497d1cfc08e1a158d1ecd5ef4cd (patch)
tree77591cd31b7a2dfa93fb1baeea4a25725bb65ff5
parent630c5042410996d3ec05ddf2906f1f5d2d424626 (diff)
EGL_OPENGL_ES_BIT->EGL_OPENGL_ES2_BIT
-rw-r--r--TODO2
-rw-r--r--include/egl.h1
-rw-r--r--src/capture/kms.c2
-rw-r--r--src/egl.c2
-rw-r--r--src/pipewire_video.c2
5 files changed, 6 insertions, 3 deletions
diff --git a/TODO b/TODO
index ab23e05..d552616 100644
--- a/TODO
+++ b/TODO
@@ -304,3 +304,5 @@ Allow medium, high, very_high and ultra quality for -bm cbr. If that is used the
Maybe remove shader compute code. It doesn't seem necessary anymore now that glSwapBuffer/glFinish isn't used. dbus server isn't needed anymore either, the code can be moved back to the gpu screen recorder process.
Add proper check if opengl functions are supported. dlsym for the symbol will return a no-op function if it's not supported, so it silently fails if used.
+
+Colors are offset to bottom left by 1 pixel or so on steam deck in landscape mode.
diff --git a/include/egl.h b/include/egl.h
index 90aa2b7..4abc0c2 100644
--- a/include/egl.h
+++ b/include/egl.h
@@ -48,6 +48,7 @@ typedef void(*__GLXextFuncPtr)(void);
#define EGL_OPENGL_ES_API 0x30A0
#define EGL_OPENGL_BIT 0x0008
#define EGL_OPENGL_ES_BIT 0x0001
+#define EGL_OPENGL_ES2_BIT 0x0004
#define EGL_NONE 0x3038
#define EGL_CONTEXT_CLIENT_VERSION 0x3098
#define EGL_BACK_BUFFER 0x3084
diff --git a/src/capture/kms.c b/src/capture/kms.c
index daba6bc..36a5355 100644
--- a/src/capture/kms.c
+++ b/src/capture/kms.c
@@ -12,7 +12,7 @@
#include <fcntl.h>
#include <xf86drm.h>
-#include <libdrm/drm_fourcc.h>
+#include <drm_fourcc.h>
#include <libavutil/mastering_display_metadata.h>
diff --git a/src/egl.c b/src/egl.c
index 25a3444..d2d90e8 100644
--- a/src/egl.c
+++ b/src/egl.c
@@ -35,7 +35,7 @@ static bool gsr_egl_create_window(gsr_egl *self) {
const int32_t attr[] = {
EGL_BUFFER_SIZE, 24,
- EGL_RENDERABLE_TYPE, EGL_OPENGL_ES_BIT,
+ EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT,
EGL_NONE, EGL_NONE
};
diff --git a/src/pipewire_video.c b/src/pipewire_video.c
index 29d12fd..6704399 100644
--- a/src/pipewire_video.c
+++ b/src/pipewire_video.c
@@ -6,7 +6,7 @@
#include <spa/param/video/format-utils.h>
#include <spa/debug/types.h>
-#include <libdrm/drm_fourcc.h>
+#include <drm_fourcc.h>
#include <fcntl.h>
#include <unistd.h>