mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-20 23:36:38 +00:00
xvimagesink: mark as NO_SHARE
We don't want to share the memory between buffers because that could cause the memory of the bufferpool buffers to be copied and replaced with other memory. This is a hopefully a temporary fix until we can figure out how to share properly. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=695203
This commit is contained in:
parent
ce626fc3d8
commit
b740edff06
2 changed files with 3 additions and 3 deletions
|
@ -397,8 +397,8 @@ xvimage_memory_alloc (GstXvImageBufferPool * xvpool)
|
||||||
error_caught = FALSE;
|
error_caught = FALSE;
|
||||||
XSetErrorHandler (handler);
|
XSetErrorHandler (handler);
|
||||||
|
|
||||||
gst_memory_init (GST_MEMORY_CAST (mem), 0, xvpool->allocator,
|
gst_memory_init (GST_MEMORY_CAST (mem), GST_MEMORY_FLAG_NO_SHARE,
|
||||||
NULL, mem->size + align, align, offset, mem->size);
|
xvpool->allocator, NULL, mem->size + align, align, offset, mem->size);
|
||||||
|
|
||||||
g_mutex_unlock (&xvimagesink->x_lock);
|
g_mutex_unlock (&xvimagesink->x_lock);
|
||||||
|
|
||||||
|
|
|
@ -1849,7 +1849,7 @@ gst_xvimagesink_show_frame (GstVideoSink * vsink, GstBuffer * buf)
|
||||||
goto no_buffer;
|
goto no_buffer;
|
||||||
|
|
||||||
GST_CAT_LOG_OBJECT (GST_CAT_PERFORMANCE, xvimagesink,
|
GST_CAT_LOG_OBJECT (GST_CAT_PERFORMANCE, xvimagesink,
|
||||||
"slow copy into bufferpool buffer %p", to_put);
|
"slow copy buffer %p into bufferpool buffer %p", buf, to_put);
|
||||||
|
|
||||||
if (!gst_video_frame_map (&src, &xvimagesink->info, buf, GST_MAP_READ))
|
if (!gst_video_frame_map (&src, &xvimagesink->info, buf, GST_MAP_READ))
|
||||||
goto invalid_buffer;
|
goto invalid_buffer;
|
||||||
|
|
Loading…
Reference in a new issue