← Portfolio GonzalezDesk Lite Both ends of the connection run in this tab. The frames are really JPEG-encoded, packed into binary packets, and decoded on the other side.
Not controlling a computer · pick one on the left
No remote sessionPick an online computer to take control of it.

Try this: drag a window by its title bar, click into Notepad and type, or click a folder. Then stop and watch the traffic fall to almost nothing. Only the 64 px tiles that changed get sent.

Live link

0.0 KB/sscreen data, last 3 s
0packets sent per second
0 / 135tiles in the last packet
0 Bsize of the last packet
0 → 0mouse moves → packets sent (coalesced)

Same screen, three ways to send it

v1 · JSON + base64 full frames–
Binary header, full frame every time–
v2 · binary header + changed tiles–

Connect to a computer to measure.

Last packet header · 12 bytes

The relay routes a frame by reading these 12 bytes and never opens the JPEG data behind them. v1 wrapped every frame in JSON and base64-encoded the image, which made it 33% bigger.

Wire log

    The real one

    GonzalezDesk replaced paid remote-access licenses for a multi-office practice. Windows clients at each office connect through one relay server that routes every session. The v2 rewrite of its streaming engine was benchmarked against the original at 1920×1080:

    Host CPU per frame
    18.3 ms → 2.64 ms
    Data per frame
    42.3 KB → 4.2 KB
    Four live sessions
    ~55 Mbps → ~5.6 Mbps
    Picture sent
    960 px Q30 → 1920 px Q65

    Same as the v2 code

    • Tile-delta codec: only changed tiles are JPEG-encoded. A full keyframe goes out every 5 s, or whenever more than 60% of the screen changed.
    • Wire format: the same 12-byte header (magic, version, kind, flags, source, destination, sequence, length) and the same tile record layout.
    • Input lane: mouse moves are merged down to the latest position, but clicks and keys are never dropped. The cursor travels as its own tiny packet.

    Simulated here

    • The network: packets are handed across with a fixed 35 ms delay in place of a real relay server.
    • Sign-in: the real owner device proves who it is with an Ed25519 key signature, so ID 0 needs no password and can't be impersonated. Here that exchange is only logged.
    • Screen capture: the real client grabs the Windows desktop through DXGI. Here the "remote desktop" is drawn on a canvas at half size.