-
Notifications
You must be signed in to change notification settings - Fork 118
Description
If you run a command to encode like so:
nvencc --y4m -i "src.y4m" -c av1 --cqp 128 -u quality --lookahead 32 --lookahead-level 3 -o "off.ivf"
nvencc
will report during encoding that AQ is off. If you then run another command to make another encode, this time with AQ on, i.e.:
nvencc --y4m -i "src.y4m" -c av1 --cqp 128 -u quality --lookahead 32 --lookahead-level 3 --aq -o "on.ivf"
nvencc
this time will report that AQ is on (spatial, strength auto)
. However, if you look at the files, you'll note that not only are they the same size, but they're also the same hash, e.g.:
md5sum *.ivf
83cd11d37312304279b06a44924c40fe off.ivf
83cd11d37312304279b06a44924c40fe on.ivf
This appears to happen any time that the lookahead level is raised above the default; i.e. whenever it is set to 1, 2, or 3, turning --aq
on or off has no effect (presumably it is disabled). There is no warning or error in nvencc
about this—it happens silently, and nvencc's printed output will still show AQ being on/off as if it were changing things.
This also affects codecs other than AV1, e.g. H.265, and I think it may affect H.264 as well (though I tend to prefer hierarchical B-frames over lookahead there, and those options are mutually exclusive, so I haven't tested this).