GNOME Bugzilla – Bug 723096
decodebin: Make it possible to register multiple handlers to decodebin's autoplug-select signal
Last modified: 2014-01-28 08:15:10 UTC
Created attachment 267303 [details] [review] proposed change In Firefox I want to apply a whitelist to the streams that are decoded by playbin. A simple approach is to get the uridecodebin instance inside playbin and connect to its autoplug-select signal. Unfortunately this doesn't currently work because of the way autoplug-select is accumulated. This bug has some context: https://bugzilla.mozilla.org/show_bug.cgi?id=959007#c4
Review of attachment 267303 [details] [review]: Makes sense, just a typo in the comment :) ::: gst/playback/gsturidecodebin.c @@ +275,3 @@ + /* Call the next handler in the chain (if any) when the current callback + * returns TRY. This makes it possible to register separate autoplug-select + * handlers from different code sites that implement different TRY/EXPOSE/SKIP sides, not sites?
commit 6a699b6c40cd6da3be5e669909093caab7cd174e Author: Alessandro Decina <alessandro.d@gmail.com> Date: Tue Jan 28 00:19:07 2014 +1100 decodebin: make it possible to register multiple handlers for autoplug-select Change the way autoplug-select is accumulated so that it's possible to have multiple handlers. The handlers keep getting called as long as they keep returning GST_AUTOPLUG_SELECT_TRY. One practical example of when this is needed is when hooking into playbin's uridecodebin, which is perhaps not very elegant but the only way to influence which streams playbin autoplugs/exposes. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=723096