47 releases (19 breaking)

Uses new Rust 2024

new 0.20.4 Aug 6, 2026
0.20.2 Jul 27, 2026
0.15.4 Mar 25, 2026
0.9.1 Dec 19, 2025
0.1.0 Mar 24, 2025

#1903 in Network programming

Download history 329/week @ 2026-04-17 385/week @ 2026-04-24 473/week @ 2026-05-01 458/week @ 2026-05-08 1028/week @ 2026-05-15 991/week @ 2026-05-22 959/week @ 2026-05-29 965/week @ 2026-06-05 4300/week @ 2026-06-12 2704/week @ 2026-06-19 3322/week @ 2026-06-26 2460/week @ 2026-07-03 3818/week @ 2026-07-10 5553/week @ 2026-07-17 6499/week @ 2026-07-24 6065/week @ 2026-07-31

22,535 downloads per month
Used in 19 crates (18 directly)

MIT/Apache

1.5MB
36K SLoC

Documentation Crates.io License: MIT

hang

A media library built on top of moq-lite for streaming audio and video. hang provides media-specific functionality, split into a few components:

  • Broadcast: A discoverable collection of tracks, documented using a catalog.
  • Catalog: Metadata describing the available tracks, codec information, etc. This is a live track itself and is updated as tracks are added/removed/changed.
  • Timeline: A per-track index mapping each of a media track's groups to its start timestamp, so consumers can seek (or build playlists) without downloading media. Advertised in the media track's catalog entry; itself a live track.
  • Track: Audio/video streams, as well as other types of data.
  • Group: A group of pictures (video) or collection of samples (audio). Each group is independently decodable.
  • Frame: A timestamp and a codec payload pair.

Supported Codecs

We most of the implement the WebCodecs specification.

  • Video: H.264, H.265, VP8, VP9, AV1
  • Audio: AAC, Opus

CMAF Import

For importing fMP4/CMAF files, see the moq-mux crate. For HLS, see the moq-hls crate.

Examples

Dependencies

~12–18MB
~255K SLoC