diff options
Diffstat (limited to 'vp8/common/blockd.h')
-rw-r--r-- | vp8/common/blockd.h | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/vp8/common/blockd.h b/vp8/common/blockd.h index 96155237a..f66e73c59 100644 --- a/vp8/common/blockd.h +++ b/vp8/common/blockd.h @@ -20,6 +20,7 @@ void vpx_log(const char *format, ...); #include "treecoder.h" #include "subpixel.h" #include "vpx_ports/mem.h" +#include "common.h" #define TRUE 1 #define FALSE 0 @@ -29,6 +30,7 @@ void vpx_log(const char *format, ...); #define DCPREDCNTTHRESH 3 #define MB_FEATURE_TREE_PROBS 3 + #define MAX_MB_SEGMENTS 4 #define MAX_REF_LF_DELTAS 4 @@ -64,6 +66,10 @@ extern const unsigned char vp8_block2above[25]; #define VP8_COMBINEENTROPYCONTEXTS( Dest, A, B) \ Dest = ((A)!=0) + ((B)!=0); +#if CONFIG_T8X8 +#define VP8_COMBINEENTROPYCONTEXTS_8x8( Dest, A1, B1, A2, B2) \ + Dest = ((A1)!=0 || (A2)!=0) + ((B1)!=0 || (B2)!=0); +#endif typedef enum { @@ -157,7 +163,9 @@ typedef struct MB_PREDICTION_MODE mode, uv_mode; MV_REFERENCE_FRAME ref_frame; int_mv mv; - +#if CONFIG_SEGMENTATION + unsigned char segment_flag; +#endif unsigned char partitioning; unsigned char mb_skip_coeff; /* does this mb has coefficients at all, 1=no coefficients, 0=need decode tokens */ unsigned char need_to_clamp_mvs; @@ -232,9 +240,13 @@ typedef struct MacroBlockD /* Per frame flags that define which MB level features (such as quantizer or loop filter level) */ /* are enabled and when enabled the proabilities used to decode the per MB flags in MB_MODE_INFO */ - vp8_prob mb_segment_tree_probs[MB_FEATURE_TREE_PROBS]; /* Probability Tree used to code Segment number */ - - signed char segment_feature_data[MB_LVL_MAX][MAX_MB_SEGMENTS]; /* Segment parameters */ +#if CONFIG_SEGMENTATION + vp8_prob mb_segment_tree_probs[MB_FEATURE_TREE_PROBS + 3]; // Probability Tree used to code Segment number + unsigned char temporal_update; +#else + vp8_prob mb_segment_tree_probs[MB_FEATURE_TREE_PROBS]; +#endif + signed char segment_feature_data[MB_LVL_MAX][MAX_MB_SEGMENTS]; // Segment parameters /* mode_based Loop filter adjustment */ unsigned char mode_ref_lf_delta_enabled; |