summaryrefslogtreecommitdiffstats
path: root/ext/pulse/pulsesrc.c
diff options
context:
space:
mode:
authorSebastian Dröge <slomo@circular-chaos.org>2008-08-20 17:46:48 +0000
committerSebastian Dröge <slomo@circular-chaos.org>2008-08-20 17:46:48 +0000
commit95d423981983bc657539a0e66c5c27db21592ee2 (patch)
tree260f5bfb57fc4a686683c1d9289364ec831b3b6d /ext/pulse/pulsesrc.c
parent7f880435535413895430106425963cebc6bc32df (diff)
ext/pulse/: Use GST_BOILERPLATE everywhere and fix coding style at some places.
Original commit message from CVS: * ext/pulse/pulsemixer.c: (gst_pulsemixer_class_init), (gst_pulsemixer_set_property), (gst_pulsemixer_get_property): * ext/pulse/pulsemixerctrl.c: (gst_pulsemixer_ctrl_subscribe_cb), (gst_pulsemixer_ctrl_open), (gst_pulsemixer_ctrl_timeout_event), (gst_pulsemixer_ctrl_set_volume): * ext/pulse/pulsemixertrack.c: (gst_pulsemixer_track_new): * ext/pulse/pulseprobe.c: (gst_pulseprobe_open): * ext/pulse/pulsesink.c: (gst_pulsesink_class_init), (gst_pulsesink_init), (gst_pulsesink_open), (gst_pulsesink_prepare), (gst_pulsesink_write), (gst_pulsesink_delay), (gst_pulsesink_reset): * ext/pulse/pulsesrc.c: (gst_pulsesrc_class_init), (gst_pulsesrc_init): Use GST_BOILERPLATE everywhere and fix coding style at some places. Fix a locking issue in pulsesink's prepare function. * ext/pulse/pulseutil.c: (gst_pulse_channel_map_to_gst): Check if the created channel layout is valid for GStreamer.
Diffstat (limited to 'ext/pulse/pulsesrc.c')
-rw-r--r--ext/pulse/pulsesrc.c59
1 files changed, 14 insertions, 45 deletions
diff --git a/ext/pulse/pulsesrc.c b/ext/pulse/pulsesrc.c
index 6bc198df..26e0897e 100644
--- a/ext/pulse/pulsesrc.c
+++ b/ext/pulse/pulsesrc.c
@@ -62,10 +62,6 @@ enum
PROP_DEVICE_NAME
};
-static GstAudioSrcClass *parent_class = NULL;
-
-GST_IMPLEMENT_PULSEMIXER_CTRL_METHODS (GstPulseSrc, gst_pulsesrc);
-
static void gst_pulsesrc_destroy_stream (GstPulseSrc * pulsesrc);
static void gst_pulsesrc_destroy_context (GstPulseSrc * pulsesrc);
@@ -96,13 +92,18 @@ static gboolean gst_pulsesrc_negotiate (GstBaseSrc * basesrc);
static GstStateChangeReturn gst_pulsesrc_change_state (GstElement *
element, GstStateChange transition);
+static void gst_pulsesrc_init_interfaces (GType type);
+
#if (G_BYTE_ORDER == G_LITTLE_ENDIAN)
# define ENDIANNESS "LITTLE_ENDIAN, BIG_ENDIAN"
#else
# define ENDIANNESS "BIG_ENDIAN, LITTLE_ENDIAN"
#endif
+GST_IMPLEMENT_PULSEMIXER_CTRL_METHODS (GstPulseSrc, gst_pulsesrc);
GST_IMPLEMENT_PULSEPROBE_METHODS (GstPulseSrc, gst_pulsesrc);
+GST_BOILERPLATE_FULL (GstPulseSrc, gst_pulsesrc, GstAudioSrc,
+ GST_TYPE_AUDIO_SRC, gst_pulsesrc_init_interfaces);
static gboolean
gst_pulsesrc_interface_supported (GstImplementsInterface *
@@ -201,14 +202,12 @@ gst_pulsesrc_base_init (gpointer g_class)
}
static void
-gst_pulsesrc_class_init (gpointer g_class, gpointer class_data)
+gst_pulsesrc_class_init (GstPulseSrcClass * klass)
{
- GObjectClass *gobject_class = G_OBJECT_CLASS (g_class);
- GstAudioSrcClass *gstaudiosrc_class = GST_AUDIO_SRC_CLASS (g_class);
- GstBaseSrcClass *gstbasesrc_class = GST_BASE_SRC_CLASS (g_class);
- GstElementClass *gstelement_class = GST_ELEMENT_CLASS (g_class);
-
- parent_class = g_type_class_peek_parent (g_class);
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+ GstAudioSrcClass *gstaudiosrc_class = GST_AUDIO_SRC_CLASS (klass);
+ GstBaseSrcClass *gstbasesrc_class = GST_BASE_SRC_CLASS (klass);
+ GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass);
gstelement_class->change_state =
GST_DEBUG_FUNCPTR (gst_pulsesrc_change_state);
@@ -246,11 +245,8 @@ gst_pulsesrc_class_init (gpointer g_class, gpointer class_data)
}
static void
-gst_pulsesrc_init (GTypeInstance * instance, gpointer g_class)
+gst_pulsesrc_init (GstPulseSrc * pulsesrc, GstPulseSrcClass * klass)
{
-
- GstPulseSrc *pulsesrc = GST_PULSESRC (instance);
-
int e;
pulsesrc->server = pulsesrc->device = NULL;
@@ -653,8 +649,9 @@ gst_pulsesrc_create_stream (GstPulseSrc * pulsesrc, GstCaps * caps)
if (!pulsesrc->context
|| pa_context_get_state (pulsesrc->context) != PA_CONTEXT_READY) {
GST_ELEMENT_ERROR (pulsesrc, RESOURCE, FAILED, ("Bad context state: %s",
- pulsesrc->context ? pa_strerror (pa_context_errno (pulsesrc->
- context)) : NULL), (NULL));
+ pulsesrc->
+ context ? pa_strerror (pa_context_errno (pulsesrc->context)) :
+ NULL), (NULL));
goto unlock_and_fail;
}
@@ -845,31 +842,3 @@ gst_pulsesrc_change_state (GstElement * element, GstStateChange transition)
return GST_STATE_CHANGE_SUCCESS;
}
-
-GType
-gst_pulsesrc_get_type (void)
-{
- static GType pulsesrc_type = 0;
-
- if (!pulsesrc_type) {
-
- static const GTypeInfo pulsesrc_info = {
- sizeof (GstPulseSrcClass),
- gst_pulsesrc_base_init,
- NULL,
- gst_pulsesrc_class_init,
- NULL,
- NULL,
- sizeof (GstPulseSrc),
- 0,
- gst_pulsesrc_init,
- };
-
- pulsesrc_type = g_type_register_static (GST_TYPE_AUDIO_SRC,
- "GstPulseSrc", &pulsesrc_info, 0);
-
- gst_pulsesrc_init_interfaces (pulsesrc_type);
- }
-
- return pulsesrc_type;
-}