BK-Morpheus
Active Member
Hi,
I'll start by explaining, what I found out and maybe you guys can suggest me a way to improve this behavior.
I can add a log file later, but this has nothing to do with sources, rendering lag or encoder overload, so I don't think it's necessary.
I'm running Windows 10 1903 all updates installed, Game Mode and Game DVR disabled.
Ryzen 3700X
Vega56
16GB DDR4 3200MHz
Whenever the ingame framerate is not exactly in sync with the recording frame rate (1:1 ratio or 1:2 ratio), the recording will not be 100% smooth.
Example: Playing with locked 60fps (framelimiter or vsync) and recording with 60 or 30fps will result in smooth footage, but playing with 64fps and recording with 30 or 60fps will not be 100% smooth.
I could even lock the fps to 120fps and record with 30, 60 or 120fps and get smooth recordings, if I make sure the GPU is not running at full load (to avoid rendering lag).
So this seems to be an issue of the frame timing difference between ingame fps and recording fps.
Therefore the recording is not really stuttering, but you can see, that it's not 100% smooth, when the recording framerate is not matching the ingame framerate.
I have a freesync monitor with 30-70Hz range. As most online video content has 24, 25, 30, 50 or 60fps I let my monitor run at 60Hz instead of the 70Hz that it is capable of. This way I can watch 60fps youtube footage smoothly where I would see very slight stutter if I watch 60fps content on a 70Hz display (which is to be expected).
To reduce input lag while gaming, I don't use vsync and cap my framerate slightly under the monitors refreshrate (for example fps limit at 58fps on 60Hz), so I'm in the freesync range, got no clipping/tearing and less input lag than running at 60fps with vsync.
But as I said, a 60fps or 30fps recording of ingame 58fps will not be smooth, so at the moment my workaround for this is to set my monitor to 70Hz, cap the fps at 60fps (so still in freesync range and low input lag) and when I'm done with gaming+recording, I switch back to 60Hz, so I can watch the recording or other online media without stutters.
I want to emphasis, that I did those tests with locked/capped fps, not with unlocked and fluctuating fps. GPU and CPU load were always below 60% in theses tests, there are NO rendering or encoding issues (log shows no droppep/skippe frames etc.). Tests were done with a clean scene collection with only a game_capture source in it.
So this has nothing to do with the usual "overload" of the GPU, CPU or bad "sources" like some browser sources or even webcam/capture card sources/drivers.
I'll start by explaining, what I found out and maybe you guys can suggest me a way to improve this behavior.
I can add a log file later, but this has nothing to do with sources, rendering lag or encoder overload, so I don't think it's necessary.
I'm running Windows 10 1903 all updates installed, Game Mode and Game DVR disabled.
Ryzen 3700X
Vega56
16GB DDR4 3200MHz
Whenever the ingame framerate is not exactly in sync with the recording frame rate (1:1 ratio or 1:2 ratio), the recording will not be 100% smooth.
Example: Playing with locked 60fps (framelimiter or vsync) and recording with 60 or 30fps will result in smooth footage, but playing with 64fps and recording with 30 or 60fps will not be 100% smooth.
I could even lock the fps to 120fps and record with 30, 60 or 120fps and get smooth recordings, if I make sure the GPU is not running at full load (to avoid rendering lag).
So this seems to be an issue of the frame timing difference between ingame fps and recording fps.
Therefore the recording is not really stuttering, but you can see, that it's not 100% smooth, when the recording framerate is not matching the ingame framerate.
I have a freesync monitor with 30-70Hz range. As most online video content has 24, 25, 30, 50 or 60fps I let my monitor run at 60Hz instead of the 70Hz that it is capable of. This way I can watch 60fps youtube footage smoothly where I would see very slight stutter if I watch 60fps content on a 70Hz display (which is to be expected).
To reduce input lag while gaming, I don't use vsync and cap my framerate slightly under the monitors refreshrate (for example fps limit at 58fps on 60Hz), so I'm in the freesync range, got no clipping/tearing and less input lag than running at 60fps with vsync.
But as I said, a 60fps or 30fps recording of ingame 58fps will not be smooth, so at the moment my workaround for this is to set my monitor to 70Hz, cap the fps at 60fps (so still in freesync range and low input lag) and when I'm done with gaming+recording, I switch back to 60Hz, so I can watch the recording or other online media without stutters.
I want to emphasis, that I did those tests with locked/capped fps, not with unlocked and fluctuating fps. GPU and CPU load were always below 60% in theses tests, there are NO rendering or encoding issues (log shows no droppep/skippe frames etc.). Tests were done with a clean scene collection with only a game_capture source in it.
So this has nothing to do with the usual "overload" of the GPU, CPU or bad "sources" like some browser sources or even webcam/capture card sources/drivers.