94 Commits (84e42c2e8d2a94f936ebcf7ce14a8e02d2e8be6e)

Author SHA1 Message Date
Jorge Rodriguez 953a637841 Use a carefully shaped trapezoid instead of a box filter to avoid jumps between pixel values. ago%!(EXTRA string=11 years)
Jorge Rodriguez 6922628106 Use an even smaller epsilon. Allow the user to avoid the epsilon business if they want to preserve their alpha values. ago%!(EXTRA string=11 years)
Jorge Rodriguez c9d67446d2 Reverse allocation routines parameter order so that the context is at the back. ago%!(EXTRA string=11 years)
Jorge Rodriguez 17b931047c Add the epsilon value into the alpha instead of using an if statement. It's a tiny bit faster and it can be removed afterwards. ago%!(EXTRA string=11 years)
Jorge Rodriguez 1d5c902e2e These minor optimizations were probably already done by the compiler but they can't hurt. ago%!(EXTRA string=11 years)
Jorge Rodriguez 41e6aad693 Avoid repeated adds and ensure correct round-trip result. ago%!(EXTRA string=11 years)
Jorge Rodriguez f2102d906f Use the info structure to keep track of our memory block sizes to reduce duplicated code and cut down on errors. ago%!(EXTRA string=11 years)
Jorge Rodriguez 969ff7c850 Make sure calculate_memory matches with the allocations. Fix some errant asserts. ago%!(EXTRA string=11 years)
Jorge Rodriguez 8355ea1184 Use height, not width, for correct progress report. ago%!(EXTRA string=11 years)
Jorge Rodriguez 4b69c0637e If alpha is zero then sneakily replace it with a very small nonzero so that the color data is preserved. ago%!(EXTRA string=11 years)
Jorge Rodriguez d510d70b6a Report downsample progress by when we empty the ring buffer, it's more accurate that way. ago%!(EXTRA string=11 years)
Jorge Rodriguez 497eab8339 Normalize downsample coefficients. ago%!(EXTRA string=11 years)
Jorge Rodriguez 43fbc1d5e3 Rearrange the algebra on two of the filters to avoid repeating decimals which cause precision loss. Use int32 to test filters because it's more accurate. ago%!(EXTRA string=11 years)
Jorge Rodriguez ca241daefa Use rounding to try to preserve the original value. Fix test case. ago%!(EXTRA string=11 years)
Jorge Rodriguez 145690788c Use input_h + pixel_margin * 2 to prevent progress report from ever going above 1. Always report a 0 before and a 1 at the end of each resize. ago%!(EXTRA string=11 years)
Jorge Rodriguez e6c47ec657 Fix kernel lookup for downsampling. ago%!(EXTRA string=11 years)
Sean Barrett 7da729bfce restore correct definition of box ago%!(EXTRA string=11 years)
Sean Barrett cd1fbacbb6 rename NEAREST to BOX ago%!(EXTRA string=11 years)
Jorge Rodriguez 38ce5494bc Clarify some comments. Make stbir__resize_arbitrary an internal function. Update test cases to use actual API functions. ago%!(EXTRA string=11 years)
Sean Barrett 41555b5d53 update test cases to work on things other than barbara.png ago%!(EXTRA string=11 years)
Jorge Rodriguez fb059fcece Progress report. ago%!(EXTRA string=11 years)
Jorge Rodriguez 75bdd2da83 Fix malloc context and whitespace. ago%!(EXTRA string=11 years)
Sean Barrett 952c26e626 inline stbir__encode_pixel into stbir__encode_scanline ago%!(EXTRA string=11 years)
Sean Barrett aee30095c7 refactor internal interfaces to avoid passing things multiple times; ago%!(EXTRA string=11 years)
Sean Barrett 24c540e1b0 rename alpha gamma flag ago%!(EXTRA string=11 years)
Sean Barrett 07c35180f7 tweak new API ago%!(EXTRA string=11 years)
Sean Barrett 84520de6c4 finish STBI_EDGE_ZERO, untested ago%!(EXTRA string=11 years)
Sean Barrett 9a1d34843e STBIR_EDGE_ZERO ago%!(EXTRA string=11 years)
Sean Barrett 732fec68ee tweak new API, get it partly working ago%!(EXTRA string=11 years)
Sean Barrett 664d8961f5 new API partially in-use ago%!(EXTRA string=11 years)
Sean Barrett bbd4e2ee9a new API "finished" but untested ago%!(EXTRA string=11 years)
Sean Barrett 1bd9770e75 separate filter for horizontal and vertical ago%!(EXTRA string=11 years)
Sean Barrett c1b876768e in progress new API ago%!(EXTRA string=11 years)
Sean Barrett 5dfa79fb31 stride doesn't have to be multiples of pixels ago%!(EXTRA string=11 years)
Sean Barrett 32b626859d remove most per-pixel switches, beginnings of removing encode_pixel switch ago%!(EXTRA string=11 years)
Sean Barrett 5eb0236d9d reverse default behavior of linear/gamma for alpha ago%!(EXTRA string=11 years)
Sean Barrett b9bb05b81c minor cleanups ago%!(EXTRA string=11 years)
Sean Barrett 6ef563d089 rename to stb_image_resize.h ago%!(EXTRA string=11 years)