GNOME Bugzilla – Bug 704916
Reconfigure events set GST_PAD_FLAG_NEED_RECONFIGURE flag on sink pad only
Last modified: 2013-07-26 08:10:50 UTC
Created attachment 250180 [details] [review] Patch When sending reconfigure event on pads, the GST_PAD_FLAG_NEED_RECONFIGURE flag is only set for sink pad in gstpad.c whereas the documentation says: "The RECONFIGURE event will set the GST_PAD_FLAG_NEED_RECONFIGURE on all pads that it travels over" (http://gstreamer.freedesktop.org/data/doc/gstreamer/head/pwg/html/section-nego-upstream.html). I don't know whether the doc or the code is wrong or if I am missing something. In case, it should be set to any pad as specified in the doc, I provide a patch in attachment.
The reconfigure event is an upstream event, so you would call gst_pad_push_event() on a sinkpad. gst_pad_push_event() then sets the reconfigure flag if it's a sinkpad (it always will), and call gst_pad_send_event() on the peerpad (a srcpad). gst_pad_send_event() will set the reconfigure flag for all srcpads (it always is an srcpad). So overall all the sinkpads and srcpads should have the flag set later. How did you get a problem with this, what can be done to reproduce it?
I guess the "I am missing something" is the answer... Actually I was digging into the code for another issue and saw this condition but I missed the fact that reconfigure event is upstream. Thx for your clarification.