[vlc-devel] [RFC PATCH 6/8] libvlc: start/stop vlc_renderer on new media
Thomas Guillem
thomas at gllm.fr
Thu Feb 18 17:33:16 CET 2016
start/stop are no-op if no renderer was configured.
---
lib/media_player.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/lib/media_player.c b/lib/media_player.c
index 58b2de9..ab0a833 100644
--- a/lib/media_player.c
+++ b/lib/media_player.c
@@ -35,6 +35,7 @@
#include <vlc_vout.h>
#include <vlc_aout.h>
#include <vlc_keys.h>
+#include <vlc_renderer.h>
#include "libvlc_internal.h"
#include "media_internal.h" // libvlc_media_set_state()
@@ -138,6 +139,7 @@ static void release_input_thread( libvlc_media_player_t *p_mi )
if( !p_input_thread )
return;
p_mi->input.p_thread = NULL;
+ vlc_renderer_stop( p_mi );
var_DelCallback( p_input_thread, "can-seek",
input_seekable_changed, p_mi );
@@ -925,6 +927,7 @@ int libvlc_media_player_play( libvlc_media_player_t *p_mi )
return -1;
}
+ vlc_renderer_start( p_mi, p_input_thread );
var_AddCallback( p_input_thread, "can-seek", input_seekable_changed, p_mi );
var_AddCallback( p_input_thread, "can-pause", input_pausable_changed, p_mi );
var_AddCallback( p_input_thread, "program-scrambled", input_scrambled_changed, p_mi );
@@ -933,6 +936,7 @@ int libvlc_media_player_play( libvlc_media_player_t *p_mi )
if( input_Start( p_input_thread ) )
{
+ vlc_renderer_stop( p_mi );
unlock_input(p_mi);
del_es_callbacks( p_input_thread, p_mi );
var_DelCallback( p_input_thread, "intf-event", input_event_changed, p_mi );
--
2.7.0
More information about the vlc-devel
mailing list