media: clear USE_GSTREAMER macro from V&V source files

Mon, 25 Jul 2016 09:27:01 +0200

author
Jakub Adam <jakub.adam@ktknet.cz>
date
Mon, 25 Jul 2016 09:27:01 +0200
changeset 37911
4a3d2c5fc856
parent 37894
1cf07b94c6ca
child 37912
9096db705fda

media: clear USE_GSTREAMER macro from V&V source files

USE_VV implies USE_GSTREAMER and so the occurrences of the latter macro
in voice & video sources can be simply replaced with USE_VV (merging any
so created overlapping conditional blocks).

Code meant to be active when USE_VV=1 and USE_GSTREAMER=0 is
inaccessible and can be removed.

finch/gntmedia.c file | annotate | diff | comparison | revisions
libpurple/media.c file | annotate | diff | comparison | revisions
libpurple/media/backend-fs2.c file | annotate | diff | comparison | revisions
libpurple/media/backend-fs2.h file | annotate | diff | comparison | revisions
libpurple/mediamanager.c file | annotate | diff | comparison | revisions
pidgin/gtkmedia.c file | annotate | diff | comparison | revisions
--- a/finch/gntmedia.c	Thu Jul 07 23:39:50 2016 -0500
+++ b/finch/gntmedia.c	Mon Jul 25 09:27:01 2016 +0200
@@ -408,47 +408,6 @@
 	return PURPLE_CMD_RET_OK;
 }
 
-#ifndef USE_GSTREAMER
-
-static GstElement *
-create_default_audio_src(PurpleMediaElementInfo *info, PurpleMedia *media,
-		const gchar *session_id, const gchar *participant)
-{
-	GstElement *src;
-	src = gst_element_factory_make("gconfaudiosrc", NULL);
-	if (src == NULL)
-		src = gst_element_factory_make("autoaudiosrc", NULL);
-	if (src == NULL)
-		src = gst_element_factory_make("alsasrc", NULL);
-	if (src == NULL)
-		src = gst_element_factory_make("osssrc", NULL);
-	if (src == NULL)
-		src = gst_element_factory_make("dshowaudiosrc", NULL);
-	if (src == NULL) {
-		purple_debug_error("gntmedia", "Unable to find a suitable "
-				"element for the default audio source.\n");
-		return NULL;
-	}
-	gst_element_set_name(src, "finchdefaultaudiosrc");
-	return src;
-}
-
-static GstElement *
-create_default_audio_sink(PurpleMediaElementInfo *info, PurpleMedia *media,
-		const gchar *session_id, const gchar *participant)
-{
-	GstElement *sink;
-	sink = gst_element_factory_make("gconfaudiosink", NULL);
-	if (sink == NULL)
-		sink = gst_element_factory_make("autoaudiosink",NULL);
-	if (sink == NULL) {
-		purple_debug_error("gntmedia", "Unable to find a suitable "
-				"element for the default audio sink.\n");
-		return NULL;
-	}
-	return sink;
-}
-#endif /* USE_GSTREAMER */
 #endif  /* USE_VV */
 
 void finch_media_manager_init(void)
@@ -457,7 +416,6 @@
 	PurpleMediaManager *manager = purple_media_manager_get();
 	PurpleMediaElementInfo *audio_src;
 	PurpleMediaElementInfo *audio_sink;
-#ifdef USE_GSTREAMER
 	const char *pref;
 
 	pref = purple_prefs_get_string(
@@ -481,23 +439,6 @@
 		audio_sink = purple_media_manager_get_element_info(manager,
 				pref);
 	}
