Question / Help How to record 60fps 1080p fluid?

Junky

New Member
Hello I'm having some issues with gameplay OBS recording. I tried recording star wars battlefront beta 60fps 1080p and it was perfectly fluid when I played but when I watched the video on VLC it looked like 2-3 secs 60fps, 2-3 secs 20-40 fps, after 6 minutes in the recording the OBS video started stuttering getting to a point where sound kept on going but the video was frozen in the same frame.

I don't know if it's possible with my specs but I just want to record 1080p stable 60fps without freezes

First I'll post my specs and then my OBS settings

GPU: NVIDIA GeForce GTX 980
CPU: i7-2600k 3.4ghz
8gb ram
BenQ 144hz monitor
1TB HDD Hitachi HCS5C1010CLA382

I can run most games at very high-ultra quality and get stable +100fps, when I record I don't feel the difference in gameplay. I don't mind sacrificing framerate for video stability/quality

Now for the OBS settings:

348t7x3.png


2us8sk4.png


2istshz.png
 

dping

Active Member
It could be that 60fps looks stuttery due to the 144Hz monitor. does it seem more fluid if you change your hz to 60 to match the recording?

Second, where is your logfile? It can be uploaded from the help menu of OBS.

Third, for a small boost, check your audio format in windows audio for your speakers under advanced. If this is 48000Hz, change OBS to match.

Hello I'm having some issues with gameplay OBS recording. I tried recording star wars battlefront beta 60fps 1080p and it was perfectly fluid when I played but when I watched the video on VLC it looked like 2-3 secs 60fps, 2-3 secs 20-40 fps, after 6 minutes in the recording the OBS video started stuttering getting to a point where sound kept on going but the video was frozen in the same frame.

I don't know if it's possible with my specs but I just want to record 1080p stable 60fps without freezes

First I'll post my specs and then my OBS settings

GPU: NVIDIA GeForce GTX 980
CPU: i7-2600k 3.4ghz
8gb ram
BenQ 144hz monitor
1TB HDD Hitachi HCS5C1010CLA382

I can run most games at very high-ultra quality and get stable +100fps, when I record I don't feel the difference in gameplay. I don't mind sacrificing framerate for video stability/quality

Now for the OBS settings:

348t7x3.png


2us8sk4.png


2istshz.png
 

EDGAR_SEC

Member
You're running Ultrafast and a paltry 1000 bitrate, of course it will look crappy. What you see in the preview window is NOT what the encode looks like at all. You also neglected to post a log, so no one can give you any in depth advice just yet.
 

Osiris

Active Member
You're running Ultrafast and a paltry 1000 bitrate, of course it will look crappy. What you see in the preview window is NOT what the encode looks like at all. You also neglected to post a log, so no one can give you any in depth advice just yet.

No it's not going to look crappy, the bitrate is ignored with his settings.
 

dping

Active Member
Ah, was it the CRF=20 custom setting overriding everything? I didn't see that initially.
no it was the 0 buffer, which ignored VBV max bitrate. having a lower CRF further gives better quality than the default, which should be pretty good.


either way @Junky I need a logfile from you please
 

Junky

New Member
I think this is how u do it? xD

pd: sry for the delay
 

Attachments

  • 2015-10-12-0244-25.log
    31.7 KB · Views: 35

dping

Active Member
I think this is how u do it? xD

pd: sry for the delay
you got it. yeah those 20% skipped frames on the third try. I agree with @Boildown. try NVENC in the encoder tab then switch to high performance preset? With NVENC, I do not think you can use 0 buffer so when you do this, just set to bitrate as he said above and uncheck custom buffer.
 

Boildown

Active Member
All of the encode statistics look good for all your captures except this one:

