Skip to content

Draft: net/quinn: Add Media over QUIC subscriber

Sanchayan Maity requested to merge SanchayanMaity/gst-plugins-rs:quinn-moq into main

This adds a moqdemux element which acts as a MoQ subscriber. With quinnquicsrc (requires !1634 (merged)) upstream to moqdemux, we can receive MoQ tracks.

Tested with moq-rs for MoQ draft version 05. moq-rs publisher example only sends two tracks packaged in CMAF as of now, which is what has been tested. We primarily use the type definitions and serializing/deserializing support of those types from moq-rs. MoQ messages on bidirectional stream and QUIC transport itself is completely handled within GStreamer. We do not rely on moq-rs in any way for this.

To test with moxygen we will need WebTransport and Low Overhead Container de-packetizer.

For testing, needs a small change in moq-rs/dev/pub. Scheme needs to be changed to moqt as we do not support WebTransport yet and use vanilla QUIC. MoQ specification supports both WebTransport and QUIC.

SCHEME="${SCHEME:-moqt}"

Run the MoQ relay and publisher as below in two separate terminals.

RUST_LOG=moq_relay=trace dev/relay
RUST_LOG=moq_pub=trace dev/pub
Edited by Sanchayan Maity

Merge request reports

Loading