More encoding option of NVENC on windows 10

Afor1zm

New Member
Hello, guys!
There is any possibility to add more option in NVENC encoding? There is only bitrate option, preset, key-frame, profile, level and B-frames.
I think this encoding options may have more option.I think GPU can encoding a little better. I'm tried looking for any answers in forum, but didn't find something usefull.
Thank you.
 

RytoEX

Forum Admin
Forum Moderator
Developer
FFmpeg (which is used for NVENC support) certainly supports other very granular settings, and you can access those if you use Custom Output (FFmpeg). You can see all of these options if you have the FFmpeg executable installed by running:
Code:
ffmpeg -h encoder=h264_nvenc

A somewhat outdated list of FFmpeg NVENC options can be found here.

However, most users will never need to touch those settings, and people really shouldn't try to use them unless they really understand what they do. Most of the quality and efficiency gains for hardware encoding lately have been made with newer hardware and newer drivers rather than tweaking encoder settings. At the very least, anyone who uses them should probably not expect to receive support. Custom FFmpeg settings are simply outside the scope of things that we can realistically support.
 

Afor1zm

New Member
FFmpeg (which is used for NVENC support) certainly supports other very granular settings, and you can access those if you use Custom Output (FFmpeg). You can see all of these options if you have the FFmpeg executable installed by running:
Code:
ffmpeg -h encoder=h264_nvenc

A somewhat outdated list of FFmpeg NVENC options can be found here.

However, most users will never need to touch those settings, and people really shouldn't try to use them unless they really understand what they do. Most of the quality and efficiency gains for hardware encoding lately have been made with newer hardware and newer drivers rather than tweaking encoder settings. At the very least, anyone who uses them should probably not expect to receive support. Custom FFmpeg settings are simply outside the scope of things that we can realistically support.


Much thanks for your answer!
Can you say how can i use Custom output?
 

RytoEX

Forum Admin
Forum Moderator
Developer
Much thanks for your answer!
Can you say how can i use Custom output?
Select "Advanced" for your Output Mode. Under the Recording Tab, select "Custom Output (FFmpeg)" for the Type setting. You'll need to select a Container Format before the encoder dropdowns become available.
 

Afor1zm

New Member
Select "Advanced" for your Output Mode. Under the Recording Tab, select "Custom Output (FFmpeg)" for the Type setting. You'll need to select a Container Format before the encoder dropdowns become available.

And i need to find somewhere ffmpeg programm?
 

RytoEX

Forum Admin
Forum Moderator
Developer
And i need to find somewhere ffmpeg programm?
No. FFmpeg is already used by OBS, just not in executable/binary form. You don't need to download and install FFmpeg separately to use Custom Output (FFmpeg).
 

RytoEX

Forum Admin
Forum Moderator
Developer
So i can't use it for streaming? Only for recording?

Correct. Custom Output (FFmpeg) is only supported for recording.

I may be wrong, but I don't think you stand to gain much with minor optimizations to a hardware encoder used for streaming when the streaming service is going to transcode your stream anyway. If you could please explain exactly what problem you're having with hardware encoding while streaming, other than saying that the quality could be better, then perhaps someone with some expertise could provide some knowledge here.

In any case, I don't think this is a Resource Request.
 

Afor1zm

New Member
Correct. Custom Output (FFmpeg) is only supported for recording.

I may be wrong, but I don't think you stand to gain much with minor optimizations to a hardware encoder used for streaming when the streaming service is going to transcode your stream anyway. If you could please explain exactly what problem you're having with hardware encoding while streaming, other than saying that the quality could be better, then perhaps someone with some expertise could provide some knowledge here.

In any case, I don't think this is a Resource Request.

Thank you for your time! Thanks for all your answers.
I don't have any problem with recording or streaming. I just want to try do something for improve picture when use NVENC for streaming. If this is not for Resource Requset, can you tell when should i start new topic?
 

RytoEX

Forum Admin
Forum Moderator
Developer
Thank you for your time! Thanks for all your answers.
I don't have any problem with recording or streaming. I just want to try do something for improve picture when use NVENC for streaming. If this is not for Resource Requset, can you tell when should i start new topic?
Ideally, if your system had enough CPU to go around, you wouldn't use NVENC for streaming at all. You would use x264, which is better suited for streaming bitrates. Bitrate will be the limiting factor in stream quality, and that is what will most affect encoder output quality.

Now, if your system doesn't have enough CPU to do that, but you have a lot of extra bandwidth on your Internet connection, and you're streaming to a site that allows huge amounts of bandwidth on their streaming ingests (like YouTube), then yeah, you could use NVENC and crank up the bitrate to something really high, like 50,000 kbps.

No need to make a new thread. I'll wave down a mod and see if this needs to be moved.
 
Top