Capture Cards VS Recording Software

djazzoff

Honorable
Jan 9, 2014
19
0
10,510
Hi, I have searched thru google and I can't find a proper explanation about the difference between capture card and recording software. Which is better at recording/streaming my gameplay.

Can someone give pros and cons between those two, and give some advice which would be better for certain situations ?

My current hardware:
Case: Corsair Obsidian 550D
MB: Asus Z87 Pro (V Edition)
CPU: Intel i7-4770 3.40ghz - 3.90ghz
CPU Cooler: Corsair H80i Liquid Cooling
RAM: Kingston HyperX Beast 16Gb 2400mhz (2x8)
GPU: Gigabyte G1 Gaming GTX 970 4gb
Audio: Realtek High Definition Audio
PSU: Corsair RM750 Gold Plus
SSD: Samsung 850 Pro 256gb
HDD: WD Black 1T 7200rpm 64mb + Samsung HD103SJ 1T 7200rpm 64mb
OS: Windows 10 Pro 64bit
Monitor: BenQ XL2720Z 144hz
 

MonkeyDot

Reputable
Sep 1, 2015
6
0
4,510
Recording software uses your computer to record, the capture card does it itself. This means that capture cards result in no impact in performance, while recording software might. But nowadays recording software is well optimized (see Shadowplay), so the impact is minimal.
 

aznricepuff

Honorable
Oct 17, 2013
677
0
11,360
A capture card is a physical piece of hardware - usually a PCI-e add-in card - that accepts and records a video signal. To capture PC footage using a capture card you need to have a second PC - the primary PC runs the games/programs to be captured and sends the video signal (usually via HDMI or DVI) to the second PC that actually contains the capture card. The second PC is the one that actually does the recording. The advantage of this method is that because all the capture and video encoding is done on a separate PC, you get no performance hit on your primary gaming PC while capturing.

Capture software is a piece of software that captures and encodes or streams video on the same PC that is running the game/program being recorded. Because capture and encoding is happening on the same PC, you will experience a performance hit whenever you are actively recording. The advantage of capture software is that it is usually much cheaper than a capture card (OBS is free, Dxtory is the equivalent of like $30 depending on current exchange rates vs. ~$100 for the cheapest HD capture cards) and oftentimes more flexible (not all capture cards support simultaneous audio recording with the video, almost none support recording more than one audio stream, and capture cards tend to only work with certain standard resolutions/framerates).

Given your setup, I recommend just using capture software. Your CPU is fast enough that the performance hit when recording shouldn't be too bad. OBS is a great free option to start with. Dxtory is also good (but not free) and is what I prefer. Stay away from FRAPS, though. It's probably the most well-known but OBS and Dxtory outclass it in almost every way.
 
Capture cards aren't complex enough for recording PC games, and are only useful for recording console games.
Capture software is flexible enough to either just simply record gameplay, or to also record gameplay from multiple sources and have things like banners or text crawls and multiple video/audio sources, ect.
 
I do not capture gameplay video, but perhaps the following video comparison between nVidia ShadowPlay (software) and AverMedia Live Gamer Portable (hardware) can shed some light.

https://www.youtube.com/watch?v=tAdefhx6QS8


Since you already have a nVidia GPU, you might as well give ShadowPlay a spin since it will not cost you any extra money. Since you have an Intel CPU you could also give OBS a shot which is a free capture software which allows you to use Quicksync. The one downside is that the video quality will not be as high as using other hardware / software that records using the H.264 codec, but Quicksync will have very low impact on performance.

https://www.youtube.com/watch?v=idhkZy-tMTU
 


OBS has h.264 by default actually. QuickSync would only help if you were using integrated graphics.
 

aznricepuff

Honorable
Oct 17, 2013
677
0
11,360
QuickSync will always be less of a performance hit than software h.264 encoders (like the x264 encoder that OBS uses by default). And you do not need to be using the iGPU for rendering in order to use QuickSync (though you obviously still need to have an intel iGPU available).
 

djazzoff

Honorable
Jan 9, 2014
19
0
10,510
Sorry for not replying sooner, was at work and had no internet connection. So while I was searching for information before I posted here, I found those few u mentioned here, that there are capture cards who have bad sync with audio, and that external(portable) capture card with usb 2.0 will have problems with OBS, might not record sound, while usb 3.0 records sound and almost without a delay.

I have actually been using OBS for my streams and recording, but the quality in OBS is like colors are loosing it's depth, and becoming blurry. Not to mention that I was unable to edit recorded files with Adobe Studio cuz it could not detect the file format, which was actually a .flv format.

I used Dxtory too, it had good quality and I liked the performance, but file sizes where huge as it outputs raw uncompressed files and it seems I would need an extra HDD to record all that gameplay footage.

I have used ShadowPlay too, and I have to say it's bad for streaming, but it's quite good with recording. ShadowPlay outputs compressed files which is good for file size, but I heard rumors that compressed files are not good for editing, cuz even if u try to get a smaller file size out of your video file, u might not be able, cuz it's already compressed to it's limits, so raw seems to be the best option for editing.

