diff --git a/src/cfg.c b/src/cfg.c index 6f3cbfef..fd8a7118 100644 --- a/src/cfg.c +++ b/src/cfg.c @@ -207,6 +207,8 @@ int uvg_config_init(uvg_config *cfg) cfg->lfnst = false; + cfg->isp = false; + parse_qp_map(cfg, 0); cfg->jccr = 0; @@ -1450,6 +1452,9 @@ int uvg_config_parse(uvg_config *cfg, const char *name, const char *value) else if OPT("lfnst") { cfg->lfnst = atobool(value); } + else if OPT("isp") { + cfg->isp = atobool(value); + } else if OPT("jccr") { cfg->jccr = (bool)atobool(value); } diff --git a/src/cli.c b/src/cli.c index 53f2df9b..8beb1b0f 100644 --- a/src/cli.c +++ b/src/cli.c @@ -178,6 +178,8 @@ static const struct option long_options[] = { { "no-mip", no_argument, NULL, 0 }, { "lfnst", no_argument, NULL, 0 }, { "no-lfnst", no_argument, NULL, 0 }, + { "isp", no_argument, NULL, 0 }, + { "no-isp", no_argument, NULL, 0 }, { "jccr", no_argument, NULL, 0 }, { "no-jccr", no_argument, NULL, 0 }, { "amvr", no_argument, NULL, 0 }, @@ -662,6 +664,7 @@ void print_help(void) " --(no-)mip : Enable matrix weighted intra prediction.\n" " --(no-)lfnst : Enable low frequency non-separable transform.\n" " [disabled]\n" + " --(no-)isp : Enable intra sub partitions. [disabled]\n" " --mts : Multiple Transform Selection [off].\n" " (Currently only implemented for intra\n" " and has effect only when rd >= 2)\n" diff --git a/src/uvg266.h b/src/uvg266.h index 1801c8ac..5a6a27aa 100644 --- a/src/uvg266.h +++ b/src/uvg266.h @@ -526,6 +526,8 @@ typedef struct uvg_config /** \brief enable low frequency non-separable transform */ int8_t lfnst; + /** \brief enable intra sub partitions*/ + int8_t isp; int8_t jccr;