glsink: Enable sync meta on pools we offer

As the upload is asynchronous, we need to enable the sync meta to
gain correct rendering. The buffer pool receiver don't know about
that.
This commit is contained in:
Nicolas Dufresne 2015-08-15 14:31:15 +02:00
parent 74486ab7e1
commit f935b2c547
3 changed files with 7 additions and 0 deletions

View file

@ -1576,6 +1576,8 @@ gst_glimage_sink_propose_allocation (GstBaseSink * bsink, GstQuery * query)
pool = gst_gl_buffer_pool_new (glimage_sink->context);
config = gst_buffer_pool_get_config (pool);
gst_buffer_pool_config_set_params (config, caps, size, 0, 0);
gst_buffer_pool_config_add_option (config,
GST_BUFFER_POOL_OPTION_GL_SYNC_META);
if (!gst_buffer_pool_set_config (pool, config)) {
g_object_unref (pool);

View file

@ -249,6 +249,9 @@ gst_gtk_gl_sink_propose_allocation (GstBaseSink * bsink, GstQuery * query)
config = gst_buffer_pool_get_config (pool);
gst_buffer_pool_config_set_params (config, caps, size, 0, 0);
gst_buffer_pool_config_add_option (config,
GST_BUFFER_POOL_OPTION_GL_SYNC_META);
if (!gst_buffer_pool_set_config (pool, config))
goto config_failed;

View file

@ -231,6 +231,8 @@ _gl_memory_upload_propose_allocation (gpointer impl, GstQuery * decide_query,
/* the normal size of a frame */
size = info.size;
gst_buffer_pool_config_set_params (config, caps, size, 0, 0);
gst_buffer_pool_config_add_option (config,
GST_BUFFER_POOL_OPTION_GL_SYNC_META);
if (!gst_buffer_pool_set_config (pool, config)) {
gst_object_unref (pool);