[gthumb] slideshow: init gstreamer only if there is some file to play
- From: Paolo Bacchilega <paobac src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gthumb] slideshow: init gstreamer only if there is some file to play
- Date: Mon, 16 Aug 2010 11:01:18 +0000 (UTC)
commit 1411107fc50b6504ce76ea58c9e2e7cc9cd6b0b7
Author: Paolo Bacchilega <paobac src gnome org>
Date: Sun Aug 15 09:33:13 2010 +0200
slideshow: init gstreamer only if there is some file to play
extensions/slideshow/gth-slideshow.c | 31 ++++++++++++++++---------------
1 files changed, 16 insertions(+), 15 deletions(-)
---
diff --git a/extensions/slideshow/gth-slideshow.c b/extensions/slideshow/gth-slideshow.c
index edb98b5..b2972dc 100644
--- a/extensions/slideshow/gth-slideshow.c
+++ b/extensions/slideshow/gth-slideshow.c
@@ -384,22 +384,23 @@ gth_slideshow_show_cb (GtkWidget *widget,
return;
#if HAVE_GSTREAMER
- if (gstreamer_init ()) {
- if ((self->priv->audio_files != NULL) && (self->priv->audio_files[0] != NULL)) {
- self->priv->current_audio_file = 0;
- if (self->priv->playbin == NULL) {
- GstBus *bus;
-
- self->priv->playbin = gst_element_factory_make ("playbin", "playbin");
- bus = gst_pipeline_get_bus (GST_PIPELINE (self->priv->playbin));
- gst_bus_add_signal_watch (bus);
- g_signal_connect (bus, "message", G_CALLBACK (bus_message_cb), self);
- }
- else
- gst_element_set_state (self->priv->playbin, GST_STATE_NULL);
- g_object_set (G_OBJECT (self->priv->playbin), "uri", self->priv->audio_files[self->priv->current_audio_file], NULL);
- gst_element_set_state (self->priv->playbin, GST_STATE_PLAYING);
+ if ((self->priv->audio_files != NULL)
+ && (self->priv->audio_files[0] != NULL)
+ && gstreamer_init ())
+ {
+ self->priv->current_audio_file = 0;
+ if (self->priv->playbin == NULL) {
+ GstBus *bus;
+
+ self->priv->playbin = gst_element_factory_make ("playbin", "playbin");
+ bus = gst_pipeline_get_bus (GST_PIPELINE (self->priv->playbin));
+ gst_bus_add_signal_watch (bus);
+ g_signal_connect (bus, "message", G_CALLBACK (bus_message_cb), self);
}
+ else
+ gst_element_set_state (self->priv->playbin, GST_STATE_NULL);
+ g_object_set (G_OBJECT (self->priv->playbin), "uri", self->priv->audio_files[self->priv->current_audio_file], NULL);
+ gst_element_set_state (self->priv->playbin, GST_STATE_PLAYING);
}
#endif
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]