diff options
author | Sebastian Dröge <sebastian@centricular.com> | 2014-09-19 14:32:46 +0300 |
---|---|---|
committer | Sebastian Dröge <sebastian@centricular.com> | 2014-10-14 09:57:47 +0200 |
commit | 4fec5c5686f608486fdd5f11a2b4b01565f02713 (patch) | |
tree | eecf0d957676ce087670dbc8aa66f29834e57405 | |
parent | d96723463aae904d82ea1c6ada371735858ab3fe (diff) | |
download | gstreamer-plugins-bad-4fec5c5686f608486fdd5f11a2b4b01565f02713.tar.gz |
applemedia: We need to map the coremedia buffers in non-readonly mode
Our buffers claim to be writable so other elements expect to be able
to write there without losing their changes.
-rw-r--r-- | sys/applemedia/coremediabuffer.c | 6 | ||||
-rw-r--r-- | sys/applemedia/corevideobuffer.c | 5 |
2 files changed, 4 insertions, 7 deletions
diff --git a/sys/applemedia/coremediabuffer.c b/sys/applemedia/coremediabuffer.c index 73995f0dd..548f858fb 100644 --- a/sys/applemedia/coremediabuffer.c +++ b/sys/applemedia/coremediabuffer.c @@ -25,8 +25,7 @@ static void gst_core_media_meta_free (GstCoreMediaMeta * meta, GstBuffer * buf) { if (meta->image_buf != NULL) { - CVPixelBufferUnlockBaseAddress (meta->image_buf, - kCVPixelBufferLock_ReadOnly); + CVPixelBufferUnlockBaseAddress (meta->image_buf, 0); CVBufferRelease (meta->image_buf); } if (meta->block_buf != NULL) { @@ -93,8 +92,7 @@ gst_core_media_buffer_wrap_pixel_buffer (GstBuffer * buf, GstVideoInfo * info, GstVideoMeta *video_meta; UInt32 size; - if (CVPixelBufferLockBaseAddress (pixel_buf, - kCVPixelBufferLock_ReadOnly) != kCVReturnSuccess) { + if (CVPixelBufferLockBaseAddress (pixel_buf, 0) != kCVReturnSuccess) { GST_ERROR ("Could not lock pixel buffer base address"); return FALSE; } diff --git a/sys/applemedia/corevideobuffer.c b/sys/applemedia/corevideobuffer.c index 0e08398c2..b1da334cb 100644 --- a/sys/applemedia/corevideobuffer.c +++ b/sys/applemedia/corevideobuffer.c @@ -23,7 +23,7 @@ static void gst_core_video_meta_free (GstCoreVideoMeta * meta, GstBuffer * buf) { if (meta->pixbuf != NULL) { - CVPixelBufferUnlockBaseAddress (meta->pixbuf, kCVPixelBufferLock_ReadOnly); + CVPixelBufferUnlockBaseAddress (meta->pixbuf, 0); } CVBufferRelease (meta->cvbuf); @@ -74,8 +74,7 @@ gst_core_video_buffer_new (CVBufferRef cvbuf, GstVideoInfo * vinfo) pixbuf = (CVPixelBufferRef) cvbuf; - if (CVPixelBufferLockBaseAddress (pixbuf, - kCVPixelBufferLock_ReadOnly) != kCVReturnSuccess) { + if (CVPixelBufferLockBaseAddress (pixbuf, 0) != kCVReturnSuccess) { goto error; } |