pub struct FirewheelConfig {Show 13 fields
pub num_graph_inputs: ChannelCount,
pub num_graph_outputs: ChannelCount,
pub hard_clip_outputs: bool,
pub initial_node_capacity: u32,
pub initial_edge_capacity: u32,
pub declick_seconds: f32,
pub initial_event_group_capacity: u32,
pub channel_capacity: u32,
pub event_queue_capacity: usize,
pub immediate_event_capacity: usize,
pub scheduled_event_capacity: usize,
pub buffer_out_of_space_mode: BufferOutOfSpaceMode,
pub logger_config: RealtimeLoggerConfig,
}Expand description
The configuration of a Firewheel context.
Fields§
§num_graph_inputs: ChannelCountThe number of input channels in the audio graph.
num_graph_outputs: ChannelCountThe number of output channels in the audio graph.
hard_clip_outputs: boolIf true, then all outputs will be hard clipped at 0db to help
protect the system’s speakers.
Note that most operating systems already hard clip the output, so this is usually not needed (TODO: Do research to see if this assumption is true.)
By default this is set to false.
initial_node_capacity: u32An initial capacity to allocate for the nodes in the audio graph.
By default this is set to 64.
initial_edge_capacity: u32An initial capacity to allocate for the edges in the audio graph.
By default this is set to 256.
declick_seconds: f32The amount of time in seconds to fade in/out when pausing/resuming to avoid clicks and pops.
By default this is set to 10.0 / 1_000.0.
initial_event_group_capacity: u32The initial capacity for a group of events.
By default this is set to 128.
channel_capacity: u32The capacity of the engine’s internal message channel.
By default this is set to 64.
event_queue_capacity: usizeThe maximum number of events that can be sent in a single call
to AudioNodeProcessor::process.
By default this is set to 128.
immediate_event_capacity: usizeThe maximum number of immediate events (events that do NOT have a scheduled time component) that can be stored at once in the audio thread.
By default this is set to 512.
scheduled_event_capacity: usizeThe maximum number of scheduled events (events that have a scheduled time component) that can be stored at once in the audio thread.
This can be set to 0 to save some memory if you do not plan on using
scheduled events.
By default this is set to 512.
buffer_out_of_space_mode: BufferOutOfSpaceModeHow to handle event buffers on the audio thread running out of space.
By default this is set to BufferOutOfSpaceMode::AllocateOnAudioThread.
logger_config: RealtimeLoggerConfigThe configuration of the realtime safe logger.
Trait Implementations§
Source§impl Clone for FirewheelConfig
impl Clone for FirewheelConfig
Source§fn clone(&self) -> FirewheelConfig
fn clone(&self) -> FirewheelConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more