[Bug 748922] New: vtdec: duplicating input frame's metas (inc. source H264 sample buffer)

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Mon May 4 19:47:41 PDT 2015


https://bugzilla.gnome.org/show_bug.cgi?id=748922

            Bug ID: 748922
           Summary: vtdec: duplicating input frame's metas (inc. source
                    H264 sample buffer)
    Classification: Platform
           Product: GStreamer
           Version: git master
                OS: Mac OS
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gst-plugins-bad
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: ilya.konstantinov at gmail.com
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

In 854645861790588d7bca72b79a56c1b1d5d7689f, Alessandro Decina introduced:

-  buf = gst_core_video_buffer_new (self->ctx, cvbuf);
-  gst_buffer_copy_metadata (buf, self->cur_inbuf,
-      GST_BUFFER_COPY_FLAGS | GST_BUFFER_COPY_TIMESTAMPS);
+  buf = gst_core_video_buffer_new (self->ctx, cvbuf, &self->vinfo);
+  gst_buffer_copy_into (buf, self->cur_inbuf, GST_BUFFER_COPY_METADATA, 0,
-1);

In b1a756fda730d5edde0d6d83df723d8923008f98, Alessandro Decina added:

-  gst_buffer_copy_into (buf, src_buf, GST_BUFFER_COPY_METADATA, 0, -1);
...
+  gst_buffer_copy_into (buf, frame->input_buffer,
+      GST_BUFFER_COPY_METADATA | GST_BUFFER_COPY_FLAGS, 0, -1);

Since I've implemented copying for Core Media Meta (see bug 747216) -- which in
itself is required e.g. to pass intervideo* boundaries -- we begun retaining
the input CMSampleBuffer (i.e. the H.264 data) in the output frame, which is
certainly not something we want.

What is the rationale behind these changes?

GST_BUFFER_COPY_FLAGS - I'd assume GstVideoDecoder does all the needed flags
work.
GST_BUFFER_COPY_TIMESTAMPS - The timestamps are already copied as part of
gst_video_decoder_finish_frame.
GST_BUFFER_COPY_METADATA - Any metas we should actually copy? (I see no other
decoder doing that)

-- 
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