-#else
-	audio_src = g_object_new(PURPLE_TYPE_MEDIA_ELEMENT_INFO,
-			"id", "finchdefaultaudiosrc",
-			"name", "Finch Default Audio Source",
-			"type", PURPLE_MEDIA_ELEMENT_AUDIO
-					| PURPLE_MEDIA_ELEMENT_SRC
-					| PURPLE_MEDIA_ELEMENT_ONE_SRC
-					| PURPLE_MEDIA_ELEMENT_UNIQUE,
-			"create-cb", create_default_audio_src, NULL);
-	audio_sink = g_object_new(PURPLE_TYPE_MEDIA_ELEMENT_INFO,
-			"id", "finchdefaultaudiosink",
-			"name", "Finch Default Audio Sink",
-			"type", PURPLE_MEDIA_ELEMENT_AUDIO
-					| PURPLE_MEDIA_ELEMENT_SINK
-					| PURPLE_MEDIA_ELEMENT_ONE_SINK,
-			"create-cb", create_default_audio_sink, NULL);
-#endif /* USE_GSTREAMER */
 
 	g_signal_connect(G_OBJECT(manager), "init-media", G_CALLBACK(finch_new_media), NULL);
 	purple_cmd_register("call", "", PURPLE_CMD_P_DEFAULT,
--- a/libpurple/media.c	Thu Jul 07 23:39:50 2016 -0500
+++ b/libpurple/media.c	Mon Jul 25 09:27:01 2016 +0200
@@ -27,13 +27,10 @@
 
 #include "debug.h"
 
-#ifdef USE_GSTREAMER
+#ifdef USE_VV
 #include "media/backend-fs2.h"
 #include "marshallers.h"
 #include "media-gst.h"
-#endif
-
-#ifdef USE_VV
 
 /** @copydoc _PurpleMediaSession */
 typedef struct _PurpleMediaSession PurpleMediaSession;
@@ -562,11 +559,10 @@
 #endif
 }
 
-#ifdef USE_GSTREAMER
+#ifdef USE_VV
 GstElement *
 purple_media_get_src(PurpleMedia *media, const gchar *sess_id)
 {
-#ifdef USE_VV
 	g_return_val_if_fail(PURPLE_IS_MEDIA(media), NULL);
 
 	if (PURPLE_IS_MEDIA_BACKEND_FS2(media->priv->backend))
@@ -575,11 +571,8 @@
 				media->priv->backend), sess_id);
 
 	g_return_val_if_reached(NULL);
-#else
-	return NULL;
-#endif
 }
-#endif /* USE_GSTREAMER */
+#endif /* USE_VV */
 
 PurpleAccount *
 purple_media_get_account(PurpleMedia *media)
@@ -1451,12 +1444,11 @@
 #endif
 }
 
-#ifdef USE_GSTREAMER
+#ifdef USE_VV
 GstElement *
 purple_media_get_tee(PurpleMedia *media,
 		const gchar *session_id, const gchar *participant)
 {
-#ifdef USE_VV
 	g_return_val_if_fail(PURPLE_IS_MEDIA(media), NULL);
 
 	if (PURPLE_IS_MEDIA_BACKEND_FS2(media->priv->backend))
@@ -1465,11 +1457,8 @@
 				media->priv->backend),
 				session_id, participant);
 	g_return_val_if_reached(NULL);
-#else
-	return NULL;
-#endif
 }
-#endif /* USE_GSTREAMER */
+#endif /* USE_VV */
 
 gboolean
 purple_media_send_dtmf(PurpleMedia *media, const gchar *session_id,
--- a/libpurple/media/backend-fs2.c	Thu Jul 07 23:39:50 2016 -0500
+++ b/libpurple/media/backend-fs2.c	Mon Jul 25 09:27:01 2016 +0200
@@ -2568,7 +2568,6 @@
 }
 #endif /* USE_VV */
 
-#ifdef USE_GSTREAMER
 GstElement *
 purple_media_backend_fs2_get_src(PurpleMediaBackendFs2 *self,
 		const gchar *sess_id)
@@ -2658,7 +2657,6 @@
 	}
 #endif /* USE_VV */
 }
-#endif /* USE_GSTREAMER */
 
 #ifdef USE_VV
 static gboolean
