[Bug 727885] New: coremediabuffer: handle stride alignment
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Wed Apr 9 03:08:33 PDT 2014
https://bugzilla.gnome.org/show_bug.cgi?id=727885
GStreamer | gst-plugins-bad | git
Summary: coremediabuffer: handle stride alignment
Classification: Platform
Product: GStreamer
Version: git
OS/Version: Mac OS
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: gst-plugins-bad
AssignedTo: gstreamer-bugs at lists.freedesktop.org
ReportedBy: matthieu.bouron at collabora.com
QAContact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
This following patch make the coremedia buffers handle the stride alignment of
the CVPixel buffers through the use of the video meta API. It is based on the
corevideobuffer code.
Properly handle the stride alignment is required by iosavassetsrc (which i'm
currently porting to 1.0).
It changes the API of coremediabuffer, so an element can decide wether or not
to use the video meta API (according to downstream capabilities).
GstBuffer * gst_core_media_buffer_new (CMSampleBufferRef sample_buf);
->
GstBuffer * gst_core_media_buffer_new (CMSampleBufferRef sample_buf, gboolean
use_video_meta);
Also, If the video meta API is not used and the cv pixel buffer contains
padding, the core media buffer frame is copied to a SYSMEM buffer frame, thus
removing the padding. In this case a regular GstBuffer is returned by the
function (not a GstCoreMediaBuffer).
This fallback method can be provided as a separate public function so it is the
element responsability of removing the padding. In this case the
gst_core_media_buffer_new method must return somehow the fact that the
underlying buffer contains padding to avoid an unnecessary copy.
Note: this is work in progress, every element using coremedia buffers (vtenc,
avfvideosrc) won't compile.
What do you think ?
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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