From: Wim Taymans Date: Thu, 13 Sep 2012 08:15:54 +0000 (+0200) Subject: pulsesrc: disable reconfigure X-Git-Tag: RELEASE-0.11.94~5 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e59498c33d71613bb0aad1a53fa9e7e1d883250b;p=platform%2Fupstream%2Fgst-plugins-good.git pulsesrc: disable reconfigure See https://bugzilla.gnome.org/show_bug.cgi?id=683902 --- diff --git a/ext/pulse/pulsesrc.c b/ext/pulse/pulsesrc.c index 4a6e0f4..61bf307 100644 --- a/ext/pulse/pulsesrc.c +++ b/ext/pulse/pulsesrc.c @@ -100,6 +100,7 @@ static guint gst_pulsesrc_delay (GstAudioSrc * asrc); static void gst_pulsesrc_reset (GstAudioSrc * src); static gboolean gst_pulsesrc_negotiate (GstBaseSrc * basesrc); +static gboolean gst_pulsesrc_event (GstBaseSrc * basesrc, GstEvent * event); static GstStateChangeReturn gst_pulsesrc_change_state (GstElement * element, GstStateChange transition); @@ -148,6 +149,7 @@ gst_pulsesrc_class_init (GstPulseSrcClass * klass) gstelement_class->change_state = GST_DEBUG_FUNCPTR (gst_pulsesrc_change_state); + gstbasesrc_class->event = GST_DEBUG_FUNCPTR (gst_pulsesrc_event); gstbasesrc_class->negotiate = GST_DEBUG_FUNCPTR (gst_pulsesrc_negotiate); gstaudiosrc_class->open = GST_DEBUG_FUNCPTR (gst_pulsesrc_open); @@ -1296,6 +1298,21 @@ unlock_and_fail: } } +static gboolean +gst_pulsesrc_event (GstBaseSrc * basesrc, GstEvent * event) +{ + GST_DEBUG_OBJECT (basesrc, "handle event %" GST_PTR_FORMAT, event); + + switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_RECONFIGURE: + gst_pad_check_reconfigure (GST_BASE_SRC_PAD (basesrc)); + break; + default: + break; + } + return GST_BASE_SRC_CLASS (parent_class)->event (basesrc, event); +} + /* This is essentially gst_base_src_negotiate_default() but the caps * are guaranteed to have a channel layout for > 2 channels */