Question / Help FPS spike drops while using OBS

Iftik

New Member
Hello.
First, I used Fraps for quite a while for capturing. Had no problems with it, recorded smooth in 30 or 60 FPS. The only problem was the file size, so I switched to OBS. Installed, set everything up, opened my game, started recording. Normally I have 60-120 FPS in every game on highest settings. When I pressed the recording button, my FPS dropped to 25-30.
And everytime after maybe 1-2 minutes the FPS rate go down to 5 for about 10-20 seconds. I've tried to fix this with varios changes I watched on youtube and here, but I can't get the programm to do what I want. Either the quality of the recorded footage is horrible, or I have very low FPS and those spike-lags with 5 FPS only.
I don't get it, why I can record with 60 FPS via Fraps for hours, but OBS is lowering my FPS insane after some minutes?
Here's the latest log I've tried: Horribly quality, stable 25 FPS tho...
I've tried everything, changed every settings, no real results.
Maybe it's important: I use a 64x OS.
Code:
04:39:02: Open Broadcaster Software v0.638b - 32bit (´・ω・`)
04:39:02: -------------------------------
04:39:02: CPU Name: AMD FX(tm)-4130 Quad-Core Processor
04:39:02: CPU Speed: 3800MHz
04:39:02: Physical Memory:  4095MB Total, 4095MB Free
04:39:02: stepping id: 2, model 1, family 21, type 0, extmodel 0, extfamily 3, HTT 1, logical cores 4, total cores 2
04:39:02: monitor 1: pos={0, 0}, size={1280, 1024}
04:39:02: Windows Version: 6.1 Build 7601 S
04:39:02: Aero is Enabled
04:39:02: -------------------------------
04:39:02: OBS Modules:
04:39:02: Base Address  Module
04:39:02: 01210000  OBS.exe
04:39:02: 6D6A0000  OBSApi.dll
04:39:02: 72E30000  DShowPlugin.dll
04:39:02: 73260000  GraphicsCapture.dll
04:39:02: 730C0000  NoiseGate.dll
04:39:02: 731D0000  PSVPlugin.dll
04:39:02: ------------------------------------------
04:39:02: Adapter 1
04:39:02:  Video Adapter: NVIDIA GeForce GTX 750
04:39:02:  Video Adapter Dedicated Video Memory: 2070609920
04:39:02:  Video Adapter Shared System Memory: 2147807232
04:39:02:  Video Adapter Output 1: pos={0, 0}, size={1280, 1024}, attached=true
04:39:02: =====Stream Start: 2015-01-06, 04:39:02===============================================
04:39:02:  Multithreaded optimizations: Off
04:39:02:  Base resolution: 1280x1024
04:39:02:  Output resolution: 1280x1024
04:39:02: ------------------------------------------
04:39:02: Loading up D3D10 on NVIDIA GeForce GTX 750 (Adapter 1)...
04:39:02: ------------------------------------------
04:39:02: Audio Format: 44100 Hz
04:39:02: ------------------------------------------
04:39:02: Audio Channels: 2 Ch
04:39:02: Playback device Default
04:39:02: ------------------------------------------
04:39:02: Using desktop audio input: Kopfhörer (High Definition Audio-Gerät)
04:39:02: Global Audio time adjust: 0
04:39:02: ------------------------------------------
04:39:02: Using auxilary audio input: Mikrofon (High Definition Audio-Gerät)
04:39:02: Mic time offset: 0
04:39:02: ------------------------------------------
04:39:02: Audio Encoding: AAC
04:39:02:  bitrate: 112
04:39:02: Using graphics capture
04:39:02: Trying to hook process: survarium.exe
04:39:02: Scene buffering time set to 400
04:39:02: Using custom x264 settings: "crf=15"
04:39:02: x264: VBV maxrate specified, but no bufsize, ignored
04:39:02: ------------------------------------------
04:39:02: Video Encoding: x264
04:39:02:  fps: 30
04:39:02:  width: 1280, height: 1024
04:39:02:  preset: veryfast
04:39:02:  profile: high
04:39:02:  keyint: 250
04:39:02:  CBR: no
04:39:02:  CFR: no
04:39:02:  max bitrate: 1000
04:39:02:  buffer size: 0
04:39:02:  quality: 17
04:39:02: ------------------------------------------
04:39:02: SharedTexCapture hooked
04:39:10: Total frames encoded: 204, total frames duplicated: 66 (32.35%)
04:39:10: Number of frames skipped due to encoder lag: 52 (25.49%)
04:39:10: Total frames rendered: 168, number of late frames: 5 (2.98%) (it's okay for some frames to be late)
04:39:10:
04:39:10: Profiler time results:
04:39:10:
04:39:10: ==============================================================
04:39:10: video thread frame - [100%] [avg time: 4.038 ms] [children: 58.8%] [unaccounted: 41.2%]
04:39:10: | scene->Preprocess - [0.0743%] [avg time: 0.003 ms]
04:39:10: | GPU download and conversion - [58.7%] [avg time: 2.372 ms] [children: 56.9%] [unaccounted: 1.86%]
04:39:10: | | flush - [16.6%] [avg time: 0.672 ms]
04:39:10: | | CopyResource - [0.0495%] [avg time: 0.002 ms]
04:39:10: | | conversion to 4:2:0 - [40.2%] [avg time: 1.623 ms] [children: 39.9%] [unaccounted: 0.322%]
04:39:10: | | | Convert444toNV12 - [39.9%] [avg time: 1.61 ms]
04:39:10: encoder thread frame - [100%] [avg time: 19.176 ms] [children: 0.944%] [unaccounted: 99.1%]
04:39:10: | sending stuff out - [0.944%] [avg time: 0.181 ms]
04:39:10: ==============================================================
04:39:10:
04:39:10:
04:39:10: Profiler CPU results:
04:39:10:
04:39:10: ==============================================================
04:39:10: video thread frame - [cpu time: avg 3.064 ms, total 514.803 ms] [avg calls per frame: 1]
04:39:10: | scene->Preprocess - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
04:39:10: | GPU download and conversion - [cpu time: avg 1.207 ms, total 202.802 ms] [avg calls per frame: 1]
04:39:10: | | flush - [cpu time: avg 0.185 ms, total 31.201 ms] [avg calls per frame: 1]
04:39:10: | | CopyResource - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
04:39:10: | | conversion to 4:2:0 - [cpu time: avg 1.128 ms, total 171.601 ms] [avg calls per frame: 1]
04:39:10: | | | Convert444toNV12 - [cpu time: avg 1.128 ms, total 171.601 ms] [avg calls per frame: 1]
04:39:10: encoder thread frame - [cpu time: avg 2.676 ms, total 546.002 ms] [avg calls per frame: 1]
04:39:10: | sending stuff out - [cpu time: avg 0.076 ms, total 15.6 ms] [avg calls per frame: 1]
04:39:10: ==============================================================
04:39:10:
04:39:10: =====Stream End: 2015-01-06, 04:39:10=================================================
04:39:31: Terminating 0x129c


Last game capture log:
2015-01-06, 04:35:34: we're booting up:
04:35:34: CaptureThread: attached to process survarium.exe
04:35:35: D3D9 Present
04:35:35: DXGI Present
04:35:35: (half life scientist) everything..  seems to be in order
04:35:35: DXGI: Found D3D 11
04:35:35: setting up d3d11 data
04:35:35: ---------------------- Cleared D3D11 Capture ----------------------
04:35:35: found dxgi format (dx11) of: 28, size: {1280, 1024}, multisampled: false
04:35:35: DoD3D11Hook: success
04:35:35: successfully capturing d3d11 frames via GPU
04:35:47: stop requested, terminating d3d11 capture
04:35:47: ---------------------- Cleared D3D11 Capture ----------------------
04:36:05: DoD3D11Hook: success
04:36:05: successfully capturing d3d11 frames via GPU
04:36:30: stop requested, terminating d3d11 capture
04:36:30: ---------------------- Cleared D3D11 Capture ----------------------
04:36:31: DoD3D11Hook: success
04:36:31: successfully capturing d3d11 frames via GPU
04:37:12: stop requested, terminating d3d11 capture
04:37:12: ---------------------- Cleared D3D11 Capture ----------------------
04:37:19: DoD3D11Hook: success
04:37:19: successfully capturing d3d11 frames via GPU
04:37:40: stop requested, terminating d3d11 capture
04:37:40: ---------------------- Cleared D3D11 Capture ----------------------
04:39:02: DoD3D11Hook: success
04:39:02: successfully capturing d3d11 frames via GPU
04:39:10: stop requested, terminating d3d11 capture
04:39:10: ---------------------- Cleared D3D11 Capture ----------------------

Edit: Okay, nevermind, I'm stick with Fraps. Too bad OBS is nothing for me...
 
Last edited:

Lexrax

New Member
Hi,

Well Fraps is total garbage from my experience. OBS is FREE and way better and more configureable. So why pay for Fraps when obs does the job ?

I quote from the Official Quick Start Guide



FPS
  • Default at 30. Increase if you have a good computer and network connection, decrease if you have a poor computer and/or network connection. Minimum you should use is 15.

Try this:

start up OBS and go into SETTINGS > SETTINGS > ENCODING
Change
from x264 to NVENC as that will use the onboard dedicated nvenc chip to encode the video on the fly and not use your precious cpu cycles.


Then go into SETTINGS > SETTINGS > VIDEO
The FPS is set by DEFAULT to 30 FPS !!! If you want more higher FPS then please change this to 60, But your system might not handle it well. Also set your Resolution downscale to required size (if your downscaling)


This should help you out, Try it and post back. Alternatively , why not consult the GUIDES and TUTORIALS which can be found @ https://obsproject.com/forum/resources/official-quick-start-guide.5/
 
Top