summaryrefslogtreecommitdiffstats
path: root/third_party/aom/av1/common/scan.h
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/aom/av1/common/scan.h')
-rw-r--r--third_party/aom/av1/common/scan.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/third_party/aom/av1/common/scan.h b/third_party/aom/av1/common/scan.h
index ecef11368..c9911de4e 100644
--- a/third_party/aom/av1/common/scan.h
+++ b/third_party/aom/av1/common/scan.h
@@ -78,10 +78,22 @@ static INLINE const SCAN_ORDER *get_default_scan(TX_SIZE tx_size,
}
static INLINE const SCAN_ORDER *get_scan(const AV1_COMMON *cm, TX_SIZE tx_size,
- TX_TYPE tx_type, int is_inter) {
+ TX_TYPE tx_type,
+ const MB_MODE_INFO *mbmi) {
+#if CONFIG_MRC_TX
+ // use the DCT_DCT scan order for MRC_DCT for now
+ if (tx_type == MRC_DCT) tx_type = DCT_DCT;
+#endif // CONFIG_MRC_TX
+ const int is_inter = is_inter_block(mbmi);
#if CONFIG_ADAPT_SCAN
+ (void)mbmi;
(void)is_inter;
- return &cm->fc->sc[tx_size][tx_type];
+#if CONFIG_EXT_TX
+ if (tx_type >= IDTX)
+ return get_default_scan(tx_size, tx_type, is_inter);
+ else
+#endif // CONFIG_EXT_TX
+ return &cm->fc->sc[tx_size][tx_type];
#else // CONFIG_ADAPT_SCAN
(void)cm;
return get_default_scan(tx_size, tx_type, is_inter);