[Bug 786739] appsink: handle drain query

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Aug 24 10:24:25 UTC 2017


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

Julien Isorce <julien.isorce at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |INVALID

--- Comment #2 from Julien Isorce <julien.isorce at gmail.com> ---
>> shouldn't it rather block until all these buffers have been consumed
>> / pulled by the app?

Looks correct indeed and the app can deal with the following to clear any local
ref it keeps:

pad = gst_element_get_static_pad (appsink, "sink");
gst_pad_add_probe (pad, GST_PAD_PROBE_TYPE_QUERY_DOWNSTREAM, query_cb,
user_data, NULL);

static GstPadProbeReturn 
query_cb (GstPad * pad, GstPadProbeInfo * info, gpointer user_data) {

  GstQuery *query = GST_PAD_PROBE_INFO_QUERY (info);
    switch (GST_QUERY_TYPE (query)) {
      case GST_QUERY_DRAIN:
      {
        // TODO clear all local/old gst buffers that came out from appsink.
        break;
      }
      default:
        break;
    }
    return GST_PAD_PROBE_OK;
  }

}

Thx!

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