hang
The hang media format on top of moq-net: a live catalog describing renditions with WebCodecs-style decoder configs, and containers that carry a timestamp with every frame.
- Catalog producer and consumer. Typed
VideoConfigandAudioConfigper rendition, shared video properties (display size, rotation, flip), stalled hints, cross-broadcast rendition references, and timeline tracks. Extend it with your own sections through a lock or#[serde(flatten)], or read unknown sections as raw JSON. - Containers.
legacy,cmaf, andloc, decoded for you; unknown kinds pass through untouched. OrderedConsumerreads a media track as timestamped frames, reorders groups, and skips ones that fall past your latency budget.- Codecs described: H.264, H.265, VP8, VP9, AV1, AAC, Opus, PCM.
bash
cargo add hangProducing media is usually done through moq-mux (from a container) or moq-video and moq-audio (from a device), which build the catalog for you. Examples: video.rs and subscribe.rs. API: docs.rs/hang. The TypeScript twin is @moq/hang.