[Bug 721289] gstpad: using multiple blocking probes doesn't work as expected

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue Dec 31 12:52:00 PST 2013


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

Pedro Corte-Real <pedro> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pedro at pedrocr.net

--- Comment #1 from Pedro Corte-Real <pedro at pedrocr.net> 2013-12-31 20:51:55 UTC ---
On IRC we had discussed the workaround for there not being a
gst_pad_probe_unblock() of adding the probe a second time and then removing the
original version of the probe. This bug makes that unworkable as the removal
doesn't unblock the probe because there's already another blocking probe
installed.

It seems the API needs to pick either one of two options:

1) The block is of the probe and not of the pad so:
  - All callbacks should be called on matching events even if a previous one
has blocked. A pad may become blocked by two different probes
  - There should be a gst_pad_probe_unblock(pad, probe) that unblocks only that
single probe and potentially leaves the pad blocked if there's another blocking
probe in effect.

2) The block is of the pad so:
  - We need a gst_pad_unblock(pad) that unblocks the pad whatever the blocking
probe was

Options 1) seems more flexible but isn't backwards compatible as it requires
all callbacks to be called even if the first has blocked the pad.

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