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 493 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
504 | 504 |
505 /* Video conferencing cyclic refresh mode flags. This is a mode | 505 /* Video conferencing cyclic refresh mode flags. This is a mode |
506 * designed to clean up the background over time in live encoding | 506 * designed to clean up the background over time in live encoding |
507 * scenarious. It uses segmentation. | 507 * scenarious. It uses segmentation. |
508 */ | 508 */ |
509 int cyclic_refresh_mode_enabled; | 509 int cyclic_refresh_mode_enabled; |
510 int cyclic_refresh_mode_max_mbs_perframe; | 510 int cyclic_refresh_mode_max_mbs_perframe; |
511 int cyclic_refresh_mode_index; | 511 int cyclic_refresh_mode_index; |
512 int cyclic_refresh_q; | 512 int cyclic_refresh_q; |
513 signed char *cyclic_refresh_map; | 513 signed char *cyclic_refresh_map; |
| 514 // Count on how many (consecutive) times a macroblock uses ZER0MV_LAST. |
| 515 unsigned char *consec_zero_last; |
514 | 516 |
515 // Frame counter for the temporal pattern. Counter is rest when the temporal | 517 // Frame counter for the temporal pattern. Counter is rest when the temporal |
516 // layers are changed dynamically (run-time change). | 518 // layers are changed dynamically (run-time change). |
517 unsigned int temporal_pattern_counter; | 519 unsigned int temporal_pattern_counter; |
518 | 520 |
519 #if CONFIG_MULTITHREAD | 521 #if CONFIG_MULTITHREAD |
520 /* multithread data */ | 522 /* multithread data */ |
521 int * mt_current_mb_col; | 523 int * mt_current_mb_col; |
522 int mt_sync_range; | 524 int mt_sync_range; |
523 int b_multi_threaded; | 525 int b_multi_threaded; |
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
675 double total_ssimg_y_in_layer[VPX_TS_MAX_LAYERS]; | 677 double total_ssimg_y_in_layer[VPX_TS_MAX_LAYERS]; |
676 double total_ssimg_u_in_layer[VPX_TS_MAX_LAYERS]; | 678 double total_ssimg_u_in_layer[VPX_TS_MAX_LAYERS]; |
677 double total_ssimg_v_in_layer[VPX_TS_MAX_LAYERS]; | 679 double total_ssimg_v_in_layer[VPX_TS_MAX_LAYERS]; |
678 double total_ssimg_all_in_layer[VPX_TS_MAX_LAYERS]; | 680 double total_ssimg_all_in_layer[VPX_TS_MAX_LAYERS]; |
679 | 681 |
680 #if CONFIG_MULTI_RES_ENCODING | 682 #if CONFIG_MULTI_RES_ENCODING |
681 /* Number of MBs per row at lower-resolution level */ | 683 /* Number of MBs per row at lower-resolution level */ |
682 int mr_low_res_mb_cols; | 684 int mr_low_res_mb_cols; |
683 /* Indicate if lower-res mv info is available */ | 685 /* Indicate if lower-res mv info is available */ |
684 unsigned char mr_low_res_mv_avail; | 686 unsigned char mr_low_res_mv_avail; |
| 687 #endif |
685 /* The frame number of each reference frames */ | 688 /* The frame number of each reference frames */ |
686 unsigned int current_ref_frames[MAX_REF_FRAMES]; | 689 unsigned int current_ref_frames[MAX_REF_FRAMES]; |
687 #endif | 690 MV_REFERENCE_FRAME closest_reference_frame; |
688 | 691 |
689 struct rd_costs_struct | 692 struct rd_costs_struct |
690 { | 693 { |
691 int mvcosts[2][MVvals+1]; | 694 int mvcosts[2][MVvals+1]; |
692 int mvsadcosts[2][MVfpvals+1]; | 695 int mvsadcosts[2][MVfpvals+1]; |
693 int mbmode_cost[2][MB_MODE_COUNT]; | 696 int mbmode_cost[2][MB_MODE_COUNT]; |
694 int intra_uv_mode_cost[2][MB_MODE_COUNT]; | 697 int intra_uv_mode_cost[2][MB_MODE_COUNT]; |
695 int bmode_costs[10][10][10]; | 698 int bmode_costs[10][10][10]; |
696 int inter_bmode_costs[B_MODE_COUNT]; | 699 int inter_bmode_costs[B_MODE_COUNT]; |
697 int token_costs[BLOCK_TYPES][COEF_BANDS] | 700 int token_costs[BLOCK_TYPES][COEF_BANDS] |
(...skipping 22 matching lines...) Expand all Loading... |
720 if(!lval) \ | 723 if(!lval) \ |
721 vpx_internal_error(&cpi->common.error, VPX_CODEC_MEM_ERROR,\ | 724 vpx_internal_error(&cpi->common.error, VPX_CODEC_MEM_ERROR,\ |
722 "Failed to allocate "#lval);\ | 725 "Failed to allocate "#lval);\ |
723 } while(0) | 726 } while(0) |
724 #endif | 727 #endif |
725 #ifdef __cplusplus | 728 #ifdef __cplusplus |
726 } // extern "C" | 729 } // extern "C" |
727 #endif | 730 #endif |
728 | 731 |
729 #endif // VP8_ENCODER_ONYX_INT_H_ | 732 #endif // VP8_ENCODER_ONYX_INT_H_ |
OLD | NEW |