diff options
author | dec05eba <dec05eba@protonmail.com> | 2023-07-17 22:27:14 +0200 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2023-07-18 02:14:27 +0200 |
commit | 0a2806972f51109024a114a1c8ad5396e9d535c7 (patch) | |
tree | 6db01b3f6606a51ca9ef7c1299c5f0b9c452d090 /src/capture/xcomposite_vaapi.c | |
parent | 93225fbc3bfe577adcfe91cce6ab87dfea6b0ff3 (diff) |
Experimental wayland support, test 1
Diffstat (limited to 'src/capture/xcomposite_vaapi.c')
-rw-r--r-- | src/capture/xcomposite_vaapi.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/capture/xcomposite_vaapi.c b/src/capture/xcomposite_vaapi.c index bb92f7f..99c4a50 100644 --- a/src/capture/xcomposite_vaapi.c +++ b/src/capture/xcomposite_vaapi.c @@ -147,7 +147,7 @@ static int gsr_capture_xcomposite_vaapi_start(gsr_capture *cap, AVCodecContext * // TODO: Get select and add these on top of it and then restore at the end. Also do the same in other xcomposite XSelectInput(cap_xcomp->dpy, cap_xcomp->params.window, StructureNotifyMask | ExposureMask); - if(!gsr_egl_load(&cap_xcomp->egl, cap_xcomp->dpy)) { + if(!gsr_egl_load(&cap_xcomp->egl, cap_xcomp->dpy, false)) { fprintf(stderr, "gsr error: gsr_capture_xcomposite_vaapi_start: failed to load opengl\n"); return -1; } @@ -373,6 +373,7 @@ static void gsr_capture_xcomposite_vaapi_tick(gsr_capture *cap, AVCodecContext * EGL_NONE, }; + // TODO: Use the window texture egl image directly instead of exporting it to opengl texture and then importing it to egl image again EGLImage img = cap_xcomp->egl.eglCreateImage(cap_xcomp->egl.egl_display, cap_xcomp->egl.egl_context, EGL_GL_TEXTURE_2D, (EGLClientBuffer)(uint64_t)window_texture_get_opengl_texture_id(&cap_xcomp->window_texture), pixmap_attrs); if(!img) { fprintf(stderr, "gsr error: gsr_capture_xcomposite_vaapi_tick: eglCreateImage failed\n"); |