--- a/libpurple/media/backend-fs2.h	Thu Jul 07 23:39:50 2016 -0500
+++ b/libpurple/media/backend-fs2.h	Mon Jul 25 09:27:01 2016 +0200
@@ -58,7 +58,6 @@
  */
 GType purple_media_backend_fs2_get_type(void);
 
-#ifdef USE_GSTREAMER
 /*
  * Temporary function in order to be able to test while
  * integrating with PurpleMedia
@@ -75,7 +74,6 @@
 void purple_media_backend_fs2_set_output_volume(PurpleMediaBackendFs2 *self,
 		const gchar *sess_id, const gchar *who, double level);
 /* end tmp */
-#endif /* USE_GSTREAMER */
 
 G_END_DECLS
 
--- a/libpurple/mediamanager.c	Thu Jul 07 23:39:50 2016 -0500
+++ b/libpurple/mediamanager.c	Mon Jul 25 09:27:01 2016 +0200
@@ -26,12 +26,9 @@
 #include "media.h"
 #include "mediamanager.h"
 
-#ifdef USE_GSTREAMER
+#ifdef USE_VV
 #include "marshallers.h"
 #include "media-gst.h"
-#endif
-
-#ifdef USE_VV
 #include <media/backend-fs2.h>
 
 #include <farstream/fs-element-added-notifier.h>
@@ -72,11 +69,9 @@
 	PurpleMediaElementInfo *audio_src;
 	PurpleMediaElementInfo *audio_sink;
 
-#ifdef USE_GSTREAMER
 #if GST_CHECK_VERSION(1, 4, 0)
 	GstDeviceMonitor *device_monitor;
 #endif /* GST_CHECK_VERSION(1, 4, 0) */
-#endif /* USE_GSTREAMER */
 
 #ifdef HAVE_MEDIA_APPLICATION
 	/* Application data streams */
@@ -119,10 +114,8 @@
 #ifdef HAVE_MEDIA_APPLICATION
 static void free_appdata_info_locked (PurpleMediaAppDataInfo *info);
 #endif
-#ifdef USE_GSTREAMER
 static void purple_media_manager_init_device_monitor(PurpleMediaManager *manager);
 static void purple_media_manager_register_static_elements(PurpleMediaManager *manager);
-#endif
 
 static GObjectClass *parent_class = NULL;
 
@@ -213,9 +206,7 @@
 static void
 purple_media_manager_init (PurpleMediaManager *media)
 {
-#ifdef USE_GSTREAMER
 	GError *error;
-#endif /* USE_GSTREAMER */
 
 	media->priv = PURPLE_MEDIA_MANAGER_GET_PRIVATE(media);
 	media->priv->medias = NULL;
@@ -226,7 +217,6 @@
 	media->priv->appdata_info = NULL;
 	g_mutex_init (&media->priv->appdata_mutex);
 #endif
-#ifdef USE_GSTREAMER
 	if (gst_init_check(NULL, NULL, &error)) {
 		purple_media_manager_register_static_elements(media);
 		purple_media_manager_init_device_monitor(media);
@@ -238,7 +228,6 @@
 			g_error_free(error);
 		}
 	}
-#endif /* USE_GSTREAMER */
 
 	purple_prefs_add_none("/purple/media");
 	purple_prefs_add_none("/purple/media/audio");
@@ -272,14 +261,12 @@
 			(GDestroyNotify) free_appdata_info_locked);
 	g_mutex_clear (&priv->appdata_mutex);
 #endif
-#ifdef USE_GSTREAMER
 #if GST_CHECK_VERSION(1, 4, 0)
 	if (priv->device_monitor) {
 		gst_device_monitor_stop(priv->device_monitor);
 		g_object_unref(priv->device_monitor);
 	}
 #endif /* GST_CHECK_VERSION(1, 4, 0) */
-#endif /* USE_GSTREAMER */
 
 	parent_class->finalize(media);
 }
@@ -332,11 +319,10 @@
 }
 #endif
 
