Question / Help recording lag with local game capture

samule90

New Member
so today I finally decided to download OBS because I do want to get into streaming at some point but I also downloaded it to record in game as an alternative to dxtory etc.

everything works great, I get no in game frame drops while recording and quality is good but there is one problem...when I go back to watch the recording the video is really choppy, I've tried everything. lowering the bitrate, downscaling the res, changed the FPS of recording and it still does it no matter what

I do have a hunch it might be my hard drive due to the fact that im recording on the same harddrive as my OS and games are on but i wouldnt think it would cause that much of an issue. anyone have any suggestions?
 

paibox

heros in an halfshel
It's really hard to know for sure since you didn't post a log, but my bet would be that you are using Monitor Capture (part of Software Capture) on a Windows 7 computer with Aero enabled.

If you absolutely need to use Monitor Capture, turn OFF Aero. Otherwise I would suggest leaving Aero, using Game Capture for the LoL game client itself and Inner Window capture (also part of Software Capture) for the launcher window, if you're capturing that inbetween games.
 

samule90

New Member
thats the thing im not using monitor capture, im using game capture and aero is on...and as for log do you mean my settings? i can do that if needed.
 

paibox

heros in an halfshel
No, I mean a log, if you don't know where to find it, please read this post: viewtopic.php?f=5&t=97

Also, my second guess would be that you do not have vsync enabled in LoL, and LoL is using too much of your video card's available processing power to leave anything for OBS to render the scene. But yeah, please do post a log.
 

samule90

New Member
its not LOL that im recording anyways its cod4...and i should have plenty of GPU since i have a crossfire set up..but this is my log and it should say 1920x1200 for the res...for some reason it faulted and when i watched it back and had to change it right after this and my CPU is OC'd to 4.2 ghz

