summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlessandro Decina <alessandro.d@gmail.com>2014-11-12 15:35:36 +0100
committerSebastian Dröge <sebastian@centricular.com>2014-11-19 17:24:53 +0100
commitc3acc296e1ab3d1d74e7168b0e385eb655fd67df (patch)
tree422655129fb48ee8159a976bb8399efa46dd52ef
parent4b8867138bd1509e688c80c5c99da3cddefb96f0 (diff)
downloadgstreamer-plugins-bad-c3acc296e1ab3d1d74e7168b0e385eb655fd67df.tar.gz
coremediabuffer: set ->pixel_buf for CVPixelBuffer buffers
Fix a bug for which we never actually set ->pixel_buf to non-NULL for CVPixelBuffer buffers.
-rw-r--r--sys/applemedia/coremediabuffer.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/sys/applemedia/coremediabuffer.c b/sys/applemedia/coremediabuffer.c
index 548f858fb..74b814b9d 100644
--- a/sys/applemedia/coremediabuffer.c
+++ b/sys/applemedia/coremediabuffer.c
@@ -238,13 +238,11 @@ gst_core_media_buffer_new (CMSampleBufferRef sample_buf,
gboolean use_video_meta)
{
CVImageBufferRef image_buf;
- CVPixelBufferRef pixel_buf;
CMBlockBufferRef block_buf;
GstCoreMediaMeta *meta;
GstBuffer *buf;
image_buf = CMSampleBufferGetImageBuffer (sample_buf);
- pixel_buf = NULL;
block_buf = CMSampleBufferGetDataBuffer (sample_buf);
buf = gst_buffer_new ();
@@ -258,19 +256,19 @@ gst_core_media_buffer_new (CMSampleBufferRef sample_buf,
CFRetain (block_buf);
meta->sample_buf = sample_buf;
meta->image_buf = image_buf;
- meta->pixel_buf = pixel_buf;
+ meta->pixel_buf = NULL;
meta->block_buf = block_buf;
if (image_buf != NULL && CFGetTypeID (image_buf) == CVPixelBufferGetTypeID ()) {
GstVideoInfo info;
gboolean has_padding = FALSE;
- pixel_buf = (CVPixelBufferRef) image_buf;
- if (!gst_video_info_init_from_pixel_buffer (&info, pixel_buf)) {
+ meta->pixel_buf = (CVPixelBufferRef) image_buf;
+ if (!gst_video_info_init_from_pixel_buffer (&info, meta->pixel_buf)) {
goto error;
}
- if (!gst_core_media_buffer_wrap_pixel_buffer (buf, &info, pixel_buf,
+ if (!gst_core_media_buffer_wrap_pixel_buffer (buf, &info, meta->pixel_buf,
&has_padding)) {
goto error;
}