AUDIO
Source snapshot · 12 October 2026

API reference / ravet_device::open_output

Function open_output 

pub fn open_output<P: Processor + Send + 'static>(
    device: &Device,
    config: StreamConfig,
    maximum_frames: usize,
    processor: P,
) -> Result<OutputStream, OpenError>
Expand description

Open an explicitly configured f32 output stream; unsupported device settings are returned by CPAL. No implicit sample format conversion or rate fallback. Fixed buffer size is a backend request, not a guaranteed callback size. Processors are moved into the callback after preparation. A panic silences output and permanently disables DSP for this stream; reopen to recover. Panic unwinding/handlers are exceptional and have no real-time guarantee.