Decodebin query (autoplug externally created elements)

ruchikachaddha ruchika.chaddha at gmail.com
Tue May 5 03:48:50 PDT 2015


I need advice in customizing decodebin to accept externally created elements.
Decodebin generates "autoplug-select" signal on finding factory for the
given caps, this signal is generated once for each factory. I want to
leverage on this signal callback. I plan to add an enum in
GstAutoplugSelectResult
typedef enum {
  GST_AUTOPLUG_SELECT_TRY,
  GST_AUTOPLUG_SELECT_EXPOSE,
  GST_AUTOPLUG_SELECT_SKIP
#if 1 // enum added for plugging externally created factory
  ,GST_AUTOPLUG_SELECT_EXTERNALLY_CREATED_FACTORY
#endif
} GstAutoplugSelectResult;

This enum shall be returned when user want to provide its own element. Along
with this, a message will also be posted to decodebin (application msg?)
which contains element pointer for this factory.

On the other side, decodebin on receiving
GST_AUTOPLUG_SELECT_EXTERNALLY_CREATED_FACTORY return value can wait for
this message (via gst_bus_poll). Once the message is received, decodebin
will get the element pointer, which it can add to bin and hence avoid
factory_create internally.
Does it sound workable? Please suggest if there's any better way to do this?



--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Decodebin-query-autoplug-externally-created-elements-tp4671790.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.


More information about the gstreamer-devel mailing list