OBS 0.63b test 3

Status
Not open for further replies.

kryteris

New Member
I just updated to build 3, from 1. The patch note: "Disable QSV encoder settings if QSV isn't selected as encoder " -- I have an issue with this. I cannot click the check box, or enable these settings and I have QSV selected as the active encoder.
 

Xstersia

New Member
I just updated to build 3, from 1. The patch note: "Disable QSV encoder settings if QSV isn't selected as encoder " -- I have an issue with this. I cannot click the check box, or enable these settings and I have QSV selected as the active encoder.
Your talking about Quick Sync Encoder section being faded out? if so try this.

Quick sync encoder section is faded out when going to quick sync encoder go to: %appdata%/roaming/OBS/profiles and click on your profiles name and add the following:

UseCustomParams=1

Like this:
[QSV (Advanced)]
BufferSizeInKB=0
MaxKbps=0
TargetKbps=1000
UseCustomParams=1

Save and check quick sync box under encoding then go to quick sync encoder.
 
Within the NVENC_Export plugin for Premiere Pro, I'm able to adjust many settings to get exactly the result I'm looking for.
The NVENC plugin for OBS just has static presets.

Is there in the pipeline similar configurability for NVENC as those options recently introduced for QSV?
 

Boildown

Active Member
Within the NVENC_Export plugin for Premiere Pro, I'm able to adjust many settings to get exactly the result I'm looking for.
The NVENC plugin for OBS just has static presets.

Is there in the pipeline similar configurability for NVENC as those options recently introduced for QSV?
As I recall from the NVEnc feedback thread: https://obsproject.com/forum/threads/nvenc-feedback-thread.10234 there was a way to custom configure the NVEnc encoder with one of the text files it writes / accesses. In the end I didn't bother with it because it was better to just run a fast-enough preset and throw bitrate at it, so I don't know if it actually works.
 

LoopesSPT

New Member
Well, here are my problems with all 3 test versions:

All of them, the anti-hack solution doesn't work, the anti-hacking tools detect obs as a hack even when i select the capture as "Anti-cheat compatibility hooking", it only works in the stable version.

That is my only complaint because, with the test versions i can capture directx 8 and that is awesome because many of the games i play use it. The only problem is games like Metin2: Are DirectX 8 and use Anti-Cheat, so... it crashes my game because of it... for the rest it is fine it captures but crashes right away.

And the test version 3, doesn't detect Wrestling MPire Remix(and probably other MDickie games...)
 
As I recall from the NVEnc feedback thread: https://obsproject.com/forum/threads/nvenc-feedback-thread.10234 there was a way to custom configure the NVEnc encoder with one of the text files it writes / accesses. In the end I didn't bother with it because it was better to just run a fast-enough preset and throw bitrate at it, so I don't know if it actually works.
Ah, now I have a place to look.

I know NVENC can produce pretty decent results above the standard presets - i've been using it to render my youtube vids for 3 months now and it's never produced shoddy output.

I'll have a fiddle and let you know.

Aim: To get NVENC looking as (subjectively) good as the x264 Medium preset.
 

Boildown

Active Member
Aim: To get NVENC looking as (subjectively) good as the x264 Medium preset.
Hah... well, good luck. Even if that's possible, there's no way the NVEnc chip that does the encoding will be capable of doing that in real time on a live stream bigger than a postage stamp, its just too slow (doesn't seem to be a requirement of yours, but I'm not aware of how to configure OBS to do non-live-stream encoding). And it may help to ask BtbN how to configure NVEnc, as he's the one who contributed the code.
 
Hah... well, good luck. Even if that's possible, there's no way the NVEnc chip that does the encoding will be capable of doing that in real time on a live stream bigger than a postage stamp, its just too slow (doesn't seem to be a requirement of yours, but I'm not aware of how to configure OBS to do non-live-stream encoding). And it may help to ask BtbN how to configure NVEnc, as he's the one who contributed the code.
Given up for today already.

Boosting any of the nvenc_conf options result in "taking to long" error messages and duplicated frames.

*sigh* i guess I'll have to put the 4790k through it's paces - i'd prefer not to purely for the heat and noise, but I want decent quality for the stream.

nvenc on the BD preset @ 25000k bitrate looks stellar by the way, at 2500k it looks like streaming video from 2003.
 

Sapiens

Forum Moderator
If you have a 4790K you absolutely should be using x264 for streaming anyway. In general the only time you'd want to use Quick Sync or NVENC is when your CPU can't keep up with encoding, which should be pretty rare with that hardware.
 

AlderaaN

Member
If you have a 4790K you absolutely should be using x264 for streaming anyway. In general the only time you'd want to use Quick Sync or NVENC is when your CPU can't keep up with encoding, which should be pretty rare with that hardware.
Hello.

Regarding your recommendation, it really depends on the content one's streaming.

