awesome OBS

toughgamer3

New Member
Dear developer,
Your software is simply awesome.I have a humble suggestion.The software requires high system resources.It takes about 30% of the cpu on recommended settings(may be because it encodes as it records to have normal video file size).While gaming if i use obs the game suffers.I believe this happens because it encodes while recording or streaming.Can it be made to records game in specific codecs having huge video file size(as it would not encode while recording) and then encoding it after recording with any specific tool.The video size would tremendously shrinks without compromising quality.In that case recording would take only 2-3% cpu may be because it do not encodes as it records.
Can you please use such methodology with the obs software so that people not having insanely powerful pc can also use obs while gaming.Kindly reply.Thanks
 

Kharay

Member
You do not need a super-, super powerful PC to stream/record. In fact, 30% is more than acceptable. Perfectly reasonable.
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
The encoding is primarily where the high CPU usage is. In the future other encoders will be possible, which will be especially nice for file output.
 

toughgamer3

New Member
Kharay said:
You do not need a super-, super powerful PC to stream/record. In fact, 30% is more than acceptable. Perfectly reasonable.
Dear kharay,if a software takes 30 % cpu already and you run a game over it,the cpu usage goes to 95-100% and the game suffers in most cases thats why I mentioned that man.
 

toughgamer3

New Member
If the video recording is done without encoding simultaneously it would give huge file size.This process would take very negligible cpu resource.Later we can encode that large file(eg.10gb for 20 min video)to a small reasonable file size(say 200 mb for 20 min)by sum encoding tools thus saving cpu usage(especially while gaming).
 

Kharay

Member
toughgamer3 said:
Kharay said:
You do not need a super-, super powerful PC to stream/record. In fact, 30% is more than acceptable. Perfectly reasonable.
Dear kharay,if a software takes 30 % cpu already and you run a game over it,the cpu usage goes to 95-100% and the game suffers in most cases thats why I mentioned that man.
Yes. Your point is... ? You cannot honestly expect to get this kind of functionality for "free". Did you ever take a look at just how much CPU time <insert something random here> uses? Oh, your browser... that's a good one. Going to write Google, M$ and Mozilla to ask them to reduce the CPU hit of their browsers to 0% as well? :S
 

DeMoN

Member
OBS is a streaming application, not a capturing application. And OBS even says to you in its GUI that you should use game capturing software like DXTory, Fraps etc to capture games instead of OBS.

OBS encodes with x264 and all is fine with that. You should use it for streaming, not for recording files. For recording files you can use DXTory.
 

Boildown

Active Member
toughgamer3 said:
The software requires high system resources. It takes about 30% of the cpu on recommended settings.

Then change away from the recommended settings.

Have you tried using the ultra fast preset with a high bitrate captured to disk?

Currently, I'm kind of doing what I think you should probably do:

I run OBS twice, with -multi and -portable switches on the command line as described here: viewtopic.php?f=5&t=2089

For capturing to disk, the first OBS instance runs with the "superfast" preset and CRF of 24, 1080p, 45fps.
For streaming, the second OBS instance runs at the "faster" preset with a CBR of 3000, buffer of 2000, 720p, and 45fps.

The capture to disk looks significantly better than the stream despite the preset being two whole notches worse, because the average bitrate is... lemme check a video file on my hard drive here... nearly four times higher. My PC is capable of running both OBS instances at the same time in large part because I moved the capture to disk preset up to "superfast".

So for you, you can most definitely stream at "superfast" or "ultrafast" and save CPU resources. If you capture to disk instead of stream, you can safely set a high bitrate (or constant rate factor is even better) for high quality, low resources, but very large video files.

