[Bug 734342] New: pad: allow probes to remove the data item whilst returning PROBE_OK

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Aug 6 02:41:20 PDT 2014


https://bugzilla.gnome.org/show_bug.cgi?id=734342
  GStreamer | gstreamer (core) | git

           Summary: pad: allow probes to remove the data item whilst
                    returning PROBE_OK
    Classification: Platform
           Product: GStreamer
           Version: git
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gstreamer (core)
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: t.i.m at zen.co.uk
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


Created an attachment (id=282644)
 View: https://bugzilla.gnome.org/attachment.cgi?id=282644
 Review: https://bugzilla.gnome.org/review?bug=734342&attachment=282644

pad: allow probes to remove the data item whilst returning PROBE_OK

If we just replace the data item in a probe info structure with NULL without
returning PROBE_DROP, GStreamer ends up sending a NULL buffer/event to the next
element. Arguably this should work, and unfortunately the ProbeReturn isn't a
flag but a simple enum.

    Use case: we want to block the source pad of a leaky queue and
    drop the buffer that causes the block. If we return PROBE_DROP
    then the buffer gets dropped, but we get called again. If we
    return PROBE_OK we can't easily drop the buffer. If we just
    replace the item into the GstPadProbeInfo structure with NULL,
    GStreamer will push a NULL buffer to the next element when we
    unblock the pad probe. This patch ensures it doesn't do that.

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