Question / Help OBS 0.14.1 NVENC bitrate limit?

NalaNosivad

Member
I've been eagerly awaiting the release of 0.14.0 for a while now, hoping it would allow us to capture using lossless NVENC again (hopefully full chroma), something the MediaFoundation implementation didn't allow you to do. It turns out lossless hasn't been implemented yet (presumably it will in the future), but that isn't the issue here, rendering this opening completely pointless.

I've noticed something very strange with the bitrate text field when NVENC H.264 is selected as the encoder in the advanced output mode. It doesn't seem to allow you to set a bitrate higher than 90000. Using NVENC, that's just not a high enough bitrate for the level of quality I want. Using a QP of 1 with MediaFoundation in previous releases, I can end up with bitrates averaging over 400Mbps. I know that's very high, but it's the best balance of performance to quality I've found, especially with OBS. Space and disk bandwidth aren't concerns for me, where minimising CPU usage is, hence me wanting lossless NVENC if possible.

So I guess my question is... is this a known bug, or a limitation in the current implementation of NVENC? Will lossless support, hopefully full chroma be coming? Log attached, but... there doesn't seem to be anything helpful in there.

Log file here.

Thanks!
 

Attachments

  • 2016-04-27 13-08-49.txt
    20.1 KB · Views: 49

Boildown

Active Member
If you're so concerned about quality that you're willing to set insanely high bitrates, you should really be using High profile instead of Main. Also, why is your keyint so short? Don't have answers to your questions though, probably have to get a dev to answer them.
 

NalaNosivad

Member
Ah, yeah! None of those are my usual settings. Just something thrown together to get a log file generated showing the highest the bitrate can go.

You've actually got a good point about keyint, though. My usual is 1 to get the video as close to being I-frame only as possible, but considering the fact I transcode to utvideo before I throw it in my editor... that wouldn't be hugely necessary. You've given me something to look into, so thanks for that!
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
Woops, seems it does have lossless after all, I'll add it in for 0.14.2. Sorry about that.
 

Osiris

Active Member
I tried to add that to the list (in the code) but NVENC then failed to start.

EDIT: Seems to be because i have a GTX 770 which is a Kepler GPU.
 
Last edited:

Boildown

Active Member
I tried to add that to the list (in the code) but NVENC then failed to start.

EDIT: Seems to be because i have a GTX 770 which is a Kepler GPU.

You could alter which NVEnc presets are available by the model of Nvidia GPU they have... for example, here's the applicable line in the OBS Classic logs:

13:09:47: [ GPU #0 - < GeForce GTX 550 Ti > has Compute SM 2.1, NVENC Not Available ]
23:04:28: [ GPU #0 - < GeForce GTX 770 > has Compute SM 3.0, NVENC Available ]
16:25:42: [ GPU #0 - < GeForce GTX 750 Ti > has Compute SM 5.0, NVENC Available ]
22:56:52: [ GPU #0 - < GeForce GTX 970 > has Compute SM 5.2, NVENC Available ]

So basically, anything with SM 5.0 or greater has Maxwell and can do lossless, anything with less than SM 3.0 can't do NVEnc at all.
 
Last edited:

NalaNosivad

Member
Woops, seems it does have lossless after all, I'll add it in for 0.14.2. Sorry about that.
Ah man, you're the best. It's a relatively niche use-case, so I wouldn't be too concerned about missing it!

You could alter which NVEnc presets are available by the model of Nvidia GPU they have... for example, here's the applicable line in the OBS Classic logs:



So basically, anything with Shader Model 5.0 or greater has Maxwell and can do lossless, anything with less than Shader Model 3.0 can't do NVEnc at all.

Yeah, 2nd-gen Maxwell and on can do lossless. I'm pretty sure 1st-gen can't, though.
 

Boildown

Active Member
Just realized that SM in this context refers to "Streaming Multiprocessor" not "Shader Model". Got my wires crossed there.
 
Top