-#ifdef USE_GSTREAMER
+#ifdef USE_VV
 GstElement *
 purple_media_manager_get_pipeline(PurpleMediaManager *manager)
 {
-#ifdef USE_VV
 	g_return_val_if_fail(PURPLE_IS_MEDIA_MANAGER(manager), NULL);
 
 	if (manager->priv->pipeline == NULL) {
@@ -392,11 +378,8 @@
 	}
 
 	return manager->priv->pipeline;
-#else
-	return NULL;
-#endif
 }
-#endif /* USE_GSTREAMER */
+#endif /* USE_VV */
 
 static PurpleMedia *
 create_media(PurpleMediaManager *manager,
@@ -713,14 +696,9 @@
 	gst_bin_remove(GST_BIN(GST_ELEMENT_PARENT(element)), element);
 }
 
-#endif
-
-#ifdef USE_GSTREAMER
-
 void
 purple_media_manager_set_video_caps(PurpleMediaManager *manager, GstCaps *caps)
 {
-#ifdef USE_VV
 	if (manager->priv->video_caps)
 		gst_caps_unref(manager->priv->video_caps);
 
@@ -741,21 +719,17 @@
 
 		g_free(id);
 	}
-#endif
 }
 
 GstCaps *
 purple_media_manager_get_video_caps(PurpleMediaManager *manager)
 {
-#ifdef USE_VV
 	if (manager->priv->video_caps == NULL)
 		manager->priv->video_caps = gst_caps_from_string("video/x-raw,"
 			"width=[250,352], height=[200,288], framerate=[1/1,20/1]");
 	return manager->priv->video_caps;
-#else
-	return NULL;
-#endif
 }
+#endif /* USE_VV */
 
 #ifdef HAVE_MEDIA_APPLICATION
 /*
@@ -1093,7 +1067,7 @@
 	g_mutex_unlock (&manager->priv->appdata_mutex);
 	return appsink;
 }
-#endif
+#endif /* HAVE_MEDIA_APPLICATION */
 
 #ifdef USE_VV
 static PurpleMediaElementInfo *
@@ -1135,14 +1109,12 @@
 
 	return info;
 }
-#endif	/* USE_VV */
 
 GstElement *
 purple_media_manager_get_element(PurpleMediaManager *manager,
 		PurpleMediaSessionType type, PurpleMedia *media,
 		const gchar *session_id, const gchar *participant)
 {
-#ifdef USE_VV
 	GstElement *ret = NULL;
 	PurpleMediaElementInfo *info = NULL;
 	PurpleMediaElementType element_type;
@@ -1246,16 +1218,12 @@
 		purple_debug_error("media", "Error creating source or sink\n");
 
 	return ret;
-#else
-	return NULL;
-#endif
 }
 
 PurpleMediaElementInfo *
 purple_media_manager_get_element_info(PurpleMediaManager *manager,
 		const gchar *id)
 {
-#ifdef USE_VV
 	GList *iter;
 
 	g_return_val_if_fail(PURPLE_IS_MEDIA_MANAGER(manager), NULL);
@@ -1272,7 +1240,6 @@
 		}
 		g_free(element_id);
 	}
-#endif
 
 	return NULL;
 }
@@ -1305,7 +1272,6 @@
 purple_media_manager_register_element(PurpleMediaManager *manager,
 		PurpleMediaElementInfo *info)
 {
-#ifdef USE_VV
 	PurpleMediaElementInfo *info2;
 	gchar *id;
 	GQuark detail;
@@ -1333,16 +1299,12 @@
 	}
 
 	return TRUE;
-#else
-	return FALSE;
-#endif
 }
 
 gboolean
 purple_media_manager_unregister_element(PurpleMediaManager *manager,
 		const gchar *id)
 {
-#ifdef USE_VV
 	PurpleMediaElementInfo *info;
 	GQuark detail;
 
@@ -1377,16 +1339,12 @@
 	}
 
 	return TRUE;
