Disable extra altref and bwdref for still gf group
Use three metrics to identify the still gf group.
Performance:
lowres: pamphlet_cif -1.395; bowing_cif -0.989;
others remain same. Overall -0.064
midres: snow_mnt_480p -0.827. others remain same.
Overall -0.028
Change-Id: I22a6429c7ebdad2c36ec73c7a69cabc07e8208b7
diff --git a/av1/encoder/firstpass.h b/av1/encoder/firstpass.h
index 983b3b5..266766d 100644
--- a/av1/encoder/firstpass.h
+++ b/av1/encoder/firstpass.h
@@ -52,6 +52,13 @@
#define MIN_EXT_ARF_INTERVAL 4
#endif // CONFIG_EXT_REFS
+#if CONFIG_FLEX_REFS
+#define MIN_ZERO_MOTION 0.95
+#define MAX_SR_CODED_ERROR 40
+#define MAX_RAW_ERR_VAR 2000
+#define MIN_MV_IN_OUT 0.4
+#endif // CONFIG_FLEX_REFS
+
#define VLOW_MOTION_THRESHOLD 950
typedef struct {
@@ -77,6 +84,10 @@
double new_mv_count;
double duration;
double count;
+#if CONFIG_FLEX_REFS
+ // standard deviation for (0, 0) motion prediction error
+ double raw_error_stdev;
+#endif // CONFIG_FLEX_REFS
} FIRSTPASS_STATS;
typedef enum {