/* We need to buffer two vertical lines. */ #define CDEF_VBORDER (2) /* We only need to buffer three horizontal pixels too, but let's align to
16 bytes (8 x 16 bits) to make vectorization easier. */ #define CDEF_HBORDER (8) #define CDEF_BSTRIDE \
ALIGN_POWER_OF_TWO((1 << MAX_SB_SIZE_LOG2) + 2 * CDEF_HBORDER, 3)
typedefvoid (*cdef_filter_block_func)(void *dest, int dstride, const uint16_t *in, int pri_strength,
int sec_strength, int dir,
int pri_damping, int sec_damping,
int coeff_shift, int block_width,
int block_height);
void av1_cdef_filter_fb(uint8_t *dst8, uint16_t *dst16, int dstride, const uint16_t *in, int xdec, int ydec,
int dir[CDEF_NBLOCKS][CDEF_NBLOCKS], int *dirinit,
int var[CDEF_NBLOCKS][CDEF_NBLOCKS], int pli,
cdef_list *dlist, int cdef_count, int level,
int sec_strength, int damping, int coeff_shift);
static inline void fill_rect(uint16_t *dst, int dstride, int v, int h,
uint16_t x) {
for (int i = 0; i < v; i++) {
for (int j = 0; j < h; j++) {
dst[i * dstride + j] = x;
}
}
} #endif// AOM_AV1_COMMON_CDEF_BLOCK_H_
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.