MoQ is under active development. APIs will change, but we keep backwards wire compatibility.

Skip to content

@moq/flate ​

npm

Opaque payloads over @moq/net tracks, in two modes:

  • Snapshot: lossy latest-value, one payload per group.
  • Stream: lossless append-log in a single group.

The bytes are never inspected. Compression is opt-in: "none" (the default) or "deflate", and both sides set the same field. With "deflate", each group is one raw DEFLATE stream sync-flushed at every frame boundary, the same group-scoped DEFLATE @moq/json uses.

ts
import { Snapshot } from "@moq/flate";

const producer = new Snapshot.Producer({ track, compression: "deflate" });
producer.update(payload);

A payload is stamped when written, unless you pass its capture time: producer.update(payload, at).

The codec underneath is exported as Encoder/Decoder. Create one pair per group and feed frames in order.

The Rust twin is moq-flate.

Licensed under MIT or Apache-2.0