From 58ced36c508476b5dbce4c41b0b34fc90cb6e68f Mon Sep 17 00:00:00 2001 From: yexiaochuan Date: Sun, 4 May 2025 23:32:35 +0800 Subject: [PATCH 1/5] test(video): add test cases for variable framerate videos Signed-off-by: yexiaochuan --- test/generate_reference_resources.sh | 19 + test/resources/var_fps_video.mp4 | Bin 0 -> 36114 bytes ...fps_video.mp4.stream0.all_frames_info.json | 1202 +++++++++++++++++ .../var_fps_video.mp4.stream0.frame000000.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000001.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000002.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000003.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000004.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000005.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000010.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000015.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000020.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000025.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000030.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000035.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000040.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000045.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000050.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000055.pt | Bin 0 -> 51067 bytes .../var_fps_video.mp4.stream0.frame000060.pt | Bin 0 -> 51067 bytes test/test_variable_fps_video.py | 214 +++ test/utils.py | 11 + 22 files changed, 1446 insertions(+) create mode 100644 test/resources/var_fps_video.mp4 create mode 100644 test/resources/var_fps_video.mp4.stream0.all_frames_info.json create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000000.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000001.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000002.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000003.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000004.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000005.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000010.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000015.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000020.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000025.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000030.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000035.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000040.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000045.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000050.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000055.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000060.pt create mode 100644 test/test_variable_fps_video.py diff --git a/test/generate_reference_resources.sh b/test/generate_reference_resources.sh index fba098a75..7428edf80 100755 --- a/test/generate_reference_resources.sh +++ b/test/generate_reference_resources.sh @@ -77,3 +77,22 @@ do python3 "$TORCHCODEC_PATH/test/convert_image_to_tensor.py" "$bmp" rm -f "$bmp" done + +# This video was generated by running the following: +# ffmpeg -f lavfi -i testsrc=duration=10:size=128x128:rate=30 -vf "setpts=PTS*if(gt(N\,30)\,1.5\,1)" -c:v libx264 -bf 0 var_fps_video.mp4 +VIDEO_PATH=$RESOURCES_DIR/var_fps_video.mp4 +STREAMS=(0) + +FRAMES=(0 1 2 3 4 5 10 15 20 25 30 35 40 45 50 55 60) +for stream in "${STREAMS[@]}"; do + for frame in "${FRAMES[@]}"; do + frame_name=$(printf "%06d" "$frame") + ffmpeg -y -i "$VIDEO_PATH" -map 0:"$stream" -vf select="eq(n\,$frame)" -vsync vfr -q:v 2 "$VIDEO_PATH.stream$stream.frame$frame_name.bmp" + done +done + +for bmp in "$RESOURCES_DIR"/*.bmp +do + python3 "$TORCHCODEC_PATH/test/convert_image_to_tensor.py" "$bmp" + rm -f "$bmp" +done \ No newline at end of file diff --git a/test/resources/var_fps_video.mp4 b/test/resources/var_fps_video.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..529b04079c429a5006c815a559f02810c457d821 GIT binary patch literal 36114 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 literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.all_frames_info.json b/test/resources/var_fps_video.mp4.stream0.all_frames_info.json new file mode 100644 index 000000000..502477a9c --- /dev/null +++ b/test/resources/var_fps_video.mp4.stream0.all_frames_info.json @@ -0,0 +1,1202 @@ +[ + { + "pts_time": "0.000000", + "duration_time": "0.033333" + }, + { + "pts_time": "0.033333", + "duration_time": "0.033333" + }, + { + "pts_time": "0.066667", + "duration_time": "0.033333" + }, + { + "pts_time": "0.100000", + "duration_time": "0.033333" + }, + { + "pts_time": "0.133333", + "duration_time": "0.033333" + }, + { + "pts_time": "0.166667", + "duration_time": "0.033333" + }, + { + "pts_time": "0.200000", + "duration_time": "0.033333" + }, + { + "pts_time": "0.233333", + "duration_time": "0.033333" + }, + { + "pts_time": "0.266667", + "duration_time": "0.033333" + }, + { + "pts_time": "0.300000", + "duration_time": "0.033333" + }, + { + "pts_time": "0.333333", + "duration_time": "0.033333" + }, + { + "pts_time": "0.366667", + "duration_time": "0.033333" + }, + { + "pts_time": "0.400000", + "duration_time": "0.033333" + }, + { + "pts_time": "0.433333", + "duration_time": "0.033333" + }, + { + "pts_time": "0.466667", + "duration_time": "0.033333" + }, + { + "pts_time": "0.500000", + "duration_time": "0.033333" + }, + { + "pts_time": "0.533333", + "duration_time": "0.033333" + }, + { + "pts_time": "0.566667", + "duration_time": "0.033333" + }, + { + "pts_time": "0.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "0.633333", + "duration_time": "0.033333" + }, + { + "pts_time": "0.666667", + "duration_time": "0.033333" + }, + { + "pts_time": "0.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "0.733333", + "duration_time": "0.033333" + }, + { + "pts_time": "0.766667", + "duration_time": "0.033333" + }, + { + "pts_time": "0.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "0.833333", + "duration_time": "0.033333" + }, + { + "pts_time": "0.866667", + "duration_time": "0.033333" + }, + { + "pts_time": "0.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "0.933333", + "duration_time": "0.033333" + }, + { + "pts_time": "0.966667", + "duration_time": "0.033333" + }, + { + "pts_time": "1.000000", + "duration_time": "0.533333" + }, + { + "pts_time": "1.533333", + "duration_time": "0.066667" + }, + { + "pts_time": "1.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "1.633333", + "duration_time": "0.066667" + }, + { + "pts_time": "1.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "1.733333", + "duration_time": "0.066667" + }, + { + "pts_time": "1.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "1.833333", + "duration_time": "0.066667" + }, + { + "pts_time": "1.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "1.933333", + "duration_time": "0.066667" + }, + { + "pts_time": "2.000000", + "duration_time": "0.033333" + }, + { + "pts_time": "2.033333", + "duration_time": "0.066667" + }, + { + "pts_time": "2.100000", + "duration_time": "0.033333" + }, + { + "pts_time": "2.133333", + "duration_time": "0.066667" + }, + { + "pts_time": "2.200000", + "duration_time": "0.033333" + }, + { + "pts_time": "2.233333", + "duration_time": "0.066667" + }, + { + "pts_time": "2.300000", + "duration_time": "0.033333" + }, + { + "pts_time": "2.333333", + "duration_time": "0.066667" + }, + { + "pts_time": "2.400000", + "duration_time": "0.033333" + }, + { + "pts_time": "2.433333", + "duration_time": "0.066667" + }, + { + "pts_time": "2.500000", + "duration_time": "0.033333" + }, + { + "pts_time": "2.533333", + "duration_time": "0.066667" + }, + { + "pts_time": "2.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "2.633333", + "duration_time": "0.066667" + }, + { + "pts_time": "2.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "2.733333", + "duration_time": "0.066667" + }, + { + "pts_time": "2.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "2.833333", + "duration_time": "0.066667" + }, + { + "pts_time": "2.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "2.933333", + "duration_time": "0.066667" + }, + { + "pts_time": "3.000000", + "duration_time": "0.033333" + }, + { + "pts_time": "3.033333", + "duration_time": "0.066667" + }, + { + "pts_time": "3.100000", + "duration_time": "0.033333" + }, + { + "pts_time": "3.133333", + "duration_time": "0.066667" + }, + { + "pts_time": "3.200000", + "duration_time": "0.033333" + }, + { + "pts_time": "3.233333", + "duration_time": "0.066667" + }, + { + "pts_time": "3.300000", + "duration_time": "0.033333" + }, + { + "pts_time": "3.333333", + "duration_time": "0.066667" + }, + { + "pts_time": "3.400000", + "duration_time": "0.033333" + }, + { + "pts_time": "3.433333", + "duration_time": "0.066667" + }, + { + "pts_time": "3.500000", + "duration_time": "0.033333" + }, + { + "pts_time": "3.533333", + "duration_time": "0.066667" + }, + { + "pts_time": "3.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "3.633333", + "duration_time": "0.066667" + }, + { + "pts_time": "3.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "3.733333", + "duration_time": "0.066667" + }, + { + "pts_time": "3.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "3.833333", + "duration_time": "0.066667" + }, + { + "pts_time": "3.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "3.933333", + "duration_time": "0.066667" + }, + { + "pts_time": "4.000000", + "duration_time": "0.033333" + }, + { + "pts_time": "4.033333", + "duration_time": "0.066667" + }, + { + "pts_time": "4.100000", + "duration_time": "0.033333" + }, + { + "pts_time": "4.133333", + "duration_time": "0.066667" + }, + { + "pts_time": "4.200000", + "duration_time": "0.033333" + }, + { + "pts_time": "4.233333", + "duration_time": "0.066667" + }, + { + "pts_time": "4.300000", + "duration_time": "0.033333" + }, + { + "pts_time": "4.333333", + "duration_time": "0.066667" + }, + { + "pts_time": "4.400000", + "duration_time": "0.033333" + }, + { + "pts_time": "4.433333", + "duration_time": "0.066667" + }, + { + "pts_time": "4.500000", + "duration_time": "0.033333" + }, + { + "pts_time": "4.533333", + "duration_time": "0.066667" + }, + { + "pts_time": "4.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "4.633333", + "duration_time": "0.066667" + }, + { + "pts_time": "4.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "4.733333", + "duration_time": "0.066667" + }, + { + "pts_time": "4.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "4.833333", + "duration_time": "0.066667" + }, + { + "pts_time": "4.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "4.933333", + "duration_time": "0.066667" + }, + { + "pts_time": "5.000000", + "duration_time": "0.033333" + }, + { + "pts_time": "5.033333", + "duration_time": "0.066667" + }, + { + "pts_time": "5.100000", + "duration_time": "0.033333" + }, + { + "pts_time": "5.133333", + "duration_time": "0.066667" + }, + { + "pts_time": "5.200000", + "duration_time": "0.033333" + }, + { + "pts_time": "5.233333", + "duration_time": "0.066667" + }, + { + "pts_time": "5.300000", + "duration_time": "0.033333" + }, + { + "pts_time": "5.333333", + "duration_time": "0.066667" + }, + { + "pts_time": "5.400000", + "duration_time": "0.033333" + }, + { + "pts_time": "5.433333", + "duration_time": "0.066667" + }, + { + "pts_time": "5.500000", + "duration_time": "0.033333" + }, + { + "pts_time": "5.533333", + "duration_time": "0.066667" + }, + { + "pts_time": "5.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "5.633333", + "duration_time": "0.066667" + }, + { + "pts_time": "5.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "5.733333", + "duration_time": "0.066667" + }, + { + "pts_time": "5.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "5.833333", + "duration_time": "0.066667" + }, + { + "pts_time": "5.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "5.933333", + "duration_time": "0.066667" + }, + { + "pts_time": "6.000000", + "duration_time": "0.033333" + }, + { + "pts_time": "6.033333", + "duration_time": "0.066667" + }, + { + "pts_time": "6.100000", + "duration_time": "0.033333" + }, + { + "pts_time": "6.133333", + "duration_time": "0.066667" + }, + { + "pts_time": "6.200000", + "duration_time": "0.033333" + }, + { + "pts_time": "6.233333", + "duration_time": "0.066667" + }, + { + "pts_time": "6.300000", + "duration_time": "0.033333" + }, + { + "pts_time": "6.333333", + "duration_time": "0.066667" + }, + { + "pts_time": "6.400000", + "duration_time": "0.033333" + }, + { + "pts_time": "6.433333", + "duration_time": "0.066667" + }, + { + "pts_time": "6.500000", + "duration_time": "0.033333" + }, + { + "pts_time": "6.533333", + "duration_time": "0.066667" + }, + { + "pts_time": "6.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "6.633333", + "duration_time": "0.066667" + }, + { + "pts_time": "6.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "6.733333", + "duration_time": "0.066667" + }, + { + "pts_time": "6.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "6.833333", + "duration_time": "0.066667" + }, + { + "pts_time": "6.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "6.933333", + "duration_time": "0.066667" + }, + { + "pts_time": "7.000000", + "duration_time": "0.033333" + }, + { + "pts_time": "7.033333", + "duration_time": "0.066667" + }, + { + "pts_time": "7.100000", + "duration_time": "0.033333" + }, + { + "pts_time": "7.133333", + "duration_time": "0.066667" + }, + { + "pts_time": "7.200000", + "duration_time": "0.033333" + }, + { + "pts_time": "7.233333", + "duration_time": "0.066667" + }, + { + "pts_time": "7.300000", + "duration_time": "0.033333" + }, + { + "pts_time": "7.333333", + "duration_time": "0.066667" + }, + { + "pts_time": "7.400000", + "duration_time": "0.033333" + }, + { + "pts_time": "7.433333", + "duration_time": "0.066667" + }, + { + "pts_time": "7.500000", + "duration_time": "0.033333" + }, + { + "pts_time": "7.533333", + "duration_time": "0.066667" + }, + { + "pts_time": "7.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "7.633333", + "duration_time": "0.066667" + }, + { + "pts_time": "7.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "7.733333", + "duration_time": "0.066667" + }, + { + "pts_time": "7.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "7.833333", + "duration_time": "0.066667" + }, + { + "pts_time": "7.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "7.933333", + "duration_time": "0.066667" + }, + { + "pts_time": "8.000000", + "duration_time": "0.033333" + }, + { + "pts_time": "8.033333", + "duration_time": "0.066667" + }, + { + "pts_time": "8.100000", + "duration_time": "0.033333" + }, + { + "pts_time": "8.133333", + "duration_time": "0.066667" + }, + { + "pts_time": "8.200000", + "duration_time": "0.033333" + }, + { + "pts_time": "8.233333", + "duration_time": "0.066667" + }, + { + "pts_time": "8.300000", + "duration_time": "0.033333" + }, + { + "pts_time": "8.333333", + "duration_time": "0.066667" + }, + { + "pts_time": "8.400000", + "duration_time": "0.033333" + }, + { + "pts_time": "8.433333", + "duration_time": "0.066667" + }, + { + "pts_time": "8.500000", + "duration_time": "0.033333" + }, + { + "pts_time": "8.533333", + "duration_time": "0.066667" + }, + { + "pts_time": "8.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "8.633333", + "duration_time": "0.066667" + }, + { + "pts_time": "8.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "8.733333", + "duration_time": "0.066667" + }, + { + "pts_time": "8.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "8.833333", + "duration_time": "0.066667" + }, + { + "pts_time": "8.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "8.933333", + "duration_time": "0.066667" + }, + { + "pts_time": "9.000000", + "duration_time": "0.033333" + }, + { + "pts_time": "9.033333", + "duration_time": "0.066667" + }, + { + "pts_time": "9.100000", + "duration_time": "0.033333" + }, + { + "pts_time": "9.133333", + "duration_time": "0.066667" + }, + { + "pts_time": "9.200000", + "duration_time": "0.033333" + }, + { + "pts_time": "9.233333", + "duration_time": "0.066667" + }, + { + "pts_time": "9.300000", + "duration_time": "0.033333" + }, + { + "pts_time": "9.333333", + "duration_time": "0.066667" + }, + { + "pts_time": "9.400000", + "duration_time": "0.033333" + }, + { + "pts_time": "9.433333", + "duration_time": "0.066667" + }, + { + "pts_time": "9.500000", + "duration_time": "0.033333" + }, + { + "pts_time": "9.533333", + "duration_time": "0.066667" + }, + { + "pts_time": "9.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "9.633333", + "duration_time": "0.066667" + }, + { + "pts_time": "9.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "9.733333", + "duration_time": "0.066667" + }, + { + "pts_time": "9.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "9.833333", + "duration_time": "0.066667" + }, + { + "pts_time": "9.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "9.933333", + "duration_time": "0.066667" + }, + { + "pts_time": "10.000000", + "duration_time": "0.033333" + }, + { + "pts_time": "10.033333", + "duration_time": "0.066667" + }, + { + "pts_time": "10.100000", + "duration_time": "0.033333" + }, + { + "pts_time": "10.133333", + "duration_time": "0.066667" + }, + { + "pts_time": "10.200000", + "duration_time": "0.033333" + }, + { + "pts_time": "10.233333", + "duration_time": "0.066667" + }, + { + "pts_time": "10.300000", + "duration_time": "0.033333" + }, + { + "pts_time": "10.333333", + "duration_time": "0.066667" + }, + { + "pts_time": "10.400000", + "duration_time": "0.033333" + }, + { + "pts_time": "10.433333", + "duration_time": "0.066667" + }, + { + "pts_time": "10.500000", + "duration_time": "0.033333" + }, + { + "pts_time": "10.533333", + "duration_time": "0.066667" + }, + { + "pts_time": "10.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "10.633333", + "duration_time": "0.066667" + }, + { + "pts_time": "10.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "10.733333", + "duration_time": "0.066667" + }, + { + "pts_time": "10.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "10.833333", + "duration_time": "0.066667" + }, + { + "pts_time": "10.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "10.933333", + "duration_time": "0.066667" + }, + { + "pts_time": "11.000000", + "duration_time": "0.033333" + }, + { + "pts_time": "11.033333", + "duration_time": "0.066667" + }, + { + "pts_time": "11.100000", + "duration_time": "0.033333" + }, + { + "pts_time": "11.133333", + "duration_time": "0.066667" + }, + { + "pts_time": "11.200000", + "duration_time": "0.033333" + }, + { + "pts_time": "11.233333", + "duration_time": "0.066667" + }, + { + "pts_time": "11.300000", + "duration_time": "0.033333" + }, + { + "pts_time": "11.333333", + "duration_time": "0.066667" + }, + { + "pts_time": "11.400000", + "duration_time": "0.033333" + }, + { + "pts_time": "11.433333", + "duration_time": "0.066667" + }, + { + "pts_time": "11.500000", + "duration_time": "0.033333" + }, + { + "pts_time": "11.533333", + "duration_time": "0.066667" + }, + { + "pts_time": "11.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "11.633333", + "duration_time": "0.066667" + }, + { + "pts_time": "11.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "11.733333", + "duration_time": "0.066667" + }, + { + "pts_time": "11.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "11.833333", + "duration_time": "0.066667" + }, + { + "pts_time": "11.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "11.933333", + "duration_time": "0.066667" + }, + { + "pts_time": "12.000000", + "duration_time": "0.033333" + }, + { + "pts_time": "12.033333", + "duration_time": "0.066667" + }, + { + "pts_time": "12.100000", + "duration_time": "0.033333" + }, + { + "pts_time": "12.133333", + "duration_time": "0.066667" + }, + { + "pts_time": "12.200000", + "duration_time": "0.033333" + }, + { + "pts_time": "12.233333", + "duration_time": "0.066667" + }, + { + "pts_time": "12.300000", + "duration_time": "0.033333" + }, + { + "pts_time": "12.333333", + "duration_time": "0.066667" + }, + { + "pts_time": "12.400000", + "duration_time": "0.033333" + }, + { + "pts_time": "12.433333", + "duration_time": "0.066667" + }, + { + "pts_time": "12.500000", + "duration_time": "0.033333" + }, + { + "pts_time": "12.533333", + "duration_time": "0.066667" + }, + { + "pts_time": "12.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "12.633333", + "duration_time": "0.066667" + }, + { + "pts_time": "12.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "12.733333", + "duration_time": "0.066667" + }, + { + "pts_time": "12.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "12.833333", + "duration_time": "0.066667" + }, + { + "pts_time": "12.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "12.933333", + "duration_time": "0.066667" + }, + { + "pts_time": "13.000000", + "duration_time": "0.033333" + }, + { + "pts_time": "13.033333", + "duration_time": "0.066667" + }, + { + "pts_time": "13.100000", + "duration_time": "0.033333" + }, + { + "pts_time": "13.133333", + "duration_time": "0.066667" + }, + { + "pts_time": "13.200000", + "duration_time": "0.033333" + }, + { + "pts_time": "13.233333", + "duration_time": "0.066667" + }, + { + "pts_time": "13.300000", + "duration_time": "0.033333" + }, + { + "pts_time": "13.333333", + "duration_time": "0.066667" + }, + { + "pts_time": "13.400000", + "duration_time": "0.033333" + }, + { + "pts_time": "13.433333", + "duration_time": "0.066667" + }, + { + "pts_time": "13.500000", + "duration_time": "0.033333" + }, + { + "pts_time": "13.533333", + "duration_time": "0.066667" + }, + { + "pts_time": "13.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "13.633333", + "duration_time": "0.066667" + }, + { + "pts_time": "13.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "13.733333", + "duration_time": "0.066667" + }, + { + "pts_time": "13.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "13.833333", + "duration_time": "0.066667" + }, + { + "pts_time": "13.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "13.933333", + "duration_time": "0.066667" + }, + { + "pts_time": "14.000000", + "duration_time": "0.033333" + }, + { + "pts_time": "14.033333", + "duration_time": "0.066667" + }, + { + "pts_time": "14.100000", + "duration_time": "0.033333" + }, + { + "pts_time": "14.133333", + "duration_time": "0.066667" + }, + { + "pts_time": "14.200000", + "duration_time": "0.033333" + }, + { + "pts_time": "14.233333", + "duration_time": "0.066667" + }, + { + "pts_time": "14.300000", + "duration_time": "0.033333" + }, + { + "pts_time": "14.333333", + "duration_time": "0.066667" + }, + { + "pts_time": "14.400000", + "duration_time": "0.033333" + }, + { + "pts_time": "14.433333", + "duration_time": "0.066667" + }, + { + "pts_time": "14.500000", + "duration_time": "0.033333" + }, + { + "pts_time": "14.533333", + "duration_time": "0.066667" + }, + { + "pts_time": "14.600000", + "duration_time": "0.033333" + }, + { + "pts_time": "14.633333", + "duration_time": "0.066667" + }, + { + "pts_time": "14.700000", + "duration_time": "0.033333" + }, + { + "pts_time": "14.733333", + "duration_time": "0.066667" + }, + { + "pts_time": "14.800000", + "duration_time": "0.033333" + }, + { + "pts_time": "14.833333", + "duration_time": "0.066667" + }, + { + "pts_time": "14.900000", + "duration_time": "0.033333" + }, + { + "pts_time": "14.933333", + "duration_time": "0.033333" + } +] diff --git a/test/resources/var_fps_video.mp4.stream0.frame000000.pt b/test/resources/var_fps_video.mp4.stream0.frame000000.pt new file mode 100644 index 0000000000000000000000000000000000000000..a7a834a005037ed5f4b9263ad243769629577800 GIT binary patch literal 51067 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 K7fJTF`~E**y?}@S literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000002.pt b/test/resources/var_fps_video.mp4.stream0.frame000002.pt new file mode 100644 index 0000000000000000000000000000000000000000..301c260e8b2a4da1277e3a9043da64c807183ad7 GIT binary patch literal 51067 zcmeI53y>UFb%xKq{g}t@O0pit!kE~+VkdYl*^;p-9D*Q%LO2%YQD8z;YiXq@=($>p z*hv`z7?V^b1*AgpC@>HL1Sklpq%sJ3`p)SU+_f3|)5{ylrf zw@>cgzwc1}hKU{H6XQExuzUMt{b2R78xPhd57uuyI5fI-OQm|>o;6Rr3*RY!TYKW# zNWV28uF;+QC-#m_ZaX|aaR__gyy@8srZx+Cy&U1^j^6!d`StSG`v|Y0wSyjEPI}we zp543l?H%7Yxp~u??gx4G204J|zW(5Y8atQ2-Uo06T{7SS+zid`7oBY0bW!*Hwh8Rn zJvq5&T#n(6>+V?_V*m2j`xu@{7Y}$0V%1ly+q~&XeGdRTThNk`w;<7p-$y9(MUon2 zL_9pg6frTcm}WY{0k&14ioQc57b;A8!Q;A7*3E=$5+QyMBjPV=_lDq@%*FM>)PDu~hx zM(7wVPd%*lj;RW3kCkG-Edg;+`kQCO3KC}oX&Q2x)?* zU7$So`G*>Yoz_hmTAPQ@DYgs1Z_vF=X@e3P%7*DA%--{7tYWNtvGw_7ntJ^tQ)#A( z&ZVtx`KAuD2Y>iK#~9q3(f+L#x|FBOAIynjl%a|O%@iQoV9hkq$+fVJCbS@i(ExuOY_5f@UFjWl9^LqB zm|OnFg2CTpHGppt5Amq%gEoE|e#1jkl6%0|Ah`-aex9j!!ET(AtbZi@hf-;qIzfaF z5t4?urej1Ngm)T=!pMt~>cb!}hirkL_52NNOWu@997zQ&SrY74Zse-L8ZYBar=ku6 zA1{pxBuH2>TIfgKs^F3EuZjI@Bxb^&11|-6-;?&|ElWK8P!0VIIY1*rE%wq}a&>fT z1&^-%=ll^t#fXe4=Re?ADVniDV@_GOSY;MCf?eDAVgDj?jejZlBSPs+Qd+}bD)5`q zA7O$Dj$(8ti>uObQ~#{7e|U7XT?p(Ioh-yv2F_J3*UyEq=84t5`vB>^5HE2qk?$nu!i)*qjw4*C$lmP)+IAw9UTV z5R4+MQ)-uwE`MkN@P&Vd$Q2+KFx7MZLD-TkDWs@@pCb9uiKGHoilC5)SnVvn{fl>m z{UgtWw@D>athUfdF*H-5mHbmPlqKHM4sK0pp7PR2!_PSX(*?WJ$l1Uj@C*Eh+xCx^ zzBL_gf7pLTRFF#~*g5z4eaTxbESSF; zVX)&2y~~}l-?z|Z zq4sYw9FVW#kY;K)m{8}~k<^O~IPw9f5V#>1TTQBI6V9Hc`K_Yl0fl9^eZ*LVwF^@g zyLZN*jlyNXqr1q@G=0KM<@OIn$e1ivLU7)(?R-?04o@ui+W{nEOCKN?TM=3m^;ek~PZJ|bi32r_gMbulU0v1MJ z4gjv+n^ zKj6dPm==Rlghrr|Usa)OXuu!cSxJ2jdFz6T?)b69 z-;E4fcZB8uK?ZJn{qYbK!>u@J#H}bwjt%CC9N1GQXn!ap-hpQcd6+oullSnxeVt+q$OaB@3~6#lS(Beomv%J$ZF zoUQ!<_sMw`9R7mDn1gMO1C@is+~PLH`0MQ7RxE#%_J|`o4-w%4K&;?bacY`DmLdi3 z7m)ifcW;5bt%JXfxq_|z%b^vBnI5+xy0gxGl*MGgMU$L;O|0h$-l_owgRHzAn$tq33W4!7@KKIZ+u^FKL%H5`Ow`FjD*51>QFQIhAR9mbEB^Vk#M zYpqe*%JJjJi=Tr1caXO)9q^9Ixy~Oh#f?8$YoA|Q^3MLlKuHil3?MzUe1)agt0Bzi zUt9yrZ#J7n{vB@L>7oO>duj3{carzq%RiCcw{VR%y0*wO?O5Hsat?nr6nN4LFhRg0 zL<0|yBnlKUx_Xgzu@2)8f}rSm>_;5%j*0``Q90N7W8_WX_mw&PsRsUXI}Gd}qCLWR z^=a|9S(DRLfBqfna4*kw{xEyEAP~kNPmy!4x@7+fmz`PuTKGehMn|CQQndME-NRXE zvvhpQfgP}NuJaepX4n&o=*7Iap2)`yG;#}-*gyE=g+du63-dn~yY)XsFEk)_x7oSQ zU;Iydgh4_;H!1Q5d6WEuzkzQ%1F}lBVmmN2$D*yxn`9?1um)S$Q45q<9?$&k*m76w zZe@{wAVAGgjf;#wH=8nHpfivs@E9biX7x@=C_p0~ePv{k3 zfO@VmgR|prD^LQMyB6a3yEOx1cbk>`^AO-`3OtR=d*?14{PD8*KFr=OZlwb|V5Q_Q z{Kfy9MNy;G1XA#{W%~{JAI6WNP7JcycXRY}hwKK#?lvp=&%#G46a>hFEO{GPi~Lc? zTT#>{Oqcc#Puo5YQJ84{z;WsK{TJ=u`XbPW%;#_0 zg(Y9C7j-cpcDGr{e?EV#aY&2y-)dpFG+#>ocF^aH<)1bR+tSzQi!~Yzu(tdWc`@Kn z%sfl}i^?D5ag7ib#~*7Pb5vYCZx8MNoMRcVQu-h3^E=9*TCpQ?;E$XW z^JB4m#qZ4RaFzVQ$VxHK?^U18|BIFn%673UQP;TPS$e^CwS!#p?>N_W`uUGIl^%=E z-)my>8?%7F?e>=Zmw>-Ge4_yj^wer{t%S4xQ&t9a`);$xum3ODzsvpM_pL|>z;HC~ zOl#Xea?$>t->Sxe9k5dJ2VlqFR-gjg1YrMzN8XZuub5k0KPUcLQzvOHYzGyB>vVTmHx+R0jI_NN{C@G zFhS=C?t<$s7S6f{A@G@?1&G6rbs`lK*1!w2wF7+U zLMoVa)jWTxwEzC_@$UQ#v;P{GaCWJ{`Q+!q&%#E2*xP3$ zOa8N6t*&jMzqQYQH%Hz3gm1?Ni|zj<-!&8KN%l3sGT>=UP}9`5vbKnhx_m<;%t8Z>~Qt{ZAh)ECGLeA=UuCUp8@$eZWfT z|E;%|6ANv@8Z2=B;E77ff9dVN7FM!E?!pFtxfU1dFv}_X0t1@8+pM&IvGBQqHCUYe z7x@?O!m}FbC>_`VDw^_-5KL1J( zHm0U6QoQRH%ip2yT5(_ptd#tLx5NIi25iOuoBo&Mk6U1hQxKH=5tkPu|AhZ>vw=GJ zsMvckVa0{_{J+k39YYEc`!i__C54vH=_gFz&gg5b{wdQRXYc)~{wt<8rso~VF4)b%4yKo7^g^cV znAT;q{@9A&eE3P{$Mp((I$2Kf6DWH+@l#hEd;Zh@ce_rmCw_(EUBtI4zSHNwpd%lq zd;Zaj{$BIvb^1+8f2_0nymZP>V?1}2ewEPAWBPBVe`o!rSbZj4`H2&2{^m&Vj)dOK z`ViAj_Fm224eb98D;&Xkrl&Doz%<;{VRMy=*HZLkm5ge>j`&5yH!8ka@dWXt&$kWn zJBi;<{0YThB>ozu-=XAZYWkOSWQu0Y6YZzidw>-Hd_SWvGku)t6B&IhrFXG@liB_5 zWBT_WQZJ8aE7MDuew*oXR!?HJit+4D8ac!K2h2^=nzZjMa--UCrv(Sv|Sr-^czP|2L~M$6vpc)r(kNQ}REh z|2f0_X&0+)#{Mn;%S!*#-~X5V&l3NCX8g~<_Rr5#Z1bO8`ZV*O!Q$@|O#H2;zKVwn z@%LH8n~7hd_*KNOJDvFZFX@?$zmEd{-&K--E;awBn*0a+kpSWdZaQoD^BKs0PG$eu zMK=G}#{RX*|4jybyUG9Gjr>294ES@zUnl+!@_*t7ylgsbwDi$b^8X((eTV6*8GSB8 z`s;ll^N@eOEu-6*_L}_j6&bzAO#c%b3=N(|J8(P%S8Coyychl7lK*1Zf62d#|0(UiF#hu> z`2UjsqVvD8U;Hik_vQadLiU$^4cVVMt^5b$Z}jq#|A6Dq@IMF4==+@*e${-J=10U| z#y?+U_+QWT99GCbFLL>3>q4KOTH(t^c-?Z|u$o^`Kly5!+NPtOAs?votwa2VI)C`r z_#+qc$1mVduATlCML#ejun$$5M`IN`vbAf{i`Jx*SD*U+=|#8m4#FlDmepzpZC~H^iT)&in`xw0=U(2UR1Xdz2Q<&Fr~4GZa6{DZ_;Q=Pf2NIL?a0eOF#U{p7cE~Q~XSyM?+p$ zlk^KJ*g?FH(zk~EPM_Z%^1FiM^Thw4_?w#lGf3~H=srqYm?eTRPuczEG|11Ge#ZJ! ztUs7l-jMjWNBRvdZ?aXrDXP3O_Ff*V&8dHBrY>f^iuH0U8jonkgKFgry%EfVfJ#6* zB!yXU>ZC9~Is{L2#tGz**f)YFC_!*SnY?Mt+Qt7z9QzzoGJ|u>xU||yMmWchnM4u@ zjuz6StVxXRrj0a+i-Oy3=ZoDZO6(J*?6xfp#^cQJb&8{aTYlE^(#T6&LDKY+rV?r4 z&}6WlTe9O2A59cRidr5uebuZ&yjBgOw-T-)l6ef#Z3={962A98ZEjtm-OONjQs9 z6eV;Zc<3?2+yXu4q7YecoY55;}qfP!PxxIx@Y zR5(LVn86|8`Py<|ijEr6xUCFgey}-1G@W@OtXr&NIfXAqlXZ$pQU#=VB#o0Cva@#4 zxl9v)X&MqMm?V`mkCTwI3MU>O=wt;duo6W^L1LTI4#8Fw3j?y>jq7`$5dh5v7vI40 z@$*!eX$VslmXDuiO#xOng)2$8g|p+s4G!m7mN9js1xzk)r9&xroU&DeDJ@%r*Vwn2 z0tZhpuV`E{B-rIGC4$MIAUJ9qa_s4r7dCYe;c13SC0fTmMHM=sFRk0!|Vbzt}&54@%F_R`5c$A|-6tN&-c|w%hh^`4{20 z`R6mDWKe{-9ahUY#E=zg_rvVr)LiQ}O)GEdd3$$k1-=ot2Jj^!%+UzG)slCmMQ)vs zty{~tWuyTJacjjq zpHplLv(A6^IyVEnTR6bR4!f&>c@cO=JyPBb1!%r<$Sy$2OKB7mr##hEV#KT}aFvcf zRKPT2_)Ee9Enxh1z6`*BPJ$GR^(hAb2>ekovDj$=En==1{+FGWRe! z>ii;q2?5US%xwrA*xgGPa69aOmcQ71Q3N~qgM5+yFw!H_RG@-iR3&Mfp(cKn35gx> z6X@b}`D41sIsDTUj}z@8UHBuPN?|0GWzb866d&hx?aSXX;4ex{7h} zd0}s0krMoSEDm@_1^l~85B?H@Eq~;qsG!X4Uz*AV_&I0=!3;ehJ%pysN5l)w8b9hu ziUu#P3+@daBLmUK1R{PTc=mkZ_387x;r5UC-SzwKl>{!jt>R3=o3Gh<1hvXhj~ zgt*L&gJcf*bBjOma#%hds!~Vd7YAM%Ai6HT#G?NXh}EJ%9p5=vqW8(Ht-u0;Y&i2qTCdL6UkccuN_;@S*^g zpPl>s6Lceeo#1&A0en+n94y*}Fh+k1gF*017$+b`+A0aGj%zwInXGKuZV1>qT@ZiU z1%?*lR7bG~F<*wSgkUHFdo%&u@`n$rG@6xZoL4sRg})>Y-Q-;HKhFLujM1%v{hNWb zA#w1lzE25v59Rv4;IWa!AcirgD ziLt%o>twm|io@d*hj#DZw|UbgbknJptLkzD-~GU@S0DkCu6Um#cn+-|@CZhCj7^SR zacF#E_t>7@w~bBWXtwR%v3b*qc?Yz95<(F>Bet0R4Q2w@VL1K=jP3pcqYo2%)Ud!L8yfJ4P zjGG+v=z-Vm>HO}`9liU_G9oR18|QrQ6<9UccaQGeKe2aga$ByO&RsnB^#>npE8vY_Xhsz?#8}#OBl8> vJlUH)>`K0u_WvI;W=!-)U$bxEbLOqJ->|R6=(cV#cQ0Z(`U=VRcH934T=IUl literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000003.pt b/test/resources/var_fps_video.mp4.stream0.frame000003.pt new file mode 100644 index 0000000000000000000000000000000000000000..7bcd549a2d095bb0d1691597e333317132c6f209 GIT binary patch literal 51067 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 literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000004.pt b/test/resources/var_fps_video.mp4.stream0.frame000004.pt new file mode 100644 index 0000000000000000000000000000000000000000..e064927744542cbb8074eb29761658f77b3706e8 GIT binary patch literal 51067 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 ScJ44wFXCENg=BlX?f(ZC(|7Rz literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000020.pt b/test/resources/var_fps_video.mp4.stream0.frame000020.pt new file mode 100644 index 0000000000000000000000000000000000000000..75d1714ba3c156d5c6c48cc6610a4a02f146d9eb GIT binary patch literal 51067 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 WOZKxE-QGRs=|zl2RY>-?`~H6ti+F+n literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000025.pt b/test/resources/var_fps_video.mp4.stream0.frame000025.pt new file mode 100644 index 0000000000000000000000000000000000000000..989f636e2b9a170939edb3f3fff03d4aeb0817fb GIT binary patch literal 51067 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 literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000035.pt b/test/resources/var_fps_video.mp4.stream0.frame000035.pt new file mode 100644 index 0000000000000000000000000000000000000000..442c4b4abe2b5642075fa4bf55fa998ab92a6afa GIT binary patch literal 51067 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 literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000040.pt b/test/resources/var_fps_video.mp4.stream0.frame000040.pt new file mode 100644 index 0000000000000000000000000000000000000000..62acd5c4267d803ac120206d76cd704e386617ac GIT binary patch literal 51067 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

