pub fn try_parse_stream(string: &str) -> Option<AVStream>
Expand description

Example

Input stream:

use ffmpeg_sidecar::log_parser::try_parse_stream;
let line = "[info]   Stream #0:0: Video: wrapped_avframe, rgb24, 320x240 [SAR 1:1 DAR 4:3], 25 fps, 25 tbr, 25 tbn\n";
let stream = try_parse_stream(line).unwrap();
assert!(stream.format == "wrapped_avframe");
assert!(stream.pix_fmt == "rgb24");
assert!(stream.width == 320);
assert!(stream.height == 240);
assert!(stream.fps == 25.0);
assert!(stream.parent_index == 0);

Output stream:

use ffmpeg_sidecar::log_parser::try_parse_stream;
let line = "[info]   Stream #1:0: Video: h264 (avc1 / 0x31637661), yuv444p(tv, progressive), 320x240 [SAR 1:1 DAR 4:3], q=2-31, 25 fps, 12800 tbn\n";
let stream = try_parse_stream(line).unwrap();
assert!(stream.format == "h264");
assert!(stream.pix_fmt == "yuv444p");
assert!(stream.width == 320);
assert!(stream.height == 240);
assert!(stream.fps == 25.0);
assert!(stream.parent_index == 1);