pub struct AudioEncoder { /* private fields */ }Expand description
Audio encoder.
Encodes audio frames to a file using FFmpeg.
§Examples
use ff_encode::{AudioEncoder, AudioCodec};
use ff_format::{AudioFrame, SampleFormat};
let mut encoder = AudioEncoder::create("output.m4a")
.expect("Failed to create encoder")
.audio(48000, 2)
.audio_codec(AudioCodec::Aac)
.build_audio()
.expect("Failed to build encoder");
// Create and push audio frames
let frame = AudioFrame::empty(1024, 2, 48000, SampleFormat::F32).unwrap();
encoder.push(&frame).expect("Failed to push frame");
encoder.finish().expect("Failed to finish encoding");Implementations§
Source§impl AudioEncoder
impl AudioEncoder
Sourcepub fn create<P: AsRef<Path>>(path: P) -> Result<EncoderBuilder, EncodeError>
pub fn create<P: AsRef<Path>>(path: P) -> Result<EncoderBuilder, EncodeError>
Create a new encoder builder with the given output path.
§Arguments
path- Output file path
§Returns
Returns an EncoderBuilder for configuring the encoder.
§Examples
ⓘ
use ff_encode::AudioEncoder;
let builder = AudioEncoder::create("output.m4a")?;Sourcepub fn actual_codec(&self) -> &str
pub fn actual_codec(&self) -> &str
Get the actual audio codec being used.
Returns the name of the FFmpeg encoder (e.g., “aac”, “libopus”).
Sourcepub fn push(&mut self, frame: &AudioFrame) -> Result<(), EncodeError>
pub fn push(&mut self, frame: &AudioFrame) -> Result<(), EncodeError>
Push an audio frame for encoding.
§Arguments
frame- The audio frame to encode
§Errors
Returns an error if encoding fails or the encoder is not initialized.
§Examples
ⓘ
use ff_encode::{AudioEncoder, AudioCodec};
use ff_format::{AudioFrame, SampleFormat};
let mut encoder = AudioEncoder::create("output.m4a")?
.audio(48000, 2)
.audio_codec(AudioCodec::Aac)
.build()?;
let frame = AudioFrame::empty(1024, 2, 48000, SampleFormat::F32)?;
encoder.push(&frame)?;Trait Implementations§
Auto Trait Implementations§
impl Freeze for AudioEncoder
impl RefUnwindSafe for AudioEncoder
impl !Send for AudioEncoder
impl !Sync for AudioEncoder
impl Unpin for AudioEncoder
impl UnsafeUnpin for AudioEncoder
impl UnwindSafe for AudioEncoder
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