Add interlaced video vertical filter (#976)
This commit is contained in:
61
menu.cpp
61
menu.cpp
@@ -2820,7 +2820,7 @@ void HandleUI(void)
|
||||
|
||||
case MENU_VIDEOPROC1:
|
||||
helptext_idx = 0;
|
||||
menumask = 0x1FFF;
|
||||
menumask = 0x7FFF;
|
||||
OsdSetTitle("Video Processing");
|
||||
menustate = MENU_VIDEOPROC2;
|
||||
parentstate = MENU_VIDEOPROC1;
|
||||
@@ -2843,6 +2843,7 @@ void HandleUI(void)
|
||||
strcat(s, " \x16 ");
|
||||
MenuWrite(n++, s, menusub == 2, !video_get_scaler_flt(VFILTER_HORZ) || !S_ISDIR(getFileType(COEFF_DIR)));
|
||||
|
||||
|
||||
MenuWrite(n++);
|
||||
sprintf(s, " Vert filter: %s", video_get_scaler_flt(VFILTER_VERT) ? "From file" : "Same as Horz");
|
||||
MenuWrite(n++, s, menusub == 3, cfg.direct_video || !video_get_scaler_flt(VFILTER_HORZ));
|
||||
@@ -2863,31 +2864,42 @@ void HandleUI(void)
|
||||
strcat(s, " \x16 ");
|
||||
MenuWrite(n++, s, menusub == 6, !video_get_scaler_flt(VFILTER_SCAN) || !video_get_scaler_flt(VFILTER_HORZ) || !S_ISDIR(getFileType(COEFF_DIR)) || cfg.direct_video);
|
||||
|
||||
MenuWrite(n++);
|
||||
sprintf(s, " Intl filter: %s", video_get_scaler_flt(VFILTER_ILACE) ? "From file" : "Same as Horz");
|
||||
MenuWrite(n++, s, menusub == 7, cfg.direct_video || !video_get_scaler_flt(VFILTER_HORZ));
|
||||
strcpy(s, " ");
|
||||
if (strlen(video_get_scaler_coeff(VFILTER_ILACE))) strncat(s, video_get_scaler_coeff(VFILTER_ILACE), 25);
|
||||
else strcpy(s, " < none >");
|
||||
while (strlen(s) < 26) strcat(s, " ");
|
||||
strcat(s, " \x16 ");
|
||||
MenuWrite(n++, s, menusub == 8, !video_get_scaler_flt(VFILTER_ILACE) || !video_get_scaler_flt(VFILTER_HORZ) || !S_ISDIR(getFileType(COEFF_DIR)) || cfg.direct_video);
|
||||
|
||||
|
||||
MenuWrite(n++);
|
||||
sprintf(s, " Gamma correction - %s", (video_get_gamma_en() > 0) ? "On" : "Off");
|
||||
MenuWrite(n++, s, menusub == 7, video_get_gamma_en() < 0);
|
||||
MenuWrite(n++, s, menusub == 9, video_get_gamma_en() < 0);
|
||||
strcpy(s, " ");
|
||||
if (strlen(video_get_gamma_curve())) strncat(s, video_get_gamma_curve(), 25);
|
||||
else strcpy(s, " < none >");
|
||||
while (strlen(s) < 26) strcat(s, " ");
|
||||
strcat(s, " \x16 ");
|
||||
MenuWrite(n++, s, menusub == 8, (video_get_gamma_en() <= 0) || !S_ISDIR(getFileType(GAMMA_DIR)));
|
||||
MenuWrite(n++, s, menusub == 10, (video_get_gamma_en() <= 0) || !S_ISDIR(getFileType(GAMMA_DIR)));
|
||||
|
||||
MenuWrite(n++);
|
||||
sprintf(s, " Shadow Mask - %s", (video_get_shadow_mask_mode() < 0) ? config_smask_msg[0] : config_smask_msg[video_get_shadow_mask_mode()]);
|
||||
MenuWrite(n++, s, menusub == 9, video_get_shadow_mask_mode() < 0);
|
||||
MenuWrite(n++, s, menusub == 11, video_get_shadow_mask_mode() < 0);
|
||||
strcpy(s, " ");
|
||||
if (strlen(video_get_shadow_mask())) strncat(s, video_get_shadow_mask(), 25);
|
||||
else strcpy(s, " < none >");
|
||||
while (strlen(s) < 26) strcat(s, " ");
|
||||
strcat(s, " \x16 ");
|
||||
MenuWrite(n++, s, menusub == 10, (video_get_shadow_mask_mode() <= 0) || !S_ISDIR(getFileType(SMASK_DIR)));
|
||||
MenuWrite(n++, s, menusub == 12, (video_get_shadow_mask_mode() <= 0) || !S_ISDIR(getFileType(SMASK_DIR)));
|
||||
|
||||
MenuWrite(n++);
|
||||
MenuWrite(n++, " Reset to Defaults", menusub == 11);
|
||||
MenuWrite(n++, " Reset to Defaults", menusub == 13);
|
||||
|
||||
MenuWrite(n++);
|
||||
MenuWrite(n++, STD_BACK, menusub == 12);
|
||||
MenuWrite(n++, STD_BACK, menusub == 14);
|
||||
|
||||
if (!adjvisible) break;
|
||||
firstmenu += adjvisible;
|
||||
@@ -2897,7 +2909,7 @@ void HandleUI(void)
|
||||
case MENU_VIDEOPROC2:
|
||||
if (menu || left)
|
||||
{
|
||||
menusub = 6;
|
||||
menusub = 8;
|
||||
menustate = MENU_COMMON1;
|
||||
break;
|
||||
}
|
||||
@@ -2926,7 +2938,8 @@ void HandleUI(void)
|
||||
case 2:
|
||||
case 4:
|
||||
case 6:
|
||||
vfilter_type = (menusub == 2) ? VFILTER_HORZ : (menusub == 4) ? VFILTER_VERT : VFILTER_SCAN;
|
||||
case 8:
|
||||
vfilter_type = (menusub == 2) ? VFILTER_HORZ : (menusub == 4) ? VFILTER_VERT : (menusub == 6) ? VFILTER_SCAN : VFILTER_ILACE;
|
||||
if(video_get_scaler_flt(VFILTER_HORZ) && video_get_scaler_flt(vfilter_type))
|
||||
{
|
||||
const char *newfile = flist_GetPrevNext(COEFF_DIR, video_get_scaler_coeff(vfilter_type, 0), "TXT", plus);
|
||||
@@ -2934,7 +2947,7 @@ void HandleUI(void)
|
||||
}
|
||||
break;
|
||||
|
||||
case 8:
|
||||
case 10:
|
||||
if(video_get_gamma_en() > 0)
|
||||
{
|
||||
const char *newfile = flist_GetPrevNext(GAMMA_DIR, video_get_gamma_curve(0), "TXT", plus);
|
||||
@@ -2942,7 +2955,7 @@ void HandleUI(void)
|
||||
}
|
||||
break;
|
||||
|
||||
case 10:
|
||||
case 12:
|
||||
if (video_get_shadow_mask_mode() > 0)
|
||||
{
|
||||
const char *newfile = flist_GetPrevNext(SMASK_DIR, video_get_shadow_mask(0), "TXT", plus);
|
||||
@@ -2970,7 +2983,8 @@ void HandleUI(void)
|
||||
case 2:
|
||||
case 4:
|
||||
case 6:
|
||||
vfilter_type = (menusub == 2) ? VFILTER_HORZ : (menusub == 4) ? VFILTER_VERT : VFILTER_SCAN;
|
||||
case 8:
|
||||
vfilter_type = (menusub == 2) ? VFILTER_HORZ : (menusub == 4) ? VFILTER_VERT : (menusub == 6) ? VFILTER_SCAN : VFILTER_ILACE;
|
||||
if (video_get_scaler_flt(VFILTER_HORZ))
|
||||
{
|
||||
snprintf(Selected_tmp, sizeof(Selected_tmp), COEFF_DIR"/%s", video_get_scaler_coeff(vfilter_type, 0));
|
||||
@@ -2980,27 +2994,22 @@ void HandleUI(void)
|
||||
break;
|
||||
|
||||
case 3:
|
||||
if (!cfg.direct_video && video_get_scaler_flt(VFILTER_HORZ))
|
||||
{
|
||||
video_set_scaler_flt(VFILTER_VERT, video_get_scaler_flt(VFILTER_VERT) ? 0 : 1);
|
||||
menustate = parentstate;
|
||||
}
|
||||
break;
|
||||
|
||||
case 5:
|
||||
case 7:
|
||||
if (!cfg.direct_video && video_get_scaler_flt(VFILTER_HORZ))
|
||||
{
|
||||
video_set_scaler_flt(VFILTER_SCAN, video_get_scaler_flt(VFILTER_SCAN) ? 0 : 1);
|
||||
vfilter_type = (menusub == 3) ? VFILTER_VERT : (menusub == 5) ? VFILTER_SCAN : VFILTER_ILACE;
|
||||
video_set_scaler_flt(vfilter_type, video_get_scaler_flt(vfilter_type) ? 0 : 1);
|
||||
menustate = parentstate;
|
||||
}
|
||||
break;
|
||||
|
||||
case 7:
|
||||
case 9:
|
||||
if (video_get_gamma_en() >= 0) video_set_gamma_en(video_get_gamma_en() ? 0 : 1);
|
||||
menustate = parentstate;
|
||||
break;
|
||||
|
||||
case 8:
|
||||
case 10:
|
||||
if (video_get_gamma_en() > 0)
|
||||
{
|
||||
snprintf(Selected_tmp, sizeof(Selected_tmp), GAMMA_DIR"/%s", video_get_gamma_curve(0));
|
||||
@@ -3009,12 +3018,12 @@ void HandleUI(void)
|
||||
}
|
||||
break;
|
||||
|
||||
case 9:
|
||||
case 11:
|
||||
if (video_get_shadow_mask_mode() >= 0) video_set_shadow_mask_mode(video_get_shadow_mask_mode() + 1);
|
||||
menustate = parentstate;
|
||||
break;
|
||||
|
||||
case 10:
|
||||
case 12:
|
||||
if (video_get_shadow_mask_mode() > 0)
|
||||
{
|
||||
snprintf(Selected_tmp, sizeof(Selected_tmp), SMASK_DIR"/%s", video_get_shadow_mask(0));
|
||||
@@ -3023,12 +3032,12 @@ void HandleUI(void)
|
||||
}
|
||||
break;
|
||||
|
||||
case 11:
|
||||
case 13:
|
||||
video_cfg_reset();
|
||||
menustate = parentstate;
|
||||
break;
|
||||
|
||||
case 12:
|
||||
case 14:
|
||||
menusub = 6;
|
||||
menustate = MENU_COMMON1;
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user