TCP ICE candidate (Direct TCP) for WebRTC has been added #2109
Pinned
getroot
announced in
Announcement
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
WebRTC sessions can now connect over TCP without going through a TURN relay. This is implemented as Direct TCP ICE (RFC 6544), so the player talks to OvenMediaEngine directly over TCP when UDP is blocked. Compared to the previous TURN-based TCP path, there is one fewer hop and no relay overhead, which lowers latency and saves resources.
You can test it on the latest master branch.
What you need to configure
Direct TCP ICE and TURN relay can be used together. If you only need direct TCP, you can drop
<TcpRelay>.Transport policy (
?transport)<DefaultTransport>(default:udptcp)udptcprelayudptcpallBehavior change
?transport=tcpused to mean "go through the TURN relay over TCP". It now means Direct TCP ICE. To keep the previous behavior, use?transport=relay.<TcpForce>is renamed to<TcpRelayForce>. The old name is still accepted for backward compatibility.Backward compatibility
Existing OvenPlayer setups continue to work without changes. Direct TCP ICE is added on top of the existing UDP and TURN relay paths, and the default policy keeps the previous behavior unless you opt into the new modes.
Manual
https://docs.ovenmediaengine.com/dev/live-source/webrtc#bind
https://docs.ovenmediaengine.com/dev/streaming/webrtc-publishing#configuration
All reactions