[vlc-devel] commit: Add callback to spu-es from the input. (Je an-Paul Saman )

Remi Denis-Courmont rdenis at simphalempin.com
Wed Jun 18 12:13:56 CEST 2008


I thought committers had gotten the point about thread synchronization at last. Looks like I was wrong.

please revert this.

Remi Denis

-- message original --
Sujet:	[vlc-devel] commit: Add callback to spu-es from the input. (Jean-Paul Saman )
De:	git at videolan.org (git version control)
Date:		18.06.2008 10:07

vlc | branch: master | Jean-Paul Saman <jpsaman at videolan.org> | Tue Jun 17 11:52:26 2008 +0200| [ef9f3691a8d756873445b4ed6a0b49861dbc4582]

Add callback to spu-es from the input.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ef9f3691a8d756873445b4ed6a0b49861dbc4582
---

 modules/gui/qt4/input_manager.cpp |   14 +++++++++++++-
 1 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp
index 40c4e66..cd0d7c5 100644
--- a/modules/gui/qt4/input_manager.cpp
+++ b/modules/gui/qt4/input_manager.cpp
@@ -34,6 +34,8 @@ static int ChangeVideo( vlc_object_t *p_this, const char *var, vlc_value_t o,
                         vlc_value_t n, void *param );
 static int ChangeAudio( vlc_object_t *p_this, const char *var, vlc_value_t o,
                         vlc_value_t n, void *param );
+static int ChangeSPU( vlc_object_t *p_this, const char *var, vlc_value_t o,
+                      vlc_value_t n, void *param );
 static int ItemChanged( vlc_object_t *, const char *,
                         vlc_value_t, vlc_value_t, void * );
 static int PLItemChanged( vlc_object_t *, const char *,
@@ -142,6 +144,8 @@ void InputManager::addCallbacks()
     var_AddCallback( p_input, "audio-es", ChangeAudio, this );
     /* src/input/es-out.c:551 */
     var_AddCallback( p_input, "video-es", ChangeVideo, this );
+    /* src/input/es-out.c:552 */
+    var_AddCallback( p_input, "spu-es", ChangeSPU, this );
     /* src/input/input.c:1765 */
     var_AddCallback( p_input, "rate-change", ItemRateChanged, this );
     /* src/input/input.c:2003 */
@@ -153,6 +157,7 @@ void InputManager::addCallbacks()
 /* Delete the callbacks on Input. Self explanatory */
 void InputManager::delCallbacks()
 {
+    var_DelCallback( p_input, "spu-es", ChangeSPU, this );
     var_DelCallback( p_input, "audio-es", ChangeAudio, this );
     var_DelCallback( p_input, "video-es", ChangeVideo, this );
     var_DelCallback( p_input, "state", ItemStateChanged, this );
@@ -634,7 +639,6 @@ static int ItemChanged( vlc_object_t *p_this, const char *psz_var,
     return VLC_SUCCESS;
 }
 
-
 static int ChangeAudio( vlc_object_t *p_this, const char *var, vlc_value_t o,
                         vlc_value_t n, void *param )
 {
@@ -651,6 +655,14 @@ static int ChangeVideo( vlc_object_t *p_this, const char *var, vlc_value_t o,
     return VLC_SUCCESS;
 }
 
+static int ChangeSPU( vlc_object_t *p_this, const char *var, vlc_value_t o,
+                        vlc_value_t n, void *param )
+{
+    InputManager *im = (InputManager*)param;
+    im->b_has_subs = true;
+    return VLC_SUCCESS;
+}
+
 /* MIM */
 static int PLItemChanged( vlc_object_t *p_this, const char *psz_var,
                         vlc_value_t oldval, vlc_value_t newval, void *param )

_______________________________________________
vlc-devel mailing list
To unsubscribe or modify your subscription options:
http://mailman.videolan.org/listinfo/vlc-devel




More information about the vlc-devel mailing list