wl_output ambiguity, xdg_shell fullscreen refresh rate

Philipp Kerling pkerling at casix.org
Sun May 14 12:43:44 UTC 2017


Hi Wayland team and community,

allow me to quickly introduce myself first, since this is my first post
on this list.
I'm Philipp, studying Computer Engineering and currently working on
getting Wayland support (back) in Kodi as Google Summer of Code project
[1] [2].I might have to ask some questions about specific aspects of
Wayland over the next few months. I'll try not to be too annoying
though :-)
Please tell me if this is not the right place to ask this kind of stuff
or if anything is unclear.

To start off:
 * Kodi should offer the user the opportunity to select inside the
   application on which monitor he/she wants to have Kodi displayed on
   when in full-screen mode. Now I see that I can do this with either
   wl_shell_surface::set_fullscreen and zxdg_toplevel::set_fullscreen,
   which expect a wl_output to display the window on. But I am not sure
   how I should match the wl_output instance I get from Wayland with
   the monitor that the user selected. As far as I can see, I can only
   identify the monitor by way of "make" and "model". This seems
   reasonable enough at first glance, but I think that in multi-monitor 
   configurations it is not so uncommon to buy the same monitor model
   multiple times - I personally have done this. Naturally, the "make"
   and "model" of both monitors are identical, so I cannot discern
   which is which by looking at the wl_output metadata. Am I missing
   something here? Why isn't e.g. the connector the output is connected
   to exported? This would allow way better matching and also give the
   user a chance to select the right monitor without having to try all
   options. Serial number (or anything similar - not sure if the EDID
   has this though) could also be OK.
 * Am I correct in that if I use zxdg_toplevel (i.e. give this role to
   a surface), I cannot also use wl_shell_surface? If so, this would be
   quite a problem. I can see that zxdg_toplevel functionality is
   mostly superior to that of wl_shell_surface, but it has one omission
   that is crucial for Kodi: the ability to request a specific refresh
   rate for fullscreen display. This is needed for closely matching the
   display and video FPS so duplicated and skipped frames are kept to a
   minimum. Is this an intentional omission and/or is there anything
   that provides this functionality?


Best regards,
Philipp Kerling

[1] https://summerofcode.withgoogle.com/projects/#4913542374359040
[2] http://forum.kodi.tv/showthread.php?tid=309254&pid=2552143#pid2552143


More information about the wayland-devel mailing list