pub struct NoiseGate { /* private fields */ }Expand description
Noise Gate
A dynamics processor that attenuates signals below a threshold.
§Gate ballistics
The open/close decision uses hysteresis (a close threshold at 0.7× the
open threshold) plus a hold time (NoiseGate::HOLD_MS, default 10 ms):
the gate stays open for the hold time after the last supra-threshold sample,
so a signal dithering around the threshold does not chatter. The gate’s
anti-click fade uses an independent fade time (NoiseGate::FADE_MS,
default 5 ms) rather than the level-detector’s attack/release coefficients,
so the fade rate does not change with the detector ballistics. The fade
state is flushed to zero (Q017) so it settles to exactly 0 rather than
lingering in the denormal range.
Implementations§
Trait Implementations§
Source§impl GraphModule for NoiseGate
impl GraphModule for NoiseGate
Source§fn tick(&mut self, inputs: &PortValues, outputs: &mut PortValues)
fn tick(&mut self, inputs: &PortValues, outputs: &mut PortValues)
Process one sample given port values
Source§fn set_sample_rate(&mut self, sample_rate: f64)
fn set_sample_rate(&mut self, sample_rate: f64)
Set sample rate
Source§fn process_block(
&mut self,
inputs: &BlockPortValues,
outputs: &mut BlockPortValues,
frames: usize,
)
fn process_block( &mut self, inputs: &BlockPortValues, outputs: &mut BlockPortValues, frames: usize, )
Process a block of samples (optional optimization). Read more
Source§fn breaks_feedback_cycle(&self) -> bool
fn breaks_feedback_cycle(&self) -> bool
Whether this module breaks a feedback cycle in the patch graph. Read more
Source§fn serialize_state(&self) -> Option<Value>
fn serialize_state(&self) -> Option<Value>
Available on crate feature
alloc only.Serialize module state (alloc feature only)
Source§fn deserialize_state(&mut self, _state: &Value) -> Result<(), String>
fn deserialize_state(&mut self, _state: &Value) -> Result<(), String>
Available on crate feature
alloc only.Deserialize module state (alloc feature only)
Source§fn introspect(&self) -> Option<&dyn ModuleIntrospection>
fn introspect(&self) -> Option<&dyn ModuleIntrospection>
Available on crate feature
alloc only.Downcast this module to its
ModuleIntrospection view, if it exposes one. Read moreSource§fn introspect_mut(&mut self) -> Option<&mut dyn ModuleIntrospection>
fn introspect_mut(&mut self) -> Option<&mut dyn ModuleIntrospection>
Available on crate feature
alloc only.Mutable companion to
introspect, used to set internal parameters.Source§impl ModuleIntrospection for NoiseGate
Available on crate feature alloc only.
impl ModuleIntrospection for NoiseGate
Available on crate feature
alloc only.Auto Trait Implementations§
impl Freeze for NoiseGate
impl RefUnwindSafe for NoiseGate
impl Send for NoiseGate
impl Sync for NoiseGate
impl Unpin for NoiseGate
impl UnsafeUnpin for NoiseGate
impl UnwindSafe for NoiseGate
Blanket Implementations§
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