diff options
author | Sebastian Dröge <slomo@circular-chaos.org> | 2013-09-19 12:31:13 +0200 |
---|---|---|
committer | Sebastian Dröge <slomo@circular-chaos.org> | 2013-09-19 12:31:13 +0200 |
commit | 63f3a12981d4257915f0c1651ab409a08a1c66f8 (patch) | |
tree | aede32630d47ab14da0fb9ca006a363ae3407dc3 /libs | |
parent | 63f38155df9cb281e4d48dbc14389e66446436f2 (diff) |
Imported Upstream version 1.1.90upstream/1.1.90
Diffstat (limited to 'libs')
-rw-r--r-- | libs/Makefile.in | 2 | ||||
-rw-r--r-- | libs/gst/Makefile.in | 2 | ||||
-rw-r--r-- | libs/gst/base/Makefile.in | 2 | ||||
-rw-r--r-- | libs/gst/base/gstbasesink.c | 2 | ||||
-rw-r--r-- | libs/gst/base/gstbasesrc.c | 13 | ||||
-rw-r--r-- | libs/gst/base/gstbasetransform.c | 26 | ||||
-rw-r--r-- | libs/gst/base/gstcollectpads.c | 4 | ||||
-rw-r--r-- | libs/gst/check/Makefile.in | 2 | ||||
-rw-r--r-- | libs/gst/check/libcheck/Makefile.in | 2 | ||||
-rw-r--r-- | libs/gst/controller/Makefile.in | 2 | ||||
-rw-r--r-- | libs/gst/controller/gstargbcontrolbinding.c | 12 | ||||
-rw-r--r-- | libs/gst/controller/gstdirectcontrolbinding.c | 3 | ||||
-rw-r--r-- | libs/gst/helpers/Makefile.in | 2 | ||||
-rw-r--r-- | libs/gst/net/Makefile.in | 2 |
14 files changed, 54 insertions, 22 deletions
diff --git a/libs/Makefile.in b/libs/Makefile.in index bd7a5c8..895dcb3 100644 --- a/libs/Makefile.in +++ b/libs/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.13.3 from Makefile.am. +# Makefile.in generated by automake 1.14 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. diff --git a/libs/gst/Makefile.in b/libs/gst/Makefile.in index 20ca40a..08eb87c 100644 --- a/libs/gst/Makefile.in +++ b/libs/gst/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.13.3 from Makefile.am. +# Makefile.in generated by automake 1.14 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. diff --git a/libs/gst/base/Makefile.in b/libs/gst/base/Makefile.in index c28bbc5..9c97366 100644 --- a/libs/gst/base/Makefile.in +++ b/libs/gst/base/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.13.3 from Makefile.am. +# Makefile.in generated by automake 1.14 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. diff --git a/libs/gst/base/gstbasesink.c b/libs/gst/base/gstbasesink.c index 64c0b77..9fcacd6 100644 --- a/libs/gst/base/gstbasesink.c +++ b/libs/gst/base/gstbasesink.c @@ -3532,7 +3532,7 @@ gst_base_sink_chain_list (GstPad * pad, GstObject * parent, guint i, len; GstBuffer *buffer; - GST_INFO_OBJECT (pad, "chaining each buffer in list"); + GST_LOG_OBJECT (pad, "chaining each buffer in list"); len = gst_buffer_list_length (list); diff --git a/libs/gst/base/gstbasesrc.c b/libs/gst/base/gstbasesrc.c index ccc5b0b..e35824f 100644 --- a/libs/gst/base/gstbasesrc.c +++ b/libs/gst/base/gstbasesrc.c @@ -224,8 +224,10 @@ struct _GstBaseSrcPrivate /* if a stream-start event should be sent */ gboolean stream_start_pending; - /* if segment should be sent */ + /* if segment should be sent and a + * seqnum if it was originated by a seek */ gboolean segment_pending; + guint32 segment_seqnum; /* if EOS is pending (atomic) */ gint pending_eos; @@ -818,6 +820,7 @@ gst_base_src_new_seamless_segment (GstBaseSrc * src, gint64 start, gint64 stop, /* Mark pending segment. Will be sent before next data */ src->priv->segment_pending = TRUE; + src->priv->segment_seqnum = gst_util_seqnum_next (); GST_DEBUG_OBJECT (src, "Starting new seamless segment. Start %" GST_TIME_FORMAT " stop %" @@ -1667,6 +1670,7 @@ gst_base_src_perform_seek (GstBaseSrc * src, GstEvent * event, gboolean unlock) stop = seeksegment.duration; src->priv->segment_pending = TRUE; + src->priv->segment_seqnum = seqnum; } src->priv->discont = TRUE; @@ -2671,7 +2675,11 @@ gst_base_src_loop (GstPad * pad) /* push events to close/start our segment before we push the buffer. */ if (G_UNLIKELY (src->priv->segment_pending)) { - gst_pad_push_event (pad, gst_event_new_segment (&src->segment)); + GstEvent *seg_event = gst_event_new_segment (&src->segment); + + gst_event_set_seqnum (seg_event, src->priv->segment_seqnum); + src->priv->segment_seqnum = gst_util_seqnum_next (); + gst_pad_push_event (pad, seg_event); src->priv->segment_pending = FALSE; } @@ -3182,6 +3190,7 @@ gst_base_src_start (GstBaseSrc * basesrc) basesrc->num_buffers_left = basesrc->num_buffers; basesrc->running = FALSE; basesrc->priv->segment_pending = FALSE; + basesrc->priv->segment_seqnum = gst_util_seqnum_next (); GST_LIVE_UNLOCK (basesrc); bclass = GST_BASE_SRC_GET_CLASS (basesrc); diff --git a/libs/gst/base/gstbasetransform.c b/libs/gst/base/gstbasetransform.c index 83420dc..8e28154 100644 --- a/libs/gst/base/gstbasetransform.c +++ b/libs/gst/base/gstbasetransform.c @@ -356,6 +356,9 @@ static GstFlowReturn default_prepare_output_buffer (GstBaseTransform * trans, GstBuffer * inbuf, GstBuffer ** outbuf); static gboolean default_copy_metadata (GstBaseTransform * trans, GstBuffer * inbuf, GstBuffer * outbuf); +static gboolean +gst_base_transform_default_transform_meta (GstBaseTransform * trans, + GstBuffer * inbuf, GstMeta * meta, GstBuffer * outbuf); /* static guint gst_base_transform_signals[LAST_SIGNAL] = { 0 }; */ @@ -407,6 +410,8 @@ gst_base_transform_class_init (GstBaseTransformClass * klass) GST_DEBUG_FUNCPTR (gst_base_transform_default_propose_allocation); klass->transform_size = GST_DEBUG_FUNCPTR (gst_base_transform_default_transform_size); + klass->transform_meta = + GST_DEBUG_FUNCPTR (gst_base_transform_default_transform_meta); klass->sink_event = GST_DEBUG_FUNCPTR (gst_base_transform_sink_eventfunc); klass->src_event = GST_DEBUG_FUNCPTR (gst_base_transform_src_eventfunc); @@ -545,6 +550,21 @@ gst_base_transform_transform_caps (GstBaseTransform * trans, } static gboolean +gst_base_transform_default_transform_meta (GstBaseTransform * trans, + GstBuffer * inbuf, GstMeta * meta, GstBuffer * outbuf) +{ + const GstMetaInfo *info = meta->info; + const gchar *const *tags; + + tags = gst_meta_api_type_get_tags (info->api); + + if (!tags) + return TRUE; + + return FALSE; +} + +static gboolean gst_base_transform_default_transform_size (GstBaseTransform * trans, GstPadDirection direction, GstCaps * caps, gsize size, GstCaps * othercaps, gsize * othersize) @@ -1653,7 +1673,7 @@ foreach_metadata (GstBuffer * inbuf, GstMeta ** meta, gpointer user_data) GstBaseTransformClass *klass; const GstMetaInfo *info = (*meta)->info; GstBuffer *outbuf = data->outbuf; - gboolean do_copy; + gboolean do_copy = FALSE; klass = GST_BASE_TRANSFORM_GET_CLASS (trans); @@ -1671,10 +1691,6 @@ foreach_metadata (GstBuffer * inbuf, GstMeta ** meta, gpointer user_data) do_copy = klass->transform_meta (trans, outbuf, *meta, inbuf); GST_DEBUG_OBJECT (trans, "transformed metadata %s: copy: %d", g_type_name (info->api), do_copy); - } else { - do_copy = FALSE; - GST_DEBUG_OBJECT (trans, "not copying metadata %s", - g_type_name (info->api)); } /* we only copy metadata when the subclass implemented a transform_meta diff --git a/libs/gst/base/gstcollectpads.c b/libs/gst/base/gstcollectpads.c index e9cabab..d24e03b 100644 --- a/libs/gst/base/gstcollectpads.c +++ b/libs/gst/base/gstcollectpads.c @@ -2068,7 +2068,9 @@ gst_collect_pads_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer) unlock_done: GST_COLLECT_PADS_STREAM_UNLOCK (pads); - unref_data (data); + /* data is definitely NULL if pad_removed goto was run. */ + if (data) + unref_data (data); if (buffer) gst_buffer_unref (buffer); return ret; diff --git a/libs/gst/check/Makefile.in b/libs/gst/check/Makefile.in index cee5aa4..ddafe7f 100644 --- a/libs/gst/check/Makefile.in +++ b/libs/gst/check/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.13.3 from Makefile.am. +# Makefile.in generated by automake 1.14 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. diff --git a/libs/gst/check/libcheck/Makefile.in b/libs/gst/check/libcheck/Makefile.in index 06b093e..893eb88 100644 --- a/libs/gst/check/libcheck/Makefile.in +++ b/libs/gst/check/libcheck/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.13.3 from Makefile.am. +# Makefile.in generated by automake 1.14 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. diff --git a/libs/gst/controller/Makefile.in b/libs/gst/controller/Makefile.in index 36ddf8f..c5f1df2 100644 --- a/libs/gst/controller/Makefile.in +++ b/libs/gst/controller/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.13.3 from Makefile.am. +# Makefile.in generated by automake 1.14 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. diff --git a/libs/gst/controller/gstargbcontrolbinding.c b/libs/gst/controller/gstargbcontrolbinding.c index 10506ee..cdf879b 100644 --- a/libs/gst/controller/gstargbcontrolbinding.c +++ b/libs/gst/controller/gstargbcontrolbinding.c @@ -104,22 +104,26 @@ gst_argb_control_binding_class_init (GstARGBControlBindingClass * klass) properties[PROP_CS_A] = g_param_spec_object ("control-source-a", "ControlSource A", "The control source for the alpha color component", - GST_TYPE_CONTROL_SOURCE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + GST_TYPE_CONTROL_SOURCE, + G_PARAM_READWRITE | G_PARAM_CONSTRUCT | G_PARAM_STATIC_STRINGS); properties[PROP_CS_R] = g_param_spec_object ("control-source-r", "ControlSource R", "The control source for the red color component", - GST_TYPE_CONTROL_SOURCE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + GST_TYPE_CONTROL_SOURCE, + G_PARAM_READWRITE | G_PARAM_CONSTRUCT | G_PARAM_STATIC_STRINGS); properties[PROP_CS_G] = g_param_spec_object ("control-source-g", "ControlSource G", "The control source for the green color component", - GST_TYPE_CONTROL_SOURCE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + GST_TYPE_CONTROL_SOURCE, + G_PARAM_READWRITE | G_PARAM_CONSTRUCT | G_PARAM_STATIC_STRINGS); properties[PROP_CS_B] = g_param_spec_object ("control-source-b", "ControlSource B", "The control source for the blue color component", - GST_TYPE_CONTROL_SOURCE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + GST_TYPE_CONTROL_SOURCE, + G_PARAM_READWRITE | G_PARAM_CONSTRUCT | G_PARAM_STATIC_STRINGS); g_object_class_install_properties (gobject_class, PROP_LAST, properties); } diff --git a/libs/gst/controller/gstdirectcontrolbinding.c b/libs/gst/controller/gstdirectcontrolbinding.c index ca173b0..9c2e626 100644 --- a/libs/gst/controller/gstdirectcontrolbinding.c +++ b/libs/gst/controller/gstdirectcontrolbinding.c @@ -177,7 +177,8 @@ gst_direct_control_binding_class_init (GstDirectControlBindingClass * klass) properties[PROP_CS] = g_param_spec_object ("control-source", "ControlSource", "The control source", - GST_TYPE_CONTROL_SOURCE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + GST_TYPE_CONTROL_SOURCE, + G_PARAM_READWRITE | G_PARAM_CONSTRUCT | G_PARAM_STATIC_STRINGS); g_object_class_install_properties (gobject_class, PROP_LAST, properties); } diff --git a/libs/gst/helpers/Makefile.in b/libs/gst/helpers/Makefile.in index 84d9b3f..25ffee3 100644 --- a/libs/gst/helpers/Makefile.in +++ b/libs/gst/helpers/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.13.3 from Makefile.am. +# Makefile.in generated by automake 1.14 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. diff --git a/libs/gst/net/Makefile.in b/libs/gst/net/Makefile.in index 9d11238..c713399 100644 --- a/libs/gst/net/Makefile.in +++ b/libs/gst/net/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.13.3 from Makefile.am. +# Makefile.in generated by automake 1.14 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. |