#![allow(clippy::unwrap_used, clippy::expect_used, clippy::panic)]
#![allow(dead_code, unused)]
#![allow(clippy::unnecessary_unwrap, clippy::zombie_processes)]
use rusty_h264_decoder::Decoder;
#[test]
fn cabac_ipcm_ip_matches_ffmpeg() {
let stream = include_bytes!("../../../tests/cabac_data/cabac_ipcm_ip.264");
let reference = include_bytes!("../../../tests/cabac_data/cabac_ipcm_ip_ref.yuv");
let frames = Decoder::new().decode_stream(stream).expect("decode");
assert_eq!(frames.len(), 6, "1 I + 5 P frames");
let mut ours = Vec::with_capacity(reference.len());
for f in &frames {
assert_eq!((f.width, f.height), (64, 64));
ours.extend_from_slice(&f.y);
ours.extend_from_slice(&f.u);
ours.extend_from_slice(&f.v);
}
assert_eq!(ours.len(), reference.len());
assert!(ours == reference.as_slice(), "PCM recon differs from ffmpeg");
}