Skip to main content

Crate oxideav_mkv

Crate oxideav_mkv 

Source
Expand description

Pure-Rust Matroska (MKV/WebM) container.

Implements the EBML primitives plus enough of the Matroska schema to demux the audio codecs oxideav already understands (FLAC, Opus, Vorbis, PCM). The muxer can write back any codec we can carry — there are no codec-specific assumptions in the container layer.

WebM is exposed as a first-class peer of Matroska: the demuxer is shared (the two formats are byte-identical except for the DocType string and a restricted codec set), but the registry holds separate "matroska" and "webm" entries with their own probes and muxer factories. The WebM muxer enforces the WebM container guidelines: only VP8, VP9, AV1 for video and Vorbis, Opus for audio.

Modules§

avc
Annex-B → AVCC repacking for H.264 / V_MPEG4/ISO/AVC.
codec_id
Map between Matroska codec ID strings and oxideav CodecId.
demux
Matroska demuxer.
ebml
EBML (Extensible Binary Meta Language) primitives.
ids
Matroska element IDs we care about.
mux
Matroska muxer.

Functions§

register
Install the Matroska / WebM containers into a oxideav_core::RuntimeContext.
register_containers
Register both the "matroska" and "webm" containers.