libheif icon indicating copy to clipboard operation
libheif copied to clipboard

Pass-through parameters to encoders

Open macdavis opened this issue 1 month ago • 1 comments

It seems at the moment, the parameters passed through the encoder must be in a format of -p x265:ctu=64, with certain values. Some parameters don't have a value, e.g. --use-16bit-internal in AOM. Is it possible to pass such parameters to the encoder?

macdavis avatar Nov 04 '25 05:11 macdavis

They aren't the command-line parameters, they're the internal parameter names in the api, so you have to understand the API and what it expects. (For x265 and AOM, fortunately, the two are usually the same. Unlike, say, SVT-AV1.) In this case, if you look through the API, you'll see that config->use-16bit-internal expects a 0 or 1 value, and if aom wasn't built with CONFIG_AV1_HIGHBITDEPTH=1, it'll be ignored.

It's unfortunate you always have to go check, but for arguments that don't take a value it's pretty common for it to be 0 or 1. It's trickier when an argument like that modifies the value of another set name.

silverbacknet avatar Nov 04 '25 06:11 silverbacknet