| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  *  Copyright (c) 2010 The WebM project authors. All Rights Reserved. | 2  *  Copyright (c) 2010 The WebM project authors. All Rights Reserved. | 
| 3  * | 3  * | 
| 4  *  Use of this source code is governed by a BSD-style license | 4  *  Use of this source code is governed by a BSD-style license | 
| 5  *  that can be found in the LICENSE file in the root of the source | 5  *  that can be found in the LICENSE file in the root of the source | 
| 6  *  tree. An additional intellectual property rights grant can be found | 6  *  tree. An additional intellectual property rights grant can be found | 
| 7  *  in the file PATENTS.  All contributing project authors may | 7  *  in the file PATENTS.  All contributing project authors may | 
| 8  *  be found in the AUTHORS file in the root of the source tree. | 8  *  be found in the AUTHORS file in the root of the source tree. | 
| 9  */ | 9  */ | 
| 10 | 10 | 
| (...skipping 16 matching lines...) Expand all  Loading... | 
| 27 | 27 | 
| 28 typedef struct | 28 typedef struct | 
| 29 { | 29 { | 
| 30     // 16 Y blocks, 4 U blocks, 4 V blocks each with 16 entries | 30     // 16 Y blocks, 4 U blocks, 4 V blocks each with 16 entries | 
| 31     short *src_diff; | 31     short *src_diff; | 
| 32     short *coeff; | 32     short *coeff; | 
| 33 | 33 | 
| 34     // 16 Y blocks, 4 U blocks, 4 V blocks each with 16 entries | 34     // 16 Y blocks, 4 U blocks, 4 V blocks each with 16 entries | 
| 35     short *quant; | 35     short *quant; | 
| 36     short *quant_fast; | 36     short *quant_fast; | 
| 37     short *quant_shift; | 37     unsigned char *quant_shift; | 
| 38     short *zbin; | 38     short *zbin; | 
| 39     short *zrun_zbin_boost; | 39     short *zrun_zbin_boost; | 
| 40     short *round; | 40     short *round; | 
| 41 | 41 | 
| 42     // Zbin Over Quant value | 42     // Zbin Over Quant value | 
| 43     short zbin_extra; | 43     short zbin_extra; | 
| 44 | 44 | 
| 45     unsigned char **base_src; | 45     unsigned char **base_src; | 
| 46     int src; | 46     int src; | 
| 47     int src_stride; | 47     int src_stride; | 
| 48 | 48 | 
| 49 //  MV  enc_mv; | 49 //  MV  enc_mv; | 
| 50     int force_empty; | 50     int force_empty; | 
| 51 | 51 | 
| 52 } BLOCK; | 52 } BLOCK; | 
| 53 | 53 | 
| 54 typedef struct | 54 typedef struct | 
| 55 { | 55 { | 
| 56     int count; | 56     int count; | 
| 57     B_MODE_INFO bmi[16]; | 57     struct | 
|  | 58     { | 
|  | 59         B_PREDICTION_MODE mode; | 
|  | 60         int_mv mv; | 
|  | 61     } bmi[16]; | 
| 58 } PARTITION_INFO; | 62 } PARTITION_INFO; | 
| 59 | 63 | 
| 60 typedef struct | 64 typedef struct | 
| 61 { | 65 { | 
| 62     DECLARE_ALIGNED(16, short, src_diff[400]);       // 16x16 Y 8x8 U 8x8 V 4x4 
     2nd Y | 66     DECLARE_ALIGNED(16, short, src_diff[400]);       // 16x16 Y 8x8 U 8x8 V 4x4 
     2nd Y | 
| 63     DECLARE_ALIGNED(16, short, coeff[400]);     // 16x16 Y 8x8 U 8x8 V 4x4 2nd Y | 67     DECLARE_ALIGNED(16, short, coeff[400]);     // 16x16 Y 8x8 U 8x8 V 4x4 2nd Y | 
|  | 68     DECLARE_ALIGNED(16, unsigned char, thismb[256]); | 
| 64 | 69 | 
|  | 70     unsigned char *thismb_ptr; | 
| 65     // 16 Y blocks, 4 U blocks, 4 V blocks, 1 DC 2nd order block each with 16 en
     tries | 71     // 16 Y blocks, 4 U blocks, 4 V blocks, 1 DC 2nd order block each with 16 en
     tries | 
| 66     BLOCK block[25]; | 72     BLOCK block[25]; | 
| 67 | 73 | 
| 68     YV12_BUFFER_CONFIG src; | 74     YV12_BUFFER_CONFIG src; | 
| 69 | 75 | 
| 70     MACROBLOCKD e_mbd; | 76     MACROBLOCKD e_mbd; | 
| 71     PARTITION_INFO *partition_info; /* work pointer */ | 77     PARTITION_INFO *partition_info; /* work pointer */ | 
| 72     PARTITION_INFO *pi;   /* Corresponds to upper left visible macroblock */ | 78     PARTITION_INFO *pi;   /* Corresponds to upper left visible macroblock */ | 
| 73     PARTITION_INFO *pip;  /* Base of allocated array */ | 79     PARTITION_INFO *pip;  /* Base of allocated array */ | 
| 74 | 80 | 
| 75     search_site *ss; | 81     search_site *ss; | 
| 76     int ss_count; | 82     int ss_count; | 
| 77     int searches_per_step; | 83     int searches_per_step; | 
| 78 | 84 | 
| 79     int errorperbit; | 85     int errorperbit; | 
| 80     int sadperbit16; | 86     int sadperbit16; | 
| 81     int sadperbit4; | 87     int sadperbit4; | 
| 82     int errthresh; |  | 
| 83     int rddiv; | 88     int rddiv; | 
| 84     int rdmult; | 89     int rdmult; | 
| 85     INT64 activity_sum; | 90     unsigned int * mb_activity_ptr; | 
|  | 91     int * mb_norm_activity_ptr; | 
|  | 92     signed int act_zbin_adj; | 
| 86 | 93 | 
| 87     int mvcosts[2][MVvals+1]; | 94     int mvcosts[2][MVvals+1]; | 
| 88     int *mvcost[2]; | 95     int *mvcost[2]; | 
| 89     int mvsadcosts[2][MVvals+1]; | 96     int mvsadcosts[2][MVfpvals+1]; | 
| 90     int *mvsadcost[2]; | 97     int *mvsadcost[2]; | 
| 91     int mbmode_cost[2][MB_MODE_COUNT]; | 98     int mbmode_cost[2][MB_MODE_COUNT]; | 
| 92     int intra_uv_mode_cost[2][MB_MODE_COUNT]; | 99     int intra_uv_mode_cost[2][MB_MODE_COUNT]; | 
| 93     unsigned int bmode_costs[10][10][10]; | 100     unsigned int bmode_costs[10][10][10]; | 
| 94     unsigned int inter_bmode_costs[B_MODE_COUNT]; | 101     unsigned int inter_bmode_costs[B_MODE_COUNT]; | 
| 95 | 102 | 
| 96     // These define limits to motion vector components to prevent them from exte
     nding outside the UMV borders | 103     // These define limits to motion vector components to prevent them from exte
     nding outside the UMV borders | 
| 97     int mv_col_min; | 104     int mv_col_min; | 
| 98     int mv_col_max; | 105     int mv_col_max; | 
| 99     int mv_row_min; | 106     int mv_row_min; | 
| 100     int mv_row_max; | 107     int mv_row_max; | 
| 101 | 108 | 
| 102     int vector_range;    // Used to monitor limiting range of recent vectors to 
     guide search. | 109     int vector_range;    // Used to monitor limiting range of recent vectors to 
     guide search. | 
| 103     int skip; | 110     int skip; | 
| 104 | 111 | 
| 105     int encode_breakout; | 112     int encode_breakout; | 
| 106 | 113 | 
| 107     //char * gf_active_ptr; | 114     //char * gf_active_ptr; | 
| 108     signed char *gf_active_ptr; | 115     signed char *gf_active_ptr; | 
| 109 | 116 | 
| 110     unsigned char *active_ptr; | 117     unsigned char *active_ptr; | 
| 111     MV_CONTEXT *mvc; | 118     MV_CONTEXT *mvc; | 
| 112 | 119 | 
| 113     unsigned int token_costs[BLOCK_TYPES] [COEF_BANDS] [PREV_COEF_CONTEXTS] [vp8
     _coef_tokens]; | 120     unsigned int token_costs[BLOCK_TYPES] [COEF_BANDS] [PREV_COEF_CONTEXTS] [MAX
     _ENTROPY_TOKENS]; | 
| 114     int optimize; | 121     int optimize; | 
| 115     int q_index; | 122     int q_index; | 
| 116 | 123 | 
| 117     void (*vp8_short_fdct4x4)(short *input, short *output, int pitch); | 124     void (*vp8_short_fdct4x4)(short *input, short *output, int pitch); | 
| 118     void (*vp8_short_fdct8x4)(short *input, short *output, int pitch); | 125     void (*vp8_short_fdct8x4)(short *input, short *output, int pitch); | 
| 119     void (*short_walsh4x4)(short *input, short *output, int pitch); | 126     void (*short_walsh4x4)(short *input, short *output, int pitch); | 
| 120     void (*quantize_b)(BLOCK *b, BLOCKD *d); | 127     void (*quantize_b)(BLOCK *b, BLOCKD *d); | 
|  | 128     void (*quantize_b_pair)(BLOCK *b1, BLOCK *b2, BLOCKD *d0, BLOCKD *d1); | 
| 121 | 129 | 
| 122 } MACROBLOCK; | 130 } MACROBLOCK; | 
| 123 | 131 | 
| 124 | 132 | 
| 125 #endif | 133 #endif | 
| OLD | NEW | 
|---|