[Bug 796539] vaapiencoder: (baseclass): wrap in a while loop g_cond_wait() as documented

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Fri Jun 15 10:21:15 UTC 2018


https://bugzilla.gnome.org/show_bug.cgi?id=796539

--- Comment #9 from Víctor Manuel Jáquez Leal <vjaquez at igalia.com> ---
Review of attachment 372663:
 --> (https://bugzilla.gnome.org/review?bug=796539&attachment=372663)

::: gst-libs/gst/vaapi/gstvaapiencoder.c
@@ +438,3 @@
+      g_cond_wait (&encoder->codedbuf_free, &encoder->mutex);
+      codedbuf_proxy = gst_vaapi_coded_buffer_proxy_new_from_pool (pool);
+      if (codedbuf_proxy)

I don't think codedbuf_proxy can be the flag to check if the cond signaled
falsely. We need an extra flag in _coded_buffer_proxy_released_notify() to
check in gst_vaapi_encoder_create_coded_buffer()

Though, that is not clean. We would need a new API in GstVaapiVideoPool to do
an async pop in its queue.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list