PGPradhumn Gupta

Systems · 2026 · Active

beamdesk

Control your own machine from any browser. 60fps H.264 over QUIC, with no relay server.

screen streaming
60fpsscreen streaming
per frame, down from 267
7.4 KBper frame, down from 267
relay servers
0relay servers

My part
Everything

Source ↗

Run the agent on the machine you want to control. Open the client, which is a web app the agent serves itself, on any other device including a phone. You get its screen, its keyboard, its mouse and its speakers. Nothing is uploaded and there is no service to sign up for.

The first version sent MJPEG and it was terrible. Around 267 KB per frame, so any real connection fell over. Moving to hardware-encoded H.264, decoded in the browser with WebCodecs, took it to roughly 7.4 KB per frame. That is about 35 times less data for a picture that looks better.

The part I did not expect to matter was keyframes. Every keyframe is a latency spike, and a naive encoder configuration emits them constantly. Sending far fewer of them did more for perceived responsiveness than any amount of bitrate tuning.

Transport is QUIC over WebTransport where the browser supports it, and WebSocket everywhere else. Bitrate, resolution and framerate step down on their own when the link struggles. On a phone, touch gestures map to a trackpad and the on-screen keyboard types to the remote machine.

It has no stealth or evasion features, by design. It is for machines you own.

← All work