04:02:22: Audio timestamp for device 'Micrófono (USB Microphone )' was behind target timestamp by 211634395
04:09:20: FlushBufferedVideo: Flushing 35 packets over 567 ms
04:09:22: Total frames encoded: 24885, total frames duplicated: 5358 (21.53%)
04:09:22: Number of frames skipped due to encoder lag: 5119 (20.57%)
04:09:22: Total frames rendered: 19663, number of late frames: 66 (0.34%) (it's okay for some frames to be late)

But I can't figure out what you did different that time that messed it up so bad.

I wish we had some documentation of the profiler, here's a good encode:

03:58:58: Profiler time results:
03:58:58:
03:58:58: ==============================================================
03:58:58: video thread frame - [100%] [avg time: 0.721 ms] [children: 39%] [unaccounted: 61%]
03:58:58: | scene->Preprocess - [0.139%] [avg time: 0.001 ms]
03:58:58: | GPU download and conversion - [38.8%] [avg time: 0.28 ms] [children: 17.6%] [unaccounted: 21.2%]
03:58:58: | | flush - [16.6%] [avg time: 0.12 ms]
03:58:58: | | CopyResource - [0.693%] [avg time: 0.005 ms]
03:58:58: | | conversion to 4:2:0 - [0.277%] [avg time: 0.002 ms]
03:58:58: Convert444Threads - [100%] [avg time: 1.154 ms] [children: 99.5%] [unaccounted: 0.52%]
03:58:58: | Convert444toNV12 - [99.5%] [avg time: 1.148 ms]
03:58:58: encoder thread frame - [100%] [avg time: 1.804 ms] [children: 10.9%] [unaccounted: 89.1%]
03:58:58: | sending stuff out - [10.9%] [avg time: 0.197 ms]
03:58:58: ==============================================================
03:58:58:
03:58:58:
03:58:58: Profiler CPU results:
03:58:58:
03:58:58: ==============================================================
03:58:58: video thread frame - [cpu time: avg 0.109 ms, total 3634.82 ms] [avg calls per frame: 1]
03:58:58: | scene->Preprocess - [cpu time: avg 0 ms, total 15.6 ms] [avg calls per frame: 1]
03:58:58: | GPU download and conversion - [cpu time: avg 0.04 ms, total 1341.61 ms] [avg calls per frame: 1]
03:58:58: | | flush - [cpu time: avg 0.034 ms, total 1154.41 ms] [avg calls per frame: 1]
03:58:58: | | CopyResource - [cpu time: avg 0.001 ms, total 62.4 ms] [avg calls per frame: 1]
03:58:58: | | conversion to 4:2:0 - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
03:58:58: Convert444Threads - [cpu time: avg 1.052 ms, total 69716.9 ms] [avg calls per frame: 2]
03:58:58: | Convert444toNV12 - [cpu time: avg 1.05 ms, total 69529.6 ms] [avg calls per frame: 2]
03:58:58: encoder thread frame - [cpu time: avg 1.229 ms, total 40716.3 ms] [avg calls per frame: 1]
03:58:58: | sending stuff out - [cpu time: avg 0.149 ms, total 4945.23 ms] [avg calls per frame: 1]

And here's the 21% duplicated frames encode:

04:09:23: Profiler time results:
04:09:23:
04:09:23: ==============================================================
04:09:23: video thread frame - [100%] [avg time: 0.97 ms] [children: 53.3%] [unaccounted: 46.7%]
04:09:23: | scene->Preprocess - [0.103%] [avg time: 0.001 ms]
04:09:23: | GPU download and conversion - [53.2%] [avg time: 0.516 ms] [children: 31.5%] [unaccounted: 21.6%]
04:09:23: | | flush - [30%] [avg time: 0.291 ms]
04:09:23: | | CopyResource - [1.34%] [avg time: 0.013 ms]
04:09:23: | | conversion to 4:2:0 - [0.206%] [avg time: 0.002 ms]
04:09:23: Convert444Threads - [100%] [avg time: 1.184 ms] [children: 99.4%] [unaccounted: 0.591%]
04:09:23: | Convert444toNV12 - [99.4%] [avg time: 1.177 ms]
04:09:23: encoder thread frame - [100%] [avg time: 5.245 ms] [children: 61%] [unaccounted: 39%]
04:09:23: | sending stuff out - [61%] [avg time: 3.2 ms]
04:09:23: ==============================================================
04:09:23:
04:09:23:
04:09:23: Profiler CPU results:
04:09:23:
04:09:23: ==============================================================
04:09:23: video thread frame - [cpu time: avg 0.142 ms, total 2808.02 ms] [avg calls per frame: 1]
04:09:23: | scene->Preprocess - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
04:09:23: | GPU download and conversion - [cpu time: avg 0.06 ms, total 1185.61 ms] [avg calls per frame: 1]
04:09:23: | | flush - [cpu time: avg 0.056 ms, total 1107.61 ms] [avg calls per frame: 1]
04:09:23: | | CopyResource - [cpu time: avg 0.001 ms, total 31.2 ms] [avg calls per frame: 1]
04:09:23: | | conversion to 4:2:0 - [cpu time: avg 0 ms, total 15.6 ms] [avg calls per frame: 1]
04:09:23: Convert444Threads - [cpu time: avg 1.045 ms, total 41012.7 ms] [avg calls per frame: 2]
04:09:23: | Convert444toNV12 - [cpu time: avg 1.043 ms, total 40934.7 ms] [avg calls per frame: 2]
04:09:23: encoder thread frame - [cpu time: avg 1.354 ms, total 33649.4 ms] [avg calls per frame: 1]
04:09:23: | sending stuff out - [cpu time: avg 0.123 ms, total 3073.22 ms] [avg calls per frame: 1]

I notice that the "sending stuff out" percentage is significantly larger for the bad encode
(61% vs 10.9%). But the actual CPU time is similar and slightly less. Whatever that means. Did OBS just not get prioritized as much by the OS that run? Wish I knew what this meant.
 
Last edited:

Junky

New Member
Hmm, any ideas on what could be causing this? is my setup too weak maybe? if so what would I need to improve the quality/smoothness?
 

dping

Active Member
All of the encode statistics look good for all your captures except this one:



But I can't figure out what you did different that time that messed it up so bad.

I wish we had some documentation of the profiler, here's a good encode:



And here's the 21% duplicated frames encode:



I notice that the "sending stuff out" percentage is significantly larger for the bad encode
(61% vs 10.9%). But the actual CPU time is similar and slightly less. Whatever that means. Did OBS just not get prioritized as much by the OS that run? Wish I knew what this meant.
I can only assume it was either a game menu or what have you.


Hmm, any ideas on what could be causing this? is my setup too weak maybe? if so what would I need to improve the quality/smoothness?

Its a new game, but based on FB4 with pretty heavy mods I believe. We're also still in beta so no telling how optimized it is. I would use NVENC as said before since honestly, you'll get the same quality with less CPU load (which BF4 uses CPU pretty decently).
 

Junky

New Member
I will try other games, I had the intention of recording Fallout 4 when it releases, I guess the performances i get with TES V would be simillar
 
Top