Commit Graph

298 Commits (dfff6f5e7cd412876fe6282f157c1928b99d1de9)

Author SHA1 Message Date
Sean Barrett dfff6f5e7c stb_image: fix assert macro usage; stb_vorbis: changelog 2018-01-29 13:15:10 -08:00
Sean Barrett 037926ab74 fix warnings, bad error handling 2018-01-29 08:18:19 -08:00
Sean Barrett b2c2419b1b stb_image: avoid arithmetic overflow in png case 2018-01-29 08:14:53 -08:00
Sean Barrett 4fd9019c0f stb_image: avoid signed left shifts 2018-01-29 07:57:23 -08:00
Sean Barrett 74a21dc615 fix compiler warnings 2018-01-29 07:52:21 -08:00
Sean Barrett 9b2522c3d5 stbi_is_hdr_from_file needs to reset file position 2018-01-29 07:48:12 -08:00
Sean Barrett d808adb77f stb_dxt: fix bug with constant color & varying alpha 2018-01-29 05:17:07 -08:00
Sean Barrett 5db03ef592 Merge branch 'master' into working
Conflicts:
	stb_image.h
2018-01-29 04:04:28 -08:00
Sean Barrett 094cb31ec8 stb_image: compile as C; stb_image_write: credits 2018-01-29 04:03:18 -08:00
Sean Barrett ae00f3a5f0 stb_image credits 2018-01-29 03:50:42 -08:00
Sean Barrett 1b9689cf77 Merge branch 'feature/gif_frames' of https://github.com/tocchan/stb 2018-01-29 03:50:03 -08:00
Sean Barrett f9d78c05a9 stb_image credits 2018-01-29 03:49:53 -08:00
Sean Barrett edf35ad14c Merge branch 'master' of https://github.com/jlnr/stb 2018-01-29 03:43:08 -08:00
Sean Barrett 0bd0d049e7 stb_image docs 2018-01-29 03:42:34 -08:00
Sean Barrett ead2b3fe2c Merge branch 'stbi_is_16' of https://github.com/anael-seghezzi/stb 2018-01-29 03:38:04 -08:00
Sean Barrett 72ef9dcbad fix fall-through case warning, add credit 2018-01-29 03:27:58 -08:00
Sean Barrett 8cc624142b credits 2018-01-29 03:25:02 -08:00
Sean Barrett 82f1929de5 Merge branch 'patch-1' of https://github.com/darealshinji/stb 2018-01-29 03:23:53 -08:00
Sean Barrett da4b342213 credits 2018-01-29 03:23:45 -08:00
Sean Barrett ab4fb5c38a Merge branch '1bit_bmp' of https://github.com/plzombie/stb 2018-01-29 03:22:12 -08:00
Sean Barrett b0383facf8 Merge branch 'master' of https://github.com/lieff/stb 2018-01-29 03:20:21 -08:00
Sean Barrett 39241e4928 update version number 2018-01-29 02:53:14 -08:00
Sean Barrett 593c9b7192 rewrite stbi__shiftsigned to use a different, faster algorithm
to avoid probelm with clang -O2 to outputting buggy code
2018-01-29 02:30:34 -08:00
Chris Forseth de75509b1c Remove a nullptr 2017-11-27 23:42:13 -06:00
Chris Forseth 03b4bbc5d2 Fix a disposal flag mistype.
Only clear to background color if index is non-zero.
Fixed a the disposal test gif I was using - now renders properly (gif has no transparent set, but all renderers still considered it transparent.  Spec says 0 should be ignored if 0, but was confusing by saying it only in the context of the pal not existing.. but seems to be the case always.
2017-11-27 23:32:44 -06:00
Chris Forseth 28c28b0bd2 Per the contributor doc - added my name. Noticed urraka also did some work here, so hopefully didn't step on any toes.
- Fix an issue where the spec of the gif for restore to previous uses code 3, not 4.
- To get results that worked - made an assumption that "clear to background" meant "revert back to what was there before I drew", where mode 1 would revert back to the previous frame [slightly different].  If I clear to background color instead, I ended up with large opaque squares in gifs that changes their transparent colour each frame.
- Background color is supposed to be used only for pixels not rendered by the image, so took that to mean it only really affected the previous frame, or potentially any frame that used full disposal.  Since background color is allowed to be unspecified this is what lead me to believe I shouldn't use it for disposal.
- Oh, also upped the codes table to 8192 as 4096 ended up being too small for a few of my test cases.

Full disclaimer - I only read through the GIF format for this contribution, so competly could be misinterpreting the spec - but this gave me reuslts that matched Chrome.
2017-11-27 23:06:53 -06:00
Chris Forseth 87a3143fb4 GIF Loading - multiple frames;
- Allow loading a gif as multiple frames into a single buffer.  Each frame is a full image seperated by a (w * h * comp) stride.
- Optionally, can pass in a pointer to a int, which will be filled with an array layers long contain ms for each frame.
- Fix gif's not loading the initial transparent background
- I believe also fix disposal rules for subsequent frames (though being somewhat inefficient with memory to do so)
- Add a flip_vertical that takes into account slices as well.

Compiled using VS2017, but nothing else as I'm not really setup for it.  Apologies.
2017-11-27 22:41:51 -06:00
Julian Raschke 4bffebc5f0 Avoid warning about unused stbi__float_postprocess 2017-11-25 17:23:33 +08:00
Anaël Seghezzi fcf0b99601 add stbi_is_16 2017-11-24 14:36:37 +01:00
Anaël Seghezzi 4c1a786455 Revert "return comp info in bytes (support for 16 bit images)"
This reverts commit 9dfa8c7f31.
2017-11-24 14:35:14 +01:00
Anaël Seghezzi 9dfa8c7f31 return comp info in bytes (support for 16 bit images) 2017-11-24 13:44:39 +01:00
darealshinji b6b43df186 Use stbi__mad4sizes_valid() only if STBI_NO_LINEAR or STBI_NO_HDR are defined 2017-09-04 14:01:43 +02:00
Mikhail Morozov 350173026a stb_image: support for 1-bit BMP 2017-09-01 02:06:06 +03:00
lieff c06c9fe6bc place const tables to protected .rdata section 2017-08-31 19:33:28 +03:00
Sean Barrett 555efbedfc Update version numbers 2017-07-23 14:09:39 -07:00
Fabian Giesen 0fbbda56fa stb_image: Account for tRNS chunk in non-paletted images.
So we report channels_in_file correctly.

Fixes #329.
2017-07-23 01:41:12 -07:00
Fabian Giesen fedf03e774 Merge branch 'fix-issue-466' of https://github.com/rygorous/stb into dev 2017-07-22 19:42:52 -07:00
Fabian Giesen 282576fbfb Merge branch 'rygorous-fix-issue-276' into dev 2017-07-22 19:42:23 -07:00
Fabian Giesen 49c7f1b397 stb_image: Optimise vertical flip.
This incorporates #462, but also factors everything into one
function that is shared between 8-bit integer, 16-bit integer, and
float pixels (vertical flip operates on rows of bytes and doesn't
really care), and finally always uses a 2k on-stack buffer without
dynamic memory allocation, doing multiple memcpys per row if
necessary. Not only does this remove an out-of-memory failure mode,
it is also preferable for large images, since it's more
L1-cache-firendly this way.

Fixes #462.
2017-07-22 18:43:36 -07:00
Fabian Giesen 25a2596b2f stb_image: Fix rounding during unpremultiply.
This is the same method as in pull request #455, but using integer
arithmetic instead of converting to float.

Fixes #455.
2017-07-22 15:59:41 -07:00
Fabian Giesen 463dd85f1f Merge branch 'Reedbeta-fix-vs2015-warnings' into dev 2017-07-22 15:51:28 -07:00
Fabian Giesen 69ef103721 Merge branch 'poppolopoppo-load_16_variants' into dev 2017-07-22 15:42:58 -07:00
Fabian Giesen 316571b395 stb_image: 3-char indent and other minor formatting issues. 2017-07-22 15:38:56 -07:00
Fabian Giesen 14c2993310 Merge branch 'realitix-robustify' into dev 2017-07-22 15:23:14 -07:00
Fabian Giesen cc7f1d1e6d stb_image: Documentation fixes.
req_comp is now desired_channels and *comp is *channels_in_file.

Fixes issue #466.
2017-07-21 22:35:01 -07:00
Fabian Giesen 0674660451 stb_image: Relax raw_len validation for non-interlaced PNGs.
We used to require exact match between img_len and raw_len for
non-interlaced PNGs, but the PNG in issue #276 has extra bytes
(all zeros) at the end of the compressed DEFLATE stream.

The PNG spec doesn't have anything to say about it (that I
can tell), and if libpng accepts this, who are we to judge.

Fixes issue #276.
2017-07-21 21:55:37 -07:00
Nathan Reed 76a1a1c408 Fix variable-shadowing warnings 2017-05-11 22:49:19 -07:00
Nathan Reed 7091cb6ed6 Fix integer conversion warning 2017-05-11 22:48:46 -07:00
PopPoLoPoPpo 9bcda8bb1c Add stbi_load_16() variants to load from memory or callbacks 2017-05-05 00:39:08 +02:00
Sean Barrett 84e42c2e8d fix stbi_shiftsigned to be shifting a value that's unsigned 2017-04-28 23:35:37 -07:00