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.

View on GitHub ↓ SCROLL TO DISSECT
TECHNICAL_SPECIFICATION_V1
LANGUAGERUST
TRANSPORTQUIC / iroh
CODECH.264 (FFmpeg)
UIiced (desktop)
[01]

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.

[02]

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.

[03]

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.

[04]

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.