summaryrefslogtreecommitdiff
path: root/tools/tiny_ssim.c
diff options
context:
space:
mode:
authorLiu Peng <pengliu.mail@gmail.com>2018-09-14 16:25:44 -0500
committerpeng liu <pengliu.mail@gmail.com>2018-09-14 21:51:40 +0000
commitcb671194c9ac4068922a971318670c91bf96c906 (patch)
tree17ce9ac52a70d92eb86c622ee1034671be5360a0 /tools/tiny_ssim.c
parente196a6ae71507969c7bb2a048322f743e4a950fc (diff)
downloadlibvpx-cb671194c9ac4068922a971318670c91bf96c906.tar
libvpx-cb671194c9ac4068922a971318670c91bf96c906.tar.gz
libvpx-cb671194c9ac4068922a971318670c91bf96c906.tar.bz2
libvpx-cb671194c9ac4068922a971318670c91bf96c906.zip
fix a bug of tiny_ssim to handle odd frame sizes
Change-Id: Id8ef0eb211517a8f8ec764ec398d16efb9320540
Diffstat (limited to 'tools/tiny_ssim.c')
-rw-r--r--tools/tiny_ssim.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/tools/tiny_ssim.c b/tools/tiny_ssim.c
index d6b213859..315d1c1f4 100644
--- a/tools/tiny_ssim.c
+++ b/tools/tiny_ssim.c
@@ -121,7 +121,7 @@ static int open_input_file(const char *file_name, input_file_t *input, int w,
input->w = w;
input->h = h;
// handle odd frame sizes
- input->frame_size = w * h + ((w + 1) / 2 * (h + 1) / 2) * 2;
+ input->frame_size = w * h + ((w + 1) / 2) * ((h + 1) / 2) * 2;
if (bit_depth > 8) {
input->frame_size *= 2;
}
@@ -156,12 +156,12 @@ static size_t read_input_file(input_file_t *in, unsigned char **y,
r1 = fread(in->buf, in->frame_size, 1, in->file);
*y = in->buf;
*u = in->buf + in->w * in->h;
- *v = *u + (1 + in->w) / 2 * (1 + in->h) / 2;
+ *v = *u + ((1 + in->w) / 2) * ((1 + in->h) / 2);
} else {
r1 = fread(in->buf, in->frame_size, 1, in->file);
*y = in->buf;
*u = in->buf + (in->w * in->h) * 2;
- *v = *u + 2 * ((1 + in->w) / 2 * (1 + in->h) / 2);
+ *v = *u + 2 * ((1 + in->w) / 2) * ((1 + in->h) / 2);
}
break;
}