backend-vnc: add VNC support using Neat VNC library
This adds basic VNC protocol support using the Neat VNC library (https://github.com/any1/neatvnc ). Neat VNC depends on the AML main loop library. The backend makes use of AML's integrated epoll backend and connects AML via file descriptor with the Wayland event loop. This implementation does not support authentication and hardcodes the pixel format currently. Co-authored-by: Philipp Zabel <p.zabel@pengutronix.de> Co-authored-by: Rouven Czerwinski <r.czerwinski@pengutronix.de> Signed-off-by: Stefan Agner <stefan@agner.ch> [r.czerwinski@pengutronix.de: - use new (as of 0.5.0) Neat VNC buffer API, with a buffer pool] Signed-off-by: Rouven Czerwinski <r.czerwinski@pengutronix.de> [p.zabel@pengutronix.de: - transform repaint damage to output coordinates - transform pointer coordinates into global space - check that outputs and heads are in fact ours, see aab722bb..060ef82d - track damage across multiple frame buffers - choose pixel format by drm_fourcc, see 8b6c3fe0 - enable ctrl and alt modifiers - fix frame timing to achieve a constant repaint rate - pass initial size explicitly, see f4559b07 - use resize_output with pixman-renderer, see 55d08f96..84b5d0eb - allow configuring the refresh rate] Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Loading
Please register or sign in to comment