Code:
Open Broadcaster Software v0.47a - 32bit (´・ω・`)
-------------------------------
CPU Name: Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz
CPU Speed: 3400MHz
Physical Memory:  4095MB Total, 4095MB Free
stepping id: 9, model 10, family 6, type 0, extmodel 1, extfamily 0, HTT 1, logical cores 4, total cores 4
Windows Version: 6.1 Build 7601 S
Aero is Enabled
------------------------------------------
Adapter 1
  Video Adapter: AMD Radeon HD 6800 Series
  Video Adapter Dedicated Video Memory: 2118565888
  Video Adapter Shared System Memory: 3965192192
------------------------------------------
Adapter 2
  Video Adapter: Intel(R) HD Graphics 4000
  Video Adapter Dedicated Video Memory: 67108864
  Video Adapter Shared System Memory: 1711276032
=====Stream Start=====================================================================
  Multithreaded optimizations: On
  Base resolution: 128x128
  Output resolution: 84x84
------------------------------------------
Loading up D3D10...
Playback device Default
------------------------------------------
Using desktop audio input: Speakers (Realtek High Definition Audio)
------------------------------------------
Using auxilary audio input: Microphone (Realtek High Definition Audio)
------------------------------------------
Audio Encoding: AAC
    bitrate: 128
Using Window Capture
Using custom x264 settings: "crf=18"
------------------------------------------
Video Encoding: x264
    fps: 30
    width: 84, height: 84
    preset: veryfast
    CBR: no
    CFR: no
    max bitrate: 5000
    buffer size: 0
    quality: 14
------------------------------------------
Total frames rendered: 5378, number of frames that lagged: 0 (0.00%) (it's okay for some frames to lag)
=====Stream End=======================================================================
=====Stream Start=====================================================================
  Multithreaded optimizations: On
  Base resolution: 128x128
  Output resolution: 84x84
------------------------------------------
Loading up D3D10...
Playback device Default
------------------------------------------
Using desktop audio input: Speakers (Realtek High Definition Audio)
------------------------------------------
Using auxilary audio input: Microphone (Realtek High Definition Audio)
------------------------------------------
Audio Encoding: AAC
    bitrate: 128
Using graphics capture
Using custom x264 settings: "crf=18"
------------------------------------------
Video Encoding: x264
    fps: 30
    width: 84, height: 84
    preset: veryfast
    CBR: no
    CFR: no
    max bitrate: 5000
    buffer size: 0
    quality: 14
------------------------------------------
SharedTexCapture hooked
Total frames rendered: 249, number of frames that lagged: 5 (2.01%) (it's okay for some frames to lag)
=====Stream End=======================================================================
=====Stream Start=====================================================================
  Multithreaded optimizations: On
  Base resolution: 128x128
  Output resolution: 84x84
------------------------------------------
Loading up D3D10...
Playback device Default
------------------------------------------
Using desktop audio input: Speakers (Realtek High Definition Audio)
------------------------------------------
Using auxilary audio input: Microphone (Realtek High Definition Audio)
------------------------------------------
Audio Encoding: AAC
    bitrate: 128
Using graphics capture
Using custom x264 settings: "crf=18"
------------------------------------------
Video Encoding: x264
    fps: 30
    width: 84, height: 84
    preset: veryfast
    CBR: no
    CFR: no
    max bitrate: 5000
    buffer size: 0
    quality: 14
------------------------------------------
SharedTexCapture hooked
SharedTexCapture hooked
Total frames rendered: 160, number of frames that lagged: 0 (0.00%) (it's okay for some frames to lag)
=====Stream End=======================================================================
=====Stream Start=====================================================================
  Multithreaded optimizations: On
  Base resolution: 1920x1200
  Output resolution: 1280x800
------------------------------------------
Loading up D3D10...
Playback device Default
------------------------------------------
Using desktop audio input: Speakers (Realtek High Definition Audio)
------------------------------------------
Using auxilary audio input: Microphone (Realtek High Definition Audio)
------------------------------------------
Audio Encoding: AAC
    bitrate: 128
Using graphics capture
Using custom x264 settings: "crf=18"
------------------------------------------
Video Encoding: x264
    fps: 30
    width: 1280, height: 800
    preset: veryfast
    CBR: no
    CFR: no
    max bitrate: 5000
    buffer size: 0
    quality: 14
------------------------------------------
SharedTexCapture hooked
Total frames rendered: 471, number of frames that lagged: 5 (1.06%) (it's okay for some frames to lag)
=====Stream End=======================================================================
=====Stream Start=====================================================================
  Multithreaded optimizations: On
  Base resolution: 1920x1200
  Output resolution: 1280x800
------------------------------------------
Loading up D3D10...
Playback device Default
------------------------------------------
Using desktop audio input: Speakers (Realtek High Definition Audio)
------------------------------------------
Using auxilary audio input: Microphone (Realtek High Definition Audio)
------------------------------------------
Audio Encoding: AAC
    bitrate: 128
Using graphics capture
Using custom x264 settings: "crf=18"
------------------------------------------
Video Encoding: x264
    fps: 30
    width: 1280, height: 800
    preset: veryfast
    CBR: no
    CFR: no
    max bitrate: 5000
    buffer size: 0
    quality: 14
------------------------------------------
SharedTexCapture hooked
SharedTexCapture hooked
Total frames rendered: 2427, number of frames that lagged: 0 (0.00%) (it's okay for some frames to lag)
=====Stream End=======================================================================

Profiler results:

==============================================================
frame - [100%] [avg time: 1.798 ms] [avg calls per frame: 1] [children: 86.3%] [unaccounted: 13.7%]
| scene->Preprocess - [5.9%] [avg time: 0.106 ms] [avg calls per frame: 1]
| video encoding and uploading - [80.4%] [avg time: 1.445 ms] [avg calls per frame: 1] [children: 25.1%] [unaccounted: 55.3%]
| | CopyResource - [2.22%] [avg time: 0.04 ms] [avg calls per frame: 0]
| | conversion to 4:2:0 - [0.111%] [avg time: 0.002 ms] [avg calls per frame: 0]
| | call to encoder - [22.4%] [avg time: 0.402 ms] [avg calls per frame: 0]
| | sending stuff out - [0.389%] [avg time: 0.007 ms] [avg calls per frame: 0]
 

Grimio

Member
You have set the buffer to 0, for whatever reason. I wouldn't do that.
Set the bitrate and the buffer to maximum 4000, preferable lower(somewhere between 3000 and 3500) and test again please.
Also, please delete the custom CRF setting, it doesn't make sense in this context.
 

paibox

heros in an halfshel
Ah, okay, so you have a crossfire setup, that might actually be the problem.

If your video cards are taking turns rendering frames, this means that the frames rendered on the video card that OBS isn't running on will never make it to OBS itself, and this could most definitely cause the choppiness you're seeing. Try disabling Crossfire for CoD4 and recording, see if that fixes it. The log looks perfectly fine, otherwise, low processing times, etc.

Because of the way OBS uses the GPU, there's currently no way to fix this, disabling Crossfire when recording is the only option, unless you can somehow get the second GPU to send the frames it render to the first one.

Edit: CRF=18 makes sense if he wants to record visually lossless, as for the buffer size, wouldn't that let the encoder use as much extra as it feels is necessary to keep the frames visually lossless?

Edit 2: After testing it, setting the buffer to 0 does not seem to do that, no. So increasing the bit rate and setting your buffer to the same value would help your recording quality quite a bit.
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
It says you have buffer size at 0 in all the times you tried.. are you sure that you're supposed to do that? But generally, the app is reporting almost zero lag and your computer seems to be amazing, it could just be a possible setting or something. not entirely sure.

Generally the settings I use for high quality local recording is this: 16000/16000 for video encoding, and crf=12 (though 12 might be overkill)

Someone just mentioned crossfire, if you are using crossfire it could cause problems but I'm not entirely sure, you may have to experiment with that. GPU accelerated capturing can't really be made to work on multi-GPU setups as well as single-GPU setups. The reason is because the texture data needs to be accessible to OBS. If OBS is on one GPU and the texture data is on another it can cause problems. This isn't really a limitation of the app itself, more just that it's simply not really possible to make it work with multi-GPU setups as efficiently
 

samule90

New Member
thank you for all the replies guys it helps a lot. i will try disabling crossfire and see if that helps. just another crossfire headache but I'm hoping to upgrade to a 7950 or something similar soon. now i just have a reason to upgrade more :P and idk why my buffer size was 0. someone suggested it and it seemed odd but i thought i would give it a whirl. i will set it back to my bitrate size.
 
Top