Replay Buffer Time Inaccurate

testgcd

New Member
I have the Replay Buffer Time set at 8 sec and it usually records 4-5 sec, other times I have it at 20 sec and i records 10 sec.

There doesn't appear to be a consistency, what does this depend on, how can I fix it?
 

koala

Active Member
If you configured a given quality as recording quality, the amount of data depends on the content. Low motion needs less space, high motion needs more. You need to estimate the required buffer, then configure the buffer size instead of a time limit. If you need 8 seconds but get 4, double the buffer size.
 

testgcd

New Member
If you configured a given quality as recording quality, the amount of data depends on the content. Low motion needs less space, high motion needs more. You need to estimate the required buffer, then configure the buffer size instead of a time limit. If you need 8 seconds but get 4, double the buffer size.
by buffer size you mean the memory limit option it has bellow the time setting?
 

testgcd

New Member
Yes, exactly.
I'm a novice, so this is probably a stupid question but, it is now at the default 4096 MB. I never change this.

So how come if I set the time to 30 sec it will record like 22 sec, and if I set it to12 sec it will record like 7 sec etc?

I mean how does it record more when I increase the time I ask it to record if the memory limit is the same?
 

Suslik V

Active Member
Files dumped from the buffer are located between keyframes. So, interval of 1 sec between keyframes during encoding will give you more predictable file duration when it dumped from the buffer.

Other nuances. Buffer is looped but not restarted after the file saved, so the file may include parts that already dumped to the disk in previous call of the "save buffer". If buffer restarted - you need to wait while it filled up (its full duration), only then you can get full duration clip in dump.
 

koala

Active Member
If you use constant bitrate as rate control, which is used either if you use (use stream encoder) as encoder or if you explicitly choose CBR as rate control in advanced output mode, OBS is able to compute the exact buffer size by multiplying the seconds with the bitrate and divide by 8 (bit per byte). If you don't use CBR but a quality based rate control, bitrate is variable so an exact buffer size cannot be predicted. May be OBS is estimating buffer size according to the given time, and it gets 25% wrong, or you actually use constant bitrate and the calculation is 25% off due to some unknown reason. I don't know what happens.
 
Top