I will learn about GOPs…
GOP explanation:
python code to read out GOP:
Meanwhile I have checked GOP structure: see below. 250 frames are between keyframes. Is it extreme? I create the video using OBS Recording software and I can adjust the value to keyframe intervall to 1 sec which will be lead to GOP size 60.
File is stored on SSD.
How do you explain, the big difference in the seeking times then?
I mean there is on same hardware same file a huge difference. Please check the results
Python-Version 3.9.15 + OpenCV-Version 4.5.5:
Read 600 frames ==> 11.5 s
5x600 jumps ==>64.6 sPython-Version 3.8.15 + OpenCV-Version 4.5.4:
Read 600 frames ==> 11.97s
5x600 jumps ==>6.24 sPython-Version 3.8.15 + OpenCV-Version 4.0.1:
Read 600 frames ==> 10.391s
5x600 jumps ==>2.078 s
Seeking time for the versions > 4.5.5 is proportional to the frame number!
I would assume, that seeking for a frame at the beginning or at the end should not have big difference. But in that versions, it I can seek only with a 90 fps. So if the frame I want to lookup is the frame 9000, then it needs 10 seconds. Absolutely unacceptable. Something must be wrong.
GOP Structure (all GOPs are same):
GOP: IBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBPBBP 250 CLOSED