Standalone WebM container reader for CarbonEngineJS.
CjsFormatWEBM supports GPU-free container inspection, support reports, debug
JSON, raw bytes, and a metadata-only video payload. WebM inspection extracts
EBML timecode scale, duration, cluster/block counts, basic track type, codec,
language, default duration, codec-private size, video dimensions, and audio
properties where the corresponding elements are present. Cluster metadata also
reports bounded block timing, track IDs, keyframe flags, visibility, lacing
mode, and per-block laced frame counts/sizes for none, Xiph, fixed-size, and
EBML lacing. The video payload carries the source bytes and container metadata
but does not decode frames; playback and decoding belong to a media backend.
emit: "video" reports containerOnly: true, isDecoded: false,
frameDecodeSupported: false, mimeType, and codec summaries (codecs,
videoCodecs, audioCodecs) so CjsLibrary can decide whether a
browser/native media handler can display the encoded source or whether another
fallback path is required.
Support reports include both the raw byte handoff variant and the encoded
container variant; neither implies decoded frame support.
The package root exports CjsFormatWEBM. This package stays on the pure format
side: container inspection and encoded-container handoff live here, while
frame/sample decode, playback, and media-backend integration belong to sibling
media or backend packages.