diff options
-rw-r--r-- | gtk/src/presets.c | 2 | ||||
-rw-r--r-- | libhb/decomb.c | 14 |
2 files changed, 15 insertions, 1 deletions
diff --git a/gtk/src/presets.c b/gtk/src/presets.c index cc2f23e8a..d1eb0333f 100644 --- a/gtk/src/presets.c +++ b/gtk/src/presets.c @@ -2084,6 +2084,7 @@ value_map_t deint_xlat[] = {"2", "fast"}, {"3", "slow"}, {"4", "slower"}, + {"5", "bob"}, {NULL, NULL} }; @@ -2111,6 +2112,7 @@ value_map_t decomb_xlat[] = {"1", "custom"}, {"2", "default"}, {"3", "fast"}, + {"4", "bob"}, {NULL, NULL} }; diff --git a/libhb/decomb.c b/libhb/decomb.c index 74f0a7b35..166d72f16 100644 --- a/libhb/decomb.c +++ b/libhb/decomb.c @@ -2519,7 +2519,19 @@ static int hb_decomb_work( hb_filter_object_t * filter, And when it's not, it's a progressive frame, so mcdeint should be skipped... */ - yadif_filter( pv->pic_out.data, parity, tff, pv ); + if ( duplicate ) + { + // Don't perform comb detection again + // during bob duplicate processing + int spatial_metric_sav = pv->spatial_metric; + pv->spatial_metric = -1; + yadif_filter( pv->pic_out.data, parity, tff, pv ); + pv->spatial_metric = spatial_metric_sav; + } + else + { + yadif_filter( pv->pic_out.data, parity, tff, pv ); + } /* Commented out code in the line below would skip mcdeint on uncombed frames. Possibly a bad idea, since mcdeint |