pub struct AnalysisResult {Show 13 fields
pub frequencies: Vec<f32>,
pub spl_db: Vec<f32>,
pub phase_deg: Vec<f32>,
pub estimated_lag_samples: isize,
pub impulse_response: Vec<f32>,
pub impulse_time_ms: Vec<f32>,
pub excess_group_delay_ms: Vec<f32>,
pub thd_percent: Vec<f32>,
pub harmonic_distortion_db: Vec<Vec<f32>>,
pub rt60_ms: Vec<f32>,
pub clarity_c50_db: Vec<f32>,
pub clarity_c80_db: Vec<f32>,
pub spectrogram_db: Vec<Vec<f32>>,
}Expand description
Result of FFT analysis
Fields§
§frequencies: Vec<f32>Frequency bins in Hz
spl_db: Vec<f32>Magnitude in dBFS
phase_deg: Vec<f32>Phase in degrees (compensated for latency)
estimated_lag_samples: isizeEstimated latency in samples
impulse_response: Vec<f32>Impulse response (time domain)
impulse_time_ms: Vec<f32>Time vector for impulse response in ms
excess_group_delay_ms: Vec<f32>Excess group delay in ms
thd_percent: Vec<f32>Total Harmonic Distortion + Noise (%)
harmonic_distortion_db: Vec<Vec<f32>>Harmonic distortion curves (2nd, 3rd, etc) in dB
rt60_ms: Vec<f32>RT60 decay time in ms
clarity_c50_db: Vec<f32>Clarity C50 in dB
clarity_c80_db: Vec<f32>Clarity C80 in dB
spectrogram_db: Vec<Vec<f32>>Spectrogram (Time x Freq magnitude in dB)
Trait Implementations§
Source§impl Clone for AnalysisResult
impl Clone for AnalysisResult
Source§fn clone(&self) -> AnalysisResult
fn clone(&self) -> AnalysisResult
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 AnalysisResult
impl RefUnwindSafe for AnalysisResult
impl Send for AnalysisResult
impl Sync for AnalysisResult
impl Unpin for AnalysisResult
impl UnsafeUnpin for AnalysisResult
impl UnwindSafe for AnalysisResult
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.