mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-02 12:32:29 +00:00
gldownload: handle passthrough without a critical
With passthrough mode, gldownload/glbasefilter may not ever retrieve a relevant GstGLContext as it doesn't actually query the surrounding elements. Guard against that. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4800>
This commit is contained in:
parent
33e789e067
commit
2f2eef88cb
1 changed files with 8 additions and 3 deletions
|
@ -1237,9 +1237,14 @@ gst_gl_download_element_prepare_output_buffer (GstBaseTransform * bt,
|
|||
(void) bclass;
|
||||
|
||||
in_sync_meta = gst_buffer_get_gl_sync_meta (inbuf);
|
||||
if (in_sync_meta)
|
||||
gst_gl_sync_meta_wait (in_sync_meta, context);
|
||||
|
||||
if (in_sync_meta) {
|
||||
if (context) {
|
||||
gst_gl_sync_meta_wait (in_sync_meta, context);
|
||||
} else if (dl->mode != GST_GL_DOWNLOAD_MODE_PASSTHROUGH) {
|
||||
GST_WARNING_OBJECT (dl, "No configured GL context in non-passthrough "
|
||||
"mode. Cannot wait on incoming `GstGLSyncMeta`");
|
||||
}
|
||||
}
|
||||
#if GST_GL_HAVE_PLATFORM_EGL && defined(HAVE_NVMM)
|
||||
if (dl->mode == GST_GL_DOWNLOAD_MODE_NVMM) {
|
||||
GstNVMMParentMeta *buf_meta = gst_buffer_get_nvmm_parent_meta (inbuf);
|
||||
|
|
Loading…
Reference in a new issue