Celebrating the 22th anniversary of the UltraVNC: https://forum.uvnc.com/viewtopic.php?t=38031
Update: UltraVNC 1.4.3.6 and UltraVNC SC 1.4.3.6: https://forum.uvnc.com/viewtopic.php?t=37885
Important: Please update to latest version before to create a reply, a topic or an issue: https://forum.uvnc.com/viewtopic.php?t=37864

Join us on social networks and share our announcements:
- Website: https://uvnc.com/
- GitHub: https://github.com/ultravnc
- Mastodon: https://mastodon.social/@ultravnc
- Bluesky/AT Protocol: https://bsky.app/profile/ultravnc.bsky.social
- Facebook: https://www.facebook.com/ultravnc1
- X/Twitter: https://x.com/ultravnc1
- Reddit community: https://www.reddit.com/r/ultravnc
- OpenHub: https://openhub.net/p/ultravnc

client-side copyrect composition from DWM/aero "thumbnails"

Any features you would like to see in UltraVNC? Propose it here
Post Reply
crackwitz
Posts: 1
Joined: 2019-06-18 19:05

client-side copyrect composition from DWM/aero "thumbnails"

Post by crackwitz »

Hi.

The vista/7/... DWM has an api to get "thumbnails" which are really pristine, unoccluded bitmaps of every single window. combine that with a little hooking of HSHELL_WINDOWCREATED and others, store each window off-screen in the (clientside) framebuffer, and upgrade/add Copyrect encoding to do alpha blending for composition in-screen (or not, then you get black corners).

here someone used the DWM thumbnail API to grab individual windows. you'll notice they have all the window decorations (not just client area) and they still have full transparency with NO background baked in.

http://bartdesmet.net/blogs/bart/archiv ... /4495.aspx

The effect would be ZERO pixel updates for moving windows around, just sending a train of copyrects to recompose the screen from all visible windows.

I would also try to look into detecting areas that "scroll", so they too can be (mostly) copyrect-encoded.

would UltraVNC be interested in something like this?
Post Reply