/work/svt-av1/Source/Lib/Codec/intra_prediction.h
Line | Count | Source |
1 | | /* |
2 | | * Copyright(c) 2019 Intel Corporation |
3 | | * Copyright (c) 2019, Alliance for Open Media. All rights reserved |
4 | | * |
5 | | * This source code is subject to the terms of the BSD 2 Clause License and |
6 | | * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License |
7 | | * was not distributed with this source code in the LICENSE file, you can |
8 | | * obtain it at https://www.aomedia.org/license/software-license. If the Alliance for Open |
9 | | * Media Patent License 1.0 was not distributed with this source code in the |
10 | | * PATENTS file, you can obtain it at https://www.aomedia.org/license/patent-license. |
11 | | */ |
12 | | |
13 | | #ifndef EbIntraPrediction_h |
14 | | #define EbIntraPrediction_h |
15 | | |
16 | | #include "EbSvtAv1.h" |
17 | | #include "object.h" |
18 | | #include "block_structures.h" |
19 | | #include "common_utils.h" |
20 | | |
21 | | #ifdef __cplusplus |
22 | | extern "C" { |
23 | | #endif |
24 | | |
25 | | typedef void (*IntraPredFnC)(uint8_t* dst, ptrdiff_t stride, int32_t w, int32_t h, const uint8_t* above, |
26 | | const uint8_t* left); |
27 | | typedef void (*IntraHighBdPredFnC)(uint16_t* dst, ptrdiff_t stride, int32_t w, int32_t h, const uint16_t* above, |
28 | | const uint16_t* left, int32_t bd); |
29 | | |
30 | | typedef void (*IntraPredFn)(uint8_t* dst, ptrdiff_t stride, const uint8_t* above, const uint8_t* left); |
31 | | |
32 | | typedef void (*IntraHighPredFn)(uint16_t* dst, ptrdiff_t stride, const uint16_t* above, const uint16_t* left, |
33 | | int32_t bd); |
34 | | /* for dc_prediction*/ |
35 | | #define DC_SHIFT2 16 |
36 | | #define DC_MULTIPLIER_1X2 0x5556 |
37 | | #define DC_MULTIPLIER_1X4 0x3334 |
38 | | /////####.... For recursive intra prediction.....#####/// |
39 | | |
40 | | /* for smooth_prediction*/ |
41 | | #define MAX_BLOCK_DIM 64 |
42 | | extern const int32_t sm_weight_log2_scale; |
43 | | extern const uint8_t sm_weight_arrays[2 * MAX_BLOCK_DIM]; |
44 | | |
45 | | #define FILTER_INTRA_SCALE_BITS 4 |
46 | | extern const int8_t eb_av1_filter_intra_taps[FILTER_INTRA_MODES][8][8]; |
47 | | |
48 | | int32_t svt_aom_use_intra_edge_upsample(int32_t bs0, int32_t bs1, int32_t delta, int32_t type); |
49 | | |
50 | | BlockSize svt_aom_scale_chroma_bsize(BlockSize bsize, int32_t subsampling_x, int32_t subsampling_y); |
51 | | |
52 | | int32_t svt_aom_intra_edge_filter_strength(int32_t bs0, int32_t bs1, int32_t delta, int32_t type); |
53 | | |
54 | | enum { |
55 | | NEED_LEFT = 1 << 1, |
56 | | NEED_ABOVE = 1 << 2, |
57 | | NEED_ABOVERIGHT = 1 << 3, |
58 | | NEED_ABOVELEFT = 1 << 4, |
59 | | NEED_BOTTOMLEFT = 1 << 5, |
60 | | }; |
61 | | |
62 | | static const int32_t mode_to_angle_map[] = { |
63 | | 0, |
64 | | 90, |
65 | | 180, |
66 | | 45, |
67 | | 135, |
68 | | 113, |
69 | | 157, |
70 | | 203, |
71 | | 67, |
72 | | 0, |
73 | | 0, |
74 | | 0, |
75 | | 0, |
76 | | }; |
77 | | |
78 | | extern uint8_t base_mask[33][32]; |
79 | | extern uint8_t even_odd_mask_x[8][16]; |
80 | | |
81 | | int svt_aom_is_smooth(const BlockModeInfo* mbmi, int plane); |
82 | | extern const uint8_t extend_modes[INTRA_MODES]; |
83 | | |
84 | | /* TODO: Need to harmonize with fun from EbAdaptiveMotionVectorPrediction.c */ |
85 | | int32_t svt_aom_intra_has_top_right(BlockSize sb_size, BlockSize bsize, int32_t mi_row, int32_t mi_col, |
86 | | int32_t top_available, int32_t right_available, PartitionType partition, |
87 | | TxSize txsz, int32_t row_off, int32_t col_off, int32_t ss_x, int32_t ss_y); |
88 | | |
89 | | int32_t svt_aom_intra_has_bottom_left(BlockSize sb_size, BlockSize bsize, int32_t mi_row, int32_t mi_col, |
90 | | int32_t bottom_available, int32_t left_available, PartitionType partition, |
91 | | TxSize txsz, int32_t row_off, int32_t col_off, int32_t ss_x, int32_t ss_y); |
92 | | |
93 | | extern IntraPredFn svt_aom_eb_pred[INTRA_MODES][TX_SIZES_ALL]; |
94 | | extern IntraPredFn svt_aom_dc_pred[2][2][TX_SIZES_ALL]; |
95 | | |
96 | | extern IntraHighPredFn svt_aom_pred_high[INTRA_MODES][TX_SIZES_ALL]; |
97 | | extern IntraHighPredFn svt_aom_dc_pred_high[2][2][TX_SIZES_ALL]; |
98 | | |
99 | | void svt_aom_dr_predictor(uint8_t* dst, ptrdiff_t stride, TxSize tx_size, const uint8_t* above, const uint8_t* left, |
100 | | int32_t upsample_above, int32_t upsample_left, int32_t angle); |
101 | | |
102 | | void filter_intra_edge_corner(uint8_t* p_above, uint8_t* p_left); |
103 | | |
104 | | void svt_aom_highbd_dr_predictor(uint16_t* dst, ptrdiff_t stride, TxSize tx_size, const uint16_t* above, |
105 | | const uint16_t* left, int32_t upsample_above, int32_t upsample_left, int32_t angle, |
106 | | int32_t bd); |
107 | | |
108 | | void filter_intra_edge_corner_high(uint16_t* p_above, uint16_t* p_left); |
109 | | |
110 | | void svt_aom_highbd_filter_intra_predictor(uint16_t* dst, ptrdiff_t stride, TxSize tx_size, const uint16_t* above, |
111 | | const uint16_t* left, int mode, int bd); |
112 | | |
113 | | void svt_cfl_luma_subsampling_420_lbd_c(const uint8_t* input, // AMIR-> Changed to 8 bit |
114 | | int32_t input_stride, int16_t* output_q3, int32_t width, int32_t height); |
115 | | void svt_cfl_luma_subsampling_420_hbd_c(const uint16_t* input, int32_t input_stride, int16_t* output_q3, int32_t width, |
116 | | int32_t height); |
117 | | void svt_subtract_average_c(int16_t* pred_buf_q3, int32_t width, int32_t height, int32_t round_offset, |
118 | | int32_t num_pel_log2); |
119 | | |
120 | | //CFL_PREDICT_FN(c, lbd) |
121 | | |
122 | | void svt_cfl_predict_lbd_c(const int16_t* pred_buf_q3, |
123 | | uint8_t* pred, // AMIR ADDED |
124 | | int32_t pred_stride, |
125 | | uint8_t* dst, // AMIR changed to 8 bit |
126 | | int32_t dst_stride, int32_t alpha_q3, int32_t bit_depth, int32_t width, int32_t height); |
127 | | |
128 | | void svt_cfl_predict_hbd_c(const int16_t* pred_buf_q3, |
129 | | uint16_t* pred, // AMIR ADDED |
130 | | int32_t pred_stride, |
131 | | uint16_t* dst, // AMIR changed to 8 bit |
132 | | int32_t dst_stride, int32_t alpha_q3, int32_t bit_depth, int32_t width, int32_t height); |
133 | | |
134 | 0 | static INLINE int32_t cfl_idx_to_alpha(int32_t alpha_idx, int32_t joint_sign, CflPredType pred_type) { |
135 | 0 | const int32_t alpha_sign = (pred_type == CFL_PRED_U) ? CFL_SIGN_U(joint_sign) : CFL_SIGN_V(joint_sign); |
136 | 0 | if (alpha_sign == CFL_SIGN_ZERO) { |
137 | 0 | return 0; |
138 | 0 | } |
139 | 0 | const int32_t abs_alpha_q3 = (pred_type == CFL_PRED_U) ? CFL_IDX_U(alpha_idx) : CFL_IDX_V(alpha_idx); |
140 | 0 | return (alpha_sign == CFL_SIGN_POS) ? abs_alpha_q3 + 1 : -abs_alpha_q3 - 1; |
141 | 0 | } Unexecuted instantiation: enc_handle.c:cfl_idx_to_alpha Unexecuted instantiation: enc_settings.c:cfl_idx_to_alpha Unexecuted instantiation: av1me.c:cfl_idx_to_alpha Unexecuted instantiation: cdef_process.c:cfl_idx_to_alpha Unexecuted instantiation: dlf_process.c:cfl_idx_to_alpha Unexecuted instantiation: enc_cdef.c:cfl_idx_to_alpha Unexecuted instantiation: enc_dec_process.c:cfl_idx_to_alpha Unexecuted instantiation: enc_inter_prediction.c:cfl_idx_to_alpha Unexecuted instantiation: enc_intra_prediction.c:cfl_idx_to_alpha Unexecuted instantiation: enc_mode_config.c:cfl_idx_to_alpha Unexecuted instantiation: entropy_coding.c:cfl_idx_to_alpha Unexecuted instantiation: ec_process.c:cfl_idx_to_alpha Unexecuted instantiation: full_loop.c:cfl_idx_to_alpha Unexecuted instantiation: intra_prediction.c:cfl_idx_to_alpha Unexecuted instantiation: md_rate_estimation.c:cfl_idx_to_alpha Unexecuted instantiation: mode_decision.c:cfl_idx_to_alpha Unexecuted instantiation: md_config_process.c:cfl_idx_to_alpha Unexecuted instantiation: md_process.c:cfl_idx_to_alpha Unexecuted instantiation: motion_estimation.c:cfl_idx_to_alpha Unexecuted instantiation: me_process.c:cfl_idx_to_alpha Unexecuted instantiation: packetization_process.c:cfl_idx_to_alpha Unexecuted instantiation: palette.c:cfl_idx_to_alpha Unexecuted instantiation: pcs.c:cfl_idx_to_alpha Unexecuted instantiation: pd_process.c:cfl_idx_to_alpha Unexecuted instantiation: pic_manager_process.c:cfl_idx_to_alpha Unexecuted instantiation: pic_operators.c:cfl_idx_to_alpha Unexecuted instantiation: product_coding_loop.c:cfl_idx_to_alpha Unexecuted instantiation: rc_process.c:cfl_idx_to_alpha Unexecuted instantiation: rc_rtc_cbr.c:cfl_idx_to_alpha Unexecuted instantiation: rc_vbr_cbr.c:cfl_idx_to_alpha Unexecuted instantiation: rd_cost.c:cfl_idx_to_alpha Unexecuted instantiation: reference_object.c:cfl_idx_to_alpha Unexecuted instantiation: resize.c:cfl_idx_to_alpha Unexecuted instantiation: resource_coordination_process.c:cfl_idx_to_alpha Unexecuted instantiation: rest_process.c:cfl_idx_to_alpha Unexecuted instantiation: restoration.c:cfl_idx_to_alpha Unexecuted instantiation: restoration_pick.c:cfl_idx_to_alpha Unexecuted instantiation: segmentation.c:cfl_idx_to_alpha Unexecuted instantiation: src_ops_process.c:cfl_idx_to_alpha Unexecuted instantiation: super_res.c:cfl_idx_to_alpha Unexecuted instantiation: temporal_filtering.c:cfl_idx_to_alpha Unexecuted instantiation: transforms.c:cfl_idx_to_alpha Unexecuted instantiation: encode_txb_ref_c.c:cfl_idx_to_alpha Unexecuted instantiation: adaptive_mv_pred.c:cfl_idx_to_alpha Unexecuted instantiation: coding_loop.c:cfl_idx_to_alpha Unexecuted instantiation: coding_unit.c:cfl_idx_to_alpha Unexecuted instantiation: deblocking_filter.c:cfl_idx_to_alpha Unexecuted instantiation: firstpass.c:cfl_idx_to_alpha Unexecuted instantiation: global_me_cost.c:cfl_idx_to_alpha Unexecuted instantiation: mcomp.c:cfl_idx_to_alpha Unexecuted instantiation: pass2_strategy.c:cfl_idx_to_alpha Unexecuted instantiation: rc_crf_cqp.c:cfl_idx_to_alpha |
142 | | |
143 | | void svt_aom_filter_intra_edge(uint8_t mode, uint16_t max_frame_width, uint16_t max_frame_height, int32_t p_angle, |
144 | | int32_t cu_origin_x, int32_t cu_origin_y, uint8_t* above_row, uint8_t* left_col); |
145 | | EbErrorType svt_aom_intra_prediction_open_loop_mb(int32_t p_angle, uint8_t ois_intra_mode, uint32_t srcOriginX, |
146 | | uint32_t srcOriginY, TxSize tx_size, uint8_t* above_row, |
147 | | uint8_t* left_col, uint8_t* dst, uint32_t dst_stride); |
148 | | /* Function pointers return by CfL functions */ |
149 | | typedef void (*CflSubtractAverageFn)(int16_t* dst); |
150 | | |
151 | | CflSubtractAverageFn svt_get_subtract_average_fn_c(TxSize tx_size); |
152 | | #define get_subtract_average_fn svt_get_subtract_average_fn_c |
153 | | |
154 | | // Declare a size-specific wrapper for the size-generic function. The compiler |
155 | | // will inline the size generic function in here, the advantage is that the size |
156 | | // will be constant allowing for loop unrolling and other constant propagated |
157 | | // goodness. |
158 | | #define CFL_SUB_AVG_X(arch, width, height, round_offset, num_pel_log2) \ |
159 | 0 | void svt_subtract_average_##width##x##height##_##arch(int16_t* buf) { \ |
160 | 0 | svt_subtract_average_##arch(buf, width, height, round_offset, num_pel_log2); \ |
161 | 0 | } Unexecuted instantiation: svt_subtract_average_4x4_c Unexecuted instantiation: svt_subtract_average_4x8_c Unexecuted instantiation: svt_subtract_average_4x16_c Unexecuted instantiation: svt_subtract_average_8x4_c Unexecuted instantiation: svt_subtract_average_8x8_c Unexecuted instantiation: svt_subtract_average_8x16_c Unexecuted instantiation: svt_subtract_average_8x32_c Unexecuted instantiation: svt_subtract_average_16x4_c Unexecuted instantiation: svt_subtract_average_16x8_c Unexecuted instantiation: svt_subtract_average_16x16_c Unexecuted instantiation: svt_subtract_average_16x32_c Unexecuted instantiation: svt_subtract_average_32x8_c Unexecuted instantiation: svt_subtract_average_32x16_c Unexecuted instantiation: svt_subtract_average_32x32_c |
162 | | |
163 | | // Declare size-specific wrappers for all valid CfL sizes. |
164 | | #define CFL_SUB_AVG_FN(arch) \ |
165 | | CFL_SUB_AVG_X(arch, 4, 4, 8, 4) \ |
166 | | CFL_SUB_AVG_X(arch, 4, 8, 16, 5) \ |
167 | | CFL_SUB_AVG_X(arch, 4, 16, 32, 6) \ |
168 | | CFL_SUB_AVG_X(arch, 8, 4, 16, 5) \ |
169 | | CFL_SUB_AVG_X(arch, 8, 8, 32, 6) \ |
170 | | CFL_SUB_AVG_X(arch, 8, 16, 64, 7) \ |
171 | | CFL_SUB_AVG_X(arch, 8, 32, 128, 8) \ |
172 | | CFL_SUB_AVG_X(arch, 16, 4, 32, 6) \ |
173 | | CFL_SUB_AVG_X(arch, 16, 8, 64, 7) \ |
174 | | CFL_SUB_AVG_X(arch, 16, 16, 128, 8) \ |
175 | | CFL_SUB_AVG_X(arch, 16, 32, 256, 9) \ |
176 | | CFL_SUB_AVG_X(arch, 32, 8, 128, 8) \ |
177 | | CFL_SUB_AVG_X(arch, 32, 16, 256, 9) \ |
178 | | CFL_SUB_AVG_X(arch, 32, 32, 512, 10) \ |
179 | 0 | CflSubtractAverageFn svt_get_subtract_average_fn_##arch(TxSize tx_size) { \ |
180 | 0 | const CflSubtractAverageFn sub_avg[TX_SIZES_ALL] = { \ |
181 | 0 | svt_subtract_average_4x4_##arch, /* 4x4 */ \ |
182 | 0 | svt_subtract_average_8x8_##arch, /* 8x8 */ \ |
183 | 0 | svt_subtract_average_16x16_##arch, /* 16x16 */ \ |
184 | 0 | svt_subtract_average_32x32_##arch, /* 32x32 */ \ |
185 | 0 | NULL, /* 64x64 (invalid CFL size) */ \ |
186 | 0 | svt_subtract_average_4x8_##arch, /* 4x8 */ \ |
187 | 0 | svt_subtract_average_8x4_##arch, /* 8x4 */ \ |
188 | 0 | svt_subtract_average_8x16_##arch, /* 8x16 */ \ |
189 | 0 | svt_subtract_average_16x8_##arch, /* 16x8 */ \ |
190 | 0 | svt_subtract_average_16x32_##arch, /* 16x32 */ \ |
191 | 0 | svt_subtract_average_32x16_##arch, /* 32x16 */ \ |
192 | 0 | NULL, /* 32x64 (invalid CFL size) */ \ |
193 | 0 | NULL, /* 64x32 (invalid CFL size) */ \ |
194 | 0 | svt_subtract_average_4x16_##arch, /* 4x16 (invalid CFL size) */ \ |
195 | 0 | svt_subtract_average_16x4_##arch, /* 16x4 (invalid CFL size) */ \ |
196 | 0 | svt_subtract_average_8x32_##arch, /* 8x32 (invalid CFL size) */ \ |
197 | 0 | svt_subtract_average_32x8_##arch, /* 32x8 (invalid CFL size) */ \ |
198 | 0 | NULL, /* 16x64 (invalid CFL size) */ \ |
199 | 0 | NULL, /* 64x16 (invalid CFL size) */ \ |
200 | 0 | }; \ |
201 | 0 | /* Modulo TX_SIZES_ALL to ensure that an attacker won't be able to */ \ |
202 | 0 | /* index the function pointer array out of bounds. */ \ |
203 | 0 | return sub_avg[tx_size % TX_SIZES_ALL]; \ |
204 | 0 | } |
205 | | |
206 | 2.47M | static INLINE int32_t av1_is_directional_mode(PredictionMode mode) { |
207 | 2.47M | return mode >= V_PRED && mode <= D67_PRED; |
208 | 2.47M | } Unexecuted instantiation: enc_handle.c:av1_is_directional_mode Unexecuted instantiation: enc_settings.c:av1_is_directional_mode Unexecuted instantiation: av1me.c:av1_is_directional_mode Unexecuted instantiation: cdef_process.c:av1_is_directional_mode Unexecuted instantiation: dlf_process.c:av1_is_directional_mode Unexecuted instantiation: enc_cdef.c:av1_is_directional_mode Unexecuted instantiation: enc_dec_process.c:av1_is_directional_mode Unexecuted instantiation: enc_inter_prediction.c:av1_is_directional_mode enc_intra_prediction.c:av1_is_directional_mode Line | Count | Source | 206 | 1.46M | static INLINE int32_t av1_is_directional_mode(PredictionMode mode) { | 207 | 1.46M | return mode >= V_PRED && mode <= D67_PRED; | 208 | 1.46M | } |
Unexecuted instantiation: enc_mode_config.c:av1_is_directional_mode entropy_coding.c:av1_is_directional_mode Line | Count | Source | 206 | 256k | static INLINE int32_t av1_is_directional_mode(PredictionMode mode) { | 207 | 256k | return mode >= V_PRED && mode <= D67_PRED; | 208 | 256k | } |
Unexecuted instantiation: ec_process.c:av1_is_directional_mode Unexecuted instantiation: full_loop.c:av1_is_directional_mode Unexecuted instantiation: intra_prediction.c:av1_is_directional_mode Unexecuted instantiation: md_rate_estimation.c:av1_is_directional_mode mode_decision.c:av1_is_directional_mode Line | Count | Source | 206 | 490k | static INLINE int32_t av1_is_directional_mode(PredictionMode mode) { | 207 | 490k | return mode >= V_PRED && mode <= D67_PRED; | 208 | 490k | } |
Unexecuted instantiation: md_config_process.c:av1_is_directional_mode Unexecuted instantiation: md_process.c:av1_is_directional_mode Unexecuted instantiation: motion_estimation.c:av1_is_directional_mode Unexecuted instantiation: me_process.c:av1_is_directional_mode Unexecuted instantiation: packetization_process.c:av1_is_directional_mode Unexecuted instantiation: pcs.c:av1_is_directional_mode Unexecuted instantiation: pd_process.c:av1_is_directional_mode Unexecuted instantiation: pic_manager_process.c:av1_is_directional_mode Unexecuted instantiation: pic_operators.c:av1_is_directional_mode Unexecuted instantiation: product_coding_loop.c:av1_is_directional_mode Unexecuted instantiation: rc_process.c:av1_is_directional_mode Unexecuted instantiation: rc_rtc_cbr.c:av1_is_directional_mode Unexecuted instantiation: rc_vbr_cbr.c:av1_is_directional_mode rd_cost.c:av1_is_directional_mode Line | Count | Source | 206 | 254k | static INLINE int32_t av1_is_directional_mode(PredictionMode mode) { | 207 | 254k | return mode >= V_PRED && mode <= D67_PRED; | 208 | 254k | } |
Unexecuted instantiation: reference_object.c:av1_is_directional_mode Unexecuted instantiation: resize.c:av1_is_directional_mode Unexecuted instantiation: resource_coordination_process.c:av1_is_directional_mode Unexecuted instantiation: rest_process.c:av1_is_directional_mode Unexecuted instantiation: restoration.c:av1_is_directional_mode Unexecuted instantiation: restoration_pick.c:av1_is_directional_mode Unexecuted instantiation: segmentation.c:av1_is_directional_mode Unexecuted instantiation: src_ops_process.c:av1_is_directional_mode Unexecuted instantiation: super_res.c:av1_is_directional_mode Unexecuted instantiation: temporal_filtering.c:av1_is_directional_mode Unexecuted instantiation: transforms.c:av1_is_directional_mode Unexecuted instantiation: encode_txb_ref_c.c:av1_is_directional_mode Unexecuted instantiation: adaptive_mv_pred.c:av1_is_directional_mode Unexecuted instantiation: coding_loop.c:av1_is_directional_mode Unexecuted instantiation: coding_unit.c:av1_is_directional_mode Unexecuted instantiation: deblocking_filter.c:av1_is_directional_mode Unexecuted instantiation: global_me_cost.c:av1_is_directional_mode Unexecuted instantiation: mcomp.c:av1_is_directional_mode Unexecuted instantiation: pass2_strategy.c:av1_is_directional_mode Unexecuted instantiation: rc_crf_cqp.c:av1_is_directional_mode |
209 | | |
210 | 0 | static INLINE int get_palette_bsize_ctx(BlockSize bsize) { |
211 | 0 | return eb_num_pels_log2_lookup[bsize] - eb_num_pels_log2_lookup[BLOCK_8X8]; |
212 | 0 | } Unexecuted instantiation: enc_handle.c:get_palette_bsize_ctx Unexecuted instantiation: enc_settings.c:get_palette_bsize_ctx Unexecuted instantiation: av1me.c:get_palette_bsize_ctx Unexecuted instantiation: cdef_process.c:get_palette_bsize_ctx Unexecuted instantiation: dlf_process.c:get_palette_bsize_ctx Unexecuted instantiation: enc_cdef.c:get_palette_bsize_ctx Unexecuted instantiation: enc_dec_process.c:get_palette_bsize_ctx Unexecuted instantiation: enc_inter_prediction.c:get_palette_bsize_ctx Unexecuted instantiation: enc_intra_prediction.c:get_palette_bsize_ctx Unexecuted instantiation: enc_mode_config.c:get_palette_bsize_ctx Unexecuted instantiation: entropy_coding.c:get_palette_bsize_ctx Unexecuted instantiation: ec_process.c:get_palette_bsize_ctx Unexecuted instantiation: full_loop.c:get_palette_bsize_ctx Unexecuted instantiation: intra_prediction.c:get_palette_bsize_ctx Unexecuted instantiation: md_rate_estimation.c:get_palette_bsize_ctx Unexecuted instantiation: mode_decision.c:get_palette_bsize_ctx Unexecuted instantiation: md_config_process.c:get_palette_bsize_ctx Unexecuted instantiation: md_process.c:get_palette_bsize_ctx Unexecuted instantiation: motion_estimation.c:get_palette_bsize_ctx Unexecuted instantiation: me_process.c:get_palette_bsize_ctx Unexecuted instantiation: packetization_process.c:get_palette_bsize_ctx Unexecuted instantiation: palette.c:get_palette_bsize_ctx Unexecuted instantiation: pcs.c:get_palette_bsize_ctx Unexecuted instantiation: pd_process.c:get_palette_bsize_ctx Unexecuted instantiation: pic_manager_process.c:get_palette_bsize_ctx Unexecuted instantiation: pic_operators.c:get_palette_bsize_ctx Unexecuted instantiation: product_coding_loop.c:get_palette_bsize_ctx Unexecuted instantiation: rc_process.c:get_palette_bsize_ctx Unexecuted instantiation: rc_rtc_cbr.c:get_palette_bsize_ctx Unexecuted instantiation: rc_vbr_cbr.c:get_palette_bsize_ctx Unexecuted instantiation: rd_cost.c:get_palette_bsize_ctx Unexecuted instantiation: reference_object.c:get_palette_bsize_ctx Unexecuted instantiation: resize.c:get_palette_bsize_ctx Unexecuted instantiation: resource_coordination_process.c:get_palette_bsize_ctx Unexecuted instantiation: rest_process.c:get_palette_bsize_ctx Unexecuted instantiation: restoration.c:get_palette_bsize_ctx Unexecuted instantiation: restoration_pick.c:get_palette_bsize_ctx Unexecuted instantiation: segmentation.c:get_palette_bsize_ctx Unexecuted instantiation: src_ops_process.c:get_palette_bsize_ctx Unexecuted instantiation: super_res.c:get_palette_bsize_ctx Unexecuted instantiation: temporal_filtering.c:get_palette_bsize_ctx Unexecuted instantiation: transforms.c:get_palette_bsize_ctx Unexecuted instantiation: encode_txb_ref_c.c:get_palette_bsize_ctx Unexecuted instantiation: adaptive_mv_pred.c:get_palette_bsize_ctx Unexecuted instantiation: coding_loop.c:get_palette_bsize_ctx Unexecuted instantiation: coding_unit.c:get_palette_bsize_ctx Unexecuted instantiation: deblocking_filter.c:get_palette_bsize_ctx Unexecuted instantiation: firstpass.c:get_palette_bsize_ctx Unexecuted instantiation: global_me_cost.c:get_palette_bsize_ctx Unexecuted instantiation: mcomp.c:get_palette_bsize_ctx Unexecuted instantiation: pass2_strategy.c:get_palette_bsize_ctx Unexecuted instantiation: rc_crf_cqp.c:get_palette_bsize_ctx |
213 | | |
214 | 126k | static INLINE bool av1_use_angle_delta(BlockSize bsize) { |
215 | 126k | return bsize >= BLOCK_8X8; |
216 | 126k | } Unexecuted instantiation: enc_handle.c:av1_use_angle_delta Unexecuted instantiation: enc_settings.c:av1_use_angle_delta Unexecuted instantiation: av1me.c:av1_use_angle_delta Unexecuted instantiation: cdef_process.c:av1_use_angle_delta Unexecuted instantiation: dlf_process.c:av1_use_angle_delta Unexecuted instantiation: enc_cdef.c:av1_use_angle_delta Unexecuted instantiation: enc_dec_process.c:av1_use_angle_delta Unexecuted instantiation: enc_inter_prediction.c:av1_use_angle_delta Unexecuted instantiation: enc_intra_prediction.c:av1_use_angle_delta Unexecuted instantiation: enc_mode_config.c:av1_use_angle_delta Unexecuted instantiation: entropy_coding.c:av1_use_angle_delta Unexecuted instantiation: ec_process.c:av1_use_angle_delta Unexecuted instantiation: full_loop.c:av1_use_angle_delta Unexecuted instantiation: intra_prediction.c:av1_use_angle_delta Unexecuted instantiation: md_rate_estimation.c:av1_use_angle_delta mode_decision.c:av1_use_angle_delta Line | Count | Source | 214 | 126k | static INLINE bool av1_use_angle_delta(BlockSize bsize) { | 215 | 126k | return bsize >= BLOCK_8X8; | 216 | 126k | } |
Unexecuted instantiation: md_config_process.c:av1_use_angle_delta Unexecuted instantiation: md_process.c:av1_use_angle_delta Unexecuted instantiation: motion_estimation.c:av1_use_angle_delta Unexecuted instantiation: me_process.c:av1_use_angle_delta Unexecuted instantiation: packetization_process.c:av1_use_angle_delta Unexecuted instantiation: pcs.c:av1_use_angle_delta Unexecuted instantiation: pd_process.c:av1_use_angle_delta Unexecuted instantiation: pic_manager_process.c:av1_use_angle_delta Unexecuted instantiation: pic_operators.c:av1_use_angle_delta Unexecuted instantiation: product_coding_loop.c:av1_use_angle_delta Unexecuted instantiation: rc_process.c:av1_use_angle_delta Unexecuted instantiation: rc_rtc_cbr.c:av1_use_angle_delta Unexecuted instantiation: rc_vbr_cbr.c:av1_use_angle_delta Unexecuted instantiation: rd_cost.c:av1_use_angle_delta Unexecuted instantiation: reference_object.c:av1_use_angle_delta Unexecuted instantiation: resize.c:av1_use_angle_delta Unexecuted instantiation: resource_coordination_process.c:av1_use_angle_delta Unexecuted instantiation: rest_process.c:av1_use_angle_delta Unexecuted instantiation: restoration.c:av1_use_angle_delta Unexecuted instantiation: restoration_pick.c:av1_use_angle_delta Unexecuted instantiation: segmentation.c:av1_use_angle_delta Unexecuted instantiation: src_ops_process.c:av1_use_angle_delta Unexecuted instantiation: super_res.c:av1_use_angle_delta Unexecuted instantiation: temporal_filtering.c:av1_use_angle_delta Unexecuted instantiation: transforms.c:av1_use_angle_delta Unexecuted instantiation: encode_txb_ref_c.c:av1_use_angle_delta Unexecuted instantiation: adaptive_mv_pred.c:av1_use_angle_delta Unexecuted instantiation: coding_loop.c:av1_use_angle_delta Unexecuted instantiation: coding_unit.c:av1_use_angle_delta Unexecuted instantiation: deblocking_filter.c:av1_use_angle_delta Unexecuted instantiation: global_me_cost.c:av1_use_angle_delta Unexecuted instantiation: mcomp.c:av1_use_angle_delta Unexecuted instantiation: pass2_strategy.c:av1_use_angle_delta Unexecuted instantiation: rc_crf_cqp.c:av1_use_angle_delta |
217 | | |
218 | | #ifdef __cplusplus |
219 | | } |
220 | | #endif |
221 | | #endif // EbIntraPrediction_h |