GstEvent * toplevel_seek);
static gboolean _update_pipeline_func (GnlComposition * comp);
static gboolean _commit_func (GnlComposition * comp);
-static gboolean lock_child_state (GValue * item, GValue * ret,
- gpointer udata G_GNUC_UNUSED);
static gboolean
set_child_caps (GValue * item, GValue * ret G_GNUC_UNUSED, GnlObject * comp);
static GstEvent *get_new_seek_event (GnlComposition * comp, gboolean initial,
return TRUE;
}
-static gboolean
-lock_child_state (GValue * item, GValue * ret G_GNUC_UNUSED,
- gpointer udata G_GNUC_UNUSED)
-{
- GstElement *child = g_value_get_object (item);
-
- GST_DEBUG_OBJECT (child, "locking state");
- gst_element_set_locked_state (child, TRUE);
-
- return TRUE;
-}
-
static void
reset_children (GnlComposition * comp)
{
GST_DEBUG_OBJECT (comp,
"Setting all children to READY and locking their state");
- children = gst_bin_iterate_elements (GST_BIN (comp->priv->current_bin));
-
- while (G_UNLIKELY (gst_iterator_fold (children,
- (GstIteratorFoldFunction) lock_child_state, NULL,
- NULL) == GST_ITERATOR_RESYNC)) {
- gst_iterator_resync (children);
- }
- gst_iterator_free (children);
-
/* Set caps on all objects */
if (G_UNLIKELY (!gst_caps_is_any (GNL_OBJECT (comp)->caps))) {
children = gst_bin_iterate_elements (GST_BIN (comp->priv->current_bin));