Thanks for benchmarking.
I see your system can read the 600 frames in 21.5 s, while mine is remarkably faster with only 12s.
I already tested with the smaller file, with same behaviour of all versions.
Anaconda supports now OpenCV4.7.0 with Python 3.11.0. So I have tried it and it runs really fast.
Python-Version 3.11.0 | packaged by conda-forge | (main, Jan 16 2023, 14:12:30) [MSC v.1916 64 bit (AMD64)]
OpenCV-Version 4.7.0
Task: read 600 frames
6.933s - 86.525fps
Jump to frame 400: 0.02s - 28565.941fps
Jump to frame 800: 0.636s - 941.706fps
Jump to frame 1200: 0.284s - 2108.727fps
Jump to frame 1600: 0.772s - 776.024fps
Jump to frame 2000: 0.457s - 1309.75fps
total time 5x400 frames jump: 2.17s
But still earlier versions still are slow in seeking.
I have tried the option: apiPreference=cv.CAP_FFMPEG
and it turns out that it doesn’t read the video, and no time is consumed:
Python-Version 3.10.8 | packaged by conda-forge | (main, Nov 24 2022, 14:07:00) [MSC v.1916 64 bit (AMD64)]
OpenCV-Version 4.6.0
Task: read 600 frames
0.0s - 600000.0fps
Jump to frame 400: 0.0s - 600000.0fps
Jump to frame 800: 0.0s - 600000.0fps
Jump to frame 1200: 0.0s - 600000.0fps
Jump to frame 1600: 0.0s - 600000.0fps
Jump to frame 2000: 0.0s - 600000.0fps
total time 5x400 frames jump: 0.0s
But since Spyder is not working with Python 3.11.0 I cant use this versions. I will just wait for future.
Since your versions are working as expected, I think the environment with Anaconda is somehow broken. But even I setup new environments with somehow there is something wrong.
Crackwitz: Thank you for supporting.