Uncompromised 4K Sharing.
Peer-to-peer screen sharing with no server bandwidth bill and no quality cap. Video flows directly between peers over QUIC with iroh hole-punching.
Peer-to-Peer Transport
Built on iroh for QUIC transport and NAT hole-punching. Each encoded frame travels on its own QUIC uni-stream so a lost packet in one frame never blocks later frames. A bidirectional control stream handles handshakes, keyframe requests, and status. Direct connections sustain full 4K with no relay bottleneck.
Frame Pipeline
FFmpeg H.264 encode/decode with optional VA-API hardware encoding on Linux. Screen capture via scap with PipeWire on Linux. The viewer-side reorder buffer feeds frames to the decoder in sequence, tracking decoded FPS, displayed FPS, and frame age in milliseconds.
Ticket-Based Discovery
One sharer generates a ticket. One viewer pastes it. No accounts, no sign-up, no central directory. iroh tickets encode everything needed to establish the connection — peer ID, relay hints, and network keys.
Modular Architecture
Four crates: warp-proto for postcard-serialized protocol messages, warp-net for iroh endpoints and media transport, warp-media for frame sources and FFmpeg, and warp-app for the iced UI and session orchestration.
"No server. No quality cap. Just peers."
Get Started
# Terminal A — Share
WARP_SYNTHETIC=1 cargo run -p warp-app
# Terminal B — Watch
cargo run -p warp-app
Click Share my screen, copy the ticket, paste it in Terminal B, and click Watch. Status bar shows direct when iroh established a direct path.