pub struct PcmEncoder { /* private fields */ }Expand description
Encodes AudioFrame samples to raw PCM bytes.
The output is interleaved PCM data with no header — suitable for embedding inside WAV/AIFF containers or piping to raw audio sinks.
Implementations§
Source§impl PcmEncoder
impl PcmEncoder
Sourcepub fn encode_frame(&self, frame: &AudioFrame) -> CodecResult<Vec<u8>>
pub fn encode_frame(&self, frame: &AudioFrame) -> CodecResult<Vec<u8>>
Encode one AudioFrame to raw bytes.
The frame’s format field controls how samples bytes are interpreted
before re-encoding into the configured PcmFormat.
§Errors
Returns CodecError::InvalidParameter if the frame channel count or
sample rate does not match the encoder configuration.
Sourcepub fn encode_raw(&self, samples: &[f32]) -> CodecResult<Vec<u8>>
pub fn encode_raw(&self, samples: &[f32]) -> CodecResult<Vec<u8>>
Encode a slice of interleaved f32 samples directly.
§Errors
Returns error if samples.len() is not a multiple of channels.
Trait Implementations§
Source§impl Clone for PcmEncoder
impl Clone for PcmEncoder
Source§fn clone(&self) -> PcmEncoder
fn clone(&self) -> PcmEncoder
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 PcmEncoder
impl RefUnwindSafe for PcmEncoder
impl Send for PcmEncoder
impl Sync for PcmEncoder
impl Unpin for PcmEncoder
impl UnsafeUnpin for PcmEncoder
impl UnwindSafe for PcmEncoder
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 more