pub struct SpectralAnalyzer;Expand description
Advanced spectral analysis engine
Implementations§
Source§impl SpectralAnalyzer
impl SpectralAnalyzer
Sourcepub fn find_peaks<T>(
spectrum: &Array<T>,
frequencies: &Array<T>,
height: Option<T>,
distance: Option<usize>,
prominence: Option<T>,
width: Option<T>,
) -> Result<PeakResult<T>>
pub fn find_peaks<T>( spectrum: &Array<T>, frequencies: &Array<T>, height: Option<T>, distance: Option<usize>, prominence: Option<T>, width: Option<T>, ) -> Result<PeakResult<T>>
Detect spectral peaks in a power spectrum
§Parameters
spectrum- Power spectrumfrequencies- Corresponding frequenciesheight- Minimum peak heightdistance- Minimum distance between peaks (in bins)prominence- Minimum peak prominencewidth- Minimum peak width
Sourcepub fn harmonic_analysis<T>(
spectrum: &Array<T>,
frequencies: &Array<T>,
max_harmonics: usize,
tolerance: T,
) -> Result<HarmonicResult<T>>
pub fn harmonic_analysis<T>( spectrum: &Array<T>, frequencies: &Array<T>, max_harmonics: usize, tolerance: T, ) -> Result<HarmonicResult<T>>
Perform harmonic analysis to detect fundamental frequency and harmonics
Sourcepub fn stft<T>(
signal: &Array<T>,
window_size: usize,
hop_size: usize,
window_type: &str,
zero_pad: bool,
) -> Result<STFTResult<T>>
pub fn stft<T>( signal: &Array<T>, window_size: usize, hop_size: usize, window_type: &str, zero_pad: bool, ) -> Result<STFTResult<T>>
Compute Short-Time Fourier Transform (STFT)
Sourcepub fn instantaneous_frequency<T>(
complex_signal: &Array<Complex<T>>,
) -> Result<Array<T>>
pub fn instantaneous_frequency<T>( complex_signal: &Array<Complex<T>>, ) -> Result<Array<T>>
Compute instantaneous frequency using phase differences
Sourcepub fn spectral_centroid<T>(
spectrum: &Array<T>,
frequencies: &Array<T>,
) -> Result<T>
pub fn spectral_centroid<T>( spectrum: &Array<T>, frequencies: &Array<T>, ) -> Result<T>
Compute spectral centroid (center of mass of spectrum)
Sourcepub fn spectral_rolloff<T>(
spectrum: &Array<T>,
frequencies: &Array<T>,
percentage: T,
) -> Result<T>
pub fn spectral_rolloff<T>( spectrum: &Array<T>, frequencies: &Array<T>, percentage: T, ) -> Result<T>
Compute spectral rolloff (frequency below which a specified percentage of total energy is contained)
Sourcepub fn spectral_bandwidth<T>(
spectrum: &Array<T>,
frequencies: &Array<T>,
) -> Result<T>
pub fn spectral_bandwidth<T>( spectrum: &Array<T>, frequencies: &Array<T>, ) -> Result<T>
Compute spectral bandwidth
Sourcepub fn spectral_flatness<T>(spectrum: &Array<T>) -> Result<T>
pub fn spectral_flatness<T>(spectrum: &Array<T>) -> Result<T>
Compute spectral flatness (Wiener entropy)
Auto Trait Implementations§
impl Freeze for SpectralAnalyzer
impl RefUnwindSafe for SpectralAnalyzer
impl Send for SpectralAnalyzer
impl Sync for SpectralAnalyzer
impl Unpin for SpectralAnalyzer
impl UnsafeUnpin for SpectralAnalyzer
impl UnwindSafe for SpectralAnalyzer
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
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.