[svn] / trunk / vfw / src / config.c Repository:
ViewVC logotype

Diff of /trunk/vfw/src/config.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 108, Sun Apr 7 11:57:47 2002 UTC revision 109, Mon Apr 8 12:51:41 2002 UTC
# Line 23  Line 23 
23   *   *
24   *      History:   *      History:
25   *   *
26     *      07.04.2002      min keyframe interval checkbox
27     *                              2-pass max bitrate and overflow customization
28   *      04.04.2002      interlacing support   *      04.04.2002      interlacing support
29   *                              hinted ME support   *                              hinted ME support
30   *      24.03.2002      daniel smith <danielsmith@astroboymail.com>   *      24.03.2002      daniel smith <danielsmith@astroboymail.com>
# Line 75  Line 77 
77          {"quant_type",                          &reg.quant_type,                                0},          {"quant_type",                          &reg.quant_type,                                0},
78          {"fourcc_used",                         &reg.fourcc_used,                               0},          {"fourcc_used",                         &reg.fourcc_used,                               0},
79          {"max_key_interval",            &reg.max_key_interval,                  300},          {"max_key_interval",            &reg.max_key_interval,                  300},
80            {"min_key_interval",            &reg.min_key_interval,                  1},
81          {"lum_masking",                         &reg.lum_masking,                               0},          {"lum_masking",                         &reg.lum_masking,                               0},
82          {"interlacing",                         &reg.interlacing,                               0},          {"interlacing",                         &reg.interlacing,                               0},
83    
# Line 85  Line 88 
88    
89          {"desired_size",                        &reg.desired_size,                              570000},          {"desired_size",                        &reg.desired_size,                              570000},
90          {"keyframe_boost",                      &reg.keyframe_boost,                    20},          {"keyframe_boost",                      &reg.keyframe_boost,                    20},
         {"min_key_interval",            &reg.min_key_interval,                  6},  
