OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2014 The WebM project authors. All Rights Reserved. | 2 * Copyright (c) 2014 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 24 matching lines...) Expand all Loading... |
35 // Estimate the bits per mb, for a given q = i and a corresponding delta-q | 35 // Estimate the bits per mb, for a given q = i and a corresponding delta-q |
36 // (for segment 1), prior to encoding the frame. | 36 // (for segment 1), prior to encoding the frame. |
37 int vp9_cyclic_refresh_rc_bits_per_mb(const struct VP9_COMP *cpi, int i, | 37 int vp9_cyclic_refresh_rc_bits_per_mb(const struct VP9_COMP *cpi, int i, |
38 double correction_factor); | 38 double correction_factor); |
39 | 39 |
40 // Prior to coding a given prediction block, of size bsize at (mi_row, mi_col), | 40 // Prior to coding a given prediction block, of size bsize at (mi_row, mi_col), |
41 // check if we should reset the segment_id, and update the cyclic_refresh map | 41 // check if we should reset the segment_id, and update the cyclic_refresh map |
42 // and segmentation map. | 42 // and segmentation map. |
43 void vp9_cyclic_refresh_update_segment(struct VP9_COMP *const cpi, | 43 void vp9_cyclic_refresh_update_segment(struct VP9_COMP *const cpi, |
44 MB_MODE_INFO *const mbmi, | 44 MB_MODE_INFO *const mbmi, |
45 int mi_row, int mi_col, | 45 int mi_row, int mi_col, BLOCK_SIZE bsize, |
46 BLOCK_SIZE bsize, int use_rd, | 46 int64_t rate, int64_t dist); |
47 int64_t rate_sb); | |
48 | 47 |
49 // Update the segmentation map, and related quantities: cyclic refresh map, | 48 // Update the segmentation map, and related quantities: cyclic refresh map, |
50 // refresh sb_index, and target number of blocks to be refreshed. | 49 // refresh sb_index, and target number of blocks to be refreshed. |
51 void vp9_cyclic_refresh_update__map(struct VP9_COMP *const cpi); | 50 void vp9_cyclic_refresh_update__map(struct VP9_COMP *const cpi); |
52 | 51 |
53 // Update the actual number of blocks that were applied the segment delta q. | 52 // Update the actual number of blocks that were applied the segment delta q. |
54 void vp9_cyclic_refresh_update_actual_count(struct VP9_COMP *const cpi); | 53 void vp9_cyclic_refresh_update_actual_count(struct VP9_COMP *const cpi); |
55 | 54 |
56 // Set/update global/frame level refresh parameters. | 55 // Set/update global/frame level refresh parameters. |
57 void vp9_cyclic_refresh_update_parameters(struct VP9_COMP *const cpi); | 56 void vp9_cyclic_refresh_update_parameters(struct VP9_COMP *const cpi); |
58 | 57 |
59 // Setup cyclic background refresh: set delta q and segmentation map. | 58 // Setup cyclic background refresh: set delta q and segmentation map. |
60 void vp9_cyclic_refresh_setup(struct VP9_COMP *const cpi); | 59 void vp9_cyclic_refresh_setup(struct VP9_COMP *const cpi); |
61 | 60 |
62 int vp9_cyclic_refresh_get_rdmult(const CYCLIC_REFRESH *cr); | 61 int vp9_cyclic_refresh_get_rdmult(const CYCLIC_REFRESH *cr); |
63 | 62 |
64 #ifdef __cplusplus | 63 #ifdef __cplusplus |
65 } // extern "C" | 64 } // extern "C" |
66 #endif | 65 #endif |
67 | 66 |
68 #endif // VP9_ENCODER_VP9_AQ_CYCLICREFRESH_H_ | 67 #endif // VP9_ENCODER_VP9_AQ_CYCLICREFRESH_H_ |
OLD | NEW |