moq-json 0.3.3

JSON publishing over MoQ tracks: snapshot/delta (RFC 7396 merge patch) objects, or append-log record streams.
Documentation

JSON publishing over moq-net tracks, in two modes:

  • [snapshot]: lossy. One JSON value updated over time; a consumer only gets the most recent value. Intermediate updates are collapsed and older groups are dropped.
  • [stream]: lossless. An ordered append-log of self-contained records; every record is preserved and delivered in order, nothing is ever superseded.

Pick [snapshot] when consumers care about "what is the value now" (a catalog, a status document) and [stream] when they care about every record (an event log, a media timeline).

Each mode comes in two layers. Producer/Consumer own a [moq_net] track and manage its groups. Encoder/Decoder are the same logic without the track: values in, frame payloads out (and back), with the encoder saying where the group boundaries fall. Reach for the codec layer when something else already owns the track, such as a moq_mux::container::Producer also managing a timeline and a catalog estimate.