diff options
author | dec05eba <dec05eba@protonmail.com> | 2024-06-10 16:55:47 +0200 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2024-06-10 16:55:47 +0200 |
commit | f02f5a9d00e6255852c68b22b96709ef2941b5c0 (patch) | |
tree | b2f3f6113bdbee094e41cfc4cc0584a5692841fa /src/capture | |
parent | e4832f3d643abf8adf1f5872614b020c833afd0b (diff) |
Re-enable intel arc fix (but only for intel systems)
Diffstat (limited to 'src/capture')
-rw-r--r-- | src/capture/capture.c | 8 | ||||
-rw-r--r-- | src/capture/kms_vaapi.c | 2 |
2 files changed, 4 insertions, 6 deletions
diff --git a/src/capture/capture.c b/src/capture/capture.c index ed7faa9..5e1f546 100644 --- a/src/capture/capture.c +++ b/src/capture/capture.c @@ -116,8 +116,7 @@ bool gsr_capture_base_setup_vaapi_textures(gsr_capture_base *self, AVFrame *fram const int layer = i; const int plane = 0; - //const uint64_t modifier = prime->objects[prime->layers[layer].object_index[plane]].drm_format_modifier; - + const uint64_t modifier = prime->objects[prime->layers[layer].object_index[plane]].drm_format_modifier; const intptr_t img_attr[] = { EGL_LINUX_DRM_FOURCC_EXT, formats[i], EGL_WIDTH, prime->width / div[i], @@ -125,9 +124,8 @@ bool gsr_capture_base_setup_vaapi_textures(gsr_capture_base *self, AVFrame *fram EGL_DMA_BUF_PLANE0_FD_EXT, prime->objects[prime->layers[layer].object_index[plane]].fd, EGL_DMA_BUF_PLANE0_OFFSET_EXT, prime->layers[layer].offset[plane], EGL_DMA_BUF_PLANE0_PITCH_EXT, prime->layers[layer].pitch[plane], - // TODO: - //EGL_DMA_BUF_PLANE0_MODIFIER_LO_EXT, modifier & 0xFFFFFFFFULL, - //EGL_DMA_BUF_PLANE0_MODIFIER_HI_EXT, modifier >> 32ULL, + EGL_DMA_BUF_PLANE0_MODIFIER_LO_EXT, modifier & 0xFFFFFFFFULL, + EGL_DMA_BUF_PLANE0_MODIFIER_HI_EXT, modifier >> 32ULL, EGL_NONE }; diff --git a/src/capture/kms_vaapi.c b/src/capture/kms_vaapi.c index a7e8182..b9c9ee5 100644 --- a/src/capture/kms_vaapi.c +++ b/src/capture/kms_vaapi.c @@ -57,7 +57,7 @@ static bool gsr_capture_kms_vaapi_should_stop(gsr_capture *cap, bool *err) { static int gsr_capture_kms_vaapi_capture(gsr_capture *cap, AVFrame *frame) { gsr_capture_kms_vaapi *cap_kms = cap->priv; - gsr_capture_kms_capture(&cap_kms->kms, frame, cap_kms->params.hdr, false, false, cap_kms->params.record_cursor); + gsr_capture_kms_capture(&cap_kms->kms, frame, cap_kms->params.hdr, cap_kms->params.egl->gpu_info.vendor == GSR_GPU_VENDOR_INTEL, false, cap_kms->params.record_cursor); return 0; } |