pub struct AudioPipelineConfig {
pub input_device: Option<String>,
pub output_device: Option<String>,
pub echo_cancellation: bool,
pub noise_suppression: bool,
pub auto_gain_control: bool,
pub custom_processors: Vec<AudioProcessor>,
pub buffer_size: usize,
pub enable_frame_access: bool,
}
Expand description
Configuration for custom audio pipelines
Fields§
§input_device: Option<String>
Input device ID (None for default)
output_device: Option<String>
Output device ID (None for default)
echo_cancellation: bool
Enable echo cancellation
noise_suppression: bool
Enable noise suppression
auto_gain_control: bool
Enable automatic gain control
custom_processors: Vec<AudioProcessor>
Custom pipeline components
buffer_size: usize
Buffer size in frames
enable_frame_access: bool
Enable direct frame access
Implementations§
Source§impl AudioPipelineConfig
impl AudioPipelineConfig
Sourcepub fn input_device(self, device: impl Into<String>) -> Self
pub fn input_device(self, device: impl Into<String>) -> Self
Set input device
Sourcepub fn output_device(self, device: impl Into<String>) -> Self
pub fn output_device(self, device: impl Into<String>) -> Self
Set output device
Sourcepub fn echo_cancellation(self, enabled: bool) -> Self
pub fn echo_cancellation(self, enabled: bool) -> Self
Enable/disable echo cancellation
Sourcepub fn noise_suppression(self, enabled: bool) -> Self
pub fn noise_suppression(self, enabled: bool) -> Self
Enable/disable noise suppression
Sourcepub fn auto_gain_control(self, enabled: bool) -> Self
pub fn auto_gain_control(self, enabled: bool) -> Self
Enable/disable automatic gain control
Sourcepub fn add_processor(self, processor: Box<dyn AudioProcessorTrait>) -> Self
pub fn add_processor(self, processor: Box<dyn AudioProcessorTrait>) -> Self
Add a custom audio processor
Sourcepub fn enable_frame_access(self, enabled: bool) -> Self
pub fn enable_frame_access(self, enabled: bool) -> Self
Enable frame-level access
Sourcepub fn buffer_size(self, size: usize) -> Self
pub fn buffer_size(self, size: usize) -> Self
Set buffer size
Trait Implementations§
Source§impl Clone for AudioPipelineConfig
impl Clone for AudioPipelineConfig
Source§fn clone(&self) -> AudioPipelineConfig
fn clone(&self) -> AudioPipelineConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreAuto Trait Implementations§
impl Freeze for AudioPipelineConfig
impl !RefUnwindSafe for AudioPipelineConfig
impl Send for AudioPipelineConfig
impl Sync for AudioPipelineConfig
impl Unpin for AudioPipelineConfig
impl !UnwindSafe for AudioPipelineConfig
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more