Struct symphonia_core::dsp::mdct::Imdct
source · pub struct Imdct { /* private fields */ }
Expand description
The Inverse Modified Discrete Transform (IMDCT).
Implementations§
source§impl Imdct
impl Imdct
sourcepub fn new(n: usize) -> Self
pub fn new(n: usize) -> Self
Instantiate a N-point IMDCT with no scaling.
The value of n
is the number of spectral samples and must be a power-of-2 and less-than or
equal to 2 * Fft::MAX_SIZE
.
sourcepub fn new_scaled(n: usize, scale: f64) -> Self
pub fn new_scaled(n: usize, scale: f64) -> Self
Instantiate a N-point IMDCT with scaling.
The value of n
is the number of spectral samples and must be a power-of-2 and less-than or
equal to 2 * Fft::MAX_SIZE
.
sourcepub fn imdct(&mut self, spec: &[f32], out: &mut [f32])
pub fn imdct(&mut self, spec: &[f32], out: &mut [f32])
Performs the the N-point Inverse Modified Discrete Cosine Transform.
The number of input spectral samples provided by the slice spec
must equal the value of N
that the IMDCT was instantiated with. The length of the output slice, out
, must be of
length 2N. Failing to meet these requirements will throw an assertion.
Auto Trait Implementations§
impl RefUnwindSafe for Imdct
impl Send for Imdct
impl Sync for Imdct
impl Unpin for Imdct
impl UnwindSafe for Imdct
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