91          {"discard1pass",                        &reg.discard1pass,                              1},          {"discard1pass",                        &reg.discard1pass,                              1},
92          {"dummy2pass",                          &reg.dummy2pass,                                0},          {"dummy2pass",                          &reg.dummy2pass,                                0},
93          {"curve_compression_high",      &reg.curve_compression_high,    25},          {"curve_compression_high",      &reg.curve_compression_high,    25},
# Line 101  Line 103 
103          {"alt_curve_min_rel_qual",      &reg.alt_curve_min_rel_qual,    50},          {"alt_curve_min_rel_qual",      &reg.alt_curve_min_rel_qual,    50},
104          {"bitrate_payback_delay",       &reg.bitrate_payback_delay,             240},          {"bitrate_payback_delay",       &reg.bitrate_payback_delay,             240},
105          {"bitrate_payback_method",      &reg.bitrate_payback_method,    0},          {"bitrate_payback_method",      &reg.bitrate_payback_method,    0},
106            {"twopass_max_bitrate",         &reg.twopass_max_bitrate,               10000 * CONFIG_KBPS},
107            {"twopass_max_overflow_improvement", &reg.twopass_max_overflow_improvement, 60},
108            {"twopass_max_overflow_degradation", &reg.twopass_max_overflow_degradation, 60},
109          {"hinted_me",                           &reg.hinted_me,                                 0},          {"hinted_me",                           &reg.hinted_me,                                 0},
110    
111          {"credits_start",                       &reg.credits_start,                             0},          {"credits_start",                       &reg.credits_start,                             0},
# Line 453  Line 458 
458  {  {
459          // create arrays of controls to be disabled for each mode          // create arrays of controls to be disabled for each mode
460          const int cbr_disable[] = {          const int cbr_disable[] = {
461                  IDC_KFBOOST, IDC_MINKEY, IDC_DISCARD1PASS, IDC_DUMMY2PASS,                  IDC_KFBOOST, IDC_DISCARD1PASS, IDC_DUMMY2PASS,
462                  IDC_CURVECOMPH, IDC_CURVECOMPL, IDC_PAYBACK, IDC_PAYBACKBIAS, IDC_PAYBACKPROP,                  IDC_CURVECOMPH, IDC_CURVECOMPL, IDC_PAYBACK, IDC_PAYBACKBIAS, IDC_PAYBACKPROP,
463                  IDC_STATS1, IDC_STATS1_BROWSE, IDC_STATS2, IDC_STATS2_BROWSE,                  IDC_STATS1, IDC_STATS1_BROWSE, IDC_STATS2, IDC_STATS2_BROWSE,
464                  IDC_CREDITS_START, IDC_CREDITS_END, IDC_CREDITS_START_BEGIN, IDC_CREDITS_START_END,                  IDC_CREDITS_START, IDC_CREDITS_END, IDC_CREDITS_START_BEGIN, IDC_CREDITS_START_END,
# Line 464  Line 469 
469          };          };
470    
471          const int qual_disable[] = {          const int qual_disable[] = {
472                  IDC_KFBOOST, IDC_MINKEY, IDC_DISCARD1PASS, IDC_DUMMY2PASS,                  IDC_KFBOOST, IDC_DISCARD1PASS, IDC_DUMMY2PASS,
473                  IDC_CURVECOMPH, IDC_CURVECOMPL, IDC_PAYBACK, IDC_PAYBACKBIAS, IDC_PAYBACKPROP,                  IDC_CURVECOMPH, IDC_CURVECOMPL, IDC_PAYBACK, IDC_PAYBACKBIAS, IDC_PAYBACKPROP,
474                  IDC_STATS1, IDC_STATS1_BROWSE, IDC_STATS2, IDC_STATS2_BROWSE,                  IDC_STATS1, IDC_STATS1_BROWSE, IDC_STATS2, IDC_STATS2_BROWSE,
475                  IDC_CREDITS_SIZE_RADIO, IDC_CREDITS_END_STATIC, IDC_CREDITS_START_SIZE, IDC_CREDITS_END_SIZE                  IDC_CREDITS_SIZE_RADIO, IDC_CREDITS_END_STATIC, IDC_CREDITS_START_SIZE, IDC_CREDITS_END_SIZE
# Line 472  Line 477 
477    
478          const int quant_disable[] = {          const int quant_disable[] = {
479                  IDC_MINIQUANT, IDC_MAXIQUANT, IDC_MINPQUANT, IDC_MAXPQUANT,                  IDC_MINIQUANT, IDC_MAXIQUANT, IDC_MINPQUANT, IDC_MAXPQUANT,
480                  IDC_KFBOOST, IDC_MINKEY, IDC_DISCARD1PASS, IDC_DUMMY2PASS,                  IDC_KFBOOST, IDC_DISCARD1PASS, IDC_DUMMY2PASS,
481                  IDC_CURVECOMPH, IDC_CURVECOMPL, IDC_PAYBACK, IDC_PAYBACKBIAS, IDC_PAYBACKPROP,                  IDC_CURVECOMPH, IDC_CURVECOMPL, IDC_PAYBACK, IDC_PAYBACKBIAS, IDC_PAYBACKPROP,
482                  IDC_STATS1, IDC_STATS1_BROWSE, IDC_STATS2, IDC_STATS2_BROWSE,                  IDC_STATS1, IDC_STATS1_BROWSE, IDC_STATS2, IDC_STATS2_BROWSE,
483                  IDC_CREDITS_SIZE_RADIO, IDC_CREDITS_END_STATIC, IDC_CREDITS_START_SIZE, IDC_CREDITS_END_SIZE                  IDC_CREDITS_SIZE_RADIO, IDC_CREDITS_END_STATIC, IDC_CREDITS_START_SIZE, IDC_CREDITS_END_SIZE
# Line 563  Line 568 
568                  SendDlgItemMessage(hDlg, IDC_QUANTTYPE, CB_SETCURSEL, config->quant_type, 0);                  SendDlgItemMessage(hDlg, IDC_QUANTTYPE, CB_SETCURSEL, config->quant_type, 0);
569                  SendDlgItemMessage(hDlg, IDC_FOURCC, CB_SETCURSEL, config->fourcc_used, 0);                  SendDlgItemMessage(hDlg, IDC_FOURCC, CB_SETCURSEL, config->fourcc_used, 0);
570                  SetDlgItemInt(hDlg, IDC_MAXKEY, config->max_key_interval, FALSE);                  SetDlgItemInt(hDlg, IDC_MAXKEY, config->max_key_interval, FALSE);
571                    SetDlgItemInt(hDlg, IDC_MINKEY, config->min_key_interval, FALSE);
572                  CheckDlgButton(hDlg, IDC_LUMMASK, config->lum_masking ? BST_CHECKED : BST_UNCHECKED);                  CheckDlgButton(hDlg, IDC_LUMMASK, config->lum_masking ? BST_CHECKED : BST_UNCHECKED);
573                  CheckDlgButton(hDlg, IDC_INTERLACING, config->interlacing ? BST_CHECKED : BST_UNCHECKED);                  CheckDlgButton(hDlg, IDC_INTERLACING, config->interlacing ? BST_CHECKED : BST_UNCHECKED);
574                  break;                  break;
# Line 576  Line 582 
582    
583          case DLG_2PASS :          case DLG_2PASS :
584                  SetDlgItemInt(hDlg, IDC_KFBOOST, config->keyframe_boost, FALSE);                  SetDlgItemInt(hDlg, IDC_KFBOOST, config->keyframe_boost, FALSE);
                 SetDlgItemInt(hDlg, IDC_MINKEY, config->min_key_interval, FALSE);  
585                  CheckDlgButton(hDlg, IDC_DISCARD1PASS, config->discard1pass ? BST_CHECKED : BST_UNCHECKED);                  CheckDlgButton(hDlg, IDC_DISCARD1PASS, config->discard1pass ? BST_CHECKED : BST_UNCHECKED);
586                  CheckDlgButton(hDlg, IDC_DUMMY2PASS, config->dummy2pass ? BST_CHECKED : BST_UNCHECKED);                  CheckDlgButton(hDlg, IDC_DUMMY2PASS, config->dummy2pass ? BST_CHECKED : BST_UNCHECKED);
587    
# Line 605  Line 610 
610    
611                  CheckDlgButton(hDlg, IDC_USEAUTOBONUS, config->alt_curve_use_auto_bonus_bias ? BST_CHECKED : BST_UNCHECKED);                  CheckDlgButton(hDlg, IDC_USEAUTOBONUS, config->alt_curve_use_auto_bonus_bias ? BST_CHECKED : BST_UNCHECKED);
612                  SetDlgItemInt(hDlg, IDC_BONUSBIAS, config->alt_curve_bonus_bias, FALSE);                  SetDlgItemInt(hDlg, IDC_BONUSBIAS, config->alt_curve_bonus_bias, FALSE);
613    
614                    SetDlgItemInt(hDlg, IDC_MAXBITRATE, config->twopass_max_bitrate / CONFIG_KBPS, FALSE);
615                    SetDlgItemInt(hDlg, IDC_OVERIMP, config->twopass_max_overflow_improvement, FALSE);
616                    SetDlgItemInt(hDlg, IDC_OVERDEG, config->twopass_max_overflow_degradation, FALSE);
617                  break;                  break;
618    
619          case DLG_CREDITS :          case DLG_CREDITS :
# Line 665  Line 674 
674                  config->quant_type = SendDlgItemMessage(hDlg, IDC_QUANTTYPE, CB_GETCURSEL, 0, 0);                  config->quant_type = SendDlgItemMessage(hDlg, IDC_QUANTTYPE, CB_GETCURSEL, 0, 0);
675                  config->fourcc_used = SendDlgItemMessage(hDlg, IDC_FOURCC, CB_GETCURSEL, 0, 0);                  config->fourcc_used = SendDlgItemMessage(hDlg, IDC_FOURCC, CB_GETCURSEL, 0, 0);
676                  config->max_key_interval = config_get_int(hDlg, IDC_MAXKEY, config->max_key_interval);                  config->max_key_interval = config_get_int(hDlg, IDC_MAXKEY, config->max_key_interval);
677                    config->min_key_interval = config_get_int(hDlg, IDC_MINKEY, config->min_key_interval);
678                  config->lum_masking = ISDLGSET(IDC_LUMMASK);                  config->lum_masking = ISDLGSET(IDC_LUMMASK);
679                  config->interlacing = ISDLGSET(IDC_INTERLACING);                  config->interlacing = ISDLGSET(IDC_INTERLACING);
680                  break;                  break;
# Line 683  Line 693 
693    
694          case DLG_2PASS :          case DLG_2PASS :
695                  config->keyframe_boost = GetDlgItemInt(hDlg, IDC_KFBOOST, NULL, FALSE);                  config->keyframe_boost = GetDlgItemInt(hDlg, IDC_KFBOOST, NULL, FALSE);
                 config->min_key_interval = config_get_int(hDlg, IDC_MINKEY, config->min_key_interval);  
696                  config->discard1pass = ISDLGSET(IDC_DISCARD1PASS);                  config->discard1pass = ISDLGSET(IDC_DISCARD1PASS);
697                  config->dummy2pass = ISDLGSET(IDC_DUMMY2PASS);                  config->dummy2pass = ISDLGSET(IDC_DUMMY2PASS);
698                  config->curve_compression_high = GetDlgItemInt(hDlg, IDC_CURVECOMPH, NULL, FALSE);                  config->curve_compression_high = GetDlgItemInt(hDlg, IDC_CURVECOMPH, NULL, FALSE);
# Line 724  Line 733 
733                  config->alt_curve_high_dist = config_get_int(hDlg, IDC_ALTCURVEHIGH, config->alt_curve_high_dist);                  config->alt_curve_high_dist = config_get_int(hDlg, IDC_ALTCURVEHIGH, config->alt_curve_high_dist);
734                  config->alt_curve_low_dist = config_get_int(hDlg, IDC_ALTCURVELOW, config->alt_curve_low_dist);                  config->alt_curve_low_dist = config_get_int(hDlg, IDC_ALTCURVELOW, config->alt_curve_low_dist);
735                  config->alt_curve_min_rel_qual = config_get_int(hDlg, IDC_MINQUAL, config->alt_curve_min_rel_qual);                  config->alt_curve_min_rel_qual = config_get_int(hDlg, IDC_MINQUAL, config->alt_curve_min_rel_qual);
736    
737                    config->twopass_max_bitrate /= CONFIG_KBPS;
738                    config->twopass_max_bitrate = config_get_int(hDlg, IDC_MAXBITRATE, config->twopass_max_bitrate);
739                    config->twopass_max_bitrate *= CONFIG_KBPS;
740                    config->twopass_max_overflow_improvement = config_get_int(hDlg, IDC_OVERIMP, config->twopass_max_overflow_improvement);
741                    config->twopass_max_overflow_degradation = config_get_int(hDlg, IDC_OVERDEG, config->twopass_max_overflow_degradation);
742    
743                    CONSTRAINVAL(config->twopass_max_overflow_improvement, 1, 80);
744                    CONSTRAINVAL(config->twopass_max_overflow_degradation, 1, 80);
745                  break;                  break;
746    
747          case DLG_CREDITS :          case DLG_CREDITS :

Legend:
Removed from v.108  
changed lines
  Added in v.109

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4