From 6aea309a93d31d775642c6d2b66bc51db6adcbea Mon Sep 17 00:00:00 2001 From: John Koleszar Date: Wed, 14 Sep 2011 11:25:24 -0400 Subject: [PATCH] Fix odd-sized image support in decoder examples Odd sized images need their chroma plane sizes rounded up. Change-Id: I3cd6fa60551f05697b67ece5b6928bef2a41bad8 --- examples/decode_to_md5.txt | 4 ++-- examples/decoder_tmpl.txt | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/examples/decode_to_md5.txt b/examples/decode_to_md5.txt index b3dd56876..ea0eb69cd 100644 --- a/examples/decode_to_md5.txt +++ b/examples/decode_to_md5.txt @@ -34,8 +34,8 @@ MD5Init(&md5); for(plane=0; plane < 3; plane++) { unsigned char *buf =img->planes[plane]; - for(y=0; yd_h >> (plane?1:0); y++) { - MD5Update(&md5, buf, img->d_w >> (plane?1:0)); + for(y=0; y < (plane ? (img->d_h + 1) >> 1 : img->d_h); y++) { + MD5Update(&md5, buf, (plane ? (img->d_w + 1) >> 1 : img->d_w)); buf += img->stride[plane]; } } diff --git a/examples/decoder_tmpl.txt b/examples/decoder_tmpl.txt index 7dd05d1ff..92a2c3013 100644 --- a/examples/decoder_tmpl.txt +++ b/examples/decoder_tmpl.txt @@ -47,8 +47,9 @@ while((img = vpx_codec_get_frame(&codec, &iter))) { for(plane=0; plane < 3; plane++) { unsigned char *buf =img->planes[plane]; - for(y=0; yd_h >> (plane?1:0); y++) { - if(fwrite(buf, 1, img->d_w >> (plane?1:0), outfile)); + for(y=0; y < (plane ? (img->d_h + 1) >> 1 : img->d_h); y++) { + if(fwrite(buf, 1, (plane ? (img->d_w + 1) >> 1 : img->d_w), + outfile)); buf += img->stride[plane]; } }