If you still want to stream it, you can either stream live like this (with an appropriate constant bit rate set, not CRF), but it will look bad (maybe for your content, that doesn't matter). Alternatively, if you don't care about "live" streaming, you can capture to disk with a high quality CRF as I describe above. Then after your gaming session is over, use Handbrake to re-encode to a CBR (no more than 3500 for Twitch, for example) at a good CPU-busting preset, like Very Slow, and once that's done, upload it using OBS and the Video Source Plugin.

TLDR: You have options, they just aren't the recommended settings. You can use the "superfast" or "ultrafast" preset and use significantly less resources, while keeping the quality good by upping the bitrate. This capability already exists in OBS.

Final thought: I look forward to the day when streaming and file capture won't have to be done at the same x264 values in one instance of OBS. Since most of the encoding process will be identical for both outputs, they will only have to be done once instead of twice, a lot of CPU resources will be saved vs. running two instances of OBS, and I'll be able to save a smaller file and/or increase quality of the stream.
 

DeMoN

Member
just use capturing software for recording to file. As simple as that.

Lossless coding is the best for capturing and the least cpu usage. And later you can encode in lossy format without watching at cpu usage..
 

Boildown

Active Member
DeMoN said:
just use capturing software for recording to file. As simple as that.

Lossless coding is the best for capturing and the least cpu usage. And later you can encode in lossy format without watching at cpu usage..

Doesn't work if you're using a video capture card on a second computer, like me, or if you want to capture all the OBS sources, which might be the case for anyone.
 

xD4rkFire

Member
DeMoN said:
And OBS even says to you in its GUI that you should use game capturing software like DXTory, Fraps etc to capture games instead of OBS.

Is that actually the case with capturing games? Could you post a screenshot/proof of this? Never saw it before and I'm on a computer without OBS right now.


-Jim posted this a while back as a reply to this thread

Jim said:
Anyway, I don't want to downplay the work that went into dxtory, however I do have to point out that my game capture plugin is going to get far better performance due to a variety of reasons. First one being that I made a fairly huge technological development that makes it so that it uses almost literally zero CPU (does everything via the GPU, doesn't transfer anything to RAM) and has almost no effect on your game, and the second reason is that it interacts directly with my application -- it doesn't have to go through directshow or anything for example, it just goes straight into the stream output. I have managed to keep good on my promise for a high performance game capture, and I'm pretty proud of it. I was a bit worried while making it for a while, but I refused to give up, and finally pulled it off.
 

paibox

heros in an halfshel
It doesn't actually say that. DeMoN is just entirely misreading the warning message about incompatible hook modules, which says that you should add OBS to the ignore list of those applications so that they don't interfere with Game Capture.
 

DeMoN

Member
hmm I'm sure it was there, but now there is only 1 line here:

dgaa-77-03c6.png


There or somewhere else were 2 lines and not just 1 line.

Was the line removed in 0.554b ?

previous version I had was 0.552b

PS: I run DXTory and OBS together and dont get problems with hooks ^^
Disabling preview in OBS / put OBS in ignore list of DXTory and load first OBS, then DXTory solves the problem ^^

I cant agree Jim with the linked post. Lossless capture is always faster than lossy and OBS allows only x264. x264 can do lossless too. I know. But it uses still good compression. Less compression - less cpu usage - more speed for game.
Has OBS the possibility for an FPS overlay ingame? So I would test out which application gives better ingame fps.
I have a RAID 0 with 350 mbyte/s, i7 3770k @ 4,2ghz and a Nvidia GTX 680 - and a OpenGL 1.4 Game (GZDooM) which consumes not much cpu/gpu.

IngameFPS comparison while recording in 2048x1152, 30fps:

Fraps: 210 fps
MSI Afterburner: 330 to 350 fps (codec: FFDShow uncompressed YV12)
DXTory: 900+ FPS (codec: FFDShow uncompressed YV12)

With DXTory no ingameFPS reduction at all (or if, then very very small)

Changing codec to Lagarith doesnt change fps for both programs, because of the low cpu and gpu usage of the game and the HDD speed. So it is a good representation for the speed of the programs I think.

But if you want I could test it with OBS as well.
 

paibox

heros in an halfshel
There has never been a message about DXTory or FRAPS in Monitor capture, you simply got the popup message about the incompatible hooks. Of course OBS works fine with DXtory if you add OBS to its ignore list, that's exactly what the message tells you to do.
 

DeMoN

Member
paibox said:
you simply got the popup message about the incompatible hooks
No it was a line in the options. There were 2 lines. Im so sure there were somewhere 2 lines, not just 1 line.
 

paibox

heros in an halfshel
It doesn't really matter where you saw it. At no point in time has OBS been telling you that you should be using DXtory or FRAPS. It was either mistranslated, or you misinterpreted it. That is all.
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
Yea, there really has never been a message suggesting to use something else, and I'd probably know seeing as I'm the guy who spends almost every single day with the application/code/locale. You can record games and such without streaming via OBS anyway so it doesn't particularly make sense to recommend such.
 
Top