Question / Help Low framerate on recording output?

Hi!
I've been using OBS to make videos for a while now and I think it's a excellent software mainly because I can use the NVENC H.246 encoder to no actual in-game fps loss.
One weird thing started happening recently though. I'm mainly trying to record Battlefield 1 footage and I have above 60 fps at all times in that game. Yet, when I try to record 60 fps footage, OBS can only record at about 30-50 frames(?), making the output file look kinda choppy which is not acceptable. And this is not a issue I've had before.
I've tried running the game on both DX 11 and 12 and with 12 I get a bit higher frames(around 50, 30 with DX 11) on the output that when the game is on DX11 but then I have other visual glitches in the recording and lower fps in-game so using DX 12 still feels suboptimal.

Settings I'm running for my recordings:
Format: mp4
3 audio tracks
encoder: NVENC H.246
CBR
bitrate: 20000-30000
Keyframe interval: 2
Presetting: Standard(I have it in Swedish and unsure if that is the write translation, I've tried High performance with no different outcome)
Profile: High
Level: 4.2
Not using 2-pass
2 B-frames

Target resolution is 1080p, 60fps, lower is not acceptable.
I'm running the game on a GTX 970 OC and shadowplay can hit frames higher than 60fps for the output file. But OBS can't for some reason, but the audio options on Shadowplay is below my target quality, hence I can't use shadowplay. I need to be able to record at least 2 audio-tracks on my output file.

I've also tried using Lossless and VBR with no difference what so ever.

Any help would be much appreciated!
 
Display Capture is always way worse for me.
I don't know what I did, but now it does record in 55+ frames which is acceptable. One thing seems to be that I heightened the priority of the OBS process.
If the problem reoccurs I'll post a log. The log from earlier today just says:
"12:41:57.295: Output 'adv_file_output': Number of lagged frames due to rendering lag/stalls: 507 (12.8%)"
which seems to be the only apparent error message.
 

DamageInc

Member
Im recording bf1 using game capture (specifically the bf1 exe file).

Im recording at 1440p 60fps with no encoding or renderi g lah reported by OBS.

I have had to make sime changes from my BF4 recording setup though.

I use nvenc codec
CQP set at 22
High quality
Auto
B frames = 0
2 pass off.

I have a i7 4790k and a gtx980 and a 144hz monitor with vsync off but gsync on.

To get lag free recording in bf1, the big discovery from todays recording was that my gpu and cpu were both maxed in game. this generalyy means obs will get encoding and rendering lag (skipped frames) in the log file.

I solved the issue by using bf1's frame limiter. i set it to 80 fps which (after testing several values) means my gpu and cpu are at about 95% mist of the time. this gives ibs the cpu and gpu headroom it needs to creat the mp4 with video and 3 audio tracks. i was getting 8-12% lagged frames before doing this.

Happy to share my exact settings if it helps.

Myvsetti gs do generate large files though (b frames at 0 means goid encoding but less compression). but i have the hdd space and the file goes into premiere pro for editing and then rendering to a much smaller file for youtube. so the raw recording size doesnt matter to me

Method
 
Im recording bf1 using game capture (specifically the bf1 exe file).

Im recording at 1440p 60fps with no encoding or renderi g lah reported by OBS.

I have had to make sime changes from my BF4 recording setup though.

I use nvenc codec
CQP set at 22
High quality
Auto
B frames = 0
2 pass off.

I have a i7 4790k and a gtx980 and a 144hz monitor with vsync off but gsync on.

To get lag free recording in bf1, the big discovery from todays recording was that my gpu and cpu were both maxed in game. this generalyy means obs will get encoding and rendering lag (skipped frames) in the log file.

I solved the issue by using bf1's frame limiter. i set it to 80 fps which (after testing several values) means my gpu and cpu are at about 95% mist of the time. this gives ibs the cpu and gpu headroom it needs to creat the mp4 with video and 3 audio tracks. i was getting 8-12% lagged frames before doing this.

Happy to share my exact settings if it helps.

Myvsetti gs do generate large files though (b frames at 0 means goid encoding but less compression). but i have the hdd space and the file goes into premiere pro for editing and then rendering to a much smaller file for youtube. so the raw recording size doesnt matter to me

Method
Ah, I had not considered that, I have almost the same specs as you, just that I have a gtx 970 instead.
I'm gonna set a frame limit and see if that ups the recording even further in stability. Thanks for the tip.
 

dalttrox

New Member
Hi!
I've been using OBS to make videos for a while now and I think it's a excellent software mainly because I can use the NVENC H.246 encoder to no actual in-game fps loss.
One weird thing started happening recently though. I'm mainly trying to record Battlefield 1 footage and I have above 60 fps at all times in that game. Yet, when I try to record 60 fps footage, OBS can only record at about 30-50 frames(?), making the output file look kinda choppy which is not acceptable. And this is not a issue I've had before.
I've tried running the game on both DX 11 and 12 and with 12 I get a bit higher frames(around 50, 30 with DX 11) on the output that when the game is on DX11 but then I have other visual glitches in the recording and lower fps in-game so using DX 12 still feels suboptimal.

Settings I'm running for my recordings:
Format: mp4
3 audio tracks
encoder: NVENC H.246
CBR
bitrate: 20000-30000
Keyframe interval: 2
Presetting: Standard(I have it in Swedish and unsure if that is the write translation, I've tried High performance with no different outcome)
Profile: High
Level: 4.2
Not using 2-pass
2 B-frames

Target resolution is 1080p, 60fps, lower is not acceptable.
I'm running the game on a GTX 970 OC and shadowplay can hit frames higher than 60fps for the output file. But OBS can't for some reason, but the audio options on Shadowplay is below my target quality, hence I can't use shadowplay. I need to be able to record at least 2 audio-tracks on my output file.

I've also tried using Lossless and VBR with no difference what so ever.

Any help would be much appreciated!
have you tried running OBS as administrator, I remember reading in one of my log files before i fixed the same problem that it couldn't hook onto the application I was trying to record, knowing that to hook onto an application it would have to be run as admin I ran it, and it fixed my problem. to run as admin just right click on the exe, go to compatibility, and check "run as administrator" click apply close that window, then relaunch OBS.
 
Top