# HG changeset patch # User ramiro # Date 1282228576 0 # Node ID 989b68128b4593ec04f2d8a5bfe7fde23c5cd217 # Parent 275c14fdfd809d853990e401ec9abefd77ad9650 swscale-test: add CRC output diff -r 275c14fdfd80 -r 989b68128b45 libswscale/swscale-test.c --- a/libswscale/swscale-test.c Wed Aug 18 23:20:23 2010 +0000 +++ b/libswscale/swscale-test.c Thu Aug 19 14:36:16 2010 +0000 @@ -28,6 +28,7 @@ #include "libavcore/imgutils.h" #include "libavutil/mem.h" #include "libavutil/avutil.h" +#include "libavutil/crc.h" #include "libavutil/pixdesc.h" #include "libavutil/lfg.h" #include "swscale.h" @@ -83,6 +84,7 @@ int i; uint64_t ssdY, ssdU=0, ssdV=0, ssdA=0; struct SwsContext *dstContext = NULL, *outContext = NULL; + uint32_t crc = 0; int res = 0; av_fill_image_linesizes(dstStride, dstFormat, dstW); @@ -135,6 +137,10 @@ sws_scale(dstContext, src, srcStride, 0, srcH, dst, dstStride); sws_scale(outContext, dst, dstStride, 0, dstH, out, refStride); + for (i = 0; i < 4 && dstStride[i]; i++) { + crc = av_crc(av_crc_get_table(AV_CRC_32_IEEE), crc, dst[i], dstStride[i] * dstH); + } + ssdY= getSSD(ref[0], out[0], refStride[0], refStride[0], w, h); if (hasChroma(srcFormat) && hasChroma(dstFormat)) { //FIXME check that output is really gray @@ -149,8 +155,8 @@ ssdV/= w*h/4; ssdA/= w*h; - printf(" SSD=%5"PRId64",%5"PRId64",%5"PRId64",%5"PRId64"\n", - ssdY, ssdU, ssdV, ssdA); + printf(" CRC=%08x SSD=%5"PRId64",%5"PRId64",%5"PRId64",%5"PRId64"\n", + crc, ssdY, ssdU, ssdV, ssdA); end: