totem r5110 - in trunk: . src/backend
- From: tpm svn gnome org
- To: svn-commits-list gnome org
- Subject: totem r5110 - in trunk: . src/backend
- Date: Tue, 12 Feb 2008 11:44:41 +0000 (GMT)
Author: tpm
Date: Tue Feb 12 11:44:41 2008
New Revision: 5110
URL: http://svn.gnome.org/viewvc/totem?rev=5110&view=rev
Log:
* src/backend/bacon-video-widget-gst-0.10.c:
(bacon_video_widget_can_play):
Test for all elements required for DVB, not just dvdbasebin.
Also, no need to load the plugin and create the element if all
we want to know is if it's available.
Modified:
trunk/ChangeLog
trunk/src/backend/bacon-video-widget-gst-0.10.c
Modified: trunk/src/backend/bacon-video-widget-gst-0.10.c
==============================================================================
--- trunk/src/backend/bacon-video-widget-gst-0.10.c (original)
+++ trunk/src/backend/bacon-video-widget-gst-0.10.c Tue Feb 12 11:44:41 2008
@@ -3922,31 +3922,31 @@
res = BVW_CAN_PLAY_SUCCESS;
break;
case MEDIA_TYPE_DVD: {
- GstElement *element;
-
- element = gst_element_factory_make ("dvdreadsrc", "test_dvdsrc");
- if (element == NULL) {
+ if (!gst_default_registry_check_feature_version ("dvdreadsrc", 0, 10, 0)) {
+ GST_DEBUG ("Missing dvdreadsrc");
res = BVW_CAN_PLAY_MISSING_PLUGINS;
} else {
- g_object_unref (element);
res = BVW_CAN_PLAY_SUCCESS;
}
break;
}
case MEDIA_TYPE_DVB: {
- GstElement *element;
gchar *filename;
- element = gst_element_factory_make ("dvbbasebin", "test_dvb");
- if (element == NULL)
- return BVW_CAN_PLAY_MISSING_PLUGINS;
-
- g_object_unref (element);
+ /* FIXME: change to 0,10,6 once gst-plugins-bad 0.10.6 has been released */
+ if (!gst_default_registry_check_feature_version ("dvbbasebin", 0, 10, 0) ||
+ !gst_default_registry_check_feature_version ("mpegtsparse", 0, 10, 0) ||
+ !gst_default_registry_check_feature_version ("dvbsrc", 0, 10, 0)) {
+ GST_DEBUG ("Missing one or all of: dvbsrc, dvbbasebin, mpegtsparse");
+ res = BVW_CAN_PLAY_MISSING_PLUGINS;
+ break;
+ }
filename = bacon_video_widget_get_channels_file ();
if (g_file_test (filename, G_FILE_TEST_EXISTS)) {
res = BVW_CAN_PLAY_SUCCESS;
} else {
+ GST_DEBUG ("no channels file '%s'", filename);
res = BVW_CAN_PLAY_MISSING_CHANNELS;
}
g_free(filename);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]