-
Notifications
You must be signed in to change notification settings - Fork 46
ad hoc interop reports
Capturing anecdotal reports of interop achieved during hackathons, etc.
Link: aiomoqt (Python asyncio MoQT over aiopquic)
Tested as publisher + subscriber client pair through each public relay, raw QUIC (moqt-18) and WebTransport: control-plane conformance (6-case suite: setup, announce, publish-namespace-done, subscribe-error, announce-subscribe, subscribe-before-announce) plus end-to-end object delivery (pub -> relay -> subs, objects counted at the subscriber).
- moxygen (fb.mvfst.net:9448):
- Verified publish - subscribe, objects delivered end-to-end
- Nokia (moqt.nokiaresearch.com:4443):
- Verified publish - subscribe, objects delivered end-to-end
- Relay holds SUBSCRIBE_OK until upstream serves (forward-and-wait model); objects flow — noted, not a failure
- Lorenzo's - Meetecho imquic (lminiero.it:9000):
- Verified publish - subscribe, objects delivered end-to-end (verified 2026-07-24)
- openmoq moqx (moqx-main.ci.openmoq.org:4433):
- Verified publish - subscribe, objects delivered end-to-end, MOQv14/v16/v18
- moqtail (relay18.moqtail.dev):
- Verified publish - subscribe, objects delivered end-to-end (verified 2026-07-24)
- Cloudflare (draft-18-interop.cloudflare.mediaoverquic.com): control plane passes
(publisher sends PUB_NS + PUBLISH), object delivery fails: (can debug together as needed)
- Reproducible on raw QUIC and WT, 3 attempts each
- Cloudflare (draft-18-interop.cloudflare.mediaoverquic.com): much improved after the 2026-07 moq-rs updates — single-subscriber object delivery now passes. Still failing under concurrent subscribers: with 3 subscribers, one never completes SUBSCRIBE (request timeout, code=2) and the receiving subscribers get a partial set (763/912 complete objects). Identical on raw QUIC and WT (verified 2026-07-24).
- Luke's cdn.moq.pro/anon: subscribe-error and subscribe-before-announce cases fail; eager SUBSCRIBE_OK observed with zero objects forwarded. (can debug together as needed)
-
Working: moq-rs (v14), moq-rs draft-16 fork, moqx, moxygen clients — pass at MOQv14/v16
-
MOQv18 relay-side had control-plane bugs fixed on the 0.11.0 branch (unreleased)
-
Working at MOQv18 (official nightly 2026-07-24, docker, control plane): moxygen and moqx clients (raw QUIC + WT); imquic and moq5 clients (raw QUIC only — their WT connects fail on a known server-side H3 SETTINGS gap, fix in progress)
-
Failing at MOQv18: moq-dev-js, moq-dev-rs, moq-go, moq-rs-draft-18, moqtopus, xquic clients — d18 session-establishment defects on our side, fixed with reproducing tests on the unreleased 0.11.0 branch; re-validation lands with the 0.11.0 release
- Compat tolerances are opt-in and annotated in TAP output, never silently passed. At v18: Cloudflare endpoints require PUB_NS + PUBLISH (publish-both). At v16 only: tolerate CF d16 fork's truncated trailing-extensions block (lenient-extensions) and libquicr's non-spec error codes.
- Full matrix (v14/v16/v18 x raw QUIC/WT, incl. join + fetch tiers): CI run
Link: moq-encoder-player
- MOQTail (MOQv18 - MOQMIv3):
- Verified video-audio publish - subscribe (PLAYBACK OK)
- moxygen (MOQv18 - MOQMIv3):
- Verified video-audio publish - subscribe (PLAYBACK OK)
- Nokia (MOQv18 - MOQMIv3):
- Verified video-audio publish - subscribe (PLAYBACK OK)
- Lorenzo's -Meetecho (MOQv18 - MOQMIv3):
- Verified video-audio publish - subscribe (PLAYBACK OK)
- Cloudflare: Failing on SUBSCRIBE (closing QUIC stream)
- Luke's cdn.moq.pro/anon : Failing on SUBSCRIBE (closing QUIC stream)
moxygen (Alan Frindell)
-
Nokia:
- Verified PUBLISH + SUB_TRACKs and PUB_NS + SUBSCRIBE flows
- Passing all 41 data plane tests with draft-18 QUIC and WT
-
moq.pro/anon
- QUIC connection fails with 401
- WT connection requires buffering WT streams before 200 because of quic/wt/moq interactions. Implementing
Moqtopus (Kota Yatagai) draft-18
- Nokia
- PUBLISH_NS and SUBSCRIBE flow works for both subgroup and datagram
- REQUEST_UPDATE and corresponding OK or ERROR also works
- Meetecho
- PUBLISH_NS and SUBSCRIBE flow works for both subgroup and datagram
- REQUEST_UPDATE and corresponding OK or ERROR also works
- Moxygen
- PUBLISH_NS and SUBSCRIBE flow works for both subgroup and datagram
- REQUEST_UPDATE and corresponding OK or ERROR also works
- Cloudflare
- PUBLISH_NS and SUBSCRIBE flow works for both subgroup and datagram
- REQUEST_UPDATE and corresponding OK or ERROR also works
- moq.pro
- Both publisher and subscriber fails after SETUP with peer shutdown
(From Jordi Cenzano)
Encoder(moq-encoder-player) -> Relay(X) -> Player (moq-encoder-player)
- draft-16 interop with mvfst relay https://fb.mvfst.net:9448/moq-relay
- draft-16 interop with Lorenzo's relay https://lminiero.it:9000/
(from Suhas Nandakumar)
-
draft-18 interop between https://quicr.github.io/moq-web/branches/draft-18/ and Lorenzo's relay https://lminiero.it:9000/
-
draft-18 interop between https://quicr.github.io/moq-web/branches/draft-18/ and Nokia Research relay: https://moqt.nokiaresearch.com:4443/moq
-
draft-18 interop between https://quicr.github.io/moq-web/branches/draft-18/ and mvfst relay https://fb.mvfst.net:9448/moq-relay
(from Kota Yatagai)
- Moqtopus subscriber successfully negotiated SETUP and SUBSCRIBE/SUBSCRIBE_OK with imquic (lminiero.it:9000)
(from Alan Frindell and Aman Sharma)
-
Full draft-16 interop with google quiche
-
draft-18 interop between moq-web (Suhas) and the moxygen relay
-
Very minimal draft-18 interop with Lorenzo
-
draft-18 interop between Nokia and moxygen relay. Minimal interop between moxygen and Nokia relay