Jorge Rodriguez
f0ba7f5f7e
Get rid of old perf tests.
ago%!(EXTRA string=11 years)
Jorge Rodriguez
a0d4f79074
Merge pull request #7 from nothings/resample
...
Resample
ago%!(EXTRA string=11 years)
Sean Barrett
385d7a417c
delete some unused functions;
...
get rid of stbir__inline for some functions that don't need it
ago%!(EXTRA string=11 years)
Sean Barrett
f711fdcb0f
disable performance test in test code, back to regression test path
ago%!(EXTRA string=11 years)
Sean Barrett
8849501a3f
add documentation explaining why even a 64K table for srgb_to_uint8 would be inaccurate
ago%!(EXTRA string=11 years)
Sean Barrett
9a6af9a8d3
replace int(floor()) with int(), since that produces same results for non-negative values and is much faster on 32-bit x86
ago%!(EXTRA string=11 years)
Sean Barrett
1dcca19ae0
because of we divide by /255 not /256, we lose numerical precision, so can't guarantee that box filter results round to same results as naive
ago%!(EXTRA string=11 years)
Sean Barrett
adbbe8dabd
move x loop inside switch in horizontal_downsample
ago%!(EXTRA string=11 years)
Sean Barrett
7a8c9196d1
unroll vertical_upsample inner loop, and reverse loop nesting to minimize work
ago%!(EXTRA string=11 years)
Sean Barrett
9c2ae9bdb8
cache filter-width derived computations that use floor/ceil because those were showing up like crazy on VC6 profile despite only being per-scanline-ish?!?
...
unroll inner loop in horizontal_resample
ago%!(EXTRA string=11 years)
Sean Barrett
972456cb63
explicit performance tests variants
ago%!(EXTRA string=11 years)
Sean Barrett
c9600c012f
unroll channel loops in downsampler
ago%!(EXTRA string=11 years)
Sean Barrett
3ee97c221f
compile as C
ago%!(EXTRA string=11 years)
Sean Barrett
59898db411
tweak grammar
ago%!(EXTRA string=11 years)
Sean Barrett
a2f1cadde8
convert tabs to spaces so it's consistent with other stb libs
ago%!(EXTRA string=11 years)
Sean Barrett
60064f9803
add stb_image_resize.h to readme
ago%!(EXTRA string=11 years)
Sean Barrett
0fa5b5c66f
rename cubic to cubicbspline;
...
tweak filter type documentation
ago%!(EXTRA string=11 years)
Ken Miller
316beb987d
Merge branch 'master' of https://github.com/kennethdmiller3/stb
ago%!(EXTRA string=11 years)
Sean Barrett
29b36b3dea
rename filters, document them
ago%!(EXTRA string=11 years)
Sean Barrett
da2aa8f6b7
checkboard test to verify srgb
ago%!(EXTRA string=11 years)
Sean Barrett
a9778b8dbd
tweak docs; fix compile error in UNUSED_PARAM stuff
ago%!(EXTRA string=11 years)
Sean Barrett
99f3b78bbd
Merge branch 'resample' of http://github.com/bsvino/stb into resample
ago%!(EXTRA string=11 years)
Sean Barrett
df128b7995
update STBIR__UNUSED_PARAM to match stb_image.h version
ago%!(EXTRA string=11 years)
Jorge Rodriguez
ca88b6fba6
Calculate and store vertical contributors first so that they can be normalized and optimized.
ago%!(EXTRA string=11 years)
Jorge Rodriguez
a25c1d2bbd
Merge remote-tracking branch 'remotes/nothings/resample' into resample
ago%!(EXTRA string=11 years)
Jorge Rodriguez
36b417f6b4
Optimizations: Skip zero-coefficient contributions. Reduce the size of the coefficients array when downsampling.
ago%!(EXTRA string=11 years)
Sean Barrett
27f26f8337
Documentation;
...
rename STBIR_FLAG_PREMULTIPLED_ALPHA to STBIR_FLAG_ALPHA_PREMULTIPLIED so that both flags have "ALPHA" first
ago%!(EXTRA string=11 years)
Sean Barrett
7a4f1f4665
update with new tests for srgb conversion
ago%!(EXTRA string=11 years)
Sean Barrett
16d68d14f8
fix stbir__linear_to_srgb_uchar:
...
1. table stored threshhold of transition from i to i+1, but wants to be i-1 to i
2. table was computed by dividing uchar by 256.0 instead of 255.0, causing it to be 100% wrong
ago%!(EXTRA string=11 years)
Sean Barrett
30c7a981ec
compile as C;
...
fix some unsigned/signed comparisons;
avoid round() since it's not in pre-C99 C;
remove MAX_CHANNELS since I never ended up needing it;
rename STBIR_EPSILON to STBIR_ALPHA_EPSILON;
don't use STBIR_ALPHA_EPSILON on float input (can't remove it properly due to numeric precision, and they can do it themselves);
optimize subtraction of STBIR_ALPHA_EPSILON;
sorry i forgot to commit these separately!;
ago%!(EXTRA string=11 years)
Sean Barrett
1208730e1e
Merge branch 'resample' of http://github.com/bsvino/stb into resample
ago%!(EXTRA string=11 years)
Jorge Rodriguez
793818d1af
Skip zero-coefficient contributors, a fairly decent speedup.
ago%!(EXTRA string=11 years)
Jorge Rodriguez
46dc8f84fb
Use vertical pixel width for the ring buffer.
ago%!(EXTRA string=11 years)
Jorge Rodriguez
953a637841
Use a carefully shaped trapezoid instead of a box filter to avoid jumps between pixel values.
ago%!(EXTRA string=11 years)
Sean Barrett
671f04bd7e
debugging truetype crash
ago%!(EXTRA string=11 years)
Sean Barrett
4e580cf9ed
fix compile
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)
nothings
057f29f813
update version number
ago%!(EXTRA string=11 years)
nothings
87b7e3db41
update version number
ago%!(EXTRA string=11 years)
nothings
5db8a8bc36
Merge pull request #42 from rygorous/master
...
stb_textedit: Add support for alternative keyboard shortcuts for text/line start/end.
ago%!(EXTRA string=11 years)
Fabian Giesen
40cc1c59b2
Add support for alternative keyboard shortcuts for text/line start/end.
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.
...
Pre-process n1 so that we don't have to do it later on. Can't do n0 since it's used to find the coefficient index.
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)