From a4840d995af4ae7d7c7aa751b50640ed7512cc3a Mon Sep 17 00:00:00 2001 From: Thomas Daede Date: Thu, 14 May 2020 06:27:05 -0700 Subject: [PATCH] Add minimum frame delay test. Currently the latency is 3 frames. --- src/api/test.rs | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/api/test.rs b/src/api/test.rs index eb9f64068b..b01b3525f6 100644 --- a/src/api/test.rs +++ b/src/api/test.rs @@ -307,6 +307,34 @@ fn switch_frame_interval() { ); } +#[test] +fn minimum_frame_delay() { + let mut ctx = setup_encoder::( + 64, + 80, + 10, + 100, + 8, + ChromaSampling::Cs420, + 5, + 5, + 0, + true, + 0, + true, + 1, + ); + + let limit = 4; // 4 frames in for 1 frame out (delay of 3 frames) + send_frames(&mut ctx, limit, 0); + + let data = get_frame_invariants(ctx) + .map(|fi| (fi.input_frameno, fi.frame_type)) + .collect::>(); + + assert_eq!(&data[..], &[(0, FrameType::KEY),][..]); +} + #[interpolate_test(0, 0)] #[interpolate_test(1, 1)] fn pyramid_level_low_latency_minus(missing: u64) {