summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjstebbins <[email protected]>2013-11-05 00:27:30 +0000
committerjstebbins <[email protected]>2013-11-05 00:27:30 +0000
commita89397c1e3358b5f690b046481388ade19316fda (patch)
tree238fe960f42600a2d539e248666194e0aa3f5888
parent85df20369cf73f5115a1707a47a7ac52f2881efb (diff)
decomb: don't use frame flags to modify deinterlace behavior
They are not a reliable indicator that the frame is truly progressive. Also, fix mask mode. It generated nothing but black frames. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5875 b64f7644-9d1e-0410-96f1-a4d463321fa5
-rw-r--r--libhb/decomb.c20
1 files changed, 5 insertions, 15 deletions
diff --git a/libhb/decomb.c b/libhb/decomb.c
index 715d52784..74ea8ec94 100644
--- a/libhb/decomb.c
+++ b/libhb/decomb.c
@@ -373,7 +373,7 @@ void apply_mask(hb_filter_private_t * pv, hb_buffer_t * b)
{
memset(dstp, 128, m->plane[pp].width);
}
- else if (pp == 0)
+ if (pp == 0)
{
apply_mask_line(dstp, mskp, m->plane[pp].width);
}
@@ -496,8 +496,7 @@ int check_combing_results( hb_filter_private_t * pv )
{
if( pv->block_score[ii] >= ( threshold / 2 ) )
{
- if (pv->block_score[ii] <= threshold &&
- !( pv->ref[1]->s.flags & 16) )
+ if (pv->block_score[ii] <= threshold)
{
/* Blend video content that scores between
( threshold / 2 ) and threshold. */
@@ -506,18 +505,9 @@ int check_combing_results( hb_filter_private_t * pv )
}
else if( pv->block_score[ii] > threshold )
{
- if( pv->ref[1]->s.flags & 16 )
- {
- /* Blend progressive content above the threshold.*/
- pv->mask_box_color = 2;
- return 2;
- }
- else
- {
- /* Yadif deinterlace video content above the threshold. */
- pv->mask_box_color = 1;
- return 1;
- }
+ /* Yadif deinterlace video content above the threshold. */
+ pv->mask_box_color = 1;
+ return 1;
}
}
}