vlc | branch: master | Romain Vimont <[email protected]> | Tue Oct 9 13:35:30 2018 +0200| [3424d828a4c2c3cc9928683a116d3edd12661b09] | committer: Thomas Guillem
core: player: configure main player from vars Initialize the main playlist player settings from VLC variables. Signed-off-by: Thomas Guillem <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3424d828a4c2c3cc9928683a116d3edd12661b09 --- src/libvlc.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/libvlc.c b/src/libvlc.c index 078672ddef..2c946af84e 100644 --- a/src/libvlc.c +++ b/src/libvlc.c @@ -69,6 +69,7 @@ #include "libvlc.h" #include "playlist_legacy/playlist_internal.h" #include "misc/variables.h" +#include "input/player.h" #include <vlc_vlm.h> @@ -121,9 +122,29 @@ PlaylistConfigureFromVariables(vlc_playlist_t *playlist, vlc_object_t *obj) else repeat = VLC_PLAYLIST_PLAYBACK_REPEAT_NONE; + enum vlc_player_media_stopped_action media_stopped_action; + if (var_InheritBool(obj, "play-and-exit")) + media_stopped_action = VLC_PLAYER_MEDIA_STOPPED_EXIT; + else if (var_InheritBool(obj, "play-and-stop")) + media_stopped_action = VLC_PLAYER_MEDIA_STOPPED_STOP; + else if (var_InheritBool(obj, "play-and-pause")) + media_stopped_action = VLC_PLAYER_MEDIA_STOPPED_PAUSE; + else + media_stopped_action = VLC_PLAYER_MEDIA_STOPPED_CONTINUE; + + bool start_paused = var_InheritBool(obj, "start-paused"); + vlc_playlist_Lock(playlist); vlc_playlist_SetPlaybackOrder(playlist, order); vlc_playlist_SetPlaybackRepeat(playlist, repeat); + + vlc_player_t *player = vlc_playlist_GetPlayer(playlist); + + /* the playlist and the player share the same lock, and this is not an + * implementation detail */ + vlc_player_SetMediaStoppedAction(player, media_stopped_action); + vlc_player_SetStartPaused(player, start_paused); + vlc_playlist_Unlock(playlist); } _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
