<html><head></head><body>Hi,<br><br>As noted in the last or previous to last video workshop, the whole point of separating open and enable in window provider was to support this - just like why I split open and start in audio outputs earlier.<br><br>And with that, I totally disagree with your proposal to essentially regress the design.<br><br><div class="gmail_quote">Le 14 octobre 2019 23:42:26 GMT+03:00, Alexandre Janniaux <ajanni@videolabs.io> 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">Hi,<br><br>The rationale for having a per-module value is that the<br>would have some meaning only for the modules that report<br>it. Integer-screen name like xinerama ones could be used<br>as string too by having names like xinerama-0, xinerama-1<br>as they are mostly obsolete. Most systems with screens and<br>virtual screens are using strings nowadays because they are<br>easier to use by the end-user.<br><br>Currently we have vout_window_ReportOutput to report these<br>ids but I'm not sure it's even used by the core and the<br>wayland module is the only producer. Maybe we should add<br>more support for these reports but I see two issues related<br>to their usage:<br><br>When using audio devices, I tend to think that the user<br>don't really care if they have to change audio output<br>during the playback because the "main" audio device for the<br>common normal user (meaning wasapi/pulseaudio) is already<br>handled by the API of the audio multiplexer below, and<br>changing audio device is an occasional task (or the user<br>didn't really configured it, but that's not our UX problem<br>anymore).<br><br>In the situation of fullscreen devices, the dual concept is<br>the primary screen one. But in this case primary screen is<br>usually used for different things. For example, the UI are<br>usually started on the primary screen so basically every<br>time the setting "fullscreen-monitor" will have some meaning<br>are the times where you want to set it on a different<br>monitor, or almost, for instance because you have a TV<br>screen connected to the same desktop station. And I don't<br>know if a contextual menu to choose the fullscreen device<br>during the playback is a good idea or not but I think<br>setting it before the playback so that each file opens<br>directly on the correct screen is the use case people want.<br><br>In this case, you can't use the vout_window_ReportOutput<br>because the window module doesn't exist yet, or for advanced<br>usage you might want to configure it for another module<br>which is not opened and thus reports no fullscreen devices.<br>This is exactly what led us to using Qt as fullscreen<br>provider with QScreen indices at the first place.<br><br>I advised the added variable because it allows fixing most<br>of the usability issues without having to solve the issues<br>above. Either the UI is the correct provider for the screen<br>name, so it solves for the 99%, or the user is and it solves<br>for the 0.99% left.<br><br>I really don't think we can get the ideal behaviour before a<br>lot of work both on the core and all the window module, not<br>to mention that there is few documentation on this, although<br>what is there almost correctly specify all the API.<br><br>Regards,<br>--<br>Alexandre Janniaux<br>Videolabs<br><br>On Mon, Oct 14, 2019 at 10:05:24AM +0200, Thomas Guillem wrote:<br>><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;"><br> On Sun, Oct 13, 2019, at 16:22, Gabriel Luci wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;">I assume you mean because the output plugin doesn't necessarily have a window? So isn't this the same as all the "Window properties" settings, which are defined in the same place? Or would you prefer to see this under that "Window properties" section too?<br></blockquote> This option is a string for windows, but it could be an integer on other OSes<br> Rémi would prefer to have this option in win32/window.c<br><br> vlc_module_begin()<br>  set_shortname(N_("Win32 window"))<br>  set_description(N_("Win32 window"))<br>  set_category(CAT_VIDEO)<br>  set_subcategory(SUBCAT_VIDEO_VOUT)<br>  set_capability("vout window", 10)<br>  set_callback(Open)<br> vlc_module_end()<br><br> But I'm not sure about it, on Linux, this id would be something like "0:0", so a string too.<br> Personally, I prefer to have a global settings for all OSses (and maybe do some integer conversion on some implementations).<br><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;">On Sun, Oct 13, 2019 at 3:18 AM Rémi Denis-Courmont <remi@remlab.net> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #8ae234; padding-left: 1ex;">Le sunnuntaina 13. lokakuuta 2019, 6.58.28 EEST Gabriel Luci a écrit :<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #fcaf3e; padding-left: 1ex;"> This will contain the name of the display device to always show<br> fullscreen video on.<hr> src/libvlc-module.c | 6 ++++++<br> 1 file changed, 6 insertions(+)<br><br> diff --git a/src/libvlc-module.c b/src/libvlc-module.c<br> index d3da4e5fb8..163e4deda0 100644<br> --- a/src/libvlc-module.c<br> +++ b/src/libvlc-module.c<br> @@ -314,6 +314,11 @@ static const char *const ppsz_align_descriptions[] =<br> #define FULLSCREEN_LONGTEXT N_( \<br> "Start video in fullscreen mode" )<br><br> +#define FULLSCREEN_MONITOR_TEXT N_("Display device for fullscreen video")<br> +#define FULLSCREEN_MONITOR_LONGTEXT N_( \<br> + "In a multiple monitor configuration, you can specify the device name "<br> \ + "of the display that you want the fullscreen video window to open<br> on." ) +<br> #define VIDEO_ON_TOP_TEXT N_("Always on top")<br> #define VIDEO_ON_TOP_LONGTEXT N_( \<br> "Always place the video window on top of other windows." )<br> @@ -1641,6 +1646,7 @@ vlc_module_begin ()<br> add_bool( "fullscreen", false, FULLSCREEN_TEXT, FULLSCREEN_LONGTEXT,<br> false ) change_short('f')<br> change_safe ()<br> + add_string( "fullscreen-monitor", "", FULLSCREEN_MONITOR_TEXT,<br> FULLSCREEN_MONITOR_LONGTEXT, false ) add_bool( "embedded-video", 1,<br> EMBEDDED_TEXT, EMBEDDED_LONGTEXT, true )<br> add_bool( "xlib", true, "", "", true )<br></blockquote> The values depend on the output plugin, so thus does not belong as a global<br> setting, just like the audio output device.<br><br> --<br> レミ・デニ-クールモン<br> <a href="http://www.remlab.net/">http://www.remlab.net/</a><hr> vlc-devel mailing list<br> To unsubscribe or modify your subscription options:<br> <a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a><br></blockquote><hr>vlc-devel mailing list<br>To unsubscribe or modify your subscription options:<br><a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a><br></blockquote></blockquote><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;"><hr>vlc-devel mailing list<br>To unsubscribe or modify your subscription options:<br><a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a><br></blockquote><hr>vlc-devel mailing list<br>To unsubscribe or modify your subscription options:<br><a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a></pre></blockquote></div><br>-- <br>Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.</body></html>