komakai / libjpeg-turbo

Main libjpeg-turbo repository
Other
2 stars 1 forks source link

'bittest' in the Makefile have two failed testcases. #3

Closed jaisoc closed 8 years ago

jaisoc commented 8 years ago

@komakai Our team downloaded the latest source and have been trying to integrate it our system. However, it appears that not all of the existing testcases in the source tree are passing. The following two testcases in 'bittest' are failing Testcase 1:

Context rows: Yes Intra-iMCU row: No iMCU row prefetch: No ENT: prog huff

./cjpeg -dct int -prog -outfile testout_420_islow_prog.jpg $(srcdir)/testimages/testorig.ppm
./djpeg -dct int -strip 71,132 -ppm -outfile testout_420_islow_prog_strip71,132.ppm testout_420_islow_prog.jpg
md5/md5cmp $(MD5_PPM_420_ISLOW_PROG_STRIP71_132) testout_420_islow_prog_strip71,132.ppm
rm testout_420_islow_prog_strip71,132.ppm testout_420_islow_prog.jpg

Testcase 2:

Context rows: No Intra-iMCU row: No ENT: prog huff

./cjpeg -dct int -prog -sample 1x1 -outfile testout_444_islow_prog.jpg $(srcdir)/testimages/testorig.ppm
./djpeg -dct int -strip 13,110 -ppm -outfile testout_444_islow_prog_strip13,110.ppm testout_444_islow_prog.jpg
md5/md5cmp $(MD5_PPM_444_ISLOW_PROG_STRIP13_110) testout_444_islow_prog_strip13,110.ppm
rm testout_444_islow_prog_strip13,110.ppm testout_444_islow_prog.jpg

The output for both the testcases have just gray images instead of a red rose. Are you aware of these failures? These testcases appear to have been added for jpeg_skip_scanlines() API. Do you think we missed something?

I tried a few experiments on the failing testcases. It appears the first testcase outputs a red rose for -strip values from 0,132 to 16,132. For all values beyond 16 the testcase just outputs a gray image. In the second testcase, a red rose is output for -strip values from 0,110 to 7,110. For all values greater than 7 the testcase outputs a gray image. Both the testcases involve progressive jpegs.

komakai commented 8 years ago

Thanks for the issue report - jpeg_skip_scanlines was added after I made the original low memory progressive jpeg implementation so that is why these test cases don't pass. I will take a look at fixing this when I have a minute.