So now I have another question: If I use Dxtory for recording and OBS for streaming at the same time, it might have impact on performance cuz two programs would be basically doing the same thing, one would be recording and writing data to hard drive to store it for editing, other would be recording and storing data temporarily for streaming and deleting data after the stream is stopped. Would it not be better to use internal/external capture card for recording and storing data to hard drive, which will remove it's impact on performance and use OBS to stream, which might not take so much resources ?
 

turbopixel

Reputable
May 18, 2015
1,189
1
5,960
I can recommend you HD PVR Rocket:
> http://hauppauge.com/site/products/data_hdpvr_rocket.html
It records any hdmi source indipendently to external drives without using a pc. Its small and portable device. I have it myself and it works very easy.

Otherwise, Nvidias driver software Nvidia Experience have a recording feature, which does only use very small percentage of graphics cards souce. You can start and stop recordings by keyboard shortcuts and you can save last one to 20 min of gameplay by key shortcuts. Edit: oh i read it, you already covered the ShadowPlay in your last posting.

These solutions aren't for live streaming.
 

aznricepuff

Honorable
Oct 17, 2013
677
0
11,360

Quality in OBS can be whatever you want it to be - you just have to tweak the encoder settings. The default encoder settings were chosen to work well with streaming (where bandwidth is a big issue) and will therefore not result in the best quality. I'm not sure why OBS is outputting flv files - it should create mp4 files containing h.264-encoded streams by default.


Shadowplay has one major benefit and that is the near-zero performance cost associated with it when recording. Because of this it's also the only practical way to record in 4k unless you have a beast of a computer. The major downside of shadowplay is that it has horrible quality, relatively speaking. A 50 Mbps 1080p60 video encoded by shadowplay will have worse image quality than an x264-encoded video at half the bitrate.

As for being able to edit shadowplay-encoded videos - this is not a problem. You can always re-encode shadowplay videos to a lower bitrate. You just have to be wary of quality loss when you do it - but this is the same deal whenever you re-encode a video with a lossy codec.


I don't think Dxtory and OBS will play well with each other. Both use DirectX API hooks to capture video and in general trying to have multiple hooks on one application just ends up in one or more hooks failing to work properly.

As an alternative: you can stream and record at the same time with OBS with some tweaking: https://obsproject.com/forum/resources/how-to-stream-to-two-locations-or-stream-and-record-at-different-qualities.74/

That post also claims OBS is planning native support for that feature. I'm not sure if it's been implemented yet, though.

A final option is to stream with OBS while recording with shadowplay. Shadowplay uses a different method to grab footage (pretty sure it lifts it directly from GPU frame buffers) so unlike Dxtory it can be used at the same time as OBS without problems. This method also has the advantage of not having a double performance hit for running two encodes at the same time, since the performance cost of shadowplay is basically zero.
 

djazzoff

Honorable
Jan 9, 2014
19
0
10,510
I'm looking to the future, I want to be able to stream and record my games in 1080p60, but u are saying, that shadowplay looses quality. Any advice to that ?
 
OBS can record crazy high quality if you want.
https://obsproject.com/forum/resources/how-to-make-high-quality-local-recordings.16/
I have my CRF set at 5 on my i7-4790k system and a 2 hour 1080p 60fps video came out at 78gigs. (Let me take abreak MGSV)
It looks really smooth and amazing quality, but again, that size. I'll need to play with the settings some more, but I kinda like it for hearthstone videos, as they come out looking as good as me actually playing them: https://www.youtube.com/watch?v=qnSKDT604Lc
 

djazzoff

Honorable
Jan 9, 2014
19
0
10,510


These settings will work with simple recording, but not streaming, I found out, that downscaling the resolution improves stream quality. Hm... I wonder if decreasing x264 CPU Preset to lower will improve quality in exchange of more cpu usage + will I be able to stream without frame drops ?

So far my OBS settings are:
Max Bitrate: 3000kb/s (same buffer)
Base Resolution: 1920x1080
Resolution downscale: 1.50(1280x720)
FPS: 60
Use Multithreaded Optimizations cheked
Process Priority: Normal
x264 CPU Preset: faster
Encoding profile: main
Keyframe interval: 2
Use CFR cheked

With these settings I'm getting quite good stream quality, but if I change to fullHD it gets pixelated :/ Same with the recording ... So thats why I'm interested in internal/external capture cards, cuz I could record in FullHD and stream in the same range, but if it's possible with software and have a good quality, I would prefer software then, cuz it costs less, but in expence of performance.
 
Your Upload speed will also determine how high of quality you can stream games, and playing online while streaming hinders that as well a bit.
Setting up any stream will take a lot of time to get it to have the right settings for your system, internet speeds and stream server location.

One thing to consider is that higher bitrates/quality streams can actually prevent viewers from being able to see your stream, because you'll exceed what they can get back from you.
 

djazzoff

Honorable
Jan 9, 2014
19
0
10,510


So should I stream in 720p60 ? That way all viewers should get the stream right ?