Skip to content

Draft Versions

moqtap v0.1 targets MoQT draft-14 (0xff00000e). This is the most widely implemented draft version as of early 2026.

During connection setup:

  1. moqtap sends CLIENT_SETUP with a list of supported versions
  2. The relay responds with SERVER_SETUP selecting one version
  3. moqtap loads the version-specific codec for the negotiated version

The negotiated version is displayed prominently in the UI.

AspectExample changes
Message type IDsCLIENT_SETUP was 0x40 in early drafts, now 0x20
Message fieldsSUBSCRIBE gained/lost fields between drafts
Feature availabilityFETCH didn’t exist in early drafts; PUBLISH is new in draft-14
Error codesCode values and meanings have shifted

moqtap’s codec has a DraftVersion enum. Adding a new draft version is additive — implement the version-specific parser alongside the existing one. The version abstraction isolates draft-specific logic.