WebRTC.rs

License: MIT Discord Twitter

A pure Rust implementation of WebRTC stack. Rewrite Pion WebRTC stack in Rust

Sponsored with 💖 by

Stream Chat embark

#

Table of Content

#

Overview

WebRTC.rs is a pure Rust implementation of WebRTC stack, which rewrites Pion stack in Rust.

Features

Media PeerConnection DataChannel
RTP RTCP SRTP SCTP
DTLS
ICE STUN TURN mDNS
SDP Util

WebRTC Stack

Building

Toolchain

webrtc-rs currently requires Rust 1.52.1+ to build.

Monorepo Setup

All webrtc dependent crates are added as submodules of this repository under /crates/.

git clone https://github.com/webrtc-rs/webrtc cd webrtc git submodule update --init --recursive

To build all webrtc dependent crates:

cd webrtc/crates cargo build [or clippy or test or fmt]

To build webrtc crate:

cd webrtc cargo build [or clippy or test or fmt]

Testing with Local Dependencies

Follows this instruction about how to replace dependencies with patch for local testing: https://doc.rust-lang.org/edition-guide/rust-2018/cargo-and-crates-io/replacing-dependencies-with-patch.html

Contributing

Contributors or Pull Requests are Welcome!!!