From: Wim Taymans Date: Wed, 18 Aug 2010 14:45:37 +0000 (+0200) Subject: alsasrc/sink: add property to get the card name X-Git-Tag: 1.19.3~511^2~8157 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7b310c6a03f057c306f43f249a22c57c18baba95;p=platform%2Fupstream%2Fgstreamer.git alsasrc/sink: add property to get the card name fixes #627203 --- diff --git a/ext/alsa/gstalsasink.c b/ext/alsa/gstalsasink.c index e57884a..2fb37df 100644 --- a/ext/alsa/gstalsasink.c +++ b/ext/alsa/gstalsasink.c @@ -55,6 +55,7 @@ #define DEFAULT_DEVICE "default" #define DEFAULT_DEVICE_NAME "" +#define DEFAULT_CARD_NAME "" #define SPDIF_PERIOD_SIZE 1536 #define SPDIF_BUFFER_SIZE 15360 @@ -62,7 +63,9 @@ enum { PROP_0, PROP_DEVICE, - PROP_DEVICE_NAME + PROP_DEVICE_NAME, + PROP_CARD_NAME, + PROP_LAST }; static void gst_alsasink_init_interfaces (GType type); @@ -209,6 +212,11 @@ gst_alsasink_class_init (GstAlsaSinkClass * klass) g_param_spec_string ("device-name", "Device name", "Human-readable name of the sound device", DEFAULT_DEVICE_NAME, G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)); + + g_object_class_install_property (gobject_class, PROP_CARD_NAME, + g_param_spec_string ("card-name", "Card name", + "Human-readable name of the sound card", DEFAULT_CARD_NAME, + G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)); } static void @@ -251,6 +259,11 @@ gst_alsasink_get_property (GObject * object, guint prop_id, gst_alsa_find_device_name (GST_OBJECT_CAST (sink), sink->device, sink->handle, SND_PCM_STREAM_PLAYBACK)); break; + case PROP_CARD_NAME: + g_value_take_string (value, + gst_alsa_find_card_name (GST_OBJECT_CAST (sink), + sink->device, SND_PCM_STREAM_PLAYBACK)); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; diff --git a/ext/alsa/gstalsasrc.c b/ext/alsa/gstalsasrc.c index 0aae04d..d9e6bc8 100644 --- a/ext/alsa/gstalsasrc.c +++ b/ext/alsa/gstalsasrc.c @@ -53,12 +53,15 @@ #define DEFAULT_PROP_DEVICE "default" #define DEFAULT_PROP_DEVICE_NAME "" +#define DEFAULT_PROP_CARD_NAME "" enum { PROP_0, PROP_DEVICE, PROP_DEVICE_NAME, + PROP_CARD_NAME, + PROP_LAST }; static void gst_alsasrc_init_interfaces (GType type); @@ -226,6 +229,11 @@ gst_alsasrc_class_init (GstAlsaSrcClass * klass) g_param_spec_string ("device-name", "Device name", "Human-readable name of the sound device", DEFAULT_PROP_DEVICE_NAME, G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)); + + g_object_class_install_property (gobject_class, PROP_CARD_NAME, + g_param_spec_string ("card-name", "Card name", + "Human-readable name of the sound card", + DEFAULT_PROP_CARD_NAME, G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)); } static void @@ -267,6 +275,11 @@ gst_alsasrc_get_property (GObject * object, guint prop_id, gst_alsa_find_device_name (GST_OBJECT_CAST (src), src->device, src->handle, SND_PCM_STREAM_CAPTURE)); break; + case PROP_CARD_NAME: + g_value_take_string (value, + gst_alsa_find_card_name (GST_OBJECT_CAST (src), + src->device, SND_PCM_STREAM_CAPTURE)); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break;