RepositoryRust
WE

webrtc-rs/webrtc

Async-friendly WebRTC implementation in Rust

5.2kstars
526forks
12issues
2views

Thành tựu nổi bật

Những danh hiệu mới nhất của dự án

1
TINIX TRENDING·Chủ đề: rtc

#1 Repository Của Tuần

10
TINIX TRENDING·Chủ đề: async

#10 Repository Của Tuần

1
TINIX TRENDING·Chủ đề: rtc

#1 Repository Của Tuần

🚀 WebRTC.rs: WebRTC bất đồng bộ trong Rust, độc lập runtime

WebRTC.rs là phiên bản WebRTC hỗ trợ bất đồng bộ trong Rust, lấy cảm hứng từ Pion và đang chuyển đổi sang kiến trúc Sans-I/O để hỗ trợ nhiều runtime khác nhau.

WebRTC.rs là một thư viện WebRTC được viết bằng Rust, hỗ trợ lập trình bất đồng bộ. Dự án ban đầu dựa trên Pion và đang phát triển lại thành kiến trúc sạch, dễ sử dụng, không phụ thuộc vào runtime cụ thể. Hiện tại, dự án đang trong quá trình phát triển phiên bản v0.20.0 với kiến trúc mới dựa trên nền tảng rtc — lõi giao thức không I/O — và lớp trừu tượng runtime để hỗ trợ Tokio, async-std, smol và embassy.

✨ Điểm nổi bật

  • Kiến trúc Sans-I/O: Tách logic giao thức hoàn toàn khỏi I/O, dựa trên crate rtc với hơn 95% tuân thủ API W3C.
  • Hỗ trợ nhiều runtime: Tương thích với Tokio, async-std, smol, embassy nhờ lớp trừu tượng runtime phong cách Quinn.
  • Xử lý sự kiện sạch: Sử dụng trait-based event handlers với async fn in trait, tránh callback Arc và Box::new.
  • Quản lý trạng thái tập trung: Sử dụng &mut self để quản lý trạng thái, giảm thiểu sao chép Arc.
  • Kiểm thử xác định: Cho phép kiểm thử logic mà không cần I/O mạng thực.
  • Tính năng phát triển v0.20.0+: Tích hợp cờ tính năng runtime-tokio (mặc định), runtime-async-std, runtime-smol, runtime-embassy.

💡 Vì sao đáng chú ý

WebRTC.rs khác biệt so với các thư viện WebRTC khác bằng cách tách biệt hoàn toàn logic giao thức (thông qua crate rtc) ra khỏi lớp giao diện bất đồng bộ. Điều này giúp kiểm thử trở nên chính xác và dự đoán được, đồng thời cho phép sử dụng bất kỳ runtime nào. Với phiên bản v0.20.0+ sắp tới, dự án giải quyết các vấn đề như callback phức tạp, rò rỉ tài nguyên và kết nối chặt chẽ với Tokio. Phù hợp cho các ứng dụng thời gian thực, truyền video/audio, hoặc xây dựng hệ thống giao tiếp P2P trong môi trường Rust.


#WebRTC #Rust #Async #RealTimeCommunication #OpenSource #TiniX

Similar Projects

Discover other similar projects and AI models.

Modelsentence-similarity
sentence-transformers/all-MiniLM-L6-v2

all-MiniLM-L6-v2 This is a sentence-transformers(https://www.SBERT.net) model: It maps sentences & paragraphs to a 384 dimensional dense vector space and can be used for tasks like clustering or semantic search. Usage (Sentence-Transformers) Using t...

♥0
190.2M
Jun 1, 2026
Repository
getify/You-Dont-Know-JS

A book series (2 published editions) on the JS language.

184.8k
Feb 15, 2026
RepositoryRust
farion1231/cc-switch

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

148.9k
Oct 26, 2026
RepositoryC++
kunkundi/crossdesk

A lightweight, cross-platform remote desktop software with support for Web Client access | 一款支持 Web 客户端访问的轻量级跨平台远程桌面软件。

4.5k
Oct 20, 2026
RepositoryRust
rustdesk/rustdesk

An open-source remote desktop application designed for self-hosting, as an alternative to TeamViewer.

127.1k
Oct 26, 2026
RepositoryTypeScript
RocketChat/Rocket.Chat

The Secure CommsOS™ for mission-critical operations

46.3k
Oct 26, 2026
RepositoryTypeScript
freeCodeCamp/freeCodeCamp

freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming, and computer science for free.

457.9k
Oct 25, 2026
RepositoryPython
donnemartin/system-design-primer

Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.

375.7k
Sep 15, 2026
RepositoryTypeScript
nilbuild/developer-roadmap

Interactive roadmaps, guides and other educational content to help developers grow in their careers.

370.4k
Oct 25, 2026