metadata/
metadata.rs

1use ffmpeg_sidecar::{command::FfmpegCommand, event::{FfmpegEvent, FfmpegProgress}};
2
3/// Add metadata to a video file, with progress updates and FFmpeg log output.
4fn main() {
5  let mut ffmpeg_runner = FfmpegCommand::new()
6    .testsrc()
7    .args(["-metadata", "title=some cool title"])
8    .overwrite() // -y
9    .output("output/metadata.mp4")
10    .print_command()
11    .spawn()
12    .unwrap();
13
14  ffmpeg_runner
15    .iter()
16    .unwrap()
17    .for_each(|e| {
18      match e {
19        FfmpegEvent::Progress(FfmpegProgress { frame, .. }) =>
20          println!("Current frame: {frame}"),
21        FfmpegEvent::Log(_level, msg) =>
22          println!("[ffmpeg] {msg}"),
23        _ => {}
24      }
25    });
26}