From d052c778af3e6f1bed4c0d21cf9232ef1d5ffb29 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Thu, 23 Feb 2012 11:08:26 +0100 Subject: [PATCH] basetransform: remove transform lock This is not needed anymore by the baseclass. subclasses should do their own locking when needed. --- libs/gst/base/gstbasetransform.c | 11 ----------- libs/gst/base/gstbasetransform.h | 22 ---------------------- 2 files changed, 33 deletions(-) diff --git a/libs/gst/base/gstbasetransform.c b/libs/gst/base/gstbasetransform.c index a8bdfa014f..13dfae8f70 100644 --- a/libs/gst/base/gstbasetransform.c +++ b/libs/gst/base/gstbasetransform.c @@ -351,12 +351,6 @@ static gboolean default_copy_metadata (GstBaseTransform * trans, static void gst_base_transform_finalize (GObject * object) { - GstBaseTransform *trans; - - trans = GST_BASE_TRANSFORM (object); - - g_mutex_clear (&trans->transform_lock); - G_OBJECT_CLASS (parent_class)->finalize (object); } @@ -444,7 +438,6 @@ gst_base_transform_init (GstBaseTransform * trans, GST_DEBUG_FUNCPTR (gst_base_transform_query)); gst_element_add_pad (GST_ELEMENT (trans), trans->srcpad); - g_mutex_init (&trans->transform_lock); trans->priv->qos_enabled = DEFAULT_PROP_QOS; trans->cache_caps1 = NULL; trans->cache_caps2 = NULL; @@ -1937,9 +1930,7 @@ gst_base_transform_getrange (GstPad * pad, GstObject * parent, guint64 offset, if (klass->before_transform) klass->before_transform (trans, inbuf); - GST_BASE_TRANSFORM_LOCK (trans); ret = gst_base_transform_handle_buffer (trans, inbuf, buffer); - GST_BASE_TRANSFORM_UNLOCK (trans); done: return ret; @@ -1981,9 +1972,7 @@ gst_base_transform_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer) klass->before_transform (trans, buffer); /* protect transform method and concurrent buffer alloc */ - GST_BASE_TRANSFORM_LOCK (trans); ret = gst_base_transform_handle_buffer (trans, buffer, &outbuf); - GST_BASE_TRANSFORM_UNLOCK (trans); /* outbuf can be NULL, this means a dropped buffer, if we have a buffer but * GST_BASE_TRANSFORM_FLOW_DROPPED we will not push either. */ diff --git a/libs/gst/base/gstbasetransform.h b/libs/gst/base/gstbasetransform.h index af500e49df..c70af9e16d 100644 --- a/libs/gst/base/gstbasetransform.h +++ b/libs/gst/base/gstbasetransform.h @@ -77,26 +77,6 @@ G_BEGIN_DECLS */ #define GST_BASE_TRANSFORM_FLOW_DROPPED GST_FLOW_CUSTOM_SUCCESS -/** - * GST_BASE_TRANSFORM_LOCK: - * @obj: base transform instance - * - * Obtain a lock to protect the transform function from concurrent access. - * - * Since: 0.10.13 - */ -#define GST_BASE_TRANSFORM_LOCK(obj) g_mutex_lock (&GST_BASE_TRANSFORM_CAST (obj)->transform_lock) - -/** - * GST_BASE_TRANSFORM_UNLOCK: - * @obj: base transform instance - * - * Release the lock that protects the transform function from concurrent access. - * - * Since: 0.10.13 - */ -#define GST_BASE_TRANSFORM_UNLOCK(obj) g_mutex_unlock (&GST_BASE_TRANSFORM_CAST (obj)->transform_lock) - typedef struct _GstBaseTransform GstBaseTransform; typedef struct _GstBaseTransformClass GstBaseTransformClass; typedef struct _GstBaseTransformPrivate GstBaseTransformPrivate; @@ -131,8 +111,6 @@ struct _GstBaseTransform { /* MT-protected (with STREAM_LOCK) */ GstSegment segment; - GMutex transform_lock; - /*< private >*/ GstBaseTransformPrivate *priv;