Mercurial > libavcodec.hg
comparison dsputil.c @ 866:725ef4ea3ecc libavcodec
huffyuv
| author | michaelni |
|---|---|
| date | Thu, 14 Nov 2002 19:20:04 +0000 |
| parents | 243cc33da3eb |
| children | 34943cb0c2fb |
comparison
equal
deleted
inserted
replaced
| 865:704f13bfc652 | 866:725ef4ea3ecc |
|---|---|
| 1340 static void clear_blocks_c(DCTELEM *blocks) | 1340 static void clear_blocks_c(DCTELEM *blocks) |
| 1341 { | 1341 { |
| 1342 memset(blocks, 0, sizeof(DCTELEM)*6*64); | 1342 memset(blocks, 0, sizeof(DCTELEM)*6*64); |
| 1343 } | 1343 } |
| 1344 | 1344 |
| 1345 static void add_bytes_c(uint8_t *dst, uint8_t *src, int w){ | |
| 1346 int i; | |
| 1347 for(i=0; i+7<w; i++){ | |
| 1348 dst[i+0] += src[i+0]; | |
| 1349 dst[i+1] += src[i+1]; | |
| 1350 dst[i+2] += src[i+2]; | |
| 1351 dst[i+3] += src[i+3]; | |
| 1352 dst[i+4] += src[i+4]; | |
| 1353 dst[i+5] += src[i+5]; | |
| 1354 dst[i+6] += src[i+6]; | |
| 1355 dst[i+7] += src[i+7]; | |
| 1356 } | |
| 1357 for(; i<w; i++) | |
| 1358 dst[i+0] += src[i+0]; | |
| 1359 } | |
| 1360 | |
| 1361 static void diff_bytes_c(uint8_t *dst, uint8_t *src1, uint8_t *src2, int w){ | |
| 1362 int i; | |
| 1363 for(i=0; i+7<w; i++){ | |
| 1364 dst[i+0] = src1[i+0]-src2[i+0]; | |
| 1365 dst[i+1] = src1[i+1]-src2[i+1]; | |
| 1366 dst[i+2] = src1[i+2]-src2[i+2]; | |
| 1367 dst[i+3] = src1[i+3]-src2[i+3]; | |
| 1368 dst[i+4] = src1[i+4]-src2[i+4]; | |
| 1369 dst[i+5] = src1[i+5]-src2[i+5]; | |
| 1370 dst[i+6] = src1[i+6]-src2[i+6]; | |
| 1371 dst[i+7] = src1[i+7]-src2[i+7]; | |
| 1372 } | |
| 1373 for(; i<w; i++) | |
| 1374 dst[i+0] = src1[i+0]-src2[i+0]; | |
| 1375 } | |
| 1376 | |
| 1345 void dsputil_init(DSPContext* c, unsigned mask) | 1377 void dsputil_init(DSPContext* c, unsigned mask) |
| 1346 { | 1378 { |
| 1347 static int init_done = 0; | 1379 static int init_done = 0; |
| 1348 int i; | 1380 int i; |
| 1349 | 1381 |
| 1428 dspfunc(put_no_rnd_qpel, 1, 8); | 1460 dspfunc(put_no_rnd_qpel, 1, 8); |
| 1429 | 1461 |
| 1430 dspfunc(avg_qpel, 1, 8); | 1462 dspfunc(avg_qpel, 1, 8); |
| 1431 /* dspfunc(avg_no_rnd_qpel, 1, 8); */ | 1463 /* dspfunc(avg_no_rnd_qpel, 1, 8); */ |
| 1432 #undef dspfunc | 1464 #undef dspfunc |
| 1465 | |
| 1466 c->add_bytes= add_bytes_c; | |
| 1467 c->diff_bytes= diff_bytes_c; | |
| 1433 | 1468 |
| 1434 #ifdef HAVE_MMX | 1469 #ifdef HAVE_MMX |
| 1435 dsputil_init_mmx(c, mask); | 1470 dsputil_init_mmx(c, mask); |
| 1436 if (ff_bit_exact) | 1471 if (ff_bit_exact) |
| 1437 { | 1472 { |
