shithub: libvpx

Download patch

ref: fa0f25891fdb4e187f1de6c4a494f9f4b1b49744
parent: 3a2ad10de2d67a663d23476392a7bc648cb2e8e7
parent: 4b2b90fed3e905b852ed7c3cffec5a85ba1687e6
author: Alex Converse <[email protected]>
date: Tue Jan 26 12:59:59 EST 2016

Merge "vp9: Be more responsive to massive overshoot."

--- a/vp9/encoder/vp9_ratectrl.c
+++ b/vp9/encoder/vp9_ratectrl.c
@@ -500,6 +500,12 @@
   else
     cpi->rc.rc_1_frame = 0;
 
+  // Turn off oscilation detection in the case of massive overshoot.
+  if (cpi->rc.rc_1_frame == -1 && cpi->rc.rc_2_frame == 1 &&
+      correction_factor > 1000) {
+    cpi->rc.rc_2_frame = 0;
+  }
+
   if (correction_factor > 102) {
     // We are not already at the worst allowable quality
     correction_factor = (int)(100 + ((correction_factor - 100) *