When streaming an all-bells-and-whistles 3D FPS such as ARMA3, BF4, Crysis 3... heck even an ARPG like Diablo 3 - one would benefit much more from Quick Sync (I haven't tried NVENC) over x264 in terms of performance.

When doing so, looking at it from a picture quality standpoint, the differences between x264 and Quick Sync are barely noticeable, if that.

The reason why one could get away with it is because we're not talking about "Video Reference" quality.
In most cases, the people who stream are doing so with a service which can't handle "high-enough" bit-rates properly, for whatever reason.
Twitch.tv comes to mind first (at least for now, who knows what kind of ramifications will the Amazon buyout bring to the table), when the content that's being streamed to it is anything above 4-4.5Mbit/sec.

When streaming gaming content on my rig that's featured here, the performance difference is noticeable so much, that I continue to stick by Quick Sync over x264 with any gaming content I stream.


Regards,
 

Sapiens

Forum Moderator
So basically a long version of what I just said. :P If you take an unreasonable performance hit with x264 (BF4 is certainly a good example of this, ArmA 3 less so), by all means switch to Quick Sync. Hardware encoders should be a fallback, not a first choice.
 

AlderaaN

Member
So basically a long version of what I just said.

Hardware encoders should be a fallback, not a first choice.
Hi,

No, that's not what I said and at the current state of online gaming streaming as I described here, I think that Hardware-based encoders present a noticeable performance gain but hardly (if that) a noticeable quality loss.

That's why I think they (QSV at the very least. Can't speak for NVENC since I haven't tested it) should be the go-to encoding choice for streaming gaming sessions, at least until we see a true performance-leap in terms of raw CPU processing power.

Even when it comes to offline gaming sessions which I want to record every now and then, I still use R1CH's CRF-based recommendation with great results but with a twist: I employ QSV instead of x264.
From there, if I do require to apply some compression in order to upload it somewhere in a timely manner, I simply pass it through HandBrake.
Yes, even after passing it through HandBrake it still saves plenty of upload time since I'm dealing with "raw" CRF18 1080p 30/60FPS content.
 

dodgepong

Administrator
Forum Admin
I haven't been paying close attention to jackun's work, and I'm not sure if that's ready for incorporation yet. I suppose it's up to him to submit a pull request, so you can ask him.
 

icycrash

New Member
I haven't been paying close attention to jackun's work, and I'm not sure if that's ready for incorporation yet. I suppose it's up to him to submit a pull request, so you can ask him.
Well I've been watching hes thread and been using his version and it has came very far. I was just kinda looking to see if it is planned to be added in at some point.
 

Jack0r

The Helping Squad
Forum Moderator
I personally would not put the performance in the most important position here, but the resulting quality of a stream with a certain bitrate. (We want to produce quality streams right? that most possible viewers can watch?) And I guess AlderaaN is only talking about Haswell Quicksync, as its quality got a lot better than in previous generations.
From what I have seen from nvenc, it is not good for bitrates below 10-16mbps (my rough guess), and AMD VCE as soon as jackun tried to get some kind of CBR out of it, crapped the bed too. I think that is his main problem, for recording it can potentially already be used, but for streaming the bitrate usage would kill everyones connection.

In the end you will currently, from all tests I have seen, get the best bitrate/quality out of x264, haswell quicksync as mentioned has come quite close, older generation quicksync or nvenc/amdvce mostly need, depending on the situation, more than double the bitrate to look as good. (And then we have the other hardware encoders that need even more bitrate.)
So, in my experience Sapiens is correct. Only if your CPU is limited and you cannot use x264 without problems, quicksync can be used as an alternative. If then, no quicksync is available, nvenc/amdvce could be used, but my suggestion would be a CPU upgrade.
 
I personally would not put the performance in the most important position here, but the resulting quality of a stream with a certain bitrate. (We want to produce quality streams right? that most possible viewers can watch?) And I guess AlderaaN is only talking about Haswell Quicksync, as its quality got a lot better than in previous generations.
From what I have seen from nvenc, it is not good for bitrates below 10-16mbps (my rough guess), and AMD VCE as soon as jackun tried to get some kind of CBR out of it, crapped the bed too. I think that is his main problem, for recording it can potentially already be used, but for streaming the bitrate usage would kill everyones connection.

In the end you will currently, from all tests I have seen, get the best bitrate/quality out of x264, haswell quicksync as mentioned has come quite close, older generation quicksync or nvenc/amdvce mostly need, depending on the situation, more than double the bitrate to look as good. (And then we have the other hardware encoders that need even more bitrate.)
So, in my experience Sapiens is correct. Only if your CPU is limited and you cannot use x264 without problems, quicksync can be used as an alternative. If then, no quicksync is available, nvenc/amdvce could be used, but my suggestion would be a CPU upgrade.
My current setup is 2xOBS instances.

1 for streaming:
x264 medium preset, 2500kbps - 720p@30

1 for local recording of the stream:
nvenc, BD Preset, 25mbps - 1080p@60

You see, I was hoping to use the export to youtube feature on twitch - hence trying to push for the BEST quality possible.
I can now see that the above is currently the only really useable implementation of Nvenc for me.

Overall performance hit is noticeable but not unmanagable.
 

Boildown

Active Member
NotMeAgain: Very similar setup to what I do.

As far as hardware H.264 encoders go, the Haswell-edition of Quicksync is in a class of its own. So don't judge them all by that one good example. Props to Intel for making it.

The other hardware encoders are still useful in situations where you can crank the bitrate enough. Like 2 PC streaming over ethernet, or saving to disk.
 

R1CH

Forum Admin
Developer
The settings saving bug has been identified and fixed. Are there any other outstanding bugs with the test build?
 
Status
Not open for further replies.
Top