MoQ is under active development. APIs and protocols may change between releases.

Skip to content

Media over QUICLive media without latency buildup

A composable protocol stack for real-time media and data at scale.

What is MoQ?

Media over QUIC (MoQ) is a family of protocols for live media and data. It uses independent QUIC streams so congestion on one part of a broadcast does not block newer content on another.

This project provides a production-oriented implementation in Rust and TypeScript. Its primary protocol stack is moq-lite for transport and hang for media, with compatibility for the IETF MoQ specifications.

Choose a path

GoalStart here
Run the local demoQuick start
Publish, play, or convert mediaApplications
Add MoQ to an applicationLibraries
Operate a relaymoq-relay
Learn the architecture and tradeoffsConcepts
Read the protocol specificationsInternet-Drafts

The main implementations are Rust for native applications and TypeScript for browsers and JavaScript runtimes. C, Python, Kotlin, Swift, and Go bindings wrap the Rust core.

Licensed under MIT or Apache-2.0