]> granicus.if.org Git - libvpx/commitdiff
Fix in key frame detection
authorDeepa K G <deepa.kg@ittiam.com>
Tue, 29 Jan 2019 14:28:05 +0000 (19:58 +0530)
committerDeepa K G <deepa.kg@ittiam.com>
Thu, 18 Apr 2019 04:47:17 +0000 (04:47 +0000)
The frame next to scene cut frame does not usually have
a high second ref useage. Thus the sec ref useage of the
frame next to scene cut frame is tested against a
threshold for scene cut detection.

With this change scene cut detection is improved for
contents where genuine scene cuts were being missed.

Change-Id: I11190d848fa1c1dcd63aab81da799354371e2a30

vp9/encoder/vp9_firstpass.c

index ae84dd5f10a7b2c965eef9a97aafe541c1e6a6c2..28570f7d0c1357b187e291da2b9242b036687af3 100644 (file)
@@ -2820,7 +2820,7 @@ static int test_candidate_kf(TWO_PASS *twopass,
   // See above for an explanation of the test criteria.
   // If so, then examine how well it predicts subsequent frames.
   if (!detect_flash(twopass, -1) && !detect_flash(twopass, 0) &&
-      (this_frame->pcnt_second_ref < SECOND_REF_USEAGE_THRESH) &&
+      (next_frame->pcnt_second_ref < SECOND_REF_USEAGE_THRESH) &&
       ((this_frame->pcnt_inter < VERY_LOW_INTER_THRESH) ||
        (slide_transition(this_frame, last_frame, next_frame)) ||
        (intra_step_transition(this_frame, last_frame, next_frame)) ||