pub fn select_encoder(
config: EncoderConfig,
preferred: Option<EncoderBackend>,
) -> Result<Box<dyn Encoder>>Expand description
Create the best available AV1 encoder.
Priority: NVENC (Ada+) → AMF (RDNA3+) → QSV (Arc / Meteor Lake+).
GPU-only — there is no CPU fallback. Hosts without AV1-encode silicon hard-fail at construction. The previous rav1e CPU and Vulkan Video tiers were removed 2026-05-08: rav1e on Archive preset doesn’t keep up with real-time throughput at 4K and the Vulkan-encode binding never made it past scaffolding. All backends compiled in; availability checked at runtime.