Skip to main content

CodecResolver

Trait CodecResolver 

Source
pub trait CodecResolver: Sync {
    // Required method
    fn resolve_tag(
        &self,
        tag: &CodecTag,
        probe_data: Option<&[u8]>,
    ) -> Option<CodecId>;
}
Expand description

Resolve a CodecTag (FourCC / WAVEFORMATEX / Matroska id / …) to a CodecId. The oxideav-codec registry implements this, but defining the trait here lets containers consume tag resolution via &dyn CodecResolver without pulling in the codec crate as a direct dependency.

probe_data — when Some — should carry enough of the first packet’s bytes for any registered probe function to look at. Pass None if the demuxer hasn’t read a packet yet; the registry falls back to priority-only resolution.

Required Methods§

Source

fn resolve_tag( &self, tag: &CodecTag, probe_data: Option<&[u8]>, ) -> Option<CodecId>

Implementors§