]> granicus.if.org Git - libvpx/commitdiff
simplify read_coef_prob()
authorYaowu Xu <yaowu@google.com>
Thu, 31 Oct 2013 01:06:42 +0000 (18:06 -0700)
committerYaowu Xu <yaowu@google.com>
Thu, 31 Oct 2013 23:39:08 +0000 (16:39 -0700)
Change-Id: I529c634db4f81ba5386092c126f53312b1e51b2b

vp9/decoder/vp9_decodframe.c

index e3a2b77108ff8fed748db69f2008725b490a6f8a..c7ca18cf20bdf53b75b56d89bdfad5e54be695bf 100644 (file)
@@ -552,16 +552,10 @@ static void read_coef_probs_common(vp9_coeff_probs_model *coef_probs,
 
 static void read_coef_probs(FRAME_CONTEXT *fc, TX_MODE tx_mode,
                             vp9_reader *r) {
-  read_coef_probs_common(fc->coef_probs[TX_4X4], r);
-
-  if (tx_mode > ONLY_4X4)
-    read_coef_probs_common(fc->coef_probs[TX_8X8], r);
-
-  if (tx_mode > ALLOW_8X8)
-    read_coef_probs_common(fc->coef_probs[TX_16X16], r);
-
-  if (tx_mode > ALLOW_16X16)
-    read_coef_probs_common(fc->coef_probs[TX_32X32], r);
+    const TX_SIZE max_tx_size = tx_mode_to_biggest_tx_size[tx_mode];
+    TX_SIZE tx_size;
+    for (tx_size = TX_4X4; tx_size <= max_tx_size; ++tx_size)
+      read_coef_probs_common(fc->coef_probs[tx_size], r);
 }
 
 static void setup_segmentation(struct segmentation *seg,