summaryrefslogtreecommitdiffstats
path: root/libswscale
diff options
context:
space:
mode:
authorramiro <ramiro@b3059339-0415-0410-9bf9-f77b7e298cf2>2009-08-17 02:06:00 +0000
committerramiro <ramiro@b3059339-0415-0410-9bf9-f77b7e298cf2>2009-08-17 02:06:00 +0000
commit69cb72414aeeb37a5c30b1194f9ee8fff6a8d512 (patch)
tree257d44dd43c196baaf216f6b5ad978c2f3033639 /libswscale
parent46f846182864416f1038457afab2ffd35e5479ae (diff)
downloadmpv-69cb72414aeeb37a5c30b1194f9ee8fff6a8d512.tar.bz2
mpv-69cb72414aeeb37a5c30b1194f9ee8fff6a8d512.tar.xz
swscale-example: Make selection of dstW, dstH, and flags more clear.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29527 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libswscale')
-rw-r--r--libswscale/swscale-example.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/libswscale/swscale-example.c b/libswscale/swscale-example.c
index 7ea4f51de8..a3d9357a02 100644
--- a/libswscale/swscale-example.c
+++ b/libswscale/swscale-example.c
@@ -182,12 +182,18 @@ static int doTest(uint8_t *ref[4], int refStride[4], int w, int h, int srcFormat
static void selfTest(uint8_t *src[4], int stride[4], int w, int h)
{
+ const int flags[] = { SWS_FAST_BILINEAR,
+ SWS_BILINEAR, SWS_BICUBIC,
+ SWS_X , SWS_POINT , SWS_AREA, 0 };
+ const int srcW = w;
+ const int srcH = h;
+ const int dstW[] = { srcW - srcW/3, srcW, srcW + srcW/3, 0 };
+ const int dstH[] = { srcH - srcH/3, srcH, srcH + srcH/3, 0 };
enum PixelFormat srcFormat, dstFormat;
- int srcW, srcH, dstW, dstH;
- int flags;
for (srcFormat = 0; srcFormat < PIX_FMT_NB; srcFormat++) {
for (dstFormat = 0; dstFormat < PIX_FMT_NB; dstFormat++) {
+ int i, j, k;
int res = 0;
printf("%s -> %s\n",
@@ -195,13 +201,11 @@ static void selfTest(uint8_t *src[4], int stride[4], int w, int h)
sws_format_name(dstFormat));
fflush(stdout);
- srcW= w;
- srcH= h;
- for (dstW=w - w/3; !res && dstW<= 4*w/3; dstW+= w/3)
- for (dstH=h - h/3; !res && dstH<= 4*h/3; dstH+= h/3)
- for (flags=1; !res && flags<33; flags*=2)
+ for (i = 0; dstW[i] && !res; i++)
+ for (j = 0; dstH[j] && !res; j++)
+ for (k = 0; flags[k] && !res; k++)
res = doTest(src, stride, w, h, srcFormat, dstFormat,
- srcW, srcH, dstW, dstH, flags);
+ srcW, srcH, dstW[i], dstH[j], flags[k]);
}
}
}