pub struct SeparationConfig {
pub phase_coherence_weight: f32,
pub spectral_flux_weight: f32,
pub magnitude_correlation_weight: f32,
pub transient_sensitivity: f32,
pub temporal_smoothing: f32,
pub separation_curve: f32,
pub min_coherence: f32,
pub max_coherence: f32,
pub frequency_smoothing: bool,
}Expand description
Configuration for signal separation.
Fields§
§phase_coherence_weight: f32Weight for phase coherence in separation (0.0-1.0).
spectral_flux_weight: f32Weight for spectral flux in separation (0.0-1.0).
magnitude_correlation_weight: f32Weight for magnitude correlation (0.0-1.0).
transient_sensitivity: f32Transient sensitivity (higher = more sensitive to attacks).
temporal_smoothing: f32Temporal smoothing factor (0.0 = no smoothing, 1.0 = full smoothing).
separation_curve: f32Separation curve exponent (higher = sharper separation).
min_coherence: f32Minimum coherence threshold (below this = pure ambience).
max_coherence: f32Maximum coherence threshold (above this = pure direct).
frequency_smoothing: boolFrequency-dependent weighting (lower frequencies get more smoothing).
Implementations§
Source§impl SeparationConfig
impl SeparationConfig
Sourcepub fn with_phase_coherence_weight(self, weight: f32) -> Self
pub fn with_phase_coherence_weight(self, weight: f32) -> Self
Set phase coherence weight.
Sourcepub fn with_spectral_flux_weight(self, weight: f32) -> Self
pub fn with_spectral_flux_weight(self, weight: f32) -> Self
Set spectral flux weight.
Sourcepub fn with_transient_sensitivity(self, sensitivity: f32) -> Self
pub fn with_transient_sensitivity(self, sensitivity: f32) -> Self
Set transient sensitivity.
Sourcepub fn with_temporal_smoothing(self, smoothing: f32) -> Self
pub fn with_temporal_smoothing(self, smoothing: f32) -> Self
Set temporal smoothing.
Sourcepub fn with_separation_curve(self, curve: f32) -> Self
pub fn with_separation_curve(self, curve: f32) -> Self
Set separation curve.
Sourcepub fn music_preset() -> Self
pub fn music_preset() -> Self
Preset for music (more ambience preserved).
Sourcepub fn speech_preset() -> Self
pub fn speech_preset() -> Self
Preset for speech (cleaner separation).
Sourcepub fn aggressive_preset() -> Self
pub fn aggressive_preset() -> Self
Preset for aggressive separation.
Trait Implementations§
Source§impl Clone for SeparationConfig
impl Clone for SeparationConfig
Source§fn clone(&self) -> SeparationConfig
fn clone(&self) -> SeparationConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more