K3uc_E6jbnNh4;v5i1j#&aaoWrwYV`C+p!0$ zLy5n3OGS0${IO|AUK{0PpCY_Q@`_s_Pc_|9wMtk_$fXLhP~7prM>uE7a9}tFPOuZv zZbzuK8Y$ZUEdFy^zFVO$>@Ew_Aey1L$lsH9z{MRE_>W3c!SyR?1@R0$L3QNmIM5bz zWwMqal4Zyi6(Nnq<`aC5B6kyR!@kT@Q=7qf^4%*MsbYw<-;2$#5aey}#U||wmtq_= zc8hKmM`aiXpu@An^rb4|T30KC*f}oJbe02R_p5b5+;>(7e{Yxj+O#KyiZaJQ1=S`l zC6i=M(86>S)Jr+`oIf-YBu2V-(w{)ajaQ%Mp$|W8TWIZJe*6)OHKSi1xTMtaR~&_~ zc5K-4huS4jIkyhhQqfIhYYK@y$LLsD=1v!`>?H5zc(4Oj`oiwAaK8NU3OiVSn1X*q zX&mYpH?#!0s?x=@<49h((_7fyYSvr;BGaNImAH<686zC@5ZaR!EEQx}!AoY)!RRAm z`3Z|?0qMHB=q^IH0mc~)M~4IBC18pS5^+O92l^)Hwu3k-O$2f%oR)rFD^;(u{V*$c}e50sf{Ltc@{H^^K5J~_7UJO(Td4r$f!?}HD7)CN~sgyFF z)M@!{TL&?Jak;G=Gvvd>*wGgB(kdE)J!dp~8BJk&oEI*oDR`uEw9nzpkH3w-RW;)! zp=pQ~Eub=Gy-o7eNZru1B@gD}cD(Fw{%hBiD}TS_r;pIL;Oy~l?HUY&QUxyqZ=X)0 z3~PDY{S^(*z)b;6C1}iZM%u`Q0W96x*V%`}jPCtE>9Ocpl zZ`^qTj#B=uUE@9@n3H;J(-B910`ukHGW?r84aQ9ldf7EsZ))H6*Pi*eo28E+|5nY~ z@N&!=Y}?DO+&Zy&Y;s*oH|@JP_g&kb%oT9PtXoey>*SG;?2eCx!9@rm}07p?fjSsVY!z#F$_v!Z>=Me96i z)|S`aJ?LTg;9fMTvuADk{((2$-PqTzDV1^zFA4V@wtV73ru_eRiP|w;|4;7!_&dAk XsPDMnVsvZQ*rylqH)WFb-MarDp|Cv~ literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000050.pt b/test/resources/var_fps_video.mp4.stream0.frame000050.pt new file mode 100644 index 0000000000000000000000000000000000000000..cedb6d216579caf92dc81a75e3939ac4ee17608e GIT binary patch literal 51067 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 x6jBV&4ra0~uegvU{rhoe#zfcNic{~t)$L_Gii literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000055.pt b/test/resources/var_fps_video.mp4.stream0.frame000055.pt new file mode 100644 index 0000000000000000000000000000000000000000..a57ca9f647e6c6add1da6eee74f7d33399d0a427 GIT binary patch literal 51067 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 literal 0 HcmV?d00001 diff --git a/test/test_variable_fps_video.py b/test/test_variable_fps_video.py new file mode 100644 index 000000000..f71dcd6f8 --- /dev/null +++ b/test/test_variable_fps_video.py @@ -0,0 +1,214 @@ +# Copyright (c) Meta Platforms, Inc. and affiliates. +# All rights reserved. +# +# This source code is licensed under the BSD-style license found in the +# LICENSE file in the root directory of this source tree. + +import os +import json +import pathlib +import pytest +import numpy as np +import torch + +from torchcodec._core import ( + create_from_file, + add_video_stream, + get_next_frame, + get_frame_at_index, + get_frame_at_pts, + get_frames_in_range, + get_json_metadata, + seek_to_pts, +) + +from .utils import ( + assert_frames_equal, + cpu_and_cuda, + TestVideo, + TestVideoStreamInfo, + TestFrameInfo, + _get_file_path, + VAR_FPS_VIDEO, +) + +class TestVariableFPSVideoDecoder: + def _check_video_exists(self): + try: + VAR_FPS_VIDEO.path + except FileNotFoundError: + pytest.skip("Variable FPS test video not found") + + @pytest.mark.parametrize("device", cpu_and_cuda()) + def test_basic_decoding(self, device): + self._check_video_exists() + + decoder = create_from_file(str(VAR_FPS_VIDEO.path)) + add_video_stream(decoder, device=device) + + frame0, pts0, duration0 = get_next_frame(decoder) + reference_frame0 = VAR_FPS_VIDEO.get_frame_data_by_index(0) + assert_frames_equal(frame0, reference_frame0.to(device)) + + metadata = get_json_metadata(decoder) + metadata_dict = json.loads(metadata) + assert "numFrames" in metadata_dict + assert metadata_dict["numFrames"] > 30, "Test video should have at least 30 frames" + + @pytest.mark.parametrize("device", cpu_and_cuda()) + def test_exact_seeking_mode(self, device): + """Test behavior in exact seeking mode (should work properly)""" + self._check_video_exists() + + decoder = create_from_file(str(VAR_FPS_VIDEO.path), seek_mode="exact") + add_video_stream(decoder, device=device) + + metadata = get_json_metadata(decoder) + metadata_dict = json.loads(metadata) + + test_pts = [0.0, 0.5, 1.0, 1.5, 2.0] + for pts in test_pts: + if pts < metadata_dict["durationSeconds"]: + frame, actual_pts, duration = get_frame_at_pts(decoder, pts) + assert frame is not None, f"Failed to seek to {pts}s in exact mode" + assert abs(actual_pts.item() - pts) <= duration.item(), \ + f"Frame timestamp ({actual_pts.item()}) differs too much from requested time ({pts})" + + @pytest.mark.parametrize("device", cpu_and_cuda()) + def test_approximate_seeking_mode_behavior(self, device): + """Test behavior in approximate seeking mode (may fail as expected)""" + self._check_video_exists() + + # Create two decoders: one with exact mode, one with approximate mode + decoder_exact = create_from_file(str(VAR_FPS_VIDEO.path), seek_mode="exact") + add_video_stream(decoder_exact, device=device) + + decoder_approx = create_from_file(str(VAR_FPS_VIDEO.path), seek_mode="approximate") + add_video_stream(decoder_approx, device=device) + + metadata = get_json_metadata(decoder_exact) + metadata_dict = json.loads(metadata) + + # Compare seeking in both modes + test_pts = [0.0, 0.5, 1.0, 1.5, 2.0] + differences = [] + + for pts in test_pts: + if pts < metadata_dict["durationSeconds"]: + frame_exact, pts_exact, _ = get_frame_at_pts(decoder_exact, pts) + + try: + frame_approx, pts_approx, _ = get_frame_at_pts(decoder_approx, pts) + + differences.append({ + "seek_pts": pts, + "exact_pts": pts_exact.item(), + "approx_pts": pts_approx.item(), + "frames_match": torch.allclose(frame_exact, frame_approx), + "pts_difference": abs(pts_exact.item() - pts_approx.item()), + "approximate_failed": False + }) + except Exception as e: + differences.append({ + "seek_pts": pts, + "exact_pts": pts_exact.item(), + "error": str(e), + "approximate_failed": True + }) + + # Print differences (useful for debugging) + for diff in differences: + if diff["approximate_failed"]: + print(f"Seeking to {diff['seek_pts']}s failed in approximate mode: {diff['error']}") + else: + print(f"Seeking to {diff['seek_pts']}s: exact={diff['exact_pts']}, " + f"approx={diff['approx_pts']}, diff={diff['pts_difference']}, " + f"frames {'match' if diff['frames_match'] else 'differ'}") + + # No assertion as approximate mode is expected to potentially fail + + @pytest.mark.parametrize("device", cpu_and_cuda()) + def test_frame_timing_pattern(self, device): + self._check_video_exists() + + decoder = create_from_file(str(VAR_FPS_VIDEO.path)) + add_video_stream(decoder, device=device) + + frames_info = [] + frame_index = 0 + + seek_to_pts(decoder, 0.0) + + while True: + try: + frame, pts, duration = get_next_frame(decoder) + frames_info.append({ + "index": frame_index, + "pts": pts.item(), + "duration": duration.item() + }) + frame_index += 1 + except IndexError: + break + + assert len(frames_info) > 30, "Not enough frames to verify variable frame rate" + + intervals_before = [frames_info[i+1]["pts"] - frames_info[i]["pts"] + for i in range(min(30, len(frames_info)-1))] + + intervals_after = [frames_info[i+1]["pts"] - frames_info[i]["pts"] + for i in range(30, min(60, len(frames_info)-1))] + + if len(intervals_after) > 5: + avg_interval_before = sum(intervals_before) / len(intervals_before) + avg_interval_after = sum(intervals_after) / len(intervals_after) + + print(f"Average interval for first 30 frames: {avg_interval_before:.6f}s") + print(f"Average interval for subsequent frames: {avg_interval_after:.6f}s") + + expected_ratio = 0.5 + actual_ratio = avg_interval_before / avg_interval_after + + # Allow for some error + assert abs(actual_ratio - expected_ratio) < 0.2, \ + f"Interval ratio ({actual_ratio:.2f}) differs too much from expected ({expected_ratio})" + + @pytest.mark.parametrize("device", cpu_and_cuda()) + def test_sequential_decoding(self, device): + self._check_video_exists() + + decoder = create_from_file(str(VAR_FPS_VIDEO.path)) + add_video_stream(decoder, device=device) + + seek_to_pts(decoder, 0.0) + + # Decode multiple frames and verify monotonically increasing timestamps + last_pts = -1.0 + for _ in range(50): + try: + frame, pts, duration = get_next_frame(decoder) + current_pts = pts.item() + + assert current_pts > last_pts, \ + f"Frame timestamps not monotonically increasing: current={current_pts}, previous={last_pts}" + + last_pts = current_pts + except IndexError: + break + + @pytest.mark.parametrize("device", cpu_and_cuda()) + def test_frames_in_range(self, device): + self._check_video_exists() + + decoder = create_from_file(str(VAR_FPS_VIDEO.path)) + add_video_stream(decoder, device=device) + + frames, pts_list, durations = get_frames_in_range(decoder, start=0, stop=10) + + assert len(frames) == 10, f"Expected 10 frames, got {len(frames)}" + + assert len(pts_list) == len(frames), "pts list length should match frame count" + assert len(durations) == len(frames), "durations list length should match frame count" + + for i in range(1, len(pts_list)): + assert pts_list[i] > pts_list[i-1], f"pts not monotonically increasing: {pts_list}" \ No newline at end of file diff --git a/test/utils.py b/test/utils.py index e7ce12e5c..3e81183e2 100644 --- a/test/utils.py +++ b/test/utils.py @@ -561,3 +561,14 @@ def sample_format(self) -> str: }, }, ) + +VAR_FPS_VIDEO = TestVideo( + filename="var_fps_video.mp4", + default_stream_index=0, + # This metadata is extracted manually. + # $ ffprobe -v error -hide_banner -select_streams v:0 -show_frames -of json test/resources/av1_video.mkv > out.json + stream_infos={ + 0: TestVideoStreamInfo(width=320, height=240, num_color_channels=3), + }, + frames={}, +) \ No newline at end of file From bd9cbd712cd4522ba17745de72a1aa1e930b5039 Mon Sep 17 00:00:00 2001 From: yexiaochuan Date: Sun, 25 May 2025 16:08:13 +0800 Subject: [PATCH 2/5] Fix variable FPS video decoder tests to use public API Signed-off-by: yexiaochuan --- test/test_variable_fps_video.py | 54 ++++++++++++++------------------- 1 file changed, 22 insertions(+), 32 deletions(-) diff --git a/test/test_variable_fps_video.py b/test/test_variable_fps_video.py index f71dcd6f8..1597fef41 100644 --- a/test/test_variable_fps_video.py +++ b/test/test_variable_fps_video.py @@ -22,6 +22,9 @@ seek_to_pts, ) +from torchcodec.decoders import VideoDecoder,VideoStreamMetadata +from torchcodec import Frame, FrameBatch + from .utils import ( assert_frames_equal, cpu_and_cuda, @@ -43,36 +46,27 @@ def _check_video_exists(self): def test_basic_decoding(self, device): self._check_video_exists() - decoder = create_from_file(str(VAR_FPS_VIDEO.path)) - add_video_stream(decoder, device=device) + decoder = VideoDecoder(str(VAR_FPS_VIDEO.path)) - frame0, pts0, duration0 = get_next_frame(decoder) - reference_frame0 = VAR_FPS_VIDEO.get_frame_data_by_index(0) - assert_frames_equal(frame0, reference_frame0.to(device)) + frame = decoder.get_frame_at(0) + assert isinstance(frame, Frame) - metadata = get_json_metadata(decoder) - metadata_dict = json.loads(metadata) - assert "numFrames" in metadata_dict - assert metadata_dict["numFrames"] > 30, "Test video should have at least 30 frames" + metadata = decoder.metadata + assert isinstance(metadata, VideoStreamMetadata) + assert metadata.num_frames > 30 @pytest.mark.parametrize("device", cpu_and_cuda()) def test_exact_seeking_mode(self, device): - """Test behavior in exact seeking mode (should work properly)""" self._check_video_exists() - decoder = create_from_file(str(VAR_FPS_VIDEO.path), seek_mode="exact") - add_video_stream(decoder, device=device) - - metadata = get_json_metadata(decoder) - metadata_dict = json.loads(metadata) + decoder = VideoDecoder(str(VAR_FPS_VIDEO.path), seek_mode="exact") - test_pts = [0.0, 0.5, 1.0, 1.5, 2.0] - for pts in test_pts: - if pts < metadata_dict["durationSeconds"]: - frame, actual_pts, duration = get_frame_at_pts(decoder, pts) - assert frame is not None, f"Failed to seek to {pts}s in exact mode" - assert abs(actual_pts.item() - pts) <= duration.item(), \ - f"Frame timestamp ({actual_pts.item()}) differs too much from requested time ({pts})" + test_timestamps = [0.0, 0.5, 1.0, 1.5, 2.0] + for timestamp in test_timestamps: + if timestamp < decoder.metadata.duration_seconds: + frame_batch = decoder.get_frames_played_at(seconds=[timestamp]) + assert isinstance(frame_batch, FrameBatch) + assert abs(frame_batch.pts_seconds[0] - timestamp) <= frame_batch.duration_seconds[0] @pytest.mark.parametrize("device", cpu_and_cuda()) def test_approximate_seeking_mode_behavior(self, device): @@ -200,15 +194,11 @@ def test_sequential_decoding(self, device): def test_frames_in_range(self, device): self._check_video_exists() - decoder = create_from_file(str(VAR_FPS_VIDEO.path)) - add_video_stream(decoder, device=device) - - frames, pts_list, durations = get_frames_in_range(decoder, start=0, stop=10) - - assert len(frames) == 10, f"Expected 10 frames, got {len(frames)}" + decoder = VideoDecoder(str(VAR_FPS_VIDEO.path)) - assert len(pts_list) == len(frames), "pts list length should match frame count" - assert len(durations) == len(frames), "durations list length should match frame count" + frame_batch = decoder.get_frames_in_range(0, 10) + assert isinstance(frame_batch, FrameBatch) + assert len(frame_batch) == 10 - for i in range(1, len(pts_list)): - assert pts_list[i] > pts_list[i-1], f"pts not monotonically increasing: {pts_list}" \ No newline at end of file + timestamps = frame_batch.pts_seconds.tolist() + assert all(timestamps[i] < timestamps[i+1] for i in range(len(timestamps)-1)) From a4f92815b0af6c033c77dc0e74c85718b4b1f894 Mon Sep 17 00:00:00 2001 From: Scott Schneider Date: Tue, 8 Jul 2025 07:24:57 -0700 Subject: [PATCH 3/5] Apply lints --- test/generate_reference_resources.sh | 2 +- test/test_variable_fps_video.py | 194 +++++++++++++-------------- test/utils.py | 2 +- 3 files changed, 99 insertions(+), 99 deletions(-) diff --git a/test/generate_reference_resources.sh b/test/generate_reference_resources.sh index 7428edf80..13a3cb6a4 100755 --- a/test/generate_reference_resources.sh +++ b/test/generate_reference_resources.sh @@ -95,4 +95,4 @@ for bmp in "$RESOURCES_DIR"/*.bmp do python3 "$TORCHCODEC_PATH/test/convert_image_to_tensor.py" "$bmp" rm -f "$bmp" -done \ No newline at end of file +done diff --git a/test/test_variable_fps_video.py b/test/test_variable_fps_video.py index 1597fef41..d7c506de9 100644 --- a/test/test_variable_fps_video.py +++ b/test/test_variable_fps_video.py @@ -4,201 +4,201 @@ # This source code is licensed under the BSD-style license found in the # LICENSE file in the root directory of this source tree. -import os import json -import pathlib + import pytest -import numpy as np import torch +from torchcodec import Frame, FrameBatch from torchcodec._core import ( - create_from_file, add_video_stream, - get_next_frame, - get_frame_at_index, + create_from_file, get_frame_at_pts, - get_frames_in_range, get_json_metadata, + get_next_frame, seek_to_pts, ) -from torchcodec.decoders import VideoDecoder,VideoStreamMetadata -from torchcodec import Frame, FrameBatch +from torchcodec.decoders import VideoDecoder, VideoStreamMetadata -from .utils import ( - assert_frames_equal, - cpu_and_cuda, - TestVideo, - TestVideoStreamInfo, - TestFrameInfo, - _get_file_path, - VAR_FPS_VIDEO, -) +from .utils import cpu_and_cuda, VAR_FPS_VIDEO -class TestVariableFPSVideoDecoder: - def _check_video_exists(self): - try: - VAR_FPS_VIDEO.path - except FileNotFoundError: - pytest.skip("Variable FPS test video not found") +class TestVariableFPSVideoDecoder: @pytest.mark.parametrize("device", cpu_and_cuda()) def test_basic_decoding(self, device): - self._check_video_exists() - + decoder = VideoDecoder(str(VAR_FPS_VIDEO.path)) - + frame = decoder.get_frame_at(0) assert isinstance(frame, Frame) - + metadata = decoder.metadata assert isinstance(metadata, VideoStreamMetadata) assert metadata.num_frames > 30 @pytest.mark.parametrize("device", cpu_and_cuda()) def test_exact_seeking_mode(self, device): - self._check_video_exists() - + decoder = VideoDecoder(str(VAR_FPS_VIDEO.path), seek_mode="exact") - + test_timestamps = [0.0, 0.5, 1.0, 1.5, 2.0] for timestamp in test_timestamps: if timestamp < decoder.metadata.duration_seconds: frame_batch = decoder.get_frames_played_at(seconds=[timestamp]) assert isinstance(frame_batch, FrameBatch) - assert abs(frame_batch.pts_seconds[0] - timestamp) <= frame_batch.duration_seconds[0] + assert ( + abs(frame_batch.pts_seconds[0] - timestamp) + <= frame_batch.duration_seconds[0] + ) @pytest.mark.parametrize("device", cpu_and_cuda()) def test_approximate_seeking_mode_behavior(self, device): """Test behavior in approximate seeking mode (may fail as expected)""" - self._check_video_exists() - + # Create two decoders: one with exact mode, one with approximate mode decoder_exact = create_from_file(str(VAR_FPS_VIDEO.path), seek_mode="exact") add_video_stream(decoder_exact, device=device) - - decoder_approx = create_from_file(str(VAR_FPS_VIDEO.path), seek_mode="approximate") + + decoder_approx = create_from_file( + str(VAR_FPS_VIDEO.path), seek_mode="approximate" + ) add_video_stream(decoder_approx, device=device) metadata = get_json_metadata(decoder_exact) metadata_dict = json.loads(metadata) - + # Compare seeking in both modes test_pts = [0.0, 0.5, 1.0, 1.5, 2.0] differences = [] - + for pts in test_pts: if pts < metadata_dict["durationSeconds"]: frame_exact, pts_exact, _ = get_frame_at_pts(decoder_exact, pts) - + try: frame_approx, pts_approx, _ = get_frame_at_pts(decoder_approx, pts) - - differences.append({ - "seek_pts": pts, - "exact_pts": pts_exact.item(), - "approx_pts": pts_approx.item(), - "frames_match": torch.allclose(frame_exact, frame_approx), - "pts_difference": abs(pts_exact.item() - pts_approx.item()), - "approximate_failed": False - }) + + differences.append( + { + "seek_pts": pts, + "exact_pts": pts_exact.item(), + "approx_pts": pts_approx.item(), + "frames_match": torch.allclose(frame_exact, frame_approx), + "pts_difference": abs(pts_exact.item() - pts_approx.item()), + "approximate_failed": False, + } + ) except Exception as e: - differences.append({ - "seek_pts": pts, - "exact_pts": pts_exact.item(), - "error": str(e), - "approximate_failed": True - }) - + differences.append( + { + "seek_pts": pts, + "exact_pts": pts_exact.item(), + "error": str(e), + "approximate_failed": True, + } + ) + # Print differences (useful for debugging) for diff in differences: if diff["approximate_failed"]: - print(f"Seeking to {diff['seek_pts']}s failed in approximate mode: {diff['error']}") + print( + f"Seeking to {diff['seek_pts']}s failed in approximate mode: {diff['error']}" + ) else: - print(f"Seeking to {diff['seek_pts']}s: exact={diff['exact_pts']}, " - f"approx={diff['approx_pts']}, diff={diff['pts_difference']}, " - f"frames {'match' if diff['frames_match'] else 'differ'}") - + print( + f"Seeking to {diff['seek_pts']}s: exact={diff['exact_pts']}, " + f"approx={diff['approx_pts']}, diff={diff['pts_difference']}, " + f"frames {'match' if diff['frames_match'] else 'differ'}" + ) + # No assertion as approximate mode is expected to potentially fail @pytest.mark.parametrize("device", cpu_and_cuda()) def test_frame_timing_pattern(self, device): - self._check_video_exists() - + decoder = create_from_file(str(VAR_FPS_VIDEO.path)) add_video_stream(decoder, device=device) - + frames_info = [] frame_index = 0 - + seek_to_pts(decoder, 0.0) - + while True: try: frame, pts, duration = get_next_frame(decoder) - frames_info.append({ - "index": frame_index, - "pts": pts.item(), - "duration": duration.item() - }) + frames_info.append( + { + "index": frame_index, + "pts": pts.item(), + "duration": duration.item(), + } + ) frame_index += 1 except IndexError: break - - assert len(frames_info) > 30, "Not enough frames to verify variable frame rate" - - intervals_before = [frames_info[i+1]["pts"] - frames_info[i]["pts"] - for i in range(min(30, len(frames_info)-1))] - - intervals_after = [frames_info[i+1]["pts"] - frames_info[i]["pts"] - for i in range(30, min(60, len(frames_info)-1))] - + + assert len(frames_info) > 30, "Not enough frames to verify variable frame rate" + + intervals_before = [ + frames_info[i + 1]["pts"] - frames_info[i]["pts"] + for i in range(min(30, len(frames_info) - 1)) + ] + + intervals_after = [ + frames_info[i + 1]["pts"] - frames_info[i]["pts"] + for i in range(30, min(60, len(frames_info) - 1)) + ] + if len(intervals_after) > 5: avg_interval_before = sum(intervals_before) / len(intervals_before) avg_interval_after = sum(intervals_after) / len(intervals_after) - + print(f"Average interval for first 30 frames: {avg_interval_before:.6f}s") print(f"Average interval for subsequent frames: {avg_interval_after:.6f}s") - + expected_ratio = 0.5 actual_ratio = avg_interval_before / avg_interval_after - + # Allow for some error - assert abs(actual_ratio - expected_ratio) < 0.2, \ - f"Interval ratio ({actual_ratio:.2f}) differs too much from expected ({expected_ratio})" + assert ( + abs(actual_ratio - expected_ratio) < 0.2 + ), f"Interval ratio ({actual_ratio:.2f}) differs too much from expected ({expected_ratio})" @pytest.mark.parametrize("device", cpu_and_cuda()) def test_sequential_decoding(self, device): - self._check_video_exists() - + decoder = create_from_file(str(VAR_FPS_VIDEO.path)) add_video_stream(decoder, device=device) - + seek_to_pts(decoder, 0.0) - + # Decode multiple frames and verify monotonically increasing timestamps last_pts = -1.0 for _ in range(50): try: frame, pts, duration = get_next_frame(decoder) current_pts = pts.item() - - assert current_pts > last_pts, \ - f"Frame timestamps not monotonically increasing: current={current_pts}, previous={last_pts}" - + + assert ( + current_pts > last_pts + ), f"Frame timestamps not monotonically increasing: current={current_pts}, previous={last_pts}" + last_pts = current_pts except IndexError: break @pytest.mark.parametrize("device", cpu_and_cuda()) def test_frames_in_range(self, device): - self._check_video_exists() - + decoder = VideoDecoder(str(VAR_FPS_VIDEO.path)) - + frame_batch = decoder.get_frames_in_range(0, 10) assert isinstance(frame_batch, FrameBatch) assert len(frame_batch) == 10 - + timestamps = frame_batch.pts_seconds.tolist() - assert all(timestamps[i] < timestamps[i+1] for i in range(len(timestamps)-1)) + assert all( + timestamps[i] < timestamps[i + 1] for i in range(len(timestamps) - 1) + ) diff --git a/test/utils.py b/test/utils.py index 3e81183e2..b82b36a2b 100644 --- a/test/utils.py +++ b/test/utils.py @@ -571,4 +571,4 @@ def sample_format(self) -> str: 0: TestVideoStreamInfo(width=320, height=240, num_color_channels=3), }, frames={}, -) \ No newline at end of file +) From 230c77ac46cc0617cdda6f78376fa84854055d08 Mon Sep 17 00:00:00 2001 From: Scott Schneider Date: Tue, 8 Jul 2025 19:59:39 -0700 Subject: [PATCH 4/5] Refactor variable fps tests --- test/generate_reference_resources.sh | 16 +- ...fps_video.mp4.stream0.all_frames_info.json | 1200 ++++++++--------- .../var_fps_video.mp4.stream0.frame000000.pt | Bin 51067 -> 50546 bytes .../var_fps_video.mp4.stream0.frame000001.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000002.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000003.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000004.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000005.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000010.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000015.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000020.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000025.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000030.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000035.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000040.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000045.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000050.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000055.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000060.pt | Bin 51067 -> 0 bytes .../var_fps_video.mp4.stream0.frame000150.pt | Bin 0 -> 50546 bytes .../var_fps_video.mp4.stream0.frame000151.pt | Bin 0 -> 50546 bytes .../var_fps_video.mp4.stream0.frame000152.pt | Bin 0 -> 50546 bytes .../var_fps_video.mp4.stream0.frame000153.pt | Bin 0 -> 50546 bytes .../var_fps_video.mp4.stream0.frame000154.pt | Bin 0 -> 50546 bytes .../var_fps_video.mp4.stream0.frame000155.pt | Bin 0 -> 50546 bytes .../var_fps_video.mp4.stream0.frame000156.pt | Bin 0 -> 50546 bytes .../var_fps_video.mp4.stream0.frame000157.pt | Bin 0 -> 50546 bytes .../var_fps_video.mp4.stream0.frame000158.pt | Bin 0 -> 50546 bytes .../var_fps_video.mp4.stream0.frame000159.pt | Bin 0 -> 50546 bytes .../var_fps_video.mp4.stream0.frame000299.pt | Bin 0 -> 50546 bytes test/test_decoders.py | 35 + test/test_variable_fps_video.py | 204 --- test/utils.py | 2 +- 33 files changed, 638 insertions(+), 819 deletions(-) delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000001.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000002.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000003.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000004.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000005.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000010.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000015.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000020.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000025.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000030.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000035.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000040.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000045.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000050.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000055.pt delete mode 100644 test/resources/var_fps_video.mp4.stream0.frame000060.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000150.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000151.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000152.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000153.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000154.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000155.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000156.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000157.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000158.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000159.pt create mode 100644 test/resources/var_fps_video.mp4.stream0.frame000299.pt delete mode 100644 test/test_variable_fps_video.py diff --git a/test/generate_reference_resources.sh b/test/generate_reference_resources.sh index 13a3cb6a4..d19d494f4 100755 --- a/test/generate_reference_resources.sh +++ b/test/generate_reference_resources.sh @@ -56,12 +56,6 @@ for frame in "${FRAMES[@]}"; do ffmpeg -y -i "$VIDEO_PATH" -vf select="eq(n\,$frame)" -vsync vfr -q:v 2 "$VIDEO_PATH.stream0.frame$frame_name.bmp" done -for bmp in "$RESOURCES_DIR"/*.bmp -do - python3 "$TORCHCODEC_PATH/test/convert_image_to_tensor.py" "$bmp" - rm -f "$bmp" -done - # This video was generated by running the following: # ffmpeg -f lavfi -i testsrc=duration=5:size=640x360:rate=25,format=yuv420p -c:v libaom-av1 -crf 30 -colorspace bt709 -color_primaries bt709 -color_trc bt709 av1_video.mkv # Note that this video only has 1 stream, at index 0. @@ -72,18 +66,12 @@ for frame in "${FRAMES[@]}"; do ffmpeg -y -i "$VIDEO_PATH" -vf select="eq(n\,$frame)" -vsync vfr -q:v 2 "$VIDEO_PATH.stream0.frame$frame_name.bmp" done -for bmp in "$RESOURCES_DIR"/*.bmp -do - python3 "$TORCHCODEC_PATH/test/convert_image_to_tensor.py" "$bmp" - rm -f "$bmp" -done - # This video was generated by running the following: -# ffmpeg -f lavfi -i testsrc=duration=10:size=128x128:rate=30 -vf "setpts=PTS*if(gt(N\,30)\,1.5\,1)" -c:v libx264 -bf 0 var_fps_video.mp4 +# ffmpeg -f lavfi -i testsrc=duration=10:size=128x128:rate=30 -vf "setpts=PTS*if(gt(N\,30)\,1.5\,1)" -c:v libx264 -bf 0 var_fps_video.mp4 VIDEO_PATH=$RESOURCES_DIR/var_fps_video.mp4 STREAMS=(0) -FRAMES=(0 1 2 3 4 5 10 15 20 25 30 35 40 45 50 55 60) +FRAMES=(0 150 151 152 153 154 155 156 157 158 159 299) for stream in "${STREAMS[@]}"; do for frame in "${FRAMES[@]}"; do frame_name=$(printf "%06d" "$frame") diff --git a/test/resources/var_fps_video.mp4.stream0.all_frames_info.json b/test/resources/var_fps_video.mp4.stream0.all_frames_info.json index 502477a9c..e2c6aba27 100644 --- a/test/resources/var_fps_video.mp4.stream0.all_frames_info.json +++ b/test/resources/var_fps_video.mp4.stream0.all_frames_info.json @@ -1,1202 +1,1202 @@ [ { - "pts_time": "0.000000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.000000" }, { - "pts_time": "0.033333", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.033333" }, { - "pts_time": "0.066667", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.066667" }, { - "pts_time": "0.100000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.100000" }, { - "pts_time": "0.133333", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.133333" }, { - "pts_time": "0.166667", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.166667" }, { - "pts_time": "0.200000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.200000" }, { - "pts_time": "0.233333", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.233333" }, { - "pts_time": "0.266667", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.266667" }, { - "pts_time": "0.300000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.300000" }, { - "pts_time": "0.333333", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.333333" }, { - "pts_time": "0.366667", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.366667" }, { - "pts_time": "0.400000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.400000" }, { - "pts_time": "0.433333", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.433333" }, { - "pts_time": "0.466667", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.466667" }, { - "pts_time": "0.500000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.500000" }, { - "pts_time": "0.533333", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.533333" }, { - "pts_time": "0.566667", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.566667" }, { - "pts_time": "0.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.600000" }, { - "pts_time": "0.633333", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.633333" }, { - "pts_time": "0.666667", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.666667" }, { - "pts_time": "0.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.700000" }, { - "pts_time": "0.733333", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.733333" }, { - "pts_time": "0.766667", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.766667" }, { - "pts_time": "0.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.800000" }, { - "pts_time": "0.833333", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.833333" }, { - "pts_time": "0.866667", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.866667" }, { - "pts_time": "0.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.900000" }, { - "pts_time": "0.933333", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.933333" }, { - "pts_time": "0.966667", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "0.966667" }, { - "pts_time": "1.000000", - "duration_time": "0.533333" + "duration_time": "0.533333", + "pts_time": "1.000000" }, { - "pts_time": "1.533333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "1.533333" }, { - "pts_time": "1.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "1.600000" }, { - "pts_time": "1.633333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "1.633333" }, { - "pts_time": "1.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "1.700000" }, { - "pts_time": "1.733333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "1.733333" }, { - "pts_time": "1.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "1.800000" }, { - "pts_time": "1.833333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "1.833333" }, { - "pts_time": "1.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "1.900000" }, { - "pts_time": "1.933333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "1.933333" }, { - "pts_time": "2.000000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "2.000000" }, { - "pts_time": "2.033333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "2.033333" }, { - "pts_time": "2.100000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "2.100000" }, { - "pts_time": "2.133333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "2.133333" }, { - "pts_time": "2.200000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "2.200000" }, { - "pts_time": "2.233333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "2.233333" }, { - "pts_time": "2.300000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "2.300000" }, { - "pts_time": "2.333333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "2.333333" }, { - "pts_time": "2.400000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "2.400000" }, { - "pts_time": "2.433333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "2.433333" }, { - "pts_time": "2.500000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "2.500000" }, { - "pts_time": "2.533333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "2.533333" }, { - "pts_time": "2.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "2.600000" }, { - "pts_time": "2.633333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "2.633333" }, { - "pts_time": "2.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "2.700000" }, { - "pts_time": "2.733333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "2.733333" }, { - "pts_time": "2.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "2.800000" }, { - "pts_time": "2.833333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "2.833333" }, { - "pts_time": "2.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "2.900000" }, { - "pts_time": "2.933333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "2.933333" }, { - "pts_time": "3.000000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "3.000000" }, { - "pts_time": "3.033333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "3.033333" }, { - "pts_time": "3.100000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "3.100000" }, { - "pts_time": "3.133333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "3.133333" }, { - "pts_time": "3.200000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "3.200000" }, { - "pts_time": "3.233333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "3.233333" }, { - "pts_time": "3.300000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "3.300000" }, { - "pts_time": "3.333333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "3.333333" }, { - "pts_time": "3.400000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "3.400000" }, { - "pts_time": "3.433333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "3.433333" }, { - "pts_time": "3.500000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "3.500000" }, { - "pts_time": "3.533333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "3.533333" }, { - "pts_time": "3.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "3.600000" }, { - "pts_time": "3.633333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "3.633333" }, { - "pts_time": "3.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "3.700000" }, { - "pts_time": "3.733333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "3.733333" }, { - "pts_time": "3.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "3.800000" }, { - "pts_time": "3.833333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "3.833333" }, { - "pts_time": "3.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "3.900000" }, { - "pts_time": "3.933333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "3.933333" }, { - "pts_time": "4.000000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "4.000000" }, { - "pts_time": "4.033333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "4.033333" }, { - "pts_time": "4.100000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "4.100000" }, { - "pts_time": "4.133333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "4.133333" }, { - "pts_time": "4.200000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "4.200000" }, { - "pts_time": "4.233333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "4.233333" }, { - "pts_time": "4.300000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "4.300000" }, { - "pts_time": "4.333333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "4.333333" }, { - "pts_time": "4.400000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "4.400000" }, { - "pts_time": "4.433333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "4.433333" }, { - "pts_time": "4.500000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "4.500000" }, { - "pts_time": "4.533333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "4.533333" }, { - "pts_time": "4.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "4.600000" }, { - "pts_time": "4.633333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "4.633333" }, { - "pts_time": "4.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "4.700000" }, { - "pts_time": "4.733333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "4.733333" }, { - "pts_time": "4.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "4.800000" }, { - "pts_time": "4.833333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "4.833333" }, { - "pts_time": "4.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "4.900000" }, { - "pts_time": "4.933333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "4.933333" }, { - "pts_time": "5.000000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "5.000000" }, { - "pts_time": "5.033333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "5.033333" }, { - "pts_time": "5.100000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "5.100000" }, { - "pts_time": "5.133333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "5.133333" }, { - "pts_time": "5.200000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "5.200000" }, { - "pts_time": "5.233333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "5.233333" }, { - "pts_time": "5.300000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "5.300000" }, { - "pts_time": "5.333333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "5.333333" }, { - "pts_time": "5.400000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "5.400000" }, { - "pts_time": "5.433333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "5.433333" }, { - "pts_time": "5.500000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "5.500000" }, { - "pts_time": "5.533333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "5.533333" }, { - "pts_time": "5.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "5.600000" }, { - "pts_time": "5.633333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "5.633333" }, { - "pts_time": "5.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "5.700000" }, { - "pts_time": "5.733333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "5.733333" }, { - "pts_time": "5.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "5.800000" }, { - "pts_time": "5.833333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "5.833333" }, { - "pts_time": "5.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "5.900000" }, { - "pts_time": "5.933333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "5.933333" }, { - "pts_time": "6.000000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "6.000000" }, { - "pts_time": "6.033333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "6.033333" }, { - "pts_time": "6.100000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "6.100000" }, { - "pts_time": "6.133333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "6.133333" }, { - "pts_time": "6.200000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "6.200000" }, { - "pts_time": "6.233333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "6.233333" }, { - "pts_time": "6.300000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "6.300000" }, { - "pts_time": "6.333333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "6.333333" }, { - "pts_time": "6.400000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "6.400000" }, { - "pts_time": "6.433333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "6.433333" }, { - "pts_time": "6.500000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "6.500000" }, { - "pts_time": "6.533333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "6.533333" }, { - "pts_time": "6.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "6.600000" }, { - "pts_time": "6.633333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "6.633333" }, { - "pts_time": "6.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "6.700000" }, { - "pts_time": "6.733333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "6.733333" }, { - "pts_time": "6.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "6.800000" }, { - "pts_time": "6.833333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "6.833333" }, { - "pts_time": "6.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "6.900000" }, { - "pts_time": "6.933333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "6.933333" }, { - "pts_time": "7.000000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "7.000000" }, { - "pts_time": "7.033333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "7.033333" }, { - "pts_time": "7.100000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "7.100000" }, { - "pts_time": "7.133333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "7.133333" }, { - "pts_time": "7.200000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "7.200000" }, { - "pts_time": "7.233333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "7.233333" }, { - "pts_time": "7.300000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "7.300000" }, { - "pts_time": "7.333333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "7.333333" }, { - "pts_time": "7.400000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "7.400000" }, { - "pts_time": "7.433333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "7.433333" }, { - "pts_time": "7.500000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "7.500000" }, { - "pts_time": "7.533333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "7.533333" }, { - "pts_time": "7.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "7.600000" }, { - "pts_time": "7.633333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "7.633333" }, { - "pts_time": "7.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "7.700000" }, { - "pts_time": "7.733333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "7.733333" }, { - "pts_time": "7.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "7.800000" }, { - "pts_time": "7.833333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "7.833333" }, { - "pts_time": "7.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "7.900000" }, { - "pts_time": "7.933333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "7.933333" }, { - "pts_time": "8.000000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "8.000000" }, { - "pts_time": "8.033333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "8.033333" }, { - "pts_time": "8.100000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "8.100000" }, { - "pts_time": "8.133333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "8.133333" }, { - "pts_time": "8.200000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "8.200000" }, { - "pts_time": "8.233333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "8.233333" }, { - "pts_time": "8.300000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "8.300000" }, { - "pts_time": "8.333333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "8.333333" }, { - "pts_time": "8.400000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "8.400000" }, { - "pts_time": "8.433333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "8.433333" }, { - "pts_time": "8.500000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "8.500000" }, { - "pts_time": "8.533333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "8.533333" }, { - "pts_time": "8.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "8.600000" }, { - "pts_time": "8.633333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "8.633333" }, { - "pts_time": "8.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "8.700000" }, { - "pts_time": "8.733333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "8.733333" }, { - "pts_time": "8.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "8.800000" }, { - "pts_time": "8.833333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "8.833333" }, { - "pts_time": "8.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "8.900000" }, { - "pts_time": "8.933333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "8.933333" }, { - "pts_time": "9.000000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "9.000000" }, { - "pts_time": "9.033333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "9.033333" }, { - "pts_time": "9.100000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "9.100000" }, { - "pts_time": "9.133333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "9.133333" }, { - "pts_time": "9.200000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "9.200000" }, { - "pts_time": "9.233333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "9.233333" }, { - "pts_time": "9.300000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "9.300000" }, { - "pts_time": "9.333333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "9.333333" }, { - "pts_time": "9.400000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "9.400000" }, { - "pts_time": "9.433333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "9.433333" }, { - "pts_time": "9.500000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "9.500000" }, { - "pts_time": "9.533333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "9.533333" }, { - "pts_time": "9.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "9.600000" }, { - "pts_time": "9.633333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "9.633333" }, { - "pts_time": "9.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "9.700000" }, { - "pts_time": "9.733333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "9.733333" }, { - "pts_time": "9.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "9.800000" }, { - "pts_time": "9.833333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "9.833333" }, { - "pts_time": "9.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "9.900000" }, { - "pts_time": "9.933333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "9.933333" }, { - "pts_time": "10.000000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "10.000000" }, { - "pts_time": "10.033333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "10.033333" }, { - "pts_time": "10.100000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "10.100000" }, { - "pts_time": "10.133333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "10.133333" }, { - "pts_time": "10.200000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "10.200000" }, { - "pts_time": "10.233333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "10.233333" }, { - "pts_time": "10.300000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "10.300000" }, { - "pts_time": "10.333333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "10.333333" }, { - "pts_time": "10.400000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "10.400000" }, { - "pts_time": "10.433333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "10.433333" }, { - "pts_time": "10.500000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "10.500000" }, { - "pts_time": "10.533333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "10.533333" }, { - "pts_time": "10.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "10.600000" }, { - "pts_time": "10.633333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "10.633333" }, { - "pts_time": "10.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "10.700000" }, { - "pts_time": "10.733333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "10.733333" }, { - "pts_time": "10.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "10.800000" }, { - "pts_time": "10.833333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "10.833333" }, { - "pts_time": "10.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "10.900000" }, { - "pts_time": "10.933333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "10.933333" }, { - "pts_time": "11.000000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "11.000000" }, { - "pts_time": "11.033333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "11.033333" }, { - "pts_time": "11.100000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "11.100000" }, { - "pts_time": "11.133333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "11.133333" }, { - "pts_time": "11.200000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "11.200000" }, { - "pts_time": "11.233333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "11.233333" }, { - "pts_time": "11.300000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "11.300000" }, { - "pts_time": "11.333333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "11.333333" }, { - "pts_time": "11.400000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "11.400000" }, { - "pts_time": "11.433333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "11.433333" }, { - "pts_time": "11.500000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "11.500000" }, { - "pts_time": "11.533333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "11.533333" }, { - "pts_time": "11.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "11.600000" }, { - "pts_time": "11.633333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "11.633333" }, { - "pts_time": "11.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "11.700000" }, { - "pts_time": "11.733333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "11.733333" }, { - "pts_time": "11.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "11.800000" }, { - "pts_time": "11.833333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "11.833333" }, { - "pts_time": "11.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "11.900000" }, { - "pts_time": "11.933333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "11.933333" }, { - "pts_time": "12.000000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "12.000000" }, { - "pts_time": "12.033333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "12.033333" }, { - "pts_time": "12.100000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "12.100000" }, { - "pts_time": "12.133333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "12.133333" }, { - "pts_time": "12.200000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "12.200000" }, { - "pts_time": "12.233333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "12.233333" }, { - "pts_time": "12.300000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "12.300000" }, { - "pts_time": "12.333333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "12.333333" }, { - "pts_time": "12.400000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "12.400000" }, { - "pts_time": "12.433333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "12.433333" }, { - "pts_time": "12.500000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "12.500000" }, { - "pts_time": "12.533333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "12.533333" }, { - "pts_time": "12.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "12.600000" }, { - "pts_time": "12.633333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "12.633333" }, { - "pts_time": "12.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "12.700000" }, { - "pts_time": "12.733333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "12.733333" }, { - "pts_time": "12.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "12.800000" }, { - "pts_time": "12.833333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "12.833333" }, { - "pts_time": "12.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "12.900000" }, { - "pts_time": "12.933333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "12.933333" }, { - "pts_time": "13.000000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "13.000000" }, { - "pts_time": "13.033333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "13.033333" }, { - "pts_time": "13.100000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "13.100000" }, { - "pts_time": "13.133333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "13.133333" }, { - "pts_time": "13.200000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "13.200000" }, { - "pts_time": "13.233333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "13.233333" }, { - "pts_time": "13.300000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "13.300000" }, { - "pts_time": "13.333333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "13.333333" }, { - "pts_time": "13.400000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "13.400000" }, { - "pts_time": "13.433333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "13.433333" }, { - "pts_time": "13.500000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "13.500000" }, { - "pts_time": "13.533333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "13.533333" }, { - "pts_time": "13.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "13.600000" }, { - "pts_time": "13.633333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "13.633333" }, { - "pts_time": "13.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "13.700000" }, { - "pts_time": "13.733333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "13.733333" }, { - "pts_time": "13.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "13.800000" }, { - "pts_time": "13.833333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "13.833333" }, { - "pts_time": "13.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "13.900000" }, { - "pts_time": "13.933333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "13.933333" }, { - "pts_time": "14.000000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "14.000000" }, { - "pts_time": "14.033333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "14.033333" }, { - "pts_time": "14.100000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "14.100000" }, { - "pts_time": "14.133333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "14.133333" }, { - "pts_time": "14.200000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "14.200000" }, { - "pts_time": "14.233333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "14.233333" }, { - "pts_time": "14.300000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "14.300000" }, { - "pts_time": "14.333333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "14.333333" }, { - "pts_time": "14.400000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "14.400000" }, { - "pts_time": "14.433333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "14.433333" }, { - "pts_time": "14.500000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "14.500000" }, { - "pts_time": "14.533333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "14.533333" }, { - "pts_time": "14.600000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "14.600000" }, { - "pts_time": "14.633333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "14.633333" }, { - "pts_time": "14.700000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "14.700000" }, { - "pts_time": "14.733333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "14.733333" }, { - "pts_time": "14.800000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "14.800000" }, { - "pts_time": "14.833333", - "duration_time": "0.066667" + "duration_time": "0.066667", + "pts_time": "14.833333" }, { - "pts_time": "14.900000", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "14.900000" }, { - "pts_time": "14.933333", - "duration_time": "0.033333" + "duration_time": "0.033333", + "pts_time": "14.933333" } ] diff --git a/test/resources/var_fps_video.mp4.stream0.frame000000.pt b/test/resources/var_fps_video.mp4.stream0.frame000000.pt index a7a834a005037ed5f4b9263ad243769629577800..6c80d575960368fad8e0a380321618727e54558b 100644 GIT binary patch delta 233 zcmey}$NZ^_d4ne-vpxgMWX7ZFyh)WMsrf}IsYPy13=EqOFf|-BFfcVYvoN)=Ff})} zFtxNaGcva@G5`S!LlZ+I3ll>N3llR-W0L@Hc8-Ae&zL3`94VQ+_Ndh4e@C`f; zIBoL(Bbt-_ju|is9Gcv4%w7hhN`rxc0fcRU7y%|7nsiiiviK3v$&$wTt5HV}^$2tn#0Y5^+TI3551 delta 412 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 K7fJTF`~E**y?}@S diff --git a/test/resources/var_fps_video.mp4.stream0.frame000002.pt b/test/resources/var_fps_video.mp4.stream0.frame000002.pt deleted file mode 100644 index 301c260e8b2a4da1277e3a9043da64c807183ad7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51067 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 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000003.pt b/test/resources/var_fps_video.mp4.stream0.frame000003.pt deleted file mode 100644 index 7bcd549a2d095bb0d1691597e333317132c6f209..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51067 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 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000004.pt b/test/resources/var_fps_video.mp4.stream0.frame000004.pt deleted file mode 100644 index e064927744542cbb8074eb29761658f77b3706e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51067 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 ScJ44wFXCENg=BlX?f(ZC(|7Rz diff --git a/test/resources/var_fps_video.mp4.stream0.frame000020.pt b/test/resources/var_fps_video.mp4.stream0.frame000020.pt deleted file mode 100644 index 75d1714ba3c156d5c6c48cc6610a4a02f146d9eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51067 zcmeI54Ui>Qb>GkJulF%CJG=Tq5)d1gv4kz}w}fOQgtzcwdrM}8qo4xp^=NlijM>lG zk%W{FV_YDFF?I+bOF(Sl1ltgtlpR@4;Z(^+4silhaM}0^RRSx71(J4mX5LqS+>`&g zxBE`dn|W{ENIRol>9x+b?(5g{y8Cy|J?GqeyKnE^;|E05DlJ(y(@wf`VtU`fV<-0A zIdx$2=;p)6c5Xf~Gd($Rc4{oAIXO4$A@1Z^K!GHd}$D^CxqxSfF)V;?m z_wC<*^w6Qn{WDWXkDRE#dHTTQ^yGmzPVJwmAFsaVEyrs!$Lnu7KC*f5o=Ww}Llo`YERmaV&Yy`t|4;9#p-H2JF% zFAe$#=|Ci{ktX8NF{YS_d1Hg=Sq`~Faa=pY!ISJWK5}HF!n`1gct!C@8%aG%+rEax zo=%mHiBlt*xR(SOuS$58%c|gG=T*VS&VAsUue>nxgOn5#Wl#Zeb4<6O0-9s`4%3Ci z9>qkbjGQ6rmWEaNf{*R1f{&e7yQ~X;kFrPsa+cQxR}jMl zc@Y%qP(hqsI!32yJoB;DKdmb4`K%NNg@nXq>2IDfD@dXV(l(L=9Z2fMsY)}Irj$V} ze^W?MBcuwNdV%%%&p+~D*je4IBWv^UIpul*_)U6(DQi+nBYKqPVD^5{vWl_p#g><@ zv&`=&T4h?5olBu^`K2zi2Y>iK#~{FNq8lWJT-Eq`MossL^6bLKTO(kbC&zGuAP zd2j!~uHY~d<7YDRIPlwkn2aHoHV|3~g32!Bt&C9$_~Lx>z?$>#6=a_qfAiZuHN(0d zkJ>oY1r@kHYR!#3%>lEoaaKtUhVj(-=6_&WxrhZ*K)exN-RDZk7uHbWtLqy0+#}p#kU`vB&?lRa$8(I*1NRY5%w9t>dRl)P&UlaTHkeCU74*d+|17GT&zajO#@72)GkP|dA z(qTW#C0ECCwcv%d|C~P}s2Gtk<@^Gk$xw|IDs#qOhn2R#5$p=%hy9BzHvaYCj|k;y zNofs#DZp<^dxQxpIECIFom8dbX2CgQ|M2LjyAaqb8d->|5R{$$qsdg~7J@4B3Nawn zgzwM!t3(QhHZpKqaO;Bq%H+?M{X729f)O9#0Pvv#)Pj^oQALmt)RwdM5Z1IBoTO=86|LjhVC3bU@A#eA=O*CKQr7Z1&x#Fc_#BAi@36bVfNtlk_RiYp`cN?#8hLS!Y%|wGUYA*sggF zRa@FMh1nMs!6?EyrDFZU@`n}xU-)Z8t`M<+sh;x>qmE=r5yeehisVPLX$7tnK_L~f z+F5)17w-uBN1h39lS!sn?VysPYoJ^2Ag(cj{iCcUJdJ<<93v8;cNqL({}oX|F0o+e+~@Zt zZ?&*${-%e)_A~Ta_v-(tNdBn|e=+!F#Y8t@-a$7x(JT^GG~$sZnI7>gvF$_IRU8gW&sbd+$=67MI?!;)C1 z@S@=l$BS#XzDN>3WrW7yh@PoJK~>a(D$wgS;cww%EpErFdYq25B%=X;G-oCCHRP=e zD!bzs4S#F@Sm)uu1O@qs!95clk`dGs?j&h5>BMn*dN5Dqz^+)ZRemW`IiEJ7`)t3VIqPZS+e{QChDjQu~9%%_-nKDsS0Jheaaw@1-~=WDLe|glZz}; z_{08<*k-s}7kk@&w&D-mUoI(_sytBUY4p@~}d7rNM>uQ0se{8X*8`CDZ zrb_{_f~(@pR0EwM1@9M-`!IK3fxIn)zm2(qt+;Y%1>*R36<);rr3nBpgo=Q*l8gxa zD?k;YC7OU0xF;Fp`SOpV$QnN?Q;ywudrST$&fir8I3nn>m9 zjJ!|5!p9$`xL>9)dpP_d|GWyAKmhoLzrszFavvojC6`#7vWB?jIq)xQ4g6iG9r7>p zx1oV(Gz|Tk@Q+A|3b6EXK(gbK#W{TY%~Jm8Q7gkoxy$Xlk1u-v@BB~BUyX(lS^j>A z@c}f*I8O7Nw9EMMaS3|@e9!Z+wuLii&XoTO_TNR`essXQ3NJbSG#Z6Uf&gLwc_ZT+ zExle9VJZLe7Fd3}-7fR*a{EpfUD(}6lP9@B-t#a2L{?)nOl#h5Z9UI2{zr|3zO({N z5bz1nzy~CW0%eS@T&7(v!}!B6EPEdNCk}X5!2$0oobUXlskNN+X{tZ}E_Jw%=R1EmXk;}|K`%vgX-Beuh1loAB)}kpRyMk5WCy$ zeCLm6X27|Bhe%lwAa9a?@Hg;nV?Z{kPGUQT7Fo2ld6VqqD{R3Yw$}n{EH7pL*767E z9|};@UE|1`f?uh^5iO0vmcRT>v7ik8mbv5aRNxGIz{2@%|7HGVJMUHQ#h=hBKnL|= zV+Lo(-xi<*Fn2Y?@poGW#O`(*^3Ov+;8Ey%xV?Ar(#0Pi%iqK7?cz2%umcu`{Dr^x zf3qlRcG^G+o_1Y)A^(T*qpK60Z1&q6{o*dW0kON?hWr=cBNYlm#LNh*RmY zc=>m2Onze)@VCw0A^&yYFAm>m03AKGn%pbl?0?0=fNtOI_R{tLCHr@|Km5KG2?6Mi z#*=A<{UaCc@A<829M}O1L;e8l_}cO<5CiueI1->DV0?30u3Pb+u%{b?`#whO!aDEt*>FsV`yP%wHSX17Z+^pp+xuMhw4rtAT~ zc;v{2fGkV!F#C}I`tWbZn9B+e4;lZ16ST{`D|3x!|{7C3+KL}AE({q4UNRdgy(VS~Tiiwkv_WyQ9@fM)M@8`{5E_+r5p zEYAMR{L4?_S&ek99oPX2L;gVB#XkyUlrm|{)7B_h{-O~x?UJ1rq6@qGI3RYn+mQcK z{*^Fl&NnPleCrm=-=SW%;J^-881e_+F8jw8uoeGr+Fy=89)T%OK``WxxV#qmC;X3_ z4b;I$!9I&2PsR71FLyw*ce@SkU%;AYUR*5@!_IV;V1!fpAIgihdGJRfWS6d5;J^-8 z81e^ROWtx0@u)QteAm4@EeH;+G+il3-@dtT;{0(p~7oI7I+kN~6Pnhd*v-mOGmJj`UX$`wBomUe7nky6Tg@E*C@N6vQLx#Jn?@c{!7wdCw`Lj(_Yf_+w7fU zdNQTI&(xPSJ(|*gW$$zGhKEjVy8m==AJaWdhuHfCR=2Qv6VvNhZPV&COqVlWiHWJ~ zYLvZ<^!E|}F!8m-KSjLP<9B#`g!qKgch&e;Lw=Cbhba96l|4%OE0p{#HJ+eTXS`D# zN;8U?0N|TU|H$+gtR80iL#E$n`UKO5nSPn+PNpfQpUdc4LCht(UHwliH}uKogfANg6}uTC5O|B%sFH2rx-4`*`qzn#&)%hdas{w34l zRq%fk@y*2VAmM)xrSGLw)UVRtq4d8H`1AiJ{%hj@OZ*JpABZ?fc)i~#RwtSMmg%cZ zf6lM~`dy|^E$07rO>buUDOT4oy_)Hjnl8{@O;^12;s4fb$p2CRap1w8Y+X6o9^F1Daz~_(p{K?Am^#5i4aDRw?8_l#8lvOF&MEr8% zD=6DR*^m2tlgDrO^pwh0&;QSu9!}`9**WR|m*Jn_t>vS{m(lZ%zf|Nu%g5i|{3FBv zmBL?dBYh+IBmYs^LCat9hm`&}Wxq}QIpRl%|H9-yPni5?-tVMK?7!guks|&cSWc>eaJ|C70fbS*# zn9`pNR6^e&&@toR)&`$d)BW&F>t3V;1+ z!yozQ0)G|HdF{kIgZzi-A58Y~MNNOK>2t_`n9c%!oBs0sN=yEulD_%R*O|V;)W!do zm}X4=3I0D@#NV8MhG+LG#2anxSIEA_|NJD0|Je`!v%sG}5oEth{IJUN|G!86ulNkL zTXZ_5?=n5k!vC?1zL2T^%pvm62QvTH*vH|gP5${dO*d)vd*5};r}7x2Z%pI{70tsgZ%Svh`%MR zAMW7UQ^`M{Vfueee`EN=10w(bJ*H2Z{PW*1-6bs$n&6!OwM<(KgNwughaThV;eB7@ z3I8_`_-AkR^nPVCV6p#?d-_5DZ1I2X0)LbLga3m4ga3_`+y6Tk`141N{iFT$NX}oM zg#THvfAEL>=lq#I`$F;mGSe#fi~R>m_+JkHPrQAJ|GAs^1K_XtfwRW{8npeo?0*^l zKd-WPQZ}92|BC#r{{errejec$&i)7HFKy6EG8iD6n&xkpFy>_!M!w zJOAn8{~Jv2E%G1mxB35#OxtV@BL2UNKkVP~|AiVK^7-99-y879LcTwG4*YHYdEz|e z|MNxu`F_P8_9XuV|34)DQ%b)?Df&NG!~brRf4<$=|4mHS_w+woJ;t9+_}-MJ z&(JR>bReU5bm-;|y|yhaz*ohRgQFLEg#9{ST;(6B@(ne9L!ED`@h!Dc7 zt~dVeXya2GX8&}2{;>_6uh#hQLP+w>p!0+`dy1ZF(YMe9KqCZ)xBbsd4>J8a)B8*t zbcWT<4S#n-T|et@IaU4P(;HqnM;D**#v63uyc%oQs_8~A+exQhPxBZ8xP^GqYuypH z@1yuZh5rB6XDIm$=|3U<0;OLy10dffK1uV>Qlmw4OwZ2JUnk!GVh=+Af7YS@G+X%( z>^-2v`{pZ0PFJV6wx36*8ns&+^}U^FcS<`le_RI}IoOaO|NH^st0>-1FITo}O&M><|LQFZk4Y1+W_ zvN`O)ElgK2nlLrZ_!qj*3z;Ks^p>W_?I4#<#1M=WK~z{g2u(7UfOo(KByGy732W$C zsS!tnW*&2^!p#wG)Y3*ZYu0qTqT`6u&Tb+NPv^Tl>Hc#l#w)|vCgwK{S&~f+Pv2Sfh*?pUk9B_6^OL54{@DScNVKXp>Ky6m2qEsryigObL~b zQVJKDDZ$e!z{C1-ZjooY-2Cx&16uI-+Yx5YWFEUL4On>`9T%z+yf}A3ybk#>1#Jo%6wXmJkH5D+Z3jQiKxlqQIi99Q2Lq%c zC}Ruhi1dh2CiDp%7J>(^A$aT^f~l||u}BNAPKMyL%!amLA7L1z94W3qwH>Z!kZgog z2wo}D!L4mF(kL$-m!%lIH6QE>n`A3?k=s&&$P22TU-!LwK-Gw` zI*9rRG52P`WkUtP0AIGs;aJq26zQCq{B=N+Etp%8EW3dG2JBzf3>VRHch*4CHeIyh( zh40oh!}z6|$r{H_3i#M!?BBW;x3>Do;E5c3rvmWDq)+fFaPDO(-;jcDu`GNG>~P14 zfp7R*gDR{O=cq<-s;yu=;AYg(=txWnubD~25gBVY9tq5?bh{?Qd0FeUW{5Su#gQRU zc-qAr_rjFL1ORGBYZGxK(ky?n`fuApQDTTDe zUra&#dRcOVx6GGW6XqI)h-)86+T=AU0RKg2Egvy!j)Y?*E8t?{RB$E;40Fun1(O8o z+|^izv+P>xI+ST8KZs?HbuIvB1zHgMm)njYe#TyxXbvGJ3ktFfFIe;u+vNymsu|It z`_=qJ+X7R7r~BW zn6)ve?&^zJ3r~~Z+doJle;J8&IYp9L@;7DQBjpwOgS=cs!GE-64M{--->x#QC^HGC z_4$kV!Ne{&rp5;MZM=OG)NH#j^QZCG=nS;cu^|i~pFos!Kr;wIFQKKS>J> z;aKcRMCn3MPQf4d@fq?ls*%xQKmLH&1-$#C@i`7Y3MS!4?~IA_qF#CVNQjee!RMiQ z7of$3|5`q`L$MZ1+ww2D9dSX+%0SRdJDqj@UCu)3mqP`$j)XBnV+LAi1YR>LuowKH z3oq8b<&WP;;2^9oHa1%FNJU0uYe6^g#qk#oA638xg_sq@@>i1NqZZ`+p@OPlN3LpY zoiO!hHcLq}JcA8kR(ANgMwW$-jjLVOnm_S4EFUjbspEQ+(9c2-H|J$Fm29N%UBVll zbrv>XOFN?=(hw!780}KfsYpowmi5a;AXrFBv1h7PUlGp}vq&Z&Vfn`Yh$6gNjDD&J z6;93pZr$fJ;3P=UV2KsCyrkuILZc9XwH3jw&ollh{A%E(c%MY*YxM32W8<1kD;8}> z_$6E_aox0}@s9c$^kh^3Qbk38E>IB`@n6CIO?7|@lFW+}A7XyYRvpZAh$EtXY~ULH zanxvq^Bp_`C-8;8Bo52TdBz`8`Epg@i~Waw-g!nN;sGuM=JB??dkA!AVf%Cj+Nx3< zpc#?#LM+H-wfwC^SwJWOs3oF=yv9fWr1dWdKpoX-`7J9bLzY^8p|118|2zM)z+XaM zp5Xg(my)!f$FhrR=*}@cHs~&pQ4pr@@P>rp zIql(S@zW#CST$nRid843#FAeh{(JXSswcnpy3f+1$b0Z_?;amLZB=wVcP~FmuckXE zruQ8@c4FV1QwJuGZa#c$=jIbL(~}d2w{AW-J#lz)E0*nBx7;~7ePZh9k=?sqMQ>Ya z*-@7>_}ag}{T4(bX?^rLgX`&{0ncFbfr*)kEhi?YrzQ?f-7_(Rv)MOwVE3+#OHOFp z)vw)t?Y8T#yL#KUYp>pU&CVTLw_me$$Ik0^TyyQt?N?uS?T(%JV%uwX$XWi;*KXf( zCC*U(?cHND_kz@uhc3SSx3FFQZN|UF%V6B(q&FXX*P-s;e&p0QenpxF^6%!$kZ^^V^Rco;)(seU$gz zaPl(rCd!ZoZCP}bx8UG|UC3>B&rBYjJ}^1m{o`dTzG~5re|_K|H)gZ7`%wITdbfuf6`2Rzqb}a9H%>EyLXTG}Z WOZKxE-QGRs=|zl2RY>-?`~H6ti+F+n diff --git a/test/resources/var_fps_video.mp4.stream0.frame000025.pt b/test/resources/var_fps_video.mp4.stream0.frame000025.pt deleted file mode 100644 index 989f636e2b9a170939edb3f3fff03d4aeb0817fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51067 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 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000035.pt b/test/resources/var_fps_video.mp4.stream0.frame000035.pt deleted file mode 100644 index 442c4b4abe2b5642075fa4bf55fa998ab92a6afa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51067 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 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000040.pt b/test/resources/var_fps_video.mp4.stream0.frame000040.pt deleted file mode 100644 index 62acd5c4267d803ac120206d76cd704e386617ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51067 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

