Commit b3272c48a7 for aom
commit b3272c48a7e49facb72c6cf8c8cb2e2fa3d20a25
Author: James Zern <jzern@google.com>
Date: Thu Apr 30 12:15:13 2026 -0700
aomenc: add --validate-hbd-input option
This allows control of the `AOME_SET_VALIDATE_INPUT_HBD` codec control.
The default is true (enabled).
Change-Id: I57b95f0af919fd820d2f1091d6d7924fe1180936
diff --git a/apps/aomenc.c b/apps/aomenc.c
index d79e974f98..4930495604 100644
--- a/apps/aomenc.c
+++ b/apps/aomenc.c
@@ -471,6 +471,7 @@ static const arg_def_t *const av1_key_val_args[] = {
&g_av1_codec_arg_defs.screen_detection_mode,
&g_av1_codec_arg_defs.sharpness,
&g_av1_codec_arg_defs.enable_adaptive_sharpness,
+ &g_av1_codec_arg_defs.validate_input_hbd,
NULL,
};
diff --git a/av1/arg_defs.c b/av1/arg_defs.c
index 5febc5a428..d775ef983a 100644
--- a/av1/arg_defs.c
+++ b/av1/arg_defs.c
@@ -721,5 +721,10 @@ const av1_codec_arg_definitions_t g_av1_codec_arg_defs = {
"Screen content detection mode (1: standard (default in good quality and "
"realtime modes), 2: anti-aliased text and graphics aware (default in "
"all intra mode))"),
+ .validate_input_hbd =
+ ARG_DEF(NULL, "validate-hbd-input", 1,
+ "Check that input samples are within the valid range "
+ "for the chosen bit depth with high bit depth encoding (0: "
+ "disabled, 1: enabled (default))"),
#endif // CONFIG_AV1_ENCODER
};
diff --git a/av1/arg_defs.h b/av1/arg_defs.h
index eb3c2f3987..16c553746f 100644
--- a/av1/arg_defs.h
+++ b/av1/arg_defs.h
@@ -239,6 +239,7 @@ typedef struct av1_codec_arg_definitions {
arg_def_t sb_qp_sweep;
arg_def_t enable_low_complexity_decode;
arg_def_t screen_detection_mode;
+ arg_def_t validate_input_hbd;
#endif // CONFIG_AV1_ENCODER
} av1_codec_arg_definitions_t;
diff --git a/av1/av1_cx_iface.c b/av1/av1_cx_iface.c
index a814a75537..fe0fe219ce 100644
--- a/av1/av1_cx_iface.c
+++ b/av1/av1_cx_iface.c
@@ -4847,6 +4847,9 @@ static aom_codec_err_t encoder_set_option(aom_codec_alg_priv_t *ctx,
} else if (arg_match_helper(&arg, &g_av1_codec_arg_defs.screen_detection_mode,
argv, err_string)) {
extra_cfg.screen_detection_mode = arg_parse_int_helper(&arg, err_string);
+ } else if (arg_match_helper(&arg, &g_av1_codec_arg_defs.validate_input_hbd,
+ argv, err_string)) {
+ extra_cfg.validate_input_hbd = arg_parse_int_helper(&arg, err_string);
} else {
match = 0;
snprintf(err_string, ARG_ERR_MSG_MAX_LEN, "Cannot find aom option %s",