{"repo":"webrtc-rs/webrtc","free":true,"listed":false,"github":"https://github.com/webrtc-rs/webrtc","clone":"git clone https://github.com/webrtc-rs/webrtc.git","description":"Async-friendly WebRTC implementation in Rust","language":"Rust","stars":5121,"topics":["rtc","webrtc","rust","async"],"license":"Apache-2.0","category":"dev-tools","readme_excerpt":"Async-friendly WebRTC implementation in Rust Sponsored with 💖 by Gold Sponsors: Silver Sponsors: Bronze Sponsors: AdrianEddy Overview WebRTC.rs is an async-friendly WebRTC implementation in Rust, originally inspired by and largely rewriting the Pion stack. The async webrtc crate is a clean, ergonomic, runtime-agnostic rewrite on top of a Sans-I/O core; it ships with Tokio and smol runtime backends, and any other runtime can be plugged in by implementing one trait. Architecture: - rtc : Sans-I/O protocol core with complete WebRTC stack (95%+ W3C API compliance) - webrtc (this crate): a thin async layer over rtc : - PeerConnection — the user-facing async API handle; all operations (create offers/answers, add tracks, create data channels) are async - PeerConnectionDriver — an internal background event loop, spawned automatically, that owns the sockets, drives the Sans-I/O rtc core, handles timeouts, and dispatches events - Runtime — a trait abstracting timers, task spawning, and sockets, so the crate is runtime-agnostic 📖 Learn more: Read our architecture blog post for design details and roadmap. Getting Started Trying the 0.21 pre-release? Cargo does not select pre-release versions from a plain \"0.21\" requirement, so name it in full: Feature flags: Feature Default Description -------------------- --------- ------------------------------------------------------------------------- runtime-tokio ✅ Timers, task spawning and sockets via Tokio runtime-smol The same, via smol runtim","default_branch":null,"files":null,"tree":[],"storefront":"/r/webrtc-rs","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/webrtc-rs/webrtc/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}