<html><head></head><body>I doubt that users expect the splitter setup to apply to all vouts at the same time always, frankly.<br><br><div class="gmail_quote">Le 28 novembre 2018 16:50:26 GMT+02:00, Victorien Le Couviour--Tuffet <victorien.lecouviour.tuffet@gmail.com> a écrit :<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<pre class="k9mail">The vout can't handle live "video-splitter" change for now.<br>To work-around this issue, this function will set this variable and<br>restart all vouts.<hr> include/vlc_player.h | 10 +++++++++-<br> src/input/player.c | 11 +++++++++--<br> src/libvlccore.sym | 1 +<br> 3 files changed, 19 insertions(+), 3 deletions(-)<br><br>diff --git a/include/vlc_player.h b/include/vlc_player.h<br>index 78d78d29d3..4c0d1abe74 100644<br>--- a/include/vlc_player.h<br>+++ b/include/vlc_player.h<br>@@ -332,7 +332,6 @@ enum vlc_player_subtitle_sync<br> */<br> enum vlc_vout_filter_type<br> {<br>- VLC_VOUT_FILTER_VIDEO_SPLITTER,<br> VLC_VOUT_FILTER_VIDEO_FILTER,<br> VLC_VOUT_FILTER_SUB_SOURCE,<br> VLC_VOUT_FILTER_SUB_FILTER,<br>@@ -2446,6 +2445,15 @@ vlc_player_GetStatistics(vlc_player_t *player);<br> VLC_API void<br> vlc_player_SetPauseOnCork(vlc_player_t *player, bool enabled);<br> <br>+/**<br>+ * Set a video splitter to all vouts and all future vouts<br>+ *<br>+ * @param player locked instance<br>+ * @param splitter a video splitter name or NULL<br>+ */<br>+VLC_API void<br>+vlc_player_SetVideoSplitter(vlc_player_t *player, const char *splitter);<br>+<br> /**<br> * Get the audio output<br> *<br>diff --git a/src/input/player.c b/src/input/player.c<br>index 59d2fdb774..3609c5962f 100644<br>--- a/src/input/player.c<br>+++ b/src/input/player.c<br>@@ -3352,6 +3352,15 @@ vlc_player_vout_TriggerOption(vlc_player_t *player, const char *option)<br> free(vouts);<br> }<br> <br>+void<br>+vlc_player_SetVideoSplitter(vlc_player_t *player, const char *splitter)<br>+{<br>+ vlc_player_assert_locked(player);<br>+ vlc_player_vout_SetVar(player, "video-splitter", VLC_VAR_STRING,<br>+ (vlc_value_t) { .psz_string = (char *) splitter });<br>+ vlc_player_RestartTrackCategory(player, VIDEO_ES);<br>+}<br>+<br> void<br> vlc_player_vout_SetFullscreen(vlc_player_t *player, bool enabled)<br> {<br>@@ -3379,8 +3388,6 @@ vlc_vout_filter_type_to_varname(enum vlc_vout_filter_type type)<br> {<br> switch (type)<br> {<br>- case VLC_VOUT_FILTER_VIDEO_SPLITTER:<br>- return "video-splitter";<br> case VLC_VOUT_FILTER_VIDEO_FILTER:<br> return "video-filter";<br> case VLC_VOUT_FILTER_SUB_SOURCE:<br>diff --git a/src/libvlccore.sym b/src/libvlccore.sym<br>index 9423e2fc20..d4db4ccc51 100644<br>--- a/src/libvlccore.sym<br>+++ b/src/libvlccore.sym<br>@@ -883,6 +883,7 @@ vlc_player_SetSubtitleSync<br> vlc_player_SetTeletextEnabled<br> vlc_player_SetTeletextTransparency<br> vlc_player_SetTrackCategoryEnabled<br>+vlc_player_SetVideoSplitter<br> vlc_player_Start<br> vlc_player_Stop<br> vlc_player_title_list_GetAt</pre></blockquote></div><br>-- <br>Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.</body></html>