summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--vp8/common/blockd.h10
-rw-r--r--vp8/common/seg_common.c2
-rw-r--r--vp8/encoder/onyx_if.c10
3 files changed, 21 insertions, 1 deletions
diff --git a/vp8/common/blockd.h b/vp8/common/blockd.h
index fdac08adf..690e0f8c8 100644
--- a/vp8/common/blockd.h
+++ b/vp8/common/blockd.h
@@ -113,6 +113,16 @@ typedef enum
} SEG_LVL_FEATURES;
+// Segment level features.
+typedef enum
+{
+ TX_4X4 = 0, // 4x4 dct transform
+ TX_8X8 = 1, // 8x8 dct transform
+
+ TX_SIZE_MAX = 2 // Number of differnt transforms avaialble
+
+} TX_SIZE;
+
#define VP8_YMODES (B_PRED + 1)
#define VP8_UV_MODES (TM_PRED + 1)
#define VP8_I8X8_MODES (TM_PRED + 1)
diff --git a/vp8/common/seg_common.c b/vp8/common/seg_common.c
index 42dcadaad..bd16c3407 100644
--- a/vp8/common/seg_common.c
+++ b/vp8/common/seg_common.c
@@ -12,7 +12,7 @@
//#if CONFIG_SEGFEATURES
const int segfeaturedata_signed[SEG_LVL_MAX] = {1, 1, 0, 0, 0, 0};
-const int vp8_seg_feature_data_bits[SEG_LVL_MAX] = {7, 6, 4, 4, 4, 2};
+const int vp8_seg_feature_data_bits[SEG_LVL_MAX] = {7, 6, 4, 4, 6, 2};
// These functions provide access to new segment level features.
// Eventually these function may be "optimized out" but for the moment,
diff --git a/vp8/encoder/onyx_if.c b/vp8/encoder/onyx_if.c
index 1902c7ca1..94ba5484b 100644
--- a/vp8/encoder/onyx_if.c
+++ b/vp8/encoder/onyx_if.c
@@ -481,6 +481,16 @@ static void init_seg_features(VP8_COMP *cpi)
(cpi->cq_target_quality > 16 ) ) ||
(cpi->ni_av_qi > 32);
+#if CONFIG_T8X8
+ // TODO
+ // For now 8x8TX mode just set segments up for 8x8 and 4x4 modes and exit.
+ //enable_segfeature(xd, 0, SEG_LVL_TRANSFORM);
+ //set_segdata( xd, 0, SEG_LVL_TRANSFORM, TX_4X4 );
+ //enable_segfeature(xd, 1, SEG_LVL_TRANSFORM);
+ //set_segdata( xd, 1, SEG_LVL_TRANSFORM, TX_8X8 );
+ return;
+#endif
+
// For now at least dont enable seg features alongside cyclic refresh.
if ( cpi->cyclic_refresh_mode_enabled ||
(cpi->pass != 2) )