diff --git a/src/cfg.c b/src/cfg.c index 104f90f1..86ebc869 100644 --- a/src/cfg.c +++ b/src/cfg.c @@ -655,18 +655,32 @@ int kvz_config_parse(kvz_config *cfg, const char *name, const char *value) cfg->cqmfile = strdup(value); else if OPT("tiles-width-split") { int retval = parse_tiles_specification(value, &cfg->tiles_width_count, &cfg->tiles_width_split); + if (cfg->tiles_width_count > 1 && cfg->tmvp_enable) { cfg->tmvp_enable = false; fprintf(stderr, "Disabling TMVP because tiles are used.\n"); } + + if (cfg->wpp) { + cfg->wpp = false; + fprintf(stderr, "Disabling WPP because tiles were enabled.\n"); + } + return retval; } else if OPT("tiles-height-split") { int retval = parse_tiles_specification(value, &cfg->tiles_height_count, &cfg->tiles_height_split); + if (cfg->tiles_height_count > 1 && cfg->tmvp_enable) { cfg->tmvp_enable = false; fprintf(stderr, "Disabling TMVP because tiles are used.\n"); } + + if (cfg->wpp) { + cfg->wpp = false; + fprintf(stderr, "Disabling WPP because tiles were enabled.\n"); + } + return retval; } else if OPT("tiles") @@ -699,6 +713,11 @@ int kvz_config_parse(kvz_config *cfg, const char *name, const char *value) fprintf(stderr, "Disabling TMVP because tiles are used.\n"); } + if (cfg->wpp) { + cfg->wpp = false; + fprintf(stderr, "Disabling WPP because tiles were enabled.\n"); + } + return 1; } else if OPT("wpp") diff --git a/src/cli.c b/src/cli.c index 527e5aba..15dc2e77 100644 --- a/src/cli.c +++ b/src/cli.c @@ -445,7 +445,9 @@ void print_help(void) " in which case it produces rows of uniform height.\n" "\n" " Wpp:\n" - " --wpp : Enable wavefront parallel processing\n" + " --wpp, --no-wpp : Wavefront parallel processing [enabled]\n" + " Enabling tiles automatically disabled WPP. To enable\n" + " WPP with tiles, re-enable it after enabling tiles.\n" " --owf |auto : Number of parallel frames to process. 0 to disable.\n" "\n" /*" Slices:\n"