mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-13 21:28:01 +02:00
swscale-test: const correctness
This commit is contained in:
parent
8fd8f91e47
commit
0fd0d4fd0a
@ -54,8 +54,8 @@
|
||||
(x) == AV_PIX_FMT_RGB32_1 || \
|
||||
(x) == AV_PIX_FMT_YUVA420P)
|
||||
|
||||
static uint64_t getSSD(uint8_t *src1, uint8_t *src2, int stride1,
|
||||
int stride2, int w, int h)
|
||||
static uint64_t getSSD(const uint8_t * const src1, const uint8_t * const src2,
|
||||
int stride1, int stride2, int w, int h)
|
||||
{
|
||||
int x, y;
|
||||
uint64_t ssd = 0;
|
||||
@ -79,7 +79,7 @@ struct Results {
|
||||
|
||||
// test by ref -> src -> dst -> out & compare out against ref
|
||||
// ref & out are YV12
|
||||
static int doTest(uint8_t *ref[4], int refStride[4], int w, int h,
|
||||
static int doTest(const uint8_t * const ref[4], int refStride[4], int w, int h,
|
||||
enum AVPixelFormat srcFormat, enum AVPixelFormat dstFormat,
|
||||
int srcW, int srcH, int dstW, int dstH, int flags,
|
||||
struct Results *r)
|
||||
@ -89,7 +89,7 @@ static int doTest(uint8_t *ref[4], int refStride[4], int w, int h,
|
||||
const AVPixFmtDescriptor *desc_dst = av_pix_fmt_desc_get(dstFormat);
|
||||
static enum AVPixelFormat cur_srcFormat;
|
||||
static int cur_srcW, cur_srcH;
|
||||
static uint8_t *src[4];
|
||||
static const uint8_t *src[4];
|
||||
static int srcStride[4];
|
||||
uint8_t *dst[4] = { 0 };
|
||||
uint8_t *out[4] = { 0 };
|
||||
@ -126,7 +126,8 @@ static int doTest(uint8_t *ref[4], int refStride[4], int w, int h,
|
||||
res = -1;
|
||||
goto end;
|
||||
}
|
||||
sws_scale(srcContext, ref, refStride, 0, h, src, srcStride);
|
||||
sws_scale(srcContext, ref, refStride, 0, h,
|
||||
(uint8_t * const *) src, srcStride);
|
||||
sws_freeContext(srcContext);
|
||||
|
||||
cur_srcFormat = srcFormat;
|
||||
@ -198,7 +199,8 @@ static int doTest(uint8_t *ref[4], int refStride[4], int w, int h,
|
||||
res = -1;
|
||||
goto end;
|
||||
}
|
||||
sws_scale(outContext, dst, dstStride, 0, dstH, out, refStride);
|
||||
sws_scale(outContext, (const uint8_t * const *) dst, dstStride, 0, dstH,
|
||||
out, refStride);
|
||||
|
||||
ssdY = getSSD(ref[0], out[0], refStride[0], refStride[0], w, h);
|
||||
if (hasChroma(srcFormat) && hasChroma(dstFormat)) {
|
||||
@ -236,7 +238,8 @@ end:
|
||||
return res;
|
||||
}
|
||||
|
||||
static void selfTest(uint8_t *ref[4], int refStride[4], int w, int h,
|
||||
static void selfTest(const uint8_t * const ref[4], int refStride[4],
|
||||
int w, int h,
|
||||
enum AVPixelFormat srcFormat_in,
|
||||
enum AVPixelFormat dstFormat_in)
|
||||
{
|
||||
@ -286,7 +289,8 @@ static void selfTest(uint8_t *ref[4], int refStride[4], int w, int h,
|
||||
}
|
||||
}
|
||||
|
||||
static int fileTest(uint8_t *ref[4], int refStride[4], int w, int h, FILE *fp,
|
||||
static int fileTest(const uint8_t * const ref[4], int refStride[4],
|
||||
int w, int h, FILE *fp,
|
||||
enum AVPixelFormat srcFormat_in,
|
||||
enum AVPixelFormat dstFormat_in)
|
||||
{
|
||||
@ -348,7 +352,7 @@ int main(int argc, char **argv)
|
||||
const uint8_t *rgb_src[4] = { rgb_data, NULL, NULL, NULL };
|
||||
int rgb_stride[4] = { 4 * W, 0, 0, 0 };
|
||||
uint8_t *data = av_malloc(4 * W * H);
|
||||
uint8_t *src[4] = { data, data + W * H, data + W * H * 2, data + W * H * 3 };
|
||||
const uint8_t * const src[4] = { data, data + W * H, data + W * H * 2, data + W * H * 3 };
|
||||
int stride[4] = { W, W, W, W };
|
||||
int x, y;
|
||||
struct SwsContext *sws;
|
||||
@ -367,7 +371,7 @@ int main(int argc, char **argv)
|
||||
for (y = 0; y < H; y++)
|
||||
for (x = 0; x < W * 4; x++)
|
||||
rgb_data[ x + y * 4 * W] = av_lfg_get(&rand);
|
||||
sws_scale(sws, rgb_src, rgb_stride, 0, H, src, stride);
|
||||
sws_scale(sws, rgb_src, rgb_stride, 0, H, (uint8_t * const *) src, stride);
|
||||
sws_freeContext(sws);
|
||||
av_free(rgb_data);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user