pub struct SpectrogramParams { /* private fields */ }Expand description
Spectrogram computation parameters.
stft: STFT parameterssample_rate_hz: Sample rate in Hz
Implementations§
Source§impl SpectrogramParams
impl SpectrogramParams
Sourcepub fn new(stft: StftParams, sample_rate_hz: f64) -> SpectrogramResult<Self>
pub fn new(stft: StftParams, sample_rate_hz: f64) -> SpectrogramResult<Self>
Sourcepub fn builder() -> SpectrogramParamsBuilder
pub fn builder() -> SpectrogramParamsBuilder
Create a builder for spectrogram parameters.
§Errors
Returns an error if required parameters are not set or are invalid.
§Returns
A builder for SpectrogramParams.
§Examples
use spectrograms::{SpectrogramParams, WindowType, nzu};
let params = SpectrogramParams::builder()
.sample_rate(16000.0)
.n_fft(nzu!(512))
.hop_size(nzu!(256))
.window(WindowType::Hanning)
.centre(true)
.build()?;
assert_eq!(params.sample_rate_hz(), 16000.0);Sourcepub fn speech_default(sample_rate_hz: f64) -> SpectrogramResult<Self>
pub fn speech_default(sample_rate_hz: f64) -> SpectrogramResult<Self>
Create default parameters for speech processing.
§Arguments
sample_rate_hz- Sample rate in Hz
§Returns
A SpectrogramParams instance with default settings for music analysis.
§Errors
Returns an error if the sample rate is not positive and finite.
Uses:
n_fft: 512 (32ms at 16kHz)hop_size: 160 (10ms at 16kHz)- window: Hanning
- centre: true
Sourcepub fn music_default(sample_rate_hz: f64) -> SpectrogramResult<Self>
pub fn music_default(sample_rate_hz: f64) -> SpectrogramResult<Self>
Create default parameters for music processing.
§Arguments
sample_rate_hz- Sample rate in Hz
§Returns
A SpectrogramParams instance with default settings for music analysis.
§Errors
Returns an error if the sample rate is not positive and finite.
Uses:
n_fft: 2048 (46ms at 44.1kHz)hop_size: 512 (11.6ms at 44.1kHz)- window: Hanning
- centre: true
Sourcepub const fn stft(&self) -> &StftParams
pub const fn stft(&self) -> &StftParams
Get the STFT parameters.
Sourcepub const fn sample_rate_hz(&self) -> f64
pub const fn sample_rate_hz(&self) -> f64
Get the sample rate in Hz.
Sourcepub fn frame_period_seconds(&self) -> f64
pub fn frame_period_seconds(&self) -> f64
Get the frame period in seconds.
Sourcepub fn nyquist_hz(&self) -> f64
pub fn nyquist_hz(&self) -> f64
Get the Nyquist frequency in Hz.
Trait Implementations§
Source§impl Clone for SpectrogramParams
impl Clone for SpectrogramParams
Source§fn clone(&self) -> SpectrogramParams
fn clone(&self) -> SpectrogramParams
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 moreSource§impl Debug for SpectrogramParams
impl Debug for SpectrogramParams
Source§impl<'de> Deserialize<'de> for SpectrogramParams
impl<'de> Deserialize<'de> for SpectrogramParams
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for SpectrogramParams
impl Serialize for SpectrogramParams
impl Copy for SpectrogramParams
Auto Trait Implementations§
impl Freeze for SpectrogramParams
impl RefUnwindSafe for SpectrogramParams
impl Send for SpectrogramParams
impl Sync for SpectrogramParams
impl Unpin for SpectrogramParams
impl UnwindSafe for SpectrogramParams
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