pub struct FftProcessor { /* private fields */ }Expand description
FFT processor for time-to-frequency conversion.
Implementations§
Source§impl FftProcessor
impl FftProcessor
Sourcepub fn new(fft_size: usize, hop_size: usize, sample_rate: u32) -> Result<Self>
pub fn new(fft_size: usize, hop_size: usize, sample_rate: u32) -> Result<Self>
Create a new FFT processor.
Sourcepub fn with_window(
fft_size: usize,
hop_size: usize,
sample_rate: u32,
window: WindowFunction,
) -> Result<Self>
pub fn with_window( fft_size: usize, hop_size: usize, sample_rate: u32, window: WindowFunction, ) -> Result<Self>
Create with a specific window function.
Sourcepub fn bin_to_frequency(&self, bin: usize) -> f32
pub fn bin_to_frequency(&self, bin: usize) -> f32
Get the frequency in Hz for a given bin.
Sourcepub fn frequency_to_bin(&self, freq: f32) -> usize
pub fn frequency_to_bin(&self, freq: f32) -> usize
Get the bin index for a given frequency.
Sourcepub fn process_frame(&mut self, samples: &[f32]) -> Vec<Complex>
pub fn process_frame(&mut self, samples: &[f32]) -> Vec<Complex>
Process a frame of audio and return FFT bins.
Sourcepub fn process_all(&mut self, samples: &[f32]) -> Vec<Vec<Complex>>
pub fn process_all(&mut self, samples: &[f32]) -> Vec<Vec<Complex>>
Process all available frames in the buffer.
Auto Trait Implementations§
impl Freeze for FftProcessor
impl !RefUnwindSafe for FftProcessor
impl Send for FftProcessor
impl Sync for FftProcessor
impl Unpin for FftProcessor
impl !UnwindSafe for FftProcessor
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Gets the layout of the type.