--- branches/dev-api-4/xvidcore/vfw/src/config.c 2003/10/28 23:42:09 1193 +++ branches/dev-api-4/xvidcore/vfw/src/config.c 2003/11/11 16:25:39 1203 @@ -179,12 +179,10 @@ /* 2pass2 */ {"keyframe_boost", ®.keyframe_boost, 0}, - {"kftreshold", ®.kftreshold, 10}, {"kfreduction", ®.kfreduction, 20}, {"curve_compression_high", ®.curve_compression_high, 0}, {"curve_compression_low", ®.curve_compression_low, 0}, - {"bitrate_payback_delay", ®.bitrate_payback_delay, 250}, - {"bitrate_payback_method", ®.bitrate_payback_method, XVID_PAYBACK_BIAS }, + {"overflow_control_strength", ®.overflow_control_strength, 10}, {"twopass_max_overflow_improvement", ®.twopass_max_overflow_improvement, 60}, {"twopass_max_overflow_degradation", ®.twopass_max_overflow_degradation, 60}, @@ -791,17 +789,14 @@ case IDD_RC_2PASS2 : SetDlgItemText(hDlg, IDC_STATS, config->stats); SetDlgItemInt(hDlg, IDC_KFBOOST, config->keyframe_boost, FALSE); - SetDlgItemInt(hDlg, IDC_KFTRESHOLD, config->kftreshold, FALSE); SetDlgItemInt(hDlg, IDC_KFREDUCTION, config->kfreduction, FALSE); + SetDlgItemInt(hDlg, IDC_OVERFLOW_CONTROL_STRENGTH, config->overflow_control_strength, FALSE); SetDlgItemInt(hDlg, IDC_OVERIMP, config->twopass_max_overflow_improvement, FALSE); SetDlgItemInt(hDlg, IDC_OVERDEG, config->twopass_max_overflow_degradation, FALSE); SetDlgItemInt(hDlg, IDC_CURVECOMPH, config->curve_compression_high, FALSE); SetDlgItemInt(hDlg, IDC_CURVECOMPL, config->curve_compression_low, FALSE); - SetDlgItemInt(hDlg, IDC_PAYBACK, config->bitrate_payback_delay, FALSE); - CheckDlgButton(hDlg, IDC_PAYBACKBIAS, (config->bitrate_payback_method == XVID_PAYBACK_BIAS)); - CheckDlgButton(hDlg, IDC_PAYBACKPROP, (config->bitrate_payback_method == XVID_PAYBACK_PROP)); break; case IDD_ZONE : @@ -907,23 +902,21 @@ lstrcpy(config->stats, CONFIG_2PASS_FILE); config->keyframe_boost = GetDlgItemInt(hDlg, IDC_KFBOOST, NULL, FALSE); - config->kftreshold = GetDlgItemInt(hDlg, IDC_KFTRESHOLD, NULL, FALSE); config->kfreduction = GetDlgItemInt(hDlg, IDC_KFREDUCTION, NULL, FALSE); + CONSTRAINVAL(config->keyframe_boost, 0, 1000); + config->overflow_control_strength = GetDlgItemInt(hDlg, IDC_OVERFLOW_CONTROL_STRENGTH, NULL, FALSE); config->twopass_max_overflow_improvement = config_get_uint(hDlg, IDC_OVERIMP, config->twopass_max_overflow_improvement); config->twopass_max_overflow_degradation = config_get_uint(hDlg, IDC_OVERDEG, config->twopass_max_overflow_degradation); CONSTRAINVAL(config->twopass_max_overflow_improvement, 1, 80); CONSTRAINVAL(config->twopass_max_overflow_degradation, 1, 80); + CONSTRAINVAL(config->overflow_control_strength, 0, 100); config->curve_compression_high = GetDlgItemInt(hDlg, IDC_CURVECOMPH, NULL, FALSE); config->curve_compression_low = GetDlgItemInt(hDlg, IDC_CURVECOMPL, NULL, FALSE); - config->bitrate_payback_delay = config_get_uint(hDlg, IDC_PAYBACK, config->bitrate_payback_delay); - config->bitrate_payback_method = IsDlgChecked(hDlg, IDC_PAYBACKPROP) ? XVID_PAYBACK_PROP : XVID_PAYBACK_BIAS; - - CONSTRAINVAL(config->bitrate_payback_delay, 1, 10000); - CONSTRAINVAL(config->keyframe_boost, 0, 1000); CONSTRAINVAL(config->curve_compression_high, 0, 100); CONSTRAINVAL(config->curve_compression_low, 0, 100); + break; case IDD_ZONE :