-#else
-	return FALSE;
-#endif
 }
 
 gboolean
 purple_media_manager_set_active_element(PurpleMediaManager *manager,
 		PurpleMediaElementInfo *info)
 {
-#ifdef USE_VV
 	PurpleMediaElementInfo *info2;
 	PurpleMediaElementType type;
 	gboolean ret = FALSE;
@@ -1428,16 +1386,12 @@
 	}
 
 	return ret;
-#else
-	return FALSE;
-#endif
 }
 
 PurpleMediaElementInfo *
 purple_media_manager_get_active_element(PurpleMediaManager *manager,
 		PurpleMediaElementType type)
 {
-#ifdef USE_VV
 	g_return_val_if_fail(PURPLE_IS_MEDIA_MANAGER(manager), NULL);
 
 	if (type & PURPLE_MEDIA_ELEMENT_SRC) {
@@ -1456,13 +1410,10 @@
 			return get_recv_application_element_info ();
 
 	}
-#endif
 
 	return NULL;
 }
-#endif /* USE_GSTREAMER */
-
-#ifdef USE_VV
+
 static void
 window_id_cb(GstBus *bus, GstMessage *msg, PurpleMediaOutputWindow *ow)
 {
@@ -1930,7 +1881,7 @@
 #endif
 }
 
-#ifdef USE_GSTREAMER
+#ifdef USE_VV
 
 static void
 videosink_disable_last_sample(GstElement *sink)
@@ -2426,6 +2377,7 @@
 	}
 	return type;
 }
+#endif /* USE_VV */
 
 /*
  * PurpleMediaElementInfo
@@ -2585,18 +2537,10 @@
 
 G_DEFINE_TYPE(PurpleMediaElementInfo,
 		purple_media_element_info, G_TYPE_OBJECT);
-#else
-GType
-purple_media_element_info_get_type()
-{
-	return G_TYPE_NONE;
-}
-#endif
 
 gchar *
 purple_media_element_info_get_id(PurpleMediaElementInfo *info)
 {
-#ifdef USE_VV
 	gchar *id;
 
 #if GLIB_CHECK_VERSION(2, 37, 3)
@@ -2607,36 +2551,25 @@
 	g_return_val_if_fail(PURPLE_IS_MEDIA_ELEMENT_INFO(info), NULL);
 	g_object_get(info, "id", &id, NULL);
 	return id;
-#else
-	return NULL;
-#endif
 }
 
 gchar *
 purple_media_element_info_get_name(PurpleMediaElementInfo *info)
 {
-#ifdef USE_VV
 	gchar *name;
 	g_return_val_if_fail(PURPLE_IS_MEDIA_ELEMENT_INFO(info), NULL);
 	g_object_get(info, "name", &name, NULL);
 	return name;
-#else
-	return NULL;
-#endif
 }
 
 PurpleMediaElementType
 purple_media_element_info_get_element_type(PurpleMediaElementInfo *info)
 {
-#ifdef USE_VV
 	PurpleMediaElementType type;
 	g_return_val_if_fail(PURPLE_IS_MEDIA_ELEMENT_INFO(info),
 			PURPLE_MEDIA_ELEMENT_NONE);
 	g_object_get(info, "type", &type, NULL);
 	return type;
-#else
-	return PURPLE_MEDIA_ELEMENT_NONE;
-#endif
 }
 
 GstElement *
@@ -2644,16 +2577,11 @@
 		PurpleMedia *media, const gchar *session_id,
 		const gchar *participant)
 {
-#ifdef USE_VV
 	PurpleMediaElementCreateCallback create;
 	g_return_val_if_fail(PURPLE_IS_MEDIA_ELEMENT_INFO(info), NULL);
 	g_object_get(info, "create-cb", &create, NULL);
 	if (create)
 		return create(info, media, session_id, participant);
-#endif
 	return NULL;
 }
-
-
-#endif /* USE_GSTREAMER */
-
+#endif /* USE_VV */
--- a/pidgin/gtkmedia.c	Thu Jul 07 23:39:50 2016 -0500
+++ b/pidgin/gtkmedia.c	Mon Jul 25 09:27:01 2016 +0200
@@ -1193,248 +1193,6 @@
 
 	return TRUE;
 }
