[FFmpeg-cvslog] r10521 - trunk/libavcodec/bfin/dsputil_bfin.c

mhoffman subversion
Mon Sep 17 15:23:16 CEST 2007


Author: mhoffman
Date: Mon Sep 17 15:23:16 2007
New Revision: 10521

Log:
blackfin vsad primitives

Modified:
   trunk/libavcodec/bfin/dsputil_bfin.c

Modified: trunk/libavcodec/bfin/dsputil_bfin.c
==============================================================================
--- trunk/libavcodec/bfin/dsputil_bfin.c	(original)
+++ trunk/libavcodec/bfin/dsputil_bfin.c	Mon Sep 17 15:23:16 2007
@@ -161,6 +161,15 @@ static int bfin_pix_abs16 (void *c, uint
     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, A
     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;




More information about the ffmpeg-cvslog mailing list