[Xfce4-commits] <parole:master> Added audio stream switching.
Christoph Mende
noreply at xfce.org
Mon Jul 23 01:26:11 CEST 2012
Updating branch refs/heads/master
to 60dfdc1c32aebace5e42a6c1545b61a26e02ab4a (commit)
from c4aeddcff63f99be08ee298c8280b6d19dc9f9a9 (commit)
commit 60dfdc1c32aebace5e42a6c1545b61a26e02ab4a
Author: Sean Davis <smd.seandavis at gmail.com>
Date: Thu Jul 19 05:04:48 2012 -0400
Added audio stream switching.
data/interfaces/parole.ui | 1 +
src/gst/parole-gst.c | 6 ++++++
src/gst/parole-gst.h | 2 ++
src/parole-player.c | 6 ++++++
4 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/data/interfaces/parole.ui b/data/interfaces/parole.ui
index 7e0181d..a350883 100644
--- a/data/interfaces/parole.ui
+++ b/data/interfaces/parole.ui
@@ -604,6 +604,7 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="model">liststore_audiotrack</property>
+ <signal name="changed" handler="parole_player_combo_box_audiotrack_changed_cb" swapped="no"/>
</object>
<packing>
<property name="expand">False</property>
diff --git a/src/gst/parole-gst.c b/src/gst/parole-gst.c
index b3948dd..a4d0959 100644
--- a/src/gst/parole-gst.c
+++ b/src/gst/parole-gst.c
@@ -2266,6 +2266,12 @@ gst_get_lang_list_for_type (ParoleGst * gst, const gchar * type_name)
return g_list_reverse (ret);
}
+void
+gst_set_current_audio_track( ParoleGst *gst, gint track_no )
+{
+ g_object_set (G_OBJECT (gst->priv->playbin), "current-audio", (track_no), NULL);
+}
+
const ParoleStream *parole_gst_get_stream (ParoleGst *gst)
{
g_return_val_if_fail (PAROLE_IS_GST (gst), NULL);
diff --git a/src/gst/parole-gst.h b/src/gst/parole-gst.h
index 0f3e9f1..55f718c 100644
--- a/src/gst/parole-gst.h
+++ b/src/gst/parole-gst.h
@@ -142,6 +142,8 @@ void parole_gst_set_cursor_visible (ParoleGst *gst,
GList * gst_get_lang_list_for_type (ParoleGst * gst, const gchar * type_name);
+void gst_set_current_audio_track( ParoleGst *gst, gint track_no );
+
const ParoleStream *parole_gst_get_stream (ParoleGst *gst);
G_END_DECLS
diff --git a/src/parole-player.c b/src/parole-player.c
index 3922593..1202fd7 100644
--- a/src/parole-player.c
+++ b/src/parole-player.c
@@ -2395,6 +2395,12 @@ void parole_player_play_uri_disc (ParolePlayer *player, const gchar *uri, const
}
}
+void parole_player_combo_box_audiotrack_changed_cb(GtkWidget *widget, ParolePlayer *player)
+{
+ gint index = gtk_combo_box_get_active(GTK_COMBO_BOX(player->priv->combobox_audiotrack));
+ gst_set_current_audio_track(PAROLE_GST(player->priv->gst), index);
+}
+
void parole_player_terminate (ParolePlayer *player)
{
parole_player_delete_event_cb (NULL, NULL, player);
More information about the Xfce4-commits
mailing list