-
-#ifndef USE_GSTREAMER
-
-static void
-videosink_disable_last_sample(GstElement *sink)
-{
-	GObjectClass *klass = G_OBJECT_GET_CLASS(sink);
-
-	if (g_object_class_find_property(klass, "enable-last-sample")) {
-		g_object_set(sink, "enable-last-sample", FALSE, NULL);
-	}
-}
-
-static void
-autovideosink_child_added_cb (GstChildProxy *child_proxy, GObject *object,
-		gchar *name, gpointer user_data)
-{
-	videosink_disable_last_sample(GST_ELEMENT(object));
-}
-
-static GstElement *
-create_vv_element(const gchar *plugin, const gchar *device)
-{
-	GstElement *element, *source;
-
-	g_return_val_if_fail(plugin != NULL, NULL);
-	g_return_val_if_fail(plugin[0] != '\0', NULL);
-
-	if (device != NULL && device[0] == '\0')
-		device = NULL;
-
-	if (g_strcmp0(plugin, "videodisabledsrc") == 0) {
-		element = gst_element_factory_make("videotestsrc", NULL);
-		g_object_set(G_OBJECT(element), "is-live", TRUE, NULL);
-		if (g_strcmp0(device, "snow") == 0) {
-			/* GST_VIDEO_TEST_SRC_SNOW */
-			g_object_set(G_OBJECT(element), "pattern", 1, NULL);
-		} else {
-			/* GST_VIDEO_TEST_SRC_BLACK */
-			g_object_set(G_OBJECT(element), "pattern", 2, NULL);
-		}
-		return element;
-	}
-
-	if (g_strcmp0(plugin, "ksvideosrc") == 0) {
-		GstElement *ksv_bin, *ksv_src, *ksv_filter;
-		GstPad *ksv_pad, *ksv_ghost;
-
-		ksv_bin = gst_bin_new("ksvideofilteredsrc");
-		ksv_src = gst_element_factory_make("ksvideosrc", NULL);
-		ksv_filter = gst_element_factory_make("ffmpegcolorspace", NULL);
-
-		gst_bin_add_many(GST_BIN(ksv_bin), ksv_src, ksv_filter, NULL);
-
-		gst_element_link(ksv_src, ksv_filter);
-
-		ksv_pad = gst_element_get_static_pad(ksv_filter, "src");
-		ksv_ghost = gst_ghost_pad_new("src", ksv_pad);
-		gst_object_unref(ksv_pad);
-		gst_element_add_pad(ksv_bin, ksv_ghost);
-
-		element = ksv_bin;
-		source = ksv_src;
-	}
-	else
-		element = source = gst_element_factory_make(plugin, NULL);
-
-	if (element == NULL)
-		return NULL;
-
-	if (device != NULL) {
-		GObjectClass *klass = G_OBJECT_GET_CLASS(source);
-		if (g_object_class_find_property(klass, "device"))
-			g_object_set(G_OBJECT(source), "device", device, NULL);
-		else if (g_object_class_find_property(klass, "device-index"))
-			g_object_set(G_OBJECT(source), "device-index",
-				g_ascii_strtoull(device, NULL, 10), NULL);
-		else
-			purple_debug_warning("gtkmedia", "No possibility to "
-				"set device\n");
-	}
-
-	if (g_strcmp0(plugin, "autovideosink") == 0) {
-		g_signal_connect(source, "child-added",
-			G_CALLBACK(autovideosink_child_added_cb), NULL);
-	} else {
-		videosink_disable_last_sample(source);
-	}
-
-	if (g_strcmp0(plugin, "videotestsrc") == 0)
-		g_object_set(G_OBJECT(element), "is-live", TRUE, NULL);
-
-	return element;
-}
-
-static GstElement *
-create_configured_vv_element(const gchar *type, const gchar *dir)
-{
-	gchar *tmp;
-	const gchar *plugin, *device;
-
-	tmp = g_strdup_printf(PIDGIN_PREFS_ROOT "/vvconfig/%s/%s/plugin",
-		type, dir);
-	plugin = purple_prefs_get_string(tmp);
-	g_free(tmp);
-
-	tmp = g_strdup_printf(PIDGIN_PREFS_ROOT "/vvconfig/%s/%s/device",
-		type, dir);
-	device = purple_prefs_get_string(tmp);
-	g_free(tmp);
-
-	if (plugin == NULL || plugin[0] == '\0')
-		return NULL;
-
-	return create_vv_element(plugin, device);
-}
-
-static GstElement *
-create_default_video_src(PurpleMediaElementInfo *info, PurpleMedia *media,
-		const gchar *session_id, const gchar *participant)
-{
-	GstElement *sendbin, *src;
-	GstPad *pad;
-	GstPad *ghost;
-
-	src = create_configured_vv_element("video", "src");
-
-#ifdef _WIN32
-	if (src == NULL)
-		src = create_vv_element("ksvideosrc", NULL);
-	if (src == NULL)
-		src = create_vv_element("dshowvideosrc", NULL);
-	if (src == NULL)
-		src = create_vv_element("autovideosrc", NULL);
-#elif defined(__APPLE__)
-	if (src == NULL)
-		src = create_vv_element("osxvideosrc", NULL);
-	if (src == NULL)
-		src = create_vv_element("autovideosrc", NULL);
-#else
-	if (src == NULL)
-		src = create_vv_element("gconfvideosrc", NULL);
-	if (src == NULL)
-		src = create_vv_element("autovideosrc", NULL);
-	if (src == NULL)
-		src = create_vv_element("v4l2src", NULL);
-	if (src == NULL)
-		src = create_vv_element("v4lsrc", NULL);
-#endif
-	if (src == NULL)
-		src = create_vv_element("videotestsrc", NULL);
-	if (src == NULL) {
-		purple_debug_error("gtkmedia", "Unable to find a suitable "
-				"element for the default video source.\n");
-		return NULL;
-	}
-
-	sendbin = gst_bin_new("pidgindefaultvideosrc");
-
-	gst_bin_add(GST_BIN(sendbin), src);
-
-	pad = gst_element_get_static_pad(src, "src");
-	ghost = gst_ghost_pad_new("ghostsrc", pad);
-	gst_object_unref(pad);
-	gst_element_add_pad(sendbin, ghost);
-
-	return sendbin;
-}
-
-static GstElement *
-create_default_video_sink(PurpleMediaElementInfo *info, PurpleMedia *media,
-		const gchar *session_id, const gchar *participant)
-{
-	GstElement *sink;
-
-	sink = create_configured_vv_element("video", "sink");
-
-	if (sink == NULL)
-		sink = create_vv_element("directdrawsink", NULL);
-	if (sink == NULL)
-		sink = create_vv_element("gconfvideosink", NULL);
-	if (sink == NULL)
-		sink = create_vv_element("autovideosink", NULL);
-	if (sink == NULL)
-		purple_debug_error("gtkmedia", "Unable to find a suitable "
-				"element for the default video sink.\n");
-	return sink;
-}
-
-static GstElement *
-create_default_audio_src(PurpleMediaElementInfo *info, PurpleMedia *media,
-		const gchar *session_id, const gchar *participant)
-{
-	GstElement *src;
-
-	src = create_configured_vv_element("audio", "src");
-
-	if (src == NULL)
-		src = create_vv_element("directsoundsrc", NULL);
-	if (src == NULL)
-		src = create_vv_element("gconfaudiosrc", NULL);
-	if (src == NULL)
-		src = create_vv_element("autoaudiosrc", NULL);
-	if (src == NULL)
-		src = create_vv_element("alsasrc", NULL);
-	if (src == NULL)
-		src = create_vv_element("osssrc", NULL);
-	if (src == NULL)
-		src = create_vv_element("dshowaudiosrc", NULL);
-	if (src == NULL)
-		src = create_vv_element("osxaudiosrc", NULL);
-	if (src == NULL) {
-		purple_debug_error("gtkmedia", "Unable to find a suitable "
-				"element for the default audio source.\n");
-		return NULL;
-	}
-	gst_element_set_name(src, "pidgindefaultaudiosrc");
-	return src;
-}
-
-static GstElement *
-create_default_audio_sink(PurpleMediaElementInfo *info, PurpleMedia *media,
-		const gchar *session_id, const gchar *participant)
-{
-	GstElement *sink;
-
-	sink = create_configured_vv_element("audio", "sink");
-
-	if (sink == NULL)
-		sink = create_vv_element("directsoundsink", NULL);
-	if (sink == NULL)
-		sink = create_vv_element("gconfaudiosink", NULL);
-	if (sink == NULL)
-		sink = create_vv_element("autoaudiosink",NULL);
-	if (sink == NULL) {
-		purple_debug_error("gtkmedia", "Unable to find a suitable "
-				"element for the default audio sink.\n");
-		return NULL;
-	}
-	return sink;
-}
-#endif /* USE_GSTREAMER */
 #endif  /* USE_VV */
 
 void
