Expand description
Thin facade over oxideav_core.
oxideav is no longer an aggregator — it does NOT depend on any
sibling codec / container / filter / source crate. Instead, each
sibling crate self-registers into oxideav_core::REGISTRARS (a
linkme distributed slice) at link time. Consumers pull whichever
siblings they want into their own [dependencies], then call
with_all_features to materialise everything that ended up
linked.
For convenience there is a sibling oxideav-format-all
virtual crate that depends on every codec / container / filter /
source crate the framework knows about — oxideav-cli, oxideplay,
and similar “want everything” consumers depend on it.
§Quick start (everything)
[dependencies]
oxideav = "*"
oxideav-format-all = "*"ⓘ
let ctx = oxideav::with_all_features();§Quick start (selective)
[dependencies]
oxideav = "*"
oxideav-h264 = "*"
oxideav-aac = "*"
oxideav-mp4 = "*"ⓘ
// Only h264 + aac + mp4 self-register; the slice walker sees them.
let ctx = oxideav::with_all_features();Re-exports§
pub use oxideav_core as core;pub use oxideav_pipeline as pipeline;pub use oxideav_source as source;
Structs§
- Runtime
Context - Aggregate of every registry the framework consumes.
Traits§
- Runtime
Context Ext - Convenience trait so call sites can write
RuntimeContext::with_all_features()(matching the historicalRegistries::with_all_features()shape) without depending on the free function’s path.
Functions§
- with_
all_ features - Build a
RuntimeContextpopulated with every sibling crate that’s linked into the binary. - with_
all_ features_ filtered - Build a
RuntimeContextpopulated with every sibling crate whose namefilterreturnstruefor. Used by CLIs to implement opt-outs like--no-hwaccel(skipvideotoolbox/audiotoolbox). - with_
all_ features_ traced - Build a
RuntimeContextpopulated with every sibling crate, while invokingtrace(name)immediately before each registrar fires. Useful for diagnosing register-time hangs.
Type Aliases§
- Registries
- Back-compat alias — historically the aggregator exposed
Registries(codecs + containers). The unified context now lives inoxideav-coreand bundles all four registries (codec / container / source / filter), so consumers should preferRuntimeContextdirectly. The alias keeps existing call sites (reg.codecs,reg.containers) compiling unchanged.