Repository navigation
ScreenBridge 1.0.1
Connection reliability and diagnostics.
Viewers behind symmetric NAT or CGNAT could not connect: the only ICE server in effect was a single STUN host, and STUN alone cannot relay. ICE reached Checking, then failed after its 30s timeout, and the viewer sat on a blank video element with nothing in the log explaining why.
- The effective ICE server list is now logged at startup, with a warning when it contains no relay.
- Gathered candidate types are logged, so a missing
relaycandidate is visible at a glance. - A failed peer connection now reports why instead of only changing state.
- STUN defaults widened from one host to three, so a single DNS failure is not fatal.
- The dead
openrelay.metered.caentry in the preset configs is replaced with a TURN template.
Connecting from a restrictive network
If a peer is behind CGNAT or a firewall that blocks inbound UDP, a TURN relay is required and no amount of STUN will substitute. Fill in the commented [[ice_servers]] block in config.toml with your relay's host and credentials. TURN on the sharing side alone is enough — viewers connect outward to the relay.
Note that only the transport=udp entry produces relay candidates on the sharer: webrtc-rs 0.17 leaves TURN over TCP and TLS unimplemented. The TCP and TLS URLs are still worth listing, because the list is forwarded to the viewer and browsers do support them.
Install (Windows x86_64)
Unzip ScreenBridge-1.0.1-windows-x86_64.zip and run screenbridge.exe. The ffmpeg DLLs it loads at runtime ship in the same folder.