@@ -1446,7 +1204,6 @@
 	PurpleMediaElementInfo *video_sink;
 	PurpleMediaElementInfo *audio_src;
 	PurpleMediaElementInfo *audio_sink;
-#ifdef USE_GSTREAMER
 	const char *pref;
 
 	pref = purple_prefs_get_string(
@@ -1492,38 +1249,6 @@
 		audio_sink = purple_media_manager_get_element_info(manager,
 				pref);
 	}
-#else
-	video_src = g_object_new(PURPLE_TYPE_MEDIA_ELEMENT_INFO,
-			"id", "pidgindefaultvideosrc",
-			"name", "Pidgin Default Video Source",
-			"type", PURPLE_MEDIA_ELEMENT_VIDEO
-					| PURPLE_MEDIA_ELEMENT_SRC
-					| PURPLE_MEDIA_ELEMENT_ONE_SRC
-					| PURPLE_MEDIA_ELEMENT_UNIQUE,
-			"create-cb", create_default_video_src, NULL);
-	video_sink = g_object_new(PURPLE_TYPE_MEDIA_ELEMENT_INFO,
-			"id", "pidgindefaultvideosink",
-			"name", "Pidgin Default Video Sink",
-			"type", PURPLE_MEDIA_ELEMENT_VIDEO
-					| PURPLE_MEDIA_ELEMENT_SINK
-					| PURPLE_MEDIA_ELEMENT_ONE_SINK,
-			"create-cb", create_default_video_sink, NULL);
-	audio_src = g_object_new(PURPLE_TYPE_MEDIA_ELEMENT_INFO,
-			"id", "pidgindefaultaudiosrc",
-			"name", "Pidgin Default Audio Source",
-			"type", PURPLE_MEDIA_ELEMENT_AUDIO
-					| PURPLE_MEDIA_ELEMENT_SRC
-					| PURPLE_MEDIA_ELEMENT_ONE_SRC
-					| PURPLE_MEDIA_ELEMENT_UNIQUE,
-			"create-cb", create_default_audio_src, NULL);
-	audio_sink = g_object_new(PURPLE_TYPE_MEDIA_ELEMENT_INFO,
-			"id", "pidgindefaultaudiosink",
-			"name", "Pidgin Default Audio Sink",
-			"type", PURPLE_MEDIA_ELEMENT_AUDIO
-					| PURPLE_MEDIA_ELEMENT_SINK
-					| PURPLE_MEDIA_ELEMENT_ONE_SINK,
-			"create-cb", create_default_audio_sink, NULL);
-#endif /* USE_GSTREAMER */
 
 	g_signal_connect(G_OBJECT(manager), "init-media",
 			 G_CALLBACK(pidgin_media_new_cb), NULL);

mercurial