On Mon, 25 Sep 2023, Arun Mani J <[email protected]> wrote:
> Hey all
> I would like to develop a virtual monitor, regarding which I need help. The 
> situation is, I need to design a virtual monitor and make it a top-level 
> window. I should be able to move windows to this monitor, render them and do 
> other things which can be done in a physical monitor.
>
> Of course, X11 and Mutter provide APIs to create virtual monitors. but I want 
> it to be as DE independent as possible. So I'm looking for a low-level 
> solution which might interface with the Kernel to act as a universal virtual 
> monitor.
>
> The closest I can get to is DRI and KMS. But I'm stuck on how to take it 
> forward as in how to fake this entire scenario.
>
> My assumption of the situation is like, I create a file in /dev that signals 
> "plugging-in" of a monitor, which makes Kernel load my custom driver. Window 
> managers, DRIs write to this file, as in write the data to be shown on the 
> monitor and my driver would take care of rendering those data on a top-level 
> window. But I think, this won't be that easy...
>
> This is similar to a virtual machine, but I just want to emulate a monitor 
> than a processor or so.
>
> Any pointers and documentation regarding this is highly appreciated. Yes, I'm 
> new to such kinda stuff but I'm ready to invest time and learn :)

Maybe look into drm/vkms [1][2].


BR,
Jani.


[1] https://docs.kernel.org/gpu/vkms.html
[2] https://docs.kernel.org/gpu/drm-uapi.html#using-vkms-to-test-drm-api


-- 
Jani Nikula, Intel

Reply via email to