Question
Does a very long GOP (up to 255) combined with a low frame-rate set in BVMS impact the playback?
Answer
By setting a low Frame rate and a long GOP, this affects the replay.
On the flip side high frame rate and short GOP can show pulsing Live video:
30 FPS @ GOP 10 = 3 I-Frames per sec (the video could appear pulsing; the Monitor refresh rate could also play a role here)
Long GOP impact on playback:
Saves bandwidth and storage space for recordings
Forward replay:
When positioning the hair line in the time line, Operator Client is displaying a picture of the time point selected. In order to do this, the client has to decode from the belonging I-Frame to the selected frame first within the first to be decoded GOP. This may lead to a short loading time before the playback can start. Only in this case the waiting sign is shown on the image pane:
Backwards replay: When positioning the hair line in the time line, Operator Client is displaying a picture of the time point selected. In order to do this the related GOP has to be partly decoded first. Afterwards the following GOPs in the backwards direction have to be decoded entirely (frame 1 to 255). This may lead to a short loading time before the playback can start. Only in this case the waiting sign is shown on the image pane:
💡 Backwards replay requires more CPU (client-side) resources, so better CPU can improve the client capabilities
To display Video, you always first need an I-Frame, in Live mode the Operator Client always requests an I-Frame from the camera, in Replay/Playback mode you cannot request an I-Frame you need to wait for it to be found.
BVMS has a timeout of 3sec to find and display the video, OpClient: does a search at 32 times speed to find the complete GOP within 3sec timeout = this would equate to a max of (3x32) 96sec between I-Frames
Time distance between two I-Frames / 32 must be within 3sec:
1 FPS @ GOP 30 = 30sec wait ~1sec
1 FPS @ GOP 60 = 60sec wait ~2sec
1 FPS @ GOP 90 = 90sec wait ~3sec
1 FPS @ GOP 255 = 255sec (4,25 Mins) wait 8 sec to long, will timeout!
2 FPS @ GOP 30 = 15sec wait ~0.5sec
2 FPS @ GOP 60 = 30sec wait ~1sec
2 FPS @ GOP 255 = 127sec (2,13 Mins) wait ~4sec = to long, will timeout!
25 FPS @ GOP 255 = 10.2sec wait ~0.0319sec
60 FPS @ GOP 255= 4.25sec wait ~0.133sec
⚠️ Known limitation for BVMS:
When using a very long GOP (up to 255) combined with a low frame-rate (1fps) the (time) distance between the I-Frames is too large and playback cannot be displayed. Bosch recommends reducing the GOP length to 30 in this scenario.
This is to ensure that the customer does not need to wait a long time before video can be display in the Op Client.
Nice to know:
If you want to learn more about BVMS - Policy based recording, Intelligent streaming, Camera capabilities and platforms or Stream Management, please check out this article.
Other useful articles:
What parameters to set in BVMS on a new Stream Quality profile?
How to create a new Stream profile with own parameters in BVMS?
Which is the recommended I-Frame distance when using 3rd party Software or Bosch-VSG?
How to setup RTSP-Multicast by use of SDP file?
Where can you find/ change the frame rate & Firmware settings of Bosch cameras?
... View more