Crate moq_lite

Source
Expand description

§moq-lite: Media over QUIC Transport

moq-lite is a simplified implementation of the Media over QUIC (MoQ) transport protocol, designed for real-time live media delivery with sub-second latency at scale. It’s a fork of the IETF MoQ specification, optimized for practical deployment.

§Overview

MoQ is a pub/sub protocol built on top of QUIC that provides:

  • Real-time latency: Sub-second delivery for live media
  • Massive scale: CDN-like distribution via relay clustering
  • Network efficiency: Leverages QUIC’s multiplexing and partial reliability
  • Browser compatibility: Works with WebTransport for web applications

While designed for media, the transport is generic and can handle any live data streams.

Re-exports§

pub use web_transport;

Modules§

coding
This module contains encoding and decoding helpers.
message
Low-level message sent over the wire, as defined in the specification.

Structs§

Broadcast
BroadcastConsumer
Subscribe to abitrary broadcast/tracks.
BroadcastProducer
Receive broadcast/track requests and return if we can fulfill them.
Frame
FrameConsumer
Used to consume a frame’s worth of data in chunks.
FrameProducer
Used to write a frame’s worth of data in chunks.
Group
GroupConsumer
Consume a group, frame-by-frame.
GroupProducer
Create a group, frame-by-frame.
Origin
OriginConsumer
Consumes announced broadcasts matching against an optional prefix.
OriginProducer
Announces broadcasts to consumers over the network.
Path
A broadcast path that provides safe prefix matching operations.
Produce
A named tuple of a producer and consumer for convenience.
Session
A MoQ session, constructed with OriginProducer and OriginConsumer halves.
Track
TrackConsumer
A consumer for a track, used to read groups.
TrackProducer
A producer for a track, used to create new groups.

Enums§

Error
A list of possible errors that can occur during the session.

Constants§

ALPN
The ALPN used when connecting via QUIC directly.

Traits§

AsPath
A trait for types that can be converted to a Path.

Type Aliases§

OriginAnnounce
A broadcast path and its associated consumer, or None if closed.
PathOwned
Result