pub struct AudioReplacement { /* private fields */ }Expand description
Replace a video file’s audio track with audio from a separate source file.
The video bitstream is copied bit-for-bit (no decode/encode cycle). The
audio track from audio_input replaces any existing audio in
video_input.
Returns EncodeError::MediaOperationFailed when no audio stream is found
in audio_input, or no video stream is found in video_input.
§Example
ⓘ
use ff_encode::AudioReplacement;
AudioReplacement::new("source.mp4", "new_audio.aac", "output.mp4").run()?;Implementations§
Source§impl AudioReplacement
impl AudioReplacement
Sourcepub fn new(
video_input: impl Into<PathBuf>,
audio_input: impl Into<PathBuf>,
output: impl Into<PathBuf>,
) -> Self
pub fn new( video_input: impl Into<PathBuf>, audio_input: impl Into<PathBuf>, output: impl Into<PathBuf>, ) -> Self
Create a new AudioReplacement.
video_input— source file whose video stream is kept.audio_input— source file whose first audio stream is used.output— path for the combined output file.
Sourcepub fn run(self) -> Result<(), EncodeError>
pub fn run(self) -> Result<(), EncodeError>
Execute the audio replacement operation.
§Errors
EncodeError::MediaOperationFailedifvideo_inputhas no video stream oraudio_inputhas no audio stream.EncodeError::Ffmpegif any FFmpeg API call fails.
Auto Trait Implementations§
impl Freeze for AudioReplacement
impl RefUnwindSafe for AudioReplacement
impl Send for AudioReplacement
impl Sync for AudioReplacement
impl Unpin for AudioReplacement
impl UnsafeUnpin for AudioReplacement
impl UnwindSafe for AudioReplacement
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