Commit Graph

904 Commits

Author SHA1 Message Date
Sean Barrett
20aca08f86 Merge branch 'master' of https://github.com/zerhacken/stb into working 2016-01-16 10:02:56 -08:00
Sean Barrett
b9216ddb36 Merge branch 'master' of https://github.com/serge-rgb/stb into working
Conflicts:
	stb_image_write.h
2016-01-16 10:02:30 -08:00
Sean Barrett
472c4c82a4 update version history 2016-01-16 10:00:19 -08:00
Sean Barrett
ac748cba9b update contributor list, version history, version number 2016-01-16 09:57:04 -08:00
Sean Barrett
79f29bafff fix previous stb_vorbis check-in that didn't actually compile;
make stb_vorbis_alloc* parameter in APIs be const
2016-01-16 09:48:01 -08:00
Sean Barrett
82ca643ef3 change previous explicitly-sized realloc support to be new API and unbreak old API 2016-01-16 09:47:22 -08:00
Sean Barrett
853fda6132 Merge branch 'alt_realloc' of https://github.com/romigrou/stb into working 2016-01-16 09:38:13 -08:00
Sean Barrett
c8e50127c5 contributor list 2016-01-16 09:37:34 -08:00
Sean Barrett
32d5e7ca7f Merge branch '16bit-tga' of https://github.com/DanielGibson/stb into working 2016-01-16 08:15:58 -08:00
Sean Barrett
9cb29b6b39 update and reorganize contributor list 2016-01-16 08:13:55 -08:00
Sean Barrett
5746aa023a Merge branch 'stbi_hdr_info_overread' of https://github.com/baldurk/stb into working 2016-01-16 08:05:51 -08:00
Sean Barrett
e30b75af8b update contributor list 2016-01-16 08:05:40 -08:00
Sean Barrett
c7e24f4c4c Merge branch 'master' of https://github.com/svdijk/stb into working 2016-01-16 08:03:22 -08:00
Sean Barrett
1964d53d70 update version number and version history with everything committed to date 2016-01-16 08:01:42 -08:00
Sean Barrett
3560e553e8 stb_vorbis version history and contributor info 2016-01-16 07:42:24 -08:00
Sean Barrett
e9e5dd94b8 Merge branch 'vorbis-pedantic' of https://github.com/rohit-n/stb into working 2016-01-16 07:35:10 -08:00
Sean Barrett
95e954c822 const correctness for pushdata API;
minor tweak to get_samples_interleaved documentation
2016-01-16 07:26:16 -08:00
Sean Barrett
0860860af6 avoid __forceinline in mingw since their definition for C is broken;
dummy definitions for malloc et al (note you have to modify source to make this work though anyway);
tweak credits change;
2016-01-16 07:19:27 -08:00
Romain Bailly
7e741ffc1e Added the old size as argument to the STBI_REALLOC() and STBIW_REALLOC() macros 2016-01-14 10:34:30 +01:00
Sean Barrett
1ec8a8c4a4 Update other_libs.md 2016-01-12 09:26:47 -08:00
Sean Barrett
5b6d11e9e8 Update other_libs.md 2016-01-12 09:26:10 -08:00
Sean Barrett
fc8b649466 Update other_libs.md 2016-01-03 13:38:34 -08:00
Sean Barrett
ac8adfdcb3 Update other_libs.md 2015-12-16 08:22:58 -08:00
Sean Barrett
bb39bd44bb Update other_libs.md 2015-12-16 03:14:03 -08:00
Daniel Gibson
87a0396922 stb_image.h: 16 bit TGAs don't really have an alpha channel
I claimed that if the most significant bit of a 16bit pixel is set,
it should be opaque (as is suggested by some sources on the internet),
but implemented the opposite.
If implemented "correctly", lots of 16bit TGAs become invisible.. so I
guess 16bit TGAs aren't really supposed to have an alpha-channel, or at
least most 16bit TGAs (despite having set an "alpha-bit" in the "image
descriptor byte") in the wild don't seem to work like that.

So just assume 16bit non-greyscale TGAs are always STBI_rgb without
an alpha channel.
2015-12-06 05:47:47 +01:00
Daniel Gibson
d235049322 stb_image.h: Fix TGA colormap support
* Calculate correct stb format (incl. proper 16bit support) also when
  using a colormap (palette)
* Create colormap with tga_comp, to correctly support 16bit RGB
  (instead of using tga_palette_bits/8 and just copying the data)
* For TGAs with colormap, the TGA bits per pixel field specifies the
  size of an index to the colormap - the "real" color depth
  of the image is saved in the color map specification's bits per pixel
  field. I think only 8 and 16bit indices make sense (16 should be
  supported, otherwise the colormap length could be u8 instead of u16),
  so I added support for both.
* Helper functions stbi__tga_get_comp() to calculate stb pixelformat and
  stbi__tga_read_rgb16() to read one 16bit pixel and convert it to
  24/32bit RGB(A) - for less duplicate code
2015-12-06 04:33:37 +01:00
Daniel Gibson
57409c3d15 stb_image.h: Improve stbi__tga_info() and stbi__tga_test()
* for paletted images, .._info()'s comp should be based on the palette's
  bits per pixel, not the images bits per pixel (which describes the
  size of an index into the palette and is also checked now)
* make sure the color (map) type and the image type fields of the header
  are consistent (=> if TGA color type is 1 for paletted, the TGA image
  type must be 1 or 9)
* .._test() does some more checks and uses stbi__get16le() instead of
  stbi__get16be() - TGA is little endian.
* .._test() now always rewinds (sometimes it used to do only return 0;
  without rewinding)
* remove "error check" at the beginning of stbi__tga_load(), because
  all that is already tested in stbi__tga_test()
2015-12-06 04:33:30 +01:00
Daniel Gibson
7453e1bfa4 stb_image.h: Support 15/16bit per pixel RGB(A) TGAs
stbi__tga_* assumed that 16bit TGAs were Grayscale + Alpha.
However, if the TGA imagetype is not one of the gray ones, it's 16Bit
RGB data, with 5 Bits per channel. If the TGA image descriptor field
has alpha bits (the 3 least significant ones) set, the pixel's most
significant bit is for alpha: 1 for opaque and 0 for translucent.
Furthermore people claim that TGAs can also pretend to have 15bpp,
which is the same as 16bpp but definitely without alpha.

So 15/16bpp TGAs are now decoded to STBI_rgb(_alpha).
2015-12-06 00:25:22 +01:00
Sean Barrett
64fa9a3d95 Update other_libs.md 2015-11-30 01:01:42 -08:00
Sean Barrett
2161d1e12a Update other_libs.md 2015-11-30 01:01:28 -08:00
Sean Barrett
657eda2155 Update other_libs.md 2015-11-21 03:29:15 -08:00
Sean Barrett
63849198b9 Update other_libs.md 2015-11-21 03:22:21 -08:00
baldurk
4337345c5d Prevent HDR info function from trashing stbi context by over-reading 2015-11-14 13:14:26 +01:00
Sean Barrett
5809508de3 Update other_libs.md 2015-11-12 06:12:24 -08:00
Sean Barrett
4e691f5917 Update other_libs.md 2015-11-12 06:12:06 -08:00
Sean Barrett
2b57ea95da fixed version of removed support for CODEBOOK_SHORTS 2015-11-08 19:16:25 -08:00
Sean Barrett
fe74a8c223 broken attempt at removign STB_VORBIS_CODEBOOK_FLOAT option 2015-11-08 19:13:32 -08:00
Sean Barrett
bc2219e1b3 fix multiple crashes on invalid files 2015-11-08 16:22:07 -08:00
Sean Barrett
bdac1d2ab4 fix two crashes in invalid files 2015-11-08 16:01:40 -08:00
Sean Barrett
70b33e99f0 fix crash from invalid file 2015-11-08 14:04:56 -08:00
Sean Barrett
ea88e59b5d fix invalid handling of truncated end-of-file indicator 2015-11-08 13:45:33 -08:00
Sean Barrett
69a318bdb3 fix two invalid-file crashes found by fuzz testing 2015-11-08 13:20:55 -08:00
Sean Barrett
2073403a5f fix two setup crashes found by fuzz testing 2015-11-08 13:09:30 -08:00
Sean Barrett
297ff62859 change bmp info to use common header parser 2015-11-08 13:09:16 -08:00
Sean Barrett
876aea3dbe refactor bmp header parser for sharing with stbi_info 2015-11-08 01:22:30 -08:00
Sean Barrett
16fc63404d suppress bogus static analysis warning 2015-11-08 01:03:37 -08:00
Sean Barrett
6382e49063 don't crash if out of memory allocating a new active edge (assert in debug) 2015-11-08 00:54:49 -08:00
Sean Barrett
0615df6c9b allows comments in pgm/ppm headers 2015-11-08 00:45:17 -08:00
Sean Barrett
a0f850421d Merge branch 'master' into working 2015-11-08 00:41:01 -08:00
Sean Barrett
31eff2dcaf fix bug in integer parsing 2015-11-08 00:37:52 -08:00