Patch to xine-lib backend of Totem



2005-08-08  Bastien Nocera  <hadess hadess net>

        * NEWS: upd
        * src/backend/bacon-video-widget-xine.c:
        (bacon_video_widget_realize), (bacon_video_widget_new):
        Only set the default vis plugin name if we don't already have one

2005-08-08  Bastien Nocera  <hadess hadess net>

        * src/backend/bacon-video-widget-xine.c: (bacon_video_widget_init),
        (bacon_video_widget_realize), (bacon_video_widget_unrealize),
        (show_vfx_update), (bacon_video_widget_set_visuals):
        Create the visual effects plugins when needed, instead of on startup,
        this should make startup slightly faster

Those 2 changes broke setting and running visuals with the xine-lib
backend. Currently, running "totem <audio-only-file>" will get you no
visual effects, even though enabled, and changing visual plugins while
playing a video is also broken.

Patch attached.

-- 
Bastien Nocera <hadess hadess net>
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/totem/ChangeLog,v
retrieving revision 1.1446
diff -u -p -u -r1.1446 ChangeLog
--- ChangeLog	30 Aug 2005 19:03:53 -0000	1.1446
+++ ChangeLog	2 Sep 2005 10:04:29 -0000
@@ -1,3 +1,12 @@
+2005-09-02  Bastien Nocera  <hadess hadess net>
+
+	* src/backend/bacon-video-widget-xine.c:
+	(bacon_video_widget_realize), (show_vfx_update),
+	(bacon_video_widget_set_visuals): don't disable visuals when we are
+	already in the right state (fixes running with an audio-only file with
+	visuals enabled), correctly set the visual plugin even if we are not
+	currently using it
+
 2005-08-30  Bastien Nocera  <hadess hadess net>
 
 	* src/backend/bacon-video-widget-gst.c: (bacon_video_widget_new):
Index: src/backend/bacon-video-widget-xine.c
===================================================================
RCS file: /cvs/gnome/totem/src/backend/bacon-video-widget-xine.c,v
retrieving revision 1.204
diff -u -p -u -r1.204 bacon-video-widget-xine.c
--- src/backend/bacon-video-widget-xine.c	8 Aug 2005 17:57:37 -0000	1.204
+++ src/backend/bacon-video-widget-xine.c	2 Sep 2005 10:04:30 -0000
@@ -1136,8 +1136,7 @@ bacon_video_widget_realize (GtkWidget *w
 
 	bvw->priv->ao_driver = load_audio_out_driver (bvw, FALSE, NULL);
 
-	if (bvw->priv->type == BVW_USE_TYPE_VIDEO
-			&& bvw->priv->ao_driver != NULL
+	if (bvw->priv->ao_driver != NULL
 			&& bvw->priv->ao_driver_none == FALSE)
 	{
 		if (bvw->priv->vis_name == NULL)
@@ -1882,6 +1881,9 @@ show_vfx_update (BaconVideoWidget *bvw, 
 	/* Doesn't have video, but visual effects are disabled */
 	} else if (has_video == FALSE && show_visuals == FALSE) {
 		enable = FALSE;
+	/* No changes */
+	} else {
+		return;
 	}
 
 	if (enable == FALSE) {
@@ -2812,6 +2814,10 @@ bacon_video_widget_set_visuals (BaconVid
 		g_free (bvw->priv->vis_name);
 		bvw->priv->vis_name = g_strdup (name);
 		show_vfx_update (bvw, TRUE);
+	} else {
+		g_free (bvw->priv->vis_name);
+		bvw->priv->vis_name = g_strdup (name);
+		show_vfx_update (bvw, FALSE);
 	}
 
 	return FALSE;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]