NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #4087 most downloaded on crates.io
A pure Rust implementation of RTP
Last release 2 months ago
20 Jul 2026
Ships fairly regularly
a new release about every 4 months
Rarely documented
notes for 4 of 37 stable releases
1 version withdrawn
withdrawn after publishing
6 years old
38 releases · first in 2021
One column per quarter.
ice: Release TURN allocation even if candidate was already closed by @marcin-p-porebski in #799
Full Changelog: v0.17.1...v0.17.2
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Increased minimum support rust version to 1.60.0.
1.60.0.rtp::extension::HeaderExtension which allows abstracting over all known extensions as well as custom extensions. #336 by @k0nserv.urn:3gpp:video-orientation) extension support. #331 by @algesten.webrtc-util version to 0.7.0.Bumped util dependency to 0.6.0.
0.6.0.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
The serialized format for RTCIceCandidateInit has changed to match what the specification i.e. keys are camelCase. #153 Make RTCIceCandidateInit confo
RTCIceCandidateInit has changed to match what the specification i.e. keys are camelCase. #153 Make RTCIceCandidateInit conform to WebRTC spec contributed by jmatss.a=inactive will not stop the transceiver, instead attached senders and receivers will pause. A transceiver can be resurrected by setting direction back to e.g. a=sendrecv. The desired direction can be controlled with the newly introduced public method set_direction on RTCRtpTransceiver.
a=msid line for m= line sections according to the specification. This might be break remote peers that relied on the previous, incorrect, behaviour. This also fixes a bug where an endless negotiation loop could happen. #217 Correct msid handling for RtpSender contributed by k0nservnegotiated: Option<bool> and id: Option<u16> in RTCDataChannelInit there's now a more idiomatic negotiated: Option<u16>. If you have a pre-negotiated data channel simply set negotiated: Some(id) when creating the data channel.
We made various improvements and fixes since 0.4.0, including merging all subcrates into a single git repo. The old crate repos are archived and all development will now happen in https://github.com/webrtc-rs/webrtc/.
We now provide stats reporting via the standardized RTCPeerConnection::get_stats method.
#278 Fix async-global-executor contributed by k0nserv
#276 relax regex version requirement contributed by melekes
#244 Update README.md instructions after monorepo merge contributed by k0nserv
#241 move profile to workspace contributed by xnorpx
#240 Increase timeout to "fix" test breaking contributed by algesten
#239 One repo (again) contributed by algesten
#234 Fix recent clippy lints contributed by k0nserv
#224 update call to DataChannel::accept as per data pr #14 contributed by melekes
#223 dtls_transport: always set remote certificate contributed by melekes
#216 Lower case mime types for comparison in fmpt lines contributed by k0nserv
#211 Helper to trigger negotiation_needed contributed by algesten
#209 MID generator feature contributed by algesten
#208 update deps + loosen some requirements contributed by melekes
#205 data_channel: handle stream EOF contributed by melekes
#204 [peer_connection] allow persistent certificates contributed by melekes
#202 bugfix-Udp connection not close (reopen #174) #195 contributed by shiqifeng2000
#199 Upgrade ICE to 0.7.0 contributed by k0nserv
#194 Add AV1 MimeType and RtpCodecParameters contributed by billylindeman
#188 Improve operations debuggability contributed by k0nserv
#187 Fix SDP for rejected tracks to conform to RFC contributed by k0nserv
#185 Adding some debug and display traits contributed by sevensidedmarble
#179 Fix example names in README contributed by ethagnawl
#176 Time overflow armv7 workaround contributed by frjol
#171 close DTLS conn upon err contributed by melekes
#170 always start sctp contributed by melekes
#167 Add offer/answer/pranswer constructors for RTCSessionDescription contributed by sax
The various sub-crates have been updated as follows:
Their respective change logs are found in the old, now archived, repositories and within their respective CHANGELOG.md files in the monorepo.
A big thanks to all the contributors that have made this release happen:
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →