Interval stutter / jitter / duplicated frames bug - workarounds

OmegaMalkior

New Member
Log is incomplete.

You're never going to get stutter free encoding with your settings. Refresh rates @ 175 & 75? Try 120 & 60. Frame-rate 119.xxx? Timing is everything & those those timings don't look so good.

You have sample rate mismatches too.....

3:21:44.092: video settings reset:
03:21:44.092: base resolution: 2560x1440
03:21:44.092: output resolution: 2560x1440
03:21:44.092: downscale filter: Bicubic
03:21:44.092: fps: 703379/5862
03:21:44.092: format: P010
03:21:44.092: YUV mode: Rec. 2100 (PQ)/Full

Add:
Is HDR enabled here? If so, the monitor should be 10-bit color.
03:21:43.854: name=Dell AW3423DW
03:21:43.854: pos={0, 0}
03:21:43.854: size={3440, 1440}
03:21:43.854: attached=true
03:21:43.854: refresh=175
03:21:43.854: bits_per_color=8
03:21:43.854: space=RGB_FULL_G2084_NONE_P2020
How can I provide a complete log?

And like I mentioned before, Elgato Studio at whatever default settings I have (175Hz main monitor) has no stuttering in the preview. So I find the claim “no stutter free encoding” to be an erroneous one here. I shouldn’t have to be switching my monitor’s *whole* refresh rate for just one program. And even then when setting them to be synced up with 120, it still didn’t provide a completely stutter free experience in OBS. The frame rate inside of OBS at that specific interval tho did end up helping out a bit I will admit. Also, that 75 comes from my second monitor and it isn’t used for OBS as an fyi.

What do you mean sample rate mismatch?

And I can’t really set this monitor to 10-bit and also 175Hz, I’d have to do 144Hz to do 10-bit so I just stick with 8.
 

rockbottom

Active Member
After making all of the changes, close & re-open OBS, run your test for a few minutes. When finished, close/re-open OBS again & upload the previous log.
 

OmegaMalkior

New Member
Still the same stutters present but go ahead. Even did the 120-60 Hz thing, no difference.


Also, this capture card can output 48 kHz but for some reason OBS registers 44.1 when both Windows and OBS are set to 48. Idk, I just set OBS to 44.1 as a just in case, but it made no difference anywhere anyways

Let me know if you need any other info
 

rockbottom

Active Member
Hardly, you recorded for 3ms

Disable HDR, run SDR

HDR, your capture device is limited to 60FPS @ 1440p . Go look at the specs
 

rockbottom

Active Member
Nevermind, I have them right here.

1764106366589.png
 

rockbottom

Active Member
I ran a TRUE 1440p HDR 120FPS encoding on my system. No issues observed. 12900k/3090

16:11:33.465: video settings reset:
16:11:33.465: base resolution: 2560x1440
16:11:33.465: output resolution: 2560x1440
16:11:33.465: downscale filter: Bicubic
16:11:33.465: fps: 120/1
16:11:33.465: format: P010
16:11:33.465: YUV mode: Rec. 2100 (HLG)/Partial
16:11:33.466: NV12 texture support not available
16:11:33.466: P010 texture support enabled
16:11:33.482: Settings changed (outputs, video)
16:11:33.482: ------------------------------------------------
16:11:37.258: [obs-nvenc: 'advanced_video_recording'] settings:
16:11:37.258: codec: HEVC
16:11:37.258: rate_control: CQP
16:11:37.258: bitrate: 0
16:11:37.258: cqp: 15
16:11:37.258: keyint: 240
16:11:37.258: preset: p5
16:11:37.258: tuning: hq
16:11:37.258: multipass: qres
16:11:37.258: profile: main10
16:11:37.258: width: 2560
16:11:37.258: height: 1440
16:11:37.258: b-frames: 0
16:11:37.258: lookahead: false
16:11:37.258: psycho_aq: false
16:11:37.258:
16:11:37.299: ---------------------------------
16:11:37.299: [FFmpeg pcm_s24le encoder: 'Track1'] bitrate: 0, channels: 2, channel_layout: stereo
16:11:37.299:
16:11:37.305: ==== Recording Start ===============================================
16:11:37.305: [ffmpeg muxer: 'adv_file_output'] Writing file 'D:/2025-11-25_16-11-37.mov'...
16:13:50.288: [ffmpeg muxer: 'adv_file_output'] Output of file 'D:/2025-11-25_16-11-37.mov' stopped
16:13:50.288: Output 'adv_file_output': stopping
16:13:50.288: Output 'adv_file_output': Total frames output: 15951
16:13:50.288: Output 'adv_file_output': Total drawn frames: 15958
16:13:50.289: ==== Recording Stop ================================================
16:14:09.911: Number of remaining views: 1
 

BenReddic

New Member
Registered just to participate in this thread.

I am running a fixed refresh 2560x1440 monitor at only 60Hz, and I have it setup using the low lag vsync method with MSFS and it runs incredibly well, and I have been trying out different configurations to be able to record the gameplay smooth with this setup which is quite unusual these days, but for MSFS it works since the sim doesn't need the most of frames to be smooth. I have tried some custom resolutions and I have one that is exactly 60.0015Hz, but in addition to vsync enabled for MSFS in NVCP, I am also using the framegen mod that makes it necessary to cap my FPS as well. Had some quite good recordings with my usual cap that is 0.100Hz below my exact refresh rate, but what should I use for the capture FPS to mantain the smoothness I am having using the fractional FPS method? 59.9015 as fractional with two more decimals after measuring the exact refresh rate and reduced it by 0.100 or my actual refresh rate of 60.0015, again as fractional?

I believe it should be possible to get it almost as smooth as the method described here that doesn't use an FPS cap, but not as fluid of course.

Here is one of my recordings, and I believe this was with capture FPS set to my cap and not refresh rate.
 

OmegaMalkior

New Member
Hardly, you recorded for 3ms

Disable HDR, run SDR

HDR, your capture device is limited to 60FPS @ 1440p . Go look at the specs
What? I ran the recording for 2 minutes and 56 seconds. If you don't believe me here's the pic which shows the matching title from the log I posted https://i.imgur.com/jgmKcMX.png

Also, I prefer the look of HDR being tone mapped to SDR in it's capture (preview window) rather than running the console in SDR. I also swap to pure HDR on a decent amount of occasions and I'd prefer it to be done with just OBS as well. But none of this should have a matter in this stutter case anyways, the card should be fine capturing whichever.

Regardless tho I tried out setting the console to SDR and same results, stutter still present. Congrats on your recording being fine but my Preview/Program Projector isn't and I've spent way too long changing every bit of setting to defaults and whatnot with no dice with OBS meanwhile Elgato Studio's preview is just flawless without stutters for some reason.

If you want me to try out something else let me know, but I have to wonder if your Preview/Program Projector is truly actually fine while your recordings are fine, since I've heard that to be a thing before as well. I find the lack of logging for the Preview/Program Projector disappointing and I do really wonder if that's why it's taken this long to troubleshoot.
 

rockbottom

Active Member
The entire pipeline should be HDR for things to work correctly. End to end.

If you can't do that (you can't @ 120FPS) , then the entire pipeline should be SDR. Regardless of what you think looks better.
 

BenReddic

New Member
Anyone with a correct answer as to if I can ignore the log analyzers "warning" of non standard framerate when capturing at 59.94 for a recording that is going to be uploaded to youtube? Struggling to find a conclusive answer in regards to if youtube 60FPS is actually 59.94 or indeed exactly 60FPS.
 

rockbottom

Active Member
It's up to you. Personally, I either match the source frame-rate or do 30 & multiples of 60 (Integer).

As far as YT, I've seen both but last one I downloaded was 60.
 

BenReddic

New Member
A little different approach that I now tried out that gave the best end result on youtube for my setup including vsync and an FPS cap. Capture FPS at 59.92, FPS cap at 59.93 and refresh rate 59.98 for this. Goal for my recordings is simply to showcase the smoothness I am seeing as close to what I am actually having in front of me.

 

Attachments

  • Skjermbilde (527).jpg
    Skjermbilde (527).jpg
    137.7 KB · Views: 29

rockbottom

Active Member
Some Rendering lag/GPU overload but it's minimal.

13:55:16.435: Output 'multi-output': Total frames output: 1077252
13:55:16.435: Output 'multi-output': Total drawn frames: 1077298 (1077301 attempted)
13:55:16.435: Output 'multi-output': Number of lagged frames due to rendering lag/stalls: 3 (0.0%)
13:55:16.435: [obs-multi-rtmp] Release output while it is active.
13:55:16.436: Video stopped, number of skipped frames due to encoding lag: 3/1077275 (0.0%)
13:55:16.552: warning: 2 frames left in the queue on closing
13:55:16.602: [rtmp stream: 'rtmp multitrack video'] User stopped the stream
13:55:16.602: [rtmp stream: 'rtmp multitrack video'] Socket send buffer is 2097152 bytes
13:55:16.602: Output 'rtmp multitrack video': stopping
13:55:16.602: Output 'rtmp multitrack video': Total frames output: 2692933
13:55:16.602: Output 'rtmp multitrack video': Total drawn frames: 1077293 (1077296 attempted)
13:55:16.602: Output 'rtmp multitrack video': Number of lagged frames due to rendering lag/stalls: 3 (0.0%)
13:55:16.602: [rtmp stream: 'rtmp multitrack video'] Freeing 2 remaining packets
13:55:16.602: Video stopped, number of skipped frames due to encoding lag: 3/1077207 (0.0%)
13:55:16.605: ==== Streaming Stop ================================================
13:55:16.664: Video stopped, number of skipped frames due to encoding lag: 3/1077210 (0.0%)
13:55:16.703: Video stopped, number of skipped frames due to encoding lag: 3/1077213 (0.0%)
13:55:16.733: warning: 2 frames left in the queue on closing


This plugin is stale, a new build is available for OBS 32.x.x, update it & try again, see if things improve.

08:32:52.471: [obs-multi-rtmp] Load 1 targets, 1 video configs, 1 audio configs
08:32:52.471: [obs-multi-rtmp] Load config from C:\Users\User\AppData\Roaming\obs-studio/basic/profiles/Image_Diller/obs-multi-rtmp.json
08:32:52.481: [obs-multi-rtmp] version: 0.7.3.0 by SoraYuki https://github.com/sorayuki/obs-multi-rtmp/


 

rockbottom

Active Member
Audio thread can use some improvement. Most likely slowed down by all the filters you're using. I like to see that 99 Percentile @ 5ms or faster...

13:55:21.982: audio_thread(Audio): min=0.004 ms, median=1.112 ms, max=75.876 ms, 99th percentile=10.277 ms
13:55:21.982: ┗receive_audio: min=0.003 ms, median=0.443 ms, max=71.671 ms, 99th percentile=7.588 ms, 1.85558 calls per parent call
13:55:21.982: ┣buffer_audio: min=0 ms, median=0.001 ms, max=0.275 ms, 99th percentile=0.002 ms
13:55:21.982: ┗do_encode: min=0.011 ms, median=0.44 ms, max=71.666 ms, 99th percentile=7.585 ms
13:55:21.982: ┣encode(multi-rtmp-aenc3335199680-track-idx-0): min=0.025 ms, median=0.506 ms, max=71.598 ms, 99th percentile=8.446 ms, 0.500015 calls per parent call
13:55:21.982: ┣send_packet: min=0.001 ms, median=0.006 ms, max=0.705 ms, 99th percentile=0.037 ms
13:55:21.982: ┗encode(multitrack video live audio 0): min=0.008 ms, median=0.387 ms, max=10.582 ms, 99th percentile=3.547 ms, 0.499985 calls per parent call
 

Image Diller

New Member
Thank you so much for your time and help!

That's weird, I installed the latest version of obs-multi-rtmp. There must be some leftover files...

Regarding the audio, that might actually make sense. I heard that because the audio is delayed, the video waits for it and can stutter. I'll try to figure that out. It's a pity that without filters the sound will be much worse for hearing.

I've already tried so many things, I've applied all sorts of advice. If I were to list them all, it would be a long list. I'd like to know if there's a specific culprit for this kind of recording lag? Or should I try improving the OBS error reporting and hope the stuttering goes away?

They just appear randomly and even in principle, the OBS settings can be excluded, since such lags exist even in other recording programs that use all the default settings.
 

rockbottom

Active Member
Audio may improve with the plugin correctly installed.

Look at the bottom of your log. Your Graphics thread is done ready to go in like 1.4ms & then the encoder has to wait up to 9ms for the audio to arrive.....
 

rockbottom

Active Member
On my system in every audio configuration, surround included, my audio thread is always faster than the graphics thread.
 
Top