K3uc_E6jbnNh4;v5i1j#&aaoWrwYV`C+p!0$ zLy5n3OGS0${IO|AUK{0PpCY_Q@`_s_Pc_|9wMtk_$fXLhP~7prM>uE7a9}tFPOuZv zZbzuK8Y$ZUEdFy^zFVO$>@Ew_Aey1L$lsH9z{MRE_>W3c!SyR?1@R0$L3QNmIM5bz zWwMqal4Zyi6(Nnq<`aC5B6kyR!@kT@Q=7qf^4%*MsbYw<-;2$#5aey}#U||wmtq_= zc8hKmM`aiXpu@An^rb4|T30KC*f}oJbe02R_p5b5+;>(7e{Yxj+O#KyiZaJQ1=S`l zC6i=M(86>S)Jr+`oIf-YBu2V-(w{)ajaQ%Mp$|W8TWIZJe*6)OHKSi1xTMtaR~&_~ zc5K-4huS4jIkyhhQqfIhYYK@y$LLsD=1v!`>?H5zc(4Oj`oiwAaK8NU3OiVSn1X*q zX&mYpH?#!0s?x=@<49h((_7fyYSvr;BGaNImAH<686zC@5ZaR!EEQx}!AoY)!RRAm z`3Z|?0qMHB=q^IH0mc~)M~4IBC18pS5^+O92l^)Hwu3k-O$2f%oR)rFD^;(u{V*$c}e50sf{Ltc@{H^^K5J~_7UJO(Td4r$f!?}HD7)CN~sgyFF z)M@!{TL&?Jak;G=Gvvd>*wGgB(kdE)J!dp~8BJk&oEI*oDR`uEw9nzpkH3w-RW;)! zp=pQ~Eub=Gy-o7eNZru1B@gD}cD(Fw{%hBiD}TS_r;pIL;Oy~l?HUY&QUxyqZ=X)0 z3~PDY{S^(*z)b;6C1}iZM%u`Q0W96x*V%`}jPCtE>9Ocpl zZ`^qTj#B=uUE@9@n3H;J(-B910`ukHGW?r84aQ9ldf7EsZ))H6*Pi*eo28E+|5nY~ z@N&!=Y}?DO+&Zy&Y;s*oH|@JP_g&kb%oT9PtXoey>*SG;?2eCx!9@rm}07p?fjSsVY!z#F$_v!Z>=Me96i z)|S`aJ?LTg;9fMTvuADk{((2$-PqTzDV1^zFA4V@wtV73ru_eRiP|w;|4;7!_&dAk XsPDMnVsvZQ*rylqH)WFb-MarDp|Cv~ diff --git a/test/resources/var_fps_video.mp4.stream0.frame000050.pt b/test/resources/var_fps_video.mp4.stream0.frame000050.pt deleted file mode 100644 index cedb6d216579caf92dc81a75e3939ac4ee17608e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51067 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 x6jBV&4ra0~uegvU{rhoe#zfcNic{~t)$L_Gii diff --git a/test/resources/var_fps_video.mp4.stream0.frame000055.pt b/test/resources/var_fps_video.mp4.stream0.frame000055.pt deleted file mode 100644 index a57ca9f647e6c6add1da6eee74f7d33399d0a427..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51067 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 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000150.pt b/test/resources/var_fps_video.mp4.stream0.frame000150.pt new file mode 100644 index 0000000000000000000000000000000000000000..aa877793aa2dfea014913a8766ce4f819c42c9a0 GIT binary patch literal 50546 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 bKIb2rHTCZBTHao`z+d!-&%`9#hi(5C;j-hI literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000152.pt b/test/resources/var_fps_video.mp4.stream0.frame000152.pt new file mode 100644 index 0000000000000000000000000000000000000000..af4e448cf4b5978ed2e7b6edaaeb5e567cc77756 GIT binary patch literal 50546 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 quQ9$U|My?}yj&_JaBTqCfmiOtOF2_x}KAzTW%* literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000153.pt b/test/resources/var_fps_video.mp4.stream0.frame000153.pt new file mode 100644 index 0000000000000000000000000000000000000000..1ccf707cd730ebdbd1f5df4f049057aec6ffb8a0 GIT binary patch literal 50546 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 literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000154.pt b/test/resources/var_fps_video.mp4.stream0.frame000154.pt new file mode 100644 index 0000000000000000000000000000000000000000..778363e8fa655753de7195a2eb031ab5b2f7d58c GIT binary patch literal 50546 zcmeI534mNhwf;|4-Fv%xCX3kj1cw%U^cf zkmni|ToByBeE}2@^$9Ld@c}-cvLmuiCNn+VeQ(wIf2XSZPEXI0o?uXTN_z4n}Y^5RvC=bU-k(gPRFqhlwzyhoq3>Wmd9y>-r_x35~VbY<6~6}>0E zeaX_37p>|&edQS|7OmdBYdP(-)6oSS-%9Mc_|)FzD*Q>;f^$~&9uc;6E!RgY>@sh; zIojaglg@nm^5|f?dDZgxu!XenJ^0UDygWJhJ!+v@s4iY!xb&ox&RDv%_oP)z&NzK# z*C8uT?p@J)@~fAew5n@)ap%LAmsTzBI(&KeoI@8DijORv^@6MLnezXk8WZ#ML8hlT<|@@{rL`PA!iMpZ6K@6PVN=BGHBHW2rYWl! z2din9DOV%TygB0WOfgT&c#_Mc;A7`W!N<-M!1r(I*qSIK#Y7fWKwR!|L#P5;$MjdG znZ%lEL{EELOVnzEPOaC9oo)!L@Y@z_!*4si} z5MhG67z$mef|}i;hx%xmHP~wURDrc&r8sI>Ox$diqY13W3YI#8RlKE96_)8*rZTIt zj4Ukh_k|QKLYkm&7g#^{`6n8}wq1Um1kJhh zLV5JsS~HP3Wu0nvE{*DzPim1p_{0C@{NbJKbDuwP0;r;GS;vLJX;B&_Uh^?WwJyuu z@URsz@%^=gDqU15fQ|}|-6?`e^BB`6f{&^hhre>99jU?1Xvj=Yr7A$%8MeA?$z_Ct zdE9%!=e+)bUBO|b-p^Rl9GQxV(;mdqL4;OzF2t* zn#Zs5K6bDx6tbK@;Nx$6Z8hsZ)WR6+4doB!L@CyZs>PZqMzq0}L85hALK_v-f*fHv z9BKQt@Q;nZo_XN!6%779s{wqUc!)>k2(D@zPg;1c_k27A7Jes^FRMFNyv&5;Nh?v9TZ@8EJoJYG(A~CG<1o0KIir+1R>G zkaGQF^W>mOaFE*?TqMP4BSQf2u5 zI)9Z)!P76rf7HEI^{=K{Gh7DzezHTl`jlwM!RNqo{yFx%(5Bn@yZHa$e**si-#CN* zIM!PFe5eJ)Y5 z*ED3`Xb8R{f>Ua&|FQg03xF^D9U@nZSisa(=N~6k$&wPPmGM&~KkCm4aHR+enOLZu zjjw<4j_^OoGvRHlWQxTq8YzZm3bYCT*$-ujw+w?@1DXent!em~-2aS$J+F~}2L6EG z#D7Xd|7hu(S{z@`3lv5MxvY6e(q|_@Id~zgC%a63{0IEecSIL9hF5fO^Mo;)Y0$}Z zcpB!ZYzv&`HfT6SzY>R-$KQt3bLP#3XO%yq6r8*Cg@fmB_f1$#yCX(&jNor0C9~8^pCQW@HB0^b&N=a(P8k1{tHqCb*l+>uKWB6 z$%k5)G=D$B5XKqCTaP#XQ;_^qdHy2!G0jIeVP3^BIZ;0nRdnK!CHXEQA;+lnBb&yr z1OfcM$u5)Czt3<$zKBB_D&b%fUB`~3UNn%CkJ-X}dMVxcMj<4etMNT$RJ0T*icTmIXGzZ3p}{69Z`U&HI+Uopc;HEIDK3;FgsW%@Ndu&Sah zlqmMWE#jvU^(I>ZlcNtAD7bnvK)O<@E5F2jag7Th6GLL=TrjjsSVQ*DzW#Gvj3|t! z^YONqBSM-7nF2lxE(nHNsQGE35E|eOsMd$CK~jWeQgzTKf2Cx07mFmE$^bq+fw(G7 zJxMtl67MJ7!zK&u|6hhb94~%*@I{jNDR0yRNAzS76;wnkC<49PDEtF_ti|o*2r$1$l|dJs%y?ZnP7wrdc_y)@oT_d!8rnz`R-+kkO=lt`A07nG=5I+`$ zdA}z9Xad0zVcp`3a*{aP&tGXG7!gu(iNzT^SiWok z|K?f)|2))o_&4(pp@C>h9GjBxPe@4>V41)H$&RCz+~J3JM)SvrS~Gl zFBpFV{M`T4`Ku{$LV>@DF+YF~8P~FUPTC@Vyd1@z0AFj3bttS|ySDkSp#K)~;bjiI zrSQDtPg9auNf1B`Al*G}dZ0I6Lm17!c?*s_;8U*% z@~0B`%jF!MLx)9%0l1Yb+i96F8ifw_*Y6hih{3zF-PPIHJ)} zIPjOhX)Gv%e_)>T&#NF8cAJIgoBqe+Pv{k3fO@2u!8zw23aA7y&s#{&Ki|?O_I$Sv z|9S|BG{r{a^xlz63xB+9ejlwW>M` zFN7kT57y0sZ!R~4U;j4;+h(D|e?%2vUeRdug0T@m(H8)Dcz!H_ulSvj9j*@l@j~sG z+lS+Cv+_YXEMX(c8W%iEFF0(@A$RzPu$!;Pggn8<5&Y}WNByJ4;b5uY<~M!;|IqF2 z@XyIV)BLB-H~=287KiWO#XwJ~Bf57!D|Odj_T zKq3_TbH_XUCxDN)MiZWR%ec`L6`*7uu)g3Xptz__?({Y8UyS)y$Ny|7e`Gt5Jg!)g z8j#xvtdqg{F(FT|vBQ5u`MvY*<(07eQXKt1ML9sV20AJ^={{oukOKRS#8 z&eN3jB%45o{|530{DLw?f8`cNhGl*nciHUlpD6kHyT;#SNbZ>-%OFO7hIlGXmCk8L z|9{{7b2L!7n^?HHn6Q@Ho5C{OZW5RN_KeHjvjP4`M%hvffXbb>VYth1Y*oSq zvK{^Zz5UNP{a@T%549jq!EiDigMv)TWF7ziZ1MMQ#p_@A*Js4sM(=-N7P2$`IqskY z#zi-B{O$0c06yN@*!K{spYR<|S_hB5dm{&N3RQf9x4F5B^Am!qUdA+M|Z?VS40lB%|eHN;E#3S zKQvelk++3Evd|9y=ALgTKlAttu;GF)T=NCXaC^6g^Fbl^JSc=Jz&iIfqq}2m%0Az% zqkn(}f8_iq2-qh0E&PN23xz`95BLbgEme?%ZL`qf5A5*&xUva_tX7$TKX!olv4lia z>Z<8ptf5lc#GdaqS^oZMa{i1QdA$63Cf~iFAgb_06cpBPqdm;TTPEv&{ADx#B7)&7 z34Hv;6INxxm>W)P#0t-8%Wwl4Ft0Cue{>D7;2Mywt}a{-C?j<8M~!r-@sK@Ef)P~1oWXdIYnw%OUT_sZme|gI8s9M0e;j+e)VwqCp2V*tUPyd2*2{_c_^GJ zFn!9IdoA5*=~qlYVfq%+7die67p`D^K7PHUB}~VqbXZCUTH23k4%2p)W?AaCrr>5! zZ5y&X5br{~kLK4BA4S|tyj1bo#1|4@LHrrwYsh_{_%`BS6W>kzFivbIJik1vs=lgv z%Jcs%(=ANjW%|0KFIc+5(FNe|XgSlVOmAj7gy}U*do%5fBfw+O@#J4l49@_6!#iu< zi+BO?8x+4;@u?B7GW;IR?%XGh04>7 zMP%Qm-C2~KPub#OsB($ND}|BqL|O-$bu{`!+_J|GI9 zvzVZOMV1cF)PFGT&$O#+=HElL7kd7?62Bb3p7>bLe+BV7JpYdpLw(nh{Q6%I|CacF zi64dfh%>U8TAS&o+v5-YAHcLH(=JTgGtI(N(YY(JGmYC;^Df%WCwGA7e=NCEj9sbi zJIP*3>BosbOZ+wBAA0@&p7<}|kEeFW)|#hT-S5;rtZ#Sv28ZTnKF4Ma$KZc~=s#}g z-}7hMEyJ$|f7Qi0=1AL;;?1?&k=#7u{YV6O81ZpU{6DDdr^$Xrx$hAFcs%}eSA+j` zmaZ25`u$Arvb5UsKRyG0(f__y^p9V^nKRw4nD8`}ZBA}`;@ybNHFSN~3(%IX-Vg-oyV{KFA!%BsiV4t_Iq z1_iv7+}>mtkULlu(CmNGk5cwoa$jwM%);~Eol$OvafrV=8Q!zN2bB1bA|ID{gmnZ$Uz)^t||Vmbh?+-Q9l1Uz|o#g{QnN3K~-`E zZKspnns_J0`xN-q1wJ(5H%HtX@k+z*lK9J?ApSzc!e9Jk< zFV}XB&c5XR|4j`CECMvHif7gDw>7+r;g?0iAO7c9!>1tsiTK@` z-$#u23;x%|`~xldC;ZR7qJLK@q@47zd63N?S^vgK`X%{~ga3))e=g?uJWiHzyok+_ ztQT^$KO6X;9W8B{nW^G`3h+M>;xF$Y{C)nTvco7n-lR+8^c_idX_9_8%GN~o%kV$M zKk@tl;66ORTiFWu(^^IbZ0>>rSR?=Z4%3%7Uc-eCaN_wx|LQoa56hz0u-=!=95%Dr zY{sUGBasiD5BL2Q8Q(Jibd;U`*H%q%0=>~tD9zynL;hn|NKjv-1-yD%@WWf6)0&z5( zqs@H;GS#V6eW7wMQM{W%{wdi9_@9jU>-B$`;*Tl*jAEo;-&gilWq(WV|HwT?Sq0}l zP|czHK~FIK$>%>o|6gbNtnYta;`y%>{u=%#-`RKj{5TVG8;;JX5>b+RY)mFJ-SLcL=%T$i1zRfPX-_Pmn_g=$oQ{@VEb~ z`2pqnVpkLWBl~-hkpV080Dt1>+m^nRsn2Bka!VIF4(tmd$m*3YUN z_svVYDcy<~`rlpnbKU-`V>zth_|H7(Pci^Q{(*MG$GBex*R-k|L;w@#t|1@C(=(;qCs|KI9#;QuL0;E(R#Ijl~%l=FXuqq!N)&S<9eJzM^gr9wTj1*qzftpI03be3@kLO8@XxMR*|!M*9Gc(%5kF-3>6oobJ^zQq|40Aj z^H21Dk^ig#f2IqWkblDegZ~?ukpF=HJk~oj_^aAf;qP{U{`Cm{r+fWhMBe`^M)&&$ zE%|5Ye}O;zPnBFs{iuQs;Lm!7@GlT=LSFw${Qm(lzrnaSYxp1Zf1UR~*(Wvl^EV<< zfcSsnd$sugb#ay^$bar-1^%~Z>Q)%+i9_sn$AK3hy z=|(^Lay8Q@tok6+`7He}&HBmT~1L_g{MqX$Uv|Jjxj{&}vF?%zRv{Ncog z{x9_74{M0g`$7K~`49SEaDVXs1LFVD1zT5}9Dj`e>|)hctVRD>fwGz8wjq8ghCdW9 zF#HCM{+ByN@k%B7zsyJk`W*2${1JfvAIRO0=m-BpnU&Tr`gdOc!T&q;X@~HmG5+v& z)^BwRzy44^_OUWU${xI*WaY1t5+FhoZU(ZV5m zMUD2T(Th{sGNq|y9raD2wOguz?W5}4xVoRIzLqLSsmh6_x-8DlF_jB-`NO9A$te4( zss1pk++qfQqs#ZG@}p{K9aSr8plTkinnxz1{|0~4lj#Wjc_uNsAOEI#pM+o4#RnJp z807ykFE8+UU3_VYKbG)S34cA|AI5x};X92(_5uGtK=41I|9e-af1T-DT;#`p;QuB3 zqxXr}bE*sDZ}b|c_RVM)KmIn|QsT6M`@`Uy-9iRnLjEZM@F>q8{^yR+kWPw5a1Rn%h@^{D5M{PPz~H~0}iAAi*)PQ5dwm6m#0A7k}GORsXYyN|!n zAo9;{8y9#J^nZ=$e{b|al=Q%n0rV>I|L-Qgj3fiNO7Yi~nzFoA`gLZ()t`2jrih$)XRV|Lc;~E;%iWkGJZL$p0<9%+gDp-Zs;lW>mt3=?=re z@IRZWYzLjqrEGs?560jpF&w~YNB{}>kHzror^sGI_S=;GgzO!Z-L38YDtnx=0aMKs zyzhgS?y~et$KOq90?Ual_p$B3K3HZxp{6W3Q`~NA<=nC?mttb=!Z^Zv& z_~~dr{s#Ylmf?%YeFXV`?*D!M6XLJ;|9SjH{*N5wXRN>H$AGV8^>M2%%hdU)T5cu( zImW6(F#hah{1f@lYzH4~rlqAGw`q~LiPD{^wj0^~G$Q~W9r1~VPe%YWe5n@xpVfiC zy-o4&6#BpRF?c}5wRj*i4_S3rCgY#T|G&v}t)r_feKa+fX304=S(cd-ta=kihq&b5 zvuM{$WBd*I&s0lYP8Dr}5x_WmQR3z%>3+rZ^#%K;0-s=bN$gff;(tEq74XG~zp33# z+WuPEyENaY?PCZ5aaz-TDLqi7yHom=l@1W{|1Yxo1e^DZ2c)wc@=xJ^m__`JWCTR= zA2Un(U$Lr8qw3a_y%_nA=2!Uq=UC4l<8S8?U*h>A|AhCwQDOYeBK-d;j6VAO$5NlA zr-ta^{^ZVeh1=E@Z%*SMNe_gs@+l|=VJ~|UZkSdN%siH-9QW8}FIhW%c7Jisy6&B` z886`}FQ{!YgEuMgW-)K2B?(wilpuswa9Sdr@UtU+FOq;RzIuA~Thj)AQs5tL&9`sL zcgBn{nESf;C_wzBQCyyU9~G z^sK$rl;Hz@Z)$(i)d%(9W6|2D<44xfANuI_8r_!B54{7p9(|x1T~VXUEWHc;U-%y< zL1-a&?eSOItDklnq%EG@zU#@ErF7G101kL(8t?;<{3hZhB|fddt2KWB`KKTM|1!Dn zQF?1s`R}Oq7pgr%_F-kQ4u-iIOqu0|6LT?7*SlOc!hB3B@p z%JK7C{)08fwldNc(q$T;#10=5GGF}OF8us56;bXU7SW7AVbx9R3XAUFX0VpPif3HcSKv9Kmo1DEL;0@5FD5VO5S(jxA$YsR*;K z%Z3@@4D-T}r{F=xi$hUvDvY>9(t$xGqpEYhtp&7jd^eiB6@ekB2i?2vRV({;Wr;P`}au)rT{DbzKKT|otdAyw8H8yAtqDG)H|4&UHu!!-;uYAQQW z!F}=^7yKHn4f+=gXGB=c|67HTe#X2$?&Oe36*PU4-0&ecYzJbYjGna^YNup)n&*#G z0Sp^B+i3$4O_k~_$6N*f2zLz)O#o*gWUQe3rYgwGjamqeVZ_=y`vAIu8>n+bMflCA zoKOsk9LCWQDEuX)RHb4CnxfK_emMW9G1Lvt4a37uQjibIuTff6Fie9=8<848PDH6z z4n_)h<7^l~=cryW_`gP_pe&AI_~et|1FVc~3HD$a_~RT6nQsyE4#)eP02x8NZoVPl z&|wG)zS{94(RQSYFxb_DiooQRMl69|Fn;4r;lz!=A6F*gcK|K!pD2ccuL*2vUPiDN z*W_6@C<|*jS)ySm7yTCOP;UqL&1jFo2j;baV{;f1Llxk}5x8bePpYkPV94RVY!RJ8$qJEU(8EW2!pT1ktHVbv)D)rFrM``zfS0(20d8Ncfgu#? zO`uUb@OsJ{7zQ^6w-XF!`ymRTI->Wv#YY6-EoPe|ol}@8{p->BhkuE1q4HYI5CSu)6i{0b!4;-+NXZB zmJ(WvlFnR1uhQZ2`R_1%KwK~Xrr_zxNdUr_+z=}v@9@%K4nB}YuN<+-zbk7Q#v85t z=RAM$xAid|oI(xwc-dn&EukTJ&B2+l_+5IGr_G`Pc%&k-^M>Zvr~fhHZ%Ga1R--|f zm0Cbyo%c4iC%Vgy20eK&7un~wvH2gmuu!})x$iK#8IB+SAG*+>`&&e}w{_W-cBIvd zS1dZ^%$18)FFCpQj5*8B+;h&#RV#WIFPk^#logAY_0F3&Z@0bnoV&Vr#mXgToPOYf z*>vpsmOZ-U2!40vsYfEem7d-NN3cI_+U60=IeGD_#dBBou2`~o>5_97ufowRT5|G% z3#N}cpm}@kv-kYH=Fi`2pFQU9^|F`kz571%cgN3|H*fxKd+alRpMCb;d*1Hz=kL9j z9Ob#!#c$mSM=1Xvx=?yf!=xTrI_m{j;kEofN8T8*w8u>jdd``rEp7em3t#@=mKchV zp$VEh;&bPsf7ae-pLouy-ZNI5+`FRn!<#FAmk}TSv9>?l)1KG*$<39z>xfUDervmj zU6)epM>p5R{v$s6inc#`Y>gbcFi9F1wlTwp?eA-hZ)*H|58%i$|EJ+!{GESj*7To+ U*YftE3;jiZ_?wty|FG}>2f}>bg8%>k literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000155.pt b/test/resources/var_fps_video.mp4.stream0.frame000155.pt new file mode 100644 index 0000000000000000000000000000000000000000..dde7e2520dd313426cad4e6ba00a4cfec41bcd8f GIT binary patch literal 50546 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≫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 literal 0 HcmV?d00001 diff --git a/test/resources/var_fps_video.mp4.stream0.frame000158.pt b/test/resources/var_fps_video.mp4.stream0.frame000158.pt new file mode 100644 index 0000000000000000000000000000000000000000..f11bde320d78f1ce802ede474e364b49954921ac GIT binary patch literal 50546 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 30 - - @pytest.mark.parametrize("device", cpu_and_cuda()) - def test_exact_seeking_mode(self, device): - - decoder = VideoDecoder(str(VAR_FPS_VIDEO.path), seek_mode="exact") - - test_timestamps = [0.0, 0.5, 1.0, 1.5, 2.0] - for timestamp in test_timestamps: - if timestamp < decoder.metadata.duration_seconds: - frame_batch = decoder.get_frames_played_at(seconds=[timestamp]) - assert isinstance(frame_batch, FrameBatch) - assert ( - abs(frame_batch.pts_seconds[0] - timestamp) - <= frame_batch.duration_seconds[0] - ) - - @pytest.mark.parametrize("device", cpu_and_cuda()) - def test_approximate_seeking_mode_behavior(self, device): - """Test behavior in approximate seeking mode (may fail as expected)""" - - # Create two decoders: one with exact mode, one with approximate mode - decoder_exact = create_from_file(str(VAR_FPS_VIDEO.path), seek_mode="exact") - add_video_stream(decoder_exact, device=device) - - decoder_approx = create_from_file( - str(VAR_FPS_VIDEO.path), seek_mode="approximate" - ) - add_video_stream(decoder_approx, device=device) - - metadata = get_json_metadata(decoder_exact) - metadata_dict = json.loads(metadata) - - # Compare seeking in both modes - test_pts = [0.0, 0.5, 1.0, 1.5, 2.0] - differences = [] - - for pts in test_pts: - if pts < metadata_dict["durationSeconds"]: - frame_exact, pts_exact, _ = get_frame_at_pts(decoder_exact, pts) - - try: - frame_approx, pts_approx, _ = get_frame_at_pts(decoder_approx, pts) - - differences.append( - { - "seek_pts": pts, - "exact_pts": pts_exact.item(), - "approx_pts": pts_approx.item(), - "frames_match": torch.allclose(frame_exact, frame_approx), - "pts_difference": abs(pts_exact.item() - pts_approx.item()), - "approximate_failed": False, - } - ) - except Exception as e: - differences.append( - { - "seek_pts": pts, - "exact_pts": pts_exact.item(), - "error": str(e), - "approximate_failed": True, - } - ) - - # Print differences (useful for debugging) - for diff in differences: - if diff["approximate_failed"]: - print( - f"Seeking to {diff['seek_pts']}s failed in approximate mode: {diff['error']}" - ) - else: - print( - f"Seeking to {diff['seek_pts']}s: exact={diff['exact_pts']}, " - f"approx={diff['approx_pts']}, diff={diff['pts_difference']}, " - f"frames {'match' if diff['frames_match'] else 'differ'}" - ) - - # No assertion as approximate mode is expected to potentially fail - - @pytest.mark.parametrize("device", cpu_and_cuda()) - def test_frame_timing_pattern(self, device): - - decoder = create_from_file(str(VAR_FPS_VIDEO.path)) - add_video_stream(decoder, device=device) - - frames_info = [] - frame_index = 0 - - seek_to_pts(decoder, 0.0) - - while True: - try: - frame, pts, duration = get_next_frame(decoder) - frames_info.append( - { - "index": frame_index, - "pts": pts.item(), - "duration": duration.item(), - } - ) - frame_index += 1 - except IndexError: - break - - assert len(frames_info) > 30, "Not enough frames to verify variable frame rate" - - intervals_before = [ - frames_info[i + 1]["pts"] - frames_info[i]["pts"] - for i in range(min(30, len(frames_info) - 1)) - ] - - intervals_after = [ - frames_info[i + 1]["pts"] - frames_info[i]["pts"] - for i in range(30, min(60, len(frames_info) - 1)) - ] - - if len(intervals_after) > 5: - avg_interval_before = sum(intervals_before) / len(intervals_before) - avg_interval_after = sum(intervals_after) / len(intervals_after) - - print(f"Average interval for first 30 frames: {avg_interval_before:.6f}s") - print(f"Average interval for subsequent frames: {avg_interval_after:.6f}s") - - expected_ratio = 0.5 - actual_ratio = avg_interval_before / avg_interval_after - - # Allow for some error - assert ( - abs(actual_ratio - expected_ratio) < 0.2 - ), f"Interval ratio ({actual_ratio:.2f}) differs too much from expected ({expected_ratio})" - - @pytest.mark.parametrize("device", cpu_and_cuda()) - def test_sequential_decoding(self, device): - - decoder = create_from_file(str(VAR_FPS_VIDEO.path)) - add_video_stream(decoder, device=device) - - seek_to_pts(decoder, 0.0) - - # Decode multiple frames and verify monotonically increasing timestamps - last_pts = -1.0 - for _ in range(50): - try: - frame, pts, duration = get_next_frame(decoder) - current_pts = pts.item() - - assert ( - current_pts > last_pts - ), f"Frame timestamps not monotonically increasing: current={current_pts}, previous={last_pts}" - - last_pts = current_pts - except IndexError: - break - - @pytest.mark.parametrize("device", cpu_and_cuda()) - def test_frames_in_range(self, device): - - decoder = VideoDecoder(str(VAR_FPS_VIDEO.path)) - - frame_batch = decoder.get_frames_in_range(0, 10) - assert isinstance(frame_batch, FrameBatch) - assert len(frame_batch) == 10 - - timestamps = frame_batch.pts_seconds.tolist() - assert all( - timestamps[i] < timestamps[i + 1] for i in range(len(timestamps) - 1) - ) diff --git a/test/utils.py b/test/utils.py index efa180043..b22295c31 100644 --- a/test/utils.py +++ b/test/utils.py @@ -568,7 +568,7 @@ def sample_format(self) -> str: filename="var_fps_video.mp4", default_stream_index=0, # This metadata is extracted manually. - # $ ffprobe -v error -hide_banner -select_streams v:0 -show_frames -of json test/resources/av1_video.mkv > out.json + # $ ffprobe -v error -hide_banner -select_streams v:0 -show_frames -of json test/resources/var_fps_video.mp4 > out.json stream_infos={ 0: TestVideoStreamInfo(width=320, height=240, num_color_channels=3), }, From 95d4be9252568bfc9f717a4c24201ed00b3d7ce9 Mon Sep 17 00:00:00 2001 From: Scott Schneider Date: Tue, 8 Jul 2025 20:19:21 -0700 Subject: [PATCH 5/5] Lint --- test/test_decoders.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/test_decoders.py b/test/test_decoders.py index 070eba1a5..b9d0ae831 100644 --- a/test/test_decoders.py +++ b/test/test_decoders.py @@ -1139,7 +1139,6 @@ def test_pts_to_dts_fallback(self, seek_mode): with pytest.raises(AssertionError, match="not equal"): torch.testing.assert_close(decoder[0], decoder[10]) - @pytest.mark.parametrize("device", cpu_and_cuda()) def test_var_fps_single_frame(self, device): # We are explicitly only testing exact mode because we know approximate @@ -1159,7 +1158,6 @@ def test_var_fps_single_frame(self, device): assert_frames_equal(frame_150, ref_frame_150) assert_frames_equal(frame_299, ref_frame_299) - @pytest.mark.parametrize("device", cpu_and_cuda()) def test_var_fps_range(self, device): # We are explicitly only testing exact mode because we know approximate @@ -1169,11 +1167,13 @@ def test_var_fps_range(self, device): frames150_159 = decoder.get_frames_in_range(start=150, stop=160) ref_frames150_159 = VAR_FPS_VIDEO.get_frame_data_by_range( - start=150, stop=160, + start=150, + stop=160, ).to(device) assert_frames_equal(ref_frames150_159, frames150_159.data) + class TestAudioDecoder: @pytest.mark.parametrize("asset", (NASA_AUDIO, NASA_AUDIO_MP3, SINE_MONO_S32)) def test_metadata(self, asset):