How to see default NVENC hevc options in ffmpeg

936 views Asked by At

I am trying to use the hevc_nvenc encoder in ffmpeg to reencode an old video I have. Obviously software encoding using libx265 would be better, but I want to make in fast. I am trying to optimize for video quality, so I am using these options:

-profile:v main -b_ref_mode 0 -preset p7 -tune hq -rc vbr

b_ref_mode 0 since my gpu doesn't support bframe reference mode.

This gives results with average bitrate of around 2M, so I am guessing that is the default bitrate setting for nvenc. Increasing -b:v increases average bitrate, but around 6.5M it stops. Even using -b:v 50M gives the same video bitrate. I have also tried setting -cq 1 to force the best quality possible, but that actually decreases bitrate to around 4.5M. The only way I found to get the desired bitrate is using -cq 1 and -maxrate set to a big value. This removes the restriction, and actually the -b:v option is no longer needed, it seems like it doesn't have any effect at all.

All of this behaviour seems very strange to me, with some hidden default values for bitrate and maxrate, so the question is where can I see these values? I tried using ffmpeg with -loglevel debug but didn't see these values getting passed, and the documentation I found says maxrate default in ffmpeg is 0 (what does this mean?).

1

There are 1 answers

2
echoxxzz On
ffmpeg.exe -h encoder=hevc_nvenc