summaryrefslogtreecommitdiffstats
path: root/gtk/src/x264handler.c
diff options
context:
space:
mode:
Diffstat (limited to 'gtk/src/x264handler.c')
-rw-r--r--gtk/src/x264handler.c24
1 files changed, 17 insertions, 7 deletions
diff --git a/gtk/src/x264handler.c b/gtk/src/x264handler.c
index 17c67db36..2b6b8830f 100644
--- a/gtk/src/x264handler.c
+++ b/gtk/src/x264handler.c
@@ -170,21 +170,21 @@ find_syn_match(const gchar *opt, gchar **syns)
struct x264_opt_map_s x264_opt_map[] =
{
- {x264_ref_syns, "x264_refs", "1", X264_OPT_INT},
- {x264_mixed_syns, "x264_mixed_refs", "0", X264_OPT_BOOL},
- {x264_bframes_syns, "x264_bframes", "0", X264_OPT_INT},
+ {x264_ref_syns, "x264_refs", "3", X264_OPT_INT},
+ {x264_mixed_syns, "x264_mixed_refs", "1", X264_OPT_BOOL},
+ {x264_bframes_syns, "x264_bframes", "3", X264_OPT_INT},
{x264_direct_syns, "x264_direct", "spatial", X264_OPT_COMBO},
{x264_badapt_syns, "x264_b_adapt", "1", X264_OPT_COMBO},
- {x264_weightb_syns, "x264_weighted_bframes", "0", X264_OPT_BOOL},
+ {x264_weightb_syns, "x264_weighted_bframes", "1", X264_OPT_BOOL},
{x264_bpyramid_syns, "x264_bpyramid", "0", X264_OPT_BOOL},
{x264_me_syns, "x264_me", "hex", X264_OPT_COMBO},
{x264_merange_syns, "x264_merange", "16", X264_OPT_INT},
- {x264_subme_syns, "x264_subme", "6", X264_OPT_COMBO},
+ {x264_subme_syns, "x264_subme", "7", X264_OPT_COMBO},
{x264_analyse_syns, "x264_analyse", "some", X264_OPT_COMBO},
- {x264_8x8dct_syns, "x264_8x8dct", "0", X264_OPT_BOOL},
+ {x264_8x8dct_syns, "x264_8x8dct", "1", X264_OPT_BOOL},
{x264_deblock_syns, "x264_deblock_alpha", "0,0", X264_OPT_DEBLOCK},
{x264_deblock_syns, "x264_deblock_beta", "0,0", X264_OPT_DEBLOCK},
- {x264_trellis_syns, "x264_trellis", "0", X264_OPT_COMBO},
+ {x264_trellis_syns, "x264_trellis", "1", X264_OPT_COMBO},
{x264_pskip_syns, "x264_no_fast_pskip", "0", X264_OPT_BOOL},
{x264_decimate_syns, "x264_no_dct_decimate", "0", X264_OPT_BOOL},
{x264_cabac_syns, "x264_cabac", "1", X264_OPT_BOOL},
@@ -716,6 +716,16 @@ sanitize_x264opts(signal_user_data_t *ud, const gchar *options)
{
x264_remove_opt(split, x264_psy_syns);
}
+ if (subme == 10)
+ {
+ gdouble psy_rd = ghb_settings_get_double(ud->settings, "x264_psy_rd");
+ if (psy_rd == 0.0)
+ {
+ gint pos = x264_find_opt(split, x264_subme_syns);
+ g_free(split[pos]);
+ split[pos] = g_strdup_printf("subme=9");
+ }
+ }
gint trell = ghb_settings_combo_int(ud->settings, "x264_trellis");
if (trell < 1)
{