The newer GStreamer bindings don't have the convenient method for doing
this directly, so stitch it together with the low-level stuff that is
provided.
"Link the elements ELTS together, in order."
GS.element_link_many(*elts)
"Link the elements ELTS together, in order."
GS.element_link_many(*elts)
+def bin_children(bin):
+ "Iterate over the (direct) children of a BIN."
+ for elt in bin.elements(): yield elt
+
class GStreamerProgressEyecandy (ProgressEyecandy):
"""
Provide amusement while GStreamer is busy doing something.
class GStreamerProgressEyecandy (ProgressEyecandy):
"""
Provide amusement while GStreamer is busy doing something.
## things from being too awful.)
me.cap = None
me.dcap = None
## things from being too awful.)
me.cap = None
me.dcap = None
- for e in decoder.elements():
+ for e in bin_children(decoder):
if e.get_factory().get_name() == 'typefind':
tfelt = e
break
if e.get_factory().get_name() == 'typefind':
tfelt = e
break