Vivid Protocol
Vivid Protocol provides the shared wire-format implementation for the Vivid terminal media protocol. It is intended for terminal presenters, media producers, conformance tools, and protocol tracers that need to exchange Vivid records without depending on a renderer or terminal emulator.
The crate currently provides:
- Vivid connection prefaces, record headers, ordered framing, endpoint parsing, and limits;
- deterministic CBOR encoding with strict bounded decoding;
- the Vivid 1.0 opcode, feature, error, and configuration registries;
- control-message encoders and parsers;
- full-frame RGBA raster and encoded-video packet layouts.
[]
= "0.1"
use ;
let bytes = encode_preface;
let preface = decode?;
assert_eq!;
# Ok::
The public modules are organized by protocol plane:
wire— connections, prefaces, headers, sequencing, and record framing;cbor— deterministic control-value encoding and bounded decoding;messages— numeric registries plus control-message schemas;media— raster-frame and video-packet binary layouts.
The crate follows the Vivid protocol version exposed by PROTOCOL_MAJOR and PROTOCOL_MINOR.
Before Vivid 1.0 stabilizes, 0.x releases may make breaking API or wire-profile corrections.
License
Licensed under Apache-2.0.