examples/avi-to-ppm: fix frame indexing

This commit is contained in:
Zhiming Wang 2020-07-23 10:07:07 +08:00
parent ba2caf9d13
commit 48bca3e610
No known key found for this signature in database
GPG Key ID: 5B58F95EC95965D8

View File

@ -30,7 +30,8 @@ fn main() -> Result<(), ffmpeg::Error> {
Flags::BILINEAR, Flags::BILINEAR,
)?; )?;
for (i, (stream, packet)) in ictx.packets().enumerate() { let mut frame_index = 0;
for (stream, packet) in ictx.packets() {
if stream.index() != video_stream_index { if stream.index() != video_stream_index {
continue; continue;
} }
@ -39,10 +40,11 @@ fn main() -> Result<(), ffmpeg::Error> {
Ok(_) => { Ok(_) => {
let mut rgb_frame = Video::empty(); let mut rgb_frame = Video::empty();
scaler.run(&frame, &mut rgb_frame)?; scaler.run(&frame, &mut rgb_frame)?;
match save_file(&rgb_frame, i) { match save_file(&rgb_frame, frame_index) {
Ok(_) => {} Ok(_) => {}
Err(e) => println!("Error occurred during file writing - {}", e), Err(e) => println!("Error occurred during file writing - {}", e),
} }
frame_index += 1;
} }
_ => { _ => {
println!("Error occurred while decoding packet."); println!("Error occurred while decoding packet.");