* The #GstCaps on the buffer will describe the format of the buffer.
*/
g_object_class_install_property (gobject_klass, PROP_FRAME,
- gst_param_spec_mini_object ("frame", "Frame",
+ g_param_spec_boxed ("frame", "Frame",
"The last frame (NULL = no video available)",
GST_TYPE_BUFFER, G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
g_object_class_install_property (gobject_klass, PROP_FONT_DESC,
{
GstIterator *it = gst_element_iterate_src_pads (suburidecodebin);
GstPad *sinkpad;
+ GValue item = { 0, };
- if (it && gst_iterator_next (it, (gpointer) & sinkpad) == GST_ITERATOR_OK
- && sinkpad) {
+ if (it && gst_iterator_next (it, &item) == GST_ITERATOR_OK
+ && ((sinkpad = g_value_get_object (&item)) != NULL)) {
GstEvent *event;
event =
GST_DEBUG_OBJECT (suburidecodebin, "Seeking to the beginning failed!");
}
- gst_object_unref (sinkpad);
+ g_value_unset (&item);
}
if (it)
{
GstIterator *it = gst_element_iterate_src_pads (suburidecodebin);
gboolean done = FALSE;
+ GValue item = { 0, };
GST_DEBUG_OBJECT (suburidecodebin, "Blocking suburidecodebin: %d", block);
while (!done) {
GstPad *sinkpad;
- switch (gst_iterator_next (it, (gpointer) & sinkpad)) {
+ switch (gst_iterator_next (it, &item)) {
case GST_ITERATOR_OK:
+ sinkpad = g_value_get_object (&item);
gst_pad_set_blocked_async (sinkpad, block, _suburidecodebin_blocked_cb,
NULL);
- gst_object_unref (sinkpad);
+ g_value_reset (&item);
break;
case GST_ITERATOR_DONE:
done = TRUE;
break;
}
}
+ g_value_unset (&item);
gst_iterator_free (it);
}
GstMessage *new_msg;
GstIterator *it;
gboolean done = FALSE;
+ GValue item = { 0, };
gst_message_parse_error (msg, &err, &debug);
new_msg = gst_message_new_warning (msg->src, err, debug);
GstPad *p = NULL;
GstIteratorResult res;
- res = gst_iterator_next (it, (gpointer) & p);
+ res = gst_iterator_next (it, &item);
switch (res) {
case GST_ITERATOR_DONE:
done = TRUE;
break;
case GST_ITERATOR_OK:
+ p = g_value_get_object (&item);
pad_removed_cb (NULL, p, group);
- gst_object_unref (p);
+ g_value_reset (&item);
break;
case GST_ITERATOR_RESYNC:
break;
}
}
+ g_value_unset (&item);
if (it)
gst_iterator_free (it);
}
if (GST_IS_EVENT (object)
- && GST_EVENT_TYPE (GST_EVENT_CAST (object)) == GST_EVENT_NEWSEGMENT) {
+ && GST_EVENT_TYPE (GST_EVENT_CAST (object)) == GST_EVENT_SEGMENT) {
/* push the event first, then send the delayed one */
gst_event_ref (GST_EVENT_CAST (object));
gst_pad_send_event (pad, GST_EVENT_CAST (object));
playbin = group->playbin;
- caps = gst_pad_get_caps_reffed (pad);
+ caps = gst_pad_get_caps (pad, NULL);
s = gst_caps_get_structure (caps, 0);
name = gst_structure_get_name (s);
if (GST_STATE (sink) < GST_STATE_READY)
gst_element_set_state (sink, GST_STATE_READY);
- sinkcaps = gst_pad_get_caps_reffed (sinkpad);
+ sinkcaps = gst_pad_get_caps (sinkpad, NULL);
if (!gst_caps_is_any (sinkcaps))
ret = !gst_pad_accept_caps (sinkpad, caps);
gst_caps_unref (sinkcaps);
if (GST_STATE (sink) < GST_STATE_READY)
gst_element_set_state (sink, GST_STATE_READY);
- sinkcaps = gst_pad_get_caps_reffed (sinkpad);
+ sinkcaps = gst_pad_get_caps (sinkpad, NULL);
if (!gst_caps_is_any (sinkcaps))
ret = !gst_pad_accept_caps (sinkpad, caps);
gst_caps_unref (sinkcaps);
if (GST_STATE (sink) < GST_STATE_READY)
gst_element_set_state (sink, GST_STATE_READY);
- sinkcaps = gst_pad_get_caps_reffed (sinkpad);
+ sinkcaps = gst_pad_get_caps (sinkpad, NULL);
if (!gst_caps_is_any (sinkcaps))
ret = !gst_pad_accept_caps (sinkpad, caps);
gst_caps_unref (sinkcaps);
GST_DEBUG_OBJECT (playbin, "select group %p for %s:%s, %" GST_PTR_FORMAT,
group, GST_DEBUG_PAD_NAME (pad), caps);
- GST_DEBUG_OBJECT (playbin, "checking factory %s",
- GST_PLUGIN_FEATURE_NAME (factory));
+ GST_DEBUG_OBJECT (playbin, "checking factory %s", GST_OBJECT_NAME (factory));
/* if it's not a sink, we just make decodebin try it */
if (!gst_element_factory_list_is_type (factory,