| 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 206 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 217 unsigned int current_video_frame; | 217 unsigned int current_video_frame; |
| 218 int version; | 218 int version; |
| 219 | 219 |
| 220 #if CONFIG_VP9_POSTPROC | 220 #if CONFIG_VP9_POSTPROC |
| 221 struct postproc_state postproc_state; | 221 struct postproc_state postproc_state; |
| 222 #endif | 222 #endif |
| 223 | 223 |
| 224 int error_resilient_mode; | 224 int error_resilient_mode; |
| 225 int frame_parallel_decoding_mode; | 225 int frame_parallel_decoding_mode; |
| 226 | 226 |
| 227 // Flag indicates if prev_mi can be used in coding: |
| 228 // 0: encoder assumes decoder does not have prev_mi |
| 229 // 1: encoder assumes decoder has and uses prev_mi |
| 230 unsigned int coding_use_prev_mi; |
| 231 |
| 227 int log2_tile_cols, log2_tile_rows; | 232 int log2_tile_cols, log2_tile_rows; |
| 228 | 233 |
| 229 // Private data associated with the frame buffer callbacks. | 234 // Private data associated with the frame buffer callbacks. |
| 230 void *cb_priv; | 235 void *cb_priv; |
| 231 vpx_get_frame_buffer_cb_fn_t get_fb_cb; | 236 vpx_get_frame_buffer_cb_fn_t get_fb_cb; |
| 232 vpx_release_frame_buffer_cb_fn_t release_fb_cb; | 237 vpx_release_frame_buffer_cb_fn_t release_fb_cb; |
| 233 | 238 |
| 234 // Handles memory for the codec. | 239 // Handles memory for the codec. |
| 235 InternalFrameBufferList int_frame_buffers; | 240 InternalFrameBufferList int_frame_buffers; |
| 236 } VP9_COMMON; | 241 } VP9_COMMON; |
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 295 xd->mb_to_right_edge = ((mi_cols - bw - mi_col) * MI_SIZE) * 8; | 300 xd->mb_to_right_edge = ((mi_cols - bw - mi_col) * MI_SIZE) * 8; |
| 296 | 301 |
| 297 // Are edges available for intra prediction? | 302 // Are edges available for intra prediction? |
| 298 xd->up_available = (mi_row != 0); | 303 xd->up_available = (mi_row != 0); |
| 299 xd->left_available = (mi_col > tile->mi_col_start); | 304 xd->left_available = (mi_col > tile->mi_col_start); |
| 300 } | 305 } |
| 301 | 306 |
| 302 static void set_prev_mi(VP9_COMMON *cm) { | 307 static void set_prev_mi(VP9_COMMON *cm) { |
| 303 const int use_prev_in_find_mv_refs = cm->width == cm->last_width && | 308 const int use_prev_in_find_mv_refs = cm->width == cm->last_width && |
| 304 cm->height == cm->last_height && | 309 cm->height == cm->last_height && |
| 305 !cm->error_resilient_mode && | |
| 306 !cm->intra_only && | 310 !cm->intra_only && |
| 307 cm->last_show_frame; | 311 cm->last_show_frame; |
| 308 // Special case: set prev_mi to NULL when the previous mode info | 312 // Special case: set prev_mi to NULL when the previous mode info |
| 309 // context cannot be used. | 313 // context cannot be used. |
| 310 cm->prev_mi = use_prev_in_find_mv_refs ? | 314 cm->prev_mi = use_prev_in_find_mv_refs ? |
| 311 cm->prev_mip + cm->mode_info_stride + 1 : NULL; | 315 cm->prev_mip + cm->mode_info_stride + 1 : NULL; |
| 312 } | 316 } |
| 313 | 317 |
| 314 static INLINE int frame_is_intra_only(const VP9_COMMON *const cm) { | 318 static INLINE int frame_is_intra_only(const VP9_COMMON *const cm) { |
| 315 return cm->frame_type == KEY_FRAME || cm->intra_only; | 319 return cm->frame_type == KEY_FRAME || cm->intra_only; |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 354 left = (left & bs) > 0; | 358 left = (left & bs) > 0; |
| 355 | 359 |
| 356 return (left * 2 + above) + bsl * PARTITION_PLOFFSET; | 360 return (left * 2 + above) + bsl * PARTITION_PLOFFSET; |
| 357 } | 361 } |
| 358 | 362 |
| 359 #ifdef __cplusplus | 363 #ifdef __cplusplus |
| 360 } // extern "C" | 364 } // extern "C" |
| 361 #endif | 365 #endif |
| 362 | 366 |
| 363 #endif // VP9_COMMON_VP9_ONYXC_INT_H_ | 367 #endif // VP9_COMMON_VP9_ONYXC_INT_H_ |
| OLD | NEW |