| 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 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 165 vp9_coeff_cost token_costs[TX_SIZES]; | 165 vp9_coeff_cost token_costs[TX_SIZES]; |
| 166 DECLARE_ALIGNED(16, uint8_t, token_cache[1024]); | 166 DECLARE_ALIGNED(16, uint8_t, token_cache[1024]); |
| 167 | 167 |
| 168 int optimize; | 168 int optimize; |
| 169 | 169 |
| 170 // indicate if it is in the rd search loop or encoding process | 170 // indicate if it is in the rd search loop or encoding process |
| 171 int use_lp32x32fdct; | 171 int use_lp32x32fdct; |
| 172 int skip_encode; | 172 int skip_encode; |
| 173 | 173 |
| 174 // Used to store sub partition's choices. | 174 // Used to store sub partition's choices. |
| 175 int fast_ms; | |
| 176 int_mv pred_mv[MAX_REF_FRAMES]; | 175 int_mv pred_mv[MAX_REF_FRAMES]; |
| 177 int subblock_ref; | |
| 178 | 176 |
| 179 // TODO(jingning): Need to refactor the structure arrays that buffers the | 177 // TODO(jingning): Need to refactor the structure arrays that buffers the |
| 180 // coding mode decisions of each partition type. | 178 // coding mode decisions of each partition type. |
| 181 PICK_MODE_CONTEXT ab4x4_context[4][4][4]; | 179 PICK_MODE_CONTEXT ab4x4_context[4][4][4]; |
| 182 PICK_MODE_CONTEXT sb8x4_context[4][4][4]; | 180 PICK_MODE_CONTEXT sb8x4_context[4][4][4]; |
| 183 PICK_MODE_CONTEXT sb4x8_context[4][4][4]; | 181 PICK_MODE_CONTEXT sb4x8_context[4][4][4]; |
| 184 PICK_MODE_CONTEXT sb8x8_context[4][4][4]; | 182 PICK_MODE_CONTEXT sb8x8_context[4][4][4]; |
| 185 PICK_MODE_CONTEXT sb8x16_context[4][4][2]; | 183 PICK_MODE_CONTEXT sb8x16_context[4][4][2]; |
| 186 PICK_MODE_CONTEXT sb16x8_context[4][4][2]; | 184 PICK_MODE_CONTEXT sb16x8_context[4][4][2]; |
| 187 PICK_MODE_CONTEXT mb_context[4][4]; | 185 PICK_MODE_CONTEXT mb_context[4][4]; |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 232 case BLOCK_4X8: | 230 case BLOCK_4X8: |
| 233 return &x->sb4x8_context[x->sb_index][x->mb_index][x->b_index]; | 231 return &x->sb4x8_context[x->sb_index][x->mb_index][x->b_index]; |
| 234 case BLOCK_4X4: | 232 case BLOCK_4X4: |
| 235 return &x->ab4x4_context[x->sb_index][x->mb_index][x->b_index]; | 233 return &x->ab4x4_context[x->sb_index][x->mb_index][x->b_index]; |
| 236 default: | 234 default: |
| 237 assert(0); | 235 assert(0); |
| 238 return NULL; | 236 return NULL; |
| 239 } | 237 } |
| 240 } | 238 } |
| 241 | 239 |
| 242 struct rdcost_block_args { | |
| 243 MACROBLOCK *x; | |
| 244 ENTROPY_CONTEXT t_above[16]; | |
| 245 ENTROPY_CONTEXT t_left[16]; | |
| 246 TX_SIZE tx_size; | |
| 247 int bw; | |
| 248 int bh; | |
| 249 int rate; | |
| 250 int64_t dist; | |
| 251 int64_t sse; | |
| 252 int this_rate; | |
| 253 int64_t this_dist; | |
| 254 int64_t this_sse; | |
| 255 int64_t this_rd; | |
| 256 int64_t best_rd; | |
| 257 int skip; | |
| 258 const int16_t *scan, *nb; | |
| 259 }; | |
| 260 | |
| 261 #ifdef __cplusplus | 240 #ifdef __cplusplus |
| 262 } // extern "C" | 241 } // extern "C" |
| 263 #endif | 242 #endif |
| 264 | 243 |
| 265 #endif // VP9_ENCODER_VP9_BLOCK_H_ | 244 #endif // VP9_ENCODER_VP9_BLOCK_H_ |
| OLD | NEW |