|
|
|
@ -161,6 +161,15 @@ static int bfin_pix_abs16 (void *c, uint8_t *blk1, uint8_t *blk2, int line_size, |
|
|
|
|
return ff_bfin_z_sad16x16 (blk1,blk2,line_size,line_size,h); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static int bfin_vsad_intra16 (void *c, uint8_t *blk1, uint8_t *dummy, int stride, int h) { |
|
|
|
|
return ff_bfin_z_sad16x16 (blk1,blk1+stride,stride<<1,stride<<1,h); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static int bfin_vsad (void *c, uint8_t *blk1, uint8_t *blk2, int stride, int h) { |
|
|
|
|
return ff_bfin_z_sad16x16 (blk1,blk1+stride,stride<<1,stride<<1,h) |
|
|
|
|
+ ff_bfin_z_sad16x16 (blk2,blk2+stride,stride<<1,stride<<1,h); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static uint8_t vtmp_blk[256] __attribute__((l1_data_B)); |
|
|
|
|
|
|
|
|
|
static int bfin_pix_abs16_x2 (void *c, uint8_t *blk1, uint8_t *blk2, int line_size, int h) |
|
|
|
@ -230,6 +239,9 @@ void dsputil_init_bfin( DSPContext* c, AVCodecContext *avctx ) |
|
|
|
|
c->sad[0] = bfin_pix_abs16; |
|
|
|
|
c->sad[1] = bfin_pix_abs8; |
|
|
|
|
|
|
|
|
|
c->vsad[0] = bfin_vsad; |
|
|
|
|
c->vsad[4] = bfin_vsad_intra16; |
|
|
|
|
|
|
|
|
|
/* TODO [0] 16 [1] 8 */ |
|
|
|
|
c->pix_abs[0][0] = bfin_pix_abs16; |
|
|
|
|
c->pix_abs[0][1] = bfin_pix_abs16_x2; |
|
|
|
|