]> granicus.if.org Git - libvpx/commitdiff
Simplify vp9_frame_type_qdelta()
authorJingning Han <jingning@google.com>
Tue, 11 Sep 2018 17:50:49 +0000 (10:50 -0700)
committerJingning Han <jingning@google.com>
Tue, 11 Sep 2018 21:02:03 +0000 (21:02 +0000)
Make direct use of frame type in the available VP9_COMMON structure.
Eliminate the need to map through rf_level to fetch the frame type.
This change doesn't alter the coding stats. It simplifies the
vp9_frame_type_qdelta() function logic and removes unnecessary
reference to rf_level.

Change-Id: I1a7b2f5abcae39aa4a60d08a6011dde38ecf3b58

vp9/encoder/vp9_ratectrl.c

index cc798e9f12bae47c1ad29b2e63402629f3b8a325..86d2fa18c44fa4b9d90f04a04546a7577c0bafdd 100644 (file)
@@ -1188,13 +1188,10 @@ int vp9_frame_type_qdelta(const VP9_COMP *cpi, int rf_level, int q) {
     1.75,  // GF_ARF_STD
     2.00,  // KF_STD
   };
-  static const FRAME_TYPE frame_type[RATE_FACTOR_LEVELS] = {
-    INTER_FRAME, INTER_FRAME, INTER_FRAME, INTER_FRAME, KEY_FRAME
-  };
   const VP9_COMMON *const cm = &cpi->common;
-  int qdelta =
-      vp9_compute_qdelta_by_rate(&cpi->rc, frame_type[rf_level], q,
-                                 rate_factor_deltas[rf_level], cm->bit_depth);
+
+  int qdelta = vp9_compute_qdelta_by_rate(
+      &cpi->rc, cm->frame_type, q, rate_factor_deltas[rf_level], cm->bit_depth);
   return qdelta;
 }