Saorsa WebRTC - WebRTC implementation over ant-quic transport
This library provides a WebRTC implementation that uses ant-quic as the underlying
transport layer instead of traditional ICE/STUN/TURN. It features:
- Native QUIC Transport: Uses ant-quic for reliable, encrypted connections
- DHT-based Signaling: Distributed signaling without centralized servers
- Post-Quantum Cryptography: Built-in PQC support via ant-quic
- NAT Traversal: Automatic hole punching and relay fallback
- High Performance: Low-latency media streaming with QoS
Examples
use saorsa_webrtc_core::{WebRtcService, MediaConstraints, SignalingHandler, AntQuicTransport, TransportConfig, PeerIdentityString};
use std::sync::Arc;
# async fn example() -> anyhow::Result<()> {
let transport = Arc::new(AntQuicTransport::new(TransportConfig::default()));
let signaling = Arc::new(SignalingHandler::new(transport));
let service = WebRtcService::<PeerIdentityString, AntQuicTransport>::new(
signaling,
Default::default()
).await?;
service.start().await?;
let call_id = service.initiate_call(
PeerIdentityString::new("eve-frank-grace-henry"),
MediaConstraints::video_call()
